:root{--porcelain: #f6f7f8;--paper: #ffffff;--raise: #fbfcfc;--ink: #141d26;--muted: #586573;--faint: #8a97a3;--line: #e2e6ea;--line-soft: #eef1f4;--accent: #0d6e69;--accent-ink: #0a534f;--accent-wash: #e6f1f0;--ai: #4b57bf;--ai-ink: #3a44a0;--ai-soft: #edeef9;--ai-line: #c9cdf0;--ok: #1c8a54;--warn: #a9741d;--danger: #bd3a2c;--info: #2b6cb0;--font-display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--font-ui: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, monospace;--radius: 10px;--radius-sm: 7px;--shadow: 0 1px 2px rgba(20, 29, 38, .06), 0 4px 16px rgba(20, 29, 38, .05);--shadow-pop: 0 6px 28px rgba(20, 29, 38, .16);color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--porcelain: #0c1116;--paper: #141c24;--raise: #18212a;--ink: #e6ecf2;--muted: #93a2b0;--faint: #6b7885;--line: #243039;--line-soft: #1c262f;--accent: #2bb7ac;--accent-ink: #7fd9de;--accent-wash: #0e2e2c;--ai: #8b93ee;--ai-ink: #aab0f2;--ai-soft: #181d33;--ai-line: #2b3358;--ok: #43c184;--warn: #d3a247;--danger: #e0776b;--info: #6ca8e8;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 16px rgba(0, 0, 0, .35);--shadow-pop: 0 8px 30px rgba(0, 0, 0, .55)}}:root[data-theme=light]{--porcelain: #f6f7f8;--paper: #fff;--raise: #fbfcfc;--ink: #141d26;--muted: #586573;--faint: #8a97a3;--line: #e2e6ea;--line-soft: #eef1f4;--accent: #0d6e69;--accent-ink: #0a534f;--accent-wash: #e6f1f0;--ai: #4b57bf;--ai-ink: #3a44a0;--ai-soft: #edeef9;--ai-line: #c9cdf0;--ok: #1c8a54;--warn: #a9741d;--danger: #bd3a2c;--info: #2b6cb0}:root[data-theme=dark]{--porcelain: #0c1116;--paper: #141c24;--raise: #18212a;--ink: #e6ecf2;--muted: #93a2b0;--faint: #6b7885;--line: #243039;--line-soft: #1c262f;--accent: #2bb7ac;--accent-ink: #7fd9de;--accent-wash: #0e2e2c;--ai: #8b93ee;--ai-ink: #aab0f2;--ai-soft: #181d33;--ai-line: #2b3358;--ok: #43c184;--warn: #d3a247;--danger: #e0776b;--info: #6ca8e8}*{box-sizing:border-box}html,body{margin:0}body{background:var(--porcelain);color:var(--ink);font-family:var(--font-ui);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:.1px}.mono,.num,.ref{font-family:var(--font-mono);font-variant-numeric:tabular-nums}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding:0 22px;height:56px;background:var(--paper);border-bottom:1px solid var(--line)}.topbar .brand{font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:.3px}.topbar .brand .dot{color:var(--accent)}.topbar .spacer{flex:1}.persona-tag{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 11px;background:var(--raise)}.topbar .who{font-size:13px;color:var(--muted)}.topbar .who strong{color:var(--ink);font-weight:600}.body{display:flex;align-items:stretch;flex:1}.sidenav{width:216px;padding:18px 14px;border-right:1px solid var(--line);background:var(--paper)}.sidenav .group-label{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--faint);padding:6px 10px;margin-top:8px}.sidenav a{display:flex;align-items:center;gap:9px;padding:8px 11px;border-radius:var(--radius-sm);color:var(--ink);font-size:14px;margin:2px 0}.sidenav a:hover{background:var(--line-soft);text-decoration:none}.sidenav a.active{background:var(--accent-wash);color:var(--accent-ink);font-weight:600}.content{flex:1;min-width:0}[data-skin=counterparty] .content{padding:34px 40px;max-width:960px}[data-skin=internal] .content{padding:22px 26px}.btn{font-family:var(--font-ui);font-size:14px;font-weight:600;border-radius:var(--radius-sm);padding:9px 16px;cursor:pointer;border:1px solid var(--line);background:var(--paper);color:var(--ink);transition:background .12s ease,border-color .12s ease}.btn:hover{border-color:var(--faint)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.ghost{background:transparent;border-color:transparent;color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-row{display:flex;gap:10px;align-items:center}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}.page-title{display:flex;align-items:center;gap:12px;margin:0 0 4px}h1{font-size:24px;margin:0 0 6px}[data-skin=internal] h1{font-size:20px}h2{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:26px 0 12px;font-family:var(--font-ui);font-weight:700}.subtitle{color:var(--muted);margin:0 0 18px}.grid{width:100%;border-collapse:collapse;font-size:14px}.grid th,.grid td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line-soft)}[data-skin=internal] .grid th,[data-skin=internal] .grid td{padding:9px 12px}.grid thead th{background:var(--raise);font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--line)}.grid tbody tr:hover{background:var(--line-soft)}.grid .num{text-align:right}.grid.in-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper)}.row-link{cursor:pointer}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.pill:before{content:"●";font-size:8px}.pill.draft{color:var(--faint);background:var(--line-soft)}.pill.submitted{color:var(--info);background:color-mix(in srgb,var(--info) 12%,transparent)}.pill.in_review{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent)}.pill.approved{color:var(--accent-ink);background:var(--accent-wash)}.pill.issued{color:#fff;background:var(--accent);border-color:var(--accent)}.pill.rejected{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}.pill.cancelled{color:var(--faint);background:var(--line-soft)}.dl{display:grid;grid-template-columns:180px 1fr;gap:10px 20px;margin:0}.dl dt{color:var(--muted);font-size:13px}.dl dd{margin:0}[data-skin=internal] .dl{grid-template-columns:150px 1fr;gap:7px 16px}.muted{color:var(--muted)}.faint{color:var(--faint)}.error{color:var(--danger)}.empty{color:var(--muted);padding:18px 0}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:13px;font-weight:600;color:var(--ink)}.field .hint{font-size:12px;color:var(--faint)}.field .err{font-size:12px;color:var(--danger)}.input,.select,.textarea{font-family:var(--font-ui);font-size:14px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 11px;width:100%}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.input.mono{font-family:var(--font-mono)}.textarea{min-height:92px;resize:vertical}.field-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stepper{display:flex;gap:8px;margin-bottom:28px;flex-wrap:wrap}.step{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper)}.step .n{width:20px;height:20px;border-radius:999px;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--line-soft);color:var(--muted)}.step.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-wash)}.step.active .n{background:var(--accent);color:#fff}.step.done .n{background:var(--ok);color:#fff}.ask-chip{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--ai-ink);background:var(--ai-soft);border:1px solid var(--ai-line);border-radius:999px;padding:3px 10px;cursor:pointer;line-height:1.2}.ask-chip:hover{background:color-mix(in srgb,var(--ai) 16%,transparent)}.ask-chip .spark{color:var(--ai)}.derived{border:none;background:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-decoration:underline dotted var(--ai);text-underline-offset:3px}.gadget-anchor{position:relative;display:inline-block}.gadget{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:320px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--ai);border-radius:var(--radius);box-shadow:var(--shadow-pop);padding:14px 16px;animation:gadget-in .12s ease}.gadget.right{left:auto;right:0}@keyframes gadget-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.gadget,.btn,.input,.select,.textarea{animation:none!important;transition:none!important}}.gadget .g-head{display:flex;align-items:center;gap:7px;margin-bottom:8px}.gadget .g-head .spark{color:var(--ai)}.gadget .g-title{font-size:13px;font-weight:700;color:var(--ai-ink)}.gadget .g-body{font-size:13px;color:var(--ink)}.gadget .suggest{display:flex;flex-direction:column;gap:6px;margin:10px 0}.gadget .suggest button{text-align:left;font-size:13px;color:var(--ai-ink);background:var(--ai-soft);border:1px solid var(--ai-line);border-radius:var(--radius-sm);padding:7px 9px;cursor:pointer}.gadget .ask-box{display:flex;gap:6px;margin-top:8px}.gadget .ask-box input{flex:1;font-family:var(--font-ui);font-size:13px;padding:7px 9px;border:1px solid var(--ai-line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink)}.gadget .sources{margin-top:10px;font-size:12px;color:var(--muted)}.gadget .sources li{margin:2px 0}.confidence{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12px;color:var(--muted)}.confidence .bar{flex:1;height:5px;border-radius:999px;background:var(--ai-soft);overflow:hidden}.confidence .bar>span{display:block;height:100%;background:var(--ai)}.advisory{margin-top:10px;font-size:11px;color:var(--faint);border-top:1px dashed var(--line);padding-top:8px}.check-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line-soft);font-size:13px}.check-row:last-child{border-bottom:none}.check-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px}.check-badge.pass{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent)}.check-badge.fail{color:var(--danger);background:color-mix(in srgb,var(--danger) 13%,transparent)}.check-badge.review{color:var(--warn);background:color-mix(in srgb,var(--warn) 15%,transparent)}.check-code{font-family:var(--font-mono);color:var(--muted)}.timeline{list-style:none;margin:0;padding:0}.timeline li{position:relative;padding:0 0 16px 20px;border-left:2px solid var(--line)}.timeline li:before{content:"";position:absolute;left:-6px;top:3px;width:10px;height:10px;border-radius:999px;background:var(--accent);border:2px solid var(--paper)}.timeline li:last-child{border-left-color:transparent}.timeline .t-when{font-size:12px;color:var(--faint);font-family:var(--font-mono)}.timeline .t-what{font-size:13px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:400px}.login-card .brand-row{font-family:var(--font-display);font-size:26px;font-weight:600;margin-bottom:4px}.login-card .brand-row .dot{color:var(--accent)}.persona-pick{display:flex;flex-direction:column;gap:10px;margin:18px 0}.persona-btn{text-align:left;padding:13px 15px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);cursor:pointer;display:flex;gap:12px;align-items:center}.persona-btn:hover{border-color:var(--accent)}.persona-btn.sel{border-color:var(--accent);background:var(--accent-wash)}.persona-btn .role{font-weight:600}.persona-btn .em{font-size:12px;color:var(--muted);font-family:var(--font-mono)}.spinner{color:var(--muted)}.banner{border-radius:var(--radius-sm);padding:10px 13px;font-size:13px;margin:14px 0}.banner.err{background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent)}.banner.ok{background:color-mix(in srgb,var(--ok) 10%,transparent);color:var(--ok);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent)}.banner.subtle{background:var(--raise);color:var(--muted);border:1px solid var(--line)}.theme-toggle{background:none;border:1px solid var(--line);color:var(--muted);border-radius:var(--radius-sm);padding:5px 9px;cursor:pointer;font-size:13px}.wizard-step{animation:step-in .16s ease}@keyframes step-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.wizard-step{animation:none}}.stepper .step{border:none;background:transparent;cursor:default;font-family:var(--font-ui)}.stepper .step.done{cursor:pointer}.wizard-actions{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding-top:18px;border-top:1px solid var(--line-soft)}.total-hint{font-size:15px;font-weight:600;color:var(--ink);margin-right:6px}.skeleton-input{height:38px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--line-soft) 25%,var(--line) 37%,var(--line-soft) 63%);background-size:400% 100%;animation:shimmer 1.3s ease infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion: reduce){.skeleton-input{animation:none}}.combo{position:relative}.combo-list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;list-style:none;margin:0;padding:4px;max-height:240px;overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop)}.combo-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:14px}.combo-option.active{background:var(--accent-wash);color:var(--accent-ink)}.combo-option .combo-name{font-weight:500}.combo-empty{padding:10px;color:var(--muted);font-size:13px}.combo-selected{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--raise)}.combo-selected .combo-name{font-weight:600}.combo-clear{margin-left:auto;background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:13px;padding:2px 4px}.combo-clear:hover{text-decoration:underline}.chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;line-height:1.5}.demo-chip{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent)}.ai-chip{color:var(--ai-ink);background:var(--ai-soft);border:1px solid var(--ai-line)}.ai-chip.high{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border-color:transparent}.ai-chip.low{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);border-color:transparent}.btn.ai{background:var(--ai);border-color:var(--ai);color:#fff}.btn.ai:hover{background:var(--ai-ink);border-color:var(--ai-ink)}.btn.ai:disabled{opacity:.6}.lc-gadget{display:flex;align-items:center;gap:16px;margin:4px 0 22px;padding:16px 18px;border:1px solid var(--ai-line);border-left:3px solid var(--ai);border-radius:var(--radius);background:var(--ai-soft)}.lc-gadget .lc-icon{font-size:22px;color:var(--ai)}.lc-gadget .lc-body{flex:1;min-width:0}.lc-gadget .lc-title{font-weight:700;color:var(--ai-ink)}.lc-gadget .lc-sub{font-size:13px;color:var(--muted);margin-top:2px}
