:root{color:#1d2430;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f0e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{color:#1d2430;cursor:pointer;background:#fff;border:1px solid #27364a;border-radius:7px;min-height:42px;padding:0 16px}button:hover{background:#edf7f6}button:disabled{cursor:not-allowed;opacity:.56}input,textarea{color:#1d2430;background:#fff;border:1px solid #a7b1bf;border-radius:7px;width:100%;padding:12px 14px}textarea{resize:vertical}label{color:#405065;gap:8px;font-weight:700;display:grid}.app-shell{background:linear-gradient(135deg,#1d243012,#0000 40%),linear-gradient(315deg,#177c752e,#0000 48%),#f4f0e8;place-items:center;min-height:100vh;padding:32px;display:grid}.stage{gap:28px;width:min(760px,100%);display:grid}.brand{color:#101820;letter-spacing:0;justify-content:center;align-items:baseline;gap:10px;font-size:clamp(52px,11vw,118px);font-weight:900;line-height:.9;display:flex}.strike{-webkit-text-decoration:line-through #d04f3a9e;text-decoration:line-through #d04f3a9e;text-decoration-thickness:.08em}.pretend{color:#526174;font-size:clamp(18px,3vw,32px);font-weight:800}.key-button{z-index:5;background:#fff;place-items:center;width:46px;height:46px;padding:0;font-size:21px;display:grid;position:fixed;top:18px;right:18px}.entry-panel,.game-panel,.status-panel,.setup-panel,.settings-panel,.live-summary,.empty-admin{background:#ffffffe0;border:1px solid #27364a24;border-radius:8px;gap:18px;width:min(560px,100%);margin:0 auto;padding:24px;display:grid;box-shadow:0 24px 60px #1d24301c}.status-panel{text-align:center}.status-panel h1,.game-panel h1,.live-summary h1,.empty-admin h1{letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:clamp(30px,6vw,62px);line-height:1.02}.status-panel p,.live-summary p,.context-block p{margin:0}.primary{color:#fff;background:#177c75;border-color:#156c64;font-weight:800}.primary:hover{background:#12665f}.danger{color:#9f3025;border-color:#b94133}.error{color:#b3261e;margin:0;font-weight:700}.success{color:#177c75;margin:0;font-weight:800}.muted{color:#738092}.eyebrow{color:#68778b;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.context-block{text-align:left;background:#eef8f6;border-left:4px solid #177c75;gap:8px;padding:14px 16px;display:grid}.meter{color:#526174;margin:-6px 0 0;font-weight:800}.auto-grow-textarea{resize:none;min-height:48px;max-height:220px;line-height:1.4;overflow:hidden}.tone-empty{background:#fff}.tone-ok{background:#e9f8ec;border-color:#3d9b58}.tone-warn{background:#fff6d7;border-color:#c9931d}.tone-over{background:#ffe8e4;border-color:#c84231}.admin-page,.admin-shell{background:#fbfaf7;min-height:100vh}.admin-titlebar{z-index:2;background:#fbfaf7;border-bottom:1px solid #d7dde5;grid-template-columns:42px 1fr 42px;align-items:center;gap:16px;padding:16px 18px;display:grid;position:sticky;top:0}.admin-titlebar .brand{justify-content:center;font-size:28px}.admin-titlebar .pretend{font-size:14px}.back-button{background:0 0;border:0;width:42px;padding:0;font-size:24px;font-weight:900}.back-button:hover{background:#edf7f6}.compact{margin:40px auto}.dashboard-grid{grid-template-columns:minmax(260px,320px) 1fr;min-height:620px;display:grid}.user-rail{background:#f0f5f5;border-right:1px solid #d7dde5;grid-template-rows:minmax(0,1fr) auto;height:calc(100vh - 75px);padding:20px;display:grid;position:sticky;top:75px;overflow:hidden}.user-groups{align-content:start;gap:24px;min-height:0;display:grid;overflow:auto}.user-groups h2,.user-groups h3{margin:0 0 10px}.user-row{border-bottom:1px solid #27364a1f;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.user-row.stacked{justify-content:stretch;gap:4px;display:grid}.user-row-main,.user-actions{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.user-actions{flex:none}.user-row small{color:#526174;font-weight:800}.user-row .wake-lock-warning{color:#b3261e}.user-name{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:inline-flex}.kick-button{flex:0 0 38px;place-items:center;width:38px;height:38px;padding:0;font-size:18px;display:grid}.kick-button:hover{background:#ffe8e4;border-color:#b3261e}.presence-dot{border:1px solid #1d243047;border-radius:50%;flex:0 0 11px;width:11px;height:11px;box-shadow:0 0 0 3px #1d24300d}.presence-online{background:#2f9e44}.presence-idle{background:#f0b429}.presence-offline{background:#d6453d}.admin-workspace{align-content:start;gap:22px;padding:22px;display:grid}.toolbar{flex-wrap:wrap;gap:10px;display:flex}.setup-panel,.settings-panel,.live-summary,.empty-admin{width:100%;box-shadow:none}.settings-panel{grid-template-columns:minmax(180px,260px) auto;align-items:end}.user-rail .settings-panel{grid-template-columns:1fr;align-items:stretch;margin-top:20px;padding:16px}.settings-note{color:#526174;margin:0;font-weight:800}.range-readout{color:#1d2430;font-weight:900}.summary-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.summary-actions{gap:8px;display:flex}.summary-preview{gap:8px;display:grid}.icon-button{place-items:center;width:42px;height:42px;padding:0;display:grid}.icon-button svg{display:block}.icon-button[aria-pressed=true]{color:#156c64;background:#eef8f6;border-color:#156c64}.toggle-row{align-items:center;gap:10px;display:flex}.toggle-row input{width:20px;height:20px}.topic-options{gap:14px;display:grid}.segmented-control{background:#fff;border:1px solid #a7b1bf;border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.segmented-control label{color:#405065;cursor:pointer;justify-content:center;align-items:center;min-height:42px;padding:0 12px;display:flex;position:relative}.segmented-control label+label{border-left:1px solid #d7dde5}.segmented-control label.selected{color:#156c64;background:#eef8f6}.segmented-control input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.output h1{font-size:clamp(26px,5vw,48px)}.attributed-output{display:block;position:relative}.output-segment-wrap{display:inline;position:static}.output-segment{-webkit-box-decoration-break:clone;box-decoration-break:clone;cursor:help;border-radius:5px;outline:0;transition:background .12s,box-shadow .12s;display:inline}.output-segment:hover,.output-segment:focus-visible{background:#fff4c4;box-shadow:0 0 0 3px #c9931d38}.output-segment-picked:hover,.output-segment-picked:focus-visible{background:#dff4e4;box-shadow:0 0 0 3px #2f9e4438}.segment-popup{z-index:10;color:#fff;opacity:0;pointer-events:none;white-space:normal;background:#101820;border:1px solid #27364a;border-radius:7px;width:max-content;max-width:min(420px,100vw - 32px);padding:8px 10px;font-size:13px;font-weight:800;line-height:1.25;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,6px)}.next-word-popup{text-align:left;gap:6px;min-width:min(360px,82vw);max-height:min(320px,70vh);display:grid;overflow:auto}.popup-title{color:#fff;padding-bottom:2px;font-weight:900;display:block}.next-word-choice{border-left:4px solid;border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 8px;display:grid}.next-word-choice span:first-child{overflow-wrap:anywhere;min-width:0}.choice-picked{background:#2f9e4447;border-left-color:#54c878}.choice-unpicked{background:#d6453d4d;border-left-color:#ff6b5f}.segment-popup:after{content:"";border:7px solid #0000;border-top-color:#101820;position:absolute;top:100%;left:50%;transform:translate(-50%)}.output-segment:hover+.segment-popup,.output-segment:focus-visible+.segment-popup{opacity:1;transform:translate(-50%)}.follow-output{text-align:left;gap:14px;display:grid}.follow-author-key{flex-wrap:wrap;justify-content:center;gap:8px 12px;display:flex}.follow-author-key-item{color:#405065;cursor:pointer;border-radius:999px;outline:0;align-items:center;gap:6px;min-width:0;font-size:13px;font-weight:900;transition:opacity .12s,transform .12s,background .12s,box-shadow .12s;display:inline-flex}.follow-author-swatch{border:1px solid var(--author-color);background:var(--author-soft);border-radius:50%;flex:0 0 12px;width:12px;height:12px}.follow-paragraphs{gap:16px;display:grid}.follow-paragraphs p{color:#1d2430;letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:clamp(24px,4.5vw,42px);font-weight:900;line-height:1.34}.follow-output-segment{border:1px solid color-mix(in srgb, var(--author-color) 42%, transparent);background:color-mix(in srgb, var(--author-soft) 72%, transparent);-webkit-box-decoration-break:clone;box-decoration-break:clone;cursor:pointer;border-radius:5px;outline:0;padding:.03em .13em;transition:opacity .12s,background .12s,box-shadow .12s,border-color .12s;display:inline}.follow-output-highlighting .follow-muted{opacity:.26}.follow-author-key-item.follow-active{background:var(--author-soft);box-shadow:0 0 0 3px color-mix(in srgb, var(--author-color) 18%, transparent);color:#1d2430;transform:translateY(-1px)}.follow-output-segment.follow-active{border-color:color-mix(in srgb, var(--author-color) 78%, #1d2430);background:color-mix(in srgb, var(--author-soft) 88%, #fff);box-shadow:0 0 0 3px color-mix(in srgb, var(--author-color) 16%, transparent)}.live-summary .follow-output{gap:10px}.live-summary .follow-author-key-item{font-size:12px}.live-summary .follow-paragraphs{gap:10px}.live-summary .follow-paragraphs p{font-size:clamp(22px,3.4vw,34px)}@media (width<=780px){.segment-popup{width:auto;max-width:none;position:fixed;bottom:16px;left:16px;right:16px;transform:translateY(8px)}.next-word-popup{min-width:0;max-height:min(360px,60vh)}.segment-popup:after{display:none}.output-segment:hover+.segment-popup,.output-segment:focus-visible+.segment-popup{transform:translateY(0)}.app-shell{padding:22px}.brand{flex-wrap:wrap}.dashboard-grid{grid-template-columns:1fr}.user-rail{border-bottom:1px solid #d7dde5;border-right:0;height:auto;position:static;overflow:visible}.user-groups{overflow:visible}.admin-titlebar{grid-template-columns:42px minmax(0,1fr) 42px;gap:10px}}
