:root{--bg: #060b18;--panel: #0b1426;--line: #1c2a44;--ink: #e6edf7;--quiet: #8796b0;--accent: #4fd1c5;--guess: #c9a227;--answered: #7aa2ff;--bad: #ff7a7a;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:Hiragino Sans,Noto Sans JP,system-ui,sans-serif}body{min-height:100vh}button,input,textarea{font:inherit}a{color:var(--accent)}.btn{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 16px;cursor:pointer}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.4;cursor:default}.btn.primary{background:var(--accent);color:#04111a;border-color:var(--accent);font-weight:600}.note{color:var(--quiet);font-size:13px}.err{color:var(--bad)}.dim{color:var(--quiet)}.center{display:grid;place-items:center;min-height:100vh;gap:16px;padding:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}.setup{max-width:720px;margin:0 auto;padding:32px 16px 64px;display:grid;gap:20px}.setup h1{font-size:28px;margin:4px 0 8px}.kicker{color:var(--accent);letter-spacing:.12em;font-size:12px;margin:0}.lead{color:var(--quiet);margin:0}.setup h2{font-size:15px;margin:16px 0 8px}.setup h2:first-child{margin-top:0}.setup input[type=url],.setup textarea{width:100%;background:#050a15;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:8px}.setup .btn{margin-top:12px}.docs{padding-left:18px;font-size:14px}.docs .bad{color:var(--bad)}.start{text-align:center}.session,.end{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;padding:20px;min-height:100vh}.talk{display:flex;flex-direction:column;align-items:center;gap:12px;min-height:0}.timer{align-self:flex-end;color:var(--quiet);font-variant-numeric:tabular-nums}.orb{width:140px;height:140px;border-radius:50%;margin:24px 0 8px;background:radial-gradient(circle at 35% 30%,#9ff3ea,#1b6f8a 60%,#0a2034);box-shadow:0 0 60px #1b6f8a66;transition:transform .08s linear}.orb.speaking{box-shadow:0 0 90px #4fd1c5aa}.status{color:var(--quiet);margin:0}.controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.log{width:100%;flex:1;overflow-y:auto;border-top:1px solid var(--line);padding-top:8px;max-height:50vh}.log p{margin:6px 0;line-height:1.6;font-size:14px}.log b{display:inline-block;min-width:4em;color:var(--quiet);font-weight:600}.log .agent b{color:var(--accent)}.memo{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px;overflow-y:auto;max-height:calc(100vh - 40px)}.memo-cap{display:flex;justify-content:space-between;color:var(--quiet);font-size:12px;letter-spacing:.08em}.memo-cap span:last-child{color:var(--accent)}.memo-title{font-size:20px;margin:8px 0}.meter-row{display:flex;align-items:center;gap:12px}.meter{position:relative;flex:1;height:8px;background:#0f1b31;border-radius:4px;overflow:visible}.meter i{position:absolute;inset:0 auto 0 0;background:var(--accent);border-radius:4px;transition:width .4s}.meter b{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--quiet)}.pct{font-size:28px;font-weight:700;font-variant-numeric:tabular-nums}.pct small{font-size:14px;color:var(--quiet)}.gate{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 12px}.gate span{font-size:12px;border:1px dashed var(--line);border-radius:999px;padding:2px 10px;color:var(--quiet)}.gate span.on{border-style:solid;border-color:var(--accent);color:var(--accent)}.salary{border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin-bottom:12px;font-size:13px}.salary.loading{color:var(--accent)}.salary summary{display:flex;gap:10px;align-items:baseline;cursor:pointer;flex-wrap:wrap}.salary summary b{font-size:16px}.salary summary small{color:var(--quiet)}.salary ul{padding-left:18px;margin:4px 0}.bone{border-top:1px solid var(--line);padding:8px 0}.bone-k{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:14px;margin-bottom:4px}.bone-bar{width:80px;height:4px;background:#0f1b31;border-radius:2px;position:relative}.bone-bar i{position:absolute;inset:0 auto 0 0;background:var(--accent);border-radius:2px}.item{display:grid;grid-template-columns:11em 1fr;gap:8px;font-size:13px;padding:3px 6px;border-left:2px solid transparent}.item-k{color:var(--quiet)}.item.empty .item-v{color:#4a5874}.item.asking .item-v{color:var(--accent)}.item.guess{border-left:2px dashed var(--guess)}.item.answered{border-left-color:var(--answered)}.item.confirmed{border-left-color:var(--accent);background:#4fd1c512}.badge{font-style:normal;font-size:11px;color:var(--quiet);margin-left:6px}.item.guess .badge{color:var(--guess)}.caret{animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0}}.topic{font-size:13px;display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}.topic .dec{color:var(--accent)}.topic .open{color:var(--guess)}.summary h1{font-size:22px;margin-top:0}.summary h2{font-size:15px;margin:16px 0 6px}.draft{white-space:pre-wrap;background:#050a15;border:1px solid var(--line);border-radius:8px;padding:12px;font-family:inherit;font-size:13px;line-height:1.7;max-height:50vh;overflow-y:auto}@media (max-width: 860px){.session,.end{grid-template-columns:1fr;padding:16px}.memo{max-height:none}.item{grid-template-columns:1fr;gap:0}}.account{display:flex;justify-content:flex-end;align-items:center;gap:16px;padding:10px 16px;font-size:13px;flex-wrap:wrap}.link{background:none;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit}.login{max-width:420px}.login form{display:grid;gap:12px}.login label{display:grid;gap:6px;font-size:14px}.login input,.invite-form input{width:100%;background:#050a15;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit}.login .btn{margin-top:0}.login a{color:var(--accent)}.invite-form{display:flex;gap:8px;flex-wrap:wrap}.invite-form input{flex:1;min-width:200px}.invite-form .btn{margin-top:0}.invites{list-style:none;padding:0;margin:0;display:grid;gap:8px}.invites li{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.invites li span{flex:1;min-width:0;overflow-wrap:anywhere}.invites .btn{padding:6px 12px;margin:0}
