@font-face{font-family:SUIT;font-weight:400;font-display:swap;src:url(/fonts/SUIT-Regular.woff2) format("woff2")}@font-face{font-family:SUIT;font-weight:500;font-display:swap;src:url(/fonts/SUIT-Medium.woff2) format("woff2")}@font-face{font-family:SUIT;font-weight:700;font-display:swap;src:url(/fonts/SUIT-Bold.woff2) format("woff2")}@font-face{font-family:SUIT;font-weight:800;font-display:swap;src:url(/fonts/SUIT-ExtraBold.woff2) format("woff2")}:root{--background: #f4f4f5;--button-bg: #ffffff;--button-active: #005f66;--button-shadow: 0px 3px 3px rgba(0, 0, 0, .12);--button-pressed-shadow: 0px 2px 4px rgba(0, 0, 0, .15), inset 0px 7px 10px rgba(39, 59, 79, .5);--move-page-btn-bg: #cbeaec;--text-primary: #2f2f2f;--text-secondary: #007780;--border: #008993;--error: #eb5656;--disabled: #eeeeee;--disabled-text: #bbbbbb;--muted: #929292;--progress-track: #e3eaf0;--splash-bg: linear-gradient(166.09deg, #009aa5 3.28%, #85ced4 83.27%);--stimulus-red: #ce5160;--stimulus-blue: #0071bc;font-family:SUIT,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,sans-serif;font-weight:500;letter-spacing:0;color:var(--text-primary);-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:#e4e4e7}.screen{position:relative;display:flex;flex-direction:column;max-width:480px;min-height:100%;margin:0 auto;padding:20px 20px calc(20px + env(safe-area-inset-bottom));background:var(--background);-webkit-user-select:none;user-select:none}.center{align-items:center;justify-content:center;gap:20px;text-align:center}.splash{align-items:center;justify-content:center;background:var(--splash-bg);color:#fff;text-align:center}.splash h1,.corp-logo{animation:fade-in 1s ease-out}.splash h1{margin:0;font-size:36px;font-weight:800;line-height:1.25}.corp-logo{position:absolute;bottom:calc(1.5rem + env(safe-area-inset-bottom));width:6.75rem}.button{min-height:62px;padding:16px;border:0;border-radius:16px;box-shadow:var(--button-shadow);font:inherit;font-size:20px;line-height:25px;cursor:pointer}.button:enabled:active{background:var(--button-active);box-shadow:var(--button-pressed-shadow);color:#fff}.button.large{width:100%;font-size:24px;line-height:30px}.button.primary{background:var(--button-bg);color:var(--text-primary)}.button.secondary{background:var(--move-page-btn-bg);color:var(--text-primary)}.button.select{background:var(--button-bg);color:var(--text-primary);font-weight:700;touch-action:manipulation}.button.select:active{background:var(--button-active);box-shadow:var(--button-shadow);color:#fff}.button:disabled{background:var(--disabled);color:var(--disabled-text);box-shadow:none;cursor:default}.icon-button{width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--text-primary);font-size:24px;cursor:pointer}.info-form{gap:28px;padding-top:40px}.title{margin:0 0 8px;text-align:center;font-size:30px;font-weight:700;line-height:40px}.field{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;border:0;font-size:20px;font-weight:500}.field legend{margin-bottom:10px;padding:0}.field input:not([type=radio]),.field select{flex:1;min-width:0;padding:16px 16px 15px;border:2px solid #fff;border-radius:8px;outline:none;background:#fff;color:var(--text-primary);caret-color:var(--border);font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field select{padding-right:36px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232f2f2f' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center}.field input:not([type=radio]):focus,.field select:focus{border-color:var(--border)}.row{display:flex;gap:10px}.row select{flex:1 1 0;padding-left:12px;padding-right:28px;background-position:right 10px center}.row select:first-child{flex-grow:1.4}.radio{position:relative;display:flex;flex:1;align-items:center;justify-content:center;padding:16px 16px 15px;border:2px solid #fff;border-radius:8px;background:#fff;cursor:pointer}.radio input{position:absolute;opacity:0;pointer-events:none}.radio:has(input:checked){border-color:var(--border);color:var(--text-secondary);font-weight:700}.radio:has(input:focus-visible){outline:2px solid var(--border);outline-offset:2px}.form-error{min-height:1.4em;margin:0;color:var(--error);font-size:16px;text-align:center}.intro-header,.test-header{display:flex;align-items:center;justify-content:flex-end;gap:12px}.intro-card{display:flex;flex:1;align-items:center;justify-content:center;margin:20px 0;text-align:center}.intro-card p{margin:0;font-size:30px;font-weight:500;line-height:40px}.highlight{color:var(--text-secondary);font-style:normal;font-weight:700}.chip{padding:0 12px;border-radius:8px;background:var(--border);color:#fff;font-size:.8em;font-weight:700}.ox{display:inline-flex;align-items:center;justify-content:center;width:1.3em;height:1.3em;border-radius:8px;background:var(--border);color:#fff;font-size:.8em;font-weight:700}.dots{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.dot{width:8px;height:8px;border-radius:50%;background:#d9d9d9}.dot.active{background:var(--border)}.intro-footer{display:grid;grid-template-columns:1fr 2fr;gap:10px}.progress{display:flex;flex:1;align-items:center;gap:12px}.progress-bar{flex:1;height:6px;border-radius:6px;background:var(--progress-track);overflow:hidden}.progress-fill{height:100%;border-radius:6px;background:var(--border);transition:width .2s linear}.progress-text{min-width:3.5em;color:var(--text-secondary);font-size:16px;font-weight:700;text-align:right}.test-body{display:flex;flex:1;align-items:center;justify-content:center;padding:20px 0}.wait-text{margin:0;font-size:30px;font-weight:500;line-height:40px}.wait-text small{display:block;margin-top:8px;color:var(--muted);font-size:16px;line-height:22px}.card{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border-radius:16px;background:#fff;box-shadow:var(--button-shadow)}.card img{width:90%;height:90%;object-fit:contain;-webkit-user-select:none;user-select:none}.circle{width:45%;aspect-ratio:1;border-radius:50%;box-shadow:0 0 0 4px #fff,0 0 0 7px #d9d9d9}.circle.empty{background:#fff}.circle.black{background:#000}.circle.red{background:var(--stimulus-red)}.circle.blue{background:var(--stimulus-blue)}.test-footer{min-height:72px}.ox-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ox-button{min-height:88px;border:0;border-radius:16px;background:var(--button-bg);box-shadow:var(--button-shadow);color:var(--text-primary);font:inherit;font-size:44px;font-weight:700;cursor:pointer;touch-action:manipulation}.ox-button:active{background:var(--button-active);box-shadow:var(--button-pressed-shadow);color:#fff}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:0 20px;background:#0000004d;z-index:10}.overlay-panel{width:100%;overflow:hidden;border-radius:16px;background:#fff;text-align:center;animation:fade-in .2s ease-out}.overlay-title{margin:0;padding:40px 20px;font-size:24px;font-weight:500;line-height:30px}.text-button{display:block;width:100%;padding:20px;border:0;border-top:1px solid #ddd;background:transparent;color:var(--text-secondary);font:inherit;font-size:22px;cursor:pointer}.text-button.strong{font-weight:700}.text-button:active{background:#f4f4f5}.result{justify-content:center;gap:20px}.result-card{padding:32px 20px 28px;border-radius:16px;background:#fff;box-shadow:var(--button-shadow);text-align:center;animation:fade-in .3s ease-out}.result-head{margin:0;color:var(--border);font-size:20px;font-weight:700}.face{width:104px;margin-top:24px;fill:none;stroke:var(--grade-text);stroke-width:6;stroke-linecap:round}.face .eye{fill:var(--grade-text);stroke:none}.result-title{margin:12px 0 16px;color:var(--grade-text);font-size:30px;font-weight:800;letter-spacing:-.02em}.level{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:72%;margin:0 auto}.level span{height:10px;border-radius:5px;background:#d7d7d7}.level .filled{background:linear-gradient(90deg,var(--grade-start),var(--grade-end))}.result-message{margin:20px 0 0;color:#999;font-size:18px;line-height:1.5;letter-spacing:-.02em;white-space:pre-line;word-break:keep-all}.result.caution{--grade-start: #e80000;--grade-end: #ff5656;--grade-text: #de0202}.result.warning{--grade-start: #f4440c;--grade-end: #fd8440;--grade-text: #f5450e}.result.normal{--grade-start: #00a688;--grade-end: #42c576;--grade-text: #03a788}.result.good{--grade-start: #0075e1;--grade-end: #00a3ff;--grade-text: #0179e4}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
