@import url("https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600&family=Newsreader:ital,wght@1,300;1,400;1,500&display=swap");:root{--bg:#f6f3ec;--bg-2:#efebe2;--surface:#fff;--surface-2:#fbf9f4;--line:#e5e0d4;--line-2:#d7d1c2;--ink:#14110d;--ink-2:#2c2822;--muted:#6e665a;--muted-2:#948b7c;--faint:#bdb3a0;--accent:#2e3a2c;--accent-2:#4a5947;--accent-fg:#f6f3ec;--risk:#a8412c;--risk-soft:#f0d8cf;--caution:#a57518;--caution-soft:#f2e2be;--ok:#4c6b3c;--ok-soft:#dbe5c9;--ai:#6e5a8a;--ai-soft:#e6deee;--shadow-sm:0 1px 0 rgba(20,17,13,.04),0 0 0 .5px rgba(20,17,13,.06);--shadow-md:0 4px 14px rgba(20,17,13,.06),0 0 0 .5px rgba(20,17,13,.07);--shadow-lg:0 24px 60px rgba(20,17,13,.18),0 0 0 .5px rgba(20,17,13,.08);--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--t-fast:120ms;--t-med:180ms;--t-slow:240ms;--ease:cubic-bezier(.2,.7,.2,1);--focus-ring:0 0 0 2px var(--bg),0 0 0 4px rgba(46,58,44,.55);--rowH:38px;--pad-y:10px;--pad-x:14px;--fz:13.5px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Geist,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-feature-settings:"ss01","ss03","cv11";-webkit-font-smoothing:antialiased}body{min-height:100vh}::selection{background:#2e3a2c22}button{font-family:inherit}a{color:inherit;text-decoration:none}:focus{outline:none}[role=button]:focus-visible,[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm);transition:box-shadow var(--t-fast) var(--ease)}input:focus,select:focus,textarea:focus{border-color:var(--accent-2)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.density-compact{--rowH:32px;--pad-y:8px;--pad-x:12px;--fz:12.5px}.density-regular{--rowH:38px;--pad-y:10px;--pad-x:14px;--fz:13.5px}.density-comfy{--rowH:46px;--pad-y:14px;--pad-x:18px;--fz:14px}.mono{font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-feature-settings:"tnum","zero"}.tabnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.italic-serif{font-family:Newsreader,Georgia,serif;font-style:italic;font-weight:400}.display-num{font-family:Geist,sans-serif;font-weight:300;letter-spacing:-.02em;font-feature-settings:"tnum","ss01"}.row{display:flex;align-items:center;gap:10px;padding:0 var(--pad-x);min-height:var(--rowH);border-bottom:1px solid var(--line);font-size:var(--fz);transition:background var(--t-fast) var(--ease)}.row:last-child{border-bottom:0}.row:hover{background:var(--surface-2)}.row.clickable:active{background:#ebe5d5}.row.is-selected{background:#e9e3d2}.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.01em;border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);white-space:nowrap;line-height:1}.pill .dot{width:6px;height:6px;border-radius:999px;background:currentColor;display:inline-block}.pill-risk{color:var(--risk);background:var(--risk-soft);border-color:transparent}.pill-caution{color:var(--caution);background:var(--caution-soft)}.pill-caution,.pill-ok{border-color:transparent}.pill-ok{color:var(--ok);background:var(--ok-soft)}.pill-ai{color:var(--ai);background:var(--ai-soft)}.pill-ai,.pill-ink{border-color:transparent}.pill-ink{color:var(--accent-fg);background:var(--accent)}.pill-ghost{background:transparent;border-color:var(--line-2);color:var(--muted)}.badge-prov{font-family:Geist Mono,monospace;font-size:9.5px;letter-spacing:.08em;color:var(--ai);background:var(--ai-soft)}.badge-prov,.placeholder-tag{font-weight:500;text-transform:uppercase;padding:2px 6px;border-radius:4px}.placeholder-tag{font-size:10px;letter-spacing:.04em;color:var(--caution);background:var(--caution-soft)}.scorebar{position:relative;height:4px;background:var(--bg-2);border-radius:2px;overflow:hidden}.scorebar>i{position:absolute;inset:0;background:var(--accent);transform-origin:left center;display:block}.ibtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);height:32px;min-width:32px;padding:0 12px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;cursor:pointer;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease);white-space:nowrap;flex:0 0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibtn:hover{background:var(--bg-2);border-color:var(--line-2)}.ibtn:active{transform:translateY(.5px)}.ibtn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ibtn-primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);box-shadow:0 1px 0 rgba(20,17,13,.08),0 0 0 .5px rgba(20,17,13,.12)}.ibtn-primary:hover{background:#1f2a1e;border-color:#1f2a1e;box-shadow:0 2px 0 rgba(20,17,13,.1),0 0 0 .5px rgba(20,17,13,.14)}.ibtn-ghost{background:transparent;border-color:transparent}.ibtn-ghost:hover{background:var(--bg-2);border-color:transparent}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--t-med) var(--ease),border-color var(--t-fast) var(--ease)}.panel.clickable:hover{box-shadow:var(--shadow-md);border-color:var(--line-2)}.panel-flat{background:var(--surface);border:1px solid var(--line)}.panel-hd{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line)}.panel-hd h3{margin:0;font-size:12px;letter-spacing:.06em}.kicker,.panel-hd h3{font-weight:600;text-transform:uppercase;color:var(--muted)}.kicker{font-size:10.5px;letter-spacing:.1em}.hairline{height:1px;background:var(--line);border:0}.trend{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;font-weight:500}.trend-up{color:var(--ok)}.trend-down{color:var(--risk)}.trend-flat{color:var(--muted)}.scroll-y{overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}.scroll-y::-webkit-scrollbar{width:8px}.scroll-y::-webkit-scrollbar-thumb{background:rgba(0,0,0,.14);border-radius:4px;border:2px solid transparent;background-clip:content-box}.navi{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.navi>span:not(.navi-count){overflow:hidden;text-overflow:ellipsis}.navi:hover{background:#ebe6d9}.navi.is-active{background:var(--accent);color:var(--accent-fg);box-shadow:0 1px 0 rgba(20,17,13,.1)}.navi.is-active .navi-count{background:hsla(42,36%,95%,.18);color:var(--accent-fg)}.navi svg{flex:0 0 auto;opacity:.65;transition:opacity var(--t-fast) var(--ease)}.navi:hover svg{opacity:.9}.navi.is-active svg{opacity:1}.navi-count{margin-left:auto;font-size:10.5px;background:var(--bg-2);color:var(--muted);padding:1px 6px;border-radius:999px;min-width:16px;text-align:center;font-family:Geist Mono,monospace}.stage{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:500;white-space:nowrap;flex:0 0 auto}.stage:before{content:"";width:8px;height:8px;border-radius:2px;background:currentColor;opacity:.85;display:inline-block}.stage-inbound{color:#8b7b5d}.stage-qualified{color:#5d7a8b}.stage-discovery{color:#6e5a8a}.stage-pilot-self{color:#a57518}.stage-pilot-client{color:#4c6b3c}.stage-retainer{color:#2e3a2c}.stage-lost{color:#a8412c;text-decoration:line-through;text-decoration-thickness:1px;-webkit-text-decoration-color:#a8412c66;text-decoration-color:#a8412c66}.wave{display:flex;align-items:center;gap:2px;height:24px}.wave i{display:block;width:2px;background:var(--accent);border-radius:1px}.empty-cell{color:var(--faint);font-style:italic;font-size:12px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.clickable{cursor:pointer}.clickable:hover{outline:none}.section-title{font-size:13.5px;font-weight:600;letter-spacing:-.005em;color:var(--ink);margin:0}.section-sub{font-size:12px;color:var(--muted-2);line-height:1.5}.metric-primary{font-family:Geist,sans-serif;font-weight:300;font-size:38px;line-height:1;letter-spacing:-.025em;color:var(--ink);font-feature-settings:"tnum","ss01"}.metric-why{font-size:11.5px;color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.text-link{font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:color var(--t-fast) var(--ease)}.text-link:hover{color:var(--ink-2)}.skel{background:linear-gradient(90deg,var(--bg-2) 0,var(--surface-2) 50%,var(--bg-2) 100%);background-size:200% 100%;animation:skel-shimmer 1.4s var(--ease) infinite;border-radius:4px}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.conf{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.conf-bar{width:48px;height:3px;background:var(--bg-2);border-radius:2px;overflow:hidden}.conf-bar i{display:block;height:100%;background:var(--ai)}.fab{position:fixed;right:28px;bottom:28px;z-index:30;width:56px;height:56px;border-radius:999px;background:var(--accent);color:var(--accent-fg);border:none;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;cursor:default;transition:transform .14s ease,background .14s ease}.fab:hover{background:#1f2a1e;transform:translateY(-1px)}.fab.recording{background:var(--risk);animation:pulseRing 1.4s ease-out infinite}@keyframes pulseRing{0%{box-shadow:0 0 0 0 rgba(168,65,44,.35),var(--shadow-lg)}70%{box-shadow:0 0 0 22px rgba(168,65,44,0),var(--shadow-lg)}to{box-shadow:0 0 0 0 rgba(168,65,44,0),var(--shadow-lg)}}.tabs{display:flex;gap:0;border-bottom:1px solid var(--line)}.tab{padding:10px 14px;font-size:12.5px;color:var(--muted);cursor:default;border-bottom:2px solid transparent;margin-bottom:-1px}.tab.is-active{color:var(--ink);border-bottom-color:var(--ink)}.tab:hover{color:var(--ink-2)}.ava{width:24px;height:24px;border-radius:999px;background:var(--bg-2);display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:600;color:var(--accent);letter-spacing:.02em;border:1px solid var(--line);overflow:hidden}.ava-lg{width:40px;height:40px;font-size:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}.fade-in{animation:fadeIn .2s ease-out both}.ai-narrative{font-family:Newsreader,Georgia,serif;font-style:italic;font-weight:400;color:var(--ink-2);font-size:15.5px;line-height:1.55;letter-spacing:-.005em}.ring-track{stroke:var(--line)}.ring-fg{stroke:var(--accent);transition:stroke-dashoffset .4s ease}.ring-fg-risk{stroke:var(--risk)}.ring-fg-cau{stroke:var(--caution)}.ring-fg-ok{stroke:var(--ok)}.kbd{font-family:Geist Mono,monospace;font-size:10.5px;background:var(--bg-2);border:1px solid var(--line);padding:1px 5px;border-radius:4px;color:var(--muted)}.drawer-overlay{position:fixed;inset:0;background:rgba(20,17,13,.32);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;opacity:0;pointer-events:none;transition:opacity .18s ease}.drawer-overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;height:100vh;width:min(720px,90vw);background:var(--surface);z-index:41;box-shadow:var(--shadow-lg);transform:translateX(101%);transition:transform .28s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column}.drawer.open{transform:translateX(0)}.modal-overlay{position:fixed;inset:0;background:rgba(20,17,13,.36);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;display:flex;align-items:center;justify-content:center;padding:40px;opacity:0;pointer-events:none;transition:opacity .18s ease}.modal-overlay.open{opacity:1;pointer-events:auto}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);max-width:760px;width:100%;box-shadow:var(--shadow-lg);max-height:calc(100vh - 80px);display:flex;flex-direction:column;transform:translateY(8px) scale(.985);transition:transform .2s cubic-bezier(.2,.7,.2,1)}.modal-overlay.open .modal{transform:translateY(0) scale(1)}.app-mobile-header,.app-nav-backdrop{display:none}@media (max-width:860px){.app-sidebar{position:fixed;top:0;left:0;bottom:0;transform:translateX(-100%);transition:transform .22s cubic-bezier(.2,.7,.2,1);z-index:70;box-shadow:var(--shadow-lg)}body.nav-open .app-sidebar{transform:translateX(0)}.app-nav-backdrop{position:fixed;inset:0;background:rgba(20,17,13,.32);z-index:69}body.nav-open .app-nav-backdrop{display:block}.app-mobile-header{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:30}.panel{overflow-x:auto}.resp-grid,.resp-grid-2{grid-template-columns:1fr!important}}@media (min-width:641px) and (max-width:1024px){.resp-grid{grid-template-columns:repeat(2,1fr)!important}}.rt-cards{display:none}@media (max-width:768px){.rt-table{display:none}.rt-cards{display:flex;flex-direction:column;gap:8px}}@media (max-width:860px){.kanban-grid{grid-template-columns:repeat(6,80vw)!important;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;min-height:0!important}.kanban-grid>div{scroll-snap-align:start}}@media (max-width:768px){.stack-table,.stack-table tbody,.stack-table td,.stack-table tr{display:block;width:100%}.stack-table thead{display:none}.stack-table tr{border:1px solid var(--line)!important;border-radius:12px;margin-bottom:10px;padding:4px 0;background:var(--surface)}.stack-table td{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px!important;border:0!important;text-align:left!important}.stack-table td:before{content:attr(data-label);flex:0 0 auto;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500}.stack-table td[data-label=""]{justify-content:flex-end}.stack-table td[data-label=""]:before{display:none}}.admin-mobile-notice{display:none}@media (max-width:720px){.admin-mobile-notice{display:block;margin:12px 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:12px;line-height:1.5;color:var(--ink-2)}}