:root{--bg:#f5f5f2;--surface:#fff;--text:#16181d;--muted:#5d6270;--border:#d9dbe0;--accent:#1f5fbf;--accent-text:#fff;--ok:#1b7f3b;--ok-bg:#e3f4e8;--miss:#a85400;--miss-bg:#fdeedd;--error:#b42318;--radius:12px;--tap:48px;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1{margin:.25rem 0 1rem;font-size:1.6rem}h2{margin:0 0 .75rem;font-size:1.2rem}h3{margin:1.25rem 0 .5rem;font-size:1rem}a{color:var(--accent)}code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.page{max-width:560px;padding:16px 16px calc(32px + env(safe-area-inset-bottom));margin:0 auto}.page-wide{max-width:1100px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:20px}.card.center{text-align:center}.stack{flex-direction:column;gap:12px;display:flex}.inline-form{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.inline-form input,.inline-form select{flex:200px}.muted{color:var(--muted)}.small{font-size:.875rem}.lead{font-size:1.15rem}.error{color:var(--error);margin:.25rem 0}.connection-warning{background:var(--miss-bg);color:var(--miss);border-radius:8px;margin:0 0 12px;padding:8px 12px}.error-list{color:var(--error);padding-left:1.25rem}.ok{color:var(--ok)}.hint{color:var(--muted);margin:0}.big-number{margin:0;font-size:2.5rem;font-weight:700}input,select{font:inherit;min-height:var(--tap);border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;width:100%;padding:8px 12px;font-size:1rem}input:focus,select:focus,button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:1px}button,.button{font:inherit;min-height:var(--tap);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:8px 18px;text-decoration:none;display:inline-flex}button:disabled{opacity:.45;cursor:default}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}button.link{color:var(--accent);text-align:left;background:0 0;border:none;min-height:auto;padding:4px;text-decoration:underline}button.link.danger{color:var(--error)}.code-input{letter-spacing:.3em;text-align:center;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:2rem}.participant-header{margin-bottom:8px}.participant-header h1{margin-top:0}.flow-progress{margin-bottom:12px}.progress{background:var(--border);border-radius:999px;height:8px;margin-top:4px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .3s}.question-text{margin:0 0 16px;font-size:1.25rem;font-weight:600}.interval-inputs{gap:12px;display:grid}.interval-inputs label{color:var(--muted);flex-direction:column;gap:4px;font-size:.875rem;display:flex}.interval-inputs input{font-size:1.25rem}.unit-badge{color:var(--accent);background:#eef3fb;border-radius:999px;margin:-8px 0 12px;padding:4px 10px;font-weight:600;display:inline-block}.input-with-unit{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.input-with-unit:focus-within{outline:3px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:1px}.input-with-unit input{border:none;border-radius:0;flex:1 1 0;width:0;min-width:80px}.input-with-unit input:focus{outline:none}.input-unit{background:var(--bg);border-left:1px solid var(--border);color:var(--text);white-space:nowrap;text-overflow:ellipsis;align-items:center;max-width:65%;padding:0 12px;font-weight:600;display:flex;overflow:hidden}.choice-row,.confidence-row{gap:8px;display:grid}.choice-row{grid-template-columns:1fr 1fr}.confidence-row{grid-template-columns:repeat(3,1fr)}.choice{min-height:56px;font-size:1.1rem}.choice.selected{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.save-status{min-height:1.3em;margin:12px 0 0}.nav{justify-content:space-between;gap:12px;margin-bottom:16px;display:flex}.nav button{flex:1}.nav-fixed{max-width:560px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);z-index:10;margin:0 auto;position:fixed;bottom:0;left:0;right:0}.page:has(.nav-fixed){padding-bottom:120px}.missing{background:var(--miss-bg);border-radius:8px;margin-bottom:16px;padding:12px 14px}.missing p{margin:0 0 6px}.missing-list{margin:0;padding:0;list-style:none}.missing-list .link{text-align:left;padding:6px 0}.tag{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:600;display:inline-block}.tag.ok{background:var(--ok-bg);color:var(--ok)}.tag.miss,.tag.missing{background:var(--miss-bg);color:var(--miss)}.answer-list{margin:0;padding-left:1.25rem}.answer-list li{margin-bottom:14px}.answer-question{margin:0 0 4px;font-weight:600}.answer-list p{margin:2px 0}.restore{text-align:center;margin-top:24px}.restore p{margin:0}.page-admin{max-width:1600px}.admin-layout{gap:16px;display:grid}@media (width>=1000px){.admin-layout{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start}.admin-main{max-height:calc(100vh - 32px);position:sticky;top:16px;overflow-y:auto}}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-nav{align-items:center;gap:16px;display:flex}.activity-instance{grid-template-columns:max-content 1fr;gap:2px 12px;margin:0 0 4px;display:grid}.activity-instance dt{color:var(--muted)}.activity-instance dd{margin:0}.activity-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.activity-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px}.activity-stat strong{font-variant-numeric:tabular-nums;font-size:1.8rem;line-height:1.2;display:block}.activity-stat.error strong{color:var(--error)}.session-code{letter-spacing:.15em;font-size:1.8rem;font-weight:700}.session-links{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.table{border-collapse:collapse;width:100%;font-size:.95rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:8px 6px}.table .nowrap{white-space:nowrap}.table .actions{white-space:nowrap;text-align:right}.tests{margin:0;padding:0;list-style:none}.test-row{border:1px solid var(--border);border-radius:10px;gap:6px;margin-bottom:8px;padding:10px 12px;display:grid}.test-row p{margin:0}.test-row.current{border:2px solid var(--accent)}.test-info{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.test-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.test-actions button{min-height:36px;padding:4px 14px}.phase{background:var(--border);border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:600}.phase-open{color:var(--accent);background:#dbe7fb}.phase-revealed{background:var(--ok-bg);color:var(--ok)}.answer-progress{margin-top:4px}.answer-progress-title{margin:0 0 6px;font-weight:600}.answer-progress dl{grid-template-columns:max-content minmax(0,1fr) 2rem;align-items:center;gap:4px 10px;margin:0 0 6px;display:grid}.answer-progress-row,.answer-progress-row dd{display:contents}.answer-progress-row dt{margin:0}.answer-progress-row dd>span{text-align:right;font-variant-numeric:tabular-nums}.answer-progress-row .progress{margin-top:0}.answer-progress-row.submitted .progress-fill{background:var(--ok)}.answer-progress-row.notStarted .progress-fill{background:var(--muted)}.phase-hint{background:#eef3fb;border-radius:8px;margin:0;padding:8px 12px}.view-controls{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.question-nav{align-items:center;gap:8px;display:inline-flex}.view-sub button.selected{border-color:var(--accent);color:var(--accent);font-weight:600}.import{border-top:1px solid var(--border);margin-top:16px;padding-top:8px}.result-kicker{color:var(--muted);margin:0}.result-title{margin:.2em 0 .6em;font-size:1.2rem;line-height:1.25}.chart{margin:0}.plot svg{max-width:100%;height:auto;display:block}.legend{flex-wrap:wrap;gap:16px;margin-top:6px;font-size:.9rem;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.swatch{border-radius:3px;width:16px;height:16px;display:inline-block}.swatch.line{width:24px;height:4px}.swatch.dashed{border-top:3px dashed;height:0;background:0 0!important}.swatch.dot{border-radius:50%}.swatch.outline{border:2px dashed;background:0 0!important}.screen{background:#fff;min-height:100vh;padding:4vh 5vw;font-size:clamp(18px,1.6vw,28px)}.screen.center{place-items:center;display:grid}.screen .muted{color:#3d424d}.screen-welcome,.screen-answering{grid-template-columns:1fr auto;align-items:center;gap:5vw;min-height:85vh;display:grid}.screen-kicker{color:var(--accent);margin:0;font-size:1.2em;font-weight:600}.screen-title{margin:.2em 0 .6em;font-size:2.6em;line-height:1.1}.screen-text{margin:.2em 0;font-size:1.3em}.screen-url{margin:.1em 0;font-size:1.8em;font-weight:700}.screen-code{letter-spacing:.15em;margin:.1em 0 .3em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:4.5em;font-weight:800}.screen-code.small{text-align:center;font-size:2em}.screen-instructions{padding-left:1.2em;font-size:1.3em}.screen-instructions li{margin-bottom:.6em}.screen-progress{max-width:900px;margin-top:1.5em}.screen-progress .progress{height:18px}.screen-closed{flex-direction:column;justify-content:center;min-height:85vh;display:flex}.screen-offline{color:var(--error);font-size:.8em;position:fixed;bottom:12px;right:16px}.screen .result-kicker{font-size:1.2em}.screen .result-title{max-width:28em;font-size:2.2em;line-height:1.15}.screen .legend{font-size:1em}.qr svg{width:100%;height:100%;display:block}.checkbox{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.checkbox input{width:20px;min-height:20px;margin:0}.progress-table th[scope=row]{color:var(--muted);font-weight:500}.inline-form .checkbox input{flex:none}.number-choice{border:none;margin:0;padding:0}.number-choice legend{margin-bottom:8px;font-weight:600}.number-grid{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.number-grid .choice{min-height:48px;padding:4px}.history{margin:0;padding:0;list-style:none}.history li{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;display:flex}
