:root{--color-paper: oklch(98.5% .004 250);--color-paper-2: oklch(96.5% .005 252);--color-paper-3: oklch(94% .006 254);--color-panel: oklch(99.2% .003 250);--color-panel-muted: oklch(96.5% .005 252);--color-paper-muted: oklch(82% .012 256);--color-ink: oklch(24% .02 258);--color-ink-2: oklch(34% .018 257);--color-muted: oklch(56% .013 255);--color-rule: oklch(91% .008 255);--color-rule-2: oklch(83% .011 255);--color-accent: oklch(58% .2 256);--color-accent-soft: oklch(58% .2 256 / .1);--color-accent-ink: oklch(99% .004 256);--color-secondary: oklch(62% .11 215);--color-secondary-soft: oklch(88% .045 215);--color-graphite: oklch(22% .016 260);--color-graphite-2: oklch(27% .018 260);--color-graphite-3: oklch(34% .02 260);--color-overlay: oklch(22% .016 260 / .38);--color-focus: oklch(58% .2 256 / .28);--color-error: oklch(56% .18 25);--color-error-soft: oklch(96% .025 25);--color-success: oklch(50% .12 150);--color-success-soft: oklch(94% .035 150);--color-warning: oklch(64% .12 72);--color-warning-soft: oklch(95% .035 72);--color-transparent: oklch(99% .004 250 / 0);--font-display: "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.375rem;--text-xl: 1.75rem;--text-2xl: 2.35rem;--text-3xl: 3rem;--text-4xl: 4rem;--text-5xl: 5rem;--radius-xs: .25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-round: 999rem;--shadow-panel: 0 1px 2px oklch(22% .016 260 / .05);--shadow-float: 0 18px 48px oklch(22% .016 260 / .18);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--z-base: 1;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-modal: 400;--z-toast: 500;--z-tooltip: 600}@media(max-width:39.99rem){:root{--text-3xl: 2.45rem;--text-4xl: 3rem;--text-5xl: 3.75rem}}html,body{margin:0;min-height:100%;overflow-x:clip}*{box-sizing:border-box}body{background:var(--color-paper);color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-base);line-height:1.55;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1,"liga" 1,"cv05" 1}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;opacity:.58}a{color:inherit}h1,h2,h3,p{min-width:0;overflow-wrap:anywhere}h1,h2,h3,.side-brand strong,.balance-card strong,.score-cell strong,.mock-pane strong,.run-row strong,dt{color:var(--color-ink);font-family:var(--font-display);font-style:normal}h1{margin:0;font-size:var(--text-3xl);font-weight:650;line-height:1.05;letter-spacing:0}h2{margin:0;font-size:var(--text-xl);font-weight:650;line-height:1.15;letter-spacing:0}h3{margin:0;font-size:var(--text-lg);line-height:1.2;letter-spacing:0}p{margin-block:0}:focus{outline:none}:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--color-focus);outline-offset:3px}.boot{display:grid;min-height:100dvh;place-items:center;background:var(--color-paper);color:var(--color-muted);font-family:var(--font-mono)}.machine-label,kbd,.status-chip,.mini-btn,.codebox,pre,table th,small{font-family:var(--font-mono)}.machine-label{color:var(--color-accent);font-size:var(--text-xs);font-weight:700;letter-spacing:0;text-transform:uppercase}kbd{display:inline-flex;min-width:1.75rem;min-height:1.5rem;align-items:center;justify-content:center;border:1px solid var(--color-rule);border-radius:var(--radius-xs);background:var(--color-paper-2);color:var(--color-muted);font-size:var(--text-xs)}.muted{color:var(--color-muted)}.login-screen{display:grid;min-height:100dvh;gap:var(--space-xl);padding:var(--space-lg)}.login-copy{display:grid;align-content:center;gap:var(--space-lg);border-bottom:1px solid var(--color-rule);padding-block:var(--space-2xl)}.login-copy h1{max-width:12ch;font-size:var(--text-4xl)}.login-copy p{max-width:48ch;color:var(--color-muted)}.login-proof,.check-row,.batch-strip,.export-row,.action-row,.table-actions,.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.login-proof span,.check-row span,.status-chip,.batch-chip{border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel-muted)}.login-proof span,.check-row span{padding:var(--space-xs) var(--space-sm);color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs)}.auth-card,.panel{border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-panel);box-shadow:var(--shadow-panel)}.auth-card{align-self:center;display:grid;gap:var(--space-md);padding:var(--space-lg)}.auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-rule);overflow:clip}.auth-tabs button{min-height:44px;border:0;background:var(--color-panel);color:var(--color-muted)}.auth-tabs button.is-active{background:var(--color-accent-soft);color:var(--color-ink);font-weight:700}label{display:grid;gap:var(--space-xs);color:var(--color-ink);font-size:var(--text-sm);font-weight:650}input,textarea,select{width:100%;min-height:44px;border:1px solid var(--color-rule-2);border-radius:var(--radius-sm);background:var(--color-panel);color:var(--color-ink);outline:2px solid var(--color-transparent);outline-offset:1px;padding:var(--space-sm) var(--space-md);transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out)}textarea{min-height:9rem;resize:vertical}input::placeholder,textarea::placeholder{color:var(--color-muted)}input:hover,textarea:hover,select:hover{background:var(--color-panel-muted)}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--color-accent);outline-color:var(--color-focus)}[aria-invalid=true],.is-error{border-color:var(--color-error)}.is-success{border-color:var(--color-success)}.app-shell{display:grid;min-height:100dvh}.sidebar{z-index:var(--z-sticky);display:grid;gap:var(--space-md);border-bottom:1px solid var(--color-rule);background:color-mix(in oklch,var(--color-paper) 88%,var(--color-panel) 12%);padding:var(--space-sm)}.side-brand{display:inline-flex;min-width:0;min-height:44px;align-items:center;gap:var(--space-sm);color:var(--color-ink);text-decoration:none}.side-brand-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:var(--space-xs);align-items:center}.sidebar-toggle{color:var(--color-muted)}.brand-mark{display:grid;width:2rem;height:2rem;flex:0 0 auto;place-items:center;border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-body);font-weight:700}.side-brand>div,.user-line{min-width:0}.side-brand>div>span,.user-line span{display:block;color:var(--color-muted);font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar nav{display:flex;gap:var(--space-xs);overflow-x:auto;padding-block-end:var(--space-xs)}.sidebar nav a,.logout-btn{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel);color:var(--color-muted);padding-inline:var(--space-sm);text-align:left;text-decoration:none;transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out);white-space:nowrap}.sidebar nav a.active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-ink)}.nav-group-label{display:inline-flex;align-items:center;color:var(--color-muted);font-size:var(--text-xs);font-weight:700;padding-inline:var(--space-xs);white-space:nowrap}.side-user{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.balance-pill,.role-badge,.user-line{display:inline-flex;min-height:36px;align-items:center;gap:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-round);background:var(--color-panel-muted);color:var(--color-ink-2);padding-inline:var(--space-sm);white-space:nowrap}.balance-pill{color:var(--color-secondary)}.balance-refresh-btn{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border:1px solid var(--color-rule);border-radius:var(--radius-round);background:var(--color-panel);color:inherit;padding:0}.role-badge{color:var(--color-accent);font-size:var(--text-xs);font-weight:700}.logout-btn{border-color:var(--color-rule-2);background:var(--color-panel);color:var(--color-muted)}.main-panel{display:grid;align-content:start;gap:var(--space-lg);padding:var(--space-md)}.topbar{display:grid;gap:var(--space-md);border-bottom:1px solid var(--color-rule);padding-block-end:var(--space-md)}.topbar h1{margin-block-start:var(--space-xs);font-size:var(--text-2xl)}.topbar-home{justify-self:start}.topbar-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;justify-content:flex-start}.btn,.icon-btn,.mini-btn{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;gap:var(--space-xs);border:1px solid var(--color-rule-2);border-radius:var(--radius-sm);background:var(--color-panel);color:var(--color-ink);font-weight:700;text-decoration:none;transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out);white-space:nowrap}.btn{padding-inline:var(--space-md)}.btn-primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink)}.btn-secondary{background:var(--color-panel-muted)}.icon-btn{padding:0}.mini-btn{min-height:36px;min-width:36px;padding-inline:var(--space-sm);font-size:var(--text-xs)}.mini-btn.danger{border-color:var(--color-error);color:var(--color-error)}.btn:active,.icon-btn:active,.mini-btn:active,.sidebar nav a:active,.logout-btn:active{transform:translateY(1px)}.btn[data-state=loading]:after,.icon-btn[data-state=loading]:after{content:"";width:.75rem;height:.75rem;border:2px solid currentColor;border-top-color:var(--color-transparent);border-radius:var(--radius-round);animation:spin var(--dur-long) linear infinite}.btn[data-state=error],.icon-btn[data-state=error]{border-color:var(--color-error)}.btn[data-state=success],.icon-btn[data-state=success]{border-color:var(--color-success);color:var(--color-success)}.panel{display:grid;gap:var(--space-md);padding:var(--space-md)}.panel-head{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;justify-content:space-between}.panel-head>div{display:grid;gap:var(--space-xs)}.stack{display:grid;gap:var(--space-lg);align-content:start}.admin-grid,.wallet-grid{display:grid;gap:var(--space-lg)}.studio-workbench{display:grid;min-height:0;position:relative}.preview-frame{width:100%;height:clamp(20rem,52dvh,34rem);min-height:0;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel-muted)}.chat-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(100%,72rem);height:clamp(30rem,calc(100dvh - 10rem),56rem);min-height:0;align-content:stretch;justify-self:center;overflow:hidden}.chat-thread{display:grid;align-content:start;gap:var(--space-sm);min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-sm) var(--space-xs) var(--space-md);scrollbar-gutter:stable}.chat-message{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:var(--space-sm);align-items:start;width:min(100%,54rem);justify-self:start}.chat-message.user{grid-template-columns:minmax(0,1fr) 2rem;justify-self:end}.chat-message.user .chat-avatar{grid-column:2;grid-row:1}.chat-message.user .chat-bubble{grid-column:1;grid-row:1}.chat-avatar{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel-muted);color:var(--color-muted)}.chat-bubble{display:grid;gap:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel);padding:var(--space-sm)}.chat-message.user .chat-bubble{border-color:var(--color-accent);background:var(--color-accent-soft)}.chat-message.pending .chat-bubble{color:var(--color-muted)}.chat-message.error .chat-bubble{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-error)}.chat-message p{margin:0}.chat-message small{color:var(--color-muted)}.chat-artifact{display:grid;gap:var(--space-sm);margin-block-start:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel-muted);padding:var(--space-sm)}.artifact-summary{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;justify-content:space-between}.artifact-summary>div{display:grid;min-width:min(20rem,100%);gap:var(--space-2xs)}.artifact-summary strong{color:var(--color-ink)}.artifact-summary span{color:var(--color-muted);font-size:var(--text-sm)}.preview-drawer{position:fixed;inset:0 0 0 auto;z-index:var(--z-modal);display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(38rem,calc(100% - var(--space-md)));min-width:0;height:100dvh;gap:var(--space-md);border-left:1px solid var(--color-rule-2);background:var(--color-panel);box-shadow:var(--shadow-float);opacity:0;padding:var(--space-md);pointer-events:none;transform:translate(calc(100% + var(--space-md)));transition:opacity var(--dur-short) var(--ease-out),transform var(--dur-short) var(--ease-out)}.preview-drawer.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.preview-drawer-head,.preview-drawer-actions{display:flex;gap:var(--space-sm);align-items:center;justify-content:space-between}.preview-drawer-head>div{display:grid;min-width:0;gap:var(--space-2xs)}.preview-drawer-head h2{font-size:var(--text-lg)}.preview-drawer .preview-frame{height:100%;min-height:0}.preview-drawer-actions{justify-content:flex-end}.chat-composer{display:grid;gap:var(--space-sm);align-self:end;border-top:1px solid var(--color-rule);padding-block-start:var(--space-sm)}.chat-composer textarea{max-height:12rem;min-height:5.5rem;resize:vertical}.generation-progress{display:grid;gap:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel-muted);padding:var(--space-sm)}.generation-progress.is-failed{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-error)}.progress-head{display:flex;gap:var(--space-sm);align-items:center;justify-content:space-between;color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.progress-head strong{color:var(--color-ink);font-family:var(--font-mono)}.progress-track{height:.5rem;overflow:clip;border-radius:var(--radius-round);background:var(--color-rule)}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--color-accent);transition:width var(--dur-short) var(--ease-out)}.generation-progress p{margin:0;font-size:var(--text-sm)}.mock-workbench{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md);min-height:28rem;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel-muted);padding:var(--space-md)}.mock-pane{display:grid;align-content:start;gap:var(--space-sm);min-height:9rem;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel);padding:var(--space-lg)}.mock-pane p{color:var(--color-muted)}.codebox{min-height:16rem;height:100%;color:var(--color-ink);font-size:var(--text-sm);resize:vertical}.notice{border:1px solid var(--color-rule-2);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md)}.notice-error{border-color:var(--color-error);color:var(--color-error)}.notice-success{border-color:var(--color-success);color:var(--color-success)}.empty-state{display:grid;gap:var(--space-sm);place-items:start;border:1px dashed var(--color-rule-2);border-radius:var(--radius-sm);color:var(--color-muted);padding:var(--space-lg)}.run-list{display:grid;gap:1px;overflow:clip;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-rule)}.run-row{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:4.5rem;align-items:center;gap:var(--space-md);border:0;background:var(--color-panel);color:var(--color-ink)}.run-select{display:flex;min-height:4.5rem;min-width:0;align-items:center;justify-content:flex-start;border:0;background:transparent;color:inherit;padding:var(--space-md);text-align:start}.run-select span{display:grid;gap:var(--space-xs);min-width:0}.run-select strong,.run-select small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-select:disabled{cursor:not-allowed;opacity:.58}.run-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md);padding-inline-start:0}.status-chip{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding-inline:var(--space-sm);color:var(--color-ink);font-size:var(--text-xs);white-space:nowrap}.status-chip.success{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success)}.status-warn{border-color:var(--color-error);color:var(--color-error)}.wallet-grid{align-items:start}.wallet-card>.panel-head p{max-width:42ch;color:var(--color-muted)}.balance-card{display:grid;gap:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-panel-muted) 0%,var(--color-panel) 100%);padding:var(--space-lg)}.balance-card span{color:var(--color-muted);font-size:var(--text-sm);font-weight:650}.balance-card strong{color:var(--color-accent);font-size:var(--text-3xl);line-height:1}.wallet-form,.form-grid{display:grid;gap:var(--space-md)}.inline-form{display:grid;gap:var(--space-sm)}.compact-panel{align-content:start}.batch-strip{align-items:stretch}.batch-chip{display:grid;gap:var(--space-xs);min-height:4.5rem;min-width:min(14rem,100%);padding:var(--space-sm);text-align:start}.batch-chip.is-active{border-color:var(--color-accent)}.batch-chip strong{font-family:var(--font-mono);font-size:var(--text-sm)}.batch-chip span{color:var(--color-muted);font-size:var(--text-sm)}.export-row{align-items:stretch}.table-wrap{overflow-x:auto;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-panel)}table{width:100%;min-width:46rem;border-collapse:collapse}th,td{border-bottom:1px solid var(--color-rule);padding:var(--space-sm) var(--space-md);text-align:start;vertical-align:top}th{background:var(--color-panel-muted);color:var(--color-muted);font-size:var(--text-xs);font-weight:700}tr:last-child td{border-bottom:0}td{color:var(--color-ink-2)}.self-tag{display:inline-flex;margin-inline-start:var(--space-xs);color:var(--color-accent)}.route-state{max-width:42rem}.modal{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--space-md)}.modal-backdrop{position:absolute;inset:0;border:0;background:var(--color-overlay)}.modal-panel{position:relative;z-index:1;width:min(38rem,100%);border:1px solid var(--color-rule-2);border-radius:var(--radius-md);background:var(--color-panel);box-shadow:var(--shadow-float)}.modal-panel{display:grid;gap:var(--space-md);padding:var(--space-md)}.modal-form{display:grid;gap:var(--space-md)}.landing-shell{position:relative;isolation:isolate;min-height:100dvh;overflow:clip;background:linear-gradient(115deg,oklch(78% .16 225 / .12),transparent 36%,oklch(73% .13 35 / .08) 72%,transparent),linear-gradient(180deg,#fbfdfe,#f0f5f9 48%,#fafcfe);color:var(--color-ink-2);font-family:"PingFang SC",var(--font-body)}.landing-shell:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,oklch(62% .12 225 / .08) 1px,transparent 1px),linear-gradient(180deg,oklch(62% .12 225 / .06) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,black 0%,transparent 52%);mask-image:linear-gradient(180deg,black 0%,transparent 52%);pointer-events:none}.landing-nav,.landing-hero,.landing-strip,.landing-feature-grid,.landing-footer{width:min(1220px,calc(100% - clamp(2rem,7vw,6.5rem)));margin-inline:auto}.landing-nav{position:sticky;top:var(--space-sm);z-index:var(--z-sticky);display:flex;min-height:64px;align-items:center;gap:var(--space-md);border:1px solid oklch(89% .016 235 / .82);border-radius:var(--radius-round);background:#ffffffc7;box-shadow:0 18px 48px #18313f1a;-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md)}.landing-brand{display:inline-flex;max-width:100%;min-width:0;align-items:center;gap:var(--space-xs);color:var(--color-ink);font-family:var(--font-display);font-weight:700;text-decoration:none;white-space:nowrap}.landing-mark{position:relative;width:22px;height:22px;flex:0 0 auto;border-radius:7px;background:linear-gradient(135deg,#00b9e9,#009de8 26%,#008eea 39%,#1287ea,#207fe8 52%,#4d84dc,#6a88cf 64%,#9b8db4 76%,#f18b73);background:linear-gradient(135deg,color(xyz 0.314 0.407 0.942),color(xyz 0.268 0.3 0.867) 26%,color(xyz 0.247 0.254 0.829) 39%,#1287ea,#207fe8 52%,#4d84dc,#6a88cf 64%,#9b8db4 76%,#f18b73);box-shadow:inset 0 0 0 1px #ffffff80}.landing-mark:after{content:"";position:absolute;inset:6px 6px auto auto;width:7px;height:7px;border-radius:2px;background:#ffffffeb}.landing-links{display:flex;gap:clamp(var(--space-sm),2vw,var(--space-lg));margin-inline-start:auto;font-size:var(--text-sm)}.landing-links a,.landing-secondary-action{color:var(--color-ink-2);font-weight:600;text-decoration:none;white-space:nowrap}.landing-links a{position:relative;border-radius:var(--radius-round);padding:var(--space-xs) var(--space-sm);transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out)}.landing-links a:hover{background:#daeff8;color:var(--color-ink)}.landing-hero{display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-block:clamp(5rem,11vw,8.5rem) clamp(3rem,8vw,6rem)}.landing-copy{display:grid;gap:var(--space-md);align-content:center}.landing-copy h1{max-width:9ch;font-size:clamp(3.2rem,7.2vw,5.8rem);font-weight:750;line-height:.98;letter-spacing:0}.landing-lead{max-width:36rem;margin-block-start:var(--space-xs);color:#404c57;font-size:clamp(1rem,1.35vw,1.16rem);line-height:1.85}.landing-copy p{max-width:62ch}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-xs);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:0;text-transform:uppercase}.eyebrow-dot{width:6px;height:6px;border-radius:var(--radius-round);background:var(--color-accent)}.btn-large{min-height:48px;padding-inline:var(--space-lg)}.landing-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;margin-block-start:var(--space-sm)}.landing-secondary-action{display:inline-flex;min-height:48px;align-items:center;gap:var(--space-xs);border:1px solid oklch(87% .014 235);border-radius:var(--radius-sm);background:#ffffffb8;padding-inline:var(--space-md);transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.landing-secondary-action:hover{border-color:#60bbde;background:#e6f7fe}.landing-trust-row{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-block-start:var(--space-sm)}.landing-trust-row span{border:1px solid oklch(87% .015 235);border-radius:var(--radius-round);background:#ffffffad;color:#42525f;font-size:var(--text-sm);font-weight:650;padding:.45rem .72rem}.landing-visual{margin:0;overflow:clip;border:1px solid oklch(88% .015 235 / .9);border-radius:var(--radius-md);background:#ffffff94;box-shadow:0 28px 70px #233b4a29}.landing-visual img{width:100%;height:auto;aspect-ratio:1500 / 980;object-fit:cover}.landing-strip{display:grid;gap:1px;overflow:clip;border-block:1px solid var(--color-rule);background:var(--color-rule);padding-block:0}.landing-strip div{display:grid;gap:var(--space-xs);background:#fbfdfe;padding:clamp(1.1rem,2vw,1.6rem)}.landing-strip span,.metric span,.list-head span,.info-strip span{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.landing-strip strong{font-size:var(--text-md);line-height:1.45}.landing-feature-grid{display:grid;gap:var(--space-md);padding-block:clamp(3rem,8vw,6rem)}.landing-feature{display:grid;gap:var(--space-md);align-content:start;border:1px solid oklch(88% .014 235);border-radius:var(--radius-md);background:#ffffffc7;box-shadow:0 1px 2px #1f303b0d;padding:clamp(1.15rem,2.5vw,1.65rem)}.landing-feature p{color:#58626c;line-height:1.75}.landing-feature-wide{gap:var(--space-xl)}.landing-flow-card{background:linear-gradient(135deg,#ffffffeb,#dcf1fbe0),#fff}.landing-flow-list{display:grid;gap:1px;overflow:clip;border:1px solid oklch(86% .015 235);border-radius:var(--radius-sm);background:#c8d3da}.landing-flow-list span{background:#ffffffe0;color:#232f3c;font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--space-sm) var(--space-md)}.landing-feature-icon{display:inline-flex;width:2.25rem;height:2.25rem;align-items:center;justify-content:center;border:1px solid oklch(82% .06 225);border-radius:var(--radius-sm);background:#d7f0fb;color:#00628a;color:oklch(47% .14 235)}.landing-showcase{display:grid;gap:clamp(2rem,5vw,4rem);align-items:center;border-block:1px solid oklch(31% .026 250);background:linear-gradient(110deg,#111922,#0b121b 56%,#0a1d26);color:#e0e5eb;padding:clamp(3.5rem,8vw,6rem) max(clamp(1rem,5vw,3.25rem),calc((100% - 1220px)/2 + clamp(1rem,5vw,3.25rem)))}.landing-showcase h2{color:#e0e5eb}.landing-showcase p{max-width:62ch;color:#b9bec6;line-height:1.8}.landing-showcase-grid{display:grid;gap:var(--space-sm)}.landing-showcase-grid div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-xs) var(--space-sm);align-items:start;border:1px solid oklch(100% 0 0 / .08);border-radius:var(--radius-md);background:#ffffff0a;padding:var(--space-md)}.landing-showcase-grid svg{color:#00b9e9;color:oklch(73% .17 225);margin-block-start:.12rem}.landing-showcase-grid strong{color:#e7ecf2}.landing-showcase-grid span{grid-column:2;color:#a8afb7;font-size:var(--text-sm);line-height:1.65}.eyebrow-dark{color:#878d95}.landing-footer{display:flex;gap:var(--space-lg);align-items:center;justify-content:space-between;border-top:1px solid var(--color-rule);padding-block:var(--space-xl)}.landing-footer p{margin-block-start:var(--space-xs);color:var(--color-muted)}.admin-stack{display:grid;gap:var(--space-lg);align-content:start}.admin-form{display:grid;gap:var(--space-md)}.admin-form>div{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:end}.small-textarea{min-height:12rem;font-family:var(--font-mono);font-size:var(--text-sm)}.panel.narrow{max-width:58rem}.pagination-bar{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;justify-content:flex-end;color:var(--color-muted);font-size:var(--text-sm)}.pagination-bar>span{margin-inline-end:auto}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:1px;overflow:clip;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-rule)}.settlement-summary{margin-block:var(--space-xs)}.metric{display:grid;gap:var(--space-xs);min-height:5rem;background:var(--color-panel);padding:var(--space-md)}.metric strong{color:var(--color-ink);font-size:var(--text-xl);line-height:1}.detail-cell,.audit-detail-cell{max-width:26rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono-cell{font-family:var(--font-mono);font-size:var(--text-xs)}.status-pill{display:inline-flex;min-height:1.75rem;align-items:center;justify-content:center;border:1px solid var(--color-rule-2);border-radius:var(--radius-round);background:var(--color-paper-2);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);padding-inline:var(--space-sm);white-space:nowrap}.status-pill.success{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success)}.status-pill.warning{border-color:var(--color-warning);background:var(--color-warning-soft);color:#815200;color:oklch(48% .12 72)}.status-pill.danger{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-error)}.status-pill.muted{border-color:var(--color-rule);background:var(--color-paper-2);color:var(--color-muted)}.info-strip{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);padding:var(--space-sm) var(--space-md)}.inline-filter{display:flex;align-items:center;gap:var(--space-sm)}.inline-filter select{width:auto;min-width:10rem}.export-links{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.reconciliation-lists{display:grid;gap:var(--space-md)}.reconciliation-list{display:grid;gap:var(--space-sm);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);padding:var(--space-md)}.list-head{display:flex;gap:var(--space-sm);align-items:center;justify-content:space-between}.reconciliation-list ul{display:grid;gap:var(--space-xs);margin:0;max-height:12rem;overflow:auto;padding-inline-start:1rem}.reconciliation-table table{min-width:58rem}.empty-state.compact,.empty.compact,.empty{border:1px dashed var(--color-rule-2);border-radius:var(--radius-sm);color:var(--color-muted);padding:var(--space-md)}.modal-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:flex-end}.spinning{animation:spin var(--dur-long) linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(hover:hover)and (pointer:fine){.btn:hover,.icon-btn:hover,.mini-btn:hover,.sidebar nav a:hover,.logout-btn:hover,.balance-refresh-btn:hover,.run-row:hover,.batch-chip:hover{border-color:var(--color-accent);transform:translateY(-1px)}}@media(min-width:40rem){.login-screen{grid-template-columns:minmax(0,1fr) minmax(22rem,28rem);padding:var(--space-xl)}.login-copy{border-right:1px solid var(--color-rule);border-bottom:0;padding-inline-end:var(--space-xl)}.inline-form{grid-template-columns:minmax(0,1fr) max-content;align-items:end}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mock-workbench{grid-template-columns:repeat(2,minmax(0,1fr))}.mock-pane-wide{grid-column:1 / -1}}@media(min-width:60rem){.app-shell{grid-template-columns:16.5rem minmax(0,1fr)}.app-shell.sidebar-collapsed{grid-template-columns:5rem minmax(0,1fr)}.sidebar{position:sticky;top:0;min-height:100dvh;align-content:start;display:flex;flex-direction:column;border-right:1px solid var(--color-rule);border-bottom:0;padding:var(--space-lg)}.sidebar-collapsed .sidebar{align-items:center;padding:var(--space-md) var(--space-sm)}.sidebar-collapsed .side-brand-row{grid-template-columns:44px;justify-content:center}.sidebar-collapsed .side-brand{width:44px;justify-content:center}.sidebar-collapsed .sidebar-toggle{width:44px}.sidebar-collapsed .side-brand>div,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .nav-group-label,.sidebar-collapsed .balance-pill span,.sidebar-collapsed .balance-refresh-btn,.sidebar-collapsed .role-badge,.sidebar-collapsed .user-line span,.sidebar-collapsed .logout-btn span{display:none}.sidebar nav{display:grid;overflow:visible;padding-block-end:0}.sidebar nav a,.logout-btn{width:100%;justify-content:flex-start}.sidebar-collapsed .sidebar nav a,.sidebar-collapsed .logout-btn,.sidebar-collapsed .balance-pill,.sidebar-collapsed .user-line{width:44px;justify-content:center;padding-inline:0}.nav-group-label{margin:var(--space-sm) 0 var(--space-2xs);padding-inline:var(--space-sm)}.side-user{display:grid;margin-block-start:auto;border-top:1px solid var(--color-rule);padding-block-start:var(--space-md)}.balance-pill,.role-badge,.user-line{width:fit-content}.main-panel{gap:var(--space-xl);padding:var(--space-xl)}.topbar{grid-template-columns:minmax(0,1fr) minmax(18rem,28rem);align-items:center}.topbar-home{justify-self:end}.topbar-actions{justify-content:flex-end;justify-self:end}.studio-workbench{align-items:start}.chat-panel{height:clamp(34rem,calc(100dvh - 10rem),60rem)}.wallet-grid{grid-template-columns:minmax(18rem,.35fr) minmax(0,.65fr)}.admin-grid{grid-template-columns:minmax(19rem,.34fr) minmax(0,.66fr);align-items:start}.admin-grid>.table-panel:first-child{grid-column:1 / -1}.landing-hero{grid-template-columns:minmax(0,.82fr) minmax(31rem,1.06fr)}.landing-visual{transform:translate(.75rem)}.landing-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.landing-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-feature-wide{grid-column:span 2;grid-template-columns:minmax(0,.9fr) minmax(20rem,.8fr);align-items:center}.landing-showcase{grid-template-columns:minmax(0,.78fr) minmax(28rem,.9fr)}.landing-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:end}.admin-form>label:has(.small-textarea){grid-column:1 / -1}.admin-form>.action-row{grid-column:1 / -1}}@media(max-width:39.99rem){.topbar h1{font-size:var(--text-xl)}.side-brand>div>span{display:none}.run-row{grid-template-columns:minmax(0,1fr);gap:0}.run-select{min-height:auto;padding-block-end:var(--space-sm)}.run-row-actions{justify-content:space-between;padding-block-start:0;padding-inline-start:var(--space-md)}.table-wrap{overflow:visible}table,thead,tbody,tr,th,td{display:block;min-width:0}thead{display:none}tr{border-bottom:1px solid var(--color-rule);padding:var(--space-sm)}td{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:var(--space-sm);border-bottom:0;padding:var(--space-xs) 0}td:before{content:attr(data-label);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.table-actions{align-items:flex-start}.landing-nav{flex-wrap:wrap;justify-content:space-between;top:var(--space-xs);width:min(1220px,calc(100% - 1rem));border-radius:var(--radius-md);padding-block:var(--space-sm)}.landing-nav>.btn{min-height:40px;padding-inline:var(--space-sm)}.landing-links{order:3;width:100%;gap:var(--space-xs);overflow-x:auto;padding-block-end:var(--space-xs)}.landing-copy h1{max-width:100%;font-size:clamp(3rem,15vw,4.35rem)}.landing-hero{padding-block-start:clamp(3.5rem,18vw,5rem)}.landing-feature,.landing-strip div,.landing-showcase-grid div{padding:var(--space-md)}.landing-showcase{padding-inline:clamp(1rem,6vw,1.5rem)}.landing-footer{display:grid}.table-wrap{overflow-x:auto}table{display:table;min-width:46rem}thead{display:table-header-group}tbody{display:table-row-group}tr{display:table-row;border-bottom:0;padding:0}th,td{display:table-cell;border-bottom:1px solid var(--color-rule);padding:var(--space-sm) var(--space-md)}td:before{content:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.15s!important;animation-iteration-count:1!important;transition-duration:.15s!important}}
