:root{--font-ui: "Geist", -apple-system, system-ui, sans-serif;--font-display: "Instrument Serif", "Iowan Old Style", Georgia, serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--bg: oklch(.985 .005 85);--bg-alt: oklch(.965 .008 80);--surface: oklch(1 0 0);--surface-2: oklch(.97 .005 80);--ink: oklch(.18 .015 280);--ink-2: oklch(.42 .015 280);--ink-3: oklch(.62 .012 280);--ink-4: oklch(.82 .008 280);--line: oklch(.18 .015 280 / .08);--line-2: oklch(.18 .015 280 / .12);--shadow-sm: 0 1px 0 oklch(.18 .015 280 / .04), 0 1px 2px oklch(.18 .015 280 / .04);--shadow: 0 1px 0 oklch(.18 .015 280 / .05), 0 4px 14px oklch(.18 .015 280 / .06);--shadow-lg: 0 1px 0 oklch(.18 .015 280 / .05), 0 12px 40px oklch(.18 .015 280 / .1);--accent: oklch(.55 .22 295);--accent-2: oklch(.62 .2 295);--accent-soft: oklch(.55 .22 295 / .08);--accent-ring: oklch(.55 .22 295 / .18);--b1: oklch(.62 .18 25);--b2: oklch(.66 .17 35);--b3: oklch(.7 .16 50);--b4: oklch(.74 .15 75);--b5: oklch(.78 .14 95);--b6: oklch(.74 .13 130);--b7: oklch(.68 .14 155);--b8: oklch(.62 .15 165);--b9: oklch(.55 .16 175);--c-task: oklch(.55 .22 295);--c-coh: oklch(.62 .16 220);--c-lex: oklch(.65 .16 165);--c-gra: oklch(.65 .17 50)}[data-theme=dark]{--bg: oklch(.16 .012 280);--bg-alt: oklch(.2 .012 280);--surface: oklch(.22 .012 280);--surface-2: oklch(.26 .012 280);--ink: oklch(.96 .005 280);--ink-2: oklch(.78 .012 280);--ink-3: oklch(.62 .012 280);--ink-4: oklch(.42 .012 280);--line: oklch(1 0 0 / .08);--line-2: oklch(1 0 0 / .14);--shadow-sm: 0 1px 0 oklch(0 0 0 / .3);--shadow: 0 4px 16px oklch(0 0 0 / .4);--shadow-lg: 0 12px 40px oklch(0 0 0 / .5);--accent-soft: oklch(.55 .22 295 / .16)}[data-density=compact]{--space-base: .85}[data-density=spacious]{--space-base: 1.15}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--accent-soft);color:var(--accent)}.app{display:grid;grid-template-columns:var(--sidebar-w, 232px) 1fr;height:100vh;background:var(--bg);transition:grid-template-columns .25s ease}.app[data-sidebar=rail]{--sidebar-w: 72px}.app[data-sidebar=expanded]{--sidebar-w: 232px}.app[data-sidebar=floating]{--sidebar-w: 0px}.app[data-sidebar=floating] .sidebar{position:fixed;left:16px;top:16px;bottom:16px;width:232px;border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-lg);z-index:50;background:var(--bg-alt)}.app[data-sidebar=floating] .main{margin-left:0}.sidebar{background:var(--bg-alt);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:14px 12px;gap:4px;overflow:hidden}.sidebar-brand{display:flex;align-items:center;padding:6px 8px 18px;min-height:32px}.sidebar-brand .brand-full{height:22px;width:auto;display:block}.sidebar-brand .brand-full[style]{height:auto}.sidebar-brand .brand-full.brand-dark{display:none}.sidebar-brand .brand-icon{width:28px;height:28px;display:none}.sidebar-brand .brand-icon[style]{width:auto;height:auto}.sidebar-brand .brand-icon.brand-dark,[data-theme=dark] .sidebar-brand .brand-full.brand-light{display:none}[data-theme=dark] .sidebar-brand .brand-full.brand-dark{display:block}[data-theme=dark] .sidebar-brand .brand-icon.brand-light{display:none}.app[data-sidebar=rail] .sidebar-brand .brand-full{display:none!important}.app[data-sidebar=rail] .sidebar-brand .brand-icon.brand-light{display:block}[data-theme=dark] .app[data-sidebar=rail] .sidebar-brand .brand-icon.brand-light{display:none}[data-theme=dark] .app[data-sidebar=rail] .sidebar-brand .brand-icon.brand-dark{display:block}.sidebar-brand:hover{opacity:.8}.app[data-sidebar=rail] .sidebar-foot-caret{display:none}.sidebar-section{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:14px 8px 6px}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--radius-sm);color:var(--ink-2);font-size:13.5px;font-weight:500;white-space:nowrap;transition:background .12s,color .12s;position:relative}.nav-item:hover{background:var(--surface-2);color:var(--ink)}.nav-item.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.nav-item.active:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:2px;background:var(--accent);transform-origin:center;animation:navBar .3s var(--ease-spring) both}@keyframes navBar{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}.nav-item .icon{width:18px;height:18px;flex-shrink:0;color:var(--ink-3);display:inline-flex;align-items:center;justify-content:center}.nav-item.active .icon{color:var(--accent)}.nav-item .badge{margin-left:auto;font-size:10.5px;background:var(--accent-soft);color:var(--accent);padding:1px 6px;border-radius:var(--radius-full);font-weight:600}.app[data-sidebar=rail] .sidebar-section,.app[data-sidebar=rail] .nav-item .badge,.app[data-sidebar=rail] .sidebar-foot-text{display:none}.app[data-sidebar=rail] .sidebar{padding:14px 6px;align-items:center}.app[data-sidebar=rail] .sidebar-brand{padding:6px 0 14px;justify-content:center}.app[data-sidebar=rail] .nav-item{flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 4px;min-height:48px}.app[data-sidebar=rail] .nav-item span:not(.icon){display:block;font-size:9.5px;font-weight:500;opacity:.7;text-align:center;line-height:1.1}.app[data-sidebar=rail] .nav-item.active span:not(.icon){opacity:1}.app[data-sidebar=rail] .nav-item.active:before{left:-6px}.app[data-sidebar=rail] .sidebar-foot{justify-content:center}.sidebar-foot{margin-top:auto;padding:10px 8px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}.avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--c-coh));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:11px;flex-shrink:0}.sidebar-foot-text{display:flex;flex-direction:column;min-width:0}.sidebar-foot-text strong{font-size:12.5px;font-weight:600}.sidebar-foot-text small{font-size:11px;color:var(--ink-3)}.main{display:flex;flex-direction:column;overflow:hidden;min-width:0}.topbar{height:56px;border-bottom:1px solid var(--line);padding:0 var(--space-6);display:flex;align-items:center;gap:var(--space-4);background:var(--bg);flex-shrink:0}.topbar h1{font-family:var(--font-display);font-size:22px;font-weight:400;letter-spacing:-.01em;margin:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .crumb{color:var(--ink-4);font-size:11.5px;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.01em;margin-top:-1px}.topbar>.col{min-width:0;flex-shrink:1}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}@media(max-width:1100px){.cmd-k{display:none}}.results-hero-grid{display:grid;grid-template-columns:240px 1fr;gap:0}.results-body-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}@media(max-width:1100px){.results-hero-grid{grid-template-columns:1fr}.results-hero-ring{border-right:none!important;border-bottom:1px solid var(--line)}.results-body-grid{grid-template-columns:1fr}.results-hero-bars{grid-template-columns:repeat(2,minmax(0,1fr))!important}}.cmd-k{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-3);font-size:13px;min-width:220px}.cmd-k kbd{margin-left:auto;font-family:var(--font-mono);font-size:11px;background:var(--surface-2);padding:1px 5px;border-radius:4px;color:var(--ink-2)}.page{overflow-y:auto;flex:1;padding:var(--space-8) var(--space-10);scroll-behavior:smooth}.page-narrow{max-width:1100px;margin:0 auto}.page-wide{max-width:1400px;margin:0 auto}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:13.5px;font-weight:500;transition:all .14s;white-space:nowrap}.btn:hover{background:var(--surface-2);border-color:var(--line-2);transform:translateY(-1px)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn-primary:hover{background:oklch(from var(--ink) calc(l + .08) c h)}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-accent:hover{background:var(--accent-2)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:var(--surface-2)}.btn-lg{padding:12px 20px;font-size:14.5px}.btn-sm{padding:5px 10px;font-size:12.5px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:var(--space-6)}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:500;border:1px solid var(--line)}.pill-accent{background:var(--accent-soft);color:var(--accent);border-color:transparent}.tab-group{display:inline-flex;background:var(--surface-2);border-radius:var(--radius-sm);padding:3px;border:1px solid var(--line);gap:2px}.tab{padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;color:var(--ink-2);transition:all .14s}.tab.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.band-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:22px;padding:0 8px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:#101118}.input,.textarea{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);font-size:14px;color:var(--ink);transition:border-color .14s,box-shadow .14s}.input:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.textarea{resize:none;line-height:1.7}.row{display:flex;align-items:center}.col{display:flex;flex-direction:column}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.gap-8{gap:32px}.grow{flex:1}.muted{color:var(--ink-3)}.dim{color:var(--ink-2)}.mono{font-family:var(--font-mono)}.serif{font-family:var(--font-display)}.center{display:flex;align-items:center;justify-content:center}.between{justify-content:space-between}.h-display{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em;line-height:1.1}.h1{font-size:44px}.h2{font-size:32px}.h3{font-size:24px}.divider{height:1px;background:var(--line);margin:16px 0}:root{--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .15s;--dur-base: .3s;--dur-slow: .6s}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}.fade-up{animation:fadeUp .32s ease both}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.6}}.pulse-soft{animation:pulseSoft 1.6s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn var(--dur-base) ease both}@keyframes routeFade{0%{opacity:0}to{opacity:1}}.route-fade{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;animation:routeFade .24s var(--ease-out) both}.stagger>*{opacity:0;animation:fadeUp var(--dur-base) var(--ease-out) forwards;animation-delay:calc(var(--i, 0) * 60ms)}.modal-backdrop-anim{animation:fadeIn .2s ease both}@keyframes modalPop{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}.modal-pop{animation:modalPop .22s var(--ease-spring) both}@keyframes modalPopAbs{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.modal-pop-abs{animation:modalPopAbs .22s var(--ease-spring) both}@keyframes drawerIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.drawer-in{animation:drawerIn .24s var(--ease-out) both}.lift{transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}.lift:hover{transform:translateY(-2px);box-shadow:var(--shadow)}@keyframes skShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--line-2) 37%,var(--surface-2) 63%);background-size:200% 100%;animation:skShimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes vt-reveal{0%{clip-path:circle(0% at var(--vt-x, 50%) var(--vt-y, 50%))}to{clip-path:circle(var(--vt-r, 150%) at var(--vt-x, 50%) var(--vt-y, 50%))}}::view-transition-old(root){animation:none}::view-transition-new(root){animation:vt-reveal .4s ease-in-out both}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;animation:fadeIn .15s ease both}.cmdk-panel{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:fadeUp .18s var(--ease-out) both}.cmdk-input-row{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--ink-3)}.cmdk-input-row [cmdk-input]{flex:1;border:none;background:transparent;outline:none;font-family:var(--font-ui);font-size:15px;color:var(--ink)}.cmdk-input-row [cmdk-input]::placeholder{color:var(--ink-3)}.cmdk-esc{font-size:10px;padding:2px 6px;border-radius:5px;background:var(--surface-2);border:1px solid var(--line-2);color:var(--ink-3)}[cmdk-list]{max-height:360px;overflow-y:auto;padding:8px;scroll-padding:8px}[cmdk-group-heading]{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);padding:10px 10px 6px;font-weight:600}[cmdk-item]{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--radius-sm);font-size:14px;color:var(--ink-2);cursor:pointer;transition:background .1s,color .1s}[cmdk-item][data-selected=true]{background:var(--accent-soft);color:var(--ink)}.cmdk-ico{display:inline-flex;width:18px;height:18px;color:var(--ink-3);flex-shrink:0}[cmdk-item][data-selected=true] .cmdk-ico{color:var(--accent)}.cmdk-empty{padding:28px 16px;text-align:center;color:var(--ink-3);font-size:13.5px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--ink-4)}::-webkit-scrollbar-track{background:transparent}.topbar-back{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--ink-2);flex-shrink:0;transition:background .14s,color .14s;margin-right:4px}.topbar-back:hover{background:var(--surface-2);color:var(--ink)}.sidebar-desktop{display:flex;flex-direction:column;flex:1;overflow-y:auto;min-height:0}.mob-nav,.mobile-more-backdrop,.mobile-more-sheet{display:none}@media(max-width:860px){.m-stack{grid-template-columns:1fr!important}.m-2col{grid-template-columns:repeat(2,1fr)!important}.m-scroll-x{overflow-x:auto!important;-webkit-overflow-scrolling:touch}.m-scroll-x>table{min-width:600px}.m-wrap{flex-wrap:wrap!important}.m-gap-sm{gap:8px!important}.m-hide{display:none!important}.row.between{flex-wrap:wrap;gap:8px}.m-stack .card{min-height:unset!important}.m-stack>button.card{text-align:left}.m-stack svg{max-width:100%;height:auto}}@media(max-width:860px){.app{grid-template-columns:1fr!important}.sidebar{position:fixed;bottom:0;left:0;right:0;top:auto;flex-direction:row;height:auto;padding:0;border-top:none;border-right:none;z-index:40;overflow:visible;background:transparent;pointer-events:none}.sidebar-brand,.sidebar-section,.sidebar-foot,.sidebar-desktop{display:none}.mob-nav{display:flex;flex-direction:row;align-items:center;justify-content:space-around;width:calc(100% - 32px);margin:0 16px 12px;padding:6px 8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:0 4px 24px #1011181f,0 1px 4px #10111814;pointer-events:auto;position:relative}[data-theme=dark] .mob-nav{box-shadow:0 4px 24px #0006,0 1px 4px #0000004d}.mob-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 14px;border-radius:var(--radius-lg);color:var(--ink-3);font-size:10px;font-weight:500;transition:color .15s,background .15s;position:relative;min-width:52px}.mob-nav-item:hover{color:var(--ink-2)}.mob-nav-item.active{color:var(--accent);background:var(--accent-soft)}.mob-nav-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center}.mob-nav-label{font-size:10px;line-height:1;letter-spacing:.01em}.mob-nav-fab{width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #8047e166;flex-shrink:0;transition:transform .15s,box-shadow .15s;margin:-8px 4px}.mob-nav-fab:hover{transform:scale(1.06);box-shadow:0 6px 20px #8047e180}.mob-nav-fab:active{transform:scale(.96)}.page{padding:16px 16px 88px}.topbar{padding:0 16px}.cmd-k{display:none}.mobile-more-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:50;animation:fadeIn .2s ease both;pointer-events:auto}.mobile-more-sheet{display:flex;flex-direction:column;position:fixed;bottom:0;left:0;right:0;max-height:75vh;background:var(--bg);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:51;padding:8px 20px 28px;overflow-y:auto;animation:slideUp .25s cubic-bezier(.4,0,.2,1) both;pointer-events:auto}.mobile-more-handle{width:36px;height:4px;border-radius:2px;background:var(--line-2);margin:4px auto 16px;flex-shrink:0}.mobile-more-section{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:10px 4px 8px}.mobile-more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:4px}.mobile-more-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 8px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);font-size:12px;font-weight:500;color:var(--ink-2);transition:background .14s,border-color .14s,color .14s}.mobile-more-tile:hover{background:var(--surface);border-color:var(--line-2)}.mobile-more-tile.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-ring)}.mobile-more-tile-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-3)}.mobile-more-tile.active .mobile-more-tile-icon{color:var(--accent)}.mobile-more-foot{display:flex;align-items:center;gap:10px;padding:14px 4px 4px;margin-top:12px;border-top:1px solid var(--line)}.writing-coach-fab{bottom:88px!important}.topbar-right .btn:not(.btn-accent):not(.topbar-back){display:none}.topbar-right .pill{display:none}.topbar h1{font-size:17px}.topbar .crumb{display:none}.tab-group{flex-shrink:0;overflow-x:auto;max-width:100%}.h1{font-size:32px}.h2{font-size:24px}.h3{font-size:20px}.m-scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}.m-scroll-x>table{min-width:600px}.m-wrap{flex-wrap:wrap!important}.results-hero-bars{grid-template-columns:repeat(2,minmax(0,1fr))!important}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}}@keyframes userMenuIn{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.user-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border-radius:8px;background:transparent;border:none;cursor:pointer;font-size:13px;color:var(--ink);text-align:left;font-family:var(--font-ui);transition:background .12s}.user-dropdown-item:hover{background:var(--surface-2)}.theme-toggle-btn{position:relative}.theme-toggle-btn:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:12px;border:2px solid var(--accent);opacity:0;animation:none}
