.language-select[data-v-a95893ae]{width:auto;min-height:40px;padding:0 var(--space-2);color:var(--ink-700);cursor:pointer;background:0 0;border-color:#0000;font-size:.9rem;font-weight:600}.language-select[data-v-a95893ae]:hover{background:var(--ink-100);border-color:var(--ink-200)}.theme-toggle[data-v-82a3e406]{color:var(--ink-700)}.app-header[data-v-08867f78]{z-index:20;height:var(--header-height);background:var(--header-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--ink-200);position:sticky;top:0}.header-inner[data-v-08867f78]{justify-content:space-between;align-items:center;gap:var(--space-4);height:100%;display:flex}.brand[data-v-08867f78]{align-items:center;gap:var(--space-2);font-family:var(--font-display);color:var(--ink-900);font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.sign-out-error[data-v-08867f78]{top:calc(100% + var(--space-2));right:var(--space-4);max-width:min(360px, calc(100% - 2 * var(--space-4)));margin:0;position:absolute}@media (width<=640px){.user-name[data-v-08867f78]{display:none}}.skip-link[data-v-3ec82f41]{left:var(--space-4);z-index:100;padding:var(--space-2) var(--space-4);background:var(--btn-primary-bg);color:var(--btn-primary-fg);border-radius:var(--radius-md);position:absolute;top:-48px}.skip-link[data-v-3ec82f41]:focus{top:var(--space-2)}.layout[data-v-3ec82f41]:focus{outline:none}.layout-stage[data-v-3ec82f41]{background:var(--stage-bg);min-height:100vh;color:var(--stage-text)}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:400 700;font-display:swap;src:local(Noto Sans Khmer),url(/assets/noto-sans-khmer-BySBHBK6.woff2)format("woff2");unicode-range:U+1780-17FF,U+19E0-19FF,U+200C-200D,U+25CC}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-display:"Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "SFMono-Regular", Consolas, monospace;--ink-900:#14131c;--ink-700:#3a3850;--ink-500:#6c6983;--ink-300:#b7b4c7;--ink-200:#dcd9e5;--ink-100:#eeecf3;--paper:#f7f6f2;--surface:#fff;--header-bg:#f7f6f2e6;--brand-navy:#123f6d;--brand-teal:#16a9b4;--brand-mint:#45e0c6;--coral-700:#c8392f;--coral-600:#e3463b;--coral-500:#ff5b4f;--coral-100:#ffe5e2;--teal-600:#0d8a7f;--teal-500:#15b1a3;--teal-100:#d7f4f0;--btn-primary-bg:#14131c;--btn-primary-hover:#3a3850;--btn-primary-fg:#fff;--danger-solid:#c22f3b;--danger-solid-hover:#a82632;--danger-solid-fg:#fff;--danger-600:#c22f3b;--danger-100:#fde3e5;--success-600:#177a4d;--success-100:#dcf3e6;--warning-600:#9a6300;--warning-100:#fff0d4;--stage-bg:#101020;--stage-surface:#1c1c33;--stage-border:#2e2e4a;--stage-text:#f6f5ff;--stage-muted:#a9a6c6;--chart-1:#ff5b4f;--chart-2:#15b1a3;--chart-3:#7b68f2;--chart-4:#f2a41f;--chart-5:#3b8cf0;--chart-6:#e8508a;--chart-7:#3fa65b;--chart-8:#b07a45;--chart-9:#19a7c8;--chart-10:#a855f7;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #14131c0f, 0 1px 1px #14131c0a;--shadow-md:0 8px 24px #14131c14, 0 2px 6px #14131c0d;--shadow-lg:0 20px 48px #14131c2e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--focus-ring:0 0 0 3px #ff5b4f66;--header-height:60px;--tap-target:44px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink-900:#f3f2f8;--ink-700:#cfccdd;--ink-500:#a29fb5;--ink-300:#706d85;--ink-200:#343243;--ink-100:#242232;--paper:#131220;--surface:#1b1a2a;--header-bg:#131220e6;--coral-700:#ff9c93;--coral-600:#ff7468;--coral-500:#ff5b4f;--coral-100:#43222a;--teal-600:#19b3a5;--teal-500:#2cc5b7;--teal-100:#10322f;--btn-primary-bg:#e9e7f3;--btn-primary-hover:#fff;--btn-primary-fg:#141320;--danger-solid:#d9455a;--danger-solid-hover:#c2374b;--danger-solid-fg:#fff;--danger-600:#ff9aa4;--danger-100:#3d1f26;--success-600:#74d9a4;--success-100:#10321f;--warning-600:#f0c164;--warning-100:#3a2d12;--shadow-sm:0 1px 2px #00000080, 0 1px 1px #00000059;--shadow-md:0 8px 24px #0000008c, 0 2px 6px #0006;--shadow-lg:0 20px 48px #000000a6}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink-900:#f3f2f8;--ink-700:#cfccdd;--ink-500:#a29fb5;--ink-300:#706d85;--ink-200:#343243;--ink-100:#242232;--paper:#131220;--surface:#1b1a2a;--header-bg:#131220e6;--coral-700:#ff9c93;--coral-600:#ff7468;--coral-500:#ff5b4f;--coral-100:#43222a;--teal-600:#19b3a5;--teal-500:#2cc5b7;--teal-100:#10322f;--btn-primary-bg:#e9e7f3;--btn-primary-hover:#fff;--btn-primary-fg:#141320;--danger-solid:#d9455a;--danger-solid-hover:#c2374b;--danger-solid-fg:#fff;--danger-600:#ff9aa4;--danger-100:#3d1f26;--success-600:#74d9a4;--success-100:#10321f;--warning-600:#f0c164;--warning-100:#3a2d12;--shadow-sm:0 1px 2px #00000080, 0 1px 1px #00000059;--shadow-md:0 8px 24px #0000008c, 0 2px 6px #0006;--shadow-lg:0 20px 48px #000000a6}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html:lang(km){--font-sans:"Noto Sans Khmer", "Khmer UI", "Khmer OS Battambang", "Khmer Sangam MN", "Segoe UI", system-ui, sans-serif;--font-display:"Noto Sans Khmer", "Khmer UI", "Khmer OS Battambang", "Khmer Sangam MN", "Segoe UI", system-ui, sans-serif}html:lang(km) body{line-height:1.75}body{min-height:100vh;font-family:var(--font-sans);color:var(--ink-900);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0;line-height:1.2}h1{font-size:clamp(1.6rem,2.5vw,2rem)}h2{font-size:1.3rem}h3{font-size:1.05rem}p{margin:0}a{color:var(--coral-700);text-underline-offset:2px}img{max-width:100%}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{box-shadow:var(--focus-ring);outline:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.container{width:min(1120px, 100% - 2 * var(--space-5));margin-inline:auto}.page{padding-block:var(--space-6) var(--space-8)}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-header p{color:var(--ink-500)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.stack-sm{gap:var(--space-2);flex-direction:column;display:flex}.cluster{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.muted{color:var(--ink-500)}.small{font-size:.875rem}.card{background:var(--surface);border:1px solid var(--ink-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);white-space:nowrap;cursor:pointer;border:1px solid #0000;font-size:.95rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s,transform 80ms;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn-accent{background:var(--coral-500);color:#fff}.btn-accent:hover:not(:disabled){background:var(--coral-600)}.btn-secondary{background:var(--surface);border-color:var(--ink-200);color:var(--ink-900)}.btn-secondary:hover:not(:disabled){border-color:var(--ink-300);background:var(--ink-100)}.btn-ghost{color:var(--ink-700);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--ink-100)}.btn-danger{background:var(--surface);border-color:var(--danger-100);color:var(--danger-600)}.btn-danger:hover:not(:disabled){background:var(--danger-100)}.btn-large{min-height:52px;padding:0 var(--space-5);border-radius:var(--radius-lg);font-size:1.05rem}.btn-block{width:100%}.btn-icon{min-width:40px;padding:0 var(--space-2)}.field{flex-direction:column;gap:6px;display:flex}.field label,.field .label{font-size:.9rem;font-weight:600}.input,.textarea,.select{background:var(--surface);border:1px solid var(--ink-200);border-radius:var(--radius-md);width:100%;min-height:44px;padding:10px 12px;transition:border-color .12s,box-shadow .12s}.textarea{resize:vertical;min-height:96px}.input:hover,.textarea:hover,.select:hover{border-color:var(--ink-300)}.input:focus,.textarea:focus,.select:focus{border-color:var(--coral-500);box-shadow:var(--focus-ring);outline:none}.input:disabled,.textarea:disabled,.select:disabled{background:var(--ink-100);color:var(--ink-500);cursor:not-allowed}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger-600)}.field-hint{color:var(--ink-500);font-size:.85rem}.field-error{color:var(--danger-600);font-size:.85rem}.checkbox{align-items:center;gap:var(--space-2);cursor:pointer;font-weight:500;display:inline-flex}.checkbox input{width:18px;height:18px;accent-color:var(--coral-500)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.95rem}.alert-error{background:var(--danger-100);color:var(--danger-600)}.alert-success{background:var(--success-100);color:var(--success-600)}.alert-warning{background:var(--warning-100);color:var(--warning-600)}.badge{border-radius:var(--radius-pill);background:var(--ink-100);color:var(--ink-700);align-items:center;gap:6px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.badge-live{background:var(--coral-100);color:var(--coral-700)}.badge-live:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite pulse}.badge-pending{background:var(--warning-100);color:var(--warning-600)}.badge-success{background:var(--success-100);color:var(--success-600)}.spinner{border:3px solid var(--ink-200);border-top-color:var(--coral-500);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}dialog{width:min(440px, 100% - 2 * var(--space-4));padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink-900);box-shadow:var(--shadow-lg);border:none}dialog::backdrop{background:#08070e99}.auth-page{min-height:calc(100vh - var(--header-height));padding:clamp(var(--space-5), 8vh, var(--space-8)) var(--space-4);place-items:start center;display:grid}.auth-card{gap:var(--space-4);width:min(440px,100%);padding:clamp(var(--space-5), 5vw, var(--space-6));flex-direction:column;display:flex}.table-wrap{padding:0;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.95rem}.data-table th,.data-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--ink-100);white-space:nowrap}.data-table th{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-500);font-size:.8rem;font-weight:700}.data-table tbody tr:last-child td{border-bottom:none}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{:root,:root[data-theme=dark]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#fff;--surface:#fff;--header-bg:#fff;--ink-900:#14131c;--ink-700:#3a3850;--ink-500:#55536a;--ink-300:#9b98ad;--ink-200:#d3d0de;--ink-100:#ededf3;--coral-700:#b8342b;--coral-600:#c8392f;--coral-100:#ffe5e2;--teal-600:#0d8a7f;--teal-100:#d7f4f0;--danger-600:#a8232f;--danger-100:#fde3e5;--success-600:#13663f;--success-100:#dcf3e6;--warning-600:#7d5100;--warning-100:#fff0d4;--shadow-sm:none;--shadow-md:none;--shadow-lg:none}@page{margin:16mm 14mm}body{color:var(--ink-900);background:#fff;font-size:11pt}.badge,.swatch,.note,.poll-results .track,.poll-results .bar,.state-icon,.status-chip{-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-header,.skip-link,.connection-banner,.presenter-controls,.page-header .cluster,.question-list .tabs,.question-list .actions,.result-list .btn,.notice{display:none!important}.page{padding-block:0}.container{width:100%;max-width:none;margin:0}.card{border:1px solid var(--ink-200);box-shadow:none;padding:var(--space-4)}.result,.question,.note,.poll-results .row{break-inside:avoid}.result+.result{margin-top:var(--space-4)}.questions,.tone-stage .questions,.tone-stage .wall{max-height:none;overflow:visible}h1{font-size:18pt}h2{font-size:13pt}a{color:inherit;text-decoration:none}}
