:root{--ink:#1a1a1a;--ink-soft:#504835;--paper:#f7f5ef;--card:#fff;--line:#e5e2d8;--grey:#a3a2a0;--accent:#ff5800;--accent-ink:#fff;--cool:#3f495f;--cool-bright:#8f9cb8;--ok:#2e7d4f;--danger:#b3372a;--text:#1a1a1a;--muted:#8a877e;--line-d:#e5e2d8;--bar-track:#ecebe3;--chart-axis:#c3bfb1;--chart-median:#3f495f;--radius:.9375rem;--radius-small:.25rem;--ff:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238a877e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 8px;padding-right:36px}body{font-family:var(--ff);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}h1,h2,h3{letter-spacing:-.03em;font-weight:600}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:760px;margin:0 auto;padding:44px 20px 110px}.brand{align-items:center;gap:12px;margin-bottom:26px;display:flex}.brand img{object-fit:contain;width:40px;height:40px;display:block}.brand span{letter-spacing:-.03em;text-transform:lowercase;font-size:19px;font-weight:600}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--grey);margin-bottom:6px;font-size:12px}.title{letter-spacing:-.04em;margin:0 0 6px;font-size:clamp(30px,6vw,46px);font-weight:600;line-height:1.05}.sub{color:var(--ink-soft);max-width:56ch;margin:0 0 32px;line-height:1.5}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px;padding:26px 26px 30px}.qnum{color:var(--grey);letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:600}.btn{border-radius:var(--radius);background:var(--ink);width:100%;color:var(--paper);letter-spacing:-.01em;border:none;padding:16px;font-size:17px;font-weight:600;transition:background .15s cubic-bezier(.22,.6,.36,1);box-shadow:0 8px 24px #1a1a1a40}.btn:hover:not(:disabled){background:var(--accent)}.btn:disabled{opacity:.5;box-shadow:none;cursor:default}.btn.small{width:auto;box-shadow:none;border-radius:10px;padding:9px 14px;font-size:14px}a.btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn.ghost{border:1.5px solid var(--line);color:var(--ink);box-shadow:none;background:0 0}.btn.ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:0 0}.btn.danger{background:var(--danger)}.btn.danger:hover:not(:disabled){background:var(--danger);opacity:.85}.btn.live{background:var(--accent);color:var(--accent-ink)}.err{color:var(--danger);margin-top:10px;font-size:14px}.hint{color:var(--grey);margin-top:8px;font-size:13px}.linkBtn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.textInput{border:1.5px solid var(--line);border-radius:var(--radius-small);background:var(--paper);width:100%;padding:13px 14px;font-size:17px}.textInput:focus{outline:2px solid var(--accent)}textarea.textInput{resize:vertical;min-height:110px}.joinWrap{text-align:center;max-width:460px;margin:0 auto;padding:12vh 20px 40px}.codeInput{text-align:center;letter-spacing:.35em;text-transform:uppercase;border:2px solid var(--line);border-radius:var(--radius);background:var(--card);width:100%;padding:18px 8px 18px calc(8px + .35em);font-size:34px;font-weight:600}.codeInput:focus{border-color:var(--accent);outline:none}.privacyNote{color:var(--ink-soft);text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-top:28px;padding:14px 18px;font-size:13.5px;line-height:1.55}.qTitle{margin:8px 0 10px;font-size:clamp(22px,5.5vw,30px);line-height:1.15}.qHelp{color:var(--ink-soft);margin:0 0 18px;font-size:15px;line-height:1.45}.poles{justify-content:space-between;gap:16px;margin:12px 0 14px;display:flex}.pole{max-width:46%;font-size:14px;font-weight:600;line-height:1.35}.pole.a{color:var(--accent)}.pole.b{color:var(--cool);text-align:right}.midLabel{text-align:center;color:var(--grey);margin:6px 0 0;font-size:12.5px}.scaleSteps{gap:6px;display:grid}.step{border:1.5px solid var(--line);background:var(--paper);border-radius:var(--radius-small);min-height:48px;color:var(--ink-soft);padding:14px 0;font-size:15px;font-weight:600;transition:transform 80ms,background .12s,border-color .12s,color .12s}.step:active{transform:scale(.94)}.step.sel{color:#fff;background:var(--accent);border-color:#0000}.optList{gap:10px;display:grid}.optBtn{text-align:left;border:1.5px solid var(--line);background:var(--paper);border-radius:10px;min-height:52px;padding:15px 16px;font-size:16px;line-height:1.3;transition:background .12s,border-color .12s}.optBtn.sel{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--paper));font-weight:600}.optBtn:disabled{opacity:.45;cursor:not-allowed}.stars{justify-content:center;gap:8px;display:flex}.star{color:var(--line);background:0 0;border:none;padding:4px;font-size:40px;line-height:1}.star.sel{color:var(--accent)}.gridPad{aspect-ratio:1;background:var(--card);border:1.5px solid var(--line);touch-action:none;border-radius:10px;width:100%;position:relative}.gridPad .axisLabel{color:var(--grey);padding:6px;font-size:12px;position:absolute}.gridPad .dot{background:var(--accent);pointer-events:none;border-radius:50%;width:22px;height:22px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #00000040}.gridLines{pointer-events:none;position:absolute;inset:0}.gridLines:before,.gridLines:after{content:"";background:var(--line);position:absolute}.gridLines:before{width:1px;top:0;bottom:0;left:50%}.gridLines:after{height:1px;top:50%;left:0;right:0}.rankList{gap:8px;display:grid}.rankItem{border:1.5px solid var(--line);background:var(--card);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:15px;display:flex}.rankItem .n{color:var(--accent);min-width:1.5ch;font-weight:700}.rankItem .label{flex:1}.rankMove{gap:4px;display:flex}.rankMove button{border:1px solid var(--line);background:var(--paper);border-radius:6px;width:40px;height:40px;font-size:16px}.rankMove button:disabled{opacity:.3}.allocRow{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 0;display:flex}.allocRow .label{flex:1;font-size:15px}.allocRow button{border:1.5px solid var(--line);background:var(--paper);border-radius:10px;width:44px;height:44px;font-size:20px;font-weight:600}.allocRow button:disabled{opacity:.3}.allocRow .count{text-align:center;min-width:2ch;font-size:18px;font-weight:700}.allocBudget{color:var(--ink-soft);margin:8px 0 4px;font-size:14px;font-weight:600}.submitBar{margin-top:24px;position:sticky;bottom:14px}.answeredNote{text-align:center;padding:40px 12px}.answeredNote .mark{color:var(--accent);font-size:52px}.waiting{text-align:center;padding-top:18vh}.pulse{background:var(--accent);border-radius:50%;width:12px;height:12px;margin-right:10px;animation:1.6s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.selfPagerBar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.selfPagerBar .btn{width:auto}.dark{--bg:#1a1a1a;--bg-card:#242424;--line-d:#363636;--text:#f7f5ef;--muted:#a3a2a0;--bar-track:#2c2c2c;--chart-axis:#4a4a4a;--chart-median:#8f9cb8;background:var(--bg);color:var(--text);min-height:100vh}.dark .card{background:var(--bg-card);border-color:var(--line-d)}.dark .eyebrow,.dark .sub{color:var(--muted)}.dark .textInput{border-color:var(--line-d);color:var(--text);background:#2c2c2c}.dark .btn.ghost{border-color:var(--line-d);color:var(--text)}.dark .pole.b{color:var(--cool-bright)}.presenter{flex-direction:column;min-height:100vh;padding:40px 56px 32px;display:flex}.presenterHead{justify-content:space-between;align-items:flex-start;gap:32px;display:flex}.presenterTitle{letter-spacing:-.04em;max-width:22ch;margin:6px 0 0;font-size:clamp(30px,3.6vw,54px);line-height:1.08}.presenterBody{flex-direction:column;flex:1;justify-content:center;padding:24px 0;display:flex}.joinBadge{text-align:center;border:1px solid var(--line-d);border-radius:var(--radius);background:var(--bg-card);flex-shrink:0;padding:16px 20px 14px}.joinBadge img{background:#fff;border-radius:6px;width:128px;height:128px;margin:0 auto 10px;padding:6px;display:block}.joinBadge .code{letter-spacing:.18em;font-size:30px;font-weight:700}.joinBadge .host{color:var(--muted);margin-top:2px;font-size:13px}.counter{color:var(--muted);white-space:nowrap;margin-top:10px;font-size:17px}.counter b{color:var(--text);font-weight:600}.bignum{letter-spacing:-.05em;background:linear-gradient(300deg, var(--text) 10%, #c4b49a 60%, var(--accent) 130%);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(64px,14vw,120px);font-weight:600;line-height:1}.consensusTag{border:1px solid var(--line-d);background:var(--card);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:4px 12px;font-size:13.5px;font-weight:600;display:inline-flex}.consensusTag .dotmark{border-radius:3px;flex-shrink:0;width:9px;height:9px}.consensusTag.consensus .dotmark{background:var(--ok);border-radius:50%}.consensusTag.mixed .dotmark{background:var(--grey);transform:rotate(45deg)}.consensusTag.polarised .dotmark{background:var(--accent);border-radius:0}.dark .consensusTag{background:var(--bg-card);gap:10px;padding:7px 16px;font-size:18px}.dark .consensusTag .dotmark{width:12px;height:12px}.statStrip{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:2px 0 10px;font-size:13.5px;display:flex}.statStrip .statItem b{color:var(--text);margin-right:1px;font-size:15px;font-weight:600}.dark .statStrip{gap:10px 22px;font-size:16px}.dark .statStrip .statItem b{font-size:20px}.hiddenResults{text-align:center;padding:8vh 0}.hiddenResults .big{letter-spacing:-.03em;font-size:clamp(28px,4vw,44px);font-weight:600}@keyframes dropIn{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}.dropDot{animation:.45s cubic-bezier(.22,.6,.36,1) both dropIn}.reveal{animation:.5s cubic-bezier(.22,.6,.36,1) both rise}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.roundTabs{gap:8px;margin:0 0 14px;display:flex}.roundTab{border:1px solid var(--line-d);color:var(--muted);background:0 0;border-radius:999px;padding:6px 14px;font-size:14px;font-weight:600}.roundTab.sel{color:var(--text);border-color:var(--accent)}.bar{grid-template-columns:1fr auto;align-items:center;gap:18px;margin-bottom:14px;display:grid}.barTrack{border-radius:var(--radius-small);background:var(--bar-track);height:52px;position:relative;overflow:hidden}.barFill{border-radius:var(--radius-small);background:var(--accent);opacity:.4;transition:width .4s cubic-bezier(.22,.6,.36,1);position:absolute;inset:0 auto 0 0}.barLabel{align-items:center;gap:12px;padding:0 16px;font-size:19px;display:flex;position:absolute;inset:0}.barPct{color:var(--muted);font-size:16px}.barCount{text-align:right;min-width:2ch;font-size:26px;font-weight:600}.wordcloud{flex-wrap:wrap;align-items:baseline;gap:16px 28px;padding:8px 0;display:flex}.wordcloud span{letter-spacing:-.02em;font-weight:600;line-height:1.1}.cardWall{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;max-height:60vh;display:grid;overflow-y:auto}.cardWall .card{margin:0;padding:18px 20px;font-size:17px;line-height:1.4}.tinyN{color:var(--muted);font-size:15px}.belowMin{text-align:center;color:var(--muted);padding:6vh 0;font-size:18px}.dataTableToggle{color:var(--grey);text-underline-offset:3px;background:0 0;border:none;margin-top:2px;padding:4px 0;font-size:12.5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.dataTable{border-collapse:collapse;width:100%;margin-top:10px;font-size:14px}.dataTable th,.dataTable td{text-align:left;border-bottom:1px solid var(--line);padding:6px 10px}.dark .dataTable th,.dark .dataTable td{border-color:var(--line-d)}.controlBar{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.controlBar .btn{flex:none;width:auto}.qStrip{gap:6px;display:grid}.qStripItem{text-align:left;border:1.5px solid var(--line-d);background:var(--bg-card);min-width:0;color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:14.5px;display:flex}.qStripItem.current{border-color:var(--accent)}.qStripItem .pos{color:var(--muted);min-width:2ch;font-weight:600}.qStripItem .t{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.qStripItem .badge{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px}.adminBar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.adminBar .textInput{background:var(--card);border-radius:10px;flex:1;width:auto;min-width:160px;padding:9px 12px;font-size:14px}.adminBar select{color:var(--ink);border:1.5px solid var(--line);background-color:var(--paper);border-radius:10px;padding:9px 36px 9px 14px;font-size:14px;font-weight:600}.adminBar select:hover{border-color:var(--accent);color:var(--accent)}.tabs{gap:6px;margin-bottom:18px;display:flex}.tab{border:1.5px solid var(--line);color:var(--ink-soft);background:0 0;border-radius:999px;padding:7px 16px;font-size:14px;font-weight:600}.tab.sel{border-color:var(--ink);color:var(--ink)}.sessionRow{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:10px;padding:16px 18px;display:flex}.sessionRow .meta{flex:260px;min-width:0}.sessionRow .meta h3{margin:0 0 3px;font-size:17px}.sessionRow .meta p{color:var(--grey);margin:0;font-size:13px}.statusPill{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:700}.statusPill.draft{background:var(--line);color:var(--ink-soft)}.statusPill.live{background:var(--accent);color:var(--accent-ink)}.statusPill.closed{background:var(--ink);color:var(--paper)}.rowActions{flex-wrap:wrap;flex:100%;justify-content:flex-end;gap:6px;display:flex}.builder{grid-template-columns:340px 1fr;align-items:start;gap:24px;display:grid}.builder>div{min-width:0}@media (max-width:900px){.builder{grid-template-columns:1fr}}.qListItem{text-align:left;border:1.5px solid var(--line);background:var(--card);border-radius:10px;align-items:center;gap:8px;width:100%;margin-bottom:6px;padding:10px 12px;font-size:14px;display:flex}.qListItem.sel{border-color:var(--accent)}.qListItem .t{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.qListItem .type{color:var(--grey);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.iconBtn{border:1px solid var(--line);background:var(--paper);border-radius:6px;width:30px;height:30px;font-size:13px;line-height:1}.iconBtn:disabled{opacity:.3}.fieldRow{margin-bottom:14px}.fieldRow label{color:var(--ink-soft);margin-bottom:5px;font-size:13px;font-weight:600;display:block}.fieldGrid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.checkRow{align-items:center;gap:8px;margin-bottom:10px;font-size:14.5px;display:flex}.checkRow input{width:18px;height:18px;accent-color:var(--accent)}.resultsSection{margin-bottom:34px}.resultsSection h2{letter-spacing:-.02em;text-wrap:balance;margin:6px 0 12px;font-size:21px;font-weight:600;line-height:1.25}.shiftTag{color:var(--ink-soft);background:var(--line);border-radius:999px;padding:4px 12px;font-size:14px;font-weight:600}@media print{.noPrint{display:none!important}body{background:#fff}.card{break-inside:avoid;box-shadow:none}}@media (max-width:700px){.presenter{padding:20px 16px}.presenterHead{flex-direction:column-reverse}.cardWall{max-height:none}}@media (prefers-reduced-motion:reduce){.pulse,.dropDot,.reveal{animation:none!important}.barFill{transition:none}}.textBtn{font:inherit;color:var(--grey);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:13px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.textBtn:hover{color:var(--accent)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.welcome{text-align:center;padding:40px 26px 36px}.welcome h2{margin:0 0 8px;font-size:26px}.welcomePath{letter-spacing:.08em;text-transform:uppercase;color:var(--grey);flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:0 auto 22px;padding:0;font-size:13px;font-weight:600;list-style:none;display:flex}.welcomePath li+li:before{content:"→";color:var(--line);margin-right:18px}.welcomeActions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.welcomeActions .btn{width:auto}.gsCard{padding:22px 26px 18px}.gsHead{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.gsTitle{margin:4px 0 0;font-size:20px}.gsProgress{background:var(--bar-track);border-radius:999px;height:6px;margin:14px 0 10px;overflow:hidden}.gsProgress i{background:var(--accent);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.22,.6,.36,1);display:block}.gsList{margin:0;padding:0;list-style:none}.gsItem{border-top:1px solid var(--line);align-items:center;gap:12px;padding:11px 0;font-size:15px;display:flex}.gsItem:first-child{border-top:none}.gsMark{border:1.5px solid var(--line);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:13px;font-weight:700;line-height:1;display:grid}.gsItem.done .gsMark{background:var(--ok);border-color:var(--ok)}.gsItem.done .gsLabel{color:var(--grey)}.gsItem.next .gsMark{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent)}.gsItem.next .gsLabel{font-weight:600}.gsLabel{flex:1;min-width:0;line-height:1.3}.gsLabel small{color:var(--grey);margin-top:2px;font-size:13px;font-weight:400;display:block}.gsItem .btn{flex-shrink:0}@media (max-width:540px){.gsItem{flex-wrap:wrap}.gsItem .btn{margin-left:34px}}.tourPanel{z-index:1000;background:#1a1a1a80;position:fixed}.dark .tourPanel{background:#0000009e}.tourRing{z-index:1001;pointer-events:none;box-shadow:0 0 0 2px var(--accent), 0 0 0 7px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:12px;transition:top .22s cubic-bezier(.22,.6,.36,1),left .22s cubic-bezier(.22,.6,.36,1),width .22s cubic-bezier(.22,.6,.36,1),height .22s cubic-bezier(.22,.6,.36,1);position:fixed}.tourCard{z-index:1002;background:var(--card);width:min(360px,100vw - 24px);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px 16px;animation:.2s cubic-bezier(.22,.6,.36,1) both rise;position:fixed;box-shadow:0 18px 48px #1a1a1a47}.tourCard:focus{outline:none}.tourCard.sheet{width:auto;bottom:12px;left:12px;right:12px}.dark .tourCard{background:var(--bg-card);color:var(--text);border-color:var(--line-d);box-shadow:0 18px 48px #0009}.tourStep{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:600}.tourTitle{margin:6px 0;font-size:18px;line-height:1.2}.tourBody{color:var(--ink-soft);margin:0 0 16px;font-size:14.5px;line-height:1.5}.dark .tourBody{color:var(--muted)}.tourFoot{align-items:center;gap:8px;display:flex}.tourFoot .textBtn{margin-right:4px}.tourDots{flex:1;gap:5px;display:flex}.tourDots i{background:var(--line);border-radius:50%;width:6px;height:6px}.tourDots i.on{background:var(--accent)}.dark .tourDots i{background:var(--line-d)}.dark .tourDots i.on{background:var(--accent)}@media (prefers-reduced-motion:reduce){.tourRing{transition:none}.tourCard{animation:none}.gsProgress i{transition:none}}
