@import "https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";

:root{--bg:#fafaf9;--bg-2:#f1f1ef;--surface:#fff;--ink:#232323;--ink-2:#4b4b4b;--ink-soft:#80807c;--accent:#5b6b4d;--accent-d:#46543b;--accent-2:#c08a3e;--accent-2-d:#a5722e;--accent-3:#8c5a3c;--line:#23232324;--hair:#23232312;--bg-page:var(--bg);--bg-alt:var(--bg-2);--surface-card:var(--surface);--surface-ink:var(--ink);--text-strong:var(--ink);--text-body:var(--ink-2);--text-muted:var(--ink-soft);--text-on-dark:var(--bg);--border-default:var(--line);--border-strong:var(--ink);--success:#4c7a4c;--danger:#a6432e;--tone-green:#3f7d3a;--tone-blue:#2e6f8e;--tone-orange:#d97706;--tone-pink:#b33f62;--tone-purple:#6b4c93;--tone-coral:#c1583a}:root[data-theme=dark]{--bg:#18181a;--bg-2:#1f2022;--surface:#242527;--ink:#f2f2f0;--ink-2:#cacac8;--ink-soft:#91918d;--accent:#8ca37a;--accent-d:#a8bb98;--accent-2:#d9a857;--accent-2-d:#e4bc79;--accent-3:#c08462;--line:#f2f2f029;--hair:#f2f2f014;--success:#7fb07f;--danger:#d97a63;--tone-green:#7cc66a;--tone-blue:#5fafd1;--tone-orange:#f0a93f;--tone-pink:#e58aa6;--tone-purple:#b79ae0;--tone-coral:#e2795a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#18181a;--bg-2:#1f2022;--surface:#242527;--ink:#f2f2f0;--ink-2:#cacac8;--ink-soft:#91918d;--accent:#8ca37a;--accent-d:#a8bb98;--accent-2:#d9a857;--accent-2-d:#e4bc79;--accent-3:#c08462;--line:#f2f2f029;--hair:#f2f2f014;--success:#7fb07f;--danger:#d97a63;--tone-green:#7cc66a;--tone-blue:#5fafd1;--tone-orange:#f0a93f;--tone-pink:#e58aa6;--tone-purple:#b79ae0;--tone-coral:#e2795a}}
:root{--disp:"Poppins", sans-serif;--sans:"Inter", sans-serif;--font-display:var(--disp);--font-body:var(--sans);--fw-regular:400;--fw-medium:500;--fw-semi:600;--fw-bold:700;--fw-xbold:800;--t-display:clamp(36px, 5vw, 64px);--t-h2:clamp(28px, 3.4vw, 42px);--t-h3:clamp(20px, 1.8vw, 25px);--t-h4:18px;--t-lead:clamp(16px, 1.3vw, 18px);--t-body:16px;--t-small:14px;--t-eyebrow:13px;--track-display:-.01em;--track-head:-.01em;--track-tight:-.005em;--track-eyebrow:.12em;--lh-display:1.08;--lh-head:1.15;--lh-body:1.6;--lh-airy:1.7}
:root{--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;--sp-16:64px;--sp-20:80px;--sp-24:96px;--sec-pad:72px;--sec-pad-tight:56px;--sec-pad-mobile:48px;--sec-head-gap:32px;--wrap-max:1180px;--wrap-gutter:32px;--card-gap:20px}
:root{--r-lg:24px;--r-md:18px;--r-sm:12px;--r-pill:999px;--r-input:12px;--bw:2px;--border-ink:var(--bw) solid var(--border-strong);--shadow:0 24px 48px -24px #2e2a2447;--shadow-sm:0 12px 28px -16px #2e2a2438;--ease-out:cubic-bezier(.2,.7,.3,1);--dur-fast:.15s;--dur-mid:.2s;--dur-slow:.6s;--lift:translateY(-4px);--lift-sm:translateY(-2px)}
.wrap{max-width:var(--wrap-max);padding:0 var(--wrap-gutter);margin:0 auto}.sec{padding:var(--sec-pad) 0}.sec-tight{padding:var(--sec-pad-tight) 0}@media (max-width:720px){.sec,.sec-tight{padding:var(--sec-pad-mobile) 0}}.sec-head{margin-bottom:var(--sec-head-gap)}.sec-head.center{text-align:center}.sec-head.split{justify-content:space-between;align-items:flex-end;gap:var(--sp-8);display:flex}.kick{align-items:center;gap:var(--sp-2);font-size:var(--t-eyebrow);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--tone,var(--accent));font-weight:var(--fw-semi);margin-bottom:var(--sp-3);display:inline-flex}.kick .dot{background:var(--tone,var(--accent));border-radius:50%;width:6px;height:6px}.tone-green{--tone:var(--tone-green)}.tone-blue{--tone:var(--tone-blue)}.tone-orange{--tone:var(--tone-orange)}.tone-pink{--tone:var(--tone-pink)}.tone-purple{--tone:var(--tone-purple)}.tone-coral{--tone:var(--tone-coral)}.card.tone-top{border-top:4px solid var(--tone,var(--accent))}.tone-chip{border-radius:var(--r-sm);width:44px;height:44px;margin-bottom:var(--sp-3);background:color-mix(in srgb, var(--tone,var(--accent)) 18%, var(--surface-card));color:var(--tone,var(--accent));justify-content:center;align-items:center;font-size:21px;line-height:1;display:inline-flex}.mega-dot{background:var(--tone,var(--accent));vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.hero{position:relative;overflow:hidden}.hero-glow{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.hero-glow:before,.hero-glow:after{content:"";filter:blur(70px);opacity:.3;border-radius:50%;position:absolute}.hero-glow:before{background:var(--tone-green);width:420px;height:420px;top:-140px;left:-100px}.hero-glow:after{background:var(--tone-orange);width:380px;height:380px;top:-80px;right:-120px}:root[data-theme=dark] .hero-glow:before,:root[data-theme=dark] .hero-glow:after{opacity:.18}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero-glow:before,:root:not([data-theme=light]) .hero-glow:after{opacity:.18}}.hero>.wrap{z-index:1;position:relative}.nav{z-index:100;transition:background var(--dur-mid) var(--ease-out), box-shadow var(--dur-mid) var(--ease-out);background:0 0;position:sticky;top:0}.nav.scrolled{background:color-mix(in srgb, var(--bg-page) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.nav-inner{padding:var(--sp-4) 0;justify-content:space-between;align-items:center;display:flex}.wordmark{font-family:var(--font-display);font-weight:var(--fw-semi);letter-spacing:var(--track-tight);color:var(--text-strong);gap:6px;font-size:21px;display:flex}.wordmark .hi{color:var(--accent)}.nav-links{align-items:center;gap:var(--sp-8);display:flex}.nav-item{position:relative}.nav-item>a,.nav-item>button.nav-trigger{cursor:pointer;font-size:var(--t-small);font-weight:var(--fw-medium);color:var(--text-body);padding:var(--sp-2) 0;background:0 0;border:none;align-items:center;gap:4px;display:inline-flex}.nav-item>a:hover,.nav-item>button.nav-trigger:hover{color:var(--text-strong)}.nav-actions{align-items:center;gap:var(--sp-4);display:flex}.theme-toggle{border-radius:var(--r-pill);border:var(--bw) solid var(--border-default);background:var(--surface-card);cursor:pointer;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.theme-toggle:hover{border-color:var(--border-strong)}.nav-toggle{display:none}.nav-item.has-mega{position:relative}@media (min-width:1025px){.nav-item.has-mega:after{content:"";height:10px;position:absolute;top:100%;left:0;right:0}}.mega{background:var(--surface-card);border:var(--bw) solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity var(--dur-mid) ease, transform var(--dur-mid) ease, visibility var(--dur-mid);z-index:90;pointer-events:none;width:max-content;max-width:min(560px,100vw - 64px);padding:var(--sp-5);gap:var(--sp-6);margin-top:10px;display:flex;position:absolute;top:100%;left:0;transform:translateY(-8px)}.nav-item.mega-right .mega{left:auto;right:0}.nav-item:hover .mega,.nav-item.open .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mega-col{flex:none}.mega-col-heading{font-size:var(--t-eyebrow);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--text-muted);margin-bottom:var(--sp-3);font-weight:var(--fw-semi)}.mega-list{gap:var(--sp-2);display:flex}.mega-list li{margin-bottom:0}.mega-list a{padding:var(--sp-2) var(--sp-2);border-radius:var(--r-sm);font-size:var(--t-small);color:var(--text-body);min-width:160px;display:block}.mega-list a:hover{background:var(--bg-alt);color:var(--text-strong)}.mega-list a .title{color:var(--text-strong);font-weight:var(--fw-medium);display:block}.mega-list a .desc{color:var(--text-muted);margin-top:2px;font-size:12.5px;display:block}.mob-only{display:none}@media (max-width:1024px){.nav-links,.nav-cta-desktop{display:none}.nav-toggle{display:inline-flex}.mob-only{display:block}.nav-links.mob-shown{background:var(--surface-card);border-bottom:var(--bw) solid var(--border-strong);box-shadow:var(--shadow);padding:var(--sp-4) var(--wrap-gutter) var(--sp-6);flex-direction:column;align-items:stretch;gap:0;display:flex;position:absolute;top:100%;left:0;right:0}.nav-links.mob-shown .nav-item{width:100%;padding:var(--sp-2) 0;border-bottom:1px solid var(--hair)}.nav-links.mob-shown .nav-item:last-child{border-bottom:none}.nav-links.mob-shown .nav-trigger,.nav-links.mob-shown>.nav-item>a{justify-content:space-between;width:100%}.mega{box-shadow:none;width:auto;max-width:none;padding:var(--sp-2) 0 var(--sp-2) var(--sp-4);opacity:1;visibility:visible;border:none;margin-top:0;display:none;position:static;transform:none}.nav-item.mob-open .mega{flex-direction:column;display:flex}.nav-item:hover .mega{display:none}.nav-item.mob-open .mega{display:flex}.mega-list{flex-direction:column}.mega-list a{min-width:0}}.btn{align-items:center;gap:var(--sp-2);border-radius:var(--r-pill);font-size:var(--t-small);font-weight:var(--fw-semi);cursor:pointer;border:var(--bw) solid transparent;transition:transform var(--dur-fast) var(--ease-out), background var(--dur-fast), border-color var(--dur-fast);text-align:center;justify-content:center;padding:12px 22px;display:inline-flex}.btn:hover{transform:var(--lift-sm)}.btn-ink{background:var(--ink);color:var(--bg)}.btn-accent{background:var(--accent);color:var(--text-on-dark)}.btn-accent-2{background:var(--accent-2);color:var(--ink)}.btn-out{border-color:var(--border-strong);color:var(--text-strong);background:0 0}.btn-out:hover{background:var(--ink);color:var(--bg)}.btn-sm{padding:8px 16px;font-size:13px}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.ar{transition:transform var(--dur-fast) var(--ease-out);display:inline-block}.btn:hover .ar{transform:translate(4px)}.card{background:var(--surface-card);border:var(--bw) solid var(--border-default);border-radius:var(--r-md);padding:var(--sp-6)}.card.raised{box-shadow:var(--shadow-sm)}.card-grid{gap:var(--card-gap);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.badge{border-radius:var(--r-pill);font-size:12px;font-weight:var(--fw-semi);background:var(--bg-alt);color:var(--text-body);align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.badge.pending{background:color-mix(in srgb, var(--accent-2) 22%, var(--surface-card));color:var(--accent-2-d)}.badge.approved{background:color-mix(in srgb, var(--accent) 20%, var(--surface-card));color:var(--accent-d)}.badge.danger{background:color-mix(in srgb, var(--danger) 20%, var(--surface-card));color:var(--danger)}.badge.tone-badge{background:color-mix(in srgb, var(--tone,var(--accent)) 20%, var(--surface-card));color:var(--tone,var(--accent))}.field{margin-bottom:var(--sp-5)}.field label{margin-bottom:var(--sp-2);font-size:var(--t-small);font-weight:var(--fw-medium);color:var(--text-strong);display:block}.field .hint{margin-top:var(--sp-2);color:var(--text-muted);font-size:12.5px;display:block}.field input,.field select,.field textarea{border-radius:var(--r-input);border:var(--bw) solid var(--border-default);background:var(--surface-card);width:100%;color:var(--text-strong);transition:border-color var(--dur-fast);outline:none;padding:12px 14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--tone,var(--accent))}.field-row{gap:var(--sp-4);display:flex}.field-row .field{flex:1}.field-check{align-items:center;gap:var(--sp-2);font-size:var(--t-small);display:flex}.field-check input{width:auto}.form-error{background:color-mix(in srgb, var(--danger) 12%, var(--surface-card));border:var(--bw) solid var(--danger);color:var(--danger);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-4);font-size:var(--t-small)}.form-success{background:color-mix(in srgb, var(--accent) 12%, var(--surface-card));border:var(--bw) solid var(--accent);color:var(--accent-d);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-4);font-size:var(--t-small)}.auth-shell{min-height:calc(100dvh - 140px);padding:var(--sp-16) var(--wrap-gutter);justify-content:center;align-items:center;display:flex}.auth-card{width:100%;max-width:420px}.footer{border-top:var(--bw) solid var(--border-default);background:var(--bg-alt)}.footer-top{padding:var(--sp-16) 0 var(--sp-10);justify-content:space-between;align-items:flex-start;gap:var(--sp-10);display:flex}.footer-brand .wordmark{margin-bottom:var(--sp-3)}.footer-claim{color:var(--text-muted);font-size:var(--t-small);max-width:320px}.footer-nav-row{gap:var(--sp-8);text-align:right;justify-content:flex-end;display:flex}.footer-nav-row a{font-size:var(--t-small);color:var(--text-body)}.footer-nav-row a:hover{color:var(--text-strong)}.footer-bottom{padding:var(--sp-6) 0;border-top:1px solid var(--hair);color:var(--text-muted);justify-content:space-between;align-items:center;font-size:13px;display:flex}.footer-bottom-right{align-items:center;gap:var(--sp-5);display:flex}.footer-bottom-right a:hover{color:var(--text-strong)}@media (max-width:720px){.footer-top{flex-direction:column}.footer-nav-row{text-align:left;align-items:flex-start;gap:var(--sp-3);flex-direction:column}.footer-bottom{gap:var(--sp-3);flex-direction:column;align-items:flex-start}}.tree{padding-left:0}.tree-node{margin-bottom:var(--sp-2)}.tree-node-row{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);border:1px solid var(--hair);background:var(--surface-card);display:flex}.tree-node-row:hover{border-color:var(--tone,var(--border-default))}.tree-avatar{background:color-mix(in srgb, var(--tone,var(--ink-soft)) 20%, var(--surface-card));width:32px;height:32px;font-size:13px;font-weight:var(--fw-semi);color:var(--tone,var(--text-strong));border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.tree-avatar-placeholder{border:1.5px dashed var(--tone,var(--text-muted))}.tree-children{padding-left:var(--sp-5);border-left:2px dashed var(--hair);margin-left:26px;margin-top:var(--sp-2)}.tree-toggle{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex:none;width:20px;font-size:12px}.view-toggle{border-radius:var(--r-pill);background:var(--bg-alt);border:var(--bw) solid var(--border-default);margin-bottom:var(--sp-4);gap:2px;padding:3px;display:inline-flex}.view-toggle button{border-radius:var(--r-pill);font-size:var(--t-small);font-weight:var(--fw-medium);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:6px 16px}.view-toggle button.active{background:var(--surface-card);color:var(--text-strong);box-shadow:var(--shadow-sm)}.graph-scroll{padding-bottom:var(--sp-2);overflow:auto hidden}.graph-canvas{position:relative}.graph-svg{pointer-events:none;position:absolute;top:0;left:0}.graph-node{pointer-events:auto;background:var(--surface-card);position:absolute}.graph-edge{stroke:var(--border-strong);stroke-width:2px}.graph-edge-partner{stroke:var(--tone,var(--accent));stroke-dasharray:4 3}.stack{gap:var(--sp-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--sp-3);display:flex}.row-between{justify-content:space-between;align-items:center;display:flex}.muted{color:var(--text-muted)}.center-text{text-align:center}.empty-state{text-align:center;padding:var(--sp-16) var(--sp-6);color:var(--text-muted);border:2px dashed var(--hair);border-radius:var(--r-md)}
*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{background:var(--bg-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--t-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;transition:background var(--dur-mid) var(--ease-out), color var(--dur-mid) var(--ease-out);margin:0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);line-height:var(--lh-head);letter-spacing:var(--track-head);margin:0 0 var(--sp-4);font-weight:var(--fw-semi)}h1{font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:var(--track-display)}h2{font-size:var(--t-h2)}h3{font-size:var(--t-h3)}h4{font-size:var(--t-h4)}p{margin:0 0 var(--sp-4)}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}::selection{background:var(--accent);color:var(--text-on-dark)}
