:root{--color-paper: oklch(100% 0 0);--color-canvas: oklch(96.5% .003 250);--color-chrome: oklch(35% .035 255);--color-chrome-2: oklch(30% .035 255);--color-rail: oklch(98% .002 250);--color-ink: oklch(25% .015 255);--color-ink-2: oklch(45% .012 255);--color-ink-3: oklch(60% .01 255);--color-ink-inverse: oklch(100% 0 0);--color-accent: oklch(52% .16 255);--color-accent-hover: oklch(46% .16 255);--color-accent-active: oklch(41% .15 255);--color-accent-soft: oklch(94% .03 255);--color-success: oklch(52% .13 150);--color-success-soft: oklch(95% .04 150);--color-warn: oklch(62% .14 75);--color-warn-soft: oklch(95% .05 85);--color-error: oklch(51% .19 25);--color-error-soft: oklch(95% .03 25);--color-neutral-soft: oklch(93% .004 250);--color-line: oklch(89% .005 255);--color-line-2: oklch(82% .008 255);--color-row-hover: oklch(97% .008 255);--color-row-select: oklch(93% .03 255);--font-body: "72", "Segoe UI", -apple-system, "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", Consolas, ui-monospace, monospace;--text-xs: .6875rem;--text-sm: .75rem;--text-base: .8125rem;--text-md: .875rem;--text-lg: 1rem;--text-xl: 1.25rem;--text-2xl: 1.625rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-pill: 999px;--rule: 1px solid var(--color-line);--shadow-card: 0 1px 2px oklch(25% .015 255 / .1), 0 4px 12px oklch(25% .015 255 / .06);--shadow-modal: 0 16px 48px oklch(25% .015 255 / .3);--dur-fast: .1s;--dur-base: .18s;--ease-out: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-ink);background:var(--color-canvas);-webkit-font-smoothing:antialiased}#root{display:grid;grid-template-rows:auto auto 1fr}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.mono{font-family:var(--font-mono);font-size:var(--text-sm)}.muted{color:var(--color-ink-3)}.num{font-variant-numeric:tabular-nums;text-align:right}.shell{display:flex;align-items:center;gap:var(--space-md);padding:0 var(--space-md);height:2.75rem;background:var(--color-chrome);color:var(--color-ink-inverse)}.shell__logo{display:inline-flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.08em;background:var(--color-accent);border-radius:var(--radius-sm);padding:.15rem .45rem;font-size:var(--text-sm)}.shell__title{font-size:var(--text-md);font-weight:600}.shell__sub{font-size:var(--text-xs);opacity:.7}.shell__spacer{margin-left:auto}.shell__client{font-family:var(--font-mono);font-size:var(--text-xs);opacity:.8}.shell__avatar{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:var(--radius-pill);background:#ffffff29;font-size:var(--text-xs);font-weight:600}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:1px;background:var(--color-line);border-bottom:var(--rule)}.kpi{background:var(--color-paper);padding:var(--space-xs) var(--space-md)}.kpi__label{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-3)}.kpi__value{font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums}.kpi__value--error{color:var(--color-error)}.kpi__value--warn{color:var(--color-warn)}.layout{display:grid;grid-template-columns:13.5rem 1fr;min-height:0}.rail{background:var(--color-rail);border-right:var(--rule);padding:var(--space-sm) 0;display:flex;flex-direction:column;gap:1px}.rail__group{padding:var(--space-sm) var(--space-md) var(--space-2xs);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--color-ink-3)}.rail__item{display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:.45rem var(--space-md);background:none;border:0;border-left:3px solid transparent;text-align:left;cursor:pointer;color:var(--color-ink-2)}.rail__item:hover{background:var(--color-row-hover);color:var(--color-ink)}.rail__item.is-active{background:var(--color-accent-soft);border-left-color:var(--color-accent);color:var(--color-accent-active);font-weight:600}.rail__count{margin-left:auto;font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--color-ink-3)}.rail__foot{margin-top:auto;padding:var(--space-md);font-size:var(--text-xs);color:var(--color-ink-3);border-top:var(--rule);display:grid;gap:var(--space-2xs)}.main{display:grid;grid-template-rows:auto 1fr auto;min-width:0;min-height:0}.bar{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap;padding:var(--space-xs) var(--space-md);background:var(--color-paper);border-bottom:var(--rule)}.bar__title{margin:0;font-size:var(--text-lg);font-weight:600}.bar__code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-3);border:var(--rule);border-radius:var(--radius-sm);padding:.05rem .3rem}.bar__spacer{margin-left:auto}.btn{display:inline-flex;align-items:center;gap:var(--space-2xs);padding:.3rem .7rem;background:var(--color-paper);border:1px solid var(--color-line-2);border-radius:var(--radius-sm);color:var(--color-accent);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);white-space:nowrap}.btn:hover{background:var(--color-accent-soft)}.btn:disabled{color:var(--color-ink-3);background:var(--color-neutral-soft);cursor:not-allowed}.btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-ink-inverse)}.btn--primary:hover{background:var(--color-accent-hover)}.btn--danger{color:var(--color-error)}.btn--danger:hover{background:var(--color-error-soft)}.btn--ghost{border-color:transparent;background:none}.btn--sm{padding:.15rem .45rem;font-size:var(--text-sm)}.field{display:grid;gap:.15rem}.field__label{font-size:var(--text-xs);color:var(--color-ink-2)}.input,.select{padding:.3rem .45rem;background:var(--color-paper);border:1px solid var(--color-line-2);border-bottom-color:var(--color-ink-3);border-radius:var(--radius-sm);min-width:0}.input:focus,.select:focus{border-color:var(--color-accent)}.search{min-width:14rem}.pane{overflow:auto;background:var(--color-paper)}.grid{width:100%;border-collapse:collapse;font-size:var(--text-base)}.grid th{position:sticky;top:0;z-index:1;background:var(--color-canvas);border-bottom:1px solid var(--color-line-2);padding:.4rem var(--space-xs);text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-2);white-space:nowrap}.grid th.num,.grid td.num{text-align:right}.grid td{padding:.4rem var(--space-xs);border-bottom:var(--rule);vertical-align:middle}.grid tbody tr:hover{background:var(--color-row-hover)}.grid tbody tr.is-clickable{cursor:pointer}.grid tbody tr.is-rejected td{color:var(--color-ink-3);text-decoration:line-through}.grid__empty{padding:var(--space-xl);text-align:center;color:var(--color-ink-3)}.pill{display:inline-block;padding:.05rem .45rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;white-space:nowrap;border:1px solid transparent}.pill--info{background:var(--color-accent-soft);color:var(--color-accent-active);border-color:var(--color-accent)}.pill--success{background:var(--color-success-soft);color:var(--color-success);border-color:var(--color-success)}.pill--warn{background:var(--color-warn-soft);color:#774a00;color:oklch(45% .11 70);border-color:var(--color-warn)}.pill--error{background:var(--color-error-soft);color:var(--color-error);border-color:var(--color-error)}.pill--neutral{background:var(--color-neutral-soft);color:var(--color-ink-2);border-color:var(--color-line-2)}.meter{display:grid;gap:.15rem;min-width:9rem}.meter__track{height:.4rem;background:var(--color-neutral-soft);border-radius:var(--radius-pill);overflow:hidden}.meter__fill{height:100%;background:var(--color-success)}.meter__fill.is-warn{background:var(--color-warn)}.meter__fill.is-over{background:var(--color-error)}.meter__label{font-size:var(--text-xs);color:var(--color-ink-3);font-variant-numeric:tabular-nums}.statusbar{display:flex;align-items:center;gap:var(--space-md);padding:.3rem var(--space-md);border-top:var(--rule);background:var(--color-canvas);font-size:var(--text-xs);color:var(--color-ink-2)}.statusbar__dot{display:inline-block;width:.5rem;height:.5rem;margin-right:.35rem;border-radius:var(--radius-pill);background:var(--color-success)}.statusbar__dot.is-offline{background:var(--color-error)}.statusbar__spacer{margin-left:auto}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:var(--space-md);background:#1d222966}.modal{display:flex;flex-direction:column;width:min(60rem,100%);max-height:min(46rem,92vh);background:var(--color-paper);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);overflow:hidden}.modal--sm{width:min(28rem,100%)}.modal__head{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-bottom:var(--rule)}.modal__head h2{margin:0;font-size:var(--text-lg);font-weight:600}.modal__close{margin-left:auto;border:0;background:none;font-size:var(--text-xl);line-height:1;color:var(--color-ink-2);cursor:pointer}.modal__body{padding:var(--space-md);overflow:auto;display:grid;gap:var(--space-md)}.modal__foot{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap;padding:var(--space-sm) var(--space-md);border-top:var(--rule);background:var(--color-canvas)}.modal__foot-spacer{margin-left:auto}.section{display:grid;gap:var(--space-xs)}.section__title{margin:0;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--color-ink-3)}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--space-sm)}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--space-xs) var(--space-md)}.fact__label{display:block;font-size:var(--text-xs);color:var(--color-ink-3)}.fact__value{font-size:var(--text-base)}.totals{display:grid;gap:.1rem;justify-items:end;padding-top:var(--space-xs);border-top:1px solid var(--color-line-2)}.totals__row{display:grid;grid-template-columns:auto 9rem;gap:var(--space-md);font-variant-numeric:tabular-nums}.totals__row span:last-child{text-align:right}.totals__row--strong{font-size:var(--text-md);font-weight:600}.notice{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border-left:3px solid var(--color-line-2);background:var(--color-neutral-soft);font-size:var(--text-sm)}.notice--error{background:var(--color-error-soft);border-left-color:var(--color-error);color:var(--color-error)}.notice--warn{background:var(--color-warn-soft);border-left-color:var(--color-warn)}.notice--info{background:var(--color-accent-soft);border-left-color:var(--color-accent)}.flow{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.flow__node{display:grid;gap:.1rem;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-line-2);border-radius:var(--radius-sm);background:var(--color-paper);min-width:8.5rem}.flow__node.is-done{border-color:var(--color-success);background:var(--color-success-soft)}.flow__node.is-pending{border-style:dashed;color:var(--color-ink-3)}.flow__kind{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-3)}.flow__id{font-family:var(--font-mono);font-size:var(--text-sm)}.flow__arrow{color:var(--color-ink-3)}.timeline{display:grid;gap:var(--space-xs);margin:0;padding:0;list-style:none}.timeline__row{display:grid;grid-template-columns:8.5rem 7rem 1fr;gap:var(--space-xs);padding-bottom:var(--space-xs);border-bottom:var(--rule);font-size:var(--text-sm)}.timeline__at{color:var(--color-ink-3);font-variant-numeric:tabular-nums}.timeline__code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-accent-active)}.tabs{display:flex;gap:var(--space-xs);border-bottom:var(--rule);padding:0 var(--space-md)}.tabs__item{padding:var(--space-xs) var(--space-xs);background:none;border:0;border-bottom:2px solid transparent;color:var(--color-ink-2);cursor:pointer}.tabs__item.is-active{border-bottom-color:var(--color-accent);color:var(--color-ink);font-weight:600}.toast{position:fixed;right:var(--space-md);bottom:var(--space-md);z-index:40;max-width:24rem;padding:var(--space-xs) var(--space-sm);background:var(--color-chrome-2);color:var(--color-ink-inverse);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);font-size:var(--text-sm);animation:rise var(--dur-base) var(--ease-out)}.toast--error{background:var(--color-error)}@keyframes rise{0%{opacity:0;transform:translateY(.5rem)}}.itemrows{display:grid;gap:var(--space-xs)}.itemrow{display:grid;grid-template-columns:1fr 5.5rem 6.5rem 7.5rem 2rem;gap:var(--space-xs);align-items:end}.itemrow__hint{grid-column:1 / -1;font-size:var(--text-xs);color:var(--color-ink-3)}@media(max-width:60rem){.layout{grid-template-columns:1fr}.rail{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:var(--rule)}.rail__group,.rail__foot{display:none}.rail__item{border-left:0;border-bottom:3px solid transparent;white-space:nowrap}.rail__item.is-active{border-bottom-color:var(--color-accent)}.itemrow{grid-template-columns:1fr 1fr}}.shell__gear{border:0;background:#ffffff1f;color:var(--color-ink-inverse);border-radius:var(--radius-sm);padding:.1rem .4rem;font-size:var(--text-md);line-height:1.4;cursor:pointer}.shell__gear:hover{background:#ffffff3d}.ok{color:var(--color-success)}.fail{color:var(--color-error)}.inbox{display:grid;gap:var(--space-lg);padding:var(--space-md)}.approval{display:grid;gap:var(--space-xs);padding:var(--space-sm);border:1px solid var(--color-warn);border-left-width:3px;border-radius:var(--radius-sm);background:var(--color-warn-soft)}.approval__head{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.approval__amount{margin-left:auto;font-size:var(--text-lg);font-weight:600;font-variant-numeric:tabular-nums}.approval__question{margin:0;font-size:var(--text-md)}.approval__actions{display:flex;gap:var(--space-xs);flex-wrap:wrap}.approval__actions .input{flex:1 1 16rem}.approval__sync{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap;margin-bottom:var(--space-xs);font-size:var(--text-sm)}.endpoints{margin:0;padding-left:1.1rem;display:grid;gap:var(--space-2xs);font-size:var(--text-sm);color:var(--color-ink-2)}
