:root,[data-theme=dark]{--bg-base:#0a0a0f;--bg-elevated:#0f0e18;--bg-overlay:#15131f;--bg-hover:#1b1828;--bg-sidebar:#07060b;--border-subtle:#ffffff0f;--border-strong:#ffffff1f;--text-primary:#f5f1ff;--text-secondary:#c7bfef;--text-tertiary:#8b86a0;--text-disabled:#4f4b62;--accent:#6b3fd4;--accent-hover:#7b4fe4;--accent-bg:#6b3fd41f;--accent-text:#fff;--violet:#8e70ff;--violet-hover:#a089ff;--violet-bg:#8e70ff24;--violet-glow-rgba:#6b3fd459;--success:#5bbf8a;--success-bg:#5bbf8a24;--warning:#e6b85c;--warning-bg:#e6b85c24;--danger:#ef6f6f;--danger-bg:#ef6f6f24;--info:#5ba3d0;--info-bg:#5ba3d024;--chart-1:#8e70ff;--chart-2:#6b3fd4;--chart-3:#5bbf8a;--chart-4:#5ba3d0;--chart-5:#e6b85c;--chart-6:#ef6f6f;--shadow-pop:0 1px 2px #00000052, 0 4px 16px #0000006b;--shadow-modal:0 8px 32px #0009;--shadow-hero:0 8px 40px #0000007a;--shadow-card:0 1px 0 #ffffff0a inset, 0 8px 24px #0000002e;--glow-violet:0 0 24px #6b3fd466, 0 0 48px #6b3fd42e;--glow-violet-soft:0 0 16px #6b3fd44d;--glow-orange:0 0 16px #6b3fd452;--grad-hero:radial-gradient(ellipse 90% 60% at 50% 100%, #6b3fd438, transparent 65%), radial-gradient(ellipse 50% 40% at 30% 30%, #8e70ff24, transparent 70%), linear-gradient(180deg, #0a0a0f 0%, #0f0e18 100%);--grad-onboarding:radial-gradient(ellipse at top right, #6b3fd433, transparent 50%), linear-gradient(180deg, #0a0a0f 0%, #0f0e18 100%);--grad-empty:radial-gradient(circle at center, #6b3fd41a, transparent 70%);--ring-focus:0 0 0 3px #6b3fd447}[data-theme=light]{--bg-base:#fbfafc;--bg-elevated:#fff;--bg-overlay:#fff;--bg-hover:#f2eef9;--bg-sidebar:#f4f1fa;--border-subtle:#ece7f4;--border-strong:#d8d0ea;--text-primary:#0a0a0f;--text-secondary:#312a52;--text-tertiary:#6b6878;--text-disabled:#b9b5c7;--accent:#6b3fd4;--accent-hover:#5a2fc4;--accent-bg:#efe9ff;--accent-text:#fff;--violet:#6b3fd4;--violet-hover:#5a2fc4;--violet-bg:#f1ebff;--violet-glow-rgba:#6b3fd438;--success:#1f9a5b;--success-bg:#e5f5ec;--warning:#b8841f;--warning-bg:#faf1da;--danger:#c8392f;--danger-bg:#fce5e2;--info:#1f6fa8;--info-bg:#e4f0f8;--shadow-pop:0 1px 2px #0f0a280f, 0 4px 16px #0f0a2814;--shadow-modal:0 12px 40px #0f0a282e;--shadow-hero:0 8px 40px #0f0a2824;--shadow-card:0 1px 0 #0f0a2808 inset, 0 6px 18px #0f0a280f;--glow-violet:0 0 24px #6b3fd43d, 0 0 48px #6b3fd41a;--glow-violet-soft:0 0 14px #6b3fd429;--glow-orange:0 0 16px #6b3fd433;--grad-hero:radial-gradient(ellipse 90% 60% at 50% 100%, #6b3fd429, transparent 65%), radial-gradient(ellipse 50% 40% at 30% 30%, #8e70ff14, transparent 70%), linear-gradient(180deg, #fbfafc 0%, #f4f1fa 100%);--grad-onboarding:radial-gradient(ellipse at top right, #6b3fd41f, transparent 55%), linear-gradient(180deg, #fff 0%, #f4f1fa 100%);--grad-empty:radial-gradient(circle at center, #6b3fd40f, transparent 70%);--ring-focus:0 0 0 3px #6b3fd42e}[data-atmos=subtle]{--grad-hero:radial-gradient(ellipse 80% 60% at 50% 100%, #6b3fd41a, transparent 65%), linear-gradient(180deg, var(--bg-base) 0%, var(--bg-base) 100%);--glow-violet:0 0 14px #6b3fd42e;--glow-orange:0 0 10px #6b3fd424}[data-atmos=pronounced]{--grad-hero:radial-gradient(ellipse 90% 70% at 50% 100%, #6b3fd452, transparent 60%), radial-gradient(ellipse 100% 80% at 12% 22%, #8e70ff57, transparent 70%), radial-gradient(ellipse 60% 50% at 50% 50%, #6b3fd42e, transparent 70%), linear-gradient(180deg, var(--bg-base) 0%, var(--bg-elevated) 100%);--glow-violet:0 0 32px #6b3fd48c, 0 0 64px #6b3fd447;--glow-orange:0 0 24px #6b3fd473}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-general-sans), system-ui, -apple-system, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01" on, "ss02" on;font-size:15px;line-height:1.47}button,input,textarea,select{color:inherit;font-family:inherit}.t-display-2xl{font-family:var(--font-fraunces), serif;letter-spacing:-.04em;font-variation-settings:"opsz" 144;font-size:clamp(48px,6vw,72px);font-weight:380;line-height:1.05}.t-display-xl{font-family:var(--font-fraunces), serif;letter-spacing:-.03em;font-variation-settings:"opsz" 96;font-size:48px;font-weight:400;line-height:1.1}.t-display-lg{font-family:var(--font-fraunces), serif;letter-spacing:-.025em;font-variation-settings:"opsz" 72;font-size:36px;font-weight:420;line-height:1.15}.t-heading-xl{letter-spacing:-.02em;font-size:32px;font-weight:600;line-height:1.25}.t-heading-lg{letter-spacing:-.015em;font-size:24px;font-weight:600;line-height:1.3}.t-heading-md{letter-spacing:-.01em;font-size:20px;font-weight:600;line-height:1.4}.t-heading-sm{font-size:16px;font-weight:600;line-height:1.5}.t-body-lg{font-size:17px;line-height:1.55}.t-body-md{font-size:15px;line-height:1.47}.t-body-sm{font-size:13px;line-height:1.55}.t-caption{text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);font-size:11px;font-weight:600;line-height:1.4}.t-mono{font-family:var(--font-jetbrains-mono), monospace;font-variant-numeric:tabular-nums}.t-mono-sm{font-family:var(--font-jetbrains-mono), monospace;font-variant-numeric:tabular-nums;font-size:12px}.wordmark{font-family:var(--font-fraunces), serif;font-variation-settings:"opsz" 144;letter-spacing:.15em;text-transform:uppercase;font-weight:400}.wordmark-grad{background:linear-gradient(135deg, var(--text-primary) 0%, var(--violet) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;height:36px;padding:0 16px;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s,transform .12s,box-shadow .15s;display:inline-flex}.btn-sm{border-radius:7px;height:30px;padding:0 12px;font-size:13px}.btn-lg{border-radius:10px;height:44px;padding:0 22px;font-size:15px}.btn-primary{background:var(--accent);color:var(--accent-text);box-shadow:0 4px 14px #6b3fd447}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 18px #6b3fd45c}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{color:var(--text-primary);border-color:var(--border-strong);background:0 0}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--danger);color:#fff}.btn-glow-orange,.btn-glow-violet{box-shadow:var(--glow-violet-soft)}.btn-violet{background:var(--violet);color:#fff}.btn-violet:hover{background:var(--violet-hover)}.input{background:var(--bg-elevated);height:36px;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:8px;outline:none;width:100%;padding:0 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--accent);box-shadow:var(--ring-focus)}.input::placeholder{color:var(--text-tertiary)}.input-lg{border-radius:10px;height:44px;font-size:15px}.card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:12px}.label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.pill{height:22px;font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:500;display:inline-flex}.pill-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.pill.draft{background:var(--bg-hover);color:var(--text-secondary)}.pill.ordered{background:var(--info-bg);color:var(--info)}.pill.progress,.pill.in-progress{background:var(--warning-bg);color:var(--warning)}.pill.pending,.pill.delivered{background:var(--info-bg);color:var(--info)}.pill.verified{background:var(--success-bg);color:var(--success)}.pill.disputed{background:var(--danger-bg);color:var(--danger)}.pill.cancelled{background:var(--bg-hover);color:var(--text-tertiary);text-decoration:line-through}.pill.paid{background:var(--success-bg);color:var(--success)}.pill.overdue{background:var(--danger-bg);color:var(--danger)}.pill.owner-only{background:var(--violet-bg);color:var(--violet)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.pill.overdue .pill-dot{animation:1.6s ease-in-out infinite pulse-dot}.glass{-webkit-backdrop-filter:blur(28px)saturate(160%);background:#0f0e188c;border:1px solid #ffffff14;border-radius:16px}[data-theme=light] .glass{background:#ffffffb8;border-color:#0f0a280f}.table{border-collapse:collapse;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);padding:12px 16px;font-size:11px;font-weight:600}.table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:14px 16px;font-size:14px}.table tbody tr{cursor:pointer;transition:background .12s}.table tbody tr:hover{background:var(--bg-hover)}.table tbody tr.active{background:var(--bg-hover);box-shadow:inset 2px 0 0 var(--accent)}.table .num{text-align:right;font-family:var(--font-jetbrains-mono), monospace;font-variant-numeric:tabular-nums}[data-density=dense] .table th{padding:8px 12px}[data-density=dense] .table td{padding:9px 12px;font-size:13px}[data-density=dense] .card{padding-block:0}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.divider{background:var(--border-subtle);height:1px}.divider-v{background:var(--border-subtle);align-self:stretch;width:1px}.tnum{font-variant-numeric:tabular-nums}.row{align-items:center;display:flex}.col{flex-direction:column;display:flex}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.gap-8{gap:32px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}@keyframes node-pulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes line-pulse{0%,to{stroke-opacity:.18}50%{stroke-opacity:.55}}.net-node{animation:4s ease-in-out infinite node-pulse}.net-line{animation:5s ease-in-out infinite line-pulse}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
