@import"https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400&family=DM+Sans:wght@300;400;500&family=JetBrains+Mono:wght@400&display=swap";:root{--font-serif: "Lora", Georgia, serif;--font-sans: "DM Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--c-ink: #0f1117;--c-ink-2: #383c47;--c-ink-3: #6b7280;--c-paper: #fafaf8;--c-surface: #ffffff;--c-border: #e5e3de;--c-border-2: #d1cec9;--c-accent: #1a56db;--c-accent-lt: #eff5ff;--c-accent-dk: #1141a3;--c-gold: #b45309;--c-gold-lt: #fef3c7;--c-green: #065f46;--c-green-lt: #d1fae5;--c-red: #991b1b;--c-red-lt: #fee2e2;--c-tutor: #6d28d9;--c-tutor-lt: #ede9fe;--panel-w: 460px;--wp-panel-w: 260px;--leftnav-w: 56px;--topbar-h: 58px;--toolbar-h: 44px;--radius: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.1), 0 2px 6px rgba(0,0,0,.06);--shadow-lg: 0 8px 32px rgba(0,0,0,.14), 0 4px 12px rgba(0,0,0,.08);--transition: .22s cubic-bezier(.4,0,.2,1)}@media (prefers-color-scheme: dark){:root{--c-ink: #f0ede8;--c-ink-2: #c8c4bc;--c-ink-3: #8a8680;--c-paper: #141414;--c-surface: #1c1c1e;--c-border: #2e2c2a;--c-border-2: #3d3b38;--c-accent: #4f8ef7;--c-accent-lt: #111c33;--c-accent-dk: #7ab1ff;--c-gold: #fbbf24;--c-gold-lt: #2a1f06;--c-green: #34d399;--c-green-lt: #052e1c;--c-red: #f87171;--c-red-lt: #2a0d0d;--c-tutor: #a78bfa;--c-tutor-lt: #1e1030}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--c-paper);color:var(--c-ink);line-height:1.6;min-height:100dvh}button{font-family:var(--font-sans);cursor:pointer;border:none;background:none;color:inherit}.icon-btn{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius);color:var(--c-ink-3);transition:background var(--transition),color var(--transition)}.icon-btn:hover{background:var(--c-paper);color:var(--c-ink)}input,textarea{font-family:var(--font-sans);color:var(--c-ink);background:var(--c-surface)}a{color:var(--c-accent);text-decoration:none}a:hover{text-decoration:underline}.app-layout{display:grid;grid-template-rows:var(--topbar-h) 1fr;grid-template-columns:1fr;min-height:100dvh;margin-left:var(--leftnav-w);transition:grid-template-columns var(--transition)}.whitepaper-panel{position:fixed;top:var(--topbar-h);left:var(--leftnav-w);bottom:0;width:var(--wp-panel-w);background:var(--c-surface);border-right:1px solid var(--c-border);display:flex;flex-direction:column;overflow:hidden;z-index:90;transform:translate(-100%);transition:transform var(--transition),box-shadow var(--transition)}.whitepaper-panel--open{transform:translate(0);box-shadow:var(--shadow-md)}.app-layout--wp-open .main-content{padding-left:var(--wp-panel-w);transition:padding-left var(--transition)}.app-layout--panel-open .main-content{padding-right:var(--panel-w);transition:padding-right var(--transition)}.whitepaper-panel__header{display:flex;align-items:center;justify-content:space-between;padding:0 14px;height:48px;border-bottom:1px solid var(--c-border);flex-shrink:0}.whitepaper-panel__title{display:flex;align-items:center;gap:7px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--c-ink-3)}.whitepaper-panel__count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--c-accent-lt);color:var(--c-accent);border-radius:9px;font-size:.68rem;font-weight:700}.whitepaper-panel__search{display:flex;align-items:center;gap:7px;padding:8px 12px;border-bottom:1px solid var(--c-border);flex-shrink:0;color:var(--c-ink-3)}.whitepaper-panel__search-input{flex:1;border:none;background:none;outline:none;font-size:.78rem;color:var(--c-ink);min-width:0}.whitepaper-panel__search-input::placeholder{color:var(--c-ink-3)}.whitepaper-panel__empty{padding:20px 14px;font-size:.78rem;color:var(--c-ink-3);line-height:1.55}.whitepaper-panel__empty--sm{padding:10px 14px}.wp-layout{flex:1;display:flex;flex-direction:column;overflow:hidden}.wp-scroll{flex:1;overflow-y:auto}.wp-pane--pinned{flex-shrink:0;border-bottom:1px solid var(--c-border)}.wp-pane--all{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.wp-pane__label{display:flex;align-items:center;gap:5px;padding:7px 14px 5px;font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--c-ink-3)}.wp-pane__count{margin-left:2px;font-size:.65rem;font-weight:600;color:var(--c-ink-3);background:var(--c-paper);border:1px solid var(--c-border);border-radius:10px;padding:0 5px;line-height:1.7}.wp-pane__limit{margin-left:auto;font-size:.65rem;color:var(--c-ink-3)}.wp-pane__entries--scroll{flex:1;overflow-y:auto;min-height:0}.wp-entry{display:flex;flex-direction:column;width:100%;padding:7px 12px 7px 14px;text-align:left;cursor:pointer;border:none;background:none;border-left:2px solid transparent;transition:background var(--transition),border-color var(--transition);color:var(--c-ink)}.wp-entry:hover{background:var(--c-paper)}.wp-entry:focus-visible{outline:2px solid var(--c-accent);outline-offset:-2px}.wp-entry--active{background:var(--c-accent-lt);border-left-color:var(--c-accent)}.wp-entry--active .wp-entry__title{color:var(--c-accent-dk)}.wp-entry--locked{opacity:.5;cursor:pointer}.wp-entry--locked:hover{background:var(--c-paper);opacity:.65}.wp-entry--saving{flex-direction:row;align-items:center;gap:9px;padding:10px 14px;cursor:default}.wp-entry--tutor-enabled{border-left-color:var(--c-tutor);background:color-mix(in srgb,var(--c-tutor-lt) 50%,transparent)}.wp-entry--tutor-enabled:hover{background:var(--c-tutor-lt)}.wp-entry--active.wp-entry--tutor-enabled{background:var(--c-accent-lt);border-left-color:var(--c-accent)}.wp-entry__main{display:flex;align-items:flex-start;width:100%;gap:4px}.wp-entry__body{flex:1;min-width:0}.wp-entry__title{font-size:.76rem;font-weight:450;color:var(--c-ink);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:2px}.wp-entry__pin-icon{display:inline-flex;vertical-align:middle;margin-right:4px;margin-top:-1px;color:var(--c-accent);opacity:.8;flex-shrink:0}.wp-entry__meta{font-size:.68rem;color:var(--c-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-entry__re-saving{font-style:italic}.wp-entry__spinner{width:13px;height:13px;border:2px solid var(--c-border-2);border-top-color:var(--c-accent);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.wp-entry__saving-text{font-size:.75rem;color:var(--c-ink-3);font-style:italic}.wp-entry__tutor-icon{display:grid;place-items:center;width:18px;height:18px;flex-shrink:0;color:var(--c-tutor);opacity:.85;margin-top:2px}.wp-entry__lock{display:grid;place-items:center;width:20px;height:20px;color:var(--c-ink-3);flex-shrink:0;margin-top:2px}.wp-entry__actions{display:flex;align-items:center;gap:1px;flex-shrink:0;opacity:0;transition:opacity var(--transition)}.wp-entry:hover .wp-entry__actions{opacity:1}.wp-entry__actions:has(.wp-entry__bookmark--active){opacity:1}.wp-entry__bookmark,.wp-entry__delete{display:grid;place-items:center;width:26px;height:26px;border-radius:var(--radius);color:var(--c-ink-3);flex-shrink:0;transition:background var(--transition),color var(--transition)}.wp-entry__bookmark:hover{background:var(--c-paper);color:var(--c-accent)}.wp-entry__bookmark--active{color:var(--c-accent);opacity:1}.wp-entry__pin-btn{display:grid;place-items:center;width:26px;height:26px;border:none;background:transparent;border-radius:var(--radius);color:var(--c-ink-3);cursor:pointer;flex-shrink:0;transition:background var(--transition),color var(--transition)}.wp-entry__pin-btn:hover{background:var(--c-accent-lt);color:var(--c-accent)}.wp-entry__pin-btn--active{color:var(--c-accent);opacity:1}.wp-entry__pin-btn--active:hover{background:var(--c-red-lt);color:var(--c-red)}.wp-entry__pin-btn:disabled{opacity:.35;cursor:not-allowed}.wp-entry__actions:has(.wp-entry__pin-btn--active){opacity:1}.wp-entry__pin-icon{display:inline-flex;align-items:center;color:var(--c-accent);margin-right:4px;vertical-align:middle}.wp-entry__delete:hover{background:var(--c-red-lt);color:var(--c-red)}.wp-entry__delete--confirm{background:var(--c-red-lt)!important;color:var(--c-red)!important}.wp-entry__page-chips{display:flex;flex-wrap:wrap;gap:3px;padding:3px 0 1px}.wp-entry__page-chip{display:inline-flex;align-items:center;gap:3px;min-width:20px;height:16px;padding:0 5px;border-radius:3px;font-size:.62rem;font-variant-numeric:tabular-nums;color:var(--c-accent-dk);background:var(--c-accent-lt);border:1px solid transparent;cursor:pointer;transition:border-color var(--transition)}.wp-entry__page-chip:hover{border-color:var(--c-accent)}.wp-pagination{display:flex;align-items:center;gap:4px;padding:6px 12px 7px;border-top:1px solid var(--c-border);flex-shrink:0}.wp-pagination__btn{display:grid;place-items:center;width:24px;height:24px;border-radius:var(--radius);color:var(--c-ink-2);background:none;border:1px solid var(--c-border);transition:background var(--transition),color var(--transition),border-color var(--transition)}.wp-pagination__btn:hover:not(:disabled){background:var(--c-paper);border-color:var(--c-border-2);color:var(--c-ink)}.wp-pagination__btn:disabled{opacity:.3;cursor:default}.wp-pagination__info{flex:1;font-size:.7rem;color:var(--c-ink-3);text-align:center}.wp-pagination__size{font-size:.68rem;color:var(--c-ink-2);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:2px 4px;cursor:pointer;transition:border-color var(--transition)}.wp-pagination__size:hover{border-color:var(--c-border-2)}.wp-pagination__size:focus{outline:2px solid var(--c-accent);outline-offset:1px}.top-bar__library-btn{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--c-border-2);border-radius:var(--radius);font-size:.875rem;color:var(--c-ink-2);background:var(--c-surface);white-space:nowrap;flex-shrink:0;transition:background var(--transition),border-color var(--transition),color var(--transition)}.top-bar__library-btn:hover{background:var(--c-paper);border-color:var(--c-border)}.top-bar__library-btn--active{background:var(--c-accent-lt);border-color:var(--c-accent);color:var(--c-accent)}.top-bar__lib-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:var(--c-accent);color:#fff;border-radius:9px;font-size:.68rem;font-weight:700}.top-bar__library-btn--active .top-bar__lib-count{background:var(--c-accent-dk)}.top-bar__save-status{display:flex;align-items:center;gap:5px;font-size:.78rem;white-space:nowrap;flex-shrink:0;animation:fadeIn .2s ease both}.top-bar__save-status--saving{color:var(--c-ink-3);font-style:italic}.top-bar__save-status--saved{color:var(--c-green)}.top-bar__save-status--error{color:var(--c-gold)}.top-bar{grid-row:1;grid-column:1;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:12px;padding:0 20px;background:var(--c-surface);border-bottom:1px solid var(--c-border);box-shadow:var(--shadow-sm)}.top-bar__logo{display:flex;align-items:center;gap:8px;font-family:var(--font-serif);font-weight:600;font-size:1.1rem;color:var(--c-ink);text-decoration:none;white-space:nowrap;flex-shrink:0}.url-form{flex:1;display:flex;gap:8px;max-width:680px}.url-form__input{flex:1;height:36px;padding:0 12px;border:1px solid var(--c-border-2);border-radius:var(--radius);font-size:.875rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.url-form__input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-accent) 15%,transparent)}.url-form__input::placeholder{color:var(--c-ink-3)}.url-form__btn{height:36px;padding:0 16px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.875rem;font-weight:500;white-space:nowrap;transition:background var(--transition),opacity var(--transition)}.url-form__btn:hover{background:var(--c-accent-dk)}.url-form__btn:disabled{opacity:.55;cursor:not-allowed}.top-bar__tutor-btn{position:relative;display:flex;align-items:center;gap:7px;height:36px;padding:0 16px;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:500;color:#fff;background:linear-gradient(135deg,var(--c-accent) 0%,var(--c-accent-dk) 100%);box-shadow:0 2px 8px color-mix(in srgb,var(--c-accent) 35%,transparent);white-space:nowrap;animation:tutor-entrance .6s cubic-bezier(.2,.8,.4,1) both;transition:opacity var(--transition),box-shadow var(--transition),transform var(--transition)}.top-bar__tutor-btn:hover{opacity:.92;box-shadow:0 4px 16px color-mix(in srgb,var(--c-accent) 45%,transparent);transform:translateY(-1px)}.top-bar__tutor-btn:active{transform:translateY(0);box-shadow:0 1px 4px color-mix(in srgb,var(--c-accent) 25%,transparent)}@keyframes tutor-entrance{0%{opacity:0;transform:scale(.9) translateY(2px)}to{opacity:1;transform:scale(1) translateY(0)}}.top-bar__tutor-btn--disabled{background:var(--c-surface);color:var(--c-ink-3);border:1px solid var(--c-border-2);box-shadow:none;cursor:not-allowed;animation:none}.top-bar__tutor-btn--disabled:hover{opacity:1;transform:none;box-shadow:none}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(-4px);width:max-content;max-width:240px;padding:7px 11px;background:var(--c-ink);color:var(--c-paper);font-size:.78rem;font-weight:400;line-height:1.45;border-radius:var(--radius);box-shadow:var(--shadow-md);white-space:normal;text-align:center;pointer-events:none;opacity:0;transition:opacity .16s ease,transform .16s ease;z-index:500}[data-tooltip]:before{content:"";position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);border:5px solid transparent;border-bottom-color:var(--c-ink);pointer-events:none;opacity:0;transition:opacity .16s ease;z-index:500}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;transform:translate(-50%) translateY(0)}.main-content{grid-row:2;grid-column:1;overflow-y:auto;overflow-x:hidden;padding-bottom:80px}.welcome{max-width:520px;margin:80px auto;padding:0 24px;text-align:center}.welcome__icon{margin:0 auto 20px;width:64px;height:64px;color:var(--c-ink-3)}.welcome h2{font-family:var(--font-serif);font-size:1.6rem;font-weight:500;margin-bottom:12px}.welcome p{color:var(--c-ink-2);margin-bottom:8px}.welcome__hint{margin-top:20px;font-size:.85rem;color:var(--c-ink-3);font-style:italic}.error-banner{display:flex;align-items:center;gap:10px;margin:20px auto;max-width:720px;padding:12px 16px;background:var(--c-red-lt);color:var(--c-red);border:1px solid color-mix(in srgb,var(--c-red) 25%,transparent);border-radius:var(--radius-lg);font-size:.9rem}.paper-view{max-width:900px;margin:0 auto;padding:0 24px}.paper-header{padding:32px 0 24px;border-bottom:1px solid var(--c-border);margin-bottom:8px}.paper-header__cats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.cat-badge{display:inline-flex;align-items:center;padding:2px 10px;background:var(--c-accent-lt);color:var(--c-accent);border-radius:100px;font-size:.75rem;font-weight:500;font-family:var(--font-mono)}.paper-header__title{font-family:var(--font-serif);font-size:clamp(1.4rem,3vw,1.9rem);font-weight:600;line-height:1.3;letter-spacing:-.01em;margin-bottom:12px;color:var(--c-ink)}.paper-header__authors{font-size:.9rem;color:var(--c-ink-2);margin-bottom:12px}.paper-header__meta{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.meta-item{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;color:var(--c-ink-3)}.meta-item--link{color:var(--c-accent);text-decoration:none}.meta-item--link:hover{text-decoration:underline}.paper-header__abstract{margin-top:16px;border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden}.paper-header__abstract summary{padding:10px 14px;font-size:.85rem;font-weight:500;color:var(--c-ink-2);cursor:pointer;background:var(--c-surface);-webkit-user-select:none;user-select:none;list-style:none}.paper-header__abstract summary::-webkit-details-marker{display:none}.paper-header__abstract summary:before{content:"▶ ";font-size:.7rem}.paper-header__abstract[open] summary:before{content:"▼ "}.paper-header__abstract p{padding:12px 14px;font-size:.88rem;line-height:1.7;color:var(--c-ink-2);background:var(--c-paper);font-family:var(--font-serif);font-style:italic}.pdf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:var(--toolbar-h);padding:0 4px;border-bottom:1px solid var(--c-border);background:var(--c-surface);position:sticky;top:var(--topbar-h);z-index:50}.pdf-toolbar__group{display:flex;align-items:center;gap:4px}.toolbar-btn{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius);color:var(--c-ink-2);transition:background var(--transition),color var(--transition)}.toolbar-btn:hover{background:var(--c-paper);color:var(--c-ink)}.toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.toolbar-btn--bookmark-active{color:var(--c-accent)}.toolbar-btn--bookmark-active:hover{background:var(--c-accent-lt)}.toolbar-btn--labeled{display:flex;flex-direction:column;align-items:center;gap:1px;width:auto;padding:4px 8px;height:auto;font-size:.7rem}.toolbar-btn__label{font-size:.62rem;letter-spacing:.02em;color:inherit;line-height:1}.toolbar-page{display:flex;align-items:center;gap:4px;padding:0 8px;font-size:.82rem;color:var(--c-ink-2);font-variant-numeric:tabular-nums}.toolbar-page__current{font-weight:500;color:var(--c-ink)}.toolbar-page__sep{color:var(--c-ink-3)}.toolbar-zoom{font-size:.78rem;color:var(--c-ink-3);min-width:40px;text-align:center;font-variant-numeric:tabular-nums}.pdf-loading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:60px 24px;color:var(--c-ink-3);font-size:.875rem}.pdf-loading__spinner{width:32px;height:32px;border:2.5px solid var(--c-border-2);border-top-color:var(--c-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pdf-container{padding:24px 0 0;display:flex;flex-direction:column;align-items:center;gap:20px}.pdf-page-wrapper{position:relative;box-shadow:var(--shadow-md);border-radius:2px;overflow:hidden;background:#fff}.pdf-pg-bm{position:absolute;top:10px;right:10px;z-index:20;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#ffffffe0;border:1px solid var(--c-border);border-radius:5px;cursor:pointer;color:var(--c-ink-3);opacity:0;transition:opacity .15s,color .12s,background .12s,border-color .12s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pdf-page-wrapper:hover .pdf-pg-bm{opacity:1}.pdf-pg-bm--active{opacity:1!important;color:var(--c-accent);border-color:var(--c-accent);background:#fffffff5}.pdf-pg-bm:hover{color:var(--c-accent);border-color:var(--c-accent)}.pdf-canvas{display:block}.pdf-text-layer{position:absolute;top:0;left:0;pointer-events:auto;overflow:hidden;line-height:1}.pdf-text-layer>span{color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0% 0%}.pdf-text-layer ::selection{background:#3b82f659}.sel-popover{position:fixed;z-index:10000;background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:8px 10px;display:flex;flex-direction:column;gap:8px;max-width:320px;pointer-events:auto;animation:popover-in .16s cubic-bezier(.2,.8,.4,1) both}@keyframes popover-in{0%{opacity:0;transform:scale(.94) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.sel-popover__preview{font-family:var(--font-serif);font-size:.78rem;font-style:italic;color:var(--c-ink-3);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sel-popover__actions{display:flex;align-items:center;gap:6px}.sel-popover__btn{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:var(--radius);font-size:.82rem;font-weight:500;border:1px solid var(--c-border-2);color:var(--c-ink-2);background:var(--c-paper);transition:all var(--transition)}.sel-popover__btn:hover{background:var(--c-surface);border-color:var(--c-border)}.sel-popover__btn--primary{background:var(--c-accent);color:#fff;border-color:transparent}.sel-popover__btn--primary:hover{background:var(--c-accent-dk)}.tutor-panel{position:fixed;top:var(--topbar-h);right:0;bottom:0;width:var(--panel-w);max-width:100vw;background:var(--c-paper);border-left:1px solid var(--c-border);display:flex;flex-direction:column;z-index:90;transform:translate(100%);transition:transform var(--transition),box-shadow var(--transition);box-shadow:none}.tutor-panel--open{transform:translate(0);box-shadow:-4px 0 24px #00000014}.tutor-panel__header{display:flex;align-items:center;justify-content:space-between;padding:0 14px;height:56px;background:linear-gradient(135deg,#1e1b4b,#3730a3 60%,#4f46e5);flex-shrink:0}.tutor-panel__title{display:flex;align-items:center;gap:9px;font-weight:600;font-size:.92rem;color:#fff;letter-spacing:-.01em}.tutor-panel__title svg{opacity:.9}.tutor-panel__header-badge{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#ffffff26;color:#ffffffd9;border-radius:20px;padding:2px 7px}.tutor-panel__header-actions{display:flex;align-items:center;gap:2px}.tutor-panel__header-actions .icon-btn{color:#ffffffb3}.tutor-panel__header-actions .icon-btn:hover{background:#ffffff1f;color:#fff}.tutor-panel__messages{flex:1;overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}.tutor-panel__empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:0 8px}.tutor-panel__empty-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#4f46e5,#7c3aed);display:grid;place-items:center;color:#fff;box-shadow:0 4px 16px #4f46e559}.tutor-panel__empty-title{font-size:.9rem;font-weight:600;color:var(--c-ink);letter-spacing:-.01em}.tutor-panel__empty-sub{font-size:.8rem;color:var(--c-ink-3);line-height:1.55;max-width:240px}.tutor-panel__suggestions{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:4px}.tutor-panel__suggestion{padding:8px 12px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);font-size:.78rem;color:var(--c-ink-2);text-align:left;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.tutor-panel__suggestion:hover{background:var(--c-accent-lt);border-color:var(--c-accent);color:var(--c-accent)}.tutor-panel__sel-suggestions{display:flex;flex-wrap:wrap;gap:4px;padding:6px 10px 0}.tutor-panel__suggestion--compact{padding:4px 8px;font-size:.73rem;border-radius:12px}.msg{display:flex;flex-direction:column;gap:5px;animation:msg-in .18s ease both}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.msg--user{align-items:flex-end}.msg--assistant{align-items:flex-start}.msg__context{font-family:var(--font-serif);font-style:italic;font-size:.75rem;color:var(--c-ink-3);border-left:2px solid var(--c-tutor);padding:3px 10px;max-width:92%;word-break:break-word;line-height:1.45;opacity:.8}.msg__body{max-width:86%;padding:10px 14px;border-radius:16px;font-size:.85rem;line-height:1.65;word-break:break-word}.msg--user .msg__body{background:linear-gradient(135deg,#4f46e5,#6d28d9);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 10px #4f46e547}.msg--user .msg__body p{margin-bottom:4px}.msg--user .msg__body p:last-child{margin-bottom:0}.msg--assistant .msg__body{max-width:100%;background:var(--c-surface);color:var(--c-ink);border-bottom-left-radius:4px;box-shadow:0 2px 8px #0000000f,0 1px 2px #0000000a}.msg--assistant .msg__body p{margin-bottom:.55em}.msg--assistant .msg__body p:last-child{margin-bottom:0}.msg--assistant .msg__body h1,.msg--assistant .msg__body h2,.msg--assistant .msg__body h3{font-family:var(--font-serif);font-weight:600;margin:.9em 0 .3em;line-height:1.3}.msg--assistant .msg__body h1{font-size:1rem}.msg--assistant .msg__body h2{font-size:.95rem}.msg--assistant .msg__body h3{font-size:.88rem;color:var(--c-ink-2)}.msg--assistant .msg__body h1:first-child,.msg--assistant .msg__body h2:first-child,.msg--assistant .msg__body h3:first-child{margin-top:0}.msg--assistant .msg__body ul,.msg--assistant .msg__body ol{padding-left:1.2em;margin:.35em 0 .55em;display:flex;flex-direction:column;gap:.15em}.msg--assistant .msg__body ul{list-style:disc}.msg--assistant .msg__body ol{list-style:decimal}.msg--assistant .msg__body li{line-height:1.5}.msg--assistant .msg__body strong{font-weight:600;color:var(--c-ink)}.msg--assistant .msg__body em{font-style:italic;color:var(--c-ink-2)}.msg--assistant .msg__body code{font-family:var(--font-mono);font-size:.78em;background:color-mix(in srgb,var(--c-tutor) 8%,var(--c-paper));color:var(--c-tutor);padding:.15em .4em;border-radius:4px}.msg--assistant .msg__body pre{background:#1e1b4b;color:#e0e7ff;border-radius:var(--radius);padding:10px 12px;overflow-x:auto;margin:.6em 0;font-size:.76rem;line-height:1.5;word-break:normal;white-space:pre}.msg--assistant .msg__body pre code{background:none;padding:0;color:inherit;font-size:inherit}.msg--assistant .msg__body blockquote{border-left:3px solid var(--c-tutor);padding:4px 10px;margin:.4em 0;color:var(--c-ink-2);font-style:italic;background:color-mix(in srgb,var(--c-tutor) 5%,transparent);border-radius:0 4px 4px 0}.msg--assistant .msg__body hr{border:none;border-top:1px solid var(--c-border);margin:.8em 0}.msg__meta{display:flex;align-items:center;gap:6px;padding:0 2px}.msg__word-count{font-size:.68rem;color:var(--c-ink-3)}.msg__cached-badge{display:flex;align-items:center;gap:3px;font-size:.65rem;font-weight:600;letter-spacing:.04em;color:var(--c-green);background:var(--c-green-lt);border-radius:20px;padding:1px 6px}.msg__thinking{display:flex;align-items:center;gap:5px;padding:12px 16px;background:var(--c-surface);border-radius:16px 16px 16px 4px;box-shadow:0 2px 8px #0000000f}.msg__thinking span{width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#4f46e5,#7c3aed);animation:think .9s ease-in-out infinite}.msg__thinking span:nth-child(2){animation-delay:.15s}.msg__thinking span:nth-child(3){animation-delay:.3s}@keyframes think{0%,80%,to{transform:scale(.65);opacity:.35}40%{transform:scale(1.1);opacity:1}}.tutor-panel__input-area{flex-shrink:0;border-top:1px solid var(--c-border);padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--c-surface)}.tutor-panel__ctx{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;background:color-mix(in srgb,var(--c-tutor) 8%,var(--c-surface));border:1px solid color-mix(in srgb,var(--c-tutor) 25%,transparent);border-radius:var(--radius);font-size:.78rem;line-height:1.4}.tutor-panel__ctx-label{font-weight:600;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;color:var(--c-tutor);white-space:nowrap;flex-shrink:0;margin-top:1px}.tutor-panel__ctx-text{color:var(--c-ink-2);flex:1;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tutor-panel__ctx-clear{color:var(--c-ink-3);font-size:1rem;line-height:1;flex-shrink:0;padding:0 2px}.tutor-panel__ctx-clear:hover{color:var(--c-ink)}.tutor-panel__input-row{display:flex;align-items:flex-end;gap:8px;background:var(--c-paper);border:1.5px solid var(--c-border-2);border-radius:14px;padding:6px 6px 6px 12px;transition:border-color var(--transition),box-shadow var(--transition)}.tutor-panel__input-row:focus-within{border-color:var(--c-tutor);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-tutor) 12%,transparent)}.tutor-panel__textarea{flex:1;resize:none;border:none;outline:none;background:transparent;padding:4px 0;font-size:.875rem;line-height:1.5;min-height:24px;max-height:120px;color:var(--c-ink)}.tutor-panel__textarea::placeholder{color:var(--c-ink-3)}.tutor-panel__textarea:disabled{opacity:.55}.tutor-panel__send{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;flex-shrink:0;transition:opacity var(--transition),transform var(--transition);box-shadow:0 2px 8px #4f46e54d}.tutor-panel__send:hover:not(:disabled){opacity:.88;transform:scale(.97)}.tutor-panel__send:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.tutor-panel__locked{flex-shrink:0;display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 20px;border-top:1px solid var(--c-border);gap:10px;background:var(--c-surface)}.tutor-panel__locked-icon{color:var(--c-ink-3);opacity:.65}.tutor-panel__locked-title{font-size:.88rem;font-weight:600;color:var(--c-ink)}.tutor-panel__locked-msg{font-size:.78rem;color:var(--c-ink-3);line-height:1.55;max-width:240px}.tutor-panel__locked-btn{margin-top:4px;padding:9px 22px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border-radius:var(--radius);font-size:.82rem;font-weight:600;cursor:pointer;transition:opacity var(--transition);box-shadow:0 2px 10px #4f46e54d}.tutor-panel__locked-btn:hover{opacity:.88}@media (max-width: 900px){:root{--panel-w: 360px}.paper-view{max-width:100%}}@media (max-width: 768px){:root{--topbar-h: 96px}.top-bar{flex-wrap:wrap;align-items:center;padding:8px 14px;gap:8px;height:auto}.url-form{order:10;flex:0 0 100%;max-width:100%}.top-bar__tutor-btn{margin-left:auto}.top-bar__save-status{display:none}.profile-page__grid{grid-template-columns:1fr}.profile-page__card--stats{grid-column:1}.profile-page__row{grid-template-columns:1fr}.profile-page__hero{flex-wrap:wrap}.profile-page__badges{margin-left:0}.auth-modal__name-row,.pricing-modal__plans{grid-template-columns:1fr}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-tabs{overflow-x:auto}.page-main{padding:20px 16px 40px}.bm-list{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:12px}.admin-table-wrap{max-width:100%;-webkit-overflow-scrolling:touch}}@media (max-width: 640px){:root{--panel-w: 100vw;--wp-panel-w: 85vw;--leftnav-w: 44px}.top-bar{padding:8px 12px}.top-bar__about-btn{margin-left:0}.top-bar__library-btn span,.top-bar__lib-count{display:none}.url-form__input,.whitepaper-panel__search-input,.tutor-panel__textarea,.auth-modal__input,.profile-page__input,.qa-textarea{font-size:16px}.paper-view{padding:0 12px}.welcome{margin:40px auto;padding:0 16px}.page-main{padding:16px 14px 40px}.page-header{padding:0 12px}.page-header__email{display:none}.app-layout--wp-open .main-content{padding-left:0}.app-layout--panel-open .main-content{padding-right:0}.left-nav__label{display:none}.left-nav__btn{height:44px}.pdf-container{padding:10px 0 0}.pdf-page-wrapper{border-radius:0}.sel-popover{max-width:calc(100vw - 24px)}.qa-ask-footer{flex-direction:column;align-items:stretch}.qa-submit-btn{align-self:flex-end}.notes-list{grid-template-columns:1fr}.note-overlay__backdrop{padding:12px}.paper-header{padding:20px 0 16px}.paper-header__meta{gap:10px}.page-body--wp-open{padding-left:0}.bm-list{grid-template-columns:1fr;gap:12px}.bm-card{padding:16px 14px}.bm-card__ribbon{display:none}.page-header__btn{padding:0 10px;font-size:.8rem}.page-main{padding-bottom:60px}}.whitepaper-backdrop{display:none}@media (max-width: 640px){.whitepaper-backdrop--visible{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:89;background:#0006;animation:fadeIn .2s ease both}}@media (hover: none){.wp-entry__actions{opacity:1}}.top-bar__signin-btn{display:flex;align-items:center;height:32px;padding:0 12px;border-radius:var(--radius);border:1px solid var(--c-accent);font-size:.82rem;font-weight:500;color:var(--c-accent);background:transparent;white-space:nowrap;flex-shrink:0;transition:background var(--transition),color var(--transition)}.top-bar__signin-btn:hover{background:var(--c-accent-lt)}.top-bar__user{display:flex;align-items:center;gap:6px;flex-shrink:0}.top-bar__user-email{font-size:.8rem;color:var(--c-ink-2);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-bar__logout{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius);color:var(--c-ink-3);transition:background var(--transition),color var(--transition)}.top-bar__logout:hover{background:var(--c-paper);color:var(--c-ink)}.top-bar__admin-link{display:flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:500;color:var(--c-accent);padding:.25rem .5rem;border-radius:var(--radius);text-decoration:none;transition:background var(--transition)}.top-bar__admin-link:hover{background:var(--c-paper)}.top-bar__add-btn{display:flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:var(--radius);border:1.5px dashed var(--c-border-2);font-size:.82rem;font-weight:600;color:var(--c-ink-2);background:transparent;white-space:nowrap;flex-shrink:0;cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition)}.top-bar__add-btn:hover{border-color:var(--c-accent);color:var(--c-accent);background:var(--c-accent-lt, color-mix(in srgb, var(--c-accent) 8%, transparent))}.top-bar__spacer{flex:1}.top-bar__about-btn{display:flex;align-items:center;gap:6px;height:32px;padding:0 10px;border-radius:var(--radius);border:1px solid var(--c-border-2);font-size:.875rem;color:var(--c-ink-2);background:var(--c-surface);white-space:nowrap;flex-shrink:0;margin-left:auto;transition:background var(--transition),border-color var(--transition),color var(--transition)}.top-bar__about-btn:hover{background:var(--c-paper);border-color:var(--c-border)}.add-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease}.add-modal{background:var(--c-surface);border:1px solid var(--c-border);border-radius:12px;padding:0;width:100%;max-width:520px;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000002e,0 4px 16px #0000001a;animation:modal-in .18s cubic-bezier(.2,.8,.4,1) both;overflow:hidden}.add-modal__header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--c-border)}.add-modal__title{font-size:.9375rem;font-weight:700;color:var(--c-ink);margin:0;letter-spacing:-.01em}.add-modal__close{background:none;border:none;cursor:pointer;color:var(--c-ink-3);padding:4px;border-radius:6px;font-size:1.1rem;line-height:1;display:flex;align-items:center;transition:background .12s,color .12s}.add-modal__close:hover{background:var(--c-paper);color:var(--c-ink)}.add-modal__body{display:flex;flex-direction:column;gap:16px;padding:20px 24px}.add-modal__field{display:flex;flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;color:var(--c-ink-2)}.add-modal__hint{font-weight:400;color:var(--c-ink-3)}.add-modal__discover-row{display:flex;gap:8px}.add-modal__input{flex:1;height:38px;padding:0 .75rem;border:1px solid var(--c-border-2);border-radius:var(--radius);font-size:.875rem;background:var(--c-paper);color:var(--c-ink);font-family:var(--font-sans);transition:border-color .15s,box-shadow .15s}.add-modal__input:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 3px #1a56db1f}.add-modal__input::placeholder{color:var(--c-ink-3)}.add-modal__input:disabled{opacity:.6}.add-modal__discover-btn{height:38px;padding:0 16px;border:1px solid var(--c-accent);border-radius:var(--radius);background:var(--c-accent-lt);color:var(--c-accent-dk);font-size:.875rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.add-modal__discover-btn:hover:not(:disabled){background:var(--c-accent);color:#fff}.add-modal__discover-btn:disabled{opacity:.45;cursor:not-allowed}.add-modal__results{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto;border:1px solid var(--c-border);border-radius:8px;padding:6px;background:var(--c-paper)}.add-modal__results-label{font-size:.75rem;font-weight:600;color:var(--c-ink-3);padding:2px 4px 4px;text-transform:uppercase;letter-spacing:.04em}.add-modal__result-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer;background:var(--c-surface);border:1px solid transparent;font-size:.85rem;transition:background .12s,border-color .12s}.add-modal__result-row:hover:not(.add-modal__result-row--existing){background:var(--c-accent-lt);border-color:var(--c-accent)}.add-modal__result-row input[type=checkbox]{width:15px;height:15px;flex-shrink:0;accent-color:var(--c-accent);cursor:pointer}.add-modal__result-row--existing{opacity:.55;cursor:default}.add-modal__result-name{font-weight:600;color:var(--c-ink);flex-shrink:0}.add-modal__result-url{color:var(--c-ink-3);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.add-modal__result-badge{font-size:.7rem;color:var(--c-ink-3);background:var(--c-paper);border:1px solid var(--c-border-2);border-radius:4px;padding:2px 6px;flex-shrink:0;font-weight:500}.add-modal__error{font-size:.8125rem;color:var(--c-red);background:var(--c-red-lt);border:1px solid #fca5a5;border-radius:var(--radius);padding:8px 12px;margin:0}.add-modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid var(--c-border);background:var(--c-paper)}.add-modal__save-btn{height:38px;padding:0 20px;border:none;border-radius:var(--radius);background:var(--c-accent);color:#fff;font-size:.875rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:background .15s,opacity .15s}.add-modal__save-btn:hover:not(:disabled){background:var(--c-accent-dk)}.add-modal__save-btn:disabled{opacity:.45;cursor:not-allowed}.add-modal__divider{border:none;border-top:1px solid var(--c-border);margin:.25rem 0}.add-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .16s ease both}.modal{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:480px;max-height:90dvh;overflow-y:auto;padding:32px 28px 24px;animation:modal-in .2s cubic-bezier(.2,.8,.4,1) both}@keyframes modal-in{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal__close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius);color:var(--c-ink-3);transition:background var(--transition),color var(--transition)}.modal__close:hover{background:var(--c-paper);color:var(--c-ink)}.about__app{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding-bottom:4px}.about__app-logo{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:16px;background:var(--c-accent-lt);color:var(--c-accent);margin-bottom:6px}.about__app-name{font-family:var(--font-serif);font-size:1.35rem;font-weight:600;color:var(--c-ink);letter-spacing:-.01em}.about__app-tagline{font-size:.82rem;color:var(--c-accent);font-weight:500;text-transform:uppercase;letter-spacing:.06em}.about__app-desc{margin-top:8px;font-size:.875rem;color:var(--c-ink-2);line-height:1.65;max-width:380px}.about__divider{border:none;border-top:1px solid var(--c-border);margin:20px 0}.about__author{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.about__author-meta{display:flex;flex-direction:column;align-items:center;gap:3px}.about__author-name{font-weight:600;font-size:1rem;color:var(--c-ink)}.about__author-role{font-size:.8rem;color:var(--c-ink-3);font-family:var(--font-mono)}.about__author-bio{font-size:.875rem;color:var(--c-ink-2);line-height:1.65}.about__tags{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.about__tag{display:inline-flex;align-items:center;padding:3px 10px;background:var(--c-paper);border:1px solid var(--c-border);border-radius:100px;font-size:.75rem;font-family:var(--font-mono);color:var(--c-ink-2)}.about__portfolio-link{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--c-accent);font-weight:500;text-decoration:none;width:fit-content}.about__portfolio-link:hover{text-decoration:underline}.about__footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--c-border);font-size:.78rem;color:var(--c-ink-3);text-align:center}.auth-modal{max-width:400px}.auth-modal__hint{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--c-accent-lt);border-radius:var(--radius);color:var(--c-accent-dk);font-size:.82rem;line-height:1.5;margin-bottom:20px;flex-shrink:0}.auth-modal__hint svg{flex-shrink:0;margin-top:1px}.auth-modal__tabs{display:flex;border-bottom:1px solid var(--c-border);margin-bottom:20px}.auth-modal__tab{flex:1;padding:8px 0;font-size:.875rem;font-weight:500;color:var(--c-ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--transition),border-color var(--transition)}.auth-modal__tab--active{color:var(--c-accent);border-bottom-color:var(--c-accent)}.auth-modal__name-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.auth-modal__form{display:flex;flex-direction:column;gap:14px}.auth-modal__label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:500;color:var(--c-ink-2)}.auth-modal__input{height:38px;padding:0 10px;border:1px solid var(--c-border-2);border-radius:var(--radius);font-size:.875rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.auth-modal__input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-accent) 15%,transparent)}.auth-modal__error{font-size:.8rem;color:var(--c-red);background:var(--c-red-lt);padding:7px 10px;border-radius:var(--radius)}.auth-modal__submit{height:40px;border-radius:var(--radius);background:var(--c-accent);color:#fff;font-size:.875rem;font-weight:500;margin-top:2px;display:flex;align-items:center;justify-content:center;gap:6px;transition:background var(--transition),opacity var(--transition)}.auth-modal__submit:hover:not(:disabled){background:var(--c-accent-dk)}.auth-modal__submit:disabled{opacity:.45;cursor:not-allowed}.auth-modal__switch{margin-top:14px;font-size:.8rem;color:var(--c-ink-3);text-align:center}.auth-modal__switch-link{color:var(--c-accent);font-weight:500;text-decoration:underline;cursor:pointer}.auth-modal__switch-link:hover{color:var(--c-accent-dk)}.whitepaper-error-toast{position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.6rem;padding:.5rem 1rem;background:var(--c-error, #c0392b);color:#fff;border-radius:6px;font-size:.82rem;z-index:9999;box-shadow:0 2px 8px #0003;max-width:min(90vw,480px);white-space:normal;word-break:break-word}.whitepaper-error-toast button{background:transparent;border:none;color:inherit;font-size:1rem;cursor:pointer;line-height:1;padding:0 .1rem}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--c-paper)}.admin-login__card{width:360px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:calc(var(--radius) * 2);padding:2.5rem 2rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 4px 24px #00000012}.admin-login__brand{display:flex;align-items:center;gap:.5rem;font-family:var(--font-serif);font-size:1.25rem;font-weight:600;color:var(--c-ink);margin-bottom:.25rem}.admin-field{display:flex;flex-direction:column;gap:.35rem;font-size:.8125rem;font-weight:500;color:var(--c-ink-2)}.admin-input{height:38px;padding:0 .75rem;border:1px solid var(--c-border-2);border-radius:var(--radius);font-size:.875rem;background:var(--c-paper);color:var(--c-ink);transition:border-color var(--transition)}.admin-input:focus{outline:none;border-color:var(--c-accent)}.admin-error{font-size:.8125rem;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius);padding:.5rem .75rem}.admin-btn{height:38px;border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:background var(--transition),color var(--transition),opacity var(--transition)}.admin-btn--primary{background:var(--c-accent);color:#fff;width:100%}.admin-btn--primary:hover:not(:disabled){background:var(--c-accent-dk)}.admin-btn--primary:disabled{opacity:.45;cursor:not-allowed}.admin-btn--ghost{background:transparent;color:var(--c-ink-3);border:1px solid var(--c-border);padding:0 .875rem}.admin-btn--ghost:hover{color:var(--c-ink);border-color:var(--c-border-2)}.admin-dashboard{min-height:100vh;background:var(--c-paper);font-family:var(--font-sans)}.admin-header{height:56px;background:var(--c-surface);border-bottom:1px solid var(--c-border);display:flex;align-items:center;justify-content:space-between;padding:0 2rem}.admin-header__brand{display:flex;align-items:center;gap:.5rem;font-family:var(--font-serif);font-size:1rem;font-weight:600;color:var(--c-ink)}.admin-main{max-width:1000px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.admin-page-content{max-width:1100px;margin:0 auto;width:100%}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.admin-stat{background:var(--c-surface);border:1px solid var(--c-border);border-radius:calc(var(--radius) * 1.5);padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.25rem}.admin-stat__value{font-size:2rem;font-weight:700;font-family:var(--font-serif);color:var(--c-ink);line-height:1}.admin-stat__label{font-size:.8rem;color:var(--c-ink-3);text-transform:uppercase;letter-spacing:.04em}.admin-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:calc(var(--radius) * 1.5);overflow:hidden}.admin-card__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--c-border)}.admin-card__title{font-size:1rem;font-weight:600;color:var(--c-ink);font-family:var(--font-serif)}.admin-search{display:flex;align-items:center;gap:.5rem;background:var(--c-paper);border:1px solid var(--c-border);border-radius:var(--radius);padding:0 .75rem;color:var(--c-ink-3)}.admin-search__input{height:32px;background:transparent;border:none;outline:none;font-size:.875rem;color:var(--c-ink);width:200px}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th{text-align:left;padding:.75rem 1.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--c-ink-3);background:var(--c-paper);border-bottom:1px solid var(--c-border)}.admin-table td{padding:.875rem 1.5rem;color:var(--c-ink);border-bottom:1px solid var(--c-border)}.admin-table--compact{font-size:.8rem}.admin-table--compact th{padding:.45rem 1rem;font-size:.7rem}.admin-table--compact td{padding:.4rem 1rem}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--c-paper)}.admin-table__email{font-weight:500}.admin-table__date{color:var(--c-ink-3);font-size:.8125rem}.admin-empty{padding:3rem;text-align:center;color:var(--c-ink-3);font-size:.9rem}.admin-empty--error{color:#dc2626}.admin-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--c-border);padding-bottom:0}.admin-tab{padding:8px 18px;font-size:.875rem;font-weight:500;color:var(--c-ink-3);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:color var(--transition),border-color var(--transition)}.admin-act-filters{display:flex;flex-wrap:wrap;gap:6px}.admin-act-filter{padding:4px 12px;font-size:.78rem;font-weight:500;border:1px solid var(--c-border);border-radius:100px;background:none;color:var(--c-ink-3);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.admin-act-filter:hover{background:var(--c-paper-2);color:var(--c-ink)}.admin-act-filter--active{background:var(--c-accent-lt);border-color:var(--c-accent);color:var(--c-accent)}.admin-act-badge{display:inline-block;padding:2px 8px;border-radius:100px;font-size:.75rem;font-weight:500;white-space:nowrap}.admin-act-badge--paper_open{background:#dbeafe;color:#1d4ed8}.admin-act-badge--page_view{background:var(--c-paper-2);color:var(--c-ink-2)}.admin-act-badge--tutor_question{background:#ede9fe;color:#6d28d9}.admin-act-badge--time_spent{background:#dcfce7;color:#15803d}.admin-act-paper{max-width:240px;font-size:.8rem;color:var(--c-ink-2)}.admin-act-detail{max-width:300px;font-size:.82rem}.admin-act-question{color:var(--c-ink-2);line-height:1.4}.admin-act-context{color:var(--c-ink-3);font-style:italic}.admin-badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.admin-badge--free{background:#f3f4f6;color:#6b7280}.admin-badge--pro{background:#ede9fe;color:#7c3aed}.admin-badge--status-active{background:#dcfce7;color:#16a34a}.admin-badge--status-active[role=button],button.admin-badge--status-active{cursor:pointer}.admin-badge--status-active[role=button]:hover,button.admin-badge--status-active:hover{background:#bbf7d0}.admin-badge--status-inactive{background:#fee2e2;color:#dc2626}.admin-user-actions{display:flex;gap:.375rem}.admin-action-btn{padding:.2rem .55rem;border-radius:4px;border:1px solid transparent;font-size:.75rem;font-weight:500;cursor:pointer;transition:opacity .15s}.admin-action-btn:disabled{opacity:.45;cursor:not-allowed}.admin-action-btn--deactivate{background:#fef9c3;color:#854d0e;border-color:#fde68a}.admin-action-btn--deactivate:hover:not(:disabled){background:#fef08a}.admin-action-btn--activate{background:#dcfce7;color:#166534;border-color:#bbf7d0}.admin-action-btn--activate:hover:not(:disabled){background:#bbf7d0}.admin-action-btn--delete{background:#fee2e2;color:#991b1b;border-color:#fecaca}.admin-action-btn--delete:hover:not(:disabled){background:#fecaca}.admin-bulk-bar{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;margin-bottom:.5rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;font-size:.8rem}.admin-bulk-bar__count{font-weight:600;color:#1d4ed8;flex-shrink:0}.admin-bulk-bar__actions{display:flex;gap:.375rem;flex-wrap:wrap}.admin-bulk-bar__clear{margin-left:auto;background:none;border:none;color:var(--c-ink-3);font-size:.8rem;cursor:pointer;padding:.1rem .3rem}.admin-bulk-bar__clear:hover{color:var(--c-ink)}.admin-pagination{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;border-top:1px solid var(--c-border);font-size:.8125rem;flex-wrap:wrap}.admin-pagination__info{flex:1;min-width:100px;color:var(--c-ink-3)}.admin-pagination__controls{display:flex;gap:.375rem}.admin-pagination__btn{padding:.3rem .7rem;font-size:.8rem;border:1px solid var(--c-border);border-radius:4px;background:var(--c-surface);color:var(--c-ink);cursor:pointer;transition:background var(--transition)}.admin-pagination__btn:hover:not(:disabled){background:var(--c-paper-2)}.admin-pagination__btn:disabled{opacity:.4;cursor:default}.admin-pagination__size{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--c-ink-3)}.admin-pagination__size select{padding:.25rem .4rem;border:1px solid var(--c-border);border-radius:4px;background:var(--c-surface);color:var(--c-ink);font-size:.8rem;cursor:pointer}.admin-table__cb{width:32px;padding-left:.5rem!important}.admin-table__row--selected{background:#eff6ff}.admin-llm-badge{display:inline-flex;align-items:center;gap:5px;padding:.2rem .6rem;border-radius:5px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.admin-llm-badge--gemini{background:#bbf7d0;color:#14532d}.admin-llm-badge--openai{background:#bfdbfe;color:#1e3a8a}.admin-llm-badge--claude{background:#fbcfe8;color:#831843}.admin-llm-badge--cache{background:#ddd6fe;color:#4c1d95}.admin-llm-total-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1.5rem;background:var(--c-paper);border:1px solid var(--c-border);border-radius:8px;padding:.75rem 1.1rem;margin-bottom:.25rem}.admin-llm-total-bar__label{font-size:.72rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.05em}.admin-llm-total-bar__items{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem}.admin-llm-total-bar__item{display:flex;align-items:baseline;gap:.3rem}.admin-llm-total-bar__val{font-size:.95rem;font-weight:700;color:#111827}.admin-llm-total-bar__sub{font-size:.7rem;color:#4b5563}.admin-llm-total-bar__cost{font-size:1.05rem;font-weight:700;color:#14532d;background:#bbf7d0;border-radius:6px;padding:.2rem .7rem}.admin-llm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;padding:.5rem 0}.admin-llm-card{border-radius:10px;padding:1rem 1.1rem 1rem 1.25rem;display:flex;flex-direction:column;gap:.85rem;border:1.5px solid transparent;border-left-width:4px}.admin-llm-card--gemini{border-color:#86efac;border-left-color:#16a34a;background:#f0fdf4}.admin-llm-card--openai{border-color:#93c5fd;border-left-color:#2563eb;background:#eff6ff}.admin-llm-card--claude{border-color:#f9a8d4;border-left-color:#db2777;background:#fdf2f8}.admin-llm-card--cache{border-color:#c4b5fd;border-left-color:#7c3aed;background:#faf5ff}.admin-llm-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.admin-llm-card__model{font-size:.67rem;color:#4b5563;margin-top:3px;font-family:var(--font-mono)}.admin-llm-card__cost{text-align:right;flex-shrink:0}.admin-llm-card__cost-val{display:block;font-size:1.2rem;font-weight:700;color:#14532d;line-height:1.1;cursor:default}.admin-llm-card__cost-lbl{display:block;font-size:.63rem;font-weight:500;color:#4b5563;text-transform:uppercase;letter-spacing:.04em}.admin-llm-card__tiles{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.admin-llm-card__tile{background:#fff;border-radius:7px;padding:.5rem .65rem;border:1px solid rgba(0,0,0,.06)}.admin-llm-card__tile-val{font-size:1.1rem;font-weight:700;color:#111827;line-height:1.15}.admin-llm-card__tile-lbl{font-size:.65rem;font-weight:500;color:#4b5563;margin-top:2px;text-transform:uppercase;letter-spacing:.03em}.admin-llm-card__hit-bar{display:flex;flex-direction:column;gap:5px}.admin-llm-card__hit-bar-head{display:flex;justify-content:space-between;font-size:.68rem;font-weight:500;color:#374151}.admin-llm-card__hit-bar-head strong{font-weight:700;color:#111827}.admin-llm-card__hit-bar-track{height:7px;background:#0000001a;border-radius:99px;overflow:hidden}.admin-llm-card__hit-bar-fill{height:100%;border-radius:99px;transition:width .4s ease}.admin-llm-card--gemini .admin-llm-card__hit-bar-fill{background:#16a34a}.admin-llm-card--openai .admin-llm-card__hit-bar-fill{background:#2563eb}.admin-llm-card--claude .admin-llm-card__hit-bar-fill{background:#db2777}.admin-llm-card--cache .admin-llm-card__hit-bar-fill{background:#7c3aed}.admin-llm-card__tokens{display:flex;gap:.4rem .9rem;flex-wrap:wrap;padding-top:.55rem;border-top:1px solid rgba(0,0,0,.08);font-size:.7rem;color:#374151}.admin-llm-card__tokens strong{font-weight:700;color:#111827}.admin-llm-pricing-note{font-size:.68rem;color:#4b5563;margin-top:.75rem;line-height:1.6}.admin-llm-pricing-note code{font-family:var(--font-mono);background:var(--c-paper);padding:.1em .3em;border-radius:3px;font-size:.95em}.admin-blog-add-btn{margin-left:auto;padding:5px 12px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity var(--transition)}.admin-blog-add-btn:hover{opacity:.88}.admin-blog-slug{font-family:var(--font-mono);font-size:.78rem;background:var(--c-paper);padding:.1em .4em;border-radius:3px;border:1px solid var(--c-border)}.admin-blog-url{font-size:.78rem;color:var(--c-accent);text-decoration:none;word-break:break-all}.admin-blog-url:hover{text-decoration:underline}.admin-badge--inactive{background:var(--c-paper);color:var(--c-ink-3);cursor:pointer}.admin-badge--inactive:hover{background:#dcfce7;color:#166534}.admin-blog-actions{display:flex;gap:6px}.admin-blog-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease}.admin-blog-modal{background:var(--c-surface);border:1px solid var(--c-border);border-radius:calc(var(--radius) * 2);padding:28px 32px;width:100%;max-width:520px;display:flex;flex-direction:column;gap:14px;box-shadow:0 8px 32px #00000024}.admin-blog-modal__title{font-size:1rem;font-weight:700;color:var(--c-ink);margin:0 0 4px}.admin-blog-field{display:flex;flex-direction:column;gap:4px;font-size:.82rem;font-weight:500;color:var(--c-ink-2)}.admin-blog-field__hint{font-weight:400;color:var(--c-ink-3)}.admin-blog-field .admin-input{margin-top:2px;font-size:.85rem}.admin-blog-discover__row{display:flex;gap:.5rem}.admin-blog-discover__row .admin-input{flex:1}.admin-blog-discover__divider{border:none;border-top:1px solid var(--border, #e5e7eb);margin:.75rem 0 .25rem}.admin-blog-modal__error{font-size:.82rem;color:#dc2626;margin:0}.admin-blog-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.admin-btn--accent{padding:0 18px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity var(--transition)}.admin-btn--accent:hover:not(:disabled){opacity:.88}.admin-btn--accent:disabled{opacity:.45;cursor:not-allowed}.admin-btn{padding:0 18px;background:var(--c-paper);color:var(--c-ink-2);border:1px solid var(--c-border);border-radius:var(--radius);font-size:.85rem;font-weight:500;cursor:pointer;transition:background var(--transition)}.admin-btn:hover:not(:disabled){background:var(--c-border)}.admin-btn:disabled{opacity:.45;cursor:not-allowed}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{background:var(--c-surface, #fff);border-radius:12px;box-shadow:0 20px 60px #0000002e,0 4px 16px #0000001a;padding:2rem 1.75rem 1.5rem;width:100%;max-width:400px;text-align:center;animation:slideUp .18s ease}@keyframes slideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-modal__icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#fee2e2;color:#dc2626;margin:0 auto 1rem}.confirm-modal__title{font-size:1.05rem;font-weight:700;margin:0 0 .6rem;color:var(--c-ink)}.confirm-modal__message{font-size:.875rem;color:var(--c-ink-2, #555);line-height:1.55;margin:0 0 1.5rem}.confirm-modal__actions{display:flex;gap:.625rem;justify-content:center}.confirm-modal__btn{flex:1;max-width:160px;padding:.55rem 1rem;border-radius:7px;border:1.5px solid transparent;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.confirm-modal__btn--cancel{background:var(--c-surface, #fff);border-color:var(--c-border, #ddd);color:var(--c-ink)}.confirm-modal__btn--cancel:hover{background:var(--c-hover, #f4f4f5)}.confirm-modal__btn--confirm{background:#dc2626;border-color:#dc2626;color:#fff}.confirm-modal__btn--confirm:hover{background:#b91c1c;border-color:#b91c1c}.admin-table__name{white-space:nowrap}.admin-table__muted{color:var(--c-ink-3)}.admin-table__location{white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.admin-table__email{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-table__ua{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;color:var(--c-muted)}.admin-user-cell{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap;cursor:default}.admin-user-cell__icon{font-size:.7rem;line-height:1;flex-shrink:0}.admin-user-cell__icon--reg{color:var(--c-accent)}.admin-user-cell__icon--guest{color:var(--c-muted)}.admin-user-cell__icon--returning{color:#16a34a;font-size:.75rem}.admin-card__meta{font-size:.75rem;color:var(--c-muted);margin-left:auto}@media (max-width: 640px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-header{padding:0 1rem}.admin-main{padding:1rem}}.page-shell{display:flex;min-height:100dvh}.page-body{flex:1;margin-left:var(--leftnav-w);display:flex;flex-direction:column;min-height:100dvh;background:var(--c-paper);transition:padding-left var(--transition)}.page-body--wp-open{padding-left:var(--wp-panel-w)}.page-header{position:sticky;top:0;z-index:50;height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--c-surface);border-bottom:1px solid var(--c-border);gap:12px}.page-header__brand{display:flex;align-items:center;gap:8px}.page-header__home{display:flex;align-items:center;gap:6px;font-weight:600;font-size:.95rem;color:var(--c-ink);text-decoration:none}.page-header__home:hover{color:var(--c-accent)}.page-header__sep{color:var(--c-ink-3);font-size:1rem}.page-header__title{font-size:.95rem;font-weight:600;color:var(--c-ink-2)}.page-header__badge{display:inline-flex;align-items:center;padding:2px 8px;background:#fee2e2;color:#dc2626;border-radius:999px;font-size:.72rem;font-weight:600}.page-header__actions{display:flex;align-items:center;gap:10px;margin-left:auto}.page-header__email{font-size:.8rem;color:var(--c-ink-3)}.page-header__btn{padding:6px 14px;border:1px solid var(--c-border);border-radius:var(--radius);font-size:.82rem;color:var(--c-ink-2);background:var(--c-surface);transition:background var(--transition),color var(--transition)}.page-header__btn:hover{background:var(--c-paper);color:var(--c-ink)}.page-header__btn--accent{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.page-header__btn--accent:hover{opacity:.9;color:#fff}.page-main{flex:1;padding:28px 24px 48px;overflow-y:auto}.page-main--centered{max-width:900px;margin:0 auto;width:100%}.page-main--wide{max-width:1280px;margin:0 auto;width:100%}.page-empty{color:var(--c-ink-3);font-size:.88rem;padding:24px 0;text-align:center}.page-empty--error{color:#dc2626}.page-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 0;color:var(--c-ink-3);font-size:.9rem}.page-btn{padding:8px 20px;border-radius:var(--radius);font-size:.88rem;font-weight:500}.page-btn--accent{background:var(--c-accent);color:#fff}.page-btn--accent:hover{opacity:.9}.profile-page__hero{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--c-border)}.profile-page__avatar{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--c-accent-lt);color:var(--c-accent);font-size:1.4rem;font-weight:700;flex-shrink:0}.profile-page__display-name{font-size:1.05rem;font-weight:600;color:var(--c-ink);margin:0 0 2px}.profile-page__email{font-size:.82rem;color:var(--c-ink-3);margin:0}.profile-page__badges{display:flex;gap:6px;margin-left:auto;flex-shrink:0}.profile-page__badge{padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:600}.profile-page__badge--admin{background:#ede9fe;color:#7c3aed}.profile-page__badge--free{background:#f3f4f6;color:#6b7280}.profile-page__badge--active{background:var(--c-green-lt);color:var(--c-green)}.profile-page__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.profile-page__card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:20px}.profile-page__card--stats{grid-column:1 / -1}.profile-page__card-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-3);margin:0 0 16px}.profile-page__form{display:flex;flex-direction:column;gap:12px}.profile-page__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-page__label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:500;color:var(--c-ink-2)}.profile-page__input{padding:8px 10px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-paper);font-size:.88rem;color:var(--c-ink);outline:none;transition:border-color var(--transition);font-family:inherit}.profile-page__input:focus{border-color:var(--c-accent)}.profile-page__textarea{resize:vertical;min-height:62px}.profile-page__error{font-size:.78rem;color:var(--c-red);margin:0}.profile-page__success{font-size:.78rem;color:var(--c-green);margin:0}.profile-page__save{padding:9px 16px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.88rem;font-weight:500;align-self:flex-start;transition:opacity var(--transition)}.profile-page__save:hover:not(:disabled){opacity:.88}.profile-page__save:disabled{opacity:.5;cursor:not-allowed}.profile-page__stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px}.profile-page__stat{display:flex;flex-direction:column;gap:3px}.profile-page__stat-value{font-size:1.6rem;font-weight:700;color:var(--c-ink)}.profile-page__stat-label{font-size:.75rem;color:var(--c-ink-3)}.profile-page__qa-link{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--c-accent);text-decoration:none;font-weight:500}.profile-page__qa-link:hover{text-decoration:underline}@media (max-width: 640px){.profile-page__grid{grid-template-columns:1fr}.profile-page__card--stats{grid-column:1}.profile-page__row{grid-template-columns:1fr}.profile-page__hero{flex-wrap:wrap}.profile-page__badges{margin-left:0}.page-main{padding:16px 14px 40px}}.qa-layout{max-width:720px;margin:0 auto;width:100%}.qa-ask-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:20px;margin-bottom:24px}.qa-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-3);margin:0 0 14px}.qa-ask-form{display:flex;flex-direction:column;gap:10px}.qa-textarea{width:100%;padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-paper);font-size:.9rem;font-family:inherit;color:var(--c-ink);resize:vertical;outline:none;transition:border-color var(--transition)}.qa-textarea:focus{border-color:var(--c-accent)}.qa-ask-footer{display:flex;align-items:flex-end;gap:10px}.qa-to-label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:500;color:var(--c-ink-2)}.qa-select{padding:8px 10px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-paper);font-size:.85rem;color:var(--c-ink);outline:none;cursor:pointer}.qa-submit-btn{padding:9px 18px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.88rem;font-weight:500;white-space:nowrap;transition:opacity var(--transition)}.qa-submit-btn:hover:not(:disabled){opacity:.88}.qa-submit-btn:disabled{opacity:.5;cursor:not-allowed}.qa-error{font-size:.78rem;color:var(--c-red);margin:0}.qa-list-section{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden}.qa-list-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:16px 20px 12px;border-bottom:1px solid var(--c-border)}.qa-filter-tabs{display:flex;gap:4px}.qa-filter-tab{display:flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--radius);font-size:.78rem;font-weight:500;color:var(--c-ink-3);background:var(--c-paper);border:1px solid var(--c-border);transition:all var(--transition)}.qa-filter-tab:hover{color:var(--c-ink)}.qa-filter-tab--active{background:var(--c-accent-lt);color:var(--c-accent);border-color:var(--c-accent)}.qa-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 3px;background:currentColor;color:var(--c-surface);border-radius:999px;font-size:.6rem;font-weight:700}.qa-list{list-style:none;padding:0;margin:0}.qa-item{padding:18px 20px;border-bottom:1px solid var(--c-border);transition:background var(--transition)}.qa-item:last-child{border-bottom:none}.qa-item--answered{background:var(--c-surface)}.qa-item--pending{background:color-mix(in srgb,var(--c-gold-lt) 30%,var(--c-surface))}.qa-item__header{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.qa-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:600}.qa-badge--admin{background:var(--c-accent-lt);color:var(--c-accent)}.qa-badge--everyone{background:var(--c-green-lt);color:var(--c-green)}.qa-item__from{font-size:.78rem;color:var(--c-ink-2);font-weight:500}.qa-item__date{font-size:.72rem;color:var(--c-ink-3);margin-left:auto}.qa-status{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px}.qa-status--answered{background:var(--c-green-lt);color:var(--c-green)}.qa-status--pending{background:var(--c-gold-lt);color:var(--c-gold)}.qa-item__question{font-size:.92rem;color:var(--c-ink);line-height:1.6;margin:0 0 10px}.qa-answer{background:var(--c-paper);border-left:3px solid var(--c-accent);padding:10px 14px;border-radius:0 var(--radius) var(--radius) 0;margin-top:4px}.qa-answer__label{display:flex;align-items:center;gap:5px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c-accent);margin-bottom:5px}.qa-answer__text{font-size:.9rem;color:var(--c-ink);line-height:1.6;margin:0 0 4px}.qa-answer__by{font-size:.72rem;color:var(--c-ink-3);font-style:italic}.qa-reply{display:flex;flex-direction:column;gap:8px;margin-top:10px}.qa-reply__textarea{width:100%;padding:8px 10px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-paper);font-size:.88rem;font-family:inherit;color:var(--c-ink);resize:vertical;outline:none;transition:border-color var(--transition)}.qa-reply__textarea:focus{border-color:var(--c-accent)}.qa-reply__btn{padding:7px 16px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.82rem;font-weight:500;align-self:flex-end;transition:opacity var(--transition)}.qa-reply__btn:hover:not(:disabled){opacity:.88}.qa-reply__btn:disabled{opacity:.5;cursor:not-allowed}.qa-guest-strip{font-size:.75rem;color:var(--c-muted);margin:.25rem 0 0}.qa-guest-change{background:none;border:none;color:var(--c-accent);font-size:inherit;cursor:pointer;padding:0 0 0 .3rem;text-decoration:underline}.qa-guest-change:hover{color:var(--c-accent-dk)}.left-nav{position:fixed;top:0;left:0;bottom:0;width:var(--leftnav-w);background:var(--c-surface);border-right:1px solid var(--c-border);display:flex;flex-direction:column;align-items:center;padding:10px 0;gap:4px;z-index:110}.left-nav__btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:44px;height:44px;border-radius:var(--radius);color:var(--c-ink-3);transition:background var(--transition),color var(--transition);text-decoration:none}.left-nav__btn:hover{background:var(--c-paper);color:var(--c-ink)}.left-nav__btn--active{background:var(--c-accent-lt);color:var(--c-accent)}.left-nav__btn--disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.left-nav__label{font-size:.58rem;font-weight:500;letter-spacing:.01em;line-height:1}.left-nav__spacer{flex:1}.left-nav__count{position:absolute;top:4px;right:4px;min-width:14px;height:14px;padding:0 3px;background:var(--c-accent);color:#fff;border-radius:999px;font-size:.58rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.admin-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--c-border)}.admin-tab{position:relative;display:flex;align-items:center;gap:6px;padding:8px 16px 10px;font-size:.875rem;font-weight:500;color:var(--c-ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--transition),border-color var(--transition)}.admin-tab:hover{color:var(--c-ink)}.admin-tab--active{color:var(--c-accent);border-bottom-color:var(--c-accent)}.admin-tab__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:#dc2626;color:#fff;border-radius:999px;font-size:.65rem;font-weight:700}.admin-q-legend{display:flex;gap:6px}.admin-badge--q-admin{background:var(--c-accent-lt);color:var(--c-accent)}.admin-badge--q-everyone{background:var(--c-green-lt);color:var(--c-green)}.admin-q-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1px}.admin-q-item{padding:14px 16px;border-bottom:1px solid var(--c-border)}.admin-q-item--answered{opacity:.85}.admin-q-item__header{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.admin-q-item__from{font-size:.78rem;color:var(--c-ink-2);font-weight:500}.admin-q-item__date{font-size:.72rem;color:var(--c-ink-3);margin-left:auto}.admin-q-item__text{font-size:.88rem;color:var(--c-ink);margin:0 0 10px;line-height:1.55}.admin-q-item__answer{background:var(--c-paper);border-left:3px solid var(--c-accent);padding:8px 12px;border-radius:0 var(--radius) var(--radius) 0}.admin-q-item__answer-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c-accent)}.admin-q-item__answer-text{font-size:.85rem;color:var(--c-ink);margin:4px 0 2px;line-height:1.5}.admin-q-item__answered-by{font-size:.72rem;color:var(--c-ink-3);font-style:italic}.admin-q-item__reply{display:flex;flex-direction:column;gap:6px}.admin-q-item__textarea{width:100%;padding:8px 10px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-paper);font-size:.85rem;font-family:inherit;color:var(--c-ink);resize:vertical;outline:none;transition:border-color var(--transition)}.admin-q-item__textarea:focus{border-color:var(--c-accent)}.admin-btn--sm{padding:6px 12px;font-size:.8rem;align-self:flex-end}.profile-page__badge--pro{background:#fef3c7;color:#d97706}.profile-page__card--billing{grid-column:1 / -1}.billing-card__status{display:flex;align-items:center;gap:10px;margin-bottom:8px}.billing-card__status-text{font-size:.85rem;color:var(--c-text-muted)}.billing-card__desc{font-size:.9rem;color:var(--c-text-muted);margin:0 0 16px}.billing-card__manage-btn{background:var(--c-surface-2);color:var(--c-text);border:1px solid var(--c-border)}.billing-card__manage-btn:hover:not(:disabled){background:var(--c-border)}.billing-card__upgrade-btn{background:var(--c-accent);color:#fff}.billing-card__upgrade-btn:hover{opacity:.9}.pricing-modal{max-width:520px;width:100%;padding:32px}.pricing-modal__title{font-size:1.4rem;font-weight:700;margin:0 0 6px}.pricing-modal__subtitle{font-size:.95rem;color:var(--c-text-muted);margin:0 0 28px}.pricing-modal__plans{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}@media (max-width: 480px){.pricing-modal__plans{grid-template-columns:1fr}}.pricing-modal__plan{border:1.5px solid var(--c-border);border-radius:10px;padding:20px;position:relative}.pricing-modal__plan--premium{border-color:var(--c-accent);background:color-mix(in srgb,var(--c-accent) 4%,transparent)}.pricing-modal__plan-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:var(--c-accent);color:#fff;font-size:.72rem;font-weight:700;padding:2px 10px;border-radius:999px;white-space:nowrap}.pricing-modal__plan-name{font-size:1rem;font-weight:700;margin-bottom:4px}.pricing-modal__plan-price{font-size:1.8rem;font-weight:800;margin-bottom:16px;color:var(--c-text)}.pricing-modal__plan-price span{font-size:.95rem;font-weight:500;color:var(--c-text-muted)}.pricing-modal__features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.pricing-modal__feature{font-size:.85rem;padding-left:20px;position:relative}.pricing-modal__feature:before{position:absolute;left:0;font-weight:700}.pricing-modal__feature--ok:before{content:"✓";color:var(--c-green)}.pricing-modal__feature--no{color:var(--c-text-muted);text-decoration:line-through}.pricing-modal__feature--no:before{content:"✗";color:var(--c-text-muted)}.pricing-modal__error{font-size:.85rem;color:var(--c-red, #dc2626);margin-bottom:12px}.pricing-modal__cta{width:100%;padding:13px 20px;background:var(--c-accent);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity var(--transition)}.pricing-modal__cta:hover:not(:disabled){opacity:.9}.pricing-modal__cta:disabled{opacity:.6;cursor:not-allowed}.pricing-modal__footer{text-align:center;font-size:.78rem;color:var(--c-text-muted);margin:12px 0 0}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--c-paper)}.auth-page__card{width:100%;max-width:420px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:36px 32px;box-shadow:var(--shadow-md)}.auth-page__back{display:inline-block;font-size:.82rem;color:var(--c-ink-3);text-decoration:none;margin-bottom:20px}.auth-page__back:hover{color:var(--c-accent)}.auth-page__title{font-size:1.4rem;font-weight:700;color:var(--c-ink);margin:0 0 8px}.auth-page__subtitle{font-size:.9rem;color:var(--c-ink-3);margin:0 0 24px;line-height:1.5}.auth-page__success{font-size:.92rem;color:var(--c-ink-2);line-height:1.6}.auth-page__success p{margin:0 0 16px}.auth-page__link{display:inline-block;color:var(--c-accent);font-weight:600;text-decoration:none}.auth-page__link:hover{text-decoration:underline}@media (max-width: 480px){.auth-page__card{padding:28px 20px}}.pricing-page{min-height:100vh;background:var(--c-bg, #f8fafc);font-family:var(--font-sans)}.pricing-page__nav{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:var(--c-surface, #fff);border-bottom:1px solid var(--c-border, #e2e8f0);position:sticky;top:0;z-index:10}.pricing-page__nav-logo{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:800;color:var(--c-ink, #0f172a);text-decoration:none}.pricing-page__nav-back{display:flex;align-items:center;gap:5px;font-size:.85rem;color:var(--c-ink-3, #64748b);text-decoration:none;transition:color var(--transition)}.pricing-page__nav-back:hover{color:var(--c-accent, #6366f1)}.pricing-page__hero{text-align:center;padding:56px 24px 40px;max-width:640px;margin:0 auto}.pricing-page__title{font-size:2.25rem;font-weight:800;color:var(--c-ink, #0f172a);margin:0 0 10px;line-height:1.15}.pricing-page__subtitle{font-size:1.05rem;color:var(--c-ink-3, #64748b);margin:0 0 32px}.pricing-page__toggle{display:inline-flex;background:var(--c-border, #e2e8f0);border-radius:12px;padding:4px;gap:3px}.pricing-page__toggle-btn{display:flex;align-items:center;gap:8px;padding:9px 20px;border:none;border-radius:9px;background:transparent;color:var(--c-ink-3, #64748b);font-size:.88rem;font-weight:500;cursor:pointer;min-height:44px;transition:background var(--transition),color var(--transition),box-shadow var(--transition)}.pricing-page__toggle-btn--active{background:var(--c-surface, #fff);color:var(--c-ink, #0f172a);font-weight:600;box-shadow:0 1px 4px #0000001a}.pricing-page__toggle-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;background:#dcfce7;color:#166534;letter-spacing:.01em}.pricing-page__error{text-align:center;color:var(--c-red, #dc2626);font-size:.88rem;margin:0 auto 16px;max-width:480px;padding:10px 16px;border-radius:8px;background:var(--c-red-lt, #fef2f2)}.pricing-page__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start;max-width:1020px;margin:0 auto;padding:0 24px 56px}.pricing-page__card{border:1.5px solid var(--c-border, #e2e8f0);border-radius:16px;padding:32px 24px 24px;position:relative;display:flex;flex-direction:column;background:var(--c-surface, #fff);transition:box-shadow var(--transition),transform var(--transition)}.pricing-page__card--pro{border-color:var(--c-accent, #6366f1);background:color-mix(in srgb,var(--c-accent, #6366f1) 4%,var(--c-surface, #fff));transform:translateY(-10px);box-shadow:0 12px 40px #6366f124,0 2px 8px #0000000f}.pricing-page__card--premium{border-color:var(--c-gold, #f59e0b);background:color-mix(in srgb,var(--c-gold, #f59e0b) 4%,var(--c-surface, #fff))}.pricing-page__card--current{border-width:2px;border-style:solid}.pricing-page__card-badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:var(--c-accent, #6366f1);color:#fff;font-size:.7rem;font-weight:700;padding:4px 14px;border-radius:999px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;box-shadow:0 2px 8px #6366f140}.pricing-page__card--premium .pricing-page__card-badge{background:var(--c-gold, #f59e0b);color:#7c2d12;box-shadow:0 2px 8px #f59e0b4d}.pricing-page__card-badge--current{background:var(--c-ink-3, #64748b);box-shadow:none}.pricing-page__card-name{font-size:1.2rem;font-weight:800;color:var(--c-ink, #0f172a);margin-bottom:4px}.pricing-page__card-tagline{font-size:.82rem;color:var(--c-ink-3, #64748b);margin:0 0 20px;line-height:1.45;min-height:2.6em}.pricing-page__card-price{font-size:2.6rem;font-weight:800;color:var(--c-ink, #0f172a);line-height:1;margin-bottom:4px;display:flex;align-items:baseline;gap:2px}.pricing-page__card-price-unit{font-size:1rem;font-weight:500;color:var(--c-ink-3, #64748b)}.pricing-page__card-billing{font-size:.78rem;color:var(--c-ink-3, #94a3b8);margin:0 0 6px}.pricing-page__savings-callout{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:700;color:#166534;background:#dcfce7;padding:3px 10px;border-radius:999px;margin:0 0 20px;align-self:flex-start}.pricing-page__features{list-style:none;padding:20px 0 0;margin:0 0 24px;display:flex;flex-direction:column;gap:11px;flex:1;border-top:1px solid var(--c-border, #e2e8f0)}.pricing-page__feature{display:flex;align-items:flex-start;gap:10px;font-size:.86rem;line-height:1.4}.pricing-page__feature--yes,.pricing-page__feature--limited{color:var(--c-ink-2, #334155)}.pricing-page__feature--no{color:var(--c-ink-3, #94a3b8)}.pricing-page__feature--yes .pricing-page__feature-icon{color:var(--c-green, #16a34a)}.pricing-page__feature--limited .pricing-page__feature-icon{color:var(--c-gold, #d97706)}.pricing-page__feature--no .pricing-page__feature-icon{color:var(--c-border-2, #cbd5e1)}.pricing-page__feature-icon{flex-shrink:0;width:16px;display:flex;align-items:center;justify-content:center;margin-top:2px}.pricing-page__feature-text{display:flex;flex-direction:column;gap:1px}.pricing-page__feature-note{font-size:.76rem;color:var(--c-ink-3, #94a3b8);font-weight:500}.pricing-page__cta{width:100%;padding:13px 16px;border-radius:10px;border:1.5px solid transparent;font-size:.9rem;font-weight:700;cursor:pointer;transition:opacity var(--transition),background var(--transition),box-shadow var(--transition);min-height:48px;letter-spacing:.01em}.pricing-page__cta--primary{background:var(--c-accent, #6366f1);color:#fff;border-color:var(--c-accent, #6366f1);box-shadow:0 4px 14px #6366f14d}.pricing-page__cta--primary:hover:not(:disabled){opacity:.9;box-shadow:0 6px 20px #6366f159}.pricing-page__cta--premium{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-color:transparent;box-shadow:0 4px 14px #f59e0b4d}.pricing-page__cta--premium:hover:not(:disabled){opacity:.9}.pricing-page__cta--secondary{background:transparent;color:var(--c-ink-3, #64748b);border-color:var(--c-border, #e2e8f0)}.pricing-page__cta--secondary:hover:not(:disabled){background:var(--c-surface-2, #f1f5f9);border-color:var(--c-border-2, #cbd5e1)}.pricing-page__cta--current{background:transparent;color:var(--c-ink-3, #64748b);border-color:var(--c-border, #e2e8f0);cursor:default;font-weight:500}.pricing-page__cta:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.pricing-page__trust-strip{display:flex;align-items:center;justify-content:center;gap:40px;flex-wrap:wrap;padding:28px 24px;border-top:1px solid var(--c-border, #e2e8f0);border-bottom:1px solid var(--c-border, #e2e8f0);margin:0 auto 56px;max-width:1020px}.pricing-page__trust-item{display:flex;align-items:center;gap:8px;font-size:.83rem;color:var(--c-ink-3, #64748b);font-weight:500}.pricing-page__faq{max-width:640px;margin:0 auto;padding:0 24px 80px}.pricing-page__faq-title{font-size:1.2rem;font-weight:700;color:var(--c-ink, #0f172a);margin:0 0 20px;text-align:center}.pricing-page__faq-item{border-bottom:1px solid var(--c-border, #e2e8f0)}.pricing-page__faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border:none;background:transparent;text-align:left;font-size:.9rem;font-weight:600;color:var(--c-ink, #0f172a);cursor:pointer;transition:color var(--transition)}.pricing-page__faq-q:hover{color:var(--c-accent, #6366f1)}.pricing-page__faq-a{margin:0 0 16px;font-size:.86rem;color:var(--c-ink-3, #64748b);line-height:1.6}@media (max-width: 900px){.pricing-page__grid{grid-template-columns:1fr 1fr;max-width:680px}.pricing-page__card--pro{grid-column:1 / -1;transform:none;box-shadow:0 4px 20px #6366f11f}}@media (max-width: 600px){.pricing-page__nav{padding:14px 16px}.pricing-page__hero{padding:36px 16px 28px}.pricing-page__title{font-size:1.7rem}.pricing-page__subtitle{font-size:.95rem}.pricing-page__toggle-btn{padding:8px 14px}.pricing-page__grid{grid-template-columns:1fr;max-width:440px;padding:0 16px 40px}.pricing-page__card--pro{transform:none;box-shadow:0 4px 20px #6366f11f}.pricing-page__trust-strip{gap:20px;padding:24px 16px}.pricing-page__faq{padding:0 16px 56px}}.paper-view--jumping{filter:blur(3px) brightness(.96);pointer-events:none;-webkit-user-select:none;user-select:none;transition:filter .2s ease}.jump-overlay{position:sticky;top:0;height:0;overflow:visible;z-index:50}.jump-card-wrapper{height:calc(100vh - var(--topbar-h));display:flex;align-items:center;justify-content:center;pointer-events:all}.jump-card{display:flex;flex-direction:column;align-items:center;gap:14px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:32px 40px 28px;box-shadow:var(--shadow-lg);animation:jump-card-in .22s cubic-bezier(.34,1.56,.64,1) both}@keyframes jump-card-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.jump-card__doc{position:relative;width:64px;height:80px;margin:0 auto;display:flex;align-items:center;justify-content:center}.jump-card__doc-svg{width:64px;height:80px;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.08))}.jump-card__scan{position:absolute;left:8px;right:8px;height:3px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--c-tutor),transparent);box-shadow:0 0 8px 2px #6d28d959;top:14px;animation:jump-scan 1.4s ease-in-out infinite}@keyframes jump-scan{0%{top:14px;opacity:0}8%{opacity:1}88%{opacity:1}to{top:62px;opacity:0}}.jump-card__title{font-family:var(--font-serif);font-size:1.05rem;font-weight:600;color:var(--c-ink);margin:0}.jump-card__page{font-size:.82rem;color:var(--c-ink-3);margin:0}.jump-card__dots{display:flex;gap:6px;align-items:center;height:16px}.jump-card__dots span{display:block;width:7px;height:7px;border-radius:50%;background:var(--c-tutor);animation:jump-dot 1.2s ease-in-out infinite both}.jump-card__dots span:nth-child(1){animation-delay:0s}.jump-card__dots span:nth-child(2){animation-delay:.18s}.jump-card__dots span:nth-child(3){animation-delay:.36s}@keyframes jump-dot{0%,70%,to{transform:translateY(0);opacity:.4}35%{transform:translateY(-7px);opacity:1}}.msg__save-note{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;color:var(--c-ink-3);background:transparent;border:1px solid var(--c-border);border-radius:var(--radius);cursor:pointer;transition:color var(--transition),border-color var(--transition),background var(--transition)}.msg__save-note:hover{color:var(--c-tutor);border-color:var(--c-tutor);background:var(--c-tutor-lt)}.msg__save-note--saved{color:var(--c-green);border-color:var(--c-green-lt);background:var(--c-green-lt)}.notes-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:72px 0;text-align:center}.notes-empty__title{font-size:1rem;font-weight:500;color:var(--c-ink-2);margin:0}.notes-empty__sub{font-size:.87rem;color:var(--c-ink-3);max-width:360px;margin:0}.notes-page__body{display:flex;flex-direction:column;gap:20px}.notes-page__meta{display:flex;align-items:center;gap:10px}.notes-page__heading{display:flex;align-items:center;gap:7px;font-family:var(--font-serif);font-size:1.35rem;font-weight:600;color:var(--c-ink);margin:0}.notes-page__count{font-size:.75rem;font-weight:600;color:var(--c-tutor);background:var(--c-tutor-lt);padding:2px 8px;border-radius:20px}.notes-page__section-meta{display:flex;align-items:center;gap:10px;margin-bottom:14px}.notes-page__section-heading{display:flex;align-items:center;gap:7px;font-family:var(--font-serif);font-size:1.1rem;font-weight:600;color:var(--c-ink);margin:0}.notes-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.note-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:16px 18px 14px;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.note-card:hover{border-color:var(--c-accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.note-card:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}.note-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.note-card__paper-link{display:flex;align-items:center;gap:5px;font-size:.76rem;font-weight:500;color:var(--c-accent);text-decoration:none;flex:1;min-width:0}.note-card__paper-link:hover{text-decoration:underline}.note-card__paper-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-card__page{flex-shrink:0;font-size:.7rem;color:var(--c-ink-3);background:var(--c-border);padding:1px 5px;border-radius:3px}.note-card__delete{flex-shrink:0;background:transparent;border:none;color:var(--c-border-2);cursor:pointer;padding:6px 8px;border-radius:var(--radius);transition:color var(--transition);line-height:1}.note-card__delete:hover{color:var(--c-red)}.note-card__context{font-size:.78rem;font-style:italic;color:var(--c-ink-3);margin:0;padding:5px 10px;border-left:2px solid var(--c-border-2);line-height:1.5}.note-card__question{font-size:.83rem;font-weight:500;color:var(--c-ink-2);margin:0;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note-card__answer-preview{font-size:.8rem;color:var(--c-ink-3);margin:0;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.note-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:6px;border-top:1px solid var(--c-border)}.note-card__date{font-size:.72rem;color:var(--c-ink-3)}.note-card__read-more{font-size:.72rem;color:var(--c-accent);opacity:0;transition:opacity var(--transition)}.note-card:hover .note-card__read-more{opacity:1}.note-overlay__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f111773;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:500;display:flex;align-items:center;justify-content:center;padding:24px}.note-overlay{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:640px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.note-overlay__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--c-border);gap:12px}.note-overlay__paper-link{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:500;color:var(--c-accent);text-decoration:none;flex:1;min-width:0}.note-overlay__paper-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-overlay__paper-link:hover{text-decoration:underline}.note-overlay__page{flex-shrink:0;font-size:.74rem;color:var(--c-ink-3);background:var(--c-border);padding:1px 6px;border-radius:3px}.note-overlay__actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.note-overlay__delete,.note-overlay__close{background:transparent;border:none;cursor:pointer;padding:5px 7px;border-radius:var(--radius);color:var(--c-ink-3);transition:color var(--transition),background var(--transition);line-height:1}.note-overlay__delete:hover{color:var(--c-red);background:var(--c-red-lt)}.note-overlay__close:hover{color:var(--c-ink);background:var(--c-border)}.note-overlay__context{margin:0;padding:12px 20px;background:var(--c-paper);border-bottom:1px solid var(--c-border);font-size:.84rem;font-style:italic;color:var(--c-ink-2);line-height:1.6;border-left:none}.note-overlay__question,.note-overlay__answer,.note-overlay__footer{padding-left:20px;padding-right:20px}.note-overlay__question{display:flex;gap:10px;align-items:flex-start;padding-top:16px}.note-overlay__q-badge{flex-shrink:0;width:22px;height:22px;line-height:22px;text-align:center;font-size:.68rem;font-weight:700;background:var(--c-tutor-lt);color:var(--c-tutor);border-radius:4px}.note-overlay__question p{font-size:.93rem;font-weight:500;color:var(--c-ink);margin:0;line-height:1.5}.note-overlay__answer{flex:1;overflow-y:auto;padding-top:12px;padding-bottom:4px;font-size:.9rem;line-height:1.7;color:var(--c-ink);border-left:3px solid var(--c-tutor-lt);margin-left:20px;padding-left:14px;margin-right:20px}.note-overlay__answer p{margin:0 0 10px}.note-overlay__answer p:last-child{margin-bottom:0}.note-overlay__answer h1,.note-overlay__answer h2,.note-overlay__answer h3{font-family:var(--font-serif);margin:14px 0 6px}.note-overlay__answer code{font-family:var(--font-mono);font-size:.83em;background:var(--c-border);padding:1px 4px;border-radius:3px}.note-overlay__answer pre{background:var(--c-paper);border:1px solid var(--c-border);border-radius:var(--radius);padding:12px;overflow-x:auto}.note-overlay__footer{padding-top:12px;padding-bottom:16px;font-size:.75rem;color:var(--c-ink-3);border-top:1px solid var(--c-border);margin-top:12px}.coll-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.coll-toolbar__search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:160px}.coll-toolbar__search-icon{position:absolute;left:10px;color:var(--c-ink-3);display:flex;pointer-events:none}.coll-toolbar__search{width:100%;height:34px;padding:0 10px 0 32px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-sans);font-size:.875rem;transition:border-color var(--transition)}.coll-toolbar__search:focus{outline:none;border-color:var(--c-accent)}.coll-toolbar__search::-webkit-search-cancel-button{cursor:pointer}.coll-toolbar__result-count{position:absolute;right:10px;font-size:.72rem;color:var(--c-ink-3);white-space:nowrap;pointer-events:none}.coll-toolbar__right{display:flex;align-items:center;gap:8px;flex-shrink:0}.coll-toolbar__sort{height:34px;padding:0 28px 0 10px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-sans);font-size:.825rem;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;transition:border-color var(--transition)}.coll-toolbar__sort:focus{outline:none;border-color:var(--c-accent)}.coll-toolbar__modes{display:flex;gap:2px}.coll-toolbar__mode-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);color:var(--c-ink-3);cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.coll-toolbar__mode-btn:hover{border-color:var(--c-border-2);color:var(--c-ink)}.coll-toolbar__mode-btn--active{background:var(--c-accent-lt);border-color:var(--c-accent);color:var(--c-accent)}.bm-list--compact{display:flex;flex-direction:column;gap:3px}.bm-row{display:flex;align-items:center;gap:12px;padding:9px 14px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);transition:border-color var(--transition),background var(--transition);min-width:0}.bm-row:hover{border-color:var(--c-accent);background:var(--c-paper)}.bm-row__icon{color:var(--c-accent);flex-shrink:0;line-height:0}.bm-row__body{flex:1;min-width:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bm-row__title{font-family:var(--font-serif);font-size:.875rem;font-weight:500;color:var(--c-ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.bm-row__title:hover{color:var(--c-accent)}.bm-row__meta{font-size:.72rem;color:var(--c-ink-3);white-space:nowrap;flex-shrink:0}.bm-row__chips{display:flex;flex-wrap:wrap;gap:3px;flex-shrink:0}.bm-row__actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.note-groups{display:flex;flex-direction:column;gap:10px}.note-group{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition)}.note-group:hover{border-color:color-mix(in srgb,var(--c-accent) 40%,var(--c-border))}.note-group--open{border-color:color-mix(in srgb,var(--c-accent) 30%,var(--c-border))}.note-group__header{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition)}.note-group__header:hover{background:var(--c-paper)}.note-group__deck-wrap{position:relative;width:34px;height:40px;flex-shrink:0}.note-group__deck-card{position:absolute;width:30px;height:36px;border:1.5px solid var(--c-border-2);border-radius:4px;background:var(--c-paper)}.note-group__deck-card--0{top:0;left:0;z-index:3;background:var(--c-surface);border-color:color-mix(in srgb,var(--c-accent) 50%,var(--c-border))}.note-group__deck-card--1{top:3px;left:3px;z-index:2;transform:rotate(-3deg);opacity:.65}.note-group__deck-card--2{top:6px;left:6px;z-index:1;transform:rotate(-6deg);opacity:.35}.note-group__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.note-group__paper-link{display:flex;align-items:center;gap:5px;font-family:var(--font-serif);font-size:.95rem;font-weight:600;color:var(--c-ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-group__paper-link:hover{color:var(--c-accent);text-decoration:underline}.note-group__paper-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-group__count{font-size:.72rem;color:var(--c-tutor);background:var(--c-tutor-lt);padding:1px 7px;border-radius:10px;font-weight:600;align-self:flex-start}.note-group__chevron{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;cursor:pointer;color:var(--c-ink-3);border-radius:var(--radius);transition:color var(--transition),background var(--transition),transform var(--transition)}.note-group__chevron:hover{color:var(--c-ink);background:var(--c-border)}.note-group--open .note-group__chevron{transform:rotate(180deg)}.note-group__cards{border-top:1px solid var(--c-border);padding:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;background:var(--c-paper)}.bookmarks-page__body{width:100%;max-width:860px;margin:0 auto;padding:24px 0 48px}.bookmarks-page__meta{display:flex;align-items:center;gap:10px;margin-bottom:20px}.bookmarks-page__heading{display:flex;align-items:center;gap:8px;font-family:var(--font-serif);font-size:1.35rem;font-weight:600;color:var(--c-ink);margin:0}.bookmarks-page__count{font-size:.78rem;font-weight:600;color:var(--c-ink-3);background:var(--c-border);padding:2px 8px;border-radius:20px}.bm-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.bm-card{position:relative;background:var(--c-paper);border:1px solid var(--c-border);border-radius:calc(var(--radius) + 2px);display:flex;flex-direction:column;gap:0;overflow:hidden;transition:box-shadow .15s,border-color .15s}.bm-card:hover{border-color:var(--c-accent);box-shadow:0 3px 12px #00000014}.bm-card__ribbon{position:absolute;top:0;right:14px;color:var(--c-accent);line-height:1}.bm-card__body{padding:18px 16px 12px;flex:1}.bm-card__cats{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-accent);margin:0 0 6px}.bm-card__title{font-family:var(--font-serif);font-size:.97rem;font-weight:600;line-height:1.4;color:var(--c-ink);margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.bm-card__meta{font-size:.75rem;color:var(--c-ink-3);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bm-card__chips{padding:0 16px 10px;display:flex;flex-direction:column;gap:6px}.bm-card__chips-label{font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--c-ink-3)}.bm-card__chips-row{display:flex;flex-wrap:wrap;gap:5px}.bm-card__chip{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 7px;background:var(--c-accent-lt, rgba(99,102,241,.08));color:var(--c-accent);border:1px solid transparent;border-radius:4px;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .12s,border-color .12s}.bm-card__chip:hover{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.bm-card__footer{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 14px;border-top:1px solid var(--c-border);margin-top:auto}.bm-card__open{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;font-weight:600;color:var(--c-accent);text-decoration:none}.bm-card__open:hover{text-decoration:underline}.bm-card__unpin{font-size:.75rem;font-weight:500;color:var(--c-ink-3);background:none;border:1px solid var(--c-border);border-radius:4px;padding:3px 10px;cursor:pointer;transition:color .12s,border-color .12s}.bm-card__unpin:hover{color:var(--c-red, #e53e3e);border-color:var(--c-red, #e53e3e)}.bm-card__source{display:inline-block;margin-right:6px;padding:1px 7px;font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--c-accent);background:color-mix(in srgb,var(--c-accent) 10%,transparent);border-radius:3px}.pin-toast{display:flex;align-items:center;gap:8px;padding:8px 10px;margin:4px 8px;background:color-mix(in srgb,var(--c-red, #e53e3e) 8%,var(--c-surface));border:1px solid color-mix(in srgb,var(--c-red, #e53e3e) 30%,transparent);border-radius:var(--radius);font-size:.78rem;color:var(--c-red, #e53e3e);line-height:1.4;animation:fadeIn .16s ease both}.pin-toast svg{flex-shrink:0;width:14px;height:14px}.pin-toast span{flex:1}.pin-toast__close{flex-shrink:0;background:none;border:none;cursor:pointer;color:inherit;opacity:.65;padding:2px 4px;border-radius:3px;font-size:.8rem;line-height:1;transition:opacity var(--transition)}.pin-toast__close:hover{opacity:1}@media (max-width: 480px){.modal{padding:20px 16px 16px;border-radius:var(--radius)}.modal__close{top:10px;right:10px}}@media (hover: none) and (pointer: coarse){.icon-btn,.toolbar-btn,.wp-entry__bookmark,.wp-entry__delete,.wp-entry__pin-btn,.wp-pagination__btn,.modal__close,.top-bar__logout,.tutor-panel__send{width:44px;height:44px}}.blog-reader-layout{display:grid;grid-template-columns:56px 260px 1fr;grid-template-rows:var(--topbar-h) 1fr;height:100dvh;overflow:hidden}.blog-reader-layout .left-nav{grid-row:1 / -1}.blog-reader-header{grid-column:2 / -1;grid-row:1}.blog-wp-panel{grid-column:2;grid-row:2;display:flex;flex-direction:column;border-right:1px solid var(--c-border);background:var(--c-surface);overflow:hidden}.blog-wp-panel__section-header{display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 0}.blog-wp-panel__section-label{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink-3);padding:10px 12px 6px}.blog-pager{display:flex;align-items:center;gap:2px;flex-shrink:0}.blog-pager__btn{background:none;border:1px solid var(--c-border);border-radius:4px;color:var(--c-ink-2);cursor:pointer;font-size:.85rem;line-height:1;padding:1px 5px;transition:background .15s}.blog-pager__btn:hover:not(:disabled){background:var(--c-paper);color:var(--c-ink)}.blog-pager__btn:disabled{opacity:.3;cursor:default}.blog-pager__info{font-size:.65rem;color:var(--c-ink-3);min-width:28px;text-align:center}.blog-pager--feed{padding:4px 12px 8px;justify-content:center}.blog-wp-panel__sources{border-bottom:1px solid var(--c-border);flex-shrink:0}.blog-wp-panel__source-grid{display:flex;flex-direction:column;gap:2px;padding:0 8px 8px}.blog-source-btn{display:flex;align-items:center;gap:8px;width:100%;background:none;border:1px solid transparent;border-radius:6px;padding:5px 8px;cursor:pointer;text-align:left;transition:background var(--transition),border-color var(--transition)}.blog-source-btn:hover{background:var(--c-paper)}.blog-source-btn--active{background:var(--c-accent-lt);border-color:var(--c-accent)}.blog-source-btn__abbr{display:grid;place-items:center;width:26px;height:26px;border-radius:5px;background:var(--c-border);font-size:.65rem;font-weight:800;letter-spacing:-.01em;color:var(--c-ink-2);flex-shrink:0}.blog-source-btn--active .blog-source-btn__abbr{background:var(--c-accent);color:#fff}.blog-source-btn__name{font-size:.74rem;font-weight:500;color:var(--c-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blog-source-btn--active .blog-source-btn__name{color:var(--c-accent-dk);font-weight:600}.blog-source-btn--locked{opacity:.45;cursor:pointer}.blog-source-btn--locked:hover{background:var(--c-paper);opacity:.65}.blog-source-btn__lock{font-size:.6rem;margin-left:auto;flex-shrink:0;opacity:.7}.blog-wp-panel__feed{flex:1;overflow-y:auto;min-height:0}.blog-wp-panel__empty{font-size:.75rem;color:var(--c-ink-3);padding:12px;font-style:italic}.blog-wp-panel__empty--error{color:var(--c-red, #e53e3e)}.blog-feed-list{list-style:none;margin:0;padding:0 8px 8px}.blog-feed-item-row{display:flex;align-items:flex-start;gap:2px}.blog-feed-item-row .blog-feed-item{flex:1;min-width:0}.blog-feed-bm-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-top:5px;padding:0;border:none;background:none;color:var(--c-text-muted);cursor:pointer;border-radius:4px;opacity:0;transition:opacity .12s,color .12s,background .12s}.blog-feed-item-row:hover .blog-feed-bm-btn,.blog-feed-bm-btn--active{opacity:1}.blog-feed-bm-btn:hover{color:var(--c-accent);background:color-mix(in srgb,var(--c-accent) 10%,transparent)}.blog-feed-bm-btn--active{color:var(--c-accent)}.blog-feed-item{display:flex;flex-direction:column;gap:3px;width:100%;background:none;border:1px solid transparent;border-radius:6px;padding:7px 9px;cursor:pointer;text-align:left;transition:background var(--transition),border-color var(--transition);margin-bottom:2px}.blog-feed-item:hover{background:var(--c-paper);border-color:var(--c-border)}.blog-feed-item--active{background:var(--c-accent-lt);border-color:var(--c-accent)}.blog-feed-item__title{font-size:.75rem;font-weight:500;color:var(--c-ink);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-feed-item--active .blog-feed-item__title{color:var(--c-accent-dk);font-weight:600}.blog-feed-item__new{display:inline-block;vertical-align:middle;margin-left:5px;padding:1px 5px;font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--c-accent, #6366f1);border-radius:3px;line-height:1.5;white-space:nowrap}.blog-feed-item__meta{display:flex;gap:6px;font-size:.64rem;color:var(--c-ink-3);flex-wrap:wrap}.blog-reader-main{grid-column:3;grid-row:2;overflow-y:auto;background:var(--c-paper);position:relative}.blog-reader-main__inner{max-width:700px;margin:0 auto;padding:48px 40px 88px}.blog-read-progress{position:fixed;top:var(--topbar-h);left:0;right:0;height:3px;background:linear-gradient(90deg,var(--c-accent) var(--progress, 0%),transparent var(--progress, 0%));z-index:150;pointer-events:none;transition:background .1s linear}.blog-post-view--empty{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:24px}.blog-post-view__placeholder{text-align:center;color:var(--c-ink-3);max-width:320px}.blog-post-view__placeholder svg{margin-bottom:16px;opacity:.35}.blog-post-view__placeholder p{font-size:.9rem;margin:0 0 6px}.blog-post-view__placeholder-sub{font-size:.78rem;opacity:.75}.blog-post-view__header{margin-bottom:36px;padding-bottom:24px;border-bottom:1px solid var(--c-border)}.blog-post-view__source-badge{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-accent);background:var(--c-accent-lt);border-radius:4px;padding:2px 8px;margin-bottom:12px}.blog-post-view__title{font-family:var(--font-serif);font-size:1.85rem;font-weight:800;line-height:1.2;color:var(--c-ink);margin:0 0 14px;letter-spacing:-.02em}.blog-post-view__meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.78rem;color:var(--c-ink-3);align-items:center}.blog-post-view__author{color:var(--c-ink-2);font-weight:500}.blog-post-view__reading-time{background:var(--c-paper);border:1px solid var(--c-border);border-radius:10px;padding:1px 8px;font-size:.72rem;font-weight:500;color:var(--c-ink-3)}.blog-post-view__ext-link{color:var(--c-accent);text-decoration:none;font-weight:500;font-size:.78rem}.blog-post-view__ext-link:hover{text-decoration:underline}.blog-bookmark-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 10px 3px 8px;border:1px solid var(--c-border);border-radius:20px;background:transparent;color:var(--c-text-muted);font-size:.75rem;font-weight:500;cursor:pointer;transition:border-color .12s,color .12s,background .12s;white-space:nowrap}.blog-bookmark-btn:hover{border-color:var(--c-accent);color:var(--c-accent);background:color-mix(in srgb,var(--c-accent) 8%,transparent)}.blog-bookmark-btn--active{border-color:var(--c-accent);color:var(--c-accent);background:color-mix(in srgb,var(--c-accent) 10%,transparent)}.blog-bookmark-btn--active:hover{background:color-mix(in srgb,var(--c-accent) 16%,transparent)}@keyframes skeleton-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.blog-skeleton{display:flex;flex-direction:column;gap:14px;padding-top:8px}.blog-skeleton__line,.blog-skeleton__block{border-radius:6px;background:linear-gradient(90deg,var(--c-border) 25%,color-mix(in srgb,var(--c-border) 60%,var(--c-surface)) 50%,var(--c-border) 75%);background-size:1200px 100%;animation:skeleton-shimmer 1.6s infinite linear}.blog-skeleton__line{height:14px;width:100%}.blog-skeleton__line--title{height:26px;width:80%;margin-bottom:4px}.blog-skeleton__line--meta{height:11px;width:40%}.blog-skeleton__line--short{width:65%}.blog-skeleton__line--med{width:82%}.blog-skeleton__block{height:180px;border-radius:8px;margin:8px 0}.blog-content{font-size:var(--blog-font-size, 1.0625rem);line-height:1.84;color:var(--c-ink);font-family:var(--font-sans);view-transition-name:blog-content;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.blog-content>*:first-child{margin-top:0}.blog-content>p:first-of-type{font-size:1.07em;line-height:1.78;color:var(--c-ink-2)}.blog-content p{margin:0 0 1.4em}.blog-content h1,.blog-content h2,.blog-content h3,.blog-content h4{font-family:var(--font-serif);font-weight:800;line-height:1.2;margin:2.5em 0 .65em;color:var(--c-ink);letter-spacing:-.015em}.blog-content h2{font-size:1.42rem;padding-top:.75em;border-top:1px solid var(--c-border)}.blog-content>h2:first-child,.blog-content>h1:first-child{border-top:none;padding-top:0;margin-top:0}.blog-content h3{font-size:1.15rem}.blog-content h4{font-size:.97rem;color:var(--c-ink-2);font-weight:700;letter-spacing:0}.blog-content ul,.blog-content ol{margin:.4em 0 1.25em;padding-left:1.6em}.blog-content li{margin-bottom:.4em}.blog-content li::marker{color:var(--c-ink-3)}.blog-content code{font-family:var(--font-mono);font-size:.85em;background:color-mix(in srgb,var(--c-accent) 7%,var(--c-paper));color:var(--c-accent-dk);padding:.15em .45em;border-radius:4px;border:1px solid color-mix(in srgb,var(--c-accent) 15%,var(--c-border))}.blog-content pre{background:#0f1117;color:#c9d1d9;border-radius:10px;padding:42px 18px 16px;overflow-x:auto;margin:1.2em 0 1.6em;font-size:.83rem;line-height:1.6;white-space:pre;word-break:normal;position:relative;box-shadow:0 2px 12px #0000002e}.blog-content pre code{background:none;padding:0;border:none;color:inherit;font-size:inherit}.blog-code-toolbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.blog-code-lang{font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#fff6}.blog-code-copy{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:5px;color:#ffffff8c;cursor:pointer;font-size:.7rem;font-weight:500;padding:2px 9px;transition:background .15s,color .15s;font-family:var(--font-sans)}.blog-code-copy:hover{background:#ffffff29;color:#fff}.blog-code-copy--done{color:#6ee7b7;border-color:#6ee7b7;background:#6ee7b71a}.blog-content blockquote{border-left:4px solid var(--c-accent);margin:2.2em 0;padding:20px 28px 20px 32px;background:none;border-radius:0;color:var(--c-ink-2);font-style:italic;font-size:1.09em;line-height:1.72;position:relative}.blog-content blockquote:before{content:"“";position:absolute;top:-6px;left:6px;font-size:5rem;line-height:1;color:var(--c-accent);opacity:.18;font-family:Georgia,Times New Roman,serif;pointer-events:none;-webkit-user-select:none;user-select:none}.blog-content blockquote p{margin-bottom:0}.blog-content hr{border:none;margin:3.5em auto;display:flex;align-items:center;justify-content:center;overflow:visible;background:none;text-align:center;height:1px}.blog-content hr:after{content:"· · ·";display:inline;font-size:1.2rem;letter-spacing:.55em;color:var(--c-ink-3);background:var(--c-paper);padding:0 .4em}.blog-content strong,.blog-content b{font-weight:700;color:var(--c-ink)}.blog-content img{max-width:100%;height:auto;border-radius:8px;margin:.5em 0;display:block}.blog-content video{max-width:100%;height:auto;display:block;border-radius:10px;margin:1.6em auto;border:1px solid var(--c-border);box-shadow:0 2px 16px #0000001a;background:#000}.blog-img-wrap{display:block;margin:2.2em auto;text-align:center}.blog-img-wrap img{margin:0 auto;box-shadow:0 4px 24px #0000001f;border:1px solid var(--c-border);border-radius:10px}.blog-img-caption{display:block;font-size:.77rem;color:var(--c-ink-3);margin-top:10px;font-style:italic;text-align:center;line-height:1.5}@media (min-width: 800px){.blog-img-wrap{margin-left:-20px;margin-right:-20px}}.blog-content figure{margin:1.6em 0;text-align:center}.blog-content figcaption{font-size:.78rem;color:var(--c-ink-3);margin-top:8px;font-style:italic}.blog-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.4em 0 1.8em;border-radius:8px;box-shadow:0 0 0 1px var(--c-border)}.blog-content table{width:100%;border-collapse:collapse;font-size:.88rem;border-radius:8px;overflow:hidden;margin:0;box-shadow:none}.blog-content th,.blog-content td{border-bottom:1px solid var(--c-border);padding:9px 14px;text-align:left}.blog-content th{background:var(--c-paper);font-weight:700;font-size:.8rem;letter-spacing:.03em;text-transform:uppercase;color:var(--c-ink-2)}.blog-content tr:last-child td{border-bottom:none}.blog-content a{color:var(--c-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--c-accent) 40%,transparent);transition:text-decoration-color .15s}.blog-content a:hover{color:var(--c-accent-dk);text-decoration-color:var(--c-accent-dk)}.blog-ext-icon{font-size:.7em;vertical-align:super;margin-left:2px;opacity:.6}.blog-numbered-item{display:flex;gap:14px;align-items:flex-start;margin:12px 0;padding:14px 16px;background:var(--c-paper);border:1px solid var(--c-border);border-radius:10px}.blog-numbered-item__num{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--c-accent);color:#fff;font-size:.78rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}.blog-numbered-item__body{flex:1;font-size:.95rem;line-height:1.6;color:var(--c-ink)}.blog-scroll-top{position:fixed;bottom:88px;right:28px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--c-surface);color:var(--c-ink-2);border:1px solid var(--c-border);border-radius:50%;cursor:pointer;box-shadow:0 2px 12px #0000001f;transition:opacity .22s ease,transform .22s ease,background var(--transition);z-index:200;opacity:0;pointer-events:none;transform:translateY(8px)}.blog-scroll-top--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.blog-scroll-top:hover{background:var(--c-paper);color:var(--c-ink)}@media (max-width: 640px){.blog-scroll-top{right:12px;bottom:70px}}@keyframes blogShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes blogFadeSlideIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes blogArticleFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes blogNewPulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--c-accent) 40%,transparent)}50%{box-shadow:0 0 0 4px transparent}}.blog-feed-skeleton{padding:0 8px 8px;display:flex;flex-direction:column;gap:4px}.blog-feed-skeleton__row{height:58px;border-radius:6px;background:linear-gradient(90deg,var(--c-border) 25%,var(--c-paper) 50%,var(--c-border) 75%);background-size:200% 100%;animation:blogShimmer 1.5s ease-in-out infinite}.blog-feed-skeleton__row:nth-child(2){animation-delay:.08s}.blog-feed-skeleton__row:nth-child(3){animation-delay:.16s}.blog-feed-skeleton__row:nth-child(4){animation-delay:.24s}.blog-feed-skeleton__row:nth-child(5){animation-delay:.32s}.blog-feed-item-row{animation:blogFadeSlideIn .22s ease-out both;animation-delay:calc(var(--item-idx, 0) * 28ms)}@media (prefers-reduced-motion: reduce){.blog-feed-item-row{animation:none}}.blog-feed-item__rt{font-size:.6rem;font-weight:500;color:var(--c-ink-3);white-space:nowrap;flex-shrink:0;margin-left:auto;letter-spacing:.01em}.blog-source-btn__favicon{width:16px;height:16px;border-radius:3px;object-fit:contain;flex-shrink:0}.blog-source-btn--has-favicon .blog-source-btn__abbr{display:none}.blog-source-btn__unread{margin-left:auto;flex-shrink:0;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--c-accent);color:#fff;font-size:.58rem;font-weight:700;line-height:16px;text-align:center;letter-spacing:-.01em}.blog-source-btn--active .blog-source-btn__unread{background:var(--c-accent-dk)}.blog-feed-item__new{animation:blogNewPulse 1.8s ease-in-out 2}@media (prefers-reduced-motion: reduce){.blog-feed-item__new{animation:none}}.blog-post-view__body{animation:blogArticleFadeIn .35s ease-out both}@media (prefers-reduced-motion: reduce){.blog-post-view__body{animation:none}}.blog-post-view__progress-bar{height:2px;border-radius:1px;background:var(--c-border);overflow:hidden;margin-top:14px}.blog-post-view__progress-bar-fill{height:100%;border-radius:1px;background:var(--c-accent);transition:width .15s linear;transform-origin:left}.blog-post-view__placeholder-hint{display:inline-flex;align-items:center;gap:5px;margin-top:14px;padding:6px 12px;border-radius:20px;background:var(--c-accent-lt);color:var(--c-accent-dk);font-size:.75rem;font-weight:500}.blog-feed-error{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 16px;text-align:center}.blog-feed-error__icon{font-size:1.5rem;opacity:.5}.blog-feed-error__msg{font-size:.75rem;color:var(--c-red)}.blog-feed-error__retry{margin-top:2px;padding:5px 14px;border:1px solid var(--c-accent);border-radius:var(--radius);background:var(--c-accent-lt);color:var(--c-accent-dk);font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.blog-feed-error__retry:hover{background:var(--c-accent);color:#fff}.blog-source-quality{display:inline-flex;align-items:center;gap:3px;font-size:.68rem;font-weight:600;padding:2px 6px;border-radius:4px;flex-shrink:0}.blog-source-quality--high{background:var(--c-green-lt);color:var(--c-green)}.blog-source-quality--med{background:var(--c-gold-lt);color:var(--c-gold)}.blog-source-quality--low{background:var(--c-border);color:var(--c-ink-3)}.blog-tutor-fab{display:flex;align-items:center;gap:7px;background:var(--c-accent);color:#fff;border:none;border-radius:24px;padding:10px 18px;font-size:.84rem;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #4f46e559;transition:transform var(--transition),box-shadow var(--transition)}.blog-tutor-fab:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4f46e573}.blog-link-overlay__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:500;padding:20px;animation:fadeIn .15s ease}.blog-link-overlay{display:flex;flex-direction:column;width:100%;max-width:960px;height:min(80dvh,720px);background:var(--c-surface);border:1px solid var(--c-border);border-radius:calc(var(--radius) * 2);box-shadow:0 16px 48px #00000038;overflow:hidden;animation:modal-in .18s cubic-bezier(.2,.8,.4,1) both}.blog-link-overlay__bar{display:flex;align-items:center;gap:10px;padding:0 12px 0 14px;height:44px;flex-shrink:0;background:var(--c-paper);border-bottom:1px solid var(--c-border)}.blog-link-overlay__url{display:flex;align-items:center;gap:6px;flex:1;font-size:.8rem;color:var(--c-ink-3);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.blog-link-overlay__actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.blog-link-overlay__open-btn{display:flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:var(--radius);border:1px solid var(--c-border-2);font-size:.78rem;font-weight:500;color:var(--c-ink-2);background:var(--c-surface);white-space:nowrap;text-decoration:none;cursor:pointer;transition:background var(--transition),border-color var(--transition)}.blog-link-overlay__open-btn:hover{background:var(--c-paper);border-color:var(--c-border)}.blog-link-overlay__open-btn--accent{background:var(--c-accent);color:#fff;border-color:var(--c-accent);padding:0 16px;height:36px;font-size:.85rem}.blog-link-overlay__open-btn--accent:hover{opacity:.88}.blog-link-overlay__close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius);color:var(--c-ink-3);transition:background var(--transition),color var(--transition)}.blog-link-overlay__close:hover{background:var(--c-paper);color:var(--c-ink)}.blog-link-overlay__body{flex:1;position:relative;overflow:hidden}.blog-link-overlay__iframe{width:100%;height:100%;border:none;display:block}.blog-link-overlay__iframe--hidden{display:none}.blog-link-overlay__spinner-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--c-ink-3);font-size:.88rem}.blog-link-overlay__spinner{width:28px;height:28px;border:3px solid var(--c-border);border-top-color:var(--c-accent);border-radius:50%;animation:spin .7s linear infinite}.blog-link-overlay__blocked{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--c-ink-3);font-size:.9rem}.blog-link-overlay__blocked p{margin:0}@media (max-width: 640px){.blog-link-overlay__backdrop{padding:0}.blog-link-overlay{max-width:100%;height:100dvh;border-radius:0}.blog-link-overlay__open-btn span{display:none}}.blog-panel-toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:none;background:none;color:var(--c-ink-2);border-radius:var(--radius);cursor:pointer;transition:background var(--transition),color var(--transition)}.blog-panel-toggle:hover{background:var(--c-paper);color:var(--c-ink)}.blog-load-error{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:48px 24px;color:var(--c-ink-3)}.blog-load-error svg{opacity:.5;color:#e6a817}.blog-load-error__msg{font-size:.9rem;line-height:1.6;max-width:440px;color:var(--c-ink-2);margin:0}.blog-load-error__link{font-size:.85rem;color:var(--c-accent);text-decoration:none;border:1px solid var(--c-accent);border-radius:6px;padding:6px 14px;transition:background .15s}.blog-load-error__link:hover{background:var(--c-accent-lt)}.blog-font-ctrl{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--c-border);border-radius:6px;overflow:hidden}.blog-font-ctrl__btn{background:none;border:none;padding:2px 7px;font-size:.78rem;font-weight:700;color:var(--c-ink-2);cursor:pointer;line-height:1.5;transition:background .12s,color .12s;font-family:var(--font-sans)}.blog-font-ctrl__btn:hover:not(:disabled){background:var(--c-paper);color:var(--c-ink)}.blog-font-ctrl__btn:disabled{opacity:.3;cursor:default}.blog-toc{display:none;position:sticky;top:24px;max-height:calc(100dvh - var(--topbar-h) - 48px);overflow-y:auto;width:220px;flex-shrink:0;padding:0 0 24px;scrollbar-width:thin;scrollbar-color:var(--c-border) transparent}.blog-toc__title{display:block;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-ink-3);padding:0 0 10px;margin-bottom:4px;border-bottom:1px solid var(--c-border)}.blog-toc__list{list-style:none;margin:0;padding:0}.blog-toc__item{margin:0}.blog-toc__item--h3 .blog-toc__link{padding-left:16px}.blog-toc__link{display:block;width:100%;background:none;border:none;border-left:2px solid transparent;padding:4px 8px;font-size:.78rem;line-height:1.4;color:var(--c-ink-3);cursor:pointer;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s,border-color .15s,background .15s;border-radius:0 4px 4px 0}.blog-toc__link:hover{color:var(--c-ink);background:color-mix(in srgb,var(--c-accent) 6%,transparent)}.blog-toc__link--active{color:var(--c-accent);border-left-color:var(--c-accent);font-weight:600;background:color-mix(in srgb,var(--c-accent) 8%,transparent)}@keyframes blog-slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes blog-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}::view-transition-old(blog-content){animation:.2s ease both blog-slide-out}::view-transition-new(blog-content){animation:.28s ease both blog-slide-in}.blog-panel-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:99;animation:fadeIn .18s ease both}@media (max-width: 768px){.blog-panel-backdrop{display:block}}.blog-post-view__title{font-size:clamp(1.3rem,3.5vw,1.85rem)}@media (min-width: 1280px){.blog-reader-main{display:flex;align-items:flex-start;gap:0}.blog-reader-main__inner{flex:1;min-width:0}.blog-toc{display:block;position:sticky;top:32px;margin-top:48px;margin-right:36px;flex-shrink:0}}@media (max-width: 768px){.blog-panel-toggle{display:flex}.blog-reader-layout{grid-template-columns:56px 1fr}.blog-reader-header,.blog-reader-main{grid-column:2 / -1}.blog-wp-panel{display:flex;position:fixed;top:0;left:56px;bottom:0;width:min(300px,calc(100vw - 56px));z-index:100;transform:translate(calc(-100% - 56px));transition:transform .22s ease,box-shadow .22s ease;box-shadow:none;border-right:none}.blog-wp-panel--open{transform:translate(0);box-shadow:4px 0 24px #0000002e}.blog-reader-main__inner{padding:28px 24px 88px}.blog-reader-header .page-header__email,.blog-btn-label{display:none}.blog-feed-item{padding:10px;min-height:52px}.blog-source-btn{padding:7px 8px;min-height:40px}.blog-pager__btn{padding:4px 8px;min-height:32px;min-width:32px}}@media (max-width: 640px){.blog-reader-layout{grid-template-columns:44px 1fr}.blog-reader-header,.blog-reader-main{grid-column:2 / -1}.blog-wp-panel{left:44px;width:min(300px,calc(100vw - 44px));transform:translate(calc(-100% - 44px))}.blog-reader-main__inner{padding:20px 16px 100px}.blog-wp-panel__source-grid{display:grid;grid-template-columns:1fr 1fr}.blog-font-ctrl{order:10;flex-basis:100%}.blog-post-view__reading-time{display:none}.blog-tutor-fab,.blog-insight-fab{padding:8px 14px}.blog-tutor-fab span,.blog-insight-fab span{display:none}.blog-read-progress{top:var(--topbar-h)}.add-modal__input{font-size:16px}}@media (max-width: 480px){.blog-reader-layout{grid-template-columns:44px 1fr}.blog-reader-header{grid-column:2 / -1;padding:0 10px;gap:6px}.blog-reader-main{grid-column:2 / -1}.blog-wp-panel{left:44px;width:min(320px,calc(94vw - 44px));transform:translate(calc(-100% - 44px))}.blog-wp-panel--open{transform:translate(0)}.blog-post-view__header{margin-bottom:24px;padding-bottom:16px}.blog-post-view__meta{gap:4px 8px;font-size:.72rem}.blog-reader-main__inner{padding:16px 14px 100px}.blog-content{font-size:var(--blog-font-size, 1.0625rem)}.blog-font-ctrl{display:none}}.insight-panel{position:fixed;top:0;right:0;bottom:0;width:var(--panel-w);max-width:100vw;background:var(--c-surface);border-left:1px solid var(--c-border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:200;transform:translate(100%);transition:transform var(--transition)}.insight-panel--open{transform:translate(0)}.insight-panel__header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:52px;border-bottom:1px solid var(--c-border);flex-shrink:0}.insight-panel__heading{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--c-gold);letter-spacing:.02em;text-transform:uppercase}.insight-panel__close{background:none;border:none;cursor:pointer;color:var(--c-ink-3);padding:6px;border-radius:var(--radius);display:flex;align-items:center;transition:background var(--transition)}.insight-panel__close:hover{background:var(--c-accent-lt);color:var(--c-accent)}.insight-panel__body{flex:1;min-height:0;overflow-y:auto;padding:20px 18px}.insight-panel__empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 16px;gap:16px}@keyframes insight-empty-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.insight-panel__empty-icon{color:var(--c-gold);opacity:.7;animation:insight-empty-float 3.5s ease-in-out infinite}.insight-panel__empty-desc{font-size:.88rem;color:var(--c-ink-2);line-height:1.6;max-width:300px}.insight-panel__error{color:var(--c-red);font-size:.84rem;background:var(--c-red-lt);border-radius:var(--radius);padding:8px 12px}.insight-panel__generate-btn{display:inline-flex;align-items:center;gap:8px;background:var(--c-gold);color:#fff;border:none;border-radius:var(--radius);padding:10px 20px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background var(--transition),opacity var(--transition);text-decoration:none}.insight-panel__generate-btn:hover{background:var(--c-gold);opacity:.85}.insight-panel__generate-btn:disabled{opacity:.5;cursor:not-allowed}.insight-panel__loading-wrap{display:flex;flex-direction:column;gap:10px}.insight-panel__loading-status{font-size:.88rem;color:var(--c-ink-3);margin-bottom:6px}.insight-panel__stream-indicator{display:inline-flex;align-items:center;gap:5px;color:var(--c-gold);font-weight:500}.insight-stream-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--c-gold);animation:insight-dot-bounce 1.2s ease-in-out infinite}.insight-stream-dot:nth-child(2){animation-delay:.2s}.insight-stream-dot:nth-child(3){animation-delay:.4s}@keyframes insight-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}.insight-skeletons{display:flex;flex-direction:column;gap:10px}.insight-skeleton{border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--c-border) 0%,var(--c-surface) 50%,var(--c-border) 100%);background-size:200% 100%;animation:insight-shimmer 1.5s ease-in-out infinite}@keyframes insight-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.insight-panel__loading-hint{font-size:.8rem;color:var(--c-ink-3)}.insight-panel__content{display:flex;flex-direction:column;gap:12px}@keyframes insight-section-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.insight-section{background:var(--c-paper);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:14px 16px;animation:insight-section-enter .35s ease-out both}.insight-section--green{border-left:3px solid var(--c-green)}.insight-section--red{border-left:3px solid var(--c-red)}.insight-section--warning{border-left:3px solid var(--c-gold)}.insight-section__title{display:flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--c-ink-3);margin:0 0 10px}.insight-section__icon{font-size:.82rem;line-height:1}.insight-section__text{font-size:.875rem;line-height:1.65;color:var(--c-ink-2);margin:0}.insight-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.insight-list li{font-size:.875rem;line-height:1.55;color:var(--c-ink-2)}.insight-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px;animation:insight-section-enter .35s ease-out both}.insight-tradeoffs{display:flex;flex-direction:column;gap:8px}.insight-tradeoff-pill{border-radius:var(--radius);padding:8px 12px;display:flex;flex-direction:column;gap:2px}.insight-tradeoff-pill--blue{background:#eff6ff;border-left:3px solid #3b82f6}.insight-tradeoff-pill--amber{background:#fffbeb;border-left:3px solid #f59e0b}.insight-tradeoff-pill--purple{background:#f5f3ff;border-left:3px solid #8b5cf6}.dark .insight-tradeoff-pill--blue{background:#3b82f614}.dark .insight-tradeoff-pill--amber{background:#f59e0b14}.dark .insight-tradeoff-pill--purple{background:#8b5cf614}.insight-tradeoff-pill__label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-3)}.insight-tradeoff-pill__value{font-size:.85rem;color:var(--c-ink-2);line-height:1.5}@keyframes insight-ready-pulse{0%,to{box-shadow:0 0 #22c55e80}50%{box-shadow:0 0 0 4px #22c55e00}}.insight-ready-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--c-green);flex-shrink:0;animation:insight-ready-pulse 2s ease-in-out infinite}.insight-panel__actions{display:flex;align-items:center;gap:8px;padding-top:4px;flex-wrap:wrap}.insight-panel__regen-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--c-border-2);border-radius:var(--radius);padding:7px 14px;font-size:.84rem;color:var(--c-ink-2);cursor:pointer;transition:border-color var(--transition),color var(--transition)}.insight-panel__regen-btn:hover{border-color:var(--c-accent);color:var(--c-accent)}.insight-panel__regen-btn:disabled{opacity:.5;cursor:not-allowed}.insight-panel__save-btn{background:var(--c-accent);color:#fff;border:none;border-radius:var(--radius);padding:7px 16px;font-size:.84rem;font-weight:600;cursor:pointer;transition:background var(--transition)}.insight-panel__save-btn:hover{background:var(--c-accent-dk)}.insight-panel__save-btn:disabled{opacity:.6;cursor:not-allowed}.insight-panel__saved-btn{display:inline-flex;align-items:center;gap:6px;background:var(--c-green-lt);color:var(--c-green);border:none;border-radius:var(--radius);padding:7px 16px;font-size:.84rem;font-weight:600;cursor:pointer;transition:background var(--transition)}.insight-panel__saved-btn:hover{background:#bbf7d0}.insight-panel__feedback{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.insight-panel__feedback-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:var(--c-paper);border:1px solid var(--c-border-2);border-radius:20px;font-size:.78rem;font-weight:500;color:var(--c-ink-2);cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition),transform 80ms ease}.insight-panel__feedback-btn:hover{border-color:var(--c-ink-2);color:var(--c-ink);transform:translateY(-1px)}.insight-panel__feedback-btn--up.insight-panel__feedback-btn--active,.insight-panel__feedback-btn--up.insight-panel__feedback-btn--active:hover{background:var(--c-green-lt);border-color:var(--c-green);color:var(--c-green);transform:none}.insight-panel__feedback-btn--down.insight-panel__feedback-btn--active,.insight-panel__feedback-btn--down.insight-panel__feedback-btn--active:hover{background:var(--c-red-lt);border-color:var(--c-red);color:var(--c-red);transform:none}.blog-fab-group{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:150}.blog-insight-fab{display:flex;align-items:center;gap:8px;background:var(--c-gold);color:#fff;border:none;border-radius:24px;padding:10px 18px;font-size:.88rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow-md);transition:background var(--transition),transform var(--transition)}.blog-insight-fab:hover{background:var(--c-gold);opacity:.85;transform:translateY(-1px)}@keyframes insight-fab-pulse{0%{box-shadow:var(--shadow-md),0 0 #f59e0b66}70%{box-shadow:var(--shadow-md),0 0 0 8px #f59e0b00}to{box-shadow:var(--shadow-md),0 0 #f59e0b00}}.blog-insight-fab--ready{animation:insight-fab-pulse 2.5s ease-out infinite}.top-bar__insight-btn{display:flex;align-items:center;gap:6px;background:var(--c-gold-lt);color:var(--c-gold);border:1px solid currentColor;border-radius:var(--radius);padding:6px 12px;font-size:.84rem;font-weight:600;cursor:pointer;transition:background var(--transition)}.top-bar__insight-btn:hover{background:#fde68a}.top-bar__insight-btn--ready{background:var(--c-gold);color:#fff;border-color:var(--c-gold)}.top-bar__insight-btn--ready:hover{background:var(--c-gold);opacity:.88}.top-bar__insight-btn--disabled{opacity:.45;cursor:default}.insight-cards-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.insight-card{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:16px 20px;box-shadow:var(--shadow-sm);cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition)}.insight-card:hover{border-color:var(--c-border-2);box-shadow:var(--shadow-md)}.insight-card--expanded{cursor:default;border-color:var(--c-gold);box-shadow:var(--shadow-md)}.insight-card--expanded:hover{border-color:var(--c-gold)}.insight-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.insight-card__meta{flex:1;min-width:0}.insight-card__title{font-size:.94rem;font-weight:600;color:var(--c-ink);margin:0 0 3px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insight-card--expanded .insight-card__title{white-space:normal;overflow:visible}.insight-card__sub{display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--c-ink-3)}.insight-card__date{font-variant-numeric:tabular-nums}.insight-card__source{color:var(--c-accent);text-decoration:none;font-size:.78rem}.insight-card__source:hover{text-decoration:underline}.insight-card__actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.insight-card__collapse-btn{background:none;border:1px solid var(--c-border);border-radius:var(--radius);padding:4px 6px;color:var(--c-ink-3);cursor:pointer;display:flex;align-items:center;transition:border-color var(--transition),color var(--transition)}.insight-card__collapse-btn:hover{border-color:var(--c-accent);color:var(--c-accent)}.insight-card__delete-btn{background:none;border:1px solid transparent;border-radius:var(--radius);padding:5px 6px;color:var(--c-ink-3);cursor:pointer;display:flex;align-items:center;transition:color var(--transition),background var(--transition)}.insight-card__delete-btn:hover{color:var(--c-red);background:var(--c-red-lt)}.insight-card__tldr{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:4px}.insight-card__tldr li{font-size:.855rem;line-height:1.5;color:var(--c-ink-2)}.insight-card__tldr-more{list-style:none;font-size:.8rem;color:var(--c-accent);margin-top:2px}.insight-card__expanded{margin-top:14px;padding-top:14px;border-top:1px solid var(--c-border);display:flex;flex-direction:column;gap:0}.insight-card__tab-bar{display:flex;border-bottom:1px solid var(--c-border);margin-bottom:14px}.insight-card__tab{display:flex;align-items:center;gap:5px;padding:6px 14px;font-size:.78rem;font-weight:500;color:var(--c-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--transition),border-color var(--transition)}.insight-card__tab:hover:not(:disabled){color:var(--c-ink)}.insight-card__tab--active{color:var(--c-indigo, #6366f1);border-bottom-color:var(--c-indigo, #6366f1);font-weight:600}.insight-card__tab--disabled{opacity:.4;cursor:default}.insight-card__tab-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--c-indigo, #6366f1);flex-shrink:0}.insight-row{display:flex;flex-direction:column;gap:5px}.insight-row--green{border-left:3px solid var(--c-green);padding-left:10px}.insight-row--red{border-left:3px solid var(--c-red);padding-left:10px}.insight-row--warning{border-left:3px solid var(--c-gold);padding-left:10px}.insight-row__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-3);margin:0}.insight-row p{font-size:.855rem;line-height:1.55;color:var(--c-ink-2);margin:0}.insight-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;list-style:none;padding:0;margin:12px 0 0}.insight-grid-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);outline:none}.insight-grid-card:hover,.insight-grid-card:focus-visible{border-color:var(--c-gold);box-shadow:var(--shadow-md);transform:translateY(-1px)}.insight-grid-card__top{display:flex;justify-content:space-between;align-items:center}.insight-grid-card__date{font-size:.73rem;color:var(--c-ink-3);font-variant-numeric:tabular-nums}.insight-grid-card__title{font-family:var(--font-serif);font-size:.9rem;font-weight:600;color:var(--c-ink);line-height:1.35;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.insight-grid-card__innovation{font-size:.78rem;color:var(--c-ink-2);line-height:1.45;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.insight-grid-card__tldr{list-style:disc;padding-left:16px;margin:0;display:flex;flex-direction:column;gap:3px}.insight-grid-card__tldr li{font-size:.75rem;color:var(--c-ink-3);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.insight-grid-card__read-more{margin-top:auto;font-size:.72rem;color:var(--c-accent);font-weight:500}.insight-overlay__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:300;display:flex;align-items:center;justify-content:center;padding:24px}.insight-overlay{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:680px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.insight-overlay__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 14px;border-bottom:1px solid var(--c-border);flex-shrink:0}.insight-overlay__title-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}.insight-overlay__title{font-family:var(--font-serif);font-size:1.05rem;font-weight:600;color:var(--c-ink);margin:0;line-height:1.35}.insight-overlay__actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.insight-overlay__delete{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:none;cursor:pointer;border-radius:var(--radius);color:var(--c-ink-3);transition:color var(--transition),background var(--transition)}.insight-overlay__delete:hover{color:var(--c-red);background:var(--c-red-lt)}.insight-overlay__close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:none;cursor:pointer;border-radius:var(--radius);color:var(--c-ink-3);transition:color var(--transition),background var(--transition)}.insight-overlay__close:hover{color:var(--c-ink);background:var(--c-accent-lt)}.insight-overlay__body{flex:1;min-height:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px}.insight-overlay__footer{display:flex;align-items:center;gap:6px;padding:12px 20px;border-top:1px solid var(--c-border);font-size:.75rem;color:var(--c-ink-3);flex-shrink:0}.insight-overlay__version-info{color:var(--c-ink-3)}.insight-overlay__title-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:2px}.insight-version-tabs{display:flex;align-items:center;gap:3px}.insight-version-tab{padding:2px 7px;font-size:.7rem;font-weight:500;border:1px solid var(--c-border-2);border-radius:4px;background:transparent;color:var(--c-ink-3);cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition);line-height:1.5}.insight-version-tab:hover{border-color:var(--c-gold);color:var(--c-gold)}.insight-version-tab--active{border-color:var(--c-gold);background:var(--c-gold-lt);color:var(--c-gold)}.insight-version-badge{font-size:.68rem;font-weight:600;color:var(--c-gold);background:var(--c-gold-lt);border:1px solid #fcd34d;border-radius:4px;padding:1px 6px;line-height:1.5;white-space:nowrap}.insight-panel__cache-badge{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--c-green);background:var(--c-green-lt);border:1px solid currentColor;border-radius:10px;padding:1px 6px;margin-left:4px}.insight-deep-dive-badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--c-indigo, #6366f1);background:color-mix(in srgb,var(--c-indigo, #6366f1) 10%,transparent);border:1px solid color-mix(in srgb,var(--c-indigo, #6366f1) 30%,transparent);border-radius:4px;padding:1px 6px;white-space:nowrap;line-height:1.5}.insight-deep-dive-badge--btn{cursor:pointer;transition:background var(--transition),color var(--transition)}.insight-deep-dive-badge--btn:hover{background:color-mix(in srgb,var(--c-indigo, #6366f1) 20%,transparent)}.insight-card__deep-dive-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;padding:6px 12px;font-size:.78rem;font-weight:500;color:var(--c-indigo, #6366f1);background:color-mix(in srgb,var(--c-indigo, #6366f1) 8%,transparent);border:1px solid color-mix(in srgb,var(--c-indigo, #6366f1) 25%,transparent);border-radius:6px;cursor:pointer;transition:background var(--transition)}.insight-card__deep-dive-link:hover{background:color-mix(in srgb,var(--c-indigo, #6366f1) 16%,transparent)}.insight-overlay__tab-bar{display:flex;border-bottom:1px solid var(--c-border);padding:0 20px;background:var(--c-paper);flex-shrink:0}.insight-overlay__tab{flex:0 0 auto;padding:9px 16px;font-size:.8rem;font-weight:500;color:var(--c-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--transition),border-color var(--transition)}.insight-overlay__tab:hover{color:var(--c-ink)}.insight-overlay__tab--active{color:var(--c-indigo, #6366f1);border-bottom-color:var(--c-indigo, #6366f1);font-weight:600}.insight-overlay__tab-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--c-indigo, #6366f1);margin-left:5px;vertical-align:middle;margin-bottom:1px}.insight-overlay__no-deep-dive{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;text-align:center;color:var(--c-muted)}.insight-overlay__no-deep-dive p{font-size:.9rem;font-weight:600;color:var(--c-ink);margin:0}.insight-overlay__no-deep-dive span{font-size:.8rem;max-width:280px;line-height:1.5}.insight-panel__version-badge{font-size:.68rem;font-weight:600;color:var(--c-gold);background:var(--c-gold-lt);border:1px solid #fcd34d;border-radius:4px;padding:1px 6px;line-height:1.5;margin-left:6px}.insight-card--versioned,.insight-grid-card--versioned{isolation:isolate}.insight-card--versioned:before{content:"";position:absolute;top:5px;left:5px;right:-5px;bottom:-5px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);z-index:-1}.insight-grid-card--versioned:before{content:"";position:absolute;top:5px;left:5px;right:-5px;bottom:-5px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);z-index:-1}.insight-grid-card--versioned:after{content:"";position:absolute;top:10px;left:10px;right:-10px;bottom:-10px;background:var(--c-paper);border:1px solid var(--c-border);border-radius:var(--radius-lg);z-index:-2}@media (max-width: 768px){.insight-panel{width:100vw}.insight-two-col{grid-template-columns:1fr}.blog-fab-group{bottom:16px;right:16px}.insight-grid{grid-template-columns:1fr 1fr}.insight-overlay__backdrop{padding:12px}}@media (max-width: 480px){.insight-grid{grid-template-columns:1fr}.insight-overlay{max-height:94vh}}@keyframes dd-spin{to{transform:rotate(360deg)}}.insight-panel__tab-bar{display:flex;border-bottom:1px solid var(--c-border);background:var(--c-paper);flex-shrink:0}.insight-panel__tab{display:flex;align-items:center;gap:6px;flex:1;padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;font-size:.82rem;font-weight:500;color:var(--c-ink-3);cursor:pointer;justify-content:center;transition:color var(--transition),border-color var(--transition),background var(--transition);margin-bottom:-1px;white-space:nowrap}.insight-panel__tab:hover:not(:disabled){color:var(--c-ink);background:#00000008}.insight-panel__tab--active{color:#4338ca;border-bottom-color:#6366f1;font-weight:600}.insight-panel__tab--locked{opacity:.5;cursor:default}.insight-panel__tab-hint{font-size:.75rem;color:var(--c-ink-3);padding:6px 16px 5px;background:var(--c-paper, #f9fafb);border-bottom:1px solid var(--c-border, #e5e7eb);margin:0;line-height:1.4}.insight-panel__dd-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:10px 16px;font-size:.82rem;font-weight:600;color:var(--c-indigo, #6366f1);background:color-mix(in srgb,var(--c-indigo, #6366f1) 7%,transparent);border:1.5px solid color-mix(in srgb,var(--c-indigo, #6366f1) 22%,transparent);border-radius:8px;cursor:pointer;transition:background var(--transition),border-color var(--transition);margin-bottom:16px}.insight-panel__dd-btn:hover{background:color-mix(in srgb,var(--c-indigo, #6366f1) 13%,transparent);border-color:var(--c-indigo, #6366f1)}.ddp{margin-top:14px;border:1px solid #c7d2fe;border-radius:var(--radius-lg);background:var(--c-surface);flex-shrink:0}.ddp__progress{height:3px;background:#e8eaff;position:relative}.ddp__progress:after{content:"";position:absolute;left:0;top:0;height:100%;width:var(--ddp-w, 0%);background:linear-gradient(90deg,#6366f1,#a78bfa 60%,#c4b5fd);transition:width .7s ease;border-radius:0 2px 2px 0}.ddp__progress--done{animation:ddp-progress-fade .8s .5s forwards}@keyframes ddp-progress-fade{to{opacity:0}}.ddp__header{display:flex;align-items:center;justify-content:space-between;padding:11px 16px 10px;border-bottom:1px solid #e8eaff;background:#fafafe}.ddp__header-label{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#4338ca}.ddp__header-actions{display:flex;align-items:center;gap:4px}.ddp__save-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:500;color:#4f46e5;background:#eef2ff;border:1px solid #c7d2fe;border-radius:var(--radius);cursor:pointer;transition:background var(--transition),color var(--transition)}.ddp__save-btn:hover{background:#e0e7ff;color:#3730a3}.ddp__save-btn--saved{color:#059669;background:#ecfdf5;border-color:#6ee7b7}.ddp__save-btn--saved:hover{background:#d1fae5}.ddp__copy-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:500;color:#6366f1;background:#eef2ff;border:1px solid #c7d2fe;border-radius:var(--radius);cursor:pointer;transition:background var(--transition),color var(--transition)}.ddp__copy-btn:hover{background:#e0e7ff;color:#3730a3}.ddp__refresh-btn{display:flex;align-items:center;gap:5px;height:28px;padding:0 10px 0 8px;color:#a5b4fc;font-size:.78rem;font-weight:500;background:none;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;white-space:nowrap;transition:color var(--transition),background var(--transition),border-color var(--transition)}.ddp__refresh-btn:hover{color:#6366f1;background:#eef2ff;border-color:#c7d2fe}.ddp__body{padding:0}.ddp__loading{padding:16px 18px;display:flex;flex-direction:column;gap:14px}.ddp__loading-phases{display:flex;flex-direction:column;gap:6px}.ddp__phase{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--c-ink-3);transition:color .3s}.ddp__phase--active{color:#6366f1;font-weight:500}.ddp__phase--done{color:var(--c-green)}.ddp__phase-check{color:var(--c-green);flex-shrink:0}.ddp__dot{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.ddp__dot--idle{width:6px;height:6px;border-radius:50%;background:#ddd;margin:0 4px}.ddp__skeletons{display:flex;flex-direction:column;gap:7px}.ddp__content{padding:20px 22px 22px}.ddp__content--done{animation:ddp-content-in .3s ease}@keyframes ddp-content-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes ddp-blink{0%,to{opacity:1}50%{opacity:0}}.ddp__cursor{display:inline-block;color:#6366f1;animation:ddp-blink .85s ease-in-out infinite;margin-left:1px;font-size:.88em;vertical-align:baseline}.ddp-md__h2{font-family:var(--font-serif);font-size:1.02rem;font-weight:600;color:var(--c-ink);margin:26px 0 9px;padding-bottom:6px;border-bottom:2px solid #e8eaff;line-height:1.3}.ddp__content>div>.ddp-md__h2:first-child,.ddp-md__h2:first-child{margin-top:0}.ddp-md__h3{font-size:.9rem;font-weight:700;color:#3730a3;margin:18px 0 6px;letter-spacing:.01em}.ddp-md__p{font-size:.885rem;line-height:1.75;color:var(--c-ink-2);margin:0 0 12px}.ddp-md__p:last-child{margin-bottom:0}.ddp-md__ul,.ddp-md__ol{margin:6px 0 14px;padding-left:20px;display:flex;flex-direction:column;gap:6px}.ddp-md__li{font-size:.875rem;line-height:1.65;color:var(--c-ink-2)}.ddp-md__strong{font-weight:600;color:var(--c-ink)}.ddp-md__quote{margin:14px 0;padding:10px 16px;border-left:3px solid #6366f1;background:#f5f3ff;border-radius:0 var(--radius) var(--radius) 0;font-size:.875rem;line-height:1.65;color:#3730a3;font-style:italic}.arch-diagram{margin:18px 0 22px;padding:20px 16px 16px;background:var(--c-paper, #fafafa);border:1px solid var(--c-border, #e2e8f0);border-radius:10px;overflow-x:auto}.arch-diagram svg{display:block;margin:0 auto}.ddp-mermaid--loading{height:120px;background:linear-gradient(90deg,#f0f4ff 25%,#e8eaff,#f0f4ff 75%);background-size:200% 100%;animation:insight-shimmer 1.4s infinite;border-radius:var(--radius-lg)}.ddp-md__inline-code{font-family:var(--font-mono);font-size:.82em;background:#eef2ff;color:#3730a3;border-radius:3px;padding:1px 5px}.ddp-code-block{margin:10px 0;padding:12px 14px;background:#f0f4ff;border:1px solid #e0e7ff;border-radius:var(--radius);font-family:var(--font-mono);font-size:.78rem;line-height:1.6;color:var(--c-ink-2);overflow-x:auto;white-space:pre}.ddp__error{display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--c-red);background:var(--c-red-lt);border-radius:var(--radius);padding:10px 14px;margin:14px 18px}.ddp__retry-btn{margin-left:auto;font-size:.78rem;font-weight:600;color:var(--c-red);background:none;border:1px solid var(--c-red);border-radius:var(--radius);padding:3px 9px;cursor:pointer}.ddp__retry-btn:hover{background:var(--c-red-lt)}.ddp__content--streaming>*:last-child:after{content:"▋";display:inline;color:#6366f1;animation:ddp-blink .85s ease-in-out infinite;margin-left:1px;font-size:.88em;vertical-align:baseline}@media (prefers-color-scheme: dark){.ddp{border-color:#3730a3;background:var(--c-surface)}.ddp__progress{background:#1e1b4b}.ddp__header{background:#13111f;border-bottom-color:#3730a3}.ddp__header-label{color:#a5b4fc}.ddp__save-btn{color:#a5b4fc;background:#1e1b4b;border-color:#3730a3}.ddp__save-btn:hover{background:#2e2a5e;color:#c7d2fe}.ddp__save-btn--saved{color:#34d399;background:#022c22;border-color:#065f46}.ddp__save-btn--saved:hover{background:#064e3b}.ddp__copy-btn{color:#a5b4fc;background:#1e1b4b;border-color:#3730a3}.ddp__copy-btn:hover{background:#2e2a5e;color:#c7d2fe}.ddp__refresh-btn:hover{color:#a5b4fc;background:#1e1b4b;border-color:#3730a3}.ddp-md__h2{border-bottom-color:#3730a3}.ddp-md__h3{color:#a5b4fc}.ddp-code-block{background:#13111f;border-color:#3730a3}.ddp__content--streaming>*:last-child:after{color:#a5b4fc}}@keyframes wb-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.wb{position:fixed;bottom:24px;right:24px;z-index:500;width:clamp(300px,90vw,360px);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:0;overflow:hidden;animation:wb-in .28s cubic-bezier(.2,.8,.4,1) both}.wb__header{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 0}.wb__greeting{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:500;color:var(--c-ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb__greeting strong{font-weight:700}.wb__emoji{font-size:1.1rem;flex-shrink:0}.wb__close{width:32px;height:32px;flex-shrink:0;color:var(--c-ink-3);border-radius:var(--radius);transition:background var(--transition),color var(--transition)}.wb__close:hover{background:var(--c-paper);color:var(--c-ink)}.wb__tagline{padding:8px 14px 0;font-size:.78rem;color:var(--c-ink-3);line-height:1.4}.wb__features{list-style:none;display:flex;flex-direction:column;gap:0;padding:10px 14px 0}.wb__feature{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px solid var(--c-border)}.wb__feature:last-child{border-bottom:none}.wb__feature-icon{flex-shrink:0;width:28px;height:28px;display:grid;place-items:center;background:var(--c-accent-lt);color:var(--c-accent);border-radius:6px;font-size:.85rem;margin-top:1px}.wb__feature-text{display:flex;flex-direction:column;gap:2px;min-width:0}.wb__feature-title{font-size:.8rem;font-weight:700;color:var(--c-ink);line-height:1.3}.wb__feature-body{font-size:.75rem;color:var(--c-ink-3);line-height:1.45}.wb__actions{display:flex;align-items:center;gap:10px;padding:12px 14px 14px}.wb__cta{flex:1;height:44px;padding:0 16px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.82rem;font-weight:700;letter-spacing:.01em;transition:background var(--transition),transform var(--transition);white-space:nowrap}.wb__cta:hover{background:var(--c-accent-dk)}.wb__cta:active{transform:scale(.98)}.wb__skip{font-size:.78rem;color:var(--c-ink-3);padding:8px 4px;min-height:44px;display:grid;place-items:center;transition:color var(--transition);flex-shrink:0}.wb__skip:hover{color:var(--c-ink)}@media (max-width: 480px){.wb{bottom:0;right:0;left:0;width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:env(safe-area-inset-bottom,0px)}}@media (prefers-color-scheme: dark){.wb{border-color:var(--c-border)}}@keyframes onb-pulse-ring{0%{box-shadow:0 0 color-mix(in srgb,var(--c-accent) 55%,transparent)}70%{box-shadow:0 0 0 8px color-mix(in srgb,var(--c-accent) 0%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--c-accent) 0%,transparent)}}.onb-pulse{animation:onb-pulse-ring 1.4s ease-out infinite!important;border-radius:var(--radius, 6px)!important;position:relative;z-index:1}@keyframes tip-in-below{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes tip-in-above{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.feature-tip{position:fixed;z-index:600;pointer-events:auto}.feature-tip--below{animation:tip-in-below .2s ease both}.feature-tip--above{animation:tip-in-above .2s ease both}.feature-tip__arrow{position:absolute;width:16px;height:10px}.feature-tip--below .feature-tip__arrow{top:-9px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:9px solid var(--c-surface);filter:drop-shadow(0 -1px 0 var(--c-border))}.feature-tip--above .feature-tip__arrow{bottom:-9px;top:auto;border-left:8px solid transparent;border-right:8px solid transparent;border-top:9px solid var(--c-surface);filter:drop-shadow(0 1px 0 var(--c-border))}.feature-tip__inner{background:var(--c-surface);border:1.5px solid var(--c-accent);border-radius:var(--radius-lg);box-shadow:0 4px 20px #00000024;overflow:hidden}.feature-tip__header{display:flex;align-items:center;gap:6px;padding:10px 12px 0}.feature-tip__title{flex:1;font-size:.8rem;font-weight:700;color:var(--c-ink);line-height:1.3}.feature-tip__step{font-size:.7rem;color:var(--c-ink-3);white-space:nowrap;flex-shrink:0}.feature-tip__close{width:28px;height:28px;flex-shrink:0;color:var(--c-ink-3);border-radius:var(--radius);transition:background var(--transition),color var(--transition)}.feature-tip__close:hover{background:var(--c-paper);color:var(--c-ink)}.feature-tip__body{padding:6px 12px 0;font-size:.76rem;color:var(--c-ink-2, var(--c-ink-3));line-height:1.5}.feature-tip__footer{display:flex;justify-content:flex-end;padding:8px 12px 10px}.feature-tip__got-it{height:36px;min-width:72px;padding:0 14px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.78rem;font-weight:700;transition:background var(--transition)}.feature-tip__got-it:hover{background:var(--c-accent-dk)}@media (max-width: 360px){.feature-tip{width:calc(100vw - 24px)!important;left:12px!important}.feature-tip__arrow{display:none}}@keyframes limit-nudge-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.limit-nudge{display:flex;flex-direction:column;gap:8px;margin:8px 10px;padding:12px;background:var(--c-gold-lt);border:1px solid var(--c-gold);border-radius:var(--radius-lg);animation:limit-nudge-in .22s ease both}.limit-nudge__icon{color:var(--c-gold);flex-shrink:0;display:flex;align-self:flex-start}.limit-nudge__body{display:flex;flex-direction:column;gap:3px}.limit-nudge__heading{font-size:.78rem;font-weight:700;color:var(--c-gold);line-height:1.3}.limit-nudge__sub{font-size:.73rem;color:var(--c-ink-2);line-height:1.45}.limit-nudge__actions{display:flex;align-items:center;gap:10px;margin-top:2px}.limit-nudge__cta{flex:1;height:36px;padding:0 12px;background:var(--c-gold);color:#fff;border-radius:var(--radius);font-size:.76rem;font-weight:700;white-space:nowrap;transition:background var(--transition),transform var(--transition);min-height:44px}.limit-nudge__cta:hover{filter:brightness(1.1)}.limit-nudge__cta:active{transform:scale(.98)}.limit-nudge__skip{font-size:.72rem;color:var(--c-ink-3);min-height:44px;padding:8px 2px;transition:color var(--transition);flex-shrink:0}.limit-nudge__skip:hover{color:var(--c-ink)}@media (prefers-color-scheme: dark){.limit-nudge{background:var(--c-gold-lt);border-color:var(--c-gold)}.limit-nudge__cta{color:var(--c-ink)}}@keyframes fb-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.fb-nudge{position:fixed;bottom:24px;right:24px;z-index:500;width:clamp(280px,90vw,340px);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:0;overflow:hidden;animation:fb-in .28s cubic-bezier(.2,.8,.4,1) both}.fb-nudge--thankyou{flex-direction:row;align-items:center;gap:10px;padding:14px 16px}.fb-nudge__check{font-size:1.1rem;color:var(--c-green);flex-shrink:0}.fb-nudge__thanks{font-size:.82rem;font-weight:600;color:var(--c-green)}.fb-nudge__header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px 0}.fb-nudge__title{font-size:.85rem;font-weight:700;color:var(--c-ink)}.fb-nudge__close{width:32px;height:32px;flex-shrink:0;color:var(--c-ink-3);border-radius:var(--radius);transition:background var(--transition),color var(--transition)}.fb-nudge__close:hover{background:var(--c-paper);color:var(--c-ink)}.fb-nudge__stars{display:flex;justify-content:space-around;padding:10px 14px 6px;gap:4px}.fb-nudge__star{font-size:1.5rem;line-height:1;padding:8px;border-radius:var(--radius);transition:background var(--transition),transform var(--transition);min-width:44px;min-height:44px;display:grid;place-items:center;opacity:.55}.fb-nudge__star:hover{opacity:.85;transform:scale(1.15);background:var(--c-paper)}.fb-nudge__star--selected{opacity:1;transform:scale(1.2);background:var(--c-accent-lt)}.fb-nudge__comment-wrap{position:relative;padding:4px 14px 0}.fb-nudge__comment{width:100%;resize:none;border:1px solid var(--c-border);border-radius:var(--radius);padding:8px 10px;font-size:.78rem;color:var(--c-ink);background:var(--c-paper);line-height:1.5;outline:none;transition:border-color var(--transition);min-height:60px}.fb-nudge__comment:focus{border-color:var(--c-accent)}.fb-nudge__char-count{position:absolute;bottom:6px;right:20px;font-size:.68rem;color:var(--c-ink-3)}.fb-nudge__actions{display:flex;align-items:center;gap:10px;padding:10px 14px 14px}.fb-nudge__submit{flex:1;height:44px;padding:0 14px;background:var(--c-accent);color:#fff;border-radius:var(--radius);font-size:.8rem;font-weight:700;transition:background var(--transition);white-space:nowrap}.fb-nudge__submit:hover{background:var(--c-accent-dk)}.fb-nudge__submit:disabled,.fb-nudge__submit[aria-disabled=true]{opacity:.45;cursor:not-allowed}.fb-nudge__skip{font-size:.76rem;color:var(--c-ink-3);min-height:44px;padding:8px 4px;display:grid;place-items:center;transition:color var(--transition);flex-shrink:0}.fb-nudge__skip:hover{color:var(--c-ink)}@media (max-width: 480px){.fb-nudge{bottom:0;right:0;left:0;width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:env(safe-area-inset-bottom,0px)}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.welcome-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:600;width:clamp(280px,90vw,360px);display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--c-green-lt);border:1.5px solid var(--c-green);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:toast-in .26s cubic-bezier(.2,.8,.4,1) both}.welcome-toast__check{color:var(--c-green);flex-shrink:0;display:flex;align-items:center}.welcome-toast__body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.welcome-toast__heading{font-size:.84rem;font-weight:600;color:var(--c-green);line-height:1.3}.welcome-toast__heading strong{font-weight:800}.welcome-toast__sub{font-size:.76rem;color:var(--c-ink-2);line-height:1.4}.welcome-toast__close{width:32px;height:32px;flex-shrink:0;color:var(--c-green);border-radius:var(--radius);opacity:.7;transition:opacity var(--transition),background var(--transition)}.welcome-toast__close:hover{opacity:1;background:color-mix(in srgb,var(--c-green) 12%,transparent)}@media (max-width: 480px){.welcome-toast{bottom:0;left:0;right:0;width:100%;transform:none;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:env(safe-area-inset-bottom,0px)}}@media (prefers-color-scheme: dark){.welcome-toast{border-color:var(--c-green)}}.guardrails-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--radius-lg);border-width:1.5px;border-style:solid;font-size:.83rem;line-height:1.5;width:100%;box-sizing:border-box}.guardrails-banner--violation{background:var(--c-red-lt);border-color:var(--c-red);color:var(--c-red)}.guardrails-banner--rate-limit{background:var(--c-gold-lt);border-color:var(--c-gold);color:var(--c-gold)}.guardrails-banner__icon{flex-shrink:0;display:flex;align-items:center;padding-top:1px}.guardrails-banner__body{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.guardrails-banner__message{margin:0;font-weight:500}.guardrails-banner__countdown{margin:0;font-size:.78rem;opacity:.85}.guardrails-banner__countdown-value{font-weight:600;font-variant-numeric:tabular-nums}.guardrails-banner__retry-btn{align-self:flex-start;margin-top:4px;padding:5px 14px;border-radius:var(--radius);border:1.5px solid currentColor;background:transparent;color:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:background var(--transition),opacity var(--transition)}.guardrails-banner__retry-btn:hover{background:color-mix(in srgb,currentColor 12%,transparent)}.page-anon-banner{display:flex;align-items:flex-start;gap:12px;background:color-mix(in srgb,var(--c-gold) 10%,var(--c-surface));border:1px solid color-mix(in srgb,var(--c-gold) 30%,transparent);border-radius:var(--radius-lg);padding:12px 16px;margin-bottom:20px;font-size:.875rem;line-height:1.5}.page-anon-banner__icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.page-anon-banner strong{display:block;color:var(--c-ink-1);margin-bottom:2px}.page-anon-banner p{margin:0;color:var(--c-ink-2)}.page-anon-banner__link{background:none;border:none;padding:0;font:inherit;color:var(--c-accent);text-decoration:underline;cursor:pointer;font-weight:600}.page-anon-banner__link:hover{opacity:.8}.insight-panel__anon-notice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;margin-bottom:4px}.insight-panel__anon-count{font-size:.78rem;font-weight:600;color:var(--c-ink-3);background:var(--c-surface-2);border-radius:999px;padding:2px 10px}.insight-panel__anon-limit-msg{margin:0;font-size:.82rem;color:var(--c-red);background:var(--c-red-lt);border-radius:var(--radius);padding:6px 10px}.insight-panel__anon-persist-banner{display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--c-gold) 8%,var(--c-surface));border:1px solid color-mix(in srgb,var(--c-gold) 25%,transparent);border-radius:var(--radius);padding:8px 12px;font-size:.81rem;color:var(--c-ink-2);margin-bottom:8px}.insight-panel__anon-persist-banner strong{color:var(--c-ink-1)}.plan-limit-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;border:1px solid var(--c-gold);background:var(--c-gold-lt, #fffbeb);color:var(--c-gold, #b45309);font-size:.85rem;margin:12px 0}.plan-limit-banner--standalone{margin:16px 0}.plan-limit-banner__msg{flex:1;font-weight:500}.plan-limit-banner__cta{flex-shrink:0;padding:6px 14px;border-radius:6px;background:var(--c-gold, #b45309);color:#fff;font-size:.82rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:opacity var(--transition)}.plan-limit-banner__cta:hover{opacity:.88}@media (max-width: 480px){.plan-limit-banner{flex-direction:column;align-items:flex-start;gap:8px}.plan-limit-banner__cta{align-self:flex-start}}.plan-badge{display:flex;align-items:center;gap:6px;flex-shrink:0}.plan-badge__chip{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1;white-space:nowrap}.plan-badge__chip--free{background:var(--c-surface-2, #f1f5f9);color:var(--c-ink-3, #64748b);border:1px solid var(--c-border, #e2e8f0)}.plan-badge__chip--pro{background:#dbeafe;color:#1d4ed8;border:1px solid #93c5fd}.plan-badge__chip--premium{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #fbbf24}.plan-badge__upsell-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--c-accent, #6366f1);background:transparent;color:var(--c-accent, #6366f1);font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--transition),color var(--transition)}.plan-badge__upsell-btn:hover{background:var(--c-accent, #6366f1);color:#fff}@keyframes upsell-in{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes upsell-spin{to{transform:rotate(360deg)}}.upsell-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:900;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.upsell-modal{background:var(--c-surface, #fff);border-radius:16px;border:1px solid var(--c-border, #e2e8f0);box-shadow:0 24px 64px #0003;width:100%;max-width:420px;max-height:92vh;overflow-y:auto;display:flex;flex-direction:column;animation:upsell-in .22s cubic-bezier(.34,1.56,.64,1) both}.upsell-modal__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 20px 20px;border-radius:15px 15px 0 0;position:relative}.upsell-modal--pro .upsell-modal__hero{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff}.upsell-modal--premium .upsell-modal__hero{background:linear-gradient(135deg,#d97706,#f59e0b,#fbbf24);color:#7c2d12}.upsell-modal__hero-text{display:flex;flex-direction:column;gap:6px;flex:1}.upsell-modal__tier-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;align-self:flex-start}.upsell-modal--pro .upsell-modal__tier-chip{background:#fff3;color:#fff}.upsell-modal--premium .upsell-modal__tier-chip{background:#7c2d121f;color:#7c2d12}.upsell-modal__title{margin:0;font-size:1.3rem;font-weight:800;line-height:1.2}.upsell-modal--pro .upsell-modal__title{color:#fff}.upsell-modal--premium .upsell-modal__title{color:#431407}.upsell-modal__tagline{margin:0;font-size:.82rem;line-height:1.45;opacity:.85}.upsell-modal__close{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:#ffffff2e;cursor:pointer;transition:background var(--transition);color:inherit}.upsell-modal--premium .upsell-modal__close{background:#7c2d121a}.upsell-modal__close:hover{background:#ffffff4d}.upsell-modal--premium .upsell-modal__close:hover{background:#7c2d122e}.upsell-modal__body{display:flex;flex-direction:column;gap:16px;padding:20px 20px 24px}.upsell-modal__interval{display:flex;background:var(--c-surface-2, #f1f5f9);border-radius:10px;padding:3px;gap:3px}.upsell-modal__interval-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--c-ink-3, #64748b);font-size:.84rem;font-weight:500;cursor:pointer;transition:background var(--transition),color var(--transition),box-shadow var(--transition);min-height:40px}.upsell-modal__interval-btn--active{background:var(--c-surface, #fff);color:var(--c-ink, #0f172a);font-weight:600;box-shadow:0 1px 4px #0000001a}.upsell-modal__save-badge{padding:2px 7px;border-radius:999px;background:#dcfce7;color:#166534;font-size:.68rem;font-weight:700;letter-spacing:.02em}.upsell-modal__price-block{display:flex;flex-direction:column;gap:3px;padding-bottom:4px;border-bottom:1px solid var(--c-border, #e2e8f0)}.upsell-modal__price-row{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.upsell-modal__price-amount{font-size:2.4rem;font-weight:800;color:var(--c-ink, #0f172a);line-height:1;letter-spacing:-.02em}.upsell-modal__price-unit{font-size:1rem;font-weight:500;color:var(--c-ink-3, #64748b)}.upsell-modal__savings-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;background:#dcfce7;color:#166534;font-size:.74rem;font-weight:700;margin-left:2px}.upsell-modal__billing-note{margin:0;font-size:.78rem;color:var(--c-ink-3, #94a3b8)}.upsell-modal__features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.upsell-modal__feature{display:flex;align-items:flex-start;gap:10px;font-size:.86rem;color:var(--c-ink-3, #64748b);line-height:1.4}.upsell-modal__feature--new{color:var(--c-ink-2, #334155)}.upsell-modal__feature-icon{flex-shrink:0;width:16px;margin-top:1px;display:flex}.upsell-modal__feature:not(.upsell-modal__feature--new) .upsell-modal__feature-icon{color:var(--c-ink-3, #94a3b8)}.upsell-modal--pro .upsell-modal__feature--new .upsell-modal__feature-icon{color:var(--c-accent, #6366f1)}.upsell-modal--premium .upsell-modal__feature--new .upsell-modal__feature-icon{color:var(--c-gold, #d97706)}.upsell-modal__feature-text{display:flex;flex-direction:column;gap:1px}.upsell-modal__feature-note{font-size:.75rem;color:var(--c-ink-3, #94a3b8);font-weight:500}.upsell-modal__feature--new .upsell-modal__feature-note{color:var(--c-ink-3, #64748b)}.upsell-modal__error{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;background:var(--c-red-lt, #fef2f2);color:var(--c-red, #dc2626);font-size:.83rem}.upsell-modal__cta{width:100%;padding:14px 20px;border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity var(--transition),box-shadow var(--transition);letter-spacing:.01em}.upsell-modal--pro .upsell-modal__cta{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;box-shadow:0 4px 16px #6366f159}.upsell-modal--premium .upsell-modal__cta{background:linear-gradient(135deg,#d97706,#f59e0b);color:#fff;box-shadow:0 4px 16px #f59e0b59}.upsell-modal__cta:hover:not(:disabled){opacity:.92;box-shadow:0 6px 24px #6366f166}.upsell-modal--premium .upsell-modal__cta:hover:not(:disabled){box-shadow:0 6px 24px #f59e0b66}.upsell-modal__cta:disabled{opacity:.65;cursor:not-allowed}.upsell-spinner{animation:upsell-spin .8s linear infinite;flex-shrink:0}.upsell-modal__trust{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;font-size:.75rem;color:var(--c-ink-3, #94a3b8)}.upsell-modal__trust span{display:flex;align-items:center;gap:5px}.upsell-modal__compare-link{display:flex;align-items:center;justify-content:center;gap:4px;font-size:.8rem;color:var(--c-ink-3, #94a3b8);text-decoration:none;transition:color var(--transition);margin-top:-4px}.upsell-modal__compare-link:hover{color:var(--c-accent, #6366f1)}@media (max-width: 480px){.upsell-modal{border-radius:12px;max-height:95vh}.upsell-modal__hero{padding:20px 16px 16px}.upsell-modal__body{padding:16px 16px 20px;gap:14px}.upsell-modal__price-amount{font-size:2rem}.upsell-modal__title{font-size:1.15rem}.plan-badge__upsell-btn{padding:4px 8px;font-size:.7rem}}
