@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{font-family:Space Grotesk,sans-serif;line-height:1.5;font-weight:400;color:#1d2b23;background-color:#f6f1e7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink-strong: #152117;--ink: #1f2e25;--ink-muted: #54645a;--accent: #155f4d}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.75),transparent 55%),radial-gradient(circle at 90% 20%,rgba(255,236,207,.8),transparent 45%),linear-gradient(135deg,#f6f1e7,#efe7d6 40%,#f7f3ea 70%,#e7ede1)}body:before{content:"";position:fixed;inset:0;background-image:repeating-linear-gradient(120deg,rgba(21,95,77,.05) 0,rgba(21,95,77,.05) 1px,transparent 1px,transparent 24px);pointer-events:none;z-index:-1}#root{min-height:100vh}img{max-width:100%;display:block}button,input,textarea{font-family:inherit}.page{min-height:100vh;color:var(--ink)}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;max-width:1200px;margin:0 auto}.topbar-links{display:flex;gap:18px;font-size:13px;color:var(--ink-muted)}.auth-status{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-muted);flex-wrap:wrap;justify-content:flex-end}.auth-email{color:var(--ink);font-weight:500}.brand{font-weight:700;letter-spacing:.02em}.brand-button{border:none;background:transparent;font:inherit;font-weight:700;letter-spacing:.02em;color:inherit;cursor:pointer;padding:0}.hero{max-width:1200px;margin:0 auto;padding:40px 24px 80px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.hero-copy{display:flex;flex-direction:column;gap:18px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;color:var(--ink-muted);margin:0}.hero-copy h1{font-family:Fraunces,serif;font-size:clamp(32px,4vw,48px);margin:0}.lead{margin:0;color:var(--ink-soft);line-height:1.6}.callouts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.callout-label{display:block;font-size:12px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.12em}.callout-value{display:block;margin-top:6px;font-weight:600;color:var(--ink-strong)}.panel{background:#ffffffc7;border:1px solid rgba(12,24,18,.1);border-radius:28px;padding:clamp(20px,4vw,36px);box-shadow:0 30px 60px #141c1414;animation:rise .7s ease-out .1s both}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-page{max-width:960px;margin:0 auto;padding:40px 24px 80px;display:flex;justify-content:center}.auth-panel{width:min(520px,100%)}.account-page{max-width:980px;margin:0 auto;padding:40px 24px 80px;display:flex;justify-content:center}.account-stack{display:flex;flex-direction:column;gap:24px}.account-panel{border:1px solid rgba(12,24,18,.12);border-radius:20px;padding:20px;background:#ffffffd9;display:flex;flex-direction:column;gap:16px;width:min(720px,100%)}.account-header h2{margin:6px 0 0;font-family:Fraunces,serif;font-size:22px;color:var(--ink-strong)}.account-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.account-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-muted)}.account-value{display:block;margin-top:6px;font-size:14px;font-weight:600;color:var(--ink-strong);word-break:break-all}.account-actions{display:flex;flex-direction:column;gap:14px}.account-block{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:16px;border:1px solid rgba(12,24,18,.08);background:#fafaf8e6}.account-block-title{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted)}.danger-zone{border-color:#981e1e33;background:#fdececd9}.account-buttons{display:flex;flex-wrap:wrap;gap:10px}.danger{border-radius:16px;border:1px solid rgba(152,30,30,.4);background:#fae8e8cc;color:#9b1c1c;padding:12px 16px;font-size:14px;font-weight:600;cursor:pointer}.danger:hover{background:#fad8d8e6}.danger:disabled{cursor:not-allowed;opacity:.7}.auth-divider{display:grid;place-items:center;color:var(--ink-muted);font-size:12px;text-transform:uppercase;letter-spacing:.2em;position:relative;margin:8px 0}.auth-divider:before,.auth-divider:after{content:"";position:absolute;top:50%;width:42%;height:1px;background:#0c18121f}.auth-divider:before{left:0}.auth-divider:after{right:0}.oauth-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:16px;border:1px solid rgba(12,24,18,.16);background:#fff;padding:14px 16px;font-size:14px;font-weight:600;color:var(--ink-strong);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.oauth-button:hover{transform:translateY(-1px);box-shadow:0 12px 24px #0c18121a}.oauth-button:disabled{cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}.auth-header h2{margin:8px 0 0;font-family:Fraunces,serif;font-size:clamp(24px,3vw,32px);color:var(--ink-strong)}.auth-header .lead{margin-top:8px}.env-debug{display:block;margin-top:6px;font-size:12px;color:var(--ink-soft);text-transform:none;letter-spacing:0}.auth-field{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.12em}.auth-field input{border-radius:16px;border:1px solid rgba(12,24,18,.16);background:#ffffffd9;padding:14px 16px;font-size:14px;color:var(--ink-strong);text-transform:none;letter-spacing:0;transition:border-color .2s ease,box-shadow .2s ease}.auth-field input:focus{outline:none;border-color:#15604d99;box-shadow:0 0 0 3px #15604d26}.upload-form{display:flex;flex-direction:column;gap:18px}.industry-field{display:flex;flex-direction:column;gap:8px}.field-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted)}.select-wrap{position:relative}.select-wrap:after{content:"";position:absolute;right:18px;top:50%;width:10px;height:10px;border-right:2px solid rgba(12,24,18,.4);border-bottom:2px solid rgba(12,24,18,.4);transform:translateY(-60%) rotate(45deg);pointer-events:none}.select-wrap select{width:100%;border-radius:16px;border:1px solid rgba(12,24,18,.16);background:#ffffffd9;padding:14px 46px 14px 16px;font-size:14px;color:var(--ink-strong);appearance:none;transition:border-color .2s ease,box-shadow .2s ease}.select-wrap select:focus{outline:none;border-color:#15604d99;box-shadow:0 0 0 3px #15604d26}.select-wrap select:disabled{color:var(--ink-muted)}.upload-drop{border:2px dashed rgba(12,24,18,.18);border-radius:22px;padding:clamp(22px,5vw,36px);text-align:left;background:#faf9f6e6;transition:transform .2s ease,border-color .2s ease;cursor:pointer;position:relative}.upload-drop.is-dragging{border-color:#15604dcc;box-shadow:0 16px 30px #15604d2e;transform:translateY(-2px)}.upload-drop:hover{border-color:#15604d8c;transform:translateY(-2px)}.upload-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-content{display:flex;flex-direction:column;gap:8px}.upload-title{font-size:18px;font-weight:600;color:var(--ink-strong)}.upload-sub{font-size:14px;color:var(--ink-muted)}.upload-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:var(--ink-muted)}.checkout-actions{display:flex;justify-content:flex-start}.pnl-acronym{text-transform:uppercase}.upload-file{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ghost{border:1px solid rgba(12,24,18,.2);background:transparent;color:var(--ink-strong);border-radius:999px;padding:6px 14px;font-size:12px;cursor:pointer}.ghost:hover{border-color:#15604d80}.ghost:disabled{cursor:not-allowed;opacity:.7}.primary{background:var(--accent);color:#f8f6f1;border:none;border-radius:999px;padding:14px 26px;font-size:16px;font-weight:600;letter-spacing:.02em;cursor:pointer;box-shadow:0 16px 30px #15604d4d;transition:transform .2s ease,box-shadow .2s ease}.primary:hover{transform:translateY(-1px);box-shadow:0 20px 36px #15604d59}.primary:disabled{cursor:not-allowed;opacity:.7;box-shadow:none}.status{margin:0;padding:12px 16px;border-radius:14px;font-size:13px}.status.error{background:#b8282814;color:#7a1f1f;border:1px solid rgba(184,40,40,.2)}.status.success{background:#2e7d5a1a;color:#1d5b3f;border:1px solid rgba(46,125,90,.2)}.status.info{background:#1d3e7114;color:#1c3658;border:1px solid rgba(29,62,113,.2)}.results{border:1px solid rgba(12,24,18,.12);border-radius:20px;padding:18px;background:#ffffffb3;display:flex;flex-direction:column;gap:16px}.results-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.pnl-actions{display:flex;justify-content:flex-end;gap:10px}.results-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.results h3{margin:6px 0 0;font-size:20px;color:var(--ink-strong)}.results-count{font-size:13px;color:var(--ink-muted)}.pnl-table{display:flex;flex-direction:column;gap:12px;font-size:13px}.pnl-section{display:flex;flex-direction:column;gap:8px}.pnl-row{display:grid;grid-template-columns:1fr 140px;gap:16px;align-items:center;padding:10px 12px;border-radius:12px;background:#ffffffd9}.pnl-row.section{background:#15604d14;font-weight:600;color:var(--ink-strong)}.pnl-row.highlight{background:#0f2e2614;font-weight:600;color:var(--ink-strong)}.pnl-row.highlight.net{border:1px solid rgba(15,46,38,.12)}.pnl-row.highlight.net.positive{color:#0b5f3d}.pnl-row.highlight.net.negative{color:#8a1d1d}.pnl-row .amount{text-align:right;font-variant-numeric:tabular-nums}.pnl-row .indent{padding-left:18px}.fine-print{font-size:12px;color:var(--ink-muted);margin:0}.footer{display:flex;justify-content:space-between;gap:16px;font-size:13px;color:var(--ink-muted);position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 24px 32px}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.topbar{flex-direction:column;align-items:flex-start}.topbar-links{flex-wrap:wrap}.results-header{flex-direction:column;align-items:flex-start}.pnl-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.pnl-row{grid-template-columns:1fr}.footer{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.hero-copy,.panel{animation:none}.primary,.upload-drop{transition:none}}
