:root{color-scheme:light;--ink:#171629;--muted:#68677a;--paper:#f7f7fb;--card:#fff;--line:#e5e4ee;--brand:#6558e8;--brand-dark:#4d42ca;--good:#197a56;--warn:#a94b23;--shadow:0 12px 36px #25213b14;font:16px/1.45 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);min-height:100vh}
button,input,textarea,select{font:inherit}
button,.button{border:0;border-radius:.75rem;background:var(--brand);color:#fff;font-weight:700;padding:.7rem 1rem;cursor:pointer;transition:.15s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}
button:hover,.button:hover{background:var(--brand-dark);transform:translateY(-1px)}
button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.secondary{background:#eeecff;color:var(--brand-dark)}
.secondary:hover{background:#dedaff}
.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}
.ghost:hover{background:#f1f0f6;color:var(--ink)}
.danger{color:var(--warn)}
input,textarea,select{width:100%;border:1px solid var(--line);border-radius:.75rem;background:#fff;color:var(--ink);padding:.78rem .9rem;outline:none}
input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #6558e81f}
textarea{resize:vertical;min-height:7rem}
label{font-weight:650;display:grid;gap:.4rem;color:#343244}
.shell{width:min(760px,100%);margin:auto;padding:1.1rem max(1rem,env(safe-area-inset-right)) 4rem max(1rem,env(safe-area-inset-left))}
.wide{width:min(1180px,100%)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.brand{font-weight:850;letter-spacing:-.03em;font-size:1.25rem;color:var(--ink);text-decoration:none}
.code{font:800 .83rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;background:#eceaf8;padding:.45rem .6rem;border-radius:.55rem}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2rem,6vw,3.7rem);line-height:1.04;letter-spacing:-.055em;margin-bottom:1rem}
h2{letter-spacing:-.025em}
.muted{color:var(--muted)}
.hero{padding:clamp(2rem,8vw,5.5rem) 0 2.5rem;max-width:650px}
.hero p{font-size:1.14rem;max-width:560px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.panel,.card{background:var(--card);border:1px solid var(--line);border-radius:1.1rem;box-shadow:var(--shadow)}
.panel{padding:clamp(1.1rem,4vw,1.7rem)}
.stack{display:grid;gap:.85rem}
.row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}
.split{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.status{display:inline-flex;align-items:center;gap:.35rem;color:var(--good);font-size:.86rem;font-weight:700}
.status::before{content:"";width:.48rem;height:.48rem;border-radius:50%;background:currentColor}
.composer{position:sticky;top:.6rem;z-index:2;margin-bottom:1rem}
.composer textarea{min-height:5.5rem}
.count{font-size:.82rem;color:var(--muted);margin-left:auto}
.question-list{display:grid;gap:.8rem}
.question{padding:1rem;display:grid;grid-template-columns:auto 1fr;gap:.9rem}
.vote{width:3.25rem;height:3.65rem;padding:.35rem;background:#f1efff;color:var(--brand-dark);display:flex;flex-direction:column;gap:.05rem;border-radius:.8rem}
.vote:hover,.vote.active{background:var(--brand);color:#fff}
.vote span:first-child{font-size:1rem;line-height:1}
.vote strong{font-size:.9rem}
.question-text{font-size:1.05rem;font-weight:680;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:.55rem}
.meta{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;color:var(--muted);font-size:.82rem}
.tag{padding:.2rem .48rem;border-radius:99px;background:#edecf3;color:#535166;font-weight:700}
.tag.pin{background:#fff0ca;color:#745614}
.tag.report{background:#ffe5dd;color:#963e21}
.tag.answer{background:#dff5eb;color:#126545}
.answer{margin-top:.75rem;padding:.75rem .85rem;background:#f0f8f5;border-left:3px solid var(--good);border-radius:.2rem .65rem .65rem .2rem;white-space:pre-wrap;overflow-wrap:anywhere}
.card-actions{grid-column:2;display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.15rem}
.card-actions button{font-size:.8rem;padding:.42rem .65rem}
.pinned{border-color:#d8c264;background:#fffdf7}
.hidden{opacity:.62;background:#f3f2f5}
.empty{text-align:center;padding:3rem 1rem;color:var(--muted)}
.notice{padding:.75rem 1rem;border-radius:.75rem;background:#fff2d8;color:#795614;font-weight:650;margin-bottom:1rem}
.success{background:#e1f7ed;color:#166245}
.links{display:grid;gap:.55rem}
.linkline{display:grid;grid-template-columns:7rem 1fr auto;gap:.5rem;align-items:center}
.linkline a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--brand-dark)}
.qr{width:min(220px,100%);aspect-ratio:1;background:#fff;border-radius:.8rem;border:8px solid #fff}
.moderator-head{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:start;margin-bottom:1rem}
.filters{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1rem}
dialog{border:0;border-radius:1rem;box-shadow:0 20px 70px #17162940;padding:1.2rem;width:min(520px,calc(100% - 2rem))}
dialog::backdrop{background:#17162980}
#toast{position:fixed;left:50%;bottom:1.2rem;transform:translate(-50%,1rem);background:var(--ink);color:#fff;padding:.7rem 1rem;border-radius:.7rem;opacity:0;pointer-events:none;transition:.2s;z-index:10;max-width:calc(100% - 2rem);text-align:center}
#toast.show{opacity:1;transform:translate(-50%,0)}
.presenter{min-height:100vh;background:radial-gradient(circle at 80% 15%,#38316d 0,#171629 45%);color:#fff;display:grid;place-items:center;padding:5vw}
.presenter-inner{width:min(1200px,100%)}
.presenter .eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#bcb6ff;font-weight:800;margin-bottom:2rem}
.presenter-question{font-size:clamp(2.2rem,5.4vw,5.4rem);line-height:1.1;letter-spacing:-.04em;font-weight:760;overflow-wrap:anywhere}
.presenter-meta{font-size:clamp(1rem,2vw,1.5rem);color:#cbc9da;margin-top:2rem;display:flex;gap:1.5rem}
.presenter-answer{font-size:clamp(1.2rem,2.5vw,2rem);margin-top:2.5rem;padding:1.3rem 1.5rem;background:#ffffff12;border-left:5px solid #8d83ff;border-radius:.25rem 1rem 1rem .25rem}
.presenter-idle{text-align:center}
.presenter-idle .qr{width:min(300px,45vw)}
.presenter-idle .join{font-size:clamp(1.2rem,2vw,1.8rem);color:#cbc9da}
.presenter-idle .big-code{font:900 clamp(2.5rem,7vw,6rem)/1 ui-monospace,monospace;letter-spacing:.15em;margin:1rem 0 2rem}
@media(max-width:650px){.grid{grid-template-columns:1fr}.hero{padding-top:2.5rem}.question{grid-template-columns:auto 1fr}.moderator-head{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.linkline{grid-template-columns:1fr auto}.linkline strong{grid-column:1/-1}.shell{padding-top:.8rem}.topbar{margin-bottom:.8rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

