:root{--paper: #f3eee2;--paper-2: #fbf8f1;--paper-3: #efe9db;--ink: #1c1813;--ink-2: #6a6055;--ink-3: #8d8475;--line: #ddd3c0;--line-2: #e8e0d0;--accent: #c2410c;--accent-2: #9a3209;--accent-soft: rgba(194, 65, 12, .1);--good: #2f6f4e;--good-soft: rgba(47, 111, 78, .12);--warn: #9a6a17;--warn-soft: rgba(154, 106, 23, .14);--danger: #a3301f;--danger-soft: rgba(163, 48, 31, .12);--ink-on-accent: #fbf8f1;--radius: 12px;--radius-lg: 18px;--shadow: 0 1px 0 rgba(28,24,19,.04), 0 10px 30px -18px rgba(28,24,19,.35);--shadow-lg: 0 24px 60px -28px rgba(28,24,19,.45);--serif: "Fraunces", Georgia, "Times New Roman", serif;--sans: "Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background-color:var(--paper);background-image:radial-gradient(120% 80% at 100% 0%,rgba(194,65,12,.05),transparent 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");color:var(--ink)}a{color:inherit;text-decoration:none}button{font-family:inherit}::selection{background:var(--accent);color:var(--ink-on-accent)}.display{font-family:var(--serif);font-weight:600;letter-spacing:-.01em;line-height:1.05}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.muted{color:var(--ink-2)}.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.rail{position:sticky;top:0;height:100vh;background:var(--paper-2);border-right:1px solid var(--line);padding:22px 18px;display:flex;flex-direction:column;gap:6px}.masthead{padding:6px 8px 18px;border-bottom:1px solid var(--line);margin-bottom:12px}.logo{display:flex;align-items:baseline;gap:2px}.logo .mark{font-family:var(--serif);font-weight:700;font-size:26px;letter-spacing:-.02em}.logo .dot{color:var(--accent);font-family:var(--serif);font-weight:700;font-size:26px}.logo-sub{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-top:4px}.nav{display:flex;flex-direction:column;gap:2px;margin-top:4px}.nav a{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:10px;color:var(--ink-2);font-weight:500;font-size:14.5px;transition:background .15s,color .15s}.nav a .ic{width:17px;height:17px;flex:none;opacity:.8}.nav a:hover{background:var(--paper-3);color:var(--ink)}.nav a.active{background:var(--ink);color:var(--paper-2)}.nav a.active .ic{opacity:1}.rail-foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}.who{display:flex;align-items:center;gap:10px;padding:4px 8px}.avatar{width:32px;height:32px;border-radius:9px;flex:none;background:var(--accent);color:var(--ink-on-accent);display:grid;place-items:center;font-weight:700;font-size:14px}.who .meta{min-width:0}.who .nm{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.who .sub{font-size:11.5px;color:var(--ink-3)}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:16px;padding:16px 32px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:5}.topbar .ctx{display:flex;align-items:center;gap:9px}.tenant-chip{font-weight:600;font-size:13.5px;padding:6px 11px;background:var(--paper-2);border:1px solid var(--line);border-radius:999px}.topbar .spacer{flex:1}.meter{display:flex;align-items:center;gap:8px;font-size:13px}.meter .k{color:var(--ink-3)}.meter .v{font-family:var(--mono);font-weight:600}.meter .sep{width:1px;height:18px;background:var(--line)}.content{padding:30px 32px 60px;max-width:1080px;width:100%}.page-head{margin-bottom:24px}.page-head h1{font-family:var(--serif);font-weight:600;font-size:34px;margin:6px 0 4px;letter-spacing:-.015em}.page-head p{color:var(--ink-2);margin:0;max-width:60ch;line-height:1.55}.card{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.card.pad{padding:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;padding:10px 16px;transition:transform .12s ease,background .15s,border-color .15s,box-shadow .15s}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--ink-on-accent);box-shadow:0 8px 18px -10px var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-2)}.btn-ghost{background:var(--paper-2);border-color:var(--line);color:var(--ink)}.btn-ghost:hover:not(:disabled){background:var(--paper-3)}.btn-ink{background:var(--ink);color:var(--paper-2)}.btn-ink:hover:not(:disabled){background:#2b251d}.btn-sm{padding:7px 12px;font-size:13px}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--paper-3);color:var(--ink-2);border:1px solid var(--line-2)}.pill .dotmark{width:6px;height:6px;border-radius:50%;background:currentColor}.pill.good{color:var(--good);background:var(--good-soft);border-color:transparent}.pill.warn{color:var(--warn);background:var(--warn-soft);border-color:transparent}.pill.danger{color:var(--danger);background:var(--danger-soft);border-color:transparent}.pill.accent{color:var(--accent);background:var(--accent-soft);border-color:transparent}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.input,.textarea,select.input{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-size:14.5px;color:var(--ink);font-family:inherit;transition:border-color .15s,box-shadow .15s}.input:focus,.textarea:focus,select.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.textarea{resize:vertical;min-height:92px;line-height:1.5}.divider{height:1px;background:var(--line);border:0;margin:0}.grid{display:grid;gap:16px}.banner{display:flex;gap:12px;align-items:flex-start;padding:13px 15px;border-radius:12px;font-size:13.5px;line-height:1.5}.banner.err{background:var(--danger-soft);color:var(--danger)}.banner.info{background:var(--accent-soft);color:var(--accent-2)}.banner.good{background:var(--good-soft);color:var(--good)}.spin{width:15px;height:15px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;display:inline-block;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.auth-aside{background:var(--ink);color:var(--paper-2);padding:56px 52px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-aside:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(80% 60% at 110% -10%,rgba(194,65,12,.45),transparent 55%);pointer-events:none}.auth-aside .logo .mark,.auth-aside .logo .dot{color:var(--paper-2)}.auth-aside .dot{color:var(--accent)!important}.auth-quote{font-family:var(--serif);font-size:34px;line-height:1.18;font-weight:500;max-width:16ch;letter-spacing:-.01em}.auth-quote em{color:var(--accent);font-style:italic}.auth-points{display:flex;flex-direction:column;gap:13px;z-index:1}.auth-points li{display:flex;gap:11px;align-items:flex-start;color:#d8cfc0;font-size:14px;line-height:1.45;list-style:none}.auth-points .tick{color:var(--accent);font-weight:700}.auth-main{display:grid;place-items:center;padding:40px}.auth-form{width:100%;max-width:380px}.auth-form h2{font-family:var(--serif);font-size:28px;margin:0 0 4px;font-weight:600}.auth-form .lede{color:var(--ink-2);margin:0 0 26px}.auth-form .field{margin-bottom:14px}.auth-toggle{margin-top:18px;font-size:13.5px;color:var(--ink-2);text-align:center}.auth-toggle button{background:none;border:none;color:var(--accent);font-weight:600;cursor:pointer;padding:0}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:18px}.toolbar .spacer{flex:1}.dropzone{border:1.5px dashed var(--line);border-radius:var(--radius-lg);padding:30px;text-align:center;background:var(--paper-2);transition:border-color .15s,background .15s;cursor:pointer}.dropzone:hover,.dropzone.drag{border-color:var(--accent);background:var(--accent-soft)}.dropzone .big{font-family:var(--serif);font-size:19px;margin:8px 0 3px}.ledger{display:flex;flex-direction:column}.ledger-row{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:16px 20px;border:1px solid var(--line);border-top:0;background:var(--paper-2);transition:background .14s}.ledger-row:first-child{border-top:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.ledger-row:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.ledger-row:hover{background:var(--paper-3);cursor:pointer}.ledger-row .t{font-weight:600;font-size:15px;display:flex;align-items:center;gap:9px}.ledger-row .sub{font-size:12.5px;color:var(--ink-3);margin-top:3px}.ledger-row .when{font-family:var(--mono);font-size:13px;color:var(--ink-2);text-align:right}.ledger-row .when .lab{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-family:var(--sans)}.empty{text-align:center;padding:60px 20px;color:var(--ink-2)}.empty .display{font-size:22px;color:var(--ink);margin-bottom:6px}.detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;align-items:start}.kv{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;font-size:14px}.kv dt{color:var(--ink-3)}.kv dd{margin:0;font-family:var(--mono);font-weight:500}.action-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid var(--line-2)}.action-row:last-child{border-bottom:0}.action-row .nm{font-weight:600;font-size:14.5px}.action-row .cost{font-family:var(--mono);font-size:12px;color:var(--ink-3)}.action-row .spacer{flex:1}.result-item{padding:11px 0;border-bottom:1px dashed var(--line-2)}.result-item:last-child{border-bottom:0}.result-item .s{font-weight:600;font-size:14px}.result-item .d{font-family:var(--mono);font-size:12px;color:var(--ink-2);margin-top:3px;white-space:pre-wrap}.run-state{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600}.run-state.running{color:var(--warn)}.run-state.done{color:var(--good)}.run-state.failed{color:var(--danger)}.assistant{display:flex;flex-direction:column;height:440px}.chat{flex:1;overflow-y:auto;padding:4px 2px;display:flex;flex-direction:column;gap:12px}.bubble{max-width:86%;padding:10px 13px;border-radius:13px;font-size:13.5px;line-height:1.5}.bubble.me{align-self:flex-end;background:var(--ink);color:var(--paper-2);border-bottom-right-radius:4px}.bubble.bot{align-self:flex-start;background:var(--paper-3);border:1px solid var(--line-2);border-bottom-left-radius:4px}.chat-opts{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.chat-form{display:flex;gap:9px;margin-top:12px}.chat-form .input{flex:1}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:14px;position:relative}.plan.featured{border-color:var(--accent);box-shadow:0 18px 50px -30px var(--accent)}.plan .ribbon{position:absolute;top:-10px;right:18px}.plan .nm{font-family:var(--serif);font-size:21px;font-weight:600}.plan .price{font-family:var(--mono);font-size:30px;font-weight:600}.plan .price small{font-size:13px;color:var(--ink-3);font-weight:500}.plan ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;font-size:13.5px}.plan li{display:flex;gap:9px;color:var(--ink-2)}.plan li .tick{color:var(--good);font-weight:700}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:#1c18136b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:24px;animation:fade .18s ease}@keyframes fade{0%{opacity:0}}.modal{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:26px;animation:rise .28s cubic-bezier(.2,.7,.2,1)}.modal h3{font-family:var(--serif);font-size:22px;font-weight:600;margin:0 0 4px}.modal-foot{display:flex;gap:10px;align-items:center;margin-top:20px}.modal-foot .spacer{flex:1}.note-strip{font-size:12.5px;color:var(--warn);background:var(--warn-soft);padding:9px 12px;border-radius:9px;line-height:1.45}.signer-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px dashed var(--line-2);font-size:13.5px}.signer-row:last-child{border-bottom:0}.signer-row .em{font-family:var(--mono)}.signer-row .spacer{flex:1}.sk{background:linear-gradient(90deg,var(--paper-3) 25%,var(--paper-2) 50%,var(--paper-3) 75%);background-size:200% 100%;animation:sh 1.3s infinite;border-radius:8px}@keyframes sh{to{background-position:-200% 0}}.rise{opacity:0;transform:translateY(10px);animation:rise .5s cubic-bezier(.2,.7,.2,1) forwards}@keyframes rise{to{opacity:1;transform:none}}@media (max-width: 900px){.app{grid-template-columns:1fr}.rail{display:none}.auth{grid-template-columns:1fr}.auth-aside{display:none}.detail-grid,.plans{grid-template-columns:1fr}}
