:root{--fog: #ecebf0;--ink: #6f7387;--ink-soft: #9a9cab;--panel: rgba(250, 249, 252, .72);--rule: rgba(111, 115, 135, .18);--accent: #8d8aa8}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--fog);color:var(--ink);font:13px/1.4 Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:.02em}#sky{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;touch-action:none;cursor:crosshair}#hint,#status{position:fixed;margin:0;pointer-events:none;color:var(--ink-soft);transition:opacity 1.6s ease}#hint{left:50%;bottom:9vh;transform:translate(-50%);padding:6px 12px;border:0;background:none;font:inherit;font-size:13px;letter-spacing:.2em;text-transform:lowercase;white-space:nowrap;pointer-events:auto;cursor:pointer;transition:opacity .4s ease,color .4s ease}#hint[data-state=on]{opacity:.35}#hint:hover,#hint:focus-visible{opacity:1;color:var(--ink)}#status{left:20px;bottom:16px;font-size:11px;letter-spacing:.12em}.faded{opacity:0}#toggle{position:fixed;top:16px;right:16px;padding:4px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--panel);color:var(--ink);font:inherit;font-size:11px;letter-spacing:.12em;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#panel{position:fixed;top:52px;right:16px;width:264px;max-height:calc(100vh - 72px);overflow-y:auto;padding:12px 14px 10px;border:1px solid var(--rule);border-radius:12px;background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#panel h2{margin:10px 0 4px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}#panel h2:first-child{margin-top:0}#panel .field{display:grid;grid-template-columns:52px 1fr 40px 16px;align-items:center;gap:8px;font-size:11px;color:var(--ink-soft)}#panel .field.changed{margin:0 -6px;padding:0 6px;border-radius:6px;background:#96beeb29}#panel .info-toggle{width:16px;height:16px;padding:0;border:1px solid var(--rule);border-radius:50%;background:transparent;color:var(--ink-soft);font:italic 600 10px/14px Georgia,serif;cursor:pointer}#panel .info-toggle[aria-expanded=true]{border-color:var(--accent);background:var(--accent);color:#fff}#panel .info{margin:2px 0 6px;padding:6px 8px;border-radius:6px;background:#8d8aa81a;color:var(--ink);font-size:11px;line-height:1.45}#panel output{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}#panel input[type=range]{width:100%;accent-color:var(--accent)}#panel .row{display:flex;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--rule)}#panel .row button{flex:1;padding:4px 0;border:1px solid var(--rule);border-radius:6px;background:transparent;color:var(--ink);font:inherit;font-size:11px;cursor:pointer}@media(max-width:480px){#panel{left:16px;right:16px;width:auto}}#other{position:fixed;top:16px;right:98px;padding:4px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--panel);color:var(--ink);font-size:11px;letter-spacing:.12em;text-decoration:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#panel details.group{padding:8px 0 6px;border-top:1px solid var(--rule)}#panel details.group:first-child{padding-top:0;border-top:none}#panel summary{display:flex;justify-content:space-between;align-items:center;padding:2px 0;list-style:none;cursor:pointer;color:var(--ink);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}#panel summary::-webkit-details-marker{display:none}#panel summary:after{content:"–";color:var(--ink-soft);font-weight:400}#panel details:not([open]) summary:after{content:"+"}#panel details.group h2{margin:8px 0 3px;font-size:10px;font-weight:500;letter-spacing:.12em;color:var(--ink-soft)}#add{position:fixed;top:16px;left:16px;padding:4px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--panel);color:var(--ink);font:inherit;font-size:11px;letter-spacing:.12em;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#add[aria-expanded=true]{border-color:var(--accent)}#recorder{position:fixed;top:52px;left:16px;width:300px;max-height:calc(100vh - 72px);overflow-y:auto;padding:12px 14px 14px;border:1px solid var(--rule);border-radius:12px;background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#recorder .head{display:flex;justify-content:space-between;align-items:center}#recorder h2{margin:0;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}#recorder .close{width:22px;height:22px;padding:0;border:0;background:none;color:var(--ink-soft);font-size:18px;line-height:1;cursor:pointer}#recorder .prompt{margin:10px 0 8px;font-size:13px;color:var(--ink)}#recorder .prompt em{font-style:normal;letter-spacing:.04em}#recorder .note{margin:8px 0 0;font-size:11px;line-height:1.45;color:var(--ink-soft)}#recorder .note.warn{color:#a0606e}#recorder .actions{display:flex;gap:8px;margin-top:10px}#recorder .actions button{flex:1;padding:6px 0;border:1px solid var(--rule);border-radius:6px;background:transparent;color:var(--ink);font:inherit;font-size:12px;letter-spacing:.08em;cursor:pointer}#recorder .actions button.primary{border-color:var(--accent);background:var(--accent);color:#fff}#recorder .actions button:disabled{opacity:.45;cursor:default}#recorder .meter{height:6px;margin:6px 0;border-radius:3px;background:var(--rule);overflow:hidden}#recorder .meter .fill{height:100%;width:0;background:var(--accent)}#recorder .meter.time{height:2px}#recorder .meter.time .fill{background:var(--ink-soft)}#recorder .consent{display:grid;grid-template-columns:16px 1fr;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--rule);font-size:11px;line-height:1.45;color:var(--ink);cursor:pointer}#recorder .consent input{margin:2px 0 0;accent-color:var(--accent)}#recorder .check{margin-top:10px}@media(max-width:480px){#recorder{right:16px;width:auto}}#recorder .mine h3{margin:14px 0 4px;padding-top:10px;border-top:1px solid var(--rule);font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}#recorder .mine ul{margin:0;padding:0;list-style:none}#recorder .mine li{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:8px;padding:3px 0;font-size:11px}#recorder .mine .when{color:var(--ink-soft)}#recorder .mine .said.live{color:var(--accent)}#recorder .mine .said.rejected{color:#a0606e}#recorder .mine .remove{padding:2px 8px;border:1px solid var(--rule);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-size:10px;cursor:pointer}#recorder .mine .remove[data-sure="1"]{border-color:#a0606e;color:#a0606e}
