:root{--bg:#f6f5f2;--ink:#161616;--muted:#62615d;--line:#d9d6ce;--panel:#fff;--panel-soft:#f1eee7;--field:#fffdf8;--accent:#23645d;--accent-dark:#174640;--accent-soft:#dcebe8;--danger:#9f2f2f;--warning:#8a5a00;--ok:#1f6d43;--blue:#2b4c7e;--focus:#d48735}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.page-shell{min-height:100vh}.top-band{border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f4f1ea)}.top-band__content{width:min(1180px,calc(100vw - 32px));margin:0 auto;padding:28px 0 18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);grid-gap:24px;gap:24px;align-items:end}.eyebrow{margin:0 0 7px;color:var(--accent);font-size:.78rem;font-weight:800;text-transform:uppercase}.eyebrow,h1{letter-spacing:0}h1{margin:0;font-size:clamp(2rem,4vw,4.2rem);line-height:.98}.subtitle{margin:14px 0 0;color:var(--muted);font-size:1.08rem}.boundary-notice{border:1px solid var(--line);background:#fffaf0;padding:14px 16px;border-radius:8px;color:#4d3920;line-height:1.45;font-size:.95rem}.workspace{width:min(1180px,calc(100vw - 32px));margin:0 auto;padding:22px 0 42px;display:grid;grid-template-columns:minmax(320px,440px) minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.error-panel,.input-panel,.output-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px}.input-panel{position:-webkit-sticky;position:sticky;top:14px;padding:16px}.field-stack{display:grid;grid-gap:14px;gap:14px}.intake-box{border:1px solid #d9e3df;background:#f4faf8;border-radius:8px;padding:13px;margin-bottom:16px;display:grid;grid-gap:12px;gap:12px}.intake-box__header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:start}.intake-box h2{margin:0 0 5px;font-size:1rem}.intake-status{border:1px solid #cbd9d6;background:#fff;border-radius:6px;padding:10px;display:grid;grid-gap:5px;gap:5px;color:#183f3a;font-size:.9rem;line-height:1.35}.intake-receipt h3{margin:0;font-size:.98rem}.receipt-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);grid-gap:6px 10px;gap:6px 10px;border:1px solid #e7e2d8;background:#faf8f2;border-radius:6px;padding:10px}.receipt-field strong,.receipt-grid span{color:var(--muted);font-size:.76rem;font-weight:760;text-transform:uppercase}.receipt-grid strong{overflow-wrap:anywhere}.receipt-field{display:grid;grid-gap:5px;gap:5px}.receipt-field pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #e7e2d8;background:#faf8f2;border-radius:6px;padding:9px;font-family:inherit;font-size:.86rem;line-height:1.35}.model-policy-copy{margin:0;color:var(--ink);line-height:1.35}.m-field{display:grid;grid-gap:7px;gap:7px}.m-field label{font-weight:760}.helper{color:var(--muted);font-size:.88rem;line-height:1.35}.m-field textarea{width:100%;min-height:132px;resize:vertical;border:1px solid var(--line);background:var(--field);color:var(--ink);border-radius:6px;padding:11px 12px;line-height:1.42}.m-field textarea:focus{outline:2px solid var(--focus);outline-offset:1px}.actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:9px;gap:9px;margin-top:16px}.control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.check-field,.control-field{border:1px solid #e7e2d8;background:#faf8f2;border-radius:6px;padding:10px}.control-field{display:grid;grid-gap:6px;gap:6px}.control-field--wide{grid-column:1/-1}.check-field span,.control-field span{color:var(--muted);font-size:.76rem;font-weight:760;text-transform:uppercase}.control-field input,.control-field select{width:100%;border:1px solid var(--line);background:var(--field);color:var(--ink);border-radius:6px;padding:8px 9px}.check-field{display:flex;align-items:center;gap:9px}.check-field input{width:18px;height:18px}.example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:10px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--line);border-radius:6px;background:var(--panel-soft);color:var(--ink);padding:9px 12px;font-weight:720;line-height:1.2;text-align:center;text-decoration:none}.btn:hover{border-color:#b8b2a5;background:#ebe6dc}.btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn--copy{background:#eaf0f7;border-color:#c8d7e8;color:var(--blue)}.copy-control{display:grid;grid-gap:8px;gap:8px;justify-items:end}.copy-fallback{width:min(360px,70vw);min-height:88px;border:1px solid #c8d7e8;background:#f7fbff;color:var(--blue);border-radius:6px;padding:8px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem}.output-panel{padding:0;overflow:hidden}.output-empty{padding:20px;color:var(--muted);line-height:1.5}.output-header{padding:15px 18px;border-bottom:1px solid var(--line);background:#fbfaf7;display:flex;align-items:center;justify-content:space-between;gap:12px}.output-header h2{margin:0;font-size:1.05rem}.panel-list{display:grid}.route-panel{padding:17px 18px;border-bottom:1px solid var(--line)}.route-panel:last-child{border-bottom:0}.route-panel h3{margin:0 0 10px;font-size:1rem}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.kv{background:#faf8f2;border:1px solid #e7e2d8;border-radius:6px;padding:10px}.kv__label{display:block;color:var(--muted);font-size:.76rem;font-weight:760;text-transform:uppercase}.kv__value{display:block;margin-top:5px;overflow-wrap:anywhere}.stack{display:grid;grid-gap:9px;gap:9px}.pill-row{display:flex;flex-wrap:wrap;gap:7px}.pill{border:1px solid #cbd9d6;background:var(--accent-soft);color:#183f3a;padding:5px 8px;border-radius:999px;font-size:.82rem;line-height:1.2}.pill--warn{border-color:#ead6a4;background:#fff3d1;color:var(--warning)}.pill--danger{border-color:#e9bcbc;background:#fff0f0;color:var(--danger)}.list{margin:0;padding-left:19px;color:#2f2f2f}.list li+li{margin-top:6px}.inline-pre,.json-trace{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.json-trace{max-height:420px;overflow:auto;background:#1f2523;color:#f7fbf8;padding:12px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.86rem;line-height:1.45}.projected-b{margin:0 0 12px;font-size:1.05rem;font-weight:720}.value-table{display:grid;grid-gap:6px;gap:6px;margin-top:10px}.value-row{display:flex;justify-content:space-between;gap:14px;border:1px solid #e7e2d8;background:#faf8f2;border-radius:6px;padding:9px 10px}.decomp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.decomp-box{background:#faf8f2;border:1px solid #e7e2d8;border-radius:6px;padding:10px}.decomp-box h4{margin:0 0 6px;font-size:.92rem}.muted{color:var(--muted)}.route-locks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.route-lock{border:1px solid #cbd9d6;background:#f0f8f5;color:var(--ok);border-radius:6px;padding:9px 10px;font-weight:720}.route-lock--failed{border-color:#e9bcbc;background:#fff0f0;color:var(--danger)}.error-panel{padding:18px;border-color:#e8b8b8;background:#fff7f7}.error-panel h2{margin:0 0 8px;color:var(--danger);font-size:1.05rem}.error-panel details{margin-top:12px}.error-panel pre{overflow:auto;background:#2b1d1d;color:#fff7f7;padding:12px;border-radius:6px}@media (max-width:900px){.top-band__content,.workspace{grid-template-columns:1fr}.input-panel{position:static}}@media (max-width:620px){.top-band__content,.workspace{width:min(100vw - 20px,1180px)}.actions,.control-grid,.decomp-grid,.example-grid,.intake-box__header,.kv-grid,.route-locks{grid-template-columns:1fr}h1{font-size:2.1rem}}