@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--primary-50:#eef2ff;--primary-100:#e0e7ff;--primary-500:#4338ca;--primary-600:#3730a3;--primary-700:#312e81;--success-50:#d8f5c8;--success-400:#57cc02;--success-500:#38b000;--success-600:green;--warning-50:#fff8d6;--warning-400:#ffd60a;--warning-500:#ffc300;--warning-600:#e0a800;--danger-50:#ffe5e7;--danger-400:#ff5a5f;--danger-500:#ef233c;--danger-600:#d00000;--surface-0:#fff;--surface-50:#fffdf7;--surface-100:#f5f0e6;--surface-200:#e6dfce;--surface-300:#111;--surface-500:#4a4a4a;--surface-600:#333;--surface-800:#1a1a1a;--surface-900:#000;--radius-card:4px;--radius-btn:4px;--radius-chip:4px;--shadow-card:0 0 0 2px #000, 4px 4px 0 -1px #000;--shadow-card-hover:0 0 0 2px #000, 6px 6px 0 -1px #000;--shadow-dialog:0 0 0 2px #000, 8px 8px 0 -1px #000;--shadow-btn:2px 2px 0 0 #000;--shadow-btn-hover:3px 3px 0 0 #000;--shadow-btn-active:1px 1px 0 0 #000;--border:2px solid var(--surface-300);--font:"Space Grotesk Variable", system-ui, -apple-system, "Segoe UI", "Noto Sans", Arial, sans-serif;--font-body:17px;--font-lg:22px;--touch:56px}html,body{min-height:100%}body{font-family:var(--font);font-size:var(--font-body);background:var(--surface-50);color:var(--surface-900);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;line-height:1.5}#root{flex-direction:column;min-height:100vh;display:flex}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--primary-500);outline-offset:2px}h1,h2,h3{color:var(--surface-900);font-weight:700;line-height:1.25}.survey-shell{--shell-x:12px;padding:0 var(--shell-x) 40px;flex-direction:column;flex:1;align-items:center;display:flex}.survey-header{width:calc(100% + 2 * var(--shell-x));min-height:56px;margin:0 calc(-1 * var(--shell-x)) 18px;padding:8px max(16px, calc((100% + 2 * var(--shell-x) - 640px) / 2));background:var(--primary-500);border-bottom:var(--border);align-items:center;gap:10px;display:flex}.logo-mark{border:2px solid var(--surface-0);border-radius:var(--radius-btn);width:30px;height:30px;color:var(--surface-0);flex:none;justify-content:center;align-items:center;font-size:18px;font-weight:700;line-height:1;display:inline-flex}.survey-brand{color:var(--surface-0);font-size:16px;font-weight:700}.survey-badge{background:var(--primary-50);color:var(--primary-700);border:var(--border);border-radius:var(--radius-chip);flex:none;margin-left:auto;padding:3px 10px;font-size:13px;font-weight:600}.progress{width:100%;max-width:640px;padding:0 2px 18px}.progress-label{color:var(--surface-600);justify-content:space-between;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.progress-track{border:var(--border);border-radius:var(--radius-chip);background:var(--surface-0);height:14px;overflow:hidden}.progress-fill{background:var(--primary-500);height:100%;transition:width .2s}.card{background:var(--surface-0);border-radius:var(--radius-card);width:100%;max-width:640px;box-shadow:var(--shadow-card);padding:24px 20px}.card-title{font-size:var(--font-lg);margin-bottom:8px}.card-sub{color:var(--surface-800);margin-bottom:20px;font-size:15px}.prose p{color:var(--surface-800);margin-bottom:12px;font-size:15px}.prose p strong{color:var(--surface-900);font-weight:700}.center{text-align:center}.group-label{color:var(--primary-700);border-bottom:var(--border);margin:26px 0 10px;padding-bottom:6px;font-size:14px;font-weight:700}.item{border-bottom:2px solid var(--surface-200);padding:16px 0}.item:last-of-type{border-bottom:none}.item-head{gap:10px;margin-bottom:12px;display:flex}.item-code{border:var(--border);border-radius:var(--radius-chip);background:var(--primary-50);min-width:38px;height:26px;color:var(--primary-700);flex:none;justify-content:center;align-items:center;padding:0 6px;font-size:13px;font-weight:700;display:inline-flex}.item-prompt{font-size:16px;font-weight:600}.item-helper{color:var(--surface-600);margin:-6px 0 10px 48px;font-size:14px}.item-hint{color:var(--surface-600);margin-top:10px;font-size:13px}.option-btn{width:100%;min-height:var(--touch);border:var(--border);border-radius:var(--radius-btn);box-shadow:var(--shadow-btn);background:var(--surface-0);text-align:left;align-items:center;gap:12px;margin-bottom:10px;padding:12px 14px;font-size:16px;font-weight:500;transition:background .15s;display:flex}.option-btn:last-child{margin-bottom:0}.option-btn.selected{background:var(--primary-500);color:var(--surface-0);font-weight:600}.option-btn:disabled{opacity:.45;box-shadow:none}.option-btn:not(:disabled):active{box-shadow:var(--shadow-btn-active);transform:translate(1px,1px)}@media (hover:hover){.option-btn:not(:disabled):hover{background:var(--surface-100);box-shadow:var(--shadow-btn-hover)}.option-btn.selected:not(:disabled):hover{background:var(--primary-600)}}.mark{border:var(--border);background:var(--surface-0);width:22px;height:22px;color:var(--primary-500);flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:700;line-height:1;display:inline-flex}.mark.radio{border-radius:50%}.mark.check{border-radius:var(--radius-chip)}.scale-row{flex-wrap:wrap;gap:8px;display:flex}.scale-row .option-btn{text-align:center;flex:60px;justify-content:center;width:auto;margin:0;padding:8px 4px;font-size:15px;line-height:1.2}.legend{color:var(--surface-800);background:var(--primary-50);border:var(--border);border-radius:var(--radius-card);grid-template-columns:auto 1fr;gap:2px 10px;margin-bottom:8px;padding:10px 14px;font-size:14px;display:grid}.legend b{color:var(--primary-700);font-weight:700}.field{margin-top:10px}.field label{color:var(--surface-800);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.field input,.field textarea{border:var(--border);border-radius:var(--radius-btn);background:var(--surface-0);width:100%;min-height:50px;padding:10px 14px;font-size:16px}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field textarea:focus{border-color:var(--primary-500);box-shadow:3px 3px 0 0 var(--primary-500);outline:none}.counter{color:var(--surface-600);text-align:right;margin-top:4px;font-size:12px}.code-input{text-align:center;letter-spacing:4px;text-transform:uppercase;font-variant-numeric:tabular-nums;font-weight:700;font-size:26px!important}.readonly{border:var(--border);border-radius:var(--radius-btn);background:var(--surface-100);min-height:50px;color:var(--surface-900);align-items:center;padding:10px 14px;font-weight:600;display:flex}.check-row{border:var(--border);border-radius:var(--radius-btn);cursor:pointer;align-items:flex-start;gap:12px;margin-bottom:10px;padding:12px;font-size:15px;display:flex}.check-row input{width:20px;height:20px;accent-color:var(--primary-500);flex:none;margin-top:2px}.check-row.checked{background:var(--primary-50);box-shadow:var(--shadow-btn)}.actions{flex-direction:column;gap:12px;margin-top:22px;display:flex}.actions-row{gap:12px;display:flex}.actions-row>*{flex:1}.btn-primary,.btn-outline{width:100%;min-height:var(--touch);border:var(--border);border-radius:var(--radius-btn);box-shadow:var(--shadow-btn);padding:0 16px;font-size:16px;font-weight:600;transition:background .15s}.btn-primary:not(:disabled):active,.btn-outline:not(:disabled):active{box-shadow:var(--shadow-btn-active);transform:translate(1px,1px)}.btn-primary{background:var(--primary-500);color:var(--surface-0)}.btn-primary:disabled{background:var(--surface-200);color:var(--surface-600);box-shadow:none}.btn-primary:not(:disabled):active{background:var(--primary-700)}.btn-outline{background:var(--surface-0);color:var(--surface-800)}.btn-outline:disabled{opacity:.5;box-shadow:none}@media (hover:hover){.btn-primary:not(:disabled):hover{background:var(--primary-600);box-shadow:var(--shadow-btn-hover)}.btn-outline:not(:disabled):hover{background:var(--surface-100);box-shadow:var(--shadow-btn-hover)}}.link-btn{color:var(--surface-600);align-self:center;padding:10px;font-size:14px;font-weight:500;text-decoration:underline}.notice{border:var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-btn);color:var(--surface-900);margin-top:16px;padding:14px;font-size:15px}.notice.warn{background:var(--warning-50)}.notice.error{background:var(--danger-50)}.notice .actions{margin-top:12px}.error-text{color:var(--danger-600);margin-top:8px;font-size:14px;font-weight:600}.warn-text{background:var(--warning-400);width:fit-content;color:var(--surface-900);padding:0 6px;font-weight:600}.icon-box{border-radius:var(--radius-card);width:68px;height:68px;box-shadow:var(--shadow-card);background:var(--primary-50);color:var(--primary-600);justify-content:center;align-items:center;margin:4px auto 22px;font-size:32px;font-weight:700;display:flex}@media (width<=400px){.card{padding:18px 14px}.survey-shell{--shell-x:10px;padding-bottom:32px}}
