:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#e9e5d6;background:#101e1e;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}main{min-height:100vh;width:100%;padding:36px 4vw}button,input,textarea{font:inherit}button{border:1px solid #61736b;background:#263a35;color:#ece9dc;padding:11px 15px;border-radius:5px;cursor:pointer;transition:background .15s,transform .15s}button:hover{background:#3b5147;transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #e9b665;outline-offset:3px}.eyebrow{font-size:11px;letter-spacing:.19em;color:#c5a373}.heading{display:flex;justify-content:space-between;gap:25px;align-items:end}h1{font:clamp(38px,5.5vw,76px)/1.05 Georgia,serif;letter-spacing:-.04em;margin:18px 0 32px}h1 em{color:#d2b381;font-weight:400}p{line-height:1.65;color:#afbdb4}h2{font:26px Georgia,serif;margin:16px 0}.heading>div{padding-bottom:30px}.metrics{display:grid;grid-template-columns:repeat(3,1fr) 1.3fr;gap:20px;padding:20px 0;border-top:1px solid #42534a;border-bottom:1px solid #42534a}.metrics b{display:block;font:30px Georgia,serif;color:#e0b777}.metrics span{font-size:12px;color:#b0beb5}.notice{border-left:1px solid #42534a;padding-left:20px;line-height:1.6}.studio{display:grid;grid-template-columns:1fr 300px;gap:32px;margin-top:26px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}figure{margin:0;background:#162525;border:1px solid #3b4d42;border-radius:10px;overflow:hidden}figcaption{padding:18px;font-size:10px;letter-spacing:.13em;display:flex;justify-content:space-between;gap:10px;color:#bbad8a}figure svg{width:100%;height:auto;display:block;max-height:65vh}.legend{font-size:12px}.component-list{display:flex;flex-wrap:wrap;gap:8px}.component-list span{font-size:11px;border:1px solid #43594e;border-radius:20px;padding:8px 12px}.ledger{display:grid;gap:6px;max-height:430px;overflow:auto}.ledger button{text-align:left;display:flex;align-items:center;justify-content:space-between;font-size:11px}.ledger small{display:block;max-width:180px;overflow-wrap:anywhere;color:#b4c2b7;margin-top:5px}.ledger .cut{background:#553d32;border-color:#b88061}.actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.status{border-left:2px solid #d5ad6c;padding-left:14px;font-size:12px;min-height:3em}.authoring{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #42534a;margin-top:40px;padding-top:35px}textarea{display:block;width:100%;height:400px;resize:vertical;background:#0c1818;color:#cfdfce;border:1px solid #4b6256;border-radius:6px;margin-top:10px;padding:16px;font:12px/1.5 ui-monospace,monospace}label{font-size:12px;color:#b9c6b8}input{width:90px;background:#263a35;color:#fff;border:1px solid #61736b;padding:7px;margin-left:6px}.vertex{display:flex;gap:14px;align-items:center;margin:10px 0}.vertex b{min-width:35px}summary{cursor:pointer;padding:12px 0;color:#d1b88b}footer{border-top:1px solid #42534a;padding-top:20px;margin-top:35px;font-size:12px}small{font:11px system-ui;color:#aaa}@media(max-width:1000px){.studio{grid-template-columns:1fr}.ledger{grid-template-columns:1fr 1fr}.authoring{grid-template-columns:1fr}.heading{align-items:start}.metrics{grid-template-columns:1fr 1fr}}@media(max-width:650px){main{padding:25px 18px}.heading{display:block}.pair,.ledger{grid-template-columns:1fr}.metrics{gap:14px}h1{margin-bottom:15px}.heading>div{padding-bottom:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}@media print{main{padding:0}.authoring,aside,footer,header button{display:none}.studio{display:block}.pair{display:grid;grid-template-columns:1fr 1fr}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.focus{padding:12px 2vw}.focus header .eyebrow,.focus h1,.focus .heading p,.focus .metrics,.focus .authoring,.focus footer{display:none}.focus .heading{justify-content:flex-end}.focus .heading>div{padding:0}.focus .studio{margin-top:0}.focus figure svg{height:calc(100vh - 220px);max-height:none}.focus .maps h2{font-size:18px}.focus .legend{font-size:10px;margin:8px 0}
