:root{--plum: #542d54;--plum-deep: #3a1e3a;--plum-ink: #2b162b;--plum-soft: #6f4a70;--lime: #d7df23;--lime-ink: #8a9012;--lime-soft: #f4f6c9;--cream: #f7f3ee;--paper: #ffffff;--ink: #2a1f2a;--mute: #8a7a8e;--line: #e6dde4;--line-strong: #d3c6d2;--ok: #4f9d5c;--warn: #d69a2a;--bad: #c2534f;--r: 12px;--r-lg: 18px;--font: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%}body{font-family:var(--font);color:var(--ink);background:var(--cream);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}button{font-family:inherit}a{color:inherit}.brand{display:inline-flex;align-items:baseline;gap:6px;text-decoration:none}.brand .g{color:var(--lime);font-weight:800;letter-spacing:-.02em;font-size:15px}.brand .r{color:#fff;font-weight:700;font-size:15px}.brand .tag{font-size:9px;letter-spacing:.12em;background:var(--lime);color:var(--plum-deep);border-radius:999px;padding:2px 7px;font-weight:800}.msg{max-width:72ch}.msg.u{margin:18px 0 6px auto;background:var(--lime);color:var(--plum-deep);font-weight:600;padding:10px 14px;border-radius:14px 14px 4px;width:fit-content;max-width:78%}.msg.u.act{background:transparent;padding:0}.actchip{display:inline-block;background:var(--plum);color:#fff;font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px}.msg.a{margin:8px 0 10px;background:var(--paper);border:1px solid var(--line);border-radius:4px 16px 16px;padding:16px 20px;box-shadow:0 1px 2px #2a1f2a0a}.msg.a .lead{font-size:15px;font-weight:600;margin:0 0 8px}.msg.a h4{margin:14px 0 4px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--plum)}.msg.a p{margin:6px 0}.msg.a ul{margin:6px 0 8px 18px;padding:0}.msg.a li{margin:3px 0}.msg.a .glance{font-weight:600;font-size:13px;background:var(--lime-soft);border-radius:8px;padding:6px 10px;margin:6px 0 10px}.msg.a code{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:#f1ecf0;padding:1px 5px;border-radius:4px}.msg.a hr{border:0;border-top:1px solid var(--line);margin:12px 0}.msg.err{color:var(--bad)}.modechip{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--lime);color:var(--plum-deep);margin-bottom:8px}.modechip.lookup{background:#eee6ed;color:var(--plum)}.mdtwrap{overflow-x:auto;margin:10px 0 12px;border:1px solid var(--line);border-radius:10px}table.mdt{border-collapse:collapse;width:100%;font-size:12.5px}table.mdt th{text-align:left;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--plum);background:#faf6f9;padding:9px 12px;border-bottom:1px solid var(--line);white-space:nowrap}table.mdt td{padding:8px 12px;border-bottom:1px solid #f0e9ef;vertical-align:top}table.mdt tr:last-child td{border-bottom:0}@media (max-width: 720px){table.mdt thead{display:none}table.mdt tr{display:block;padding:6px 0;border-bottom:1px solid var(--line)}table.mdt td{display:flex;gap:10px;border:0;padding:3px 12px}table.mdt td:before{content:attr(data-label);min-width:84px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}}.work{display:flex;flex-direction:column;gap:7px;padding:4px 0 2px}.step{display:flex;align-items:center;gap:10px;font-size:12.5px;color:#6b5a6f;transition:opacity .35s ease}.step .ic{flex:0 0 auto;width:14px;height:14px;border-radius:50%;border:1.5px solid #cfc2d0;position:relative}.step.run .ic{border-color:var(--lime-ink);border-top-color:transparent;animation:spin .8s linear infinite}.step.run .lbl{color:var(--plum);font-weight:600}.step.ok{opacity:.55}.step.ok .ic{border-color:var(--lime);background:var(--lime)}.step.ok .ic:after{content:"";position:absolute;left:4px;top:1.5px;width:3px;height:6px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(42deg)}.step.run{animation:rise .25s ease both}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}details.worked>summary{cursor:pointer;list-style:none;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);padding:4px 0}details.worked>summary::-webkit-details-marker{display:none}details.worked>summary:before{content:"▸ ";color:var(--lime-ink)}details.worked[open]>summary:before{content:"▾ "}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{background:var(--paper);border:1px solid var(--line-strong);color:var(--plum);font-size:12px;font-weight:600;padding:7px 12px;border-radius:999px;cursor:pointer;transition:background .15s,color .15s}.chip:hover,.chip.primary{background:var(--plum);color:#fff;border-color:var(--plum)}.chip.primary:hover{background:var(--plum-deep)}.next{margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#faf7fb}.next .h{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--plum);margin-bottom:6px}.next .p{font-size:13px;color:#4b3a4f;margin-bottom:12px}.composer{display:flex;gap:8px;align-items:center;background:var(--paper);border:1px solid var(--line-strong);border-radius:999px;padding:6px 6px 6px 18px;box-shadow:0 6px 24px #2a1f2a14}.composer input{flex:1;border:0;outline:0;font:inherit;font-size:14px;background:transparent;color:var(--ink)}.composer button{background:var(--plum);color:#fff;border:0;border-radius:999px;padding:10px 18px;font-weight:700;cursor:pointer}.composer button.stop{background:var(--bad)}.composer button:disabled{opacity:.5;cursor:default}.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px}.stat .n{font-size:22px;font-weight:800;color:var(--plum);letter-spacing:-.02em;line-height:1.1}.stat .l{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-top:4px}.stat .s{font-size:12px;color:#5a4a5e;margin-top:4px}.kv{display:grid;grid-template-columns:92px 1fr;gap:4px 10px;font-size:12.5px}.kv .k{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);padding-top:3px}.kv .v{color:var(--ink)}.site{display:grid;grid-template-columns:82px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #f0e9ef;font-size:12.5px}.site:last-child{border-bottom:0}.site .id{font-weight:700;color:var(--plum);font-family:ui-monospace,Menlo,monospace;font-size:12px}.site .where{color:var(--ink)}.site .sub{color:var(--mute);font-size:11px}.site .right{text-align:right;font-size:11.5px;color:#5a4a5e}.pill{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:999px}.pill.digital{background:var(--lime);color:var(--plum-deep)}.pill.static{background:#eee6ed;color:var(--plum)}.pill.ok{background:#e3f2e6;color:#2f6b3a}.pill.warn{background:#fbefd9;color:#8a5a10}.demo-banner{position:fixed;left:50%;bottom:12px;transform:translate(-50%);z-index:50;background:#ffb703;color:#3a2a00;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:7px 14px;border-radius:999px;box-shadow:0 6px 20px #0000002e}.login{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#2a1f2a8c;display:none;align-items:center;justify-content:center}.login.on{display:flex}.login .card{background:var(--paper);border-radius:16px;padding:26px 26px 22px;width:min(380px,92vw);box-shadow:0 30px 60px #00000040}.login h2{margin:0 0 4px;color:var(--plum);font-size:20px}.login p{margin:0 0 16px;color:var(--mute);font-size:13px}.login input{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line-strong);border-radius:8px;margin-bottom:10px}.login button{width:100%;background:var(--plum);color:#fff;border:0;border-radius:8px;padding:11px;font-weight:700;cursor:pointer}.login .err{color:var(--bad);font-size:12.5px;margin:-4px 0 8px}.pop{position:absolute;top:46px;right:0;width:320px;background:var(--paper);color:var(--ink);border-radius:12px;box-shadow:0 20px 50px #00000038;padding:12px 14px;z-index:40;font-size:12.5px}.pop .row{padding:6px 0;border-bottom:1px solid #f0e9ef}.pop .row:last-child{border:0}.pop .lab{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.pop .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);margin-right:6px}.pop .dot.warn{background:var(--warn)}.pop .dot.bad{background:var(--bad)}.empty-note{color:var(--mute);font-size:12.5px;line-height:1.6}.pop .dashlink{font-weight:800;color:var(--plum);text-decoration:none;margin-right:6px}.pop .dashlink:hover{text-decoration:underline}
