.article-card.interlude-card{background:var(--color-text);color:var(--color-bg);border-color:var(--color-border)}.interlude-card .card-body{flex-direction:column;min-height:292px;display:flex}.interlude-header{font-size:var(--font-size-sm);letter-spacing:1.5px;margin-bottom:var(--spacing-lg);opacity:.75;justify-content:space-between;align-items:center;display:flex}.interlude-glyph{font-size:14px}.interlude-lead{font-size:var(--font-size-sm);letter-spacing:.5px;opacity:.75;margin-bottom:var(--spacing-md)}.interlude-term{font-size:var(--font-size-xl);margin-bottom:var(--spacing-xs);font-weight:700;line-height:1.2}.interlude-term.small{font-size:var(--font-size-lg)}.interlude-field{font-size:var(--font-size-sm);opacity:.7;margin-bottom:var(--spacing-md);font-style:italic}.interlude-phonetic{letter-spacing:.5px;opacity:.7;margin-bottom:var(--spacing-xs);font-family:Courier New,Courier,monospace;font-size:13px}.interlude-body{font-size:var(--font-size-base);margin-bottom:var(--spacing-md);line-height:1.6}.interlude-why{padding-left:var(--spacing-sm);border-left:2px solid var(--color-bg);opacity:.85;margin-bottom:var(--spacing-md);font-size:14px;line-height:1.5}.interlude-source{opacity:.6;margin-bottom:var(--spacing-sm);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.interlude-question{font-size:var(--font-size-lg);margin-bottom:var(--spacing-md);font-weight:600;line-height:1.4}.interlude-hint{opacity:.75;margin-bottom:var(--spacing-md);font-size:14px;font-style:italic}.interlude-answer{border-top:1px solid var(--color-bg);padding-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.interlude-example{opacity:.8;padding-left:var(--spacing-sm);border-left:2px solid var(--color-bg);margin-bottom:var(--spacing-md);font-size:14px;font-style:italic;line-height:1.5}.interlude-hint-line{opacity:.5;margin-top:var(--spacing-md);font-size:11px}.interlude-result{font-size:var(--font-size-sm);letter-spacing:.5px;opacity:.8;margin:var(--spacing-md) 0 var(--spacing-sm)}.interlude-flip{cursor:pointer;padding:var(--spacing-md) 0;animation:.15s ease-out interlude-turn}.interlude-flip.turned{cursor:default}@keyframes interlude-turn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.interlude-span-list{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;list-style:none;display:flex}.interlude-span-list li{font-size:var(--font-size-lg);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-bg);font-weight:600}.interlude-span-grid{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);grid-template-columns:repeat(2,1fr);display:grid}.interlude-choice{padding:var(--spacing-md);font-size:var(--font-size-base);border:2px solid var(--color-bg);color:var(--color-bg);cursor:pointer;background:0 0;font-weight:600;transition:background .15s,color .15s}.interlude-choice:hover{background:var(--color-bg);color:var(--color-text)}.interlude-actions{gap:var(--spacing-sm);padding-top:var(--spacing-md);margin-top:auto;display:flex}.interlude-btn{padding:var(--spacing-md);font-size:var(--font-size-base);border:2px solid var(--color-bg);color:var(--color-bg);cursor:pointer;background:0 0;flex:1;font-weight:600;transition:all .2s}.interlude-btn.primary,.interlude-btn:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.interlude-btn.primary:hover:not(:disabled){color:var(--color-bg);background:0 0}.interlude-btn:disabled{opacity:.6;cursor:default}.interlude-btn:active:not(:disabled){transform:translate(2px,2px)}.interlude-card .interlude-hint-tag{background:var(--color-bg);color:var(--color-text)}@media (width<=480px){.interlude-card .card-body{min-height:268px}.interlude-term{font-size:var(--font-size-lg)}.interlude-question{font-size:var(--font-size-base)}.interlude-body{font-size:14px;line-height:1.5}.interlude-actions{flex-direction:column}}@media (prefers-reduced-motion:reduce){.interlude-flip{animation:none}}.ripple-loader--fullscreen{background:var(--color-bg);z-index:9999;flex-direction:column;justify-content:center;align-items:center;animation:.3s ripple-fade-in;display:flex;position:fixed;inset:0}.ripple-loader--inline{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px 0;display:flex}.ripple-drop-zone{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.ripple-loader--inline .ripple-drop-zone{width:80px;height:80px}.ripple-drop{background:var(--color-text);opacity:0;border-radius:50%;width:6px;height:6px;animation:2.4s cubic-bezier(.4,0,.2,1) infinite drop-fall;position:absolute}.ripple-loader--inline .ripple-drop{width:4px;height:4px}@keyframes drop-fall{0%{opacity:0;transform:translateY(-28px)scale(1)}8%{opacity:1;transform:translateY(-24px)scale(1)}20%{opacity:1;transform:translateY(0)scale(1)}22%{opacity:0;transform:translateY(0)scale(1.6,.4)}to{opacity:0;transform:translateY(0)scale(0)}}.ripple-ring{border:1px solid var(--color-text);opacity:0;border-radius:50%;width:10px;height:10px;animation:2.4s cubic-bezier(.2,.6,.35,1) infinite ring-expand;position:absolute}.ripple-ring--1{animation-delay:.2s}.ripple-ring--2{animation-delay:.45s}.ripple-ring--3{animation-delay:.7s}@keyframes ring-expand{0%{opacity:0;border-width:1.5px;width:8px;height:8px}20%{opacity:0}22%{opacity:.6;border-width:1.5px;width:8px;height:8px}70%{opacity:.15;border-width:.5px}to{opacity:0;border-width:.5px;width:110px;height:110px}}.ripple-loader--inline .ripple-ring{animation-name:ring-expand-sm}@keyframes ring-expand-sm{0%{opacity:0;border-width:1px;width:6px;height:6px}20%{opacity:0}22%{opacity:.6;border-width:1px;width:6px;height:6px}70%{opacity:.15;border-width:.5px}to{opacity:0;border-width:.5px;width:72px;height:72px}}.ripple-label{letter-spacing:.5px;color:var(--color-muted);margin-top:16px;font-family:Courier New,Courier,monospace;font-size:11px;animation:2.4s ease-in-out infinite ripple-label-pulse}.ripple-loader--inline .ripple-label{margin-top:8px;font-size:10px}@keyframes ripple-label-pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes ripple-fade-in{0%{opacity:0}to{opacity:1}}.deck-complete{flex-direction:column;align-items:center;gap:18px;padding:24px 0;display:flex}.deck-complete-art{width:150px;height:150px;color:var(--color-text)}.deck-complete-caption{letter-spacing:.5px;color:var(--color-muted);text-align:center;margin:0;font-size:14px;animation:.8s 1.6s both deck-caption-in}@keyframes deck-caption-in{0%{opacity:0}to{opacity:1}}.enso-stroke{stroke:currentColor;stroke-linecap:round;stroke-dasharray:289;stroke-dashoffset:289px;animation:1.6s cubic-bezier(.4,0,.3,1) .2s forwards enso-draw}@keyframes enso-draw{to{stroke-dashoffset:34px}}.enso-dot{opacity:0;animation:.7s 1.7s forwards deck-caption-in}.enso-dot-filled{fill:currentColor}.enso-dot-hollow{stroke:currentColor}.petals-branch{stroke:currentColor;stroke-linecap:round}.petals-bloom{fill:currentColor;opacity:.85}.petals-bloom.faint{opacity:.35}.petals-petal{fill:currentColor;opacity:0;animation:9s linear infinite petal-fall}@keyframes petal-fall{0%{opacity:0;transform:translate(0)rotate(0)}8%{opacity:.55}60%{opacity:.4;transform:translate(-10px,34px)rotate(80deg)}to{opacity:0;transform:translate(-4px,58px)rotate(150deg)}}.water-drop{fill:currentColor;animation:.9s cubic-bezier(.55,0,.9,.6) .2s forwards water-fall}@keyframes water-fall{70%{opacity:1}to{opacity:0;transform:translateY(54px)}}.water-ring{stroke:currentColor;opacity:0;transform-origin:60px 72px;animation:2.4s ease-out forwards water-ripple}@keyframes water-ripple{0%{opacity:.7;transform:scale(.4)}to{opacity:0;transform:scale(4.2)}}.water-surface{stroke:currentColor;opacity:0;animation:1s .6s forwards deck-caption-in}.balance-line{stroke:currentColor;stroke-dasharray:84;stroke-dashoffset:84px;animation:.9s .2s forwards balance-line-in}@keyframes balance-line-in{to{stroke-dashoffset:0}}.balance-dot{opacity:0}.balance-dot-filled{fill:currentColor;animation:1.2s cubic-bezier(.3,.8,.4,1) .7s forwards balance-settle-left}.balance-dot-hollow{stroke:currentColor;animation:1.2s cubic-bezier(.3,.8,.4,1) .7s forwards balance-settle-right}@keyframes balance-settle-left{0%{opacity:0;transform:translate(-34px)}30%{opacity:1}80%{transform:translate(3px)}to{opacity:1;transform:translate(0)}}@keyframes balance-settle-right{0%{opacity:0;transform:translate(34px)}30%{opacity:1}80%{transform:translate(-3px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.deck-complete-caption,.enso-dot,.balance-dot,.water-surface{opacity:1;animation:none}.enso-stroke{stroke-dashoffset:34px;animation:none}.balance-line{stroke-dashoffset:0;animation:none}.petals-petal,.water-drop,.water-ring{opacity:0;animation:none}}.word-lookup-popover{background:var(--color-surface);border:2px solid var(--color-border);width:300px;max-width:calc(100vw - 32px);box-shadow:4px 4px 0 var(--color-border);padding:14px 16px;font-family:inherit;animation:.15s ease-out wordLookupIn}@keyframes wordLookupIn{0%{opacity:0;transform:translate(-50%,-100%)scale(.95)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}.word-lookup-close{cursor:pointer;color:var(--color-muted);background:0 0;border:none;padding:2px 6px;font-size:16px;line-height:1;position:absolute;top:6px;right:8px}.word-lookup-close:hover{color:var(--color-text)}.word-lookup-arrow{background:var(--color-surface);border:2px solid var(--color-border);width:10px;height:10px;position:absolute;left:50%;transform:translate(-50%)rotate(45deg)}.word-lookup-arrow.arrow-bottom{border-top:none;border-left:none;bottom:-7px}.word-lookup-arrow.arrow-top{border-bottom:none;border-right:none;top:-7px}.word-lookup-header{align-items:baseline;gap:8px;margin-bottom:4px;padding-right:20px;display:flex}.word-lookup-word{color:var(--color-text);letter-spacing:-.3px;font-size:17px;font-weight:700}.word-lookup-pos{color:var(--color-muted);font-size:11px;font-style:italic}.word-lookup-field{text-transform:uppercase;letter-spacing:.5px;color:var(--color-bg);background:var(--color-text);margin-bottom:8px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.word-lookup-definition{color:var(--color-text);margin-bottom:8px;font-size:13px;line-height:1.5}.word-lookup-etymology,.word-lookup-related{color:var(--color-muted);margin-bottom:6px;font-size:11px;line-height:1.4}.word-lookup-label{color:var(--color-text);font-weight:600}.word-lookup-example{color:var(--color-muted);border-left:2px solid var(--color-subtle);margin-bottom:8px;padding-left:8px;font-size:12px;font-style:italic}.word-lookup-save{background:var(--color-surface);width:100%;color:var(--color-text);border:2px solid var(--color-border);cursor:pointer;margin-top:10px;padding:7px 12px;font-size:12px;font-weight:600;transition:all .2s;display:block}.word-lookup-save:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.word-lookup-save.saved{background:var(--color-text);color:var(--color-bg);cursor:default;opacity:.7}.word-lookup-notfound{text-align:center;padding:4px 0}.word-lookup-notfound .word-lookup-word{margin-bottom:4px;display:block}.word-lookup-notfound-msg{color:var(--color-muted);font-size:12px}@media (width<=768px){.word-lookup-popover{width:280px;padding:12px 14px}.word-lookup-word{font-size:15px}.word-lookup-definition{font-size:12px}}.word-lookup-loading{text-align:center;padding:4px 0}.word-lookup-loading .word-lookup-word{margin-bottom:8px;display:block}.word-lookup-loading-dots{color:var(--color-muted);justify-content:center;gap:4px;font-size:18px;display:flex}.word-lookup-loading-dots span{animation:1.2s ease-in-out infinite dotPulse}.word-lookup-loading-dots span:nth-child(2){animation-delay:.2s}.word-lookup-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,60%,to{opacity:.2}30%{opacity:1}}.market-quote-row{align-items:baseline;gap:10px;margin-top:10px;display:flex}.market-quote-price{letter-spacing:.5px;color:var(--color-text);font-variant-numeric:tabular-nums;font-size:22px;font-weight:300}.market-quote-change{color:var(--color-muted);font-variant-numeric:tabular-nums;font-size:12px}.market-sparkline{margin:10px 0 6px}.market-caption{letter-spacing:1px;text-transform:lowercase;color:var(--color-muted);font-size:10px}.market-unavailable{color:var(--color-muted);margin-top:10px;font-size:12px;font-style:italic}.market-define-link{letter-spacing:.5px;color:var(--color-muted);cursor:pointer;text-align:left;background:0 0;border:none;margin-top:12px;padding:0;font-family:inherit;font-size:11px;display:block}.market-define-link:hover{color:var(--color-text)}.post-x-overlay{z-index:2600;background:color-mix(in srgb, var(--color-bg) 72%, transparent);-webkit-backdrop-filter:blur(2px);padding:var(--spacing-md);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.post-x-card{background:var(--color-bg);border:1px solid var(--color-border);width:min(480px,100%);padding:var(--spacing-md);gap:var(--spacing-sm);flex-direction:column;display:flex}.post-x-header{justify-content:space-between;align-items:center;display:flex}.post-x-header h3{font-size:var(--font-size-md);letter-spacing:1px;margin:0;font-weight:500}.post-x-close{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;background:0 0;min-width:40px;min-height:40px;padding:10px 12px;font-size:14px;line-height:1}.post-x-draft{box-sizing:border-box;background:var(--color-bg);width:100%;color:var(--color-text);border:1px solid var(--color-subtle);padding:var(--spacing-sm);font:inherit;font-size:var(--font-size-md);resize:vertical;line-height:1.5}.post-x-draft:focus{border-color:var(--color-border);outline:none}.post-x-source{font-size:var(--font-size-sm);color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.post-x-meta{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.post-x-link{font-size:var(--font-size-sm);color:var(--color-muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;min-width:0;padding:4px 0;overflow:hidden}.post-x-link:not(.on){opacity:.6;text-decoration:line-through}.post-x-count{font-size:var(--font-size-sm);color:var(--color-muted);flex-shrink:0}.post-x-count.over{color:#c0504d}.post-x-actions{align-items:center;gap:var(--spacing-sm);display:flex}.post-x-post{background:var(--color-text);color:var(--color-bg);border:1px solid var(--color-text);min-height:44px;font:inherit;font-size:var(--font-size-sm);letter-spacing:1px;cursor:pointer;flex:1;padding:12px 16px}.post-x-post:disabled{opacity:.4;cursor:default}.post-x-quiet{border:1px solid var(--color-subtle);color:var(--color-muted);min-height:44px;font:inherit;font-size:var(--font-size-sm);letter-spacing:.5px;cursor:pointer;background:0 0;padding:12px 14px}.post-x-quiet:disabled{color:var(--color-text);cursor:default}.post-x-status{font-size:var(--font-size-sm);color:var(--color-muted);text-align:center;margin:0}.post-x-status.post-x-posted{color:var(--color-text);font-weight:600}.highlight-bar{z-index:2500;background:var(--color-bg);border:1px solid var(--color-border);align-items:center;animation:.15s highlight-bar-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 4px 16px #0000002e}.highlight-bar-btn{min-height:44px;font:inherit;font-size:var(--font-size-sm);letter-spacing:.5px;color:var(--color-text);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:12px 14px}.highlight-bar-btn:disabled{color:var(--color-muted);cursor:default}.highlight-bar-divider{background:var(--color-subtle);align-self:stretch;width:1px}@keyframes highlight-bar-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.share-button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;font-family:inherit;transition:all .15s}.share-button--inline{width:36px;height:36px;color:var(--color-border);border:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;justify-content:center;align-items:center;font-size:21px;display:inline-flex}.share-button--inline:hover{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.share-button--inline.share-button--copied{color:var(--color-text);border-color:var(--color-text)}.share-button--block{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);align-items:center;gap:4px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-flex}.share-button--block:hover{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.share-button--block:active{transform:scale(.97)}.share-button-icon{justify-content:center;align-items:center;display:inline-flex}.share-button--inline svg{display:block}.share-button-label{line-height:1}.article-primer .reader-content{text-align:left}.article-primer .reader-title,.article-primer .reader-authors-source{text-align:center}.primer-eyebrow{justify-content:center;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.primer-eyebrow .reader-ai-badge{color:var(--color-text);margin-bottom:0}.primer-eyebrow-hint{color:var(--color-muted);font-size:12px;font-style:italic}.primer-body{gap:var(--spacing-xl);flex-direction:column;animation:.3s fade-in;display:flex}.primer-section{flex-direction:column;gap:10px;display:flex}.primer-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.primer-text{color:var(--color-text);margin:0;font-size:16px;line-height:1.75}.primer-terms{flex-direction:column;gap:12px;margin:0;display:flex}.primer-term dt{color:var(--color-text);font-size:15px;font-weight:600}.primer-term dd{color:var(--color-text);border-left:2px solid var(--color-border);margin:4px 0 0;padding-left:16px;font-size:15px;line-height:1.65}.primer-highlight{padding:var(--spacing-md) var(--spacing-lg);border-left:3px solid var(--color-text);background:var(--color-bg)}.primer-note{color:var(--color-muted);text-align:center;margin:0;font-size:15px;line-height:1.6}.primer-retry{font:inherit;color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.primer-footer{margin-top:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex}.primer-footer-text{color:var(--color-muted);margin:0;font-size:14px;font-style:italic}.primer-footer-read{flex:none;min-width:220px}@media (width<=480px){.primer-read-button{font-size:var(--font-size-sm)}}.paywall-wrapper{width:100%;height:100%;position:relative}.paywall-dimmed{filter:blur(4px);opacity:.3;pointer-events:none;-webkit-user-select:none;user-select:none}.paywall-overlay{z-index:100;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.paywall-overlay-content{text-align:center;padding:32px}.paywall-icon{color:var(--color-text);margin-bottom:12px;font-size:24px}.paywall-overlay-text{color:var(--color-muted);letter-spacing:.5px;margin-bottom:16px;font-size:13px}.paywall-overlay-btn{border:2px solid var(--color-text);background:var(--color-text);color:var(--color-bg);cursor:pointer;letter-spacing:.5px;padding:12px 28px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.paywall-overlay-btn:hover:not(:disabled){background:var(--color-bg);color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.paywall-overlay-btn:disabled{opacity:.5;cursor:not-allowed}.paywall-gate{justify-content:center;align-items:center;min-height:60vh;padding:24px;display:flex}.paywall-gate-content{text-align:center;width:100%;max-width:400px}.paywall-title{color:var(--color-text);letter-spacing:.5px;margin:0 0 12px;font-size:20px;font-weight:600}.paywall-description{color:var(--color-muted);margin:0 0 28px;font-size:13px;line-height:1.6}.paywall-plans{gap:12px;margin-bottom:20px;display:flex}.paywall-plan{border:2px solid var(--color-border);background:var(--color-bg);cursor:pointer;text-align:center;flex:1;padding:16px 12px;font-family:inherit;transition:all .15s;position:relative}.paywall-plan.selected{border-color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.paywall-plan:hover:not(.selected){border-color:var(--color-muted)}.plan-name{color:var(--color-muted);letter-spacing:1px;text-transform:lowercase;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.plan-price{color:var(--color-text);font-size:24px;font-weight:700;display:block}.plan-period{color:var(--color-muted);font-size:13px;font-weight:400}.plan-badge{background:var(--color-text);color:var(--color-bg);letter-spacing:.5px;padding:3px 8px;font-size:10px;font-weight:700;position:absolute;top:-10px;right:-2px}.paywall-promo{margin-bottom:20px}.promo-input{border:2px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);text-align:center;letter-spacing:1px;-webkit-appearance:none;box-sizing:border-box;border-radius:0;outline:none;padding:12px 16px;font-family:inherit;font-size:14px;transition:all .15s}.promo-input::placeholder{color:var(--color-subtle);letter-spacing:.5px}.promo-input:focus{border-color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.paywall-checkout-btn{border:2px solid var(--color-text);background:var(--color-text);width:100%;color:var(--color-bg);cursor:pointer;letter-spacing:.5px;padding:16px 24px;font-family:inherit;font-size:16px;font-weight:700;transition:all .15s}.paywall-checkout-btn:hover:not(:disabled){background:var(--color-bg);color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.paywall-checkout-btn:active:not(:disabled){box-shadow:1px 1px 0 var(--color-text);transform:translate(2px,2px)}.paywall-checkout-btn:disabled{opacity:.5;cursor:not-allowed}.paywall-error{border:2px solid var(--color-text);background:var(--color-surface);color:var(--color-text);text-align:center;margin-bottom:16px;padding:10px 14px;font-size:12px;font-weight:500}@media (width<=480px){.paywall-gate{min-height:50vh;padding:16px}.paywall-plans{flex-direction:column}.plan-price{font-size:20px}}.sub-gate-logout{color:var(--color-muted);cursor:pointer;letter-spacing:.3px;background:0 0;border:none;margin:24px auto 0;padding:8px 16px;font-family:inherit;font-size:12px;transition:color .15s;display:block}.sub-gate-logout:hover{color:var(--color-text)}.timeline-container{background:var(--color-bg);width:100%;height:100%;padding:24px 20px 40px;overflow:hidden auto}.timeline-content{max-width:600px;margin:0 auto;position:relative}.timeline-summary{color:var(--color-muted);letter-spacing:.3px;justify-content:center;align-items:center;gap:6px;margin-bottom:28px;font-family:Courier New,Courier,monospace;font-size:11px;display:flex}.timeline-summary-count{color:var(--color-text);font-weight:600}.timeline-summary-sep{opacity:.4}.timeline-line{background:var(--color-border);width:1px;position:absolute;top:50px;bottom:0;left:90px}.timeline-groups{z-index:1;position:relative}.timeline-group{margin-bottom:40px}.timeline-year-header{z-index:2;background:var(--color-bg);align-items:baseline;gap:12px;margin-bottom:20px;padding-left:0;display:flex;position:relative}.timeline-year{letter-spacing:-.5px;background:var(--color-bg);z-index:2;padding-right:8px;font-size:20px;font-weight:700;position:relative}.timeline-year-meta{color:var(--color-muted);align-items:baseline;gap:8px;font-family:Courier New,Courier,monospace;font-size:11px;display:flex}.timeline-year-count{color:var(--color-text);opacity:.5;font-weight:600}.timeline-year-count:after{content:" articles";color:var(--color-muted);font-weight:400}.timeline-year-topics{opacity:.6;font-size:10px}.timeline-date-groups{flex-direction:column;gap:16px;display:flex}.timeline-date-row{align-items:center;gap:0;min-height:36px;display:flex}.timeline-date{text-align:right;width:70px;color:var(--color-muted);flex-shrink:0;padding-right:12px;font-family:Courier New,Courier,monospace;font-size:11px}.timeline-connector{background:var(--color-border);flex-shrink:0;width:20px;height:1px}.timeline-date-nodes{flex-wrap:wrap;align-items:center;gap:8px;padding-left:10px;display:flex}.timeline-node-wrapper{position:relative}.timeline-node{background:var(--color-bg);border:1px solid var(--color-border);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative}.timeline-node:hover{border-color:var(--color-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-text) 15%, transparent);transform:scale(1.2)}.timeline-node-selected{border-color:var(--color-text);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-text) 12%, transparent);border-width:2px;animation:2s ease-in-out infinite node-pulse}.timeline-node-selected .timeline-node-quality{opacity:1}@keyframes node-pulse{0%,to{box-shadow:0 0 0 4px color-mix(in srgb, var(--color-text) 12%, transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb, var(--color-text) 6%, transparent)}}.timeline-node.quality-peer,.timeline-node.quality-white{border-style:solid}.timeline-node.quality-scholarly{border-style:dashed}.timeline-node.quality-pub{border-style:dotted}.timeline-node-citations{color:var(--color-muted);-webkit-user-select:none;user-select:none;font-family:Courier New,Courier,monospace;font-size:8px;line-height:1}.timeline-node-quality{color:var(--color-text);-webkit-user-select:none;user-select:none;letter-spacing:1px;opacity:.6;font-size:6px;line-height:1;transition:opacity .2s}.timeline-node-wrapper--active .timeline-node{border-color:var(--color-text);box-shadow:0 0 0 5px color-mix(in srgb, var(--color-text) 15%, transparent);border-width:2px;transform:scale(1.25)}.timeline-node-wrapper--active .timeline-node .timeline-node-quality{opacity:1}.timeline-tooltip{background:var(--color-surface);border:1px solid var(--color-border);z-index:10;pointer-events:none;min-width:180px;max-width:260px;padding:10px 14px;animation:.15s ttFadeIn;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}@keyframes ttFadeIn{0%{opacity:0;transform:translateY(-50%)translate(-4px)}to{opacity:1;transform:translateY(-50%)translate(0)}}.timeline-tooltip-title{margin-bottom:6px;font-size:12px;font-weight:600;line-height:1.35}.timeline-tooltip-meta{color:var(--color-muted);flex-wrap:wrap;gap:6px;margin-bottom:6px;font-family:Courier New,Courier,monospace;font-size:10px;display:flex}.timeline-tooltip-meta span:not(:last-child):after{content:"·";opacity:.4;margin-left:6px}.timeline-tooltip-topics{flex-wrap:wrap;gap:4px;display:flex}.timeline-tooltip-topic{color:var(--color-text);border:1px solid var(--color-border);opacity:.6;padding:1px 5px;font-family:Courier New,Courier,monospace;font-size:9px}.timeline-zoom-controls{pointer-events:none;z-index:20;flex-direction:column;align-items:flex-end;gap:2px;margin-top:-40px;padding-right:4px;display:flex;position:sticky;bottom:12px}.timeline-zoom-btn{pointer-events:auto;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-subtle);cursor:pointer;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-family:Courier New,monospace;font-size:16px;font-weight:700;line-height:1;transition:all .15s;display:flex}.timeline-zoom-btn:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.timeline-zoom-btn:disabled{opacity:.25;cursor:default}.timeline-zoom-reset{width:28px;margin-top:2px;font-size:11px;font-weight:600}@media (width<=768px){.timeline-container{padding:20px 12px 40px}.timeline-line{left:10px}.timeline-year-header{flex-direction:column;gap:2px;padding-left:24px}.timeline-year{font-size:18px}.timeline-date-row{flex-wrap:nowrap}.timeline-date{width:auto;min-width:0;padding:0;font-size:0}.timeline-connector{width:14px;position:absolute;left:10px}.timeline-date-nodes{gap:6px;padding-left:34px}.timeline-date-row:before{content:attr(data-label);color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:10px;position:absolute;left:30px}.timeline-tooltip{z-index:100;min-width:0;max-width:none;position:fixed;inset:auto 12px 12px;transform:none}@keyframes ttFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}.timeline-container{scrollbar-width:none}.timeline-container::-webkit-scrollbar{width:6px}.timeline-container::-webkit-scrollbar-track{background:0 0}.timeline-container::-webkit-scrollbar-thumb{background:0 0}.timeline-container:hover::-webkit-scrollbar-thumb{background:var(--color-subtle);border-radius:0}.timeline-container:hover::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.walkthrough-overlay{z-index:9999;pointer-events:all;position:fixed;inset:0}.walkthrough-backdrop{background:#000000a6;transition:opacity .4s;position:absolute;inset:0}[data-theme=dark] .walkthrough-backdrop{background:#000000bf}.walkthrough-panel{background:var(--color-bg);border:2px solid var(--color-border);width:calc(100% - 48px);max-width:380px;box-shadow:6px 6px 0 var(--color-border);z-index:10001;padding:24px;animation:.4s cubic-bezier(.22,1,.36,1) forwards walkthrough-panel-in;position:absolute;left:50%;transform:translate(-50%)}.walkthrough-panel--top{top:60px}.walkthrough-panel--bottom{bottom:80px}.walkthrough-panel--center{top:50%;transform:translate(-50%,-50%)}@keyframes walkthrough-panel-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.walkthrough-panel--center{animation-name:walkthrough-panel-center-in}@keyframes walkthrough-panel-center-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.walkthrough-step-label{letter-spacing:2px;text-transform:uppercase;color:var(--color-muted);margin-bottom:12px;font-family:Courier New,Courier,monospace;font-size:10px}.walkthrough-title{color:var(--color-text);margin-bottom:8px;font-size:20px;font-weight:700;line-height:1.3}.walkthrough-desc{color:var(--color-muted);margin-bottom:20px;font-size:14px;line-height:1.6}.walkthrough-controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.walkthrough-dots{gap:6px;display:flex}.walkthrough-dot{border:1px solid var(--color-border);background:0 0;width:6px;height:6px;transition:background .2s}.walkthrough-dot--active{background:var(--color-text)}.walkthrough-dot--done{background:var(--color-muted)}.walkthrough-btn{border:2px solid var(--color-border);background:var(--color-text);color:var(--color-bg);cursor:pointer;padding:10px 20px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.walkthrough-btn:hover{box-shadow:3px 3px 0 var(--color-border);transform:translate(-1px,-1px)}.walkthrough-btn:active{box-shadow:none;transform:translate(1px,1px)}.walkthrough-btn--secondary{background:var(--color-bg);color:var(--color-text)}.walkthrough-skip{color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:Courier New,Courier,monospace;font-size:12px;transition:color .2s}.walkthrough-skip:hover{color:var(--color-text)}.walkthrough-hand-stage{width:100%;height:120px;margin:16px 0 20px;position:relative;overflow:hidden}.walkthrough-mock-card{background:var(--color-surface);border:2px solid var(--color-border);width:180px;height:80px;box-shadow:3px 3px 0 var(--color-border);color:var(--color-muted);letter-spacing:.5px;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.walkthrough-hand-stage--swipe-left .walkthrough-mock-card{animation:3s ease-in-out infinite mock-card-swipe-left}.walkthrough-hand-stage--swipe-right .walkthrough-mock-card{animation:3s ease-in-out infinite mock-card-swipe-right}@keyframes mock-card-swipe-left{0%,20%{opacity:1;transform:translate(-50%,-50%)rotate(0)}50%{opacity:.4;transform:translate(calc(-50% - 100px),-50%)rotate(-12deg)}55%{opacity:0}65%{opacity:0;transform:translate(-50%,-50%)rotate(0)}80%,to{opacity:1;transform:translate(-50%,-50%)rotate(0)}}@keyframes mock-card-swipe-right{0%,20%{opacity:1;transform:translate(-50%,-50%)rotate(0)}50%{opacity:.4;transform:translate(calc(100px - 50%),-50%)rotate(12deg)}55%{opacity:0}65%{opacity:0;transform:translate(-50%,-50%)rotate(0)}80%,to{opacity:1;transform:translate(-50%,-50%)rotate(0)}}.walkthrough-hand{filter:drop-shadow(0 2px 6px #00000026);z-index:2;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%}.walkthrough-hand-stage--swipe-left .walkthrough-hand{animation:3s ease-in-out infinite hand-swipe-left;left:60%}.walkthrough-hand-stage--swipe-right .walkthrough-hand{animation:3s ease-in-out infinite hand-swipe-right;left:40%}@keyframes hand-swipe-left{0%,15%{opacity:0;transform:translateY(-50%)}20%{opacity:1;transform:translateY(-50%)}50%{opacity:1;transform:translate(-100px,-50%)}55%,to{opacity:0;transform:translate(-100px,-50%)}}@keyframes hand-swipe-right{0%,15%{opacity:0;transform:translateY(-50%)}20%{opacity:1;transform:translateY(-50%)}50%{opacity:1;transform:translate(100px,-50%)}55%,to{opacity:0;transform:translate(100px,-50%)}}.walkthrough-swipe-label{letter-spacing:1px;text-transform:uppercase;background:var(--color-text);color:var(--color-bg);padding:3px 10px;font-size:11px;font-weight:700;position:absolute;top:8px}.walkthrough-swipe-label--dismiss{animation:3s ease-in-out infinite label-fade-left;right:12px}.walkthrough-swipe-label--save{animation:3s ease-in-out infinite label-fade-right;left:12px}@keyframes label-fade-left{0%,30%{opacity:0}45%,52%{opacity:.8}55%,to{opacity:0}}@keyframes label-fade-right{0%,30%{opacity:0}45%,52%{opacity:.8}55%,to{opacity:0}}.walkthrough-spotlight{z-index:10000;border:2px solid var(--color-text);pointer-events:none;transition:all .5s cubic-bezier(.22,1,.36,1);position:fixed;box-shadow:0 0 0 4000px #0009}[data-theme=dark] .walkthrough-spotlight{border-color:#fff;box-shadow:0 0 0 4000px #000000bf}.walkthrough-spotlight:after{content:"";border:1px solid var(--color-text);opacity:.4;animation:2s ease-in-out infinite spotlight-pulse;position:absolute;inset:-6px}@keyframes spotlight-pulse{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.5;transform:scale(1.03)}}.walkthrough-arrow{z-index:10001;pointer-events:none;animation:1.5s ease-in-out infinite arrow-bounce;position:fixed}.walkthrough-arrow svg{fill:none;width:32px;height:32px;stroke:var(--color-text);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 3px #0000004d)}@keyframes arrow-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.walkthrough-overlay--entering{animation:.4s forwards walkthrough-fade-in}.walkthrough-overlay--exiting{animation:.4s forwards walkthrough-fade-out}@keyframes walkthrough-fade-in{0%{opacity:0}to{opacity:1}}@keyframes walkthrough-fade-out{0%{opacity:1}to{opacity:0}}@media (width<=768px){.walkthrough-panel{width:calc(100% - 32px);padding:20px}.walkthrough-title{font-size:18px}.walkthrough-desc{font-size:13px}.walkthrough-hand-stage{height:100px}.walkthrough-mock-card{width:150px;height:68px}}.channel-view{max-width:480px;margin:0 auto;padding:30px 24px 40px}.channel-freq-display{text-align:center;margin-bottom:28px}.channel-freq-number{letter-spacing:-2px;font-family:Courier New,Courier,monospace;font-size:48px;font-weight:700;line-height:1;transition:opacity .2s}.channel-freq-number.channel-tuning{opacity:.3;animation:.12s infinite alternate freqFlicker}@keyframes freqFlicker{0%{opacity:.15}to{opacity:.45}}.channel-freq-label{color:var(--color-muted);text-transform:uppercase;letter-spacing:3px;margin-top:6px;font-family:Courier New,Courier,monospace;font-size:12px}.channel-dial{margin-bottom:32px}.channel-band{background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;-webkit-tap-highlight-color:transparent;height:32px;position:relative;overflow:hidden}.channel-ticks{position:absolute;inset:0}.channel-tick{justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;transform:translate(-50%)}.channel-tick-mark{background:var(--color-border);width:1px;height:8px}.channel-zone{background:var(--color-text);opacity:.04;transition:left .3s,width .3s;position:absolute;top:0;bottom:0}.channel-needle{background:var(--color-text);z-index:2;width:2px;transition:left .3s cubic-bezier(.25,.46,.45,.94);position:absolute;top:-2px;bottom:-2px;transform:translate(-50%)}.channel-needle:before{content:"";background:var(--color-text);border-radius:50%;width:6px;height:6px;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.channel-topic-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px;display:flex}.channel-topic-chip{letter-spacing:.5px;text-transform:lowercase;border:1px solid var(--color-subtle);color:var(--color-muted);white-space:nowrap;padding:3px 8px;font-family:Courier New,Courier,monospace;font-size:10px}.channel-labels{align-items:flex-start;margin-top:14px;padding-bottom:28px;display:flex}.channel-label{color:var(--color-muted);cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;transform-origin:top;white-space:nowrap;background:0 0;border:none;flex:1;padding:4px 0;font-family:Courier New,Courier,monospace;font-size:10px;transition:color .2s;transform:rotate(-35deg)}.channel-label-active{color:var(--color-text);font-weight:700}.channel-feed{min-height:200px}.channel-feed-header{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;margin-bottom:16px;padding-bottom:8px;display:flex}.channel-feed-title{color:var(--color-muted);text-transform:uppercase;letter-spacing:1px;font-family:Courier New,Courier,monospace;font-size:10px}.channel-feed-count{color:var(--color-muted);opacity:.6;font-family:Courier New,Courier,monospace;font-size:10px}.channel-feed-count:before{content:"("}.channel-feed-count:after{content:")"}.channel-static{flex-direction:column;align-items:center;gap:16px;padding:32px 0;display:flex}.channel-static-lines{flex-direction:row;justify-content:center;align-items:center;gap:6px;width:100%;height:48px;display:flex}.channel-static-line{background:var(--color-border);opacity:.5;transform-origin:50%;width:2px;height:100%;animation:.3s infinite alternate staticPulse}.channel-static-line:first-child{height:30%;animation-delay:0s}.channel-static-line:nth-child(2){height:60%;animation-delay:50ms}.channel-static-line:nth-child(3){height:90%;animation-delay:.1s}.channel-static-line:nth-child(4){height:100%;animation-delay:.15s}.channel-static-line:nth-child(5){height:70%;animation-delay:.2s}.channel-static-line:nth-child(6){height:40%;animation-delay:.25s}@keyframes staticPulse{0%{opacity:.2;transform:scaleY(.5)}to{opacity:.7;transform:scaleY(1)}}.channel-static-text{color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:11px;animation:.15s infinite alternate freqFlicker}.channel-loading{color:var(--color-muted);justify-content:center;gap:6px;padding:32px 0;font-size:20px;display:flex}.channel-loading-dot{animation:1s infinite dotPulse}.channel-loading-dot:nth-child(2){animation-delay:.2s}.channel-loading-dot:nth-child(3){animation-delay:.4s}.channel-empty{text-align:center;color:var(--color-muted);padding:40px 0;font-family:Courier New,Courier,monospace;font-size:12px}.channel-list{flex-direction:column;gap:2px;display:flex}.channel-item{cursor:pointer;border-bottom:1px solid var(--color-border);-webkit-tap-highlight-color:transparent;padding:12px 0;transition:background .15s}.channel-item:last-child{border-bottom:none}.channel-item-row{align-items:flex-start;gap:10px;display:flex}.channel-item-indicator{color:var(--color-muted);opacity:.5;flex-shrink:0;margin-top:3px;font-size:10px}.channel-item-content{flex:1;min-width:0}.channel-item-title{margin-bottom:3px;font-size:14px;font-weight:500;line-height:1.4}.channel-item-meta{color:var(--color-muted);gap:6px;font-family:Courier New,Courier,monospace;font-size:11px;display:flex}.channel-item-meta span:not(:last-child):after{content:"·";opacity:.4;margin-left:6px}.channel-item-detail{padding:10px 0 4px 20px;animation:.2s detailFade}@keyframes detailFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.channel-item-snippet{color:var(--color-muted);margin:0 0 8px;font-size:13px;line-height:1.5}.channel-item-link{color:var(--color-text);opacity:.6;font-family:Courier New,Courier,monospace;font-size:11px;text-decoration:none;transition:opacity .15s}.channel-item-link:hover{opacity:1}.channel-item-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;display:flex}.channel-follow-btn{letter-spacing:.3px;border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;background:0 0;padding:4px 10px;font-family:Courier New,Courier,monospace;font-size:11px;transition:color .15s,border-color .15s,background .15s}.channel-follow-btn:hover{color:var(--color-text);border-color:var(--color-text)}.channel-follow-btn--on{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.channel-follow-btn--on:hover{background:var(--color-bg);color:var(--color-text)}.channel-footer{text-align:center;color:var(--color-muted);opacity:.5;margin-top:20px;padding-top:12px;font-family:Courier New,Courier,monospace;font-size:10px}@media (width<=768px){.channel-view{padding:20px 16px 40px}.channel-freq-number{font-size:40px}.channel-label{font-size:9px}.channel-labels{padding-bottom:24px}}.channel-follow-btn,.channel-item{touch-action:manipulation}.channel-switch{justify-content:center;align-items:center;gap:10px;margin:-8px 0 22px;display:flex}.channel-switch-label{color:var(--color-muted);letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:4px 2px;font-family:Courier New,Courier,monospace;font-size:10px}.channel-switch-label-active{color:var(--color-text)}.channel-switch-label:disabled{opacity:.4;cursor:default}.channel-switch-track{background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;width:44px;height:20px;padding:0;position:relative}.channel-switch-track:disabled{opacity:.4;cursor:default}.channel-switch-knob{background:var(--color-text);width:18px;height:14px;transition:transform .2s cubic-bezier(.25,.46,.45,.94);position:absolute;top:2px;left:2px}.channel-switch-track-right .channel-switch-knob{transform:translate(20px)}.channel-air{margin-bottom:28px}.channel-air-live{letter-spacing:1px;text-transform:uppercase;color:var(--color-text);align-items:center;gap:8px;margin-left:auto;font-family:Courier New,Courier,monospace;font-size:10px;display:inline-flex}.channel-air-note{color:var(--color-muted);padding:8px 0;font-family:Courier New,Courier,monospace;font-size:11px}.channel-air-list{margin:0;padding:0;list-style:none}.channel-air-row{border-bottom:1px solid var(--color-border)}.channel-air-row:last-child{border-bottom:none}.channel-air-tune{width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:flex-start;gap:10px;padding:11px 0;display:flex}.channel-air-tune:hover .channel-air-verb{color:var(--color-text)}.channel-air-mark{color:var(--color-muted);flex-shrink:0;width:18px;margin-top:2px;font-size:12px}.channel-air-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.channel-air-title{font-size:14px;font-weight:500;line-height:1.4}.channel-air-meta{color:var(--color-muted);flex-wrap:wrap;gap:6px;font-family:Courier New,Courier,monospace;font-size:11px;display:flex}.channel-air-meta span:not(:last-child):after{content:"·";opacity:.4;margin-left:6px}.channel-air-verb{letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);border:1px solid var(--color-border);flex-shrink:0;margin-top:1px;padding:3px 8px;font-family:Courier New,Courier,monospace;font-size:10px}.channel-air-tune-live .channel-air-verb,.channel-air-tune-live:hover .channel-air-verb{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.channel-wave{flex-shrink:0;align-items:flex-end;gap:2px;width:18px;height:14px;margin-top:2px;display:inline-flex}.channel-wave i{background:var(--color-text);width:2px;height:30%;animation:1.1s ease-in-out infinite channel-wave;display:block}.channel-wave i:nth-child(2){animation-delay:.15s}.channel-wave i:nth-child(3){animation-delay:.3s}.channel-wave i:nth-child(4){animation-delay:.45s}.channel-wave i:nth-child(5){animation-delay:.6s}@keyframes channel-wave{0%,to{height:30%}50%{height:100%}}.channel-air-progress{border:1px solid var(--color-border);cursor:pointer;height:18px;margin:0 0 10px 28px;position:relative}.channel-air-progress-fill{background:var(--color-text);opacity:.25;height:100%;transition:width .25s linear}.channel-air-time{color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:10px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.channel-air-more{letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:4px 0;font-family:Courier New,Courier,monospace;font-size:10px}.channel-air-more:hover{color:var(--color-text)}@media (prefers-reduced-motion:reduce){.channel-wave i{height:60%;animation:none}}.channel-air-volume{color:var(--color-muted);align-items:center;gap:6px;margin-left:12px;font-size:10px;display:inline-flex}.channel-air-volume input[type=range]{appearance:none;background:var(--color-border);cursor:pointer;outline:none;width:72px;height:2px}.channel-air-volume input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-text);border:none;width:10px;height:10px}.channel-air-volume input[type=range]::-moz-range-thumb{background:var(--color-text);border:none;border-radius:0;width:10px;height:10px}.watch-intro{color:var(--color-muted);margin:-8px 0 16px;font-size:13px;line-height:1.5}.watch-search{margin-bottom:20px;position:relative}.watch-search-input{width:100%;font:inherit;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);outline:none;padding:10px 12px;font-size:14px}.watch-search-input:focus{border-color:var(--color-text)}.watch-results{z-index:5;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:4px 4px 0 var(--color-border);border-top:none;margin:0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0}.watch-result{width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:10px;padding:9px 12px;font-size:13px;display:flex}.watch-result:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.watch-result:disabled{opacity:.5;cursor:default}.watch-result-ticker{min-width:56px;font-family:Courier New,Courier,monospace;font-weight:700}.watch-result-name{flex:1}.watch-result-on,.watch-result-note{color:var(--color-muted);padding:8px 12px;font-size:11px}.watch-empty{color:var(--color-muted);margin:0;font-size:13px}.watch-cards{flex-direction:column;gap:18px;display:flex}.watch-card{border:1px solid var(--color-border);background:var(--color-bg);padding:14px 16px 12px}.watch-card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.watch-card-title{flex-direction:column;gap:3px;display:flex}.watch-card-name{font-size:15px;font-weight:700}.watch-card-ticker{letter-spacing:.5px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:11px}.watch-card-remove{color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:13px}.watch-card-remove:hover{color:var(--color-text)}.watch-loading{padding:6px 0}.watch-quote-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;font-family:Courier New,Courier,monospace;font-size:15px;display:flex}.watch-quote-price{font-weight:700}.watch-quote-change.up:before{content:"▲ ";font-size:9px}.watch-quote-change.down:before{content:"▼ ";font-size:9px}.watch-quote-asof{color:var(--color-muted);font-size:11px}.watch-spark{color:var(--color-text);margin-left:auto;display:inline-flex}.watch-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.watch-filings{margin-bottom:10px}.watch-filing-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.watch-filing{gap:12px;font-size:13px;line-height:1.5;display:flex}.watch-filing-date{width:96px;color:var(--color-muted);flex:none;padding-top:2px;font-family:Courier New,Courier,monospace;font-size:11px}.watch-filing-text{color:var(--color-text);border-bottom:1px solid #0000;text-decoration:none}.watch-filing-text:hover{border-bottom-color:var(--color-text)}.watch-filing-form{letter-spacing:.5px;font-family:Courier New,Courier,monospace;font-size:11px;font-weight:700}.watch-insiders{color:var(--color-muted);margin:8px 0 0;font-size:12px}.watch-explain-toggle{border:none;border-top:1px solid var(--color-border);width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:baseline;gap:10px;margin-top:6px;padding:8px 0 2px;display:flex}.watch-explain-toggle .watch-label{color:var(--color-text)}.watch-explain-hint{color:var(--color-muted);flex:1;font-size:12px;font-style:italic}.watch-explain-chevron{color:var(--color-muted);font-family:Courier New,Courier,monospace}.watch-explainer{flex-direction:column;gap:16px;padding:10px 0 4px;animation:.3s fade-in;display:flex}.watch-section{flex-direction:column;gap:8px;display:flex}.watch-text{margin:0;font-size:14px;line-height:1.7}.watch-terms{flex-direction:column;gap:10px;margin:0;display:flex}.watch-term dt{font-size:13px;font-weight:600}.watch-term dd{border-left:2px solid var(--color-border);margin:3px 0 0;padding-left:14px;font-size:13px;line-height:1.6}.watch-list{margin:0;padding-left:18px;font-size:14px;line-height:1.6}.watch-list li{margin-bottom:4px}.watch-asof,.watch-note{color:var(--color-muted);margin:0;font-size:12px;font-style:italic;line-height:1.5}@media (width<=480px){.watch-filing{flex-direction:column;gap:2px}.watch-filing-date{width:auto}.watch-spark{margin-left:0}}.watch-holders{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.watch-holder,.whales-row{grid-template-columns:1fr auto auto;align-items:baseline;gap:12px;font-size:13px;line-height:1.5;display:grid}.watch-holder-fund,.whales-issuer{font-weight:600}.watch-holder-figs,.whales-figs{color:var(--color-muted);white-space:nowrap;font-family:Courier New,Courier,monospace;font-size:12px}.watch-holder-change{letter-spacing:.3px;text-transform:uppercase;color:var(--color-muted);white-space:nowrap;text-align:right;min-width:90px;font-family:Courier New,Courier,monospace;font-size:11px}.watch-holder-change.new,.watch-holder-change.added{color:var(--color-text)}.whales{border-top:1px solid var(--color-border);margin-top:28px;padding-top:18px}.whales-head{align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.whales-head .watch-label{color:var(--color-text)}.whales-select{width:100%;font:inherit;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);margin-bottom:14px;padding:9px 12px;font-size:14px}.whales-body{flex-direction:column;gap:12px;display:flex}.whales-list{flex-direction:column;gap:7px;margin:0;padding-left:22px;display:flex}.whales-exited{margin:0;font-size:13px;line-height:1.6}@media (width<=480px){.watch-holder,.whales-row{grid-template-columns:1fr auto}.watch-holder-change{text-align:left;grid-column:1/-1;min-width:0}}.watch-brief-headline{margin:0;font-size:15px;font-weight:600;line-height:1.6}.world-dashboard{background:var(--color-bg);flex-direction:column;width:100%;max-width:900px;min-height:100vh;margin:0 auto;padding:40px;display:flex;overflow-y:auto}.dashboard-loading{height:100vh;color:var(--color-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.dashboard-error{border:1px solid var(--color-border);text-align:center;margin-bottom:30px;padding:12px;font-size:14px}.dashboard-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;padding-bottom:20px;display:flex}.dashboard-nav-buttons{flex-shrink:0;gap:0;display:flex}.dashboard-header .back-button{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border);cursor:pointer;white-space:nowrap;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.dashboard-header .back-button+.back-button{border-left:none}.dashboard-header .back-button:hover{background:var(--color-text);color:var(--color-bg)}.dashboard-title{letter-spacing:-.5px;flex-shrink:0;font-size:28px;font-weight:700}.dashboard-view-controls{border:2px solid var(--color-border);flex-shrink:0;gap:0;display:flex}.view-btn{background:var(--color-bg);color:var(--color-text);cursor:pointer;border:none;border-right:2px solid var(--color-border);padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s}.view-btn:last-child{border-right:none}.view-btn:hover{background:var(--color-surface-hover)}.view-btn.active{background:var(--color-border);color:var(--color-surface)}.dashboard-date{color:var(--color-muted);white-space:nowrap;margin-bottom:28px;font-family:Courier New,Courier,monospace;font-size:14px}.dashboard-content{flex:1}.dashboard-section{margin-bottom:50px}.section-title{text-transform:uppercase;letter-spacing:1px;color:var(--color-muted);margin-bottom:20px;font-size:12px;font-weight:700}.section-subtitle{letter-spacing:.5px;text-transform:lowercase;color:var(--color-subtle);font-size:10px;font-weight:500}.headlines-toggle-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.headlines-toggle-row .section-title{margin-bottom:0}.headlines-toggle{border:1px solid var(--color-border);display:flex}.headlines-toggle-btn{background:var(--color-bg);color:var(--color-muted);letter-spacing:.5px;text-transform:lowercase;cursor:pointer;border:none;border-right:1px solid var(--color-border);padding:6px 12px;font-family:inherit;font-size:11px;font-weight:600;transition:all .15s}.headlines-toggle-btn:last-child{border-right:none}.headlines-toggle-btn:hover:not(:disabled):not(.active){color:var(--color-text);background:var(--color-surface-hover)}.headlines-toggle-btn.active{background:var(--color-text);color:var(--color-bg)}.headlines-toggle-btn:disabled{opacity:.4;cursor:not-allowed}.headlines-empty{color:var(--color-muted);padding:20px 4px;font-size:13px;font-style:italic;line-height:1.6}.data-grid{flex-direction:column;gap:12px;display:flex}.data-row{grid-template-columns:120px 1fr 120px;gap:20px;font-family:Courier New,Courier,monospace;font-size:16px;line-height:1.4;display:grid}.data-label{font-weight:600}.data-value{text-align:right;font-weight:400}.data-change{text-align:right;color:var(--color-muted);font-weight:400}.data-unit{color:var(--color-muted);white-space:nowrap;font-size:.85em}.headlines-list{flex-direction:column;gap:16px;display:flex}.headline-item{cursor:pointer;border-bottom:1px solid #0000;gap:12px;padding:8px 0;font-size:15px;line-height:1.5;transition:background .15s;display:flex}.headline-item:hover{background:var(--color-surface-hover)}.headline-item.headline-expanded{border-bottom:1px solid var(--color-subtle);margin-bottom:4px;padding-bottom:16px}.headline-bullet{color:var(--color-text);flex-shrink:0}.headline-content{flex:1;min-width:0}.headline-text{display:block}.headline-details{margin-top:10px}.headline-description{color:var(--color-muted);margin-bottom:10px;font-size:13px;line-height:1.5}.headline-meta{align-items:center;gap:16px;font-size:12px;display:flex}.headline-source{color:var(--color-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.headline-link{color:var(--color-text);border-bottom:1px solid var(--color-border);padding-bottom:1px;font-weight:600;text-decoration:none;transition:all .15s}.headline-link:hover{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text);padding:2px 6px}.signal-header{text-align:center;margin-bottom:30px}.signal-score{letter-spacing:-2px;font-family:Courier New,Courier,monospace;font-size:72px;font-weight:700;line-height:1}.signal-label{text-transform:uppercase;letter-spacing:2px;margin-top:10px;font-size:16px;font-weight:600}.signal-subtitle{color:var(--color-muted);margin-top:5px;font-family:Courier New,Courier,monospace;font-size:12px}.signal-reading{color:var(--color-text);opacity:.7;margin-top:14px;font-family:Courier New,Courier,monospace;font-size:13px}.signal-pipe{max-width:280px;margin:20px auto 0}.signal-pipe-track{background:var(--color-subtle);height:3px;position:relative}.signal-pipe-center{background:var(--color-muted);width:1px;height:13px;position:absolute;top:-5px;left:50%;transform:translate(-.5px)}.signal-pipe-fill{background:var(--color-text);height:100%;transition:left .6s,width .6s;position:absolute;top:0}.signal-pipe-marker{background:var(--color-text);width:3px;height:13px;transition:left .6s;position:absolute;top:-5px;transform:translate(-1.5px)}.signal-pipe-labels{color:var(--color-muted);justify-content:space-between;margin-top:5px;font-family:Courier New,Courier,monospace;font-size:9px;display:flex}.signal-pipe-labels span:nth-child(2){text-align:center}.component-label-group{flex-direction:column;gap:2px;display:flex}.component-weight{color:var(--color-muted);font-size:10px}.chart-container{justify-content:center;margin-bottom:30px;display:flex}.components-grid{flex-direction:column;gap:20px;display:flex}.component-row{cursor:pointer;-webkit-tap-highlight-color:transparent;grid-template-columns:120px 140px 100px;align-items:center;gap:20px;font-family:Courier New,Courier,monospace;font-size:14px;display:grid}.component-row-expanded{padding-bottom:6px}.component-desc-inline{color:var(--color-muted);grid-column:1/-1;padding-top:4px;font-size:11px;line-height:1.4;animation:.2s descFadeIn}@keyframes descFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.component-label{font-weight:600}.component-sparkline{align-items:center;display:flex;overflow:visible}.component-change{text-align:right;color:var(--color-muted)}.methodology-note{color:var(--color-muted);text-align:center;border-top:1px solid var(--color-subtle);max-width:600px;margin:0 auto;padding:20px;font-size:12px;line-height:1.6}.market-ai-trigger{text-transform:uppercase;letter-spacing:.5px;width:100%;color:var(--color-muted);border:1px solid var(--color-border);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:12px 16px;font-family:Courier New,Courier,monospace;font-size:11px;font-weight:600;transition:all .15s;display:flex}.market-ai-trigger:hover:not(:disabled){background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.market-ai-trigger:disabled{cursor:wait;opacity:.5}.market-ai-trigger-icon{font-size:13px;line-height:1}.market-ai-commentary{border:1px solid var(--color-border);padding:16px 20px;animation:.3s aiFadeIn}@keyframes aiFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.market-ai-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.market-ai-label{text-transform:uppercase;letter-spacing:.8px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700}.market-ai-close{color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:12px;line-height:1}.market-ai-close:hover{color:var(--color-text)}.market-ai-summary{color:var(--color-text);margin:0 0 12px;font-size:14px;line-height:1.65}.market-ai-signals{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.market-ai-signals li{color:var(--color-text);padding-left:16px;font-size:13px;line-height:1.55;position:relative}.market-ai-signals li:before{content:"-";color:var(--color-muted);position:absolute;left:0}.market-ai-context{color:var(--color-muted);border-top:1px solid var(--color-border);margin:0;padding-top:8px;font-size:13px;font-style:italic;line-height:1.55}.market-ai-skeleton{flex-direction:column;gap:10px;display:flex}.market-ai-skeleton .skeleton-line{background:var(--color-surface,var(--color-subtle));border-radius:2px;height:13px;animation:1.2s ease-in-out infinite skeletonShimmer}@keyframes skeletonShimmer{0%{opacity:.3}50%{opacity:.6}to{opacity:.3}}.dashboard-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-top:20px;padding-top:20px;display:flex}.update-time{color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:12px}.refresh-button{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;border-radius:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:all .2s;display:flex}.refresh-button:hover{background:var(--color-border);color:var(--color-surface)}.refresh-button:active{transform:rotate(90deg)}@media (width<=768px){.world-dashboard{width:100%;max-width:100vw;min-height:100vh;padding:20px 16px;overflow-x:hidden}.dashboard-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:10px;padding-bottom:16px}.dashboard-nav-buttons{order:0}.dashboard-header .back-button{padding:6px 12px;font-size:12px}.dashboard-title{flex-basis:auto;order:1;font-size:22px}.dashboard-view-controls{order:2;align-self:flex-start}.dashboard-date{margin-bottom:20px;font-size:12px}.data-row{grid-template-columns:80px 1fr 80px;gap:8px;font-size:13px}.data-label{font-size:12px}.data-value{font-size:13px}.data-change{font-size:12px}.headline-item{padding:6px 0;font-size:14px}.headline-description{font-size:12px}.headline-meta{font-size:11px}.signal-score{font-size:48px}.component-row{grid-template-columns:80px 1fr 70px;gap:8px;font-size:12px}.component-sparkline{min-width:0;overflow:hidden}.component-sparkline svg{max-width:100px;height:25px;width:100%!important}.chart-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.chart-container svg{min-width:280px;width:100%!important;height:auto!important}.dashboard-section{margin-bottom:32px}.methodology-note{padding:12px;font-size:11px}}@media (width<=380px){.world-dashboard{padding:16px 12px}.dashboard-title{font-size:18px}.data-row{grid-template-columns:64px 1fr 64px;gap:6px;font-size:12px}.component-row{grid-template-columns:64px 1fr 60px;gap:6px;font-size:11px}.signal-score{font-size:40px}}.world-dashboard{scrollbar-width:none}.world-dashboard::-webkit-scrollbar{width:6px}.world-dashboard::-webkit-scrollbar-track{background:0 0}.world-dashboard::-webkit-scrollbar-thumb{background:0 0;border-radius:3px;transition:background .3s}.world-dashboard:hover::-webkit-scrollbar-thumb{background:var(--color-subtle)}.world-dashboard:hover::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.world-dashboard.is-scrolling::-webkit-scrollbar-thumb{background:var(--color-subtle)}.world-dashboard.is-scrolling{scrollbar-width:thin;scrollbar-color:var(--color-subtle) transparent}.headline-item,.headlines-toggle-btn,.headline-link,.world-nav .nav-button,.refresh-button{touch-action:manipulation}.data-row-tappable{cursor:pointer;-webkit-tap-highlight-color:transparent}.data-row-expanded{padding-bottom:6px}.data-desc-inline{color:var(--color-muted);grid-column:1/-1;padding-top:4px;font-size:11px;line-height:1.4;animation:.2s descFadeIn}.data-sparkline{flex-direction:column;gap:2px;margin:6px 0 10px;display:flex}.data-sparkline-caption{letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);font-size:10px}.wordgrow{flex-direction:column;flex:1;align-items:stretch;gap:14px;min-height:0;padding:18px;display:flex;overflow-y:auto}.wordgrow-progress{color:var(--color-muted);justify-content:space-between;font-size:11px;font-weight:600;display:flex}.wordgrow-xp{color:var(--color-text)}.wordgrow-card{border:2px solid var(--color-border);box-shadow:6px 6px 0 var(--color-border);background:var(--color-surface);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:220px;padding:32px 24px;animation:.15s ease-out wordgrow-turn;display:flex}.wordgrow-card.flipped{cursor:default}@keyframes wordgrow-turn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.wordgrow-word{color:var(--color-text);font-size:24px;font-weight:700}.wordgrow-word.small{font-size:16px}.wordgrow-pos{color:var(--color-muted);font-size:12px;font-style:italic}.wordgrow-phonetic{letter-spacing:.5px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:13px}.wordgrow-phonetic.small{font-size:11px}.wordgrow-field{text-transform:uppercase;letter-spacing:.5px;color:var(--color-bg);background:var(--color-text);padding:1px 5px;font-size:9px;font-weight:600}.wordgrow-hint{color:var(--color-subtle);margin-top:16px;font-size:11px}.wordgrow-def{color:var(--color-text);font-size:13px;line-height:1.5}.wordgrow-example{color:var(--color-muted);border-left:2px solid var(--color-subtle);text-align:left;padding-left:8px;font-size:12px;font-style:italic;line-height:1.5}.wordgrow-context{color:var(--color-muted);font-size:10px}.wordgrow-actions{gap:10px;display:flex}.wordgrow-btn{cursor:pointer;border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);flex:1;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.wordgrow-btn:hover{box-shadow:3px 3px 0 var(--color-border)}.wordgrow-btn.kept{background:var(--color-text);color:var(--color-bg)}.wordgrow-done{text-align:center;color:var(--color-muted);padding:40px 20px}.wordgrow-done-line{color:var(--color-text);margin:4px 0;font-size:14px}.wordgrow-xp-line{color:var(--color-muted);margin:4px 0;font-size:12px}.wordgrow-secondary{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;background:0 0;margin-top:14px;padding:6px 14px;font-family:inherit;font-size:11px;font-weight:600;transition:all .2s}.wordgrow-secondary:hover{border-color:var(--color-border);color:var(--color-text)}.wordbank-overlay{z-index:9999;padding-top:var(--safe-top,0px);padding-bottom:var(--safe-bottom,0px);background:#0006;justify-content:center;align-items:center;animation:.15s ease-out wordbank-fade;display:flex;position:fixed;inset:0}@keyframes wordbank-fade{0%{opacity:0}to{opacity:1}}.wordbank-panel{width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 80px - var(--safe-top,0px) - var(--safe-bottom,0px));background:var(--color-surface);border:2px solid var(--color-border);box-shadow:8px 8px 0 var(--color-border);flex-direction:column;animation:.2s ease-out wordbank-slide;display:flex}@keyframes wordbank-slide{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.wordbank-header{border-bottom:2px solid var(--color-border);flex-shrink:0;align-items:center;gap:10px;padding:16px 18px;display:flex}.wordbank-header h2{color:var(--color-text);flex:1;margin:0;font-size:18px;font-weight:700}.wordbank-count{color:var(--color-muted);font-size:12px;font-weight:500}.wordbank-close{cursor:pointer;color:var(--color-muted);background:0 0;border:none;padding:2px 6px;font-size:20px;line-height:1}.wordbank-close:hover{color:var(--color-text)}.wordbank-tabs{border-bottom:2px solid var(--color-border);flex-shrink:0;display:flex}.wordbank-tab{background:var(--color-surface);color:var(--color-muted);cursor:pointer;border:none;border-right:2px solid var(--color-border);flex:1;padding:10px 16px;font-size:13px;font-weight:600;transition:all .2s}.wordbank-tab:last-child{border-right:none}.wordbank-tab.active{background:var(--color-text);color:var(--color-bg)}.wordbank-tab:hover:not(.active){background:var(--color-surface-hover)}.wordbank-search{border-bottom:1px solid var(--color-subtle);flex-shrink:0;padding:12px 18px}.wordbank-search input{border:2px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);outline:none;padding:8px 12px;font-family:inherit;font-size:13px}.wordbank-search input:focus{box-shadow:2px 2px 0 var(--color-border)}.wordbank-search input::placeholder{color:var(--color-muted)}.wordbank-list{flex:1;min-height:0;overflow-y:auto}.wordbank-list::-webkit-scrollbar{width:6px}.wordbank-list::-webkit-scrollbar-track{background:var(--color-surface)}.wordbank-list::-webkit-scrollbar-thumb{background:var(--color-subtle)}.wordbank-empty{text-align:center;color:var(--color-muted);padding:40px 20px}.wordbank-empty-icon{color:var(--color-subtle);margin-bottom:12px;font-size:28px}.wordbank-empty p{margin:4px 0;font-size:14px}.wordbank-empty-hint{color:var(--color-muted);margin-top:8px!important;font-size:12px!important}.wordbank-item{border-bottom:1px solid var(--color-subtle);padding:12px 18px;transition:background .15s}.wordbank-item:hover{background:var(--color-surface-hover)}.wordbank-item-header{cursor:pointer;justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.wordbank-item-main{align-items:baseline;gap:6px;display:flex}.wordbank-item-word{color:var(--color-text);font-size:15px;font-weight:700}.wordbank-item-pos{color:var(--color-muted);font-size:11px;font-style:italic}.wordbank-item-phonetic{letter-spacing:.3px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:11px}.wordbank-polishing{color:var(--color-muted);letter-spacing:.3px;margin:8px 20px 0;font-size:11px;animation:1.5s ease-in-out infinite pulse-fade}.wordbank-item-meta{align-items:center;gap:8px;display:flex}.wordbank-item-field{text-transform:uppercase;letter-spacing:.5px;color:var(--color-bg);background:var(--color-text);padding:1px 5px;font-size:9px;font-weight:600}.wordbank-item-date{color:var(--color-muted);font-size:11px}.wordbank-item-def{color:var(--color-text);opacity:.85;font-size:12px;line-height:1.45}.wordbank-item-expanded{border-top:1px solid var(--color-subtle);margin-top:8px;padding-top:8px}.wordbank-detail{color:var(--color-muted);margin-bottom:4px;font-size:11px;line-height:1.4}.wordbank-detail-label{color:var(--color-text);font-weight:600}.wordbank-example{border-left:2px solid var(--color-subtle);margin-top:6px;margin-bottom:6px;padding-left:8px;font-style:italic}.wordbank-remove{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;background:0 0;margin-top:8px;padding:5px 12px;font-size:11px;font-weight:600;transition:all .2s}.wordbank-remove:hover{border-color:var(--color-border);color:var(--color-text)}.wordbank-add-btn{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;margin-top:6px;padding:5px 12px;font-size:11px;font-weight:600;transition:all .2s}.wordbank-add-btn:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.wordbank-add-btn.already-saved{opacity:.5;cursor:default}@media (width<=768px){.wordbank-panel{max-width:calc(100vw - 16px);max-height:calc(100vh - 40px)}.wordbank-header h2{font-size:16px}.wordbank-item{padding:10px 14px}.wordbank-item-word{font-size:14px}}.admin-review{flex-direction:column;gap:12px;display:flex}.admin-review-status{color:var(--color-muted);font-size:13px;line-height:1.5}.admin-review-error{border:1px solid var(--color-border);color:var(--color-text);padding:8px 10px;font-size:12px}.admin-report{border:1px solid var(--color-subtle);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.admin-report-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.admin-report-title{font-size:13px;font-weight:600;line-height:1.4}.admin-report-count{color:var(--color-muted);white-space:nowrap;flex-shrink:0;font-size:11px}.admin-report-meta{color:var(--color-muted);flex-wrap:wrap;gap:4px 12px;font-size:11px;display:flex}.admin-report-reasons{color:var(--color-text);font-size:12px;line-height:1.5}.admin-report-reasons p{margin:0}.admin-report-link{color:var(--color-muted);font-size:11px;text-decoration:none}.admin-report-link:hover{color:var(--color-text)}.admin-report-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-report-confirm{color:var(--color-text);font-size:12px}.admin-btn{border:1px solid var(--color-border);background:var(--color-bg);min-height:36px;color:var(--color-text);cursor:pointer;padding:8px 12px;font-family:inherit;font-size:12px}.admin-btn:hover:not(:disabled){background:var(--color-surface)}.admin-btn:disabled{opacity:.5;cursor:default}.admin-btn--quiet{border-color:var(--color-subtle);color:var(--color-muted)}.admin-btn--danger{color:#c0504d;border-color:#c0504d}.admin-report-edit{flex-direction:column;gap:8px;display:flex}.admin-report-edit-label{color:var(--color-muted);flex-direction:column;gap:4px;font-size:11px;display:flex}.admin-report-edit-label input,.admin-report-edit-label select{border:1px solid var(--color-subtle);background:var(--color-bg);color:var(--color-text);padding:8px 10px;font-family:inherit;font-size:12px}.account-overlay{z-index:10000;background:#0000004d;animation:.2s account-overlay-in;position:fixed;inset:0}@keyframes account-overlay-in{0%{opacity:0}to{opacity:1}}.account-panel{background:var(--color-bg);border-right:2px solid var(--color-border);width:340px;max-width:85vw;padding-top:var(--safe-top,0px);padding-bottom:var(--safe-bottom,0px);z-index:10001;flex-direction:column;animation:.25s account-slide-in;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}@keyframes account-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.account-header{border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:8px;padding:20px;display:flex}.account-header h2{letter-spacing:-.3px;flex:1;margin:0;font-size:16px;font-weight:700}.account-back{color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0 4px;font-family:inherit;font-size:18px}.account-close{color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-family:inherit;font-size:20px;line-height:1;transition:color .15s}.account-close:hover{color:var(--color-text)}.account-error{background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text);padding:10px 20px;font-family:Courier New,Courier,monospace;font-size:12px}.account-sections{flex-direction:column;gap:24px;padding:12px 20px 40px;display:flex}.account-section{flex-direction:column;gap:10px;display:flex}.account-section-label{text-transform:uppercase;letter-spacing:1px;color:var(--color-muted);border-bottom:1px solid var(--color-subtle);justify-content:space-between;align-items:center;padding-bottom:6px;font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700;display:flex}.account-info-row{justify-content:space-between;align-items:center;padding:4px 0;display:flex}.account-info-key{color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:12px}.account-info-value{color:var(--color-text);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:60%;font-size:13px;font-weight:600;overflow:hidden}.account-topics{flex-direction:column;gap:6px;padding-top:4px;display:flex}.account-topic-tags{flex-wrap:wrap;gap:4px;display:flex}.account-topic-tag{color:var(--color-text);border:1px solid var(--color-border);letter-spacing:.3px;padding:3px 8px;font-family:Courier New,Courier,monospace;font-size:10px}.account-plan-badge{text-transform:uppercase;letter-spacing:1px;border:2px solid var(--color-border);color:var(--color-muted);width:fit-content;padding:4px 12px;font-family:Courier New,Courier,monospace;font-size:12px;font-weight:700;display:inline-block}.account-plan-badge--pro{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.account-plan-desc{color:var(--color-muted);margin:0;font-size:12px;line-height:1.5}.account-upgrade-options{gap:8px;display:flex}.account-upgrade-btn{border:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:2px;padding:12px 8px;font-family:inherit;transition:all .15s;display:flex}.account-upgrade-btn:hover:not(:disabled){background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.account-upgrade-btn--annual{border-color:var(--color-text)}.account-upgrade-btn:disabled{opacity:.5;cursor:not-allowed}.upgrade-price{font-size:16px;font-weight:700}.upgrade-label{color:inherit;opacity:.7;font-family:Courier New,Courier,monospace;font-size:10px}.account-action-btn{border:1px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);cursor:pointer;text-align:left;padding:12px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.account-action-btn:hover:not(:disabled){background:var(--color-surface);border-color:var(--color-text)}.account-action-btn:disabled{opacity:.4;cursor:not-allowed}.account-action-btn--primary{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text);text-align:center}.account-action-btn--primary:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.account-action-btn--logout{color:var(--color-muted)}.account-action-btn--danger{color:#c0392b;border-color:#c0392b}.account-action-btn--danger:hover:not(:disabled){color:#fff;background:#c0392b;border-color:#c0392b}.account-action-btn--danger:disabled{opacity:.3}.account-email-toggle{border:1px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);cursor:pointer;text-align:left;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;font-family:inherit;transition:all .15s;display:flex}.account-email-toggle:hover:not(:disabled){background:var(--color-surface);border-color:var(--color-text)}.account-email-toggle:disabled{opacity:.5;cursor:not-allowed}.account-email-toggle-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.account-email-toggle-title{color:var(--color-text);letter-spacing:.3px;font-size:13px;font-weight:600}.account-email-toggle-desc{color:var(--color-muted);letter-spacing:.2px;font-size:11px;line-height:1.5}.account-email-switch{border:2px solid var(--color-text);background:var(--color-bg);flex-shrink:0;width:38px;height:22px;margin-top:2px;transition:background .15s;position:relative}.account-email-switch.on{background:var(--color-text)}.account-email-switch-knob{background:var(--color-text);width:14px;height:14px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.account-email-switch.on .account-email-switch-knob{background:var(--color-bg);transform:translate(16px)}.account-deck-style{border:1px solid var(--color-border);background:var(--color-bg);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.account-deck-style-options{border:1px solid var(--color-border);align-self:flex-start;gap:0;display:flex;overflow:hidden}.account-deck-style-btn{text-transform:uppercase;letter-spacing:.3px;color:var(--color-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-family:Courier New,Courier,monospace;font-size:11px;font-weight:600;transition:all .15s}.account-deck-style-btn:not(:last-child){border-right:1px solid var(--color-border)}.account-deck-style-btn:hover:not(:disabled):not(.active){color:var(--color-text)}.account-deck-style-btn.active{background:var(--color-text);color:var(--color-bg)}.account-deck-style-btn:disabled{opacity:.5;cursor:not-allowed}.account-deck-style-desc{color:var(--color-muted);letter-spacing:.2px;margin:0;font-size:11px;line-height:1.5}.account-email-saved{color:var(--color-muted);letter-spacing:.5px;text-transform:lowercase;margin:6px 0 0;font-size:11px}.account-help-intro{color:var(--color-muted);margin:0;font-size:13px;line-height:1.5}.account-help-textarea{border:2px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);resize:vertical;box-sizing:border-box;outline:none;min-height:100px;padding:12px;font-family:inherit;font-size:14px;transition:border-color .15s}.account-help-textarea:focus{border-color:var(--color-text)}.account-help-textarea::placeholder{color:var(--color-subtle)}.account-help-success{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:24px 0;display:flex}.account-help-success-icon{color:var(--color-text);font-size:28px}.account-help-success p{color:var(--color-muted);margin:0;font-size:13px;line-height:1.5}.account-delete-warning{color:var(--color-text);border:2px solid #c0392b;padding:14px;font-size:13px;line-height:1.5}.account-delete-prompt{color:var(--color-muted);margin:0;font-size:13px}.account-delete-input{border:2px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);letter-spacing:2px;text-align:center;box-sizing:border-box;outline:none;padding:12px;font-family:Courier New,Courier,monospace;font-size:16px;transition:border-color .15s}.account-delete-input:focus{border-color:#c0392b}.account-footer-info{text-align:center;color:var(--color-muted);opacity:.4;padding-top:12px;font-family:Courier New,Courier,monospace;font-size:10px}.account-topics-header{justify-content:space-between;align-items:center;display:flex}.account-topics-edit-link{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;letter-spacing:.3px;padding:4px 10px;font-family:Courier New,Courier,monospace;font-size:11px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.account-topics-edit-link:hover{background:var(--color-surface);border-color:var(--color-text)}.account-weight-list{flex-direction:column;gap:10px;margin-top:4px;display:flex}.account-weight-row{align-items:center;gap:10px;display:flex}.account-weight-row--other{opacity:.65}.account-weight-topic{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;min-width:100px;font-family:Courier New,Courier,monospace;font-size:11px;overflow:hidden}.account-weight-bar-track{background:var(--color-subtle);flex:1;height:6px;position:relative;overflow:hidden}.account-weight-bar-fill{background:var(--color-text);min-width:2px;height:100%;transition:width .4s;position:absolute;top:0;left:0}.account-weight-bar-fill--other{background:var(--color-muted)}.account-weight-value{color:var(--color-muted);text-align:right;flex-shrink:0;min-width:36px;font-family:Courier New,Courier,monospace;font-size:11px}.account-topic-saved-notice{color:var(--color-text);border:1px solid var(--color-border);text-align:center;padding:8px 12px;font-family:Courier New,Courier,monospace;font-size:12px;font-weight:600;animation:2s forwards account-topic-saved-fade}@keyframes account-topic-saved-fade{0%,60%{opacity:1}to{opacity:0}}.account-topic-counter{color:var(--color-text);letter-spacing:0;text-transform:none;font-size:12px;font-weight:700}.account-topic-search{background:var(--color-bg);border:1px solid var(--color-border);width:100%;color:var(--color-text);letter-spacing:.3px;margin-top:6px;padding:9px 12px;font-family:inherit;font-size:13px}.account-topic-search::placeholder{color:var(--color-muted)}.account-topic-search:focus{border-color:var(--color-text);outline:none}.account-topic-search-empty{color:var(--color-muted);letter-spacing:.3px;margin:10px 0 0;font-size:12px}.account-topic-edit-grid{grid-template-columns:1fr 1fr;gap:6px;margin-top:4px;display:grid}.account-topic-edit-card{border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;padding:12px 10px;font-family:inherit;transition:all .12s;display:flex;position:relative}.account-topic-edit-card:hover:not(:disabled){border-color:var(--color-text)}.account-topic-edit-card.selected{background:var(--color-text);color:var(--color-bg)}.account-topic-edit-card.selected .account-topic-edit-desc{color:var(--color-bg);opacity:.6}.account-topic-edit-card.selected:hover:not(:disabled){opacity:.85}.account-topic-edit-card:disabled{opacity:.5;cursor:not-allowed}.account-topic-edit-order{opacity:.5;font-size:10px;font-weight:700;position:absolute;top:6px;right:8px}.account-topic-edit-name{margin-bottom:2px;font-size:11px;font-weight:700;line-height:1.2}.account-topic-edit-desc{color:var(--color-muted);font-size:9px;line-height:1.3;transition:color .12s}.account-topic-edit-actions{flex-direction:column;gap:6px;display:flex}@media (width<=768px){.account-panel{border-right:none;width:100%;max-width:100vw}}.account-action-btn--quiet{border-color:var(--color-subtle);color:var(--color-muted);font-weight:500}.account-analytics-row{align-items:center;gap:10px;display:flex}.account-trend-insight strong{color:var(--color-text);font-weight:600}.account-trend-row{grid-template-columns:1fr 96px 44px 74px;align-items:center;gap:10px;display:grid}.account-trend-spark{color:var(--color-text);height:22px;display:inline-flex}.account-trend-flat{background:var(--color-border);width:96px;height:1px;margin-top:11px;display:block}.account-trend-now{text-align:right;font-family:Courier New,Courier,monospace;font-size:12px}.account-trend-week{color:var(--color-muted);text-align:right;white-space:nowrap;font-family:Courier New,Courier,monospace;font-size:11px}.account-trend-week.up{color:var(--color-text)}@media (width<=420px){.account-trend-row{grid-template-columns:1fr 72px 40px 64px}.account-trend-spark,.account-trend-flat{width:72px}}.account-analytics-counts{color:var(--color-muted);text-align:right;white-space:nowrap;flex:1;font-size:11px}.account-analytics-delta{color:var(--color-text);text-align:right;white-space:nowrap;flex-shrink:0;min-width:52px;font-family:Courier New,Courier,monospace;font-size:11px}.account-analytics-delta.negative{color:var(--color-muted)}.account-activity-list{flex-direction:column;gap:10px;max-height:320px;display:flex;overflow-y:auto}.account-activity-item{border:1px solid var(--color-subtle);padding:8px 10px}.account-activity-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.account-activity-topic{color:var(--color-text);font-size:12px;font-weight:600}.account-activity-sub{color:var(--color-muted);margin-top:3px;font-size:11px;line-height:1.4}.feeds-overlay{z-index:1100;background:#0006;justify-content:flex-start;align-items:stretch;animation:.18s feedsOverlayFadeIn;display:flex;position:fixed;inset:0}@keyframes feedsOverlayFadeIn{0%{opacity:0}to{opacity:1}}.feeds-panel{background:var(--color-bg);width:100%;max-width:480px;color:var(--color-text);border-right:2px solid var(--color-border);padding:calc(24px + var(--safe-top,0px)) 24px calc(48px + var(--safe-bottom,0px));font-family:Courier New,Courier,monospace;animation:.22s feedsPanelSlide;overflow-y:auto}@keyframes feedsPanelSlide{0%{transform:translate(-100%)}to{transform:translate(0)}}.feeds-header{border-bottom:1px solid var(--color-subtle);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:14px;display:flex}.feeds-header h2{letter-spacing:1.5px;text-transform:uppercase;margin:0;font-size:16px;font-weight:700}.feeds-close{color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-family:inherit;font-size:22px;line-height:1;transition:color .15s}.feeds-close:hover{color:var(--color-text)}.feeds-intro{color:var(--color-muted);margin:0 0 24px;font-size:12px;line-height:1.5}.feeds-error{color:#c0392b;background:var(--color-bg);border:1px solid #c0392b;margin:0 0 24px;padding:10px 12px;font-size:12px;line-height:1.5}.feeds-section{margin-bottom:32px}.feeds-section-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--color-muted);align-items:center;gap:8px;margin-bottom:12px;font-size:11px;font-weight:700;display:flex}.feeds-section-count{color:var(--color-subtle);font-size:10px;font-weight:500}.feeds-empty{color:var(--color-muted);padding:12px 0;font-size:12px;line-height:1.6}.feeds-filter-input{background:var(--color-bg);width:100%;color:var(--color-text);border:1px solid var(--color-subtle);outline:none;margin-bottom:16px;padding:8px 12px;font-family:inherit;font-size:12px;transition:border-color .15s}.feeds-filter-input:focus{border-color:var(--color-text)}.feeds-filter-input::placeholder{color:var(--color-subtle)}.feeds-group{margin-bottom:18px}.feeds-group-label{letter-spacing:1px;text-transform:lowercase;color:var(--color-subtle);border-bottom:1px solid var(--color-subtle);margin-bottom:6px;padding-bottom:4px;font-size:10px;font-weight:600}.feeds-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.feeds-row{border:1px solid var(--color-subtle);background:var(--color-bg);justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 12px;transition:border-color .15s;display:flex}.feeds-row:hover{border-color:var(--color-text)}.feeds-row-meta{flex:1;min-width:0}.feeds-row-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:13px;font-weight:600;display:block;overflow:hidden}.feeds-row-topics{flex-wrap:wrap;gap:4px;display:flex}.feeds-topic-chip{letter-spacing:.5px;text-transform:lowercase;color:var(--color-muted);border:1px solid var(--color-subtle);padding:2px 6px;font-size:9px;font-weight:500}.feeds-topic-chip--inactive{color:#c0392b;border-color:#c0392b}.feeds-action{letter-spacing:.3px;cursor:pointer;white-space:nowrap;flex-shrink:0;padding:6px 10px;font-family:inherit;font-size:11px;transition:all .15s}.feeds-action--follow{border:1px solid var(--color-subtle);color:var(--color-muted);background:0 0}.feeds-action--follow:hover{border-color:var(--color-text);color:var(--color-text)}.feeds-action--following{background:var(--color-text);border:1px solid var(--color-text);color:var(--color-bg)}.feeds-action--following:hover{background:var(--color-bg);color:var(--color-text)}.feeds-action--unfollow{border:1px solid var(--color-subtle);color:var(--color-muted);background:0 0}.feeds-action--unfollow:hover{color:#c0392b;border-color:#c0392b}@media (width<=520px){.feeds-panel{border-right:none;max-width:100%}.feeds-row{flex-direction:column;align-items:stretch;gap:8px}.feeds-action{align-self:flex-start}}.focus-reader{z-index:2000;background:var(--color-bg);color:var(--color-text);padding-top:var(--safe-top,0px);flex-direction:column;display:flex;position:fixed;inset:0}.focus-reader-top{justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);display:flex}.focus-reader-contents-btn{border:1px solid var(--color-subtle);color:var(--color-muted);font-size:var(--font-size-sm);letter-spacing:1px;cursor:pointer;background:0 0;min-height:44px;padding:12px 14px}.focus-reader-contents-btn:hover{color:var(--color-text);border-color:var(--color-border)}.focus-reader-title{text-align:center;font-size:var(--font-size-sm);color:var(--color-muted);letter-spacing:1px;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.focus-reader-close{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;background:0 0;min-width:44px;min-height:44px;padding:12px 14px;font-size:14px;line-height:1}.focus-reader-close:hover{color:var(--color-text);border-color:var(--color-border)}.focus-reader-stage{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.focus-context{text-align:center;width:min(560px,100% - 48px);max-height:9.5em;font-size:var(--font-size-sm);color:var(--color-muted);line-height:1.9;animation:.25s focus-context-in;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)}.focus-context-before{bottom:calc(50% + 76px)}.focus-context-after{top:calc(50% + 76px)}.focus-context-word{font:inherit;color:inherit;letter-spacing:.3px;cursor:pointer;background:0 0;border:none;border-radius:3px;margin:0;padding:2px 3px}.focus-context-word:hover,.focus-context-word:active{color:var(--color-text);background:var(--color-subtle)}.focus-context-keep{top:var(--spacing-md);justify-content:center;animation:.25s focus-context-in;display:flex;position:absolute;left:0;right:0}.focus-context-footer{bottom:var(--spacing-md);flex-direction:column;align-items:center;gap:6px;animation:.25s focus-context-in;display:flex;position:absolute;left:0;right:0}.focus-context-hint{text-align:center;font-size:var(--font-size-xs,11px);color:var(--color-muted);letter-spacing:1px;margin:0}.focus-context-post{border:1px solid var(--color-subtle);color:var(--color-muted);font:inherit;font-size:var(--font-size-sm);letter-spacing:.5px;cursor:pointer;background:0 0;min-height:40px;padding:10px 14px}.focus-context-post:hover{color:var(--color-text);border-color:var(--color-border)}@keyframes focus-context-in{0%{opacity:0}to{opacity:1}}.focus-word-guides{flex-direction:column;align-items:center;gap:10px;max-width:100vw;display:flex}.focus-guide{background:var(--color-subtle);width:1px;height:14px}.focus-word-shell{width:100vw;max-width:100%;height:1.4em;font-size:clamp(30px,8vw,56px);position:relative}.focus-word-long{font-size:clamp(20px,5.5vw,40px)}.focus-word{letter-spacing:.5px;white-space:nowrap;color:var(--color-muted);font-weight:300;line-height:1.4;position:absolute;top:0;left:50%}.focus-word-orp{color:var(--color-text);font-weight:600}.focus-hint{margin-top:var(--spacing-xl);font-size:var(--font-size-sm);color:var(--color-muted);letter-spacing:1px}.focus-reader-controls{padding:var(--spacing-sm) var(--spacing-md);padding-bottom:calc(var(--spacing-lg) + var(--safe-bottom,0px));width:100%;max-width:520px;margin:0 auto}.focus-progress-section{height:2px;margin-bottom:2px}.focus-progress-section-fill{background:var(--color-text);opacity:.45;height:100%}.focus-progress{cursor:pointer;margin-bottom:var(--spacing-sm);touch-action:none;background:linear-gradient(var(--color-gray-light), var(--color-gray-light)) 0 50% / 100% 3px no-repeat;padding:14px 0;position:relative}.focus-progress-fill{background:var(--color-text);height:3px;margin-top:-1.5px;position:relative;top:50%}.focus-progress-dot{box-sizing:border-box;background:var(--color-bg);border:1.5px solid var(--color-text);pointer-events:none;border-radius:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;position:absolute;top:50%}.focus-progress-dot.passed{background:var(--color-text)}.focus-control-row{justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.focus-speed,.focus-transport{align-items:center;gap:var(--spacing-sm);display:flex}.focus-btn{border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-base);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;min-width:44px;min-height:44px;padding:12px 16px;line-height:1;transition:background-color .2s,color .2s}.focus-btn:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.focus-btn:disabled{border-color:var(--color-subtle);color:var(--color-subtle);cursor:default}.focus-play{letter-spacing:2px;text-transform:lowercase;min-width:88px}.focus-wpm{font-size:var(--font-size-sm);color:var(--color-muted);text-align:center;font-variant-numeric:tabular-nums;min-width:64px}.focus-remaining{font-size:var(--font-size-sm);color:var(--color-muted);text-align:right;font-variant-numeric:tabular-nums;min-width:80px}.focus-keys{margin-top:var(--spacing-sm);text-align:center;color:var(--color-subtle);letter-spacing:1px;font-size:11px}@media (width<=768px){.focus-keys{display:none}.focus-control-row{justify-content:center;row-gap:var(--spacing-md)}.focus-transport{order:-1;justify-content:center;width:100%}.focus-remaining{text-align:center;min-width:0}}.focus-contents-overlay{z-index:2100;background:#0006;justify-content:center;align-items:flex-end;animation:.15s ease-out focus-contents-fade;display:flex;position:fixed;inset:0}@keyframes focus-contents-fade{0%{opacity:0}to{opacity:1}}.focus-contents-sheet{background:var(--color-surface);border:2px solid var(--color-border);border-bottom:none;flex-direction:column;width:100%;max-width:640px;height:85dvh;animation:.2s ease-out focus-contents-rise;display:flex}@keyframes focus-contents-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.focus-contents-header{border-bottom:2px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.focus-contents-header h3{letter-spacing:1px;margin:0;font-size:16px;font-weight:700}.focus-contents-footnotes{border-bottom:1px solid var(--color-subtle);color:var(--color-muted);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;display:flex}.focus-contents-footnotes-toggle{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;padding:4px 10px;font-family:inherit;font-size:12px}.focus-contents-footnotes-toggle:hover{background:var(--color-subtle)}.focus-contents-list{-webkit-overflow-scrolling:touch;padding-bottom:var(--safe-bottom,0px);flex:1;overflow-y:auto}.focus-contents-note{color:var(--color-muted);padding:20px 16px;font-size:13px;line-height:1.5}.focus-contents-section{border-bottom:1px solid var(--color-subtle)}.focus-contents-row{align-items:stretch;display:flex}.focus-contents-row.current .focus-contents-title{font-weight:700}.focus-contents-row.current .focus-contents-jump:before{content:"●";margin-right:8px;font-size:8px}.focus-contents-jump{text-align:left;cursor:pointer;min-width:0;min-height:48px;color:var(--color-text);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:14px 16px;font-size:14px;display:flex}.focus-contents-jump:hover{background:var(--color-surface-hover)}.focus-contents-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.focus-contents-percent{color:var(--color-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.focus-contents-expand{border:none;border-left:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;min-width:52px;padding:0 18px;font-size:14px}.focus-contents-expand:hover{color:var(--color-text);background:var(--color-surface-hover)}.focus-contents-paragraphs{border-top:1px solid var(--color-subtle);background:var(--color-bg)}.focus-contents-para{border:none;border-bottom:1px solid var(--color-gray-light);text-align:left;cursor:pointer;width:100%;color:var(--color-muted);-webkit-tap-highlight-color:transparent;background:0 0;padding:12px 16px 12px 28px;font-size:13px;line-height:1.5;display:block}.focus-contents-para:hover{background:var(--color-surface-hover);color:var(--color-text)}.focus-contents-para.current{color:var(--color-text);border-left:2px solid var(--color-border);padding-left:26px}.focus-tracker{text-align:center;letter-spacing:1px;color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:8px;font-family:Courier New,Courier,monospace;font-size:10px;overflow:hidden}.focus-recap-overlay{z-index:10010;padding:24px;padding-top:calc(24px + var(--safe-top,0px));padding-bottom:calc(24px + var(--safe-bottom,0px));background:#00000073;justify-content:center;align-items:center;animation:.2s focus-recap-fade;display:flex;position:fixed;inset:0}@keyframes focus-recap-fade{0%{opacity:0}to{opacity:1}}.focus-recap-card{background:var(--color-bg);border:2px solid var(--color-border);width:440px;max-width:100%;max-height:100%;box-shadow:6px 6px 0 var(--color-border);padding:24px;animation:.25s focus-recap-rise;overflow-y:auto}@keyframes focus-recap-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.focus-recap-eyebrow{letter-spacing:2px;text-transform:lowercase;color:var(--color-muted);margin:0 0 6px;font-size:10px;font-weight:600}.focus-recap-title{color:var(--color-text);margin:0 0 4px;font-size:18px;font-weight:600;line-height:1.35}.focus-recap-stats{color:var(--color-muted);margin:0 0 16px;font-family:Courier New,Courier,monospace;font-size:11px}.focus-recap-summary{border-top:1px solid var(--color-subtle);margin-bottom:20px;padding-top:14px}.focus-recap-label{letter-spacing:1.5px;text-transform:lowercase;color:var(--color-muted);margin:0 0 10px;font-size:10px;font-weight:600}.focus-recap-sentence{color:var(--color-text);margin:0 0 10px;padding-left:14px;font-size:13px;line-height:1.6;position:relative}.focus-recap-sentence:before{content:"-";color:var(--color-muted);position:absolute;left:0}.focus-recap-actions{flex-direction:column;gap:10px;display:flex}.focus-recap-continue{background:var(--color-text);width:100%;color:var(--color-bg);border:2px solid var(--color-border);letter-spacing:1px;text-transform:lowercase;cursor:pointer;touch-action:manipulation;padding:12px;font-family:inherit;font-size:13px;font-weight:600}.focus-recap-continue:hover{background:var(--color-bg);color:var(--color-text)}.focus-recap-quiet{letter-spacing:.5px;color:var(--color-muted);cursor:pointer;touch-action:manipulation;background:0 0;border:none;padding:4px;font-family:inherit;font-size:11px}.focus-recap-quiet:hover{color:var(--color-text)}.focus-recap-ai{color:var(--color-text);margin:0;font-size:13px;line-height:1.65}.focus-recap-skeleton{flex-direction:column;gap:9px;display:flex}.focus-recap-skeleton span{background:var(--color-surface,var(--color-subtle));height:12px;animation:1.2s ease-in-out infinite focus-recap-shimmer;display:block}.focus-recap-skeleton span:nth-child(2){animation-delay:.15s}.focus-recap-skeleton span:nth-child(3){width:70%;animation-delay:.3s}@keyframes focus-recap-shimmer{0%{opacity:.3}50%{opacity:.6}to{opacity:.3}}@media (prefers-reduced-motion:reduce){.focus-recap-skeleton span{opacity:.4;animation:none}}.focus-recap-save{border-top:1px solid var(--color-subtle);flex-direction:column;gap:10px;margin-bottom:16px;padding-top:14px;display:flex}.focus-recap-save-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.focus-recap-save-btn{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);letter-spacing:.5px;text-transform:lowercase;cursor:pointer;touch-action:manipulation;padding:10px 14px;font-family:inherit;font-size:12px;font-weight:600}.focus-recap-save-btn:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.focus-recap-save-btn:disabled{opacity:.4;cursor:not-allowed}.focus-recap-note{background:var(--color-bg);border:1px solid var(--color-subtle);width:100%;color:var(--color-text);resize:vertical;padding:10px 12px;font-family:inherit;font-size:16px;line-height:1.5}.focus-recap-note:focus{border-color:var(--color-border);outline:none}.focus-recap-saved{border-top:1px solid var(--color-subtle);letter-spacing:.5px;color:var(--color-muted);margin:0 0 16px;padding-top:14px;font-size:12px}.focus-jump-hint{text-align:center;font-size:var(--font-size-sm);color:var(--color-muted);letter-spacing:1px;margin:0 0 6px;animation:.3s focus-jump-hint-in}@keyframes focus-jump-hint-in{0%{opacity:0}to{opacity:1}}.focus-define-card{background:var(--color-bg);border:2px solid var(--color-border);width:400px;max-width:100%;max-height:100%;box-shadow:6px 6px 0 var(--color-border);padding:20px 24px 24px;animation:.25s focus-recap-rise;overflow-y:auto}.focus-define-form{margin-top:var(--spacing-sm);gap:8px;display:flex}.focus-define-input{border:1px solid var(--color-border);min-width:0;color:var(--color-text);font-family:inherit;font-size:var(--font-size-base);background:0 0;flex:1;min-height:44px;padding:10px 12px}.focus-define-input:focus{border-color:var(--color-text);outline:none}.focus-define-status{margin:var(--spacing-md) 0 0;font-size:var(--font-size-sm);color:var(--color-muted);letter-spacing:1px}.focus-define-result{margin-top:var(--spacing-md)}.focus-define-word-row{align-items:baseline;gap:10px;display:flex}.focus-define-word{font-size:var(--font-size-lg);font-weight:600}.focus-define-pos{font-size:var(--font-size-sm);color:var(--color-muted);font-style:italic}.focus-define-field{color:var(--color-muted);letter-spacing:1px;text-transform:lowercase;margin-top:2px;font-size:11px}.focus-define-definition{margin:var(--spacing-sm) 0 var(--spacing-md);line-height:1.6}.paged-reader{flex-direction:column;flex:1;min-height:0;display:flex}.paged-viewport{touch-action:pinch-zoom;flex:1;width:min(680px,100% - 48px);min-height:0;margin:12px auto 0;position:relative;overflow:hidden}.paged-content{column-fill:auto;-webkit-hyphens:auto;hyphens:auto;height:100%;font-size:17px;line-height:1.6;transition:transform .25s}.paged-heading{letter-spacing:.5px;break-after:avoid;margin:0 0 16px;font-size:20px;font-weight:700}.paged-para{text-align:justify;text-indent:1.5em;margin:0 0 .7em}.paged-heading+.paged-para,.paged-para:first-child{text-indent:0}.paged-figure{text-align:center;break-inside:avoid;margin:.4em 0 1em}.paged-figure img{object-fit:contain;max-width:100%;max-height:60vh}.paged-content::selection{background:var(--color-subtle)}.paged-content ::selection{background:var(--color-subtle)}.paged-paint{pointer-events:none;position:absolute;inset:0}.paged-paint-rect{background:#8c8c8c73;border-radius:2px;position:absolute}.paged-content--own-selection{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.paged-nav{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;flex-shrink:0;width:48px;min-height:44px;padding:0;font-family:inherit;font-size:18px;line-height:1}.paged-nav:disabled{opacity:.3;cursor:default}.paged-nav:hover:not(:disabled){color:var(--color-text);border-color:var(--color-text)}.paged-footer{width:min(680px,100% - 48px);padding:10px 0 calc(12px + var(--safe-bottom,0px));letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 auto;font-size:11px;display:flex}.paged-footer-side{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.paged-footer-side:empty{display:none}.paged-footer-right{text-align:right}@media (width<=520px){.paged-footer{row-gap:2px}.paged-footer-side{text-align:center;flex:100%;order:-1}.paged-footer-right{text-align:center;order:1}}.focus-mode-switch{border:1px solid var(--color-subtle);display:inline-flex}.focus-mode-option{color:var(--color-muted);font-family:inherit;font-size:var(--font-size-sm);letter-spacing:1px;cursor:pointer;background:0 0;border:none;min-height:44px;padding:12px 14px}.focus-mode-option.active{background:var(--color-text);color:var(--color-bg)}.paged-current{background:var(--color-subtle);color:inherit;border-radius:2px;padding:0 2px}.paged-kept{color:inherit;background:#8c8c8c38;border-radius:2px;padding:1px 0}.paged-bank{-webkit-text-decoration:underline dashed var(--color-muted) 1px;text-decoration:underline dashed var(--color-muted) 1px;text-underline-offset:3px}.focus-reader-top .focus-reader-contents-btn,.focus-reader-top .focus-mode-switch,.focus-reader-top .focus-reader-close{flex-shrink:0}.focus-reader-title{min-width:0}.paged-content--debug .paged-para:before{content:"¶" attr(data-start) " ";color:var(--color-muted);letter-spacing:0;font-size:.7em}.paged-content--debug .paged-heading:before{content:"§" attr(data-start) " ";color:var(--color-muted);font-size:.7em}.paged-fn{color:var(--color-muted);font-size:.68em;line-height:0}.paged-ribbon{border:1.5px solid var(--color-muted);clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%);cursor:pointer;opacity:.55;-webkit-tap-highlight-color:transparent;background:0 0;border-top:none;width:22px;height:30px;padding:0;position:absolute;top:0;right:6px}.paged-ribbon--set{background:var(--color-text);border-color:var(--color-text);opacity:1}.paged-ribbon:hover{opacity:1}.focus-search-input{background:var(--color-bg);border:1px solid var(--color-subtle);width:calc(100% - 40px);color:var(--color-text);margin:14px 20px 12px;padding:12px 14px;font-family:inherit;font-size:16px}.focus-search-input:focus{border-color:var(--color-text);outline:none}.focus-reader-search-btn{padding:8px 12px;font-size:22px;line-height:1}.focus-search-result{border:none;border-bottom:1px solid var(--color-subtle);width:100%;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 16px;display:flex}.focus-search-result:hover .focus-search-snippet{text-decoration:underline}.focus-search-snippet{min-width:0;line-height:1.5}.focus-search-return{background:var(--color-bg);border:1px solid var(--color-text);width:calc(100% - 32px);color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);letter-spacing:.5px;text-align:left;cursor:pointer;margin:10px 16px;padding:12px 14px;display:block}.focus-search-section-label{letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);margin:10px 16px 4px;font-size:11px}.focus-contents-highlights{border-bottom:1px solid var(--color-subtle);flex-shrink:0;max-height:40vh;overflow-y:auto}.focus-contents-highlight-row{align-items:center;gap:6px;display:flex}.focus-contents-highlight{border:none;border-bottom:1px solid var(--color-subtle);min-width:0;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;background:0 0;flex:1;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 4px 10px 16px;display:flex}.focus-contents-highlight:hover .focus-contents-highlight-text{text-decoration:underline}.focus-contents-highlight-text{min-width:0;font-style:italic;line-height:1.5}.focus-contents-highlight-text:before{content:"“"}.focus-contents-highlight-text:after{content:"”"}.focus-contents-highlight-remove{width:36px;min-height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-right:8px;font-family:inherit}.focus-contents-highlight-remove:hover{color:var(--color-text)}.focus-search-bookmark-row{align-items:center;gap:6px;display:flex}.focus-search-bookmark-row .focus-search-result{flex:1;min-width:0;padding-right:4px}.focus-search-bookmark-row .focus-search-bookmark-remove{margin-right:8px}.focus-search-bookmark-remove{width:36px;min-height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-family:inherit}.focus-search-bookmark-remove:hover{color:var(--color-text)}.paged-keep{z-index:10;background:var(--color-bg);border:1px solid var(--color-subtle);color:var(--color-muted);font:inherit;font-size:var(--font-size-sm);letter-spacing:.5px;cursor:pointer;min-height:40px;padding:10px 14px;position:fixed;transform:translate(-50%);box-shadow:0 4px 16px #0000004d}.paged-keep:hover{color:var(--color-text);border-color:var(--color-text)}.focus-contents-remove{border-top:1px solid var(--color-subtle);flex-shrink:0;padding:10px 18px 14px}.focus-contents-remove-btn{border:1px solid var(--color-subtle);width:100%;color:var(--color-muted);font:inherit;letter-spacing:.5px;cursor:pointer;background:0 0;padding:8px 12px;font-size:12px;font-weight:600;transition:all .15s}.focus-contents-remove-btn:hover{border-color:var(--color-border);color:var(--color-text)}.focus-contents-remove-btn.armed{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}.focus-contents-author-input{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;outline:none;flex:1;padding:4px 8px;font-size:12px}.focus-recap-rating{flex-direction:column;gap:6px;display:flex}.focus-recap-rating-row{align-items:center;gap:6px;display:flex}.focus-recap-rating-btn{background:var(--color-bg);min-width:38px;color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;padding:6px 8px;font-family:Courier New,Courier,monospace;font-size:12px;font-weight:700}.focus-recap-rating-btn:hover{border-color:var(--color-text)}.focus-recap-rating-btn.active{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.focus-recap-rating-word{color:var(--color-muted);margin-left:4px;font-size:11px;font-style:italic}.book-shelf{border-top:1px solid var(--color-border);flex-basis:100%;margin-top:18px;padding:18px 0 6px}.book-shelf-head{align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.book-shelf-label{text-transform:uppercase;letter-spacing:1px;font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.book-shelf-hint{color:var(--color-muted);flex:1;font-size:11px;font-style:italic}.book-shelf-quiet{font:inherit;color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.book-shelf-quiet:hover{color:var(--color-text)}.book-ask{border:1px solid var(--color-border);background:var(--color-bg);flex-direction:column;gap:8px;margin-bottom:16px;padding:12px;display:flex}.book-ask-lead{margin:0;font-size:13px;font-weight:600}.book-ask-sub{color:var(--color-muted);margin:4px 0 0;font-size:11px}.book-ask-row{flex-wrap:wrap;gap:6px;display:flex}.book-ask-chip{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);font:inherit;cursor:pointer;padding:7px 10px;font-size:12px}.book-ask-chip.small{padding:4px 8px;font-size:11px}.book-ask-chip:hover{background:var(--color-text);color:var(--color-bg)}.book-ask-form{gap:6px;display:flex}.book-ask-input{min-width:0;font:inherit;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);outline:none;flex:1;padding:8px 10px;font-size:12px}.book-ask-input:focus{border-color:var(--color-text)}.book-ask-go{background:var(--color-text);color:var(--color-bg);border:1px solid var(--color-text);font:inherit;cursor:pointer;padding:8px 12px;font-size:12px;font-weight:600}.book-ask-go:disabled{opacity:.4;cursor:default}.book-shelf-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.book-card{color:var(--color-text);flex-direction:column;gap:4px;min-width:0;text-decoration:none;display:flex}.book-cover{aspect-ratio:2/3;object-fit:cover;border:1px solid var(--color-border);background:var(--color-surface);filter:grayscale()contrast(1.05);width:100%;display:block}.book-card:hover .book-cover{filter:grayscale(.6)contrast(1.05)}.book-cover-plain{text-align:center;justify-content:center;align-items:center;padding:10px;font-family:Georgia,Times New Roman,Times,serif;font-size:11px;line-height:1.35;display:flex}.book-title{margin-top:4px;font-size:12px;font-weight:600;line-height:1.3}.book-author{color:var(--color-muted);font-size:11px}.book-why{color:var(--color-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.book-actions{flex-wrap:wrap;gap:4px 10px;margin-top:6px;display:flex}.book-get{background:var(--color-text);color:var(--color-bg);border:1px solid var(--color-text);font:inherit;cursor:pointer;padding:5px 8px;font-size:11px;font-weight:600}.book-get:disabled{opacity:.5;cursor:wait}.book-link{font:inherit;color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.book-shelf-note{color:var(--color-muted);margin:12px 0 0;font-size:12px;font-style:italic;line-height:1.5}@media (width<=420px){.book-shelf-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.focus-library-overlay{z-index:9999;padding-top:var(--safe-top,0px);padding-bottom:var(--safe-bottom,0px);background:#0006;justify-content:center;align-items:center;animation:.15s ease-out focus-library-fade;display:flex;position:fixed;inset:0}@keyframes focus-library-fade{0%{opacity:0}to{opacity:1}}.focus-library-panel{width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 80px - var(--safe-top,0px) - var(--safe-bottom,0px));background:var(--color-surface);border:2px solid var(--color-border);box-shadow:8px 8px 0 var(--color-border);flex-direction:column;animation:.2s ease-out focus-library-slide;display:flex}@keyframes focus-library-slide{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.focus-library-header{border-bottom:2px solid var(--color-border);flex-shrink:0;align-items:center;gap:10px;padding:16px 18px;display:flex}.focus-library-header h2{color:var(--color-text);letter-spacing:1px;flex:1;margin:0;font-size:18px;font-weight:700}.focus-library-count{color:var(--color-muted);font-size:12px;font-weight:500}.focus-library-close{cursor:pointer;color:var(--color-muted);background:0 0;border:none;padding:2px 6px;font-size:20px;line-height:1}.focus-library-close:hover{color:var(--color-text)}.focus-library-tagline{color:var(--color-muted);padding:12px 18px 0;font-size:12px;line-height:1.5}.focus-library-upload{border-bottom:1px solid var(--color-subtle);flex-shrink:0;padding:12px 18px}.focus-library-upload-row{gap:8px;display:flex}.focus-library-upload-row .focus-library-upload-btn{flex:1}.focus-library-upload-row .focus-library-recommend-btn{flex:none;width:auto;min-width:112px;font-weight:500}.focus-library-upload-btn{border:2px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);letter-spacing:1px;cursor:pointer;padding:10px 12px;font-size:13px;font-weight:600;transition:all .2s}.focus-library-upload-btn:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.focus-library-upload-btn:disabled{color:var(--color-muted);border-color:var(--color-subtle);cursor:wait}.focus-library-error{color:var(--color-text);border-left:2px solid var(--color-border);margin-top:8px;padding-left:8px;font-size:12px}.focus-shelf-sort{scrollbar-width:none;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:10px 18px 0;display:flex;overflow-x:auto}.focus-shelf-sort::-webkit-scrollbar{display:none}.focus-shelf-sort-label{letter-spacing:1px;color:var(--color-muted);flex-shrink:0;margin-right:4px;font-size:10px}.focus-shelf-sort-arrow{text-align:right;width:11px;display:inline-block}.focus-shelf-sort-btn{color:var(--color-muted);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:600;transition:all .15s}@media (width<=480px){.focus-shelf-sort{gap:2px;padding:10px 14px 0}.focus-shelf-sort-btn{padding:3px 5px}}.focus-shelf-sort-btn:hover{color:var(--color-text)}.focus-shelf-sort-btn.active{border-color:var(--color-border);color:var(--color-text)}.focus-library-shelf{flex-wrap:wrap;flex:1;align-content:flex-start;min-height:160px;padding:18px 18px 26px;display:flex;overflow:hidden auto}.focus-library-empty{width:100%;color:var(--color-muted);text-align:center;padding:24px 18px;font-size:13px}.focus-shelf-slot{border-bottom:5px solid var(--color-border);align-items:flex-end;height:226px;padding:0 2px;display:flex}.focus-shelf-ledge{border-bottom:5px solid var(--color-border);flex:1;height:226px}.focus-spine{border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-bottom:none;padding:0;position:relative;overflow:hidden}.focus-spine-progress{background:var(--color-gray-light);position:absolute;bottom:0;left:0;right:0}.focus-spine-text{writing-mode:vertical-rl;text-align:left;width:100%;height:100%;padding:12px 0 8px;display:block;position:relative;overflow:hidden}.focus-spine-title{letter-spacing:.5px;max-height:100%;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;display:block;overflow:hidden}.focus-spine-author{letter-spacing:.5px;max-height:100%;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin-block-start:3px;font-size:10px;font-weight:300;display:block;overflow:hidden}.focus-spine:hover .focus-spine-author{color:var(--color-bg);opacity:.7}.focus-spine:hover{background:var(--color-text)}.focus-spine:hover .focus-spine-title{color:var(--color-bg)}.focus-spine:hover .focus-spine-progress{visibility:hidden}.focus-spine.finished .focus-spine-title{color:var(--color-text)}.focus-spine-rating{background:var(--color-text);color:var(--color-bg);padding:2px 3px;font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700;line-height:1;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.deep-search-overlay{z-index:9999;padding-top:var(--safe-top,0px);padding-bottom:var(--safe-bottom,0px);background:#0006;justify-content:center;align-items:center;animation:.15s ease-out deep-search-fade;display:flex;position:fixed;inset:0}@keyframes deep-search-fade{0%{opacity:0}to{opacity:1}}.deep-search-panel{width:520px;max-width:calc(100vw - 32px);max-height:calc(100vh - 80px - var(--safe-top,0px) - var(--safe-bottom,0px));background:var(--color-surface);border:2px solid var(--color-border);box-shadow:8px 8px 0 var(--color-border);flex-direction:column;animation:.2s ease-out deep-search-slide;display:flex}@keyframes deep-search-slide{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.deep-search-header{border-bottom:2px solid var(--color-border);flex-shrink:0;align-items:center;gap:10px;padding:16px 18px;display:flex}.deep-search-header h2{color:var(--color-text);flex:1;margin:0;font-size:18px;font-weight:700}.deep-search-count{color:var(--color-muted);font-size:12px;font-weight:500}.deep-search-close{cursor:pointer;color:var(--color-muted);background:0 0;border:none;padding:2px 6px;font-size:20px;line-height:1}.deep-search-close:hover{color:var(--color-text)}.deep-search-input-row{border-bottom:2px solid var(--color-border);flex-shrink:0;padding:14px 18px}.deep-search-input{background:var(--color-bg);border:2px solid var(--color-border);width:100%;color:var(--color-text);padding:10px 12px;font-family:inherit;font-size:16px}.deep-search-input:focus{box-shadow:3px 3px 0 var(--color-border);outline:none}.deep-search-input::placeholder{color:var(--color-muted)}.deep-search-body{padding:8px 18px 18px;overflow-y:auto}.deep-search-empty{color:var(--color-muted);padding:28px 4px;font-size:13px;line-height:1.6}.deep-search-section{margin-top:16px}.deep-search-section-label{letter-spacing:1.5px;text-transform:lowercase;color:var(--color-muted);margin-bottom:8px;font-size:11px;font-weight:600}.deep-search-section-label span{margin-left:4px;font-weight:400}.deep-search-hit{text-align:left;background:var(--color-bg);border:1px solid var(--color-subtle);cursor:pointer;width:100%;margin-bottom:8px;padding:10px 12px;font-family:inherit;transition:border-color .15s;display:block}.deep-search-hit:hover{border-color:var(--color-border)}.deep-search-hit-title{color:var(--color-text);font-size:14px;font-weight:600;line-height:1.4;display:block}.deep-search-hit-meta{color:var(--color-muted);margin-top:2px;font-size:11px;display:block}.deep-search-hit-snippet{color:var(--color-text);margin-top:8px;font-size:13px;line-height:1.55;display:none}.deep-search-hit.expanded .deep-search-hit-snippet{display:block}.deep-search-hit-snippet mark{background:var(--color-text);color:var(--color-bg);padding:0 2px}.paper-overlay{z-index:2200;-webkit-backdrop-filter:blur(2px);background:#0000008c;justify-content:center;display:flex;position:fixed;inset:0;overflow:hidden}.paper-scroll{width:min(720px,100%);height:100%;padding:max(18px, var(--safe-top,18px)) 12px calc(28px + var(--safe-bottom,0px));perspective:1400px;overflow:hidden auto}.paper-close{z-index:3;color:#333;cursor:pointer;background:0 0;border:none;min-width:38px;min-height:38px;padding:9px 11px;font-size:13px;line-height:1;position:absolute;top:10px;left:10px}.paper-sheet{color:#111;background:#f4f4f4;border:1px solid #c9c9c9;border-bottom:none;padding:26px 28px 0;font-family:Georgia,Times New Roman,Times,serif;position:relative;box-shadow:0 12px 40px #00000059}.paper-masthead{align-items:center;gap:14px;margin-bottom:8px;padding-left:34px;display:flex}.paper-masthead-rule{border-top:1px solid #111;border-bottom:1px solid #111;flex:1;height:3px}.paper-masthead h1{letter-spacing:1px;white-space:nowrap;font-variant:small-caps;margin:0;font-size:clamp(26px,6vw,40px);font-weight:700}.paper-dateline{letter-spacing:.5px;text-transform:uppercase;color:#555;border-top:1px solid #111;border-bottom:2px solid #111;justify-content:space-between;gap:10px;margin-bottom:18px;padding:5px 2px;font-size:11px;display:flex}.paper-note{color:#555;padding:20px 0 26px;font-size:14px;font-style:italic}.paper-lead{cursor:pointer;padding-bottom:18px}.paper-kicker{letter-spacing:1.5px;text-transform:uppercase;color:#666;margin:0 0 4px;font-size:11px}.paper-lead h2{margin:0 0 6px;font-size:clamp(24px,5.4vw,34px);font-weight:700;line-height:1.15}.paper-byline{color:#555;margin:0 0 10px;font-size:12px;font-style:italic}.paper-lead-text{text-align:justify;-webkit-line-clamp:6;-webkit-box-orient:vertical;margin:0;font-size:15px;line-height:1.55;display:-webkit-box;overflow:hidden}.paper-crease{letter-spacing:3px;text-transform:uppercase;color:#555;cursor:pointer;background:linear-gradient(#00000005,#00000024 55%,#00000057) border-box;border:none;border-bottom:1px solid #0000;width:calc(100% + 56px);margin:0 -28px;padding:10px 0 12px;font-family:Georgia,Times New Roman,Times,serif;font-size:11px;display:block}.paper-sheet.unfolded .paper-crease{background:0 0;border-bottom:1px solid #0000001f}.paper-fold-clip{grid-template-rows:0fr;transition:grid-template-rows .36s ease-in;display:grid}.paper-sheet.unfolded .paper-fold-clip{grid-template-rows:1fr;transition:grid-template-rows .36s ease-out .36s}.paper-fold-inner{perspective:1100px;background:#f4f4f4;min-height:0;overflow:hidden}.paper-bottom{transform-origin:top;backface-visibility:hidden;background:#f4f4f4;transition:transform .72s cubic-bezier(.4,0,.2,1);transform:rotateX(-180deg)}.paper-sheet.unfolded .paper-bottom{transform:rotateX(0)}.paper-columns{column-count:2;column-rule:1px solid #d6d6d6;column-gap:22px;padding-top:16px}@media (width<=520px){.paper-columns{column-count:1}}.paper-story{break-inside:avoid;cursor:pointer;border-bottom:1px solid #e2e2e2;margin-bottom:18px;padding-bottom:4px}.paper-story h3{margin:0 0 4px;font-size:17px;font-weight:700;line-height:1.25}.paper-story-text{text-align:justify;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.paper-briefs{border-top:2px solid #111;margin-top:6px;padding-top:10px}.paper-briefs h4{letter-spacing:2px;text-transform:uppercase;margin:0 0 8px;font-size:12px}.paper-brief{text-align:left;color:#111;cursor:pointer;background:0 0;border:none;border-bottom:1px dotted #c9c9c9;width:100%;padding:7px 0;font-family:Georgia,Times New Roman,Times,serif;font-size:13px;line-height:1.4;display:block}.paper-brief-topic{letter-spacing:1px;text-transform:uppercase;color:#666;margin-right:8px;font-size:10px}.paper-share{color:#f4f4f4;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;background:#111;border:none;min-height:42px;margin:16px auto 0;padding:11px 22px;font-family:Georgia,Times New Roman,Times,serif;font-size:12px;display:block}.paper-reader-overlay{z-index:2400;background:var(--color-bg);padding-top:var(--safe-top,0px);position:fixed;inset:0;overflow-y:auto}.paper-colophon{text-align:center;color:#555;border-top:1px solid #111;margin:18px 0 0;padding:10px 0 16px;font-size:11px;font-style:italic}.paper-book{perspective:2000px;position:relative}.paper-front{z-index:2;transform-origin:0;backface-visibility:hidden;transition:transform .8s cubic-bezier(.45,0,.2,1);position:relative;transform:rotateY(0)}.paper-book.opened .paper-front{pointer-events:none;width:100%;position:absolute;top:0;left:0;transform:rotateY(-180deg)}.paper-inside{display:none}.paper-book.opened .paper-inside{animation:.3s paper-page-in;display:block}@keyframes paper-page-in{0%{opacity:.4}to{opacity:1}}.paper-edge{cursor:pointer;writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:2px;text-transform:uppercase;color:#555;z-index:2;border:none;width:24px;padding:0;font-family:Georgia,Times New Roman,Times,serif;font-size:10px;position:absolute;top:0;bottom:0}.paper-edge-left{background:linear-gradient(270deg,#0000,#00000029);left:0}.paper-edge-right{background:0 0;width:36px;right:0}.paper-corner{cursor:pointer;z-index:3;opacity:0;background:0 0;border:none;width:52px;height:52px;padding:0;animation:.5s 2.2s forwards paper-corner-in,16s ease-in-out 3s infinite paper-corner-lift;position:absolute;top:0;right:0}.paper-corner:before{content:"";clip-path:polygon(0 0,100% 0,100% 100%);background:linear-gradient(45deg,#a6a6a6 50%,#cdcdcd 72%,#e7e7e7 100%);position:absolute;inset:0}.paper-corner:after{content:"";clip-path:polygon(0 0,100% 100%,0 100%);filter:drop-shadow(-2px 2px 3px #00000059);background:linear-gradient(225deg,#fff 50%,#efefef 68%,#d3d3d3 88%,#bababa 100%);position:absolute;inset:0}@keyframes paper-corner-in{0%{opacity:0}to{opacity:1}}@keyframes paper-corner-lift{0%,11%,to{width:52px;height:52px}4.5%{width:64px;height:64px}}@media (prefers-reduced-motion:reduce){.paper-corner{opacity:1;animation:none}}.paper-inside{padding-bottom:4px}.paper-inside-head{letter-spacing:.5px;text-transform:uppercase;color:#555;border-bottom:2px solid #111;justify-content:space-between;gap:10px;margin-bottom:16px;padding:12px 2px 5px 34px;font-size:11px;display:flex}.paper-inside-columns{column-count:2;column-rule:1px solid #d6d6d6;column-gap:22px}@media (width<=520px){.paper-inside-columns{column-count:1}}.paper-section{break-inside:avoid;margin-bottom:20px}.paper-section-head{letter-spacing:2px;text-transform:uppercase;font-variant:small-caps;border-bottom:1px solid #111;margin:0 0 8px;padding-bottom:3px;font-size:11px}.paper-story-inside h3{font-size:15px}.paper-book.opened.closing .paper-front{transition:transform .8s cubic-bezier(.45,0,.2,1);transform:rotateY(0)}.paper-scroll{scrollbar-width:none;-ms-overflow-style:none}.paper-scroll::-webkit-scrollbar{display:none}.paper-book.closing .paper-edge-left,.paper-book.closing .paper-inside .paper-close,.paper-book.opening .paper-edge-left,.paper-book.opening .paper-inside .paper-close{display:none}.tend-overlay{z-index:9999;padding-top:var(--safe-top,0px);padding-bottom:var(--safe-bottom,0px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.tend-panel{width:560px;max-width:calc(100vw - 20px);max-height:calc(100vh - 80px - var(--safe-top,0px) - var(--safe-bottom,0px));background:var(--color-surface);border:2px solid var(--color-border);box-shadow:8px 8px 0 var(--color-border);flex-direction:column;padding-bottom:18px;display:flex;overflow-y:auto}.tend-header{border-bottom:2px solid var(--color-border);background:var(--color-surface);z-index:1;align-items:baseline;gap:10px;padding:16px 18px 12px;display:flex;position:sticky;top:0}.tend-header h2{letter-spacing:2px;margin:0;font-size:18px;font-weight:700}.tend-header-sub{letter-spacing:1px;color:var(--color-muted);flex:1;font-size:11px}.tend-close{color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:6px 8px;font-size:14px}.tend-goal-picker{flex-direction:column;gap:10px;padding:16px 18px 0;display:flex}.tend-intro{color:var(--color-muted);margin:0 0 6px;font-size:13px;line-height:1.5}.tend-goal-card{text-align:left;border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;flex-direction:column;gap:4px;padding:12px 14px;font-family:inherit;display:flex}.tend-goal-card:hover,.tend-goal-card.current{background:var(--color-text);color:var(--color-bg)}.tend-goal-title{font-size:14px;font-weight:700}.tend-goal-desc{opacity:.75;font-size:12px}.tend-tree{flex-shrink:0;width:100%;max-height:60vh;margin-top:4px}.tend-ink{stroke:var(--color-text);fill:none;stroke-linecap:round}.tend-fill{fill:var(--color-text)}.tend-blossom{fill:var(--color-text);opacity:.85}.tend-blossom.faint{opacity:.35}.tend-petal{fill:var(--color-text);opacity:0;animation:6s linear infinite tend-petal-fall}@keyframes tend-petal-fall{0%{opacity:0;transform:translate(0)}15%{opacity:.5}to{opacity:0;transform:translate(-22px,95px)}}.tend-blossoms.falling .tend-blossom-cluster{animation:2.1s ease-in forwards tend-cluster-fall}@keyframes tend-cluster-fall{0%{opacity:1;transform:translate(0)}35%{opacity:.9;transform:translate(6px,30px)}to{opacity:0;transform:translate(-14px,132px)}}.tend-petal-shower{fill:var(--color-text);opacity:0;animation:2.3s ease-in forwards tend-shower}.tend-petal-shower.sway{animation-name:tend-shower-sway}@keyframes tend-shower{0%{opacity:0;transform:translate(0)}12%{opacity:.7}55%{transform:translate(11px,78px)}to{opacity:0;transform:translate(-7px,146px)}}@keyframes tend-shower-sway{0%{opacity:0;transform:translate(0)}12%{opacity:.7}55%{transform:translate(-13px,72px)}to{opacity:0;transform:translate(9px,146px)}}.tend-season-btn.falling{opacity:.6;cursor:default}@media (prefers-reduced-motion:reduce){.tend-petal,.tend-petal-shower{animation:none}.tend-blossoms.falling .tend-blossom-cluster{animation:1.4s forwards tend-cluster-fade}}@keyframes tend-cluster-fade{to{opacity:0}}.tend-stage-line{justify-content:space-between;align-items:baseline;padding:4px 18px 8px;display:flex}.tend-stage-name{letter-spacing:1.5px;font-size:15px;font-weight:700}.tend-season{letter-spacing:1px;color:var(--color-muted);font-size:11px}.tend-progress{height:6px;margin:0 18px}.tend-progress-fill{background:var(--color-text);height:100%;transition:width .4s}.tend-numbers{letter-spacing:1px;color:var(--color-muted);justify-content:space-between;padding:6px 18px 0;font-size:11px;display:flex}.tend-streak{align-items:baseline;gap:8px;padding:6px 18px 0;font-size:13px;display:flex}.tend-streak-count{font-size:26px;font-weight:700;line-height:1}.tend-season-btn{background:var(--color-text);color:var(--color-bg);letter-spacing:1px;cursor:pointer;border:none;margin:16px 18px 0;padding:12px 16px;font-family:inherit;font-size:13px}.tend-more{width:100%;color:var(--color-muted);letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;margin-top:10px;padding:8px 18px 4px;font-family:inherit;font-size:11px;display:flex}.tend-more:hover{color:var(--color-text)}.tend-more-mark{font-size:16px;line-height:1;transition:transform .3s;display:inline-block}.tend-more-mark.open{transform:rotate(180deg)}.tend-details{grid-template-rows:0fr;transition:grid-template-rows .35s;display:grid}.tend-details.open{grid-template-rows:1fr}.tend-details-inner{min-height:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.tend-details,.tend-more-mark{transition:none}}.tend-how{border-top:1px solid var(--color-subtle);color:var(--color-muted);margin:14px 18px 0;padding-top:12px;font-size:12px;line-height:1.55}.tend-how p{margin:0 0 10px}.tend-how-label{letter-spacing:2px;text-transform:uppercase;color:var(--color-text);font-size:11px}.tend-purpose-line strong{color:var(--color-text);font-weight:700}.tend-quiet{color:var(--color-muted);letter-spacing:1px;cursor:pointer;background:0 0;border:none;padding:2px 6px;font-family:inherit;font-size:11px;text-decoration:underline}.tend-stone{fill:var(--color-text);fill-opacity:.12;stroke:var(--color-text);stroke-width:2.5px;stroke-linejoin:round}.tend-stone-crack{fill:none;stroke:var(--color-text);stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round;opacity:.7}.tend-stone-moss circle{fill:var(--color-text);opacity:.45}.tend-iwakura-line{color:var(--color-muted);align-items:baseline;gap:8px;padding:10px 18px 0;font-size:12px;display:flex}.tend-bark path{fill:none;stroke:var(--color-bg);stroke-width:1.1px;stroke-linecap:round;opacity:.55}.tend-knots circle{fill:none;stroke:var(--color-bg);stroke-width:1.2px;opacity:.7}.tend-blossom-heart{fill:var(--color-bg);opacity:.9}.tend-flower.faint .tend-blossom{opacity:.4}.tend-flower.faint .tend-blossom-heart{opacity:.6}.tend-leaf{fill:var(--color-text);opacity:.75;transform-box:fill-box;transform-origin:0}.tend-leaves.faint .tend-leaf{opacity:.28}.tend-leaves.autumn .tend-leaf{opacity:.45}.tend-leaves.winter .tend-leaf{fill:none;stroke:var(--color-text);stroke-width:1.2px;opacity:.6}.tend-leaves.sway .tend-leaf{animation:2.4s ease-in-out infinite tend-leaf-sway}@keyframes tend-leaf-sway{0%,to{transform:rotate(0)}50%{transform:rotate(-16deg)}}.tend-leaf.drifting{opacity:0;animation:7s ease-in infinite tend-leaf-drift}@keyframes tend-leaf-drift{0%{opacity:0;transform:translate(0)rotate(0)}12%{opacity:.45}50%{transform:translate(14px,60px)rotate(120deg)}to{opacity:0;transform:translate(-10px,118px)rotate(300deg)}}.tend-weather{opacity:.9}.tend-moon-lit{fill:var(--color-text);opacity:.85}.tend-star{fill:var(--color-text);opacity:.4;animation:3.2s ease-in-out infinite tend-star-twinkle}@keyframes tend-star-twinkle{0%,to{opacity:.25}50%{opacity:.8}}.tend-cloud{opacity:.45;animation:30s ease-in-out infinite alternate tend-cloud-drift}.tend-cloud.heavy{opacity:.8}@keyframes tend-cloud-drift{0%{translate:0}to{translate:14px}}.tend-raindrop{stroke:var(--color-text);stroke-width:1.8px;stroke-linecap:round;opacity:0;animation:1.4s linear infinite tend-rain-fall}@keyframes tend-rain-fall{0%{opacity:0;transform:translate(0)}10%{opacity:.45}90%{opacity:.35}to{opacity:0;transform:translate(-40px,210px)}}.tend-snowflake{fill:var(--color-text);opacity:0;animation:9s linear infinite tend-snow-fall}.tend-snowflake.sway{animation-name:tend-snow-fall-sway}@keyframes tend-snow-fall{0%{opacity:0;transform:translate(0)}8%{opacity:.6}50%{transform:translate(8px,105px)}95%{opacity:.5}to{opacity:0;transform:translate(-4px,212px)}}@keyframes tend-snow-fall-sway{0%{opacity:0;transform:translate(0)}8%{opacity:.6}50%{transform:translate(-9px,105px)}95%{opacity:.5}to{opacity:0;transform:translate(6px,212px)}}.tend-snow-ground{fill:none;stroke:var(--color-text);stroke-width:3px;stroke-linecap:round;opacity:.3}.tend-snow-cap,.tend-snow-dust{fill:none;stroke:var(--color-text);stroke-linecap:round;opacity:.3}.tend-snow-cap{stroke-width:2.6px}.tend-snow-dust{stroke-width:2px}.tend-sun-ring{transform-box:fill-box;transform-origin:50%;opacity:0;animation:4.5s ease-out infinite tend-sun-radiate}@keyframes tend-sun-radiate{0%{opacity:0;transform:scale(.82)}18%{opacity:.85}to{opacity:0;transform:scale(1.75)}}.tend-wind-streak{--dash:.3;fill:none;stroke:var(--color-text);stroke-linecap:round;stroke-dasharray:var(--dash) 1;stroke-dashoffset:var(--dash);animation:6s linear infinite tend-wind-pass}@keyframes tend-wind-pass{0%{stroke-dashoffset:var(--dash)}to{stroke-dashoffset:-1px}}.tend-bolt{fill:none;stroke:var(--color-text);stroke-linejoin:round;stroke-linecap:round;opacity:0;animation:7s linear infinite tend-bolt-flash}@keyframes tend-bolt-flash{0%,to{opacity:0}41%{opacity:0}42%{opacity:1}45%{opacity:.2}47%{opacity:1}52%{opacity:0}}@media (prefers-reduced-motion:reduce){.tend-leaves.sway .tend-leaf,.tend-leaf.drifting,.tend-star,.tend-cloud,.tend-wind-streak{animation:none}.tend-sun-ring{opacity:.8;animation:none}.tend-sun-ring:not(:first-of-type){display:none}.tend-leaf.drifting{opacity:0}.tend-raindrop,.tend-snowflake{opacity:.35;animation:none;transform:translate(-12px,80px)}.tend-bolt{opacity:.5;animation:none}.tend-star{opacity:.5}}.cabinet-backdrop{z-index:1090;background:0 0;position:fixed;inset:0}.cabinet{z-index:1100;pointer-events:none;align-items:center;display:flex;position:fixed;top:50%;left:0;transform:translateY(-50%)}.cabinet-handle{pointer-events:auto;background:var(--color-bg);border:1px solid var(--color-subtle);cursor:pointer;-webkit-tap-highlight-color:transparent;border-left:none;flex-direction:column;align-items:center;gap:5px;padding:9px 4px;line-height:0;transition:all .2s;display:flex;transform:translate(-1px)}.cabinet-handle-dot{border-radius:50%;width:6px;height:6px;transition:all .2s}.cabinet-handle-dot-filled{background:var(--color-muted)}.cabinet-handle-dot-hollow{border:1px solid var(--color-muted)}.cabinet-handle:hover,.cabinet.open .cabinet-handle{border-color:var(--color-border)}.cabinet-handle:hover .cabinet-handle-dot-filled{background:var(--color-text)}.cabinet-handle:hover .cabinet-handle-dot-hollow{border-color:var(--color-text)}.cabinet.open .cabinet-handle{background:var(--color-text);border-color:var(--color-text)}.cabinet.open .cabinet-handle-dot-filled{background:var(--color-bg)}.cabinet.open .cabinet-handle-dot-hollow{border-color:var(--color-bg)}.cabinet-drawer{pointer-events:none;flex-direction:column;gap:6px;margin-left:8px;display:flex}.cabinet.open .cabinet-drawer{pointer-events:auto}.cabinet-item{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);box-shadow:3px 3px 0 var(--color-border);cursor:pointer;letter-spacing:2px;text-transform:lowercase;text-align:left;opacity:0;-webkit-tap-highlight-color:transparent;align-items:center;gap:10px;min-height:44px;padding:12px 18px 12px 14px;font-family:Courier New,Courier,monospace;font-size:12px;transition:opacity .18s,transform .18s,background-color .15s,color .15s;display:flex;transform:translate(-10px)}.cabinet.open .cabinet-item{opacity:1;transform:translate(0)}.cabinet-item:hover{background:var(--color-text);color:var(--color-bg);box-shadow:1px 1px 0 var(--color-border)}.cabinet-item-symbol{text-align:center;flex-shrink:0;width:12px;font-size:9px}.cabinet-item-label{line-height:1}.cabinet-theme{cursor:default;gap:6px;padding-right:12px}.cabinet-theme:hover{background:var(--color-bg);color:var(--color-text);box-shadow:3px 3px 0 var(--color-border)}.cabinet-theme-btn{color:var(--color-muted);letter-spacing:1px;text-transform:lowercase;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;padding:6px 7px;font-family:Courier New,Courier,monospace;font-size:11px;line-height:1}.cabinet-theme-btn:hover{color:var(--color-text)}.cabinet-theme-btn.active{color:var(--color-text);border-color:var(--color-border)}.install-prompt{z-index:9999;animation:.3s ease-out slideUp;position:fixed;bottom:0;left:0;right:0}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.install-prompt-content{background:var(--color-surface);border-top:2px solid var(--color-border);justify-content:space-between;align-items:center;gap:20px;max-width:800px;margin:0 auto;padding:20px;display:flex}.install-prompt-text{flex:1}.install-prompt-title{color:var(--color-text);margin-bottom:4px;font-size:16px;font-weight:700}.install-prompt-description{color:var(--color-muted);font-size:14px}.install-prompt-actions{flex-shrink:0;gap:12px;display:flex}.install-prompt-button{cursor:pointer;border:2px solid var(--color-border);white-space:nowrap;padding:8px 20px;font-size:14px;font-weight:600;transition:all .2s}.install-prompt-button-primary{background:var(--color-text);color:var(--color-bg)}.install-prompt-button-primary:hover{opacity:.8}.install-prompt-button-secondary{background:var(--color-surface);color:var(--color-text)}.install-prompt-button-secondary:hover{background:var(--color-surface-hover)}@media (width<=600px){.install-prompt-content{flex-direction:column;align-items:stretch;padding:16px}.install-prompt-text{text-align:center}.install-prompt-actions{flex-direction:column;gap:8px}.install-prompt-button{width:100%}}.offline-indicator{z-index:9998;animation:.3s ease-out slideUp;position:fixed;bottom:0;left:0;right:0}.offline-indicator-content{padding:12px 20px;padding-bottom:calc(12px + var(--safe-bottom,0px));justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.offline-indicator-offline .offline-indicator-content,.offline-indicator-online .offline-indicator-content{background:var(--color-text);color:var(--color-bg);border-top:2px solid var(--color-border)}.offline-indicator-icon{font-size:16px;line-height:1}.offline-indicator-text{letter-spacing:-.3px;font-family:Courier New,Courier,monospace}@media (width<=600px){.offline-indicator-content{padding:10px 16px;font-size:13px}.offline-indicator-icon{font-size:14px}}.update-banner{top:calc(60px + var(--safe-top,0px));z-index:9997;animation:.3s ease-out slideDown;position:fixed;left:0;right:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.update-banner-content{background:var(--color-surface);border-top:2px solid var(--color-border);border-bottom:2px solid var(--color-border);justify-content:space-between;align-items:center;gap:20px;max-width:800px;margin:0 auto;padding:16px 20px;display:flex}.update-banner-text{flex:1}.update-banner-title{color:var(--color-text);margin-bottom:2px;font-size:14px;font-weight:700}.update-banner-description{color:var(--color-muted);font-size:13px}.update-banner-button{cursor:pointer;border:2px solid var(--color-border);background:var(--color-text);color:var(--color-bg);white-space:nowrap;padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s}.update-banner-button:hover{opacity:.8}.update-banner-actions{align-items:center;gap:10px;display:flex}.update-banner-dismiss{cursor:pointer;color:var(--color-muted);white-space:nowrap;background:0 0;border:none;padding:6px 12px;font-size:13px;font-weight:600}.update-banner-dismiss:hover{color:var(--color-text)}@media (width<=600px){.update-banner{top:calc(50px + var(--safe-top,0px))}.update-banner-content{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px}.update-banner-text{text-align:center}.update-banner-actions{flex-direction:column;align-items:stretch;gap:6px}.update-banner-button{width:100%}}.sub-banner{padding:10px 16px;padding-bottom:calc(10px + var(--safe-bottom,0px));letter-spacing:.3px;z-index:200;justify-content:center;align-items:center;gap:12px;font-family:inherit;font-size:12px;font-weight:500;display:flex;position:fixed;bottom:0;left:0;right:0}.sub-banner-trial{background:var(--color-surface);color:var(--color-muted);border-top:1px solid var(--color-border)}.sub-banner-expired{background:var(--color-text);color:var(--color-bg)}.sub-banner-info{background:var(--color-surface);color:var(--color-muted);border-top:1px solid var(--color-border)}.sub-banner-btn{color:inherit;cursor:pointer;letter-spacing:.5px;background:0 0;border:1.5px solid;padding:5px 14px;font-family:inherit;font-size:11px;font-weight:700;transition:all .15s}.sub-banner-btn:hover{opacity:.7}.wordmark{letter-spacing:.107em;color:var(--color-text);align-items:center;gap:.036em;font-weight:300;line-height:1;display:inline-flex}.wordmark-dot-filled,.wordmark-dot-hollow{border-radius:50%;width:.55em;height:.55em;margin-right:.143em;display:inline-block;position:relative}.wordmark-dot-filled{background:var(--color-text);border:.071em solid var(--color-text);top:.08em}.wordmark-dot-hollow{background:var(--color-bg);border:.071em solid var(--color-text);top:.19em}.welcome-splash{z-index:99999;background:var(--color-bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.welcome-drop{background:var(--color-text);opacity:0;z-index:3;border-radius:50%/60% 60% 40% 40%;width:8px;height:12px;animation:.8s cubic-bezier(.4,0,.9,.6) forwards welcome-drop-fall;position:absolute}@keyframes welcome-drop-fall{0%{opacity:0;transform:translateY(-40vh)scale(.8)}15%{opacity:1}85%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(0)scale(2.5,.3)}}.welcome-impact{background:var(--color-text);opacity:0;z-index:2;border-radius:50%;width:20px;height:20px;position:absolute}.welcome-splash--ripple .welcome-impact,.welcome-splash--reveal .welcome-impact{animation:.3s ease-out forwards welcome-impact-flash}@keyframes welcome-impact-flash{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(2)}}.welcome-ripple{border:1.5px solid var(--color-text);opacity:0;z-index:2;pointer-events:none;border-radius:50%;width:10px;height:10px;position:absolute}.welcome-splash--ripple .welcome-ripple,.welcome-splash--reveal .welcome-ripple{animation:1.2s cubic-bezier(.2,.6,.3,1) forwards welcome-ring-expand}.welcome-ripple--1{animation-delay:0s!important}.welcome-ripple--2{animation-delay:.15s!important}.welcome-ripple--3{animation-delay:.3s!important}.welcome-ripple--4{animation-delay:.45s!important}@keyframes welcome-ring-expand{0%{opacity:0;border-width:2px;width:10px;height:10px}5%{opacity:.7}50%{opacity:.3;border-width:1px}to{opacity:0;border-width:.5px;width:min(160vw,160vh);height:min(160vw,160vh)}}.welcome-wordmark{z-index:4;opacity:0;font-size:56px;position:absolute}.welcome-splash--ripple .welcome-wordmark{animation:.6s .3s forwards welcome-wordmark-in}.welcome-splash--reveal .welcome-wordmark{opacity:1;animation:.5s .2s forwards welcome-wordmark-out}@keyframes welcome-wordmark-in{0%{opacity:0;letter-spacing:.25em;transform:scale(.9)}to{opacity:1;letter-spacing:.107em;transform:scale(1)}}@keyframes welcome-wordmark-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.welcome-reveal-mask{z-index:1;background:var(--color-bg);pointer-events:none;position:fixed;inset:0}.welcome-splash--reveal .welcome-reveal-mask{animation:1.2s cubic-bezier(.4,0,.2,1) forwards welcome-circle-reveal}@keyframes welcome-circle-reveal{0%{clip-path:circle(0%);background:var(--color-bg)}to{clip-path:circle(100%);background:0 0}}.welcome-splash--reveal{animation:1.2s .8s forwards welcome-fade-out}@keyframes welcome-fade-out{0%{opacity:1;pointer-events:all}to{opacity:0;pointer-events:none}}.login-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-container{width:100%;max-width:380px}.login-container--hidden{opacity:0;transform:translateY(12px)}.login-container--visible{animation:.6s forwards login-fade-up}@keyframes login-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.login-brand{text-align:center;margin-bottom:48px}.login-logo{color:var(--color-text);margin:0;font-size:48px;line-height:1}.login-tagline{color:var(--color-muted);letter-spacing:2px;text-transform:lowercase;margin-top:8px;font-size:13px}.login-learn-more{background:var(--color-bg);border:2px solid var(--color-border);color:var(--color-text);letter-spacing:1.5px;text-transform:lowercase;cursor:pointer;margin-top:22px;padding:10px 18px;font-family:inherit;font-size:12px;font-weight:600;transition:box-shadow .15s,transform .15s;display:inline-block}.login-learn-more:hover{box-shadow:3px 3px 0 var(--color-text);transform:translate(-1px,-1px)}.login-learn-more:active{box-shadow:1px 1px 0 var(--color-text);transform:translate(1px,1px)}.login-mode-toggle{border:2px solid var(--color-border);margin-bottom:32px;display:flex}.mode-btn{color:var(--color-muted);cursor:pointer;letter-spacing:.5px;background:0 0;border:none;flex:1;padding:12px 16px;font-size:14px;font-weight:600;transition:all .15s}.mode-btn.active{background:var(--color-text);color:var(--color-bg)}.mode-btn:not(.active):hover{background:var(--color-surface-hover);color:var(--color-text)}.login-error{border:2px solid var(--color-text);background:var(--color-surface);color:var(--color-text);margin-bottom:24px;padding:12px 16px;font-size:13px;font-weight:500;line-height:1.4}.login-form{flex-direction:column;gap:20px;display:flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--color-muted);letter-spacing:1px;text-transform:lowercase;font-size:12px;font-weight:600}.form-input{border:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text);-webkit-appearance:none;border-radius:0;outline:none;padding:14px 16px;font-family:inherit;font-size:16px;transition:all .15s}.form-input::placeholder{color:var(--color-subtle)}.form-input:focus{border-color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.form-input:disabled{opacity:.5}.form-input-wrapper{align-items:center;display:flex;position:relative}.form-input-wrapper .form-input{width:100%;padding-right:48px}.password-toggle{width:44px;color:var(--color-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:none;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:color .15s;display:flex;position:absolute;top:2px;bottom:2px;right:2px}.password-toggle:hover{color:var(--color-text)}.form-field-inline{align-items:center;display:flex}.remember-label{color:var(--color-muted);cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.3px;align-items:center;gap:10px;font-size:13px;display:flex}.remember-checkbox{opacity:0;width:0;height:0;position:absolute}.remember-check-visual{border:2px solid var(--color-border);background:var(--color-bg);flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.remember-checkbox:checked+.remember-check-visual{background:var(--color-text)}.remember-checkbox:checked+.remember-check-visual:after{content:"";background:var(--color-bg);width:6px;height:6px}.remember-checkbox:focus-visible+.remember-check-visual{box-shadow:3px 3px 0 var(--color-text)}.login-submit{border:2px solid var(--color-border);background:var(--color-text);color:var(--color-bg);cursor:pointer;letter-spacing:.5px;margin-top:8px;padding:16px 24px;font-family:inherit;font-size:16px;font-weight:700;transition:all .15s}.login-submit:hover:not(:disabled){background:var(--color-bg);color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.login-submit:active:not(:disabled){box-shadow:1px 1px 0 var(--color-text);transform:translate(2px,2px)}.login-submit:disabled{opacity:.5;cursor:not-allowed}@media (width<=480px){.login-page{align-items:flex-start;padding:15vh 16px 16px}.login-logo{font-size:40px}.login-brand{margin-bottom:36px}.form-input{padding:12px 14px;font-size:16px}}.recovery-links{justify-content:center;align-items:center;gap:10px;margin-top:24px;display:flex}.recovery-link{color:var(--color-muted);cursor:pointer;letter-spacing:.3px;background:0 0;border:none;padding:0;font-family:inherit;font-size:12px;transition:color .15s}.recovery-link:hover{color:var(--color-text)}.recovery-divider{color:var(--color-subtle);font-size:12px}.recovery-header{margin-bottom:28px}.recovery-back{color:var(--color-muted);cursor:pointer;letter-spacing:.3px;background:0 0;border:none;margin-bottom:16px;padding:0;font-family:inherit;font-size:12px;transition:color .15s}.recovery-back:hover{color:var(--color-text)}.recovery-title{color:var(--color-text);letter-spacing:.5px;margin:0;font-size:18px;font-weight:600}.recovery-description{color:var(--color-muted);margin:0 0 8px;font-size:13px;line-height:1.6}.login-success{border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);margin-bottom:24px;padding:12px 16px;font-size:13px;font-weight:500;line-height:1.4}.reset-password-container{width:100%;max-width:380px}.reset-back{color:var(--color-muted);cursor:pointer;letter-spacing:.3px;background:0 0;border:none;margin-bottom:16px;padding:0;font-family:inherit;font-size:12px;transition:color .15s}.reset-back:hover{color:var(--color-text)}.reset-title{color:var(--color-text);letter-spacing:.5px;margin:0 0 24px;font-size:18px;font-weight:600}.landing-page{background:var(--color-bg);min-height:100vh;color:var(--color-text);flex-direction:column;align-items:center;padding:24px;display:flex}.landing-header{border-bottom:2px solid var(--color-border);justify-content:space-between;align-items:center;width:100%;max-width:880px;margin-bottom:48px;padding-bottom:20px;display:flex}.landing-logo{color:var(--color-text);margin:0;font-size:28px;line-height:1}.landing-nav-link{color:var(--color-text);letter-spacing:.5px;cursor:pointer;background:0 0;border:none;padding:8px 0;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .15s}.landing-nav-link:hover{opacity:.6}.landing-hero{text-align:center;width:100%;max-width:720px;padding:48px 0 64px}.landing-eyebrow{color:var(--color-muted);letter-spacing:2px;text-transform:lowercase;margin-bottom:24px;font-size:12px}.landing-headline{letter-spacing:-2px;color:var(--color-text);margin:0 0 28px;font-size:72px;font-weight:200;line-height:.95}.landing-sub{color:var(--color-muted);letter-spacing:.2px;max-width:540px;margin:0 auto 36px;font-size:17px;line-height:1.6}.landing-cta-row{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:16px;display:flex}.landing-cta{border:2px solid var(--color-border);background:var(--color-text);color:var(--color-bg);cursor:pointer;letter-spacing:.5px;padding:16px 28px;font-family:inherit;font-size:15px;font-weight:700;transition:all .15s}.landing-cta:hover{background:var(--color-bg);color:var(--color-text);box-shadow:4px 4px 0 var(--color-text)}.landing-cta:active{box-shadow:1px 1px 0 var(--color-text);transform:translate(3px,3px)}.landing-cta--wide{width:100%;max-width:320px;margin-top:8px}.landing-cta-secondary{border:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;letter-spacing:.5px;padding:16px 24px;font-family:inherit;font-size:15px;font-weight:600;transition:all .15s}.landing-cta-secondary:hover{box-shadow:4px 4px 0 var(--color-text)}.landing-trial-note{color:var(--color-muted);letter-spacing:1px;text-transform:lowercase;margin:0;font-size:12px}.landing-section{border-top:2px solid var(--color-border);width:100%;max-width:880px;padding:64px 0}.landing-section--pricing{text-align:center}.landing-section-title{color:var(--color-text);letter-spacing:3px;text-transform:uppercase;margin:0 0 32px;font-size:13px;font-weight:700}.landing-section-sub{color:var(--color-muted);letter-spacing:.2px;margin:-16px 0 36px;font-size:15px}.landing-features{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.landing-feature{border:2px solid var(--color-border);background:var(--color-bg);padding:28px;transition:box-shadow .15s,transform .15s}.landing-feature:hover{box-shadow:4px 4px 0 var(--color-text);transform:translate(-2px,-2px)}.landing-feature-icon{color:var(--color-text);margin-bottom:14px;font-size:22px;line-height:1}.landing-feature-title{color:var(--color-text);letter-spacing:.3px;text-transform:lowercase;margin:0 0 10px;font-size:16px;font-weight:700}.landing-feature-body{color:var(--color-muted);margin:0;font-size:14px;line-height:1.6}.landing-section--peek{text-align:center}.landing-peek-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.landing-peek-card{border:2px solid var(--color-border);background:var(--color-bg);flex-direction:column;transition:box-shadow .15s,transform .15s;display:flex;overflow:hidden}.landing-peek-card:hover{box-shadow:4px 4px 0 var(--color-text);transform:translate(-2px,-2px)}.landing-peek-visual{background:var(--color-surface);border-bottom:2px solid var(--color-border);justify-content:center;align-items:center;min-height:240px;padding:20px;display:flex}.landing-peek-meta{padding:24px 28px 28px}.landing-peek-tag{letter-spacing:2px;text-transform:uppercase;color:var(--color-muted);margin-bottom:10px;font-size:10px;font-weight:700;display:inline-block}.landing-peek-meta-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.landing-peek-switch{border:2px solid var(--color-border);flex-shrink:0;display:inline-flex}.landing-peek-switch-btn{background:var(--color-bg);color:var(--color-text);letter-spacing:.5px;text-transform:lowercase;cursor:pointer;border:none;border-right:2px solid var(--color-border);padding:4px 12px;font-family:inherit;font-size:11px;font-weight:600;transition:all .15s}.landing-peek-switch-btn:last-child{border-right:none}.landing-peek-switch-btn:hover{background:var(--color-surface-hover,var(--color-surface))}.landing-peek-switch-btn.active{background:var(--color-text);color:var(--color-bg)}.landing-peek-title{color:var(--color-text);letter-spacing:.3px;text-transform:lowercase;margin:0 0 10px;font-size:18px;font-weight:700}.landing-peek-body{color:var(--color-muted);margin:0;font-size:13px;line-height:1.6}.mini-mindmap{width:100%;max-width:400px;height:auto;color:var(--color-text);overflow:visible}.mini-mindmap-edge{stroke:var(--color-text);stroke-width:1px;stroke-opacity:0;stroke-dasharray:3 5;animation:.9s forwards mini-edge-in}@keyframes mini-edge-in{to{stroke-opacity:.35}}.mini-mindmap-node{opacity:0;animation:.7s forwards mini-node-in}@keyframes mini-node-in{to{opacity:1}}.mini-mindmap-node-circle{fill:var(--color-bg);stroke:var(--color-text);stroke-width:2px}.mini-mindmap-node-label{fill:var(--color-text);letter-spacing:.5px;text-transform:lowercase;font-family:inherit;font-size:10px;font-weight:600}.mini-mindmap-pulse{fill:none;stroke:var(--color-text);stroke-width:1.5px;opacity:0;transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out 1.6s infinite mini-pulse}@keyframes mini-pulse{0%{opacity:.45;transform:scale(1)}70%{opacity:0;transform:scale(1.4)}to{opacity:0;transform:scale(1.4)}}.mini-signal{flex-direction:column;gap:14px;width:100%;max-width:360px;display:flex}.mini-signal-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mini-signal-value{letter-spacing:-1px;color:var(--color-text);font-size:36px;font-weight:200;line-height:1}.mini-signal-label{letter-spacing:1.5px;text-transform:lowercase;color:var(--color-muted);margin-top:6px;font-size:10px}.mini-signal-tag{letter-spacing:1.5px;text-transform:uppercase;border:2px solid var(--color-text);background:var(--color-text);color:var(--color-bg);align-self:flex-start;padding:4px 8px;font-size:10px;font-weight:700}.mini-signal-chart{width:100%;height:auto;display:block}.mini-signal-baseline{stroke:var(--color-subtle);stroke-width:1px;stroke-dasharray:3 3}.mini-signal-area{fill:var(--color-text);fill-opacity:.08;opacity:0;animation:.9s .7s forwards mini-signal-fade}.mini-signal-line{fill:none;stroke:var(--color-text);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:600;stroke-dashoffset:600px;animation:1.5s forwards mini-signal-draw}@keyframes mini-signal-draw{to{stroke-dashoffset:0}}@keyframes mini-signal-fade{to{opacity:1}}.mini-signal-dot{fill:var(--color-text);opacity:0;animation:.3s 1.5s forwards mini-signal-fade}.mini-signal-tickers{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.mini-signal-ticker{border:2px solid var(--color-border);background:var(--color-bg);letter-spacing:.5px;opacity:0;align-items:center;gap:6px;padding:6px 10px;font-size:11px;animation:.4s forwards mini-ticker-in;display:inline-flex;transform:translateY(6px)}@keyframes mini-ticker-in{to{opacity:1;transform:translateY(0)}}.mini-signal-ticker-symbol{letter-spacing:1px;font-weight:700}.mini-signal-ticker-delta{color:var(--color-muted);font-weight:500}.mini-signal-ticker--up .mini-signal-ticker-delta:before{content:"▲ ";margin-right:1px;font-size:8px}.mini-signal-ticker--down .mini-signal-ticker-delta:before{content:"▼ ";margin-right:1px;font-size:8px}.mini-companies{flex-direction:column;gap:12px;width:100%;max-width:320px;display:flex}.mini-companies-search{border:2px solid var(--color-border);background:var(--color-bg);letter-spacing:.5px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.mini-companies-search-icon{color:var(--color-muted);font-size:15px}.mini-companies-search-query{font-weight:600}.mini-companies-search-caret{background:var(--color-text);width:2px;height:14px;animation:1.1s step-end infinite mini-caret-blink;display:inline-block}@keyframes mini-caret-blink{50%{opacity:0}}.mini-companies-rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.mini-companies-row{border:2px solid var(--color-border);background:var(--color-bg);opacity:0;grid-template-columns:48px 1fr 64px 52px;align-items:center;gap:10px;padding:8px 12px;font-size:12px;animation:.4s forwards mini-ticker-in;display:grid;transform:translateY(6px)}.mini-companies-symbol{letter-spacing:1px;font-weight:700}.mini-companies-name{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mini-companies-spark{width:64px;height:20px}.mini-companies-spark-line{fill:none;stroke:var(--color-text);stroke-width:1.5px}.mini-companies-delta{text-align:right;font-weight:600}.mini-companies-row--down .mini-companies-delta{color:var(--color-muted)}.mini-companies-hint{letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);text-align:center;margin:0;font-size:10px}@media (prefers-reduced-motion:reduce){.mini-mindmap-edge,.mini-mindmap-node,.mini-mindmap-pulse,.mini-signal-area,.mini-signal-line,.mini-signal-dot,.mini-signal-ticker,.mini-companies-row,.mini-companies-search-caret{opacity:1!important;stroke-dashoffset:0!important;animation:none!important;transform:none!important}.mini-mindmap-edge{stroke-opacity:.35!important}}.landing-plans{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:40px;display:flex}.landing-plan{border:2px solid var(--color-border);background:var(--color-bg);text-align:center;flex:1;min-width:200px;max-width:240px;padding:28px 24px;transition:box-shadow .15s,transform .15s;position:relative}.landing-plan--featured{background:var(--color-text);color:var(--color-bg)}.landing-plan:hover{box-shadow:4px 4px 0 var(--color-text);transform:translate(-2px,-2px)}.landing-plan-badge{background:var(--color-bg);color:var(--color-text);border:2px solid var(--color-text);letter-spacing:1px;text-transform:uppercase;padding:4px 8px;font-size:10px;font-weight:700;position:absolute;top:-10px;right:-10px}.landing-plan-name{letter-spacing:1.5px;text-transform:lowercase;opacity:.7;margin:0 0 12px;font-size:13px;font-weight:600}.landing-plan--featured .landing-plan-name{color:var(--color-bg)}.landing-plan-price{letter-spacing:-1px;margin:0 0 8px;font-size:36px;font-weight:200;line-height:1}.landing-plan-period{opacity:.6;margin-left:2px;font-size:14px;font-weight:400}.landing-plan-tag{letter-spacing:.5px;opacity:.6;text-transform:lowercase;margin:0;font-size:11px}.landing-perks{text-align:left;max-width:460px;margin:0 auto 32px;padding:0;list-style:none}.landing-perk{border-bottom:1px solid var(--color-subtle);color:var(--color-text);letter-spacing:.2px;align-items:center;gap:14px;padding:12px 0;font-size:14px;display:flex}.landing-perk:last-child{border-bottom:none}.landing-perk-mark{color:var(--color-text);flex-shrink:0;font-size:11px}.landing-footer{border-top:2px solid var(--color-border);justify-content:space-between;align-items:center;width:100%;max-width:880px;margin-top:32px;padding:48px 0 24px;display:flex}.landing-footer-text{color:var(--color-muted);letter-spacing:2px;text-transform:lowercase;margin:0;font-size:12px}.landing-footer-link{color:var(--color-text);letter-spacing:.5px;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .15s}.landing-footer-link:hover{opacity:.6}.landing-footer-nav{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.landing-footer-nav-link{color:var(--color-muted);letter-spacing:.5px;font-size:12px;text-decoration:none;transition:opacity .15s}.landing-footer-nav-link:hover{color:var(--color-text)}@media (width<=720px){.landing-headline{letter-spacing:-1.5px;font-size:52px}.landing-sub{font-size:15px}.landing-features,.landing-peek-grid{grid-template-columns:1fr;gap:16px}.landing-peek-visual{min-height:200px;padding:16px}.landing-section{padding:48px 0}.landing-hero{padding:32px 0 48px}.landing-plan{max-width:none}}@media (width<=480px){.landing-page{padding:16px}.landing-headline{font-size:44px}.landing-cta,.landing-cta-secondary{width:100%;max-width:320px}.landing-footer{text-align:center;flex-direction:column;gap:16px}}.onboarding-transition{z-index:99999;background:var(--color-bg);justify-content:center;align-items:center;transition:opacity .8s;display:flex;position:fixed;inset:0}.onboarding-transition--fade-out{opacity:0;pointer-events:none}.onboarding-canvas{z-index:0;width:100%;height:100%;position:absolute;inset:0}.onboarding-content{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:32px;max-width:400px;padding:24px;display:flex;position:relative}.onboarding-topics{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.onboarding-topic-tag{letter-spacing:.5px;color:var(--color-text);border:1px solid var(--color-border);opacity:0;padding:4px 10px;font-family:Courier New,Courier,monospace;font-size:11px;animation:.4s forwards tag-appear}@keyframes tag-appear{0%{opacity:0;transform:translateY(8px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.onboarding-phase{animation:.5s phase-fade-in}@keyframes phase-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.onboarding-phase-title{letter-spacing:-.3px;color:var(--color-text);margin:0 0 8px;font-size:22px;font-weight:700}.onboarding-phase-sub{color:var(--color-muted);margin:0;font-family:Courier New,Courier,monospace;font-size:13px;animation:2.4s ease-in-out infinite sub-pulse}@keyframes sub-pulse{0%,to{opacity:.5}50%{opacity:1}}.onboarding-progress{width:200px}.onboarding-progress-track{background:var(--color-subtle);height:2px;position:relative;overflow:hidden}.onboarding-progress-fill{background:var(--color-text);height:100%;transition:width 1.5s cubic-bezier(.25,.46,.45,.94);position:absolute;top:0;left:0}.onboarding-footer{color:var(--color-muted);letter-spacing:2px;text-transform:lowercase;opacity:.5;margin-top:16px;font-family:Courier New,Courier,monospace;font-size:10px}@media (width<=600px){.onboarding-phase-title{font-size:18px}.onboarding-phase-sub{font-size:12px}.onboarding-topic-tag{padding:3px 8px;font-size:10px}.onboarding-progress{width:160px}}.interest-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.interest-container{width:100%;max-width:640px}.interest-header{text-align:center;margin-bottom:36px}.interest-title{color:var(--color-text);letter-spacing:-.5px;margin:0 0 8px;font-size:28px;font-weight:700}.interest-subtitle{color:var(--color-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.interest-counter{border:2px solid var(--color-border);align-items:baseline;gap:2px;padding:8px 20px;display:inline-flex}.counter-current{color:var(--color-text);font-size:24px;font-weight:700}.counter-separator{color:var(--color-muted);margin:0 2px;font-size:16px}.counter-max{color:var(--color-muted);font-size:16px}.interest-error{border:2px solid var(--color-text);background:var(--color-surface);color:var(--color-text);text-align:center;margin-bottom:24px;padding:12px 16px;font-size:13px;font-weight:500}.interest-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:36px;display:grid}.interest-card{border:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;min-height:120px;padding:20px 16px;font-family:inherit;transition:all .12s;display:flex;position:relative}.interest-card:hover:not(:disabled){background:var(--color-surface-hover)}.interest-card.selected{background:var(--color-text);color:var(--color-bg);box-shadow:4px 4px 0 var(--color-border)}.interest-card.selected .interest-desc{color:var(--color-bg);opacity:.7}.interest-card.selected:hover .interest-name,.interest-card.selected:hover .interest-order,.interest-card.selected:hover .interest-desc{color:var(--color-text);opacity:.7}.interest-card:disabled{opacity:.5;cursor:not-allowed}.interest-order{opacity:.5;font-size:11px;font-weight:700;position:absolute;top:8px;right:10px}.interest-icon{margin-bottom:8px;font-size:20px;line-height:1}.interest-name{letter-spacing:.2px;margin-bottom:4px;font-size:13px;font-weight:700;line-height:1.2}.interest-desc{color:var(--color-muted);font-size:11px;line-height:1.3;transition:color .12s}.interest-footer{text-align:center}.interest-submit{border:2px solid var(--color-border);background:var(--color-text);width:100%;color:var(--color-bg);cursor:pointer;letter-spacing:.5px;margin-bottom:16px;padding:16px 24px;font-family:inherit;font-size:16px;font-weight:700;transition:all .15s}.interest-submit:hover:not(:disabled){background:var(--color-bg);color:var(--color-text);box-shadow:3px 3px 0 var(--color-text)}.interest-submit:active:not(:disabled){box-shadow:1px 1px 0 var(--color-text);transform:translate(2px,2px)}.interest-submit:disabled{opacity:.4;cursor:not-allowed}.interest-note{color:var(--color-muted);font-size:12px;line-height:1.5}@media (width<=600px){.interest-grid{grid-template-columns:repeat(2,1fr);gap:10px}.interest-page{align-items:flex-start;padding-top:10vh}.interest-title{font-size:24px}.interest-card{min-height:100px;padding:16px 12px}}@media (width<=380px){.interest-grid{grid-template-columns:1fr 1fr;gap:8px}.interest-card{min-height:90px;padding:14px 10px}.interest-name{font-size:12px}.interest-desc{font-size:10px}}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s,color .3s,border-color .3s}:root{--color-bg:#fff;--color-text:#000;--color-border:#000;--color-surface:#fff;--color-surface-hover:#f5f5f5;--color-muted:#999;--color-subtle:#ccc;--color-black:#000;--color-white:#fff;--color-gray-light:#f5f5f5;--color-gray:#e0e0e0;--color-gray-dark:#999;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--font-size-sm:12px;--font-size-base:16px;--font-size-lg:20px;--font-size-xl:28px;--font-size-xxl:36px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}[data-theme=dark]{--color-bg:#0a0a0a;--color-text:#fff;--color-border:#fff;--color-surface:#1a1a1a;--color-surface-hover:#2a2a2a;--color-muted:#888;--color-subtle:#444;--color-black:#fff;--color-white:#0a0a0a;--color-gray-light:#2a2a2a;--color-gray:#333;--color-gray-dark:#888}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.app{max-width:800px;min-height:100vh;padding:var(--spacing-lg);padding-top:calc(var(--spacing-lg) + var(--safe-top,0px));background-color:var(--color-bg);flex-direction:column;margin:0 auto;animation:.45s app-fade-in;display:flex}@keyframes app-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.app{animation:none}}.app-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.app-header-top{justify-content:center;align-items:center;gap:12px;display:flex}.app-title{font-size:var(--font-size-xl);letter-spacing:3px;color:var(--color-text);align-items:center;gap:1px;font-weight:300;display:inline-flex}.dot-filled,.dot-hollow{vertical-align:middle;border-radius:50%;width:.55em;height:.55em;margin-right:4px;display:inline-block;position:relative}.dot-filled{background:var(--color-text);border:2px solid var(--color-text);top:.08em}.dot-hollow{background:var(--color-bg);border:2px solid var(--color-text);top:.19em}.dot-wander{cursor:pointer;transition:top .25s,background .2s,transform .2s}.dot-wander:hover{background:var(--color-text);opacity:.4;top:.35em}.dot-wander:active{opacity:.2;top:.5em}.dot-wander:focus-visible{outline:2px solid var(--color-text);outline-offset:3px}.wind-gust{z-index:3000;pointer-events:none;position:fixed;inset:0;overflow:hidden}.wind-gust svg{width:100%;height:100%;display:block}.wind-path{fill:none;stroke:var(--color-text);stroke-width:1.8px;stroke-linecap:round;stroke-dasharray:.45 1.55;stroke-dashoffset:.45px;opacity:0;animation:1.1s cubic-bezier(.35,0,.25,1) forwards wind-sweep}.wind-path-2{stroke-width:1.3px;animation-delay:.12s}.wind-path-3{stroke-width:1.5px;animation-delay:.22s}@keyframes wind-sweep{0%{stroke-dashoffset:.45px;opacity:0}12%{opacity:.55}75%{opacity:.35}to{stroke-dashoffset:-1px;opacity:0}}@media (prefers-reduced-motion:reduce){.wind-path{opacity:0;animation:none}}.inbox-notice{color:var(--color-muted);margin:var(--spacing-sm) 0;font-size:13px;font-weight:400}.inbox-badge{color:var(--color-text);border:1px solid var(--color-border);background:var(--color-surface);white-space:nowrap;padding:4px 8px;font-family:Courier New,Courier,monospace;font-size:13px;font-weight:600}.app-subtitle{font-size:var(--font-size-base);color:var(--color-muted);font-weight:400}.graph-button{margin-top:var(--spacing-md);background:var(--color-text);color:var(--color-bg);border:2px solid var(--color-border);cursor:pointer;font-weight:600;font-size:var(--font-size-sm);padding:10px 20px;transition:all .2s}.graph-button:hover{background:var(--color-bg);color:var(--color-text)}.nav-buttons{margin-top:var(--spacing-md);border:2px solid var(--color-border);gap:0;width:100%;display:flex}.nav-button{background:var(--color-bg);color:var(--color-text);border:none;border-right:2px solid var(--color-border);cursor:pointer;font-weight:600;font-size:var(--font-size-sm);padding:10px 20px;transition:all .2s}.nav-buttons .nav-button{flex:1}.nav-buttons .nav-button:first-child{text-align:right}.nav-buttons .nav-button:last-child{text-align:left}.nav-button:last-child{border-right:none}.nav-button:hover{background:var(--color-text);color:var(--color-bg)}.world-nav{top:calc(20px + var(--safe-top,0px));border:2px solid var(--color-border);z-index:1000;background:var(--color-bg);gap:0;display:flex;position:fixed;left:20px}.app-main{flex:1;justify-content:center;align-items:flex-start;display:flex;position:relative}.card-deck{width:100%;max-width:600px}.cards-container{perspective:1000px;min-height:360px;transition:height .45s cubic-bezier(.22,1,.36,1);position:relative}.cards-container .article-card{width:auto;height:100%;min-height:0;transform:translate(0px, calc(var(--stack-position,0) * 12px)) rotate(0deg);opacity:calc(1 - var(--stack-position,0) * .45);z-index:calc(10 - var(--stack-position,0));transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .45s cubic-bezier(.22,1,.36,1),box-shadow .45s;position:absolute;top:0;left:0;right:0;overflow:hidden}.cards-container .article-card.behind{pointer-events:none}.cards-container .article-card>.card-body{opacity:calc(1 - var(--stack-position,0));transition:opacity .45s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion:reduce){.cards-container,.cards-container .article-card,.cards-container .article-card>.card-body{transition:none}}.deep-dive-banner{background:var(--color-text);color:var(--color-bg);padding:var(--spacing-md);text-align:center;margin-bottom:var(--spacing-lg);border:2px solid var(--color-border);font-weight:600}.deck-header{margin-bottom:var(--spacing-xl);justify-content:space-between;align-items:center;display:flex}.deck-title{font-size:var(--font-size-lg);font-weight:600}.deck-counter{font-size:var(--font-size-base);color:var(--color-gray-dark);font-weight:500}.card-stack{height:600px;margin-bottom:var(--spacing-xl);position:relative}.article-card{background:var(--color-surface);border:2px solid var(--color-border);padding:var(--spacing-lg);width:100%;max-width:600px;box-shadow:4px 4px 0 var(--color-border);-webkit-user-select:none;user-select:none;touch-action:pan-y;position:relative}.card-header{margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;display:flex}.quality-indicator{letter-spacing:2px;font-weight:700}.publication-date{color:var(--color-gray-dark);font-weight:500}.card-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm);font-weight:700;line-height:1.3}.card-metadata{margin-bottom:var(--spacing-md);font-size:var(--font-size-sm)}.source{margin-bottom:var(--spacing-xs);font-weight:600}.authors{color:var(--color-gray-dark);font-style:italic}.topics{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);flex-wrap:wrap;display:flex}.topic-tag{background:var(--color-text);color:var(--color-bg);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);border:1px solid var(--color-border);font-weight:500}.abstract{font-size:var(--font-size-base);margin-bottom:var(--spacing-md);color:var(--color-text);max-height:130px;line-height:1.6;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 55%,#0000 100%);mask-image:linear-gradient(#000 55%,#0000 100%)}.citations{font-size:var(--font-size-sm);color:var(--color-gray-dark);margin-bottom:var(--spacing-md)}.card-actions{gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.read-button,.primer-button{padding:var(--spacing-md);font-size:var(--font-size-base);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;flex:1;font-weight:600;transition:all .2s}.read-button:hover,.primer-button{background:var(--color-text);color:var(--color-bg)}.primer-button:hover{background:var(--color-surface);color:var(--color-text)}.read-button:active,.primer-button:active{box-shadow:none;transform:translate(2px,2px)}.card-watching{background:var(--color-text);color:var(--color-bg)}.swipe-hints{pointer-events:none;z-index:10;position:absolute;inset:0;overflow:hidden}.hint{font-size:var(--font-size-sm);letter-spacing:1px;text-transform:uppercase;padding:var(--spacing-xs) var(--spacing-md);background:var(--color-text);color:var(--color-bg);font-weight:700;transition:opacity .15s;position:absolute}.hint-left{top:var(--spacing-lg);right:var(--spacing-md);transform:rotate(-6deg)}.hint-right{top:var(--spacing-lg);left:var(--spacing-md);transform:rotate(6deg)}.swipe-instructions{padding:var(--spacing-md);background-color:var(--color-gray-light);border:1px solid var(--color-border);margin-top:var(--spacing-lg);justify-content:space-around;display:flex}.instruction{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:500;display:flex}.arrow{font-size:var(--font-size-lg);font-weight:700}.deck-empty{text-align:center;padding:var(--spacing-xl);border:2px solid var(--color-border);background-color:var(--color-gray-light)}.empty-icon{margin-bottom:var(--spacing-md);font-size:48px}.deck-empty h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.deck-empty p{color:var(--color-gray-dark)}.article-reader{background:var(--color-surface);flex-direction:column;width:100%;min-height:100vh;display:flex}.reader-header{padding:var(--spacing-lg);border-bottom:2px solid var(--color-border);background:var(--color-surface);z-index:100;justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex;position:sticky;top:0}.close-button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-weight:600;transition:all .2s}.close-button:hover{background:var(--color-text);color:var(--color-bg)}.reader-content{max-width:700px;padding:var(--spacing-xl) var(--spacing-lg);flex:1;margin:0 auto}.reader-metadata{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.reader-topics{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.reader-topic-tag{background:var(--color-text);color:var(--color-bg);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);font-weight:500}.reader-date{color:var(--color-gray-dark);font-size:var(--font-size-sm);font-weight:500}.reader-title{font-size:var(--font-size-xxl);margin-bottom:var(--spacing-lg);font-weight:700;line-height:1.2}.reader-authors-source{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.reader-authors{font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);font-style:italic}.reader-source{font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);font-weight:600}.reader-citations{font-size:var(--font-size-sm);color:var(--color-gray-dark)}.reader-summary{margin:var(--spacing-lg) 0;padding:var(--spacing-md) var(--spacing-lg);border-left:3px solid var(--color-border);background:var(--color-surface)}.reader-summary-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);margin-bottom:var(--spacing-xs);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.reader-summary-text{font-size:var(--font-size-base);color:var(--color-text);margin:0;line-height:1.7}.reader-body{font-size:var(--font-size-base);line-height:1.8}.content-h1{font-size:var(--font-size-xl);margin:var(--spacing-xl) 0 var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border);font-weight:700}.content-h2{font-size:var(--font-size-lg);margin:var(--spacing-lg) 0 var(--spacing-md);font-weight:600}.content-h3{font-size:var(--font-size-base);margin:var(--spacing-md) 0 var(--spacing-sm);font-weight:600}.content-paragraph{margin-bottom:var(--spacing-md);text-align:justify}.reader-footer,.reader-takeaways{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.reader-takeaways-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);margin-bottom:var(--spacing-md);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.reader-takeaways-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.reader-takeaway-item{color:var(--color-text);padding-left:16px;font-size:14px;line-height:1.6;position:relative}.reader-takeaway-item:before{content:"-";color:var(--color-muted);position:absolute;left:0}.reader-ai-summary{margin:var(--spacing-lg) 0;padding:var(--spacing-md) var(--spacing-lg);border-left:3px solid var(--color-text);background:var(--color-surface)}.reader-ai-badge{text-transform:uppercase;letter-spacing:.8px;color:var(--color-muted);margin-bottom:6px;font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700;display:inline-block}.reader-ai-summary-text{color:var(--color-text);margin:0;font-size:15px;font-style:italic;line-height:1.6}.reader-ai-summary--loading .reader-ai-badge{animation:1.5s ease-in-out infinite pulse-fade}.reader-ai-badge-ellipsis:after{content:"";animation:1.8s steps(4,end) infinite summary-ellipsis}@keyframes summary-ellipsis{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.reader-summary-shimmer{flex-direction:column;gap:8px;display:flex}.reader-summary-shimmer-line{background:linear-gradient(90deg, var(--color-subtle) 25%, var(--color-surface-hover) 50%, var(--color-subtle) 75%);background-size:200% 100%;width:100%;height:12px;animation:1.6s ease-in-out infinite summary-shimmer;display:block}.reader-summary-shimmer-line--short{width:62%}@keyframes summary-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.reader-summary-shimmer-line{background:var(--color-subtle);animation:2s ease-in-out infinite pulse-fade}.reader-ai-badge-ellipsis:after{content:"...";animation:none}}.reader-takeaways-header{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);display:flex}.reader-ai-loading-badge{text-transform:none;letter-spacing:0;color:var(--color-muted);margin-left:8px;font-size:9px;font-weight:500;animation:1.5s ease-in-out infinite pulse-fade;display:inline-block}@keyframes pulse-fade{0%,to{opacity:.4}50%{opacity:1}}.reader-analysis-toggle{border:1px solid var(--color-border);gap:0;display:flex;overflow:hidden}.reader-toggle-btn{text-transform:uppercase;letter-spacing:.3px;color:var(--color-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:4px 12px;font-family:Courier New,Courier,monospace;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.reader-toggle-btn:not(:last-child){border-right:1px solid var(--color-border)}.reader-toggle-btn.active{background:var(--color-text);color:var(--color-bg)}.reader-toggle-btn:hover:not(.active):not(:disabled){background:var(--color-surface);color:var(--color-text)}.reader-toggle-btn:disabled{cursor:wait;opacity:.6}.reader-pdf-indicator{background:var(--color-muted);color:var(--color-bg);letter-spacing:.5px;margin-left:2px;padding:1px 4px;font-size:8px;font-weight:700;display:inline-block}.reader-takeaways-skeleton{flex-direction:column;gap:12px;display:flex}.skeleton-line{background:var(--color-surface);border-radius:2px;height:14px;animation:1.2s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{opacity:.3}50%{opacity:.6}to{opacity:.3}}.reader-deep-analysis{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);gap:var(--spacing-lg);flex-direction:column;animation:.3s fade-in;display:flex}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.reader-deep-section{flex-direction:column;gap:6px;display:flex}.reader-deep-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.reader-deep-text{color:var(--color-text);margin:0;font-size:14px;line-height:1.65}.reader-deep-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.reader-deep-list li{color:var(--color-text);padding-left:16px;font-size:14px;line-height:1.6;position:relative}.reader-deep-list li:before{content:"-";color:var(--color-muted);position:absolute;left:0}.reader-deep-highlight{padding:var(--spacing-md) var(--spacing-lg);border-left:3px solid var(--color-text);background:var(--color-surface)}.reader-deep-highlight .reader-deep-text{font-size:14px;font-weight:500}.reader-analysis-error{color:var(--color-muted);margin-top:var(--spacing-sm);font-size:12px;font-style:italic}.reader-links{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.reader-links-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);margin-bottom:var(--spacing-md);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.reader-links-grid{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.reader-link-button{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.reader-link-button:hover{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.reader-link-button:active{transform:scale(.97)}.reader-link-icon{font-size:14px;line-height:1}.reader-link-text{line-height:1}.external-link{color:var(--color-text);border-bottom:2px solid var(--color-border);padding-bottom:2px;font-weight:600;text-decoration:none}.external-link:hover{background:var(--color-text);color:var(--color-bg)}@media (width<=768px){.app{padding:var(--spacing-md)}.app-title{font-size:var(--font-size-lg)}.card-stack{height:550px}.article-card{padding:var(--spacing-md)}.card-title{font-size:var(--font-size-base)}.reader-title{font-size:var(--font-size-xl)}.swipe-instructions{gap:var(--spacing-sm);flex-direction:column}.world-nav{z-index:1001;position:fixed;top:12px;left:12px;right:auto}.world-nav .nav-button{padding:8px 14px;font-size:11px}}@media (width<=480px){.card-stack{height:500px}.read-button,.primer-button{font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-xs)}.article-card{padding:var(--spacing-sm) var(--spacing-md)}.abstract{max-height:90px;font-size:14px;line-height:1.5;-webkit-mask-image:linear-gradient(#000 50%,#0000 100%);mask-image:linear-gradient(#000 50%,#0000 100%)}.card-title{font-size:15px}}.reader-flag{margin-top:var(--spacing-xl);padding-top:var(--spacing-md);border-top:1px solid var(--color-subtle);text-align:center}.reader-flag-btn{color:var(--color-muted);text-align:center;cursor:pointer;background:0 0;border:none;min-width:44px;min-height:44px;padding:8px 0;font-size:20px;line-height:1}.reader-flag-btn:hover{color:var(--color-text)}.reader-flag-label{margin:0 0 var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-muted);letter-spacing:2px;text-transform:lowercase}.reader-flag-reason{box-sizing:border-box;border:1px solid var(--color-border);width:100%;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);resize:vertical;background:0 0;padding:10px 12px}.reader-flag-reason:focus{border-color:var(--color-text);outline:none}.reader-flag-row{margin-top:var(--spacing-sm);justify-content:center;gap:10px;display:flex}.reader-flag-submit,.reader-flag-cancel{border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-sm);letter-spacing:1px;cursor:pointer;background:0 0;min-height:44px;padding:10px 16px}.reader-flag-submit:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.reader-flag-submit:disabled{color:var(--color-muted);cursor:default}.reader-flag-cancel{border-color:var(--color-subtle);color:var(--color-muted)}.reader-flag-cancel:hover{color:var(--color-text)}.reader-flag-done,.reader-flag-error{font-size:var(--font-size-sm);color:var(--color-muted);margin:0}.reader-flag-error{margin-top:var(--spacing-sm)}.reader-header-actions{align-items:center;gap:8px;display:flex}.reader-keep-button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;white-space:nowrap;font-weight:600;transition:all .2s}.reader-keep-button:hover:not(:disabled){background:var(--color-text);color:var(--color-bg)}.reader-keep-button:disabled{color:var(--color-muted);border-color:var(--color-subtle);cursor:default}.knowledge-graph-container{background:var(--color-bg);flex-direction:column;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0;overflow:hidden}.graph-header{padding:20px;padding-top:calc(20px + var(--safe-top,0px));border-bottom:2px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;display:flex}.back-button{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border);cursor:pointer;flex-shrink:0;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.graph-nav-buttons{flex-shrink:0;gap:0;display:flex}.graph-nav-buttons .back-button+.back-button{border-left:none}.back-button:hover{background:var(--color-text);color:var(--color-bg)}.graph-header h1{color:var(--color-text);flex-shrink:0;margin:0;font-size:24px;font-weight:700}.graph-controls{border:2px solid var(--color-border);flex-shrink:0;gap:0;display:flex}.view-toggle{background:var(--color-surface);color:var(--color-text);cursor:pointer;border:none;border-right:2px solid var(--color-border);padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.view-toggle:last-child{border-right:none}.view-toggle:hover{background:var(--color-surface-hover)}.view-toggle.active{background:var(--color-text);color:var(--color-bg)}.graph-counter{color:var(--color-muted);white-space:nowrap;font-size:13px}.graph-stats{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:14px;display:flex}.suggestions-toggle{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 8px;font-family:Courier New,Courier,monospace;font-size:11px;transition:all .15s}.suggestions-toggle:hover,.suggestions-toggle.active{border-color:var(--color-border);color:var(--color-text)}.graph-content{flex:1;min-height:0;display:flex;overflow:hidden}.graph-canvas{flex:1;min-width:0;position:relative;overflow:hidden}.connect-mode-banner{background:var(--color-text);color:var(--color-bg);border:2px solid var(--color-border);z-index:10;align-items:center;gap:15px;padding:12px 20px;font-size:13px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.connect-mode-banner button{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-bg);cursor:pointer;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.connect-mode-banner button:hover{opacity:.8}.graph-sidebar{border-left:2px solid var(--color-border);background:var(--color-surface);flex-shrink:0;width:400px;padding:20px;overflow-y:auto}.graph-sidebar h3{margin:0 0 15px;font-size:18px;font-weight:700;line-height:1.4}.article-meta{margin-bottom:20px;font-size:13px;line-height:1.6}.article-meta div{margin-bottom:6px}.article-meta strong{font-weight:600}.article-actions{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.share-post-row{gap:8px;display:flex}.share-post-row>*{flex:1;min-width:0}.share-post-row .btn-primary{white-space:nowrap;text-overflow:ellipsis;width:100%;overflow:hidden}.btn-primary{background:var(--color-border);width:100%;color:var(--color-surface);border:2px solid var(--color-border);cursor:pointer;padding:12px;font-size:14px;font-weight:600}.btn-remove{background:var(--color-surface);width:100%;color:var(--color-muted);border:1px solid var(--color-subtle);cursor:pointer;padding:10px;font-size:12px;font-weight:500;transition:all .15s}.btn-remove:hover{color:var(--color-text);border-color:var(--color-border);background:var(--color-surface-hover)}.confirm-remove{border:1px solid var(--color-border);background:var(--color-surface);padding:12px}.confirm-remove-label{color:var(--color-muted);margin-bottom:10px;font-size:12px;line-height:1.4;display:block}.confirm-remove-actions{gap:8px;display:flex}.btn-confirm-yes{background:var(--color-text);color:var(--color-bg);border:2px solid var(--color-border);cursor:pointer;flex:1;padding:8px;font-size:12px;font-weight:600;transition:all .15s}.btn-confirm-yes:hover{background:var(--color-surface);color:var(--color-text)}.btn-confirm-no{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-subtle);cursor:pointer;flex:1;padding:8px;font-size:12px;font-weight:500;transition:all .15s}.btn-confirm-no:hover{color:var(--color-text);border-color:var(--color-border)}.btn-primary:hover:not(:disabled){background:var(--color-surface);color:var(--color-text)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.connection-settings{border:2px solid var(--color-border);background:var(--color-surface);margin-bottom:20px;padding:15px}.connect-instruction{color:var(--color-muted);border-bottom:1px solid var(--color-subtle);margin-bottom:15px;padding-bottom:12px;font-size:13px;line-height:1.5}.connect-instruction em{color:var(--color-text);font-style:normal;font-weight:600}.connection-settings h4{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);margin:0 0 8px;font-size:12px;font-weight:700}.optional-label{text-transform:none;letter-spacing:0;font-size:11px;font-weight:400}.connection-type-group{border:2px solid var(--color-border);flex-wrap:wrap;gap:0;margin-bottom:15px;display:flex}.connection-type-btn{background:var(--color-surface);min-width:0;color:var(--color-text);border:none;border-right:1px solid var(--color-border);cursor:pointer;white-space:nowrap;flex:1;padding:8px 6px;font-family:Courier New,Courier,monospace;font-size:11px;font-weight:500;transition:all .15s}.connection-type-btn:last-child{border-right:none}.connection-type-btn:hover{background:var(--color-surface-hover)}.connection-type-btn.active{background:var(--color-text);color:var(--color-bg);font-weight:700}.connection-settings textarea{border:2px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);resize:vertical;padding:8px;font-family:inherit;font-size:13px}.connection-settings textarea::placeholder{color:var(--color-muted)}.connections-list-section{border-bottom:1px solid var(--color-subtle);margin-bottom:16px;padding-bottom:16px}.connections-list-section h4{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);margin:0 0 10px;font-size:12px;font-weight:700}.connections-list{flex-direction:column;gap:6px;display:flex}.connection-item{border:1px solid var(--color-subtle);background:var(--color-surface);justify-content:space-between;align-items:flex-start;gap:8px;padding:8px 10px;font-size:12px;display:flex}.connection-item-info{flex-direction:column;gap:2px;min-width:0;display:flex}.connection-type-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted);font-family:Courier New,Courier,monospace;font-size:10px;font-weight:700}.connection-target{color:var(--color-text);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.connection-note-preview{color:var(--color-muted);font-size:11px;font-style:italic}.connection-delete-btn{border:1px solid var(--color-subtle);color:var(--color-muted);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:14px;line-height:1;transition:all .15s;display:flex}.connection-delete-btn:hover{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface-hover)}.btn-cancel{background:var(--color-surface)!important;color:var(--color-text)!important}.btn-cancel:hover{background:var(--color-surface-hover)!important}.notes-section{border-top:1px solid var(--color-subtle);margin-bottom:20px;padding-top:20px}.notes-section h4{margin:0 0 12px;font-size:16px;font-weight:600}.add-note{margin-bottom:15px}.add-note textarea{border:2px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);resize:vertical;margin-bottom:8px;padding:10px;font-family:inherit;font-size:13px}.add-note textarea::placeholder{color:var(--color-muted)}.add-note button{background:var(--color-surface);width:100%;color:var(--color-text);border:2px solid var(--color-border);cursor:pointer;padding:10px;font-size:14px;font-weight:600}.add-note button:hover:not(:disabled){background:var(--color-border);color:var(--color-surface)}.add-note button:disabled{opacity:.5;cursor:not-allowed}.notes-list{max-height:200px;overflow-y:auto}.note-item{border:1px solid var(--color-subtle);background:var(--color-surface);margin-bottom:8px;padding:10px}.note-text{margin-bottom:6px;font-size:13px;line-height:1.5}.note-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.note-date{color:var(--color-muted);font-size:11px}.note-post-btn{letter-spacing:.5px;color:var(--color-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:4px 6px;font-size:11px}.note-post-btn:hover{color:var(--color-text)}.article-abstract{border-top:1px solid var(--color-subtle);padding-top:20px;padding-bottom:20px}.article-abstract h4{margin:0 0 10px;font-size:14px;font-weight:600}.article-abstract p{color:var(--color-muted);font-size:13px;line-height:1.6}.no-selection{height:100%;color:var(--color-muted);text-align:center;justify-content:center;align-items:center;padding:40px;display:flex}.no-notes-yet{color:var(--color-muted);font-size:14px}.graph-sidebar::-webkit-scrollbar{width:6px}.notes-list::-webkit-scrollbar{width:6px}.graph-sidebar::-webkit-scrollbar-track{background:var(--color-bg)}.notes-list::-webkit-scrollbar-track{background:var(--color-bg)}.graph-sidebar::-webkit-scrollbar-thumb{background:var(--color-subtle);border-radius:0}.notes-list::-webkit-scrollbar-thumb{background:var(--color-subtle);border-radius:0}.graph-sidebar::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.notes-list::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.map-controls{z-index:10;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.map-controls>*{pointer-events:auto}.map-reset-btn{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-subtle);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;padding:6px 10px;font-family:Courier New,Courier,monospace;font-size:10px;font-weight:600;transition:all .15s}.map-reset-btn:hover{background:var(--color-text);color:var(--color-bg)}.map-nav{grid-template:".up."28px"lt.rt"28px".dn."28px/28px 28px 28px;gap:2px;display:grid}.map-nav-btn{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-subtle);cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;transition:all .15s;display:flex}.map-nav-btn:hover{background:var(--color-text);color:var(--color-bg)}.map-zoom{gap:2px;display:flex}.map-zoom .map-nav-btn{width:28px;height:28px}.map-nav-btn.nav-up{grid-area:up}.map-nav-btn.nav-down{grid-area:dn}.map-nav-btn.nav-left{grid-area:lt}.map-nav-btn.nav-right{grid-area:rt}.articles-list-view{height:100%;padding:56px 16px 16px;overflow-y:auto}.articles-list-view::-webkit-scrollbar{width:6px}.articles-list-view::-webkit-scrollbar-track{background:var(--color-bg)}.articles-list-view::-webkit-scrollbar-thumb{background:var(--color-subtle);border-radius:0}.articles-list-view::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.articles-list-item{border:1px solid var(--color-subtle);cursor:pointer;background:var(--color-surface);align-items:flex-start;gap:12px;margin-bottom:8px;padding:14px 12px;transition:all .15s;display:flex}.articles-list-item:hover{border-color:var(--color-border);background:var(--color-surface-hover)}.articles-list-item.selected{border-color:var(--color-border);border-width:2px;padding:13px 11px}.articles-list-quality{color:var(--color-text);flex-shrink:0;padding-top:2px;font-size:10px}.articles-list-info{flex:1;min-width:0}.articles-list-title{color:var(--color-text);margin-bottom:4px;font-size:14px;font-weight:600;line-height:1.4}.articles-list-meta{color:var(--color-muted);margin-bottom:6px;font-size:11px}.articles-list-topics{flex-wrap:wrap;gap:4px;display:flex}.articles-list-topic{border:1px solid var(--color-subtle);color:var(--color-muted);padding:2px 6px;font-family:Courier New,Courier,monospace;font-size:10px}.articles-list-read-btn{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;flex-shrink:0;align-self:center;margin-right:12px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.articles-list-read-btn:hover{background:var(--color-text);color:var(--color-bg)}.graph-reader-overlay{z-index:100;background:var(--color-bg);width:100vw;height:100vh;padding-top:var(--safe-top,0px);position:fixed;top:0;left:0;overflow-y:auto}.canvas-search{z-index:20;align-items:center;gap:0;transition:all .25s;display:flex;position:absolute;top:12px;right:12px}.canvas-search-btn{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-subtle);cursor:pointer;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:18px;line-height:1;transition:all .2s;display:flex}.canvas-search-btn:hover{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.canvas-search.open{background:var(--color-surface);border:1px solid var(--color-subtle)}.canvas-search-input{color:var(--color-text);background:0 0;border:none;outline:none;width:200px;padding:8px 12px;font-family:inherit;font-size:13px}.canvas-search-input::placeholder{color:var(--color-muted)}.canvas-search-count{color:var(--color-muted);padding-right:6px;font-family:Courier New,monospace;font-size:11px}.canvas-search-close{color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:6px 10px;font-size:18px;line-height:1;transition:color .15s}.canvas-search-close:hover{color:var(--color-text)}@media (width<=768px){.graph-header{flex-wrap:wrap;gap:10px;padding:12px}.graph-header h1{flex-basis:auto;order:1;font-size:18px}.back-button{order:0;padding:6px 12px;font-size:12px}.graph-controls{order:2}.view-toggle{padding:6px 12px;font-size:12px}.graph-counter{order:2;font-size:11px}.graph-stats{flex-basis:100%;order:3;font-size:12px}.graph-content{flex-direction:column;overflow-y:auto}.graph-canvas{-webkit-overflow-scrolling:touch;flex:none;height:50vh;min-height:280px;overflow:hidden}.graph-canvas>div>svg{border-left:none!important;border-right:none!important;width:100%!important;height:100%!important}.graph-sidebar{border-left:none;border-top:2px solid var(--color-border);flex-shrink:0;width:100%;max-height:none;padding:16px;overflow-y:visible}.graph-sidebar h3{font-size:16px}.connect-mode-banner{padding:8px 12px;font-size:13px;top:5px;left:10px;right:10px;transform:none}.connection-type-group{flex-wrap:wrap}.connection-type-btn{border-bottom:1px solid var(--color-border);flex:none;min-width:48%}.graph-sidebar textarea,.graph-sidebar input{font-size:16px}.articles-list-view{padding:12px}.articles-list-read-btn{padding:4px 10px;font-size:11px}.graph-canvas.list-mode{flex:1;height:auto;max-height:none;overflow-y:auto}.graph-content.list-mode .graph-sidebar{display:none}.canvas-search-input{width:150px}}
