:root{color:#172033;font-feature-settings:"palt";font-synthesis:none;text-rendering:optimizelegibility;background:#e8edf1;font-family:Helvetica Neue,Yu Gothic UI,Hiragino Sans,BIZ UDPGothic,Meiryo,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}.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}body{background:#f6fbff;min-width:320px;min-height:100vh;margin:0}@keyframes page-rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,select,input{min-height:42px}button{color:#172033;cursor:pointer;background:#fff;border:1px solid #c3ced8;border-radius:8px}button:hover{border-color:#6f8fa8}button:disabled,input:disabled,select:disabled{cursor:not-allowed}button:disabled{color:#738493;background:#edf2f5}button:focus-visible,select:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #8cc8ff}.home-shell{color:#071f49;background:linear-gradient(#fff 0%,#f7fbff 58%,#eef6ff 100%);gap:28px;min-height:100vh;padding:14px;display:grid}.home-nav{justify-content:space-between;align-items:center;gap:12px;width:min(100%,1120px);margin:0 auto;padding:6px 0;display:flex}.brand-mark{align-items:center;gap:9px;min-width:0;display:inline-flex}.brand-mark img{object-fit:cover;border:1px solid #d8e8fa;border-radius:8px;width:46px;height:46px}.brand-mark span{gap:1px;min-width:0;display:grid}.brand-mark strong{color:#08275d;font-size:1.18rem;line-height:1.1}.brand-mark small{color:#2470c4;font-size:.72rem;font-weight:800}.brand-mark em{color:#0b4e75;background:#f8fcff;border:1px solid #cde2f5;border-radius:999px;flex:none;padding:5px 8px;font-size:.72rem;font-style:normal;font-weight:900}.home-nav nav{color:#355274;align-items:center;gap:14px;font-size:.88rem;font-weight:800;display:none}.home-hero,.home-section,.education-note,.home-footer{width:min(100%,1120px);margin:0 auto}.home-content-layout{gap:28px;width:min(100%,1120px);margin:0 auto;display:grid}.home-main-flow{gap:28px;min-width:0;display:grid}.category-sidebar{display:none}.home-hero{align-items:center;gap:22px;padding:16px 0 4px;display:grid}.home-hero-copy{gap:16px;animation:.52s both page-rise-in;display:grid}.home-eyebrow{color:#216d7a;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:900}.home-hero h1{color:#061d49;letter-spacing:0;max-width:720px;margin:0;font-size:clamp(2.35rem,13vw,4.4rem);line-height:1.08}.home-lead{color:#263b57;max-width:700px;margin:0;font-size:1.02rem;line-height:1.78}.home-actions{gap:10px;display:grid}.home-button,.open-sim-button,.footer-links a{border:1px solid #1665c1;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:54px;font-weight:900;display:inline-flex}.home-button svg,.open-sim-button svg,.footer-links svg{flex:none;width:21px;height:21px}.home-button-primary{color:#fff;background:#073d8f;box-shadow:0 14px 28px #073d8f33}.home-button-secondary{color:#06469b;background:#fff}.hero-visual{display:none}.hero-device{background:linear-gradient(90deg,#1d71ca12 1px,#0000 1px) 0 0/30px 30px,linear-gradient(#fff,#eaf6ff);border:1px solid #d8e8fa;border-radius:8px;place-items:center;min-height:330px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 44px #184c871f}.hero-device img{filter:drop-shadow(0 18px 26px #052a5f33);border-radius:8px;width:min(64%,250px)}.hero-eye-line{gap:8px;width:108px;display:grid;position:absolute;bottom:34px;right:34px}.hero-eye-line span{background:#83bff4;border-radius:999px;height:5px;display:block}.hero-eye-line span:nth-child(2){width:74%}.hero-eye-line span:nth-child(3){width:48%}.home-section{gap:14px;display:grid}.favorite-section{gap:12px}.section-title-row{justify-content:space-between;align-items:end;gap:12px;display:flex}.section-title-row h2,.education-note h2{color:#071f49;margin:0;font-size:1.34rem}.section-title-row>svg{color:#0b63c7;width:28px;height:28px}.available-card{background:#fff;border:1px solid #d7e6f7;border-radius:8px;gap:14px;padding:14px;animation:.52s both page-rise-in;display:grid;box-shadow:0 14px 30px #194c871a}.favorite-card{background:#fff;border:1px solid #bdd8f1;border-radius:8px;gap:14px;padding:14px;animation:.52s both page-rise-in;display:grid;box-shadow:0 18px 34px #194c871f}.available-card:nth-child(2){animation-delay:80ms}.available-list{gap:12px;display:grid}.available-thumb{background:#eaf4ff;border-radius:8px;place-items:center;min-height:170px;display:grid;position:relative;overflow:hidden}.available-thumb-screenshot{background:linear-gradient(90deg,#1d71ca12 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#fff,#eaf6ff);align-items:stretch}.available-thumb-screenshot img{object-fit:cover;object-position:center;width:100%;height:100%;transform:scale(1.02)}.available-thumb-oct{background:linear-gradient(90deg,#1d71ca12 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#fff,#eaf6ff)}.available-thumb-oct img{object-fit:contain;filter:drop-shadow(0 14px 22px #071f4929);padding:18px;transform:none}.available-thumb svg{color:#07509f;filter:none;width:124px;height:124px}.available-thumb span{background:#08275d;border:1px solid #08275d;border-radius:8px;width:56px;height:94px;position:absolute;bottom:18px}.available-thumb-fundus{background:radial-gradient(circle at 54%,#f6b35d 0 12%,#c75327 35%,#692a1d 61%,#12233d 100%),#eaf4ff}.available-thumb-fundus svg{color:#fff;opacity:.88}.available-thumb-fundus span{background:radial-gradient(circle,#111827 0 28%,#1d6e83 29% 52%,#fff 54% 100%);border-color:#ffffffb8;border-radius:50%;width:84px;height:84px;box-shadow:0 14px 24px #05224a33}.available-copy{gap:8px;display:grid}.status-pill{color:#06469b;background:#e5f2ff;border-radius:8px;width:fit-content;margin:0;padding:5px 9px;font-size:.78rem;font-weight:900}.available-copy h3,.planned-card h3{color:#071f49;margin:0;font-size:1.1rem}.available-copy p:not(.status-pill){color:#344b68;margin:0;line-height:1.7}.open-sim-button{color:#fff;background:#073d8f;min-height:48px}.planned-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.planned-card{background:#fff;border:1px solid #d7e6f7;border-radius:8px;align-content:start;gap:9px;min-width:0;padding:13px;display:grid;box-shadow:0 10px 24px #194c8714}.planned-card>svg{color:#0b63c7;filter:none;width:28px;height:28px}.planned-card ul{color:#344b68;gap:4px;margin:0;padding-left:1.1em;font-size:.88rem;line-height:1.45;display:grid}.planned-card span{color:#216d7a;background:#e1f5f5;border-radius:8px;width:fit-content;margin-top:4px;padding:5px 9px;font-size:.78rem;font-weight:900}.education-note{background:#f3f9ff;border:1px solid #b9dbff;border-radius:8px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px;display:grid}.education-note>svg{color:#0b63c7;filter:none;width:34px;height:34px}.education-note p{color:#263b57;margin:8px 0 0;line-height:1.7}.home-footer{border-top:1px solid #d7e6f7;gap:14px;padding:18px 0 22px;display:grid}.home-footer>div:first-child{gap:4px;display:grid}.home-footer strong{font-size:1.05rem}.home-footer span{color:#49617d;font-size:.9rem}.footer-links{gap:12px;display:grid}.footer-links a{color:#06469b;background:#fff;justify-content:space-between;min-height:48px;padding:0 12px}.footer-contact-card{background:#fff;border:1px solid #d7e6f7;border-radius:8px;gap:10px;padding:14px;display:grid;box-shadow:0 12px 24px #194c8714}.footer-contact-heading{align-items:center;gap:8px;display:flex}.footer-contact-heading svg{color:#0b63c7;filter:none;width:21px;height:21px}.footer-contact-heading h2{color:#071f49;margin:0;font-size:1rem}.footer-contact-card p{color:#344b68;margin:0;font-size:.92rem;line-height:1.65}.footer-contact-card .footer-contact-note{color:#6f2430;font-size:.86rem}.footer-contact-card a span{color:inherit;font-size:.9rem}.app-shell{color:#071f49;background:linear-gradient(#fff 0%,#f8fbff 54%,#eef7ff 100%);gap:14px;width:100%;min-height:100vh;margin:0 auto;padding:12px;display:grid}.app-top-link,.app-header,.view-tabs,.mobile-order{width:min(100%,1120px);margin:0 auto}.app-top-link{padding-top:2px}.app-header{align-items:end;gap:10px;animation:.46s both page-rise-in;display:grid}.app-title-block{gap:9px;display:grid}.app-title-block p:not(.eyebrow){color:#263b57;margin-bottom:0;line-height:1.7}.usage-disclosure{justify-items:start;gap:8px;display:grid}.usage-toggle{color:#06469b;background:#fff;border-color:#b9d7ef;align-items:center;gap:8px;min-height:40px;padding:0 13px;font-size:.9rem;font-weight:900;display:inline-flex}.usage-toggle svg{filter:none;width:18px;height:18px;max-height:none}.usage-panel{color:#243b58;background:#f8fcff;border:1px solid #cde2f5;border-radius:8px;margin:0;padding:11px 12px;font-size:.9rem;font-weight:700;line-height:1.65}.usage-panel ul{gap:7px;margin:0;padding-left:1.1em;display:grid}.usage-panel li{padding-left:2px}.eyebrow{color:#216d7a;text-transform:uppercase;margin:0 0 4px;font-size:.76rem;font-weight:900}h1,h2,h3,p{margin-top:0}h1{color:#061d49;margin-bottom:0;font-size:2.15rem;line-height:1.02}h2{margin-bottom:0;font-size:1.05rem}h3{color:#4b6072;margin-bottom:6px;font-size:.82rem;line-height:1.2}.mobile-order{gap:12px;display:grid}.view-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.view-tabs button{color:#0b4e75;background:#f8fbff;border-color:#bfd6ee;min-width:0;padding:0 10px;font-weight:900}.stage{background:linear-gradient(90deg,#1d71ca12 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#fff,#f0f8ff);border:1px solid #d7e6f7;border-radius:8px;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);align-items:center;min-height:260px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 30px #194c871a}.stage-tap-zone{z-index:5;background:0 0;border:0;border-radius:8px;min-height:0;padding:0;position:absolute}.stage-tap-zone:hover{background:#216d7a12;border:0}.tap-zone-right{inset:18px 54% 86px 12px}.tap-zone-left{inset:18px 12px 86px 54%}.tap-zone-home{height:78px;bottom:8px;left:34%;right:34%}.eye-unit{place-items:center;min-width:0;min-height:174px;display:grid;position:relative}.eye-label{z-index:3;color:#42586a;background:#fff;border:1px solid #c5d0da;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:800;display:grid;position:absolute;top:8px;left:8px}svg{filter:drop-shadow(0 12px 16px #25323d29);width:min(100%,220px);max-height:170px;overflow:visible}.sclera{fill:#fffefa;stroke:#8192a1;stroke-width:5px}.iris{fill:#357f8b}.pupil{fill:#111827}.catchlight{fill:#fff;opacity:.96}.fixation-target{place-items:center;width:34px;height:70px;display:grid}.fixation-target span{width:28px;height:28px;position:relative}.fixation-target span:before,.fixation-target span:after{content:"";background:#d43d4f;position:absolute}.fixation-target span:before{width:24px;height:3px;top:12px;left:2px}.fixation-target span:after{width:3px;height:24px;top:2px;left:12px}.occluder{z-index:4;opacity:1;pointer-events:none;place-items:center;width:clamp(118px,24vw,164px);height:clamp(136px,25vw,184px);transition:left .17s cubic-bezier(.18,.82,.22,1),top .17s cubic-bezier(.18,.82,.22,1),transform .17s cubic-bezier(.18,.82,.22,1);display:grid;position:absolute;top:calc(100% - 4px);left:50%;transform:translate(-50%,-50%)scale(.66)}.occluder-position-right{top:52%;left:25%;transform:translate(-50%,-50%)}.occluder-position-left{top:52%;left:75%;transform:translate(-50%,-50%)}.occluder span{border:1px solid #52616f;border-radius:8px;width:100%;height:100%;box-shadow:0 18px 28px #202d3940}.occluder-opaque span{background:#020617;border-color:#111827}.occluder-translucent span{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#ffffff47,#6074842e),#dae8f03d;border-color:#2e3f4e7a;box-shadow:0 18px 28px #202d3924,inset 0 0 18px #ffffff47}.panel,.timeline{background:#fff;border:1px solid #d7e6f7;border-radius:8px;box-shadow:0 14px 30px #194c871a}.panel{gap:12px;padding:14px;display:grid}.panel,.timeline{animation:.52s both page-rise-in}.panel-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.case-groups{gap:12px;display:grid}.case-group{gap:4px;display:grid}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.case-button{white-space:normal;align-content:center;gap:2px;min-width:0;min-height:58px;padding:7px 6px;font-weight:800;line-height:1.18;display:grid}.case-name,.case-abbr{overflow-wrap:anywhere;min-width:0;display:block}.case-name{font-size:.82rem}.case-abbr{color:#12263a;font-size:.92rem}.is-selected,button[aria-pressed=true]{color:#0e3f48;background:#dff2f3;border-color:#216d7a}.field{color:#45596a;gap:6px;font-size:.88rem;font-weight:700;display:grid}.field select,.field input{color:#172033;background:#fff;border:1px solid #c3ced8;border-radius:8px;width:100%;padding:0 10px}.field select:disabled{color:#748696;background:#edf2f5}.field.compact{min-width:0}.check-field{color:#45596a;align-items:center;gap:9px;min-height:42px;font-size:.88rem;font-weight:800;display:flex}.check-field input{accent-color:#216d7a;width:20px;height:20px;min-height:20px}.check-field:has(input:disabled){color:#748696}.segmented,.mode-tabs,.speed-control{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.occluder-mode,.mode-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented button,.mode-tabs button,.speed-control button{min-width:0;padding:0 6px;font-size:.84rem;font-weight:800}.control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.control-grid button{white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-width:0;padding:0 8px;font-weight:800;display:inline-flex}.quiz-panel{align-content:start}.quiz-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.quiz-actions button{min-width:0;padding:0 8px;font-weight:800}.primary-action{color:#fff;background:#216d7a;border-color:#216d7a}.primary-action:hover{background:#174f58;border-color:#174f58}.quiz-result{background:#eef3f6;border:1px solid #b9c7d2;border-radius:8px;gap:4px;padding:11px;line-height:1.45;display:grid}.quiz-result strong{font-size:1.05rem}.quiz-result span{color:#304251;font-weight:700}.quiz-result-correct{background:#e5f5ec;border-color:#75a98e}.quiz-result-wrong{background:#faeaec;border-color:#ca9398}.cover-position-readout{color:#42586a;background:#eef3f6;border:1px solid #c3ced8;border-radius:8px;place-items:center;min-height:42px;padding:0 8px;font-weight:800;display:grid}.prism-placeholder{background:#eef5f6;border:1px dashed #aab8c5;border-radius:8px;gap:10px;padding:12px;display:grid}.panel-subhead{justify-content:space-between;align-items:center;gap:8px;font-weight:800;display:flex}.panel-subhead small{color:#5c6f80;font-size:.74rem}.toggle{align-items:center;gap:8px;font-weight:700;display:flex}.toggle input{width:20px;height:20px;min-height:20px}.prism-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.status-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.status-list div{background:#eef3f6;border-radius:8px;gap:2px;padding:10px;display:grid}.status-list span{color:#536779;font-size:.75rem;font-weight:800}.status-list strong{font-size:.9rem}.case-description,.explanation-text,.note{margin-bottom:0;line-height:1.62}.case-description{color:#304251}.explanation-text{font-weight:700}.note{color:#375f6a;font-size:.88rem}.timeline{z-index:4;gap:10px;padding:10px;display:grid;position:sticky;bottom:0}.timeline-main{grid-template-columns:42px 42px minmax(72px,1fr);align-items:center;gap:8px;display:grid}.icon-button{place-items:center;width:42px;padding:0;display:grid}.timeline-track{background:#d6e0e7;border-radius:999px;height:10px;position:relative;overflow:hidden}.timeline-track span{border-radius:inherit;background:#216d7a;transition:width .18s;position:absolute;inset:0 auto 0 0}.timeline output{color:#44596a;grid-column:1/-1;font-size:.86rem;font-weight:800}.fundus-shell{color:#071f49;background:linear-gradient(#fff 0%,#f8fbff 54%,#eef7ff 100%);gap:16px;min-height:100vh;padding:12px;display:grid}.fundus-header,.fundus-workbench{width:min(100%,1120px);margin:0 auto}.fundus-header{gap:14px;animation:.46s both page-rise-in;display:grid}.fundus-title-block{gap:9px;display:grid}.fundus-title-block h1{color:#061d49;letter-spacing:0;font-size:clamp(2rem,10vw,3.8rem)}.fundus-title-block p:not(.home-eyebrow){color:#263b57;margin-bottom:0;line-height:1.7}.fundus-back-link{color:#06469b;background:#fff;border:1px solid #b9d7ef;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:fit-content;min-height:44px;padding:0 14px;font-weight:900;display:inline-flex;box-shadow:0 10px 20px #194c8714}.fundus-back-link svg{filter:none;width:18px;height:18px;max-height:none}.fundus-quiz-shell .fundus-title-block h1{font-size:clamp(2rem,9vw,3.65rem)}.fundus-workbench{gap:12px;display:grid}.fundus-card{background:#fff;border:1px solid #d7e6f7;border-radius:8px;gap:12px;min-width:0;padding:14px;animation:.52s both page-rise-in;display:grid;box-shadow:0 14px 30px #194c871a}.fundus-stage-card{gap:14px;overflow:hidden}.fundus-quiz-question{background:linear-gradient(#f8fcff,#edf7ff);border:1px solid #cde2f5;border-radius:8px;gap:12px;padding:12px;display:grid}.fundus-quiz-question h2{color:#071f49;font-size:clamp(1.12rem,5vw,1.55rem);line-height:1.45}.fundus-quiz-question>span{color:#0b4e75;background:#dff2f3;border-radius:999px;width:fit-content;padding:6px 10px;font-size:.78rem;font-weight:900}.fundus-stage-toolbar{gap:10px;display:grid}.fundus-eye-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fundus-eye-switch button,.fundus-view-mode-switch button,.fundus-reset-button,.fundus-preset-grid button{min-width:0;padding:0 10px;font-weight:900}.fundus-view-mode-switch{background:linear-gradient(#f6fbff,#eaf4ff);border:1px solid #bfd6ee;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;display:grid}.fundus-view-mode-switch button{color:#0b4e75;background:0 0;border-color:#0000;min-height:46px}.fundus-view-mode-switch button:hover{background:#fff;border-color:#8fb8d6}.fundus-view-mode-switch button.is-selected{color:#fff;background:#06469b;border-color:#06469b;box-shadow:0 8px 16px #06469b33}.fundus-reset-button{color:#06469b;background:#f8fbff;justify-content:center;align-items:center;gap:7px;display:inline-flex}.fundus-reset-button svg,.fundus-card-heading svg{filter:none;width:22px;height:22px}.fundus-target-pad{touch-action:none;background-color:#f7fbff;background-image:linear-gradient(90deg,#206f7c1a 1px,#0000 1px),linear-gradient(#206f7c1a 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:36px 36px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #cde2f5;border-radius:8px;place-items:center;height:clamp(150px,43vw,220px);display:grid;position:relative;overflow:hidden}.fundus-target-pad:before,.fundus-target-pad:after{content:"";background:#8ab9d9;position:absolute}.fundus-target-pad:before{width:1px;height:72%}.fundus-target-pad:after{width:72%;height:1px}.fundus-target-cross{z-index:2;color:#0b8295;cursor:grab;-webkit-user-select:none;user-select:none;background:#fff;border:3px solid #e6f5fb;border-radius:50%;place-items:center;width:68px;height:68px;transition:transform .15s;display:grid;position:relative;box-shadow:0 12px 24px #09486e29,inset 0 0 0 1px #bfe7ef}.fundus-target-cross:before,.fundus-target-cross:after{content:"";background:#0b8295;position:absolute}.fundus-target-cross:before{border-radius:999px;width:29px;height:4px}.fundus-target-cross:after{border-radius:999px;width:4px;height:29px}.fundus-target-cross span{color:#fff;background:#1598a8;border-radius:999px;width:max-content;padding:5px 9px;font-size:.76rem;font-weight:900;position:absolute;top:-31px}.fundus-fixation-target{z-index:8;cursor:grab;touch-action:none;will-change:transform;background:#d92634;border:3px solid #fff;border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #d926346b,0 10px 18px #071f492e}.fundus-fixation-target:active{cursor:grabbing}.fundus-fixation-target:after{content:"";opacity:.85;background:#fff;border-radius:50%;position:absolute;inset:6px}.fundus-fixation-target:focus-visible{outline-offset:4px;outline:3px solid #8cc8ff}.fundus-camera-layer{z-index:7;pointer-events:none;perspective:760px;perspective-origin:50% 46%;position:absolute;inset:0}.fundus-camera-orbit{filter:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.fundus-camera-orbit marker path{fill:#0b8ea2;opacity:.48}.fundus-camera-orbit-path{fill:none;stroke:#0b8ea2;stroke-width:3px;stroke-dasharray:8 11;stroke-linecap:round;opacity:.36}.fundus-camera-model{--camera-width:clamp(86px, 17vw, 118px);--camera-height:clamp(68px, 13vw, 92px);--camera-depth:clamp(42px, 8vw, 58px);width:var(--camera-width);height:var(--camera-height);transform-origin:50%;transform-style:preserve-3d;will-change:transform;transition:transform .16s;display:block;position:absolute;top:50%;left:50%}.fundus-camera-3d{width:100%;height:100%;transform-style:preserve-3d;position:relative}.fundus-camera-face{backface-visibility:visible;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:linear-gradient(145deg,#ffffffa8,#c5dbe861),linear-gradient(90deg,#1d879d2e,#ffffff42);border:1px solid #2a4c697a;border-radius:8px;display:block;position:absolute;box-shadow:inset 0 1px #ffffffb3,inset 0 -12px 20px #20465f24}.fundus-camera-face-front,.fundus-camera-face-back{inset:0}.fundus-camera-face-front{transform:translateZ(calc(var(--camera-depth) / 2));background:radial-gradient(circle at 50% 52%,#ffffff57 0 34%,#0000 35%),linear-gradient(145deg,#ffffffbd,#b3cddb70)}.fundus-camera-face-back{transform:rotateY(180deg) translateZ(calc(var(--camera-depth) / 2));background:radial-gradient(circle,#14324429 0 32%,#0000 33%),linear-gradient(145deg,#daebf394,#759db352)}.fundus-camera-face-left,.fundus-camera-face-right{left:calc(50% - var(--camera-depth) / 2);width:var(--camera-depth);height:var(--camera-height);background:linear-gradient(#eaf6fb8a,#7ea4b857),linear-gradient(90deg,#ffffff52,#005e7d2e);top:0}.fundus-camera-face-left{transform:rotateY(-90deg) translateZ(calc(var(--camera-width) / 2))}.fundus-camera-face-right{transform:rotateY(90deg) translateZ(calc(var(--camera-width) / 2))}.fundus-camera-face-top,.fundus-camera-face-bottom{left:0;top:calc(50% - var(--camera-depth) / 2);width:var(--camera-width);height:var(--camera-depth);background:linear-gradient(90deg,#ffffff8a,#7ea4b84d),linear-gradient(#087e9d24,#ffffff38)}.fundus-camera-face-top{transform:rotateX(90deg) translateZ(calc(var(--camera-height) / 2))}.fundus-camera-face-bottom{transform:rotateX(-90deg) translateZ(calc(var(--camera-height) / 2))}.fundus-camera-eyepiece{aspect-ratio:1;background:radial-gradient(circle at 53% 52%,#b7509d 0 9%,#24283d 10% 24%,#0e1420 25% 43%,#65717d 44% 61%,#151923 62% 100%);border:3px solid #ffffffc7;border-radius:50%;width:26%;position:absolute;top:28%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #222b347a,inset 0 0 8px #ffffff52}.fundus-camera-objective{aspect-ratio:1;background:radial-gradient(circle at 48%,#2544575c 0 32%,#0d1a2670 33% 58%,#b1d1de57 59% 100%);border:3px solid #ffffffb3;border-radius:50%;width:36%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #1f42594d,inset 0 0 8px #ffffff47}.fundus-camera-label{color:#112f4bb3;letter-spacing:0;text-align:center;width:max-content;max-width:88%;font-size:.6rem;font-weight:900;line-height:1.15;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.fundus-camera-ghost{opacity:.26}.fundus-camera-active{opacity:.76;z-index:2;cursor:grab;pointer-events:auto;touch-action:none}.fundus-camera-active:active{cursor:grabbing}.fundus-camera-active:focus-visible{outline-offset:4px;outline:3px solid #8cc8ff}.frontal-eye{touch-action:none;background:radial-gradient(circle at 50% 48%,#aadae84d 0 28%,#0000 29%),linear-gradient(#fff,#f1f8ff);border-radius:8px;place-items:center;min-height:clamp(300px,72vw,510px);display:grid;position:relative;overflow:hidden}.fundus-quiz-eye{min-height:clamp(330px,78vw,520px)}.fundus-quiz-eye .fundus-camera-layer{pointer-events:none}.fundus-quiz-camera-orbit .fundus-camera-orbit-path{stroke-width:4px;opacity:.5}.fundus-quiz-camera-orbit marker path{opacity:.62}.fundus-quiz-camera-ghost{opacity:.32}.fundus-quiz-eye .fundus-camera-active{pointer-events:auto}.frontal-eye[data-camera-enabled=true][data-camera-mode=vertical][data-eye=right] .sclera-shell{transform:perspective(700px)rotateY(-7deg)skewY(.6deg)}.frontal-eye[data-camera-enabled=true][data-camera-mode=vertical][data-eye=left] .sclera-shell{transform:perspective(700px)rotateY(7deg)skewY(-.6deg)}.face-cue{z-index:6;color:#183d61;filter:drop-shadow(0 10px 14px #1d56861f);background:0 0;border:0;width:76px;height:88px;display:block;position:absolute;overflow:visible}.face-cue img{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block}.face-cue.is-left{left:10px}.face-cue.is-right{right:10px}.face-cue-ear{top:15%}.face-cue-ear.looks-left img{transform:scaleX(-1)}.face-cue-ear.looks-right img{transform:none}.face-cue-nose{z-index:5;width:118px;height:138px;top:70%;overflow:hidden;transform:translateY(-50%)}.face-cue-nose.is-right{right:-1px}.face-cue-nose.is-left{left:-1px}.face-cue-nose.is-right img{transform:translate(48%)}.face-cue-nose.is-left img{transform:translate(-48%)}.fundus-retina-labels{z-index:9;pointer-events:none;position:absolute;inset:12px 18px}.fundus-retina-label{color:#0b4e75;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#ffffffd1;border:1px solid #b9d7ef;border-radius:999px;min-width:54px;padding:5px 8px;font-size:.74rem;font-weight:900;line-height:1.15;transition:color .15s,background .15s,border-color .15s,transform .15s;position:absolute;box-shadow:0 8px 16px #071f4914}.fundus-retina-label[data-region=top-left]{top:8%;left:20%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=top]{top:4%;left:50%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=top-right]{top:8%;left:80%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=left]{top:48%;left:7%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=right]{top:48%;left:93%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=bottom-left]{top:92%;left:20%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=bottom]{top:96%;left:50%;transform:translate(-50%,-50%)}.fundus-retina-label[data-region=bottom-right]{top:92%;left:80%;transform:translate(-50%,-50%)}.fundus-retina-label[data-active=true]{color:#fff;background:#0b8295;border-color:#0b8295;transform:translate(-50%,-50%)scale(1.06)}.sclera-shell{z-index:2;background:radial-gradient(circle,#fff 0 32%,#f7fcfff0 52%,#e9f3fb 100%);border:1px solid #cdd7df;border-radius:50%;place-items:center;width:min(96%,650px);height:clamp(260px,52vw,360px);transition:transform .16s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 18px 24px #071f4914,inset 0 -18px 26px #071f491a,0 18px 32px #194c8724}.fundus-overlay{z-index:2;border-radius:inherit;opacity:1;pointer-events:none;--pupil-hole:clamp(82px, 20vw, 140px);-webkit-mask:radial-gradient(circle at calc(50% + var(--pupil-x,0px)) calc(50% + var(--pupil-y,0px)), transparent 0 var(--pupil-hole), #000 calc(var(--pupil-hole) + 2px));-webkit-mask:radial-gradient(circle at calc(50% + var(--pupil-x,0px)) calc(50% + var(--pupil-y,0px)), transparent 0 var(--pupil-hole), #000 calc(var(--pupil-hole) + 2px));mask:radial-gradient(circle at calc(50% + var(--pupil-x,0px)) calc(50% + var(--pupil-y,0px)), transparent 0 var(--pupil-hole), #000 calc(var(--pupil-hole) + 2px));transition:opacity .15s;position:absolute;inset:0;overflow:hidden}.fundus-overlay[data-visible=false]{opacity:0}.iris-window{z-index:4;aspect-ratio:1;will-change:transform;background:radial-gradient(circle at 48% 48%,#b85a31 0 35%,#974024 62%,#652819 100%);border:4px solid #fff;border-radius:50%;place-items:center;width:clamp(138px,38vw,250px);transition:transform .15s;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 10px #5992a033,0 16px 28px #02081738,inset 0 0 36px #00000070}.iris-window:after{z-index:4;content:"";pointer-events:none;border-radius:inherit;background:radial-gradient(circle,#0000 0 58%,#0000006b 100%);position:absolute;inset:0}.fundus-pan-layer{z-index:1;transform-origin:50%;will-change:transform;background:radial-gradient(circle at 46% 48%,#b7512a 0 36%,#9c4426 58%,#7e341f 78%,#642818 100%);border-radius:50%;width:min(98vw,600px);height:min(98vw,600px);transition:transform .15s;display:block;position:absolute;top:50%;left:50%;overflow:hidden}.fundus-pan-layer img{object-fit:cover;width:100%;height:100%}.fundus-pan-layer.faint{opacity:.1;background:0 0;-webkit-mask:radial-gradient(circle,#000 0 56%,#00000085 66%,#0000 78%);mask:radial-gradient(circle,#000 0 56%,#00000085 66%,#0000 78%)}.fundus-pan-layer.faint img{opacity:1}.mirror-x{transform:scaleX(-1)}.fundus-pan-layer[data-view-mode=indirect] img{transform:rotate(180deg)}.fundus-pan-layer[data-view-mode=indirect] img.mirror-x{transform:scaleX(-1)rotate(180deg)}.fundus-shell[data-dragging-target=true] .fundus-fixation-target,.fundus-shell[data-dragging-target=true] .iris-window,.fundus-shell[data-dragging-target=true] .fundus-pan-layer,.fundus-shell[data-dragging-camera=true] .fundus-camera-model,.fundus-shell[data-dragging-camera=true] .fundus-pan-layer,.fundus-shell[data-dragging-camera=true] .fundus-camera-preview-layer{transition:none}.fundus-side{gap:12px;display:grid}.fundus-card-heading{align-items:center;gap:8px;display:flex}.fundus-card-heading h2,.fundus-upcoming-card h2{color:#071f49}.fundus-card-heading svg{color:#0b63c7}.fundus-state-grid{gap:8px;display:grid}.fundus-state-grid div{background:#eef7ff;border-radius:8px;gap:3px;padding:10px;display:grid}.fundus-state-grid span,.fundus-anatomy span{color:#526b86;font-size:.78rem;font-weight:900}.fundus-state-grid strong{color:#08275d}.fundus-anatomy{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.fundus-anatomy span{text-align:center;overflow-wrap:anywhere;background:#fbfdff;border:1px solid #cde2f5;border-radius:8px;min-width:0;padding:8px}.fundus-overlay-toggle{margin-top:2px}.fundus-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.fundus-camera-card{gap:11px}.fundus-quiz-link-card{background:linear-gradient(#fff,#f2fbfd);border-color:#bfe5e9;gap:11px}.fundus-quiz-link-card p{color:#344b68;margin:0;line-height:1.65}.fundus-quiz-link-button{color:#fff;background:#0b8295;border:1px solid #0b8295;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 12px;font-weight:900;display:inline-flex}.fundus-quiz-link-button svg{filter:none;width:19px;height:19px;max-height:none}.fundus-camera-card p{color:#344b68;margin:0;line-height:1.65}.fundus-camera-toggle{color:#fff;background:#0b8295;border-color:#0b8295;min-height:48px;font-weight:900}.fundus-camera-toggle[aria-pressed=false]{color:#0b4e75;background:#f8fbff}.fundus-camera-mode-note{color:#0b4e75;background:#f8fdff;border:1px solid #cde2f5;border-radius:8px;padding:9px;font-weight:800}.fundus-camera-controls{gap:10px;display:grid}.fundus-camera-mode-switch{background:#edf9fb;border:1px solid #bfe5e9;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;display:grid}.fundus-camera-mode-switch button{color:#0b4e75;background:0 0;border-color:#0000;min-width:0;min-height:44px;font-weight:900}.fundus-camera-mode-switch button.is-selected{color:#fff;background:#0b8295;border-color:#0b8295}.fundus-camera-slider{gap:8px}.fundus-camera-slider input[type=range]{accent-color:#0b8295;min-height:24px}.fundus-camera-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.fundus-camera-preset-grid button{color:#0b4e75;background:#fff;border-color:#9bcfe0;min-width:0;padding:0 8px;font-weight:900}.fundus-camera-preset-grid button.is-selected{color:#fff;background:#0b8295;border-color:#0b8295}.fundus-camera-readout{gap:7px;display:grid}.fundus-camera-readout div{background:#eef9fb;border-radius:8px;gap:3px;padding:9px;display:grid}.fundus-camera-readout span{color:#526b86;font-size:.76rem;font-weight:900}.fundus-camera-readout strong{color:#08275d}.fundus-camera-readout p{color:#0b4e75;background:#f8fdff;border:1px dashed #9bcfe0;border-radius:8px;padding:9px;font-weight:800}.fundus-camera-preview{background:#fbfdff;border:1px solid #cde2f5;border-radius:8px;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;padding:9px;display:grid}.fundus-camera-preview-window{aspect-ratio:1;background:#7e341f;border:3px solid #fff;border-radius:50%;width:92px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #b8d6ec,inset 0 0 20px #00000061}.fundus-camera-preview-layer{width:230px;height:230px;transition:transform .16s;position:absolute;top:50%;left:50%}.fundus-camera-preview-layer img{object-fit:cover;width:100%;height:100%}.fundus-camera-preview span{color:#08275d;font-weight:900}.fundus-quiz-guide{color:#344b68;margin:0;line-height:1.65}.fundus-quiz-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.fundus-quiz-pad button{color:#0b4e75;background:#fbfdff;border-color:#b9d7ef;min-width:0;min-height:50px;padding:0;font-size:1.25rem;font-weight:900}.fundus-quiz-pad button:hover,.fundus-quiz-camera-buttons button:hover{border-color:#0b8295}.fundus-quiz-camera-buttons button{min-width:0}.fundus-quiz-actions{grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,.85fr));gap:8px;display:grid}.fundus-quiz-actions button{justify-content:center;align-items:center;gap:7px;min-width:0;padding:0 9px;font-weight:900;display:inline-flex}.fundus-quiz-actions svg{filter:none;flex:none;width:18px;height:18px;max-height:none}.fundus-quiz-result{background:#f5fbff;border:1px solid #b9d7ef;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:9px;padding:11px;display:grid}.fundus-quiz-result svg{filter:none;width:26px;height:26px;max-height:none}.fundus-quiz-result div{gap:3px;display:grid}.fundus-quiz-result strong{color:#071f49}.fundus-quiz-result span{color:#344b68;font-size:.9rem;font-weight:800;line-height:1.5}.fundus-quiz-result.is-correct{background:#ecf8f1;border-color:#8bc7ac}.fundus-quiz-result.is-correct svg{color:#168653}.fundus-quiz-result.is-wrong{background:#fff1f3;border-color:#dfa2aa}.fundus-quiz-result.is-wrong svg{color:#b03245}.fundus-quiz-notes{color:#344b68;gap:7px;margin:0;padding-left:1.15em;line-height:1.55;display:grid}.fundus-legend{gap:8px;margin:0;display:grid}.fundus-legend div{background:#f5fbff;border-radius:8px;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:8px;padding:9px;display:grid}.fundus-legend dt{color:#087d91;font-weight:900}.fundus-legend dd{color:#344b68;margin:0;font-weight:800}.fundus-upcoming-card{background:#fdfbff;border-color:#d6c4ef;grid-template-columns:minmax(0,1fr) 58px;align-items:center}.fundus-upcoming-card>svg{color:#6d4aa0;width:58px;height:58px}.oct-stage-card{gap:12px}.oct-stage-toolbar{justify-content:flex-end;align-items:center;display:flex}.oct-reset-button{align-self:auto;min-width:132px}.oct-slider-field output{color:#526b86;font-size:.75rem;font-weight:900}.oct-visual-grid{gap:12px;display:grid}.oct-eye-scene{perspective:780px;perspective-origin:52% 45%;background:radial-gradient(circle at 51% 47%,#aadae842 0 24%,#0000 25%),linear-gradient(#fff,#f1f8ff);border:1px solid #d7e6f7;border-radius:8px;align-content:center;place-items:center;gap:10px;min-height:clamp(310px,74vw,480px);padding:12px;display:grid;position:relative;overflow:hidden}.oct-eye-shell{z-index:2;background:radial-gradient(circle,#fff 0 34%,#f7fcff 54%,#e9f3fb 100%);border:1px solid #cdd7df;border-radius:50%;place-items:center;width:min(94%,600px);height:clamp(250px,52vw,370px);display:grid;position:relative;box-shadow:inset 0 18px 24px #071f4914,inset 0 -18px 26px #071f491a,0 18px 32px #194c8724}.oct-iris-window{aspect-ratio:1;background:radial-gradient(circle at 48% 48%,#a95431 0 34%,#873b24 61%,#5b2418 100%);border:4px solid #fff;border-radius:50%;place-items:center;width:clamp(190px,48vw,305px);display:grid;position:relative;box-shadow:0 0 0 10px #5992a02e,0 16px 28px #02081733,inset 0 0 36px #00000070}.oct-pupil{aspect-ratio:1;background:radial-gradient(circle at 43% 40%,#202938 0 6%,#030712 7% 100%);border-radius:50%;width:58%;box-shadow:inset 0 0 18px #ffffff14,0 0 0 2px #ffffff1a}.oct-corneal-highlight{aspect-ratio:1;filter:blur(.2px);background:#ffffffc7;border-radius:50%;width:12%;position:absolute;top:22%;left:27%}.oct-device-layer{z-index:7;pointer-events:none;transform-style:preserve-3d;position:absolute;inset:0}.oct-inline-depth-controls{z-index:9;background:#ffffffeb;border:1px solid #b9d7efd1;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;display:grid;position:absolute;bottom:10px;left:12px;right:12px;box-shadow:0 10px 20px #071f491a}.oct-depth-rail{filter:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.oct-depth-arrow-body{fill:#0b8ea224;stroke:#0b8ea26b;stroke-width:2px;transform-origin:50%;transform:translateY(-10px)scaleY(.82)}.oct-depth-arrow-head{fill:#0b8ea26b;transform-origin:50%;transform:translateY(-20px)scaleY(.9)}.oct-depth-arrow-center{fill:none;stroke:#0b8ea2;stroke-width:3px;stroke-dasharray:7 9;stroke-linecap:round;opacity:.5;transform-origin:50%;transform:translateY(-10px)scaleY(.82)}.oct-device-model{--oct-device-hit:clamp(132px, 20vw, 172px);--oct-device-visual:clamp(82px, 13vw, 126px);width:var(--oct-device-hit);height:var(--oct-device-hit);transform-origin:50%;will-change:transform;transition:transform .17s cubic-bezier(.18,.82,.22,1);position:absolute;top:50%;left:50%}.oct-device-active{z-index:3;pointer-events:auto;cursor:grab;touch-action:none}.oct-device-active:before{content:"";border-radius:50%;position:absolute;inset:8px}.oct-device-ghost{opacity:.2}.oct-device-far{transform:translate(-50%,-50%)translateY(-34px)scale(.78)}.oct-device-near{transform:translate(-50%,-50%)translateY(36px)scale(1.16)}.oct-device-machine{width:var(--oct-device-visual);aspect-ratio:1;-webkit-user-select:none;user-select:none;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.oct-device-machine img{object-fit:cover;filter:drop-shadow(0 10px 12px #0208173d)drop-shadow(0 0 10px #ffffff4d);mix-blend-mode:screen;border-radius:12px;width:100%;height:100%;display:block}.oct-device-active:active{cursor:grabbing}.oct-device-active:focus-visible{outline-offset:4px;outline:3px solid #8cc8ff}.oct-scan-stack{gap:8px;display:grid}.oct-scan-panel{grid-template-columns:76px minmax(0,1fr);align-items:stretch;gap:8px;min-width:0;display:grid}.oct-scan-side-label{background:linear-gradient(#f8fcff,#eef7ff);border:1px solid #cde2f5;border-radius:8px;align-content:center;gap:5px;min-width:0;padding:7px 4px;display:grid}.oct-slider-field svg{color:#0b63c7;filter:none;flex:none;width:20px;height:20px}.oct-scan-side-label>span{color:#08275d;text-align:center;font-size:.7rem;font-weight:900;line-height:1.18}.oct-slice-map{justify-items:center;gap:3px;min-width:0;display:grid}.oct-slice-map svg{filter:none;width:52px;height:36px;max-height:none}.oct-slice-map span{color:#0b4e75;text-align:center;font-size:.64rem;font-weight:900;line-height:1.15}.oct-map-retina{fill:#b9522e;stroke:#ffd3a8;stroke-width:2px}.oct-map-fovea{fill:#3b1d17;stroke:#fff5e6;stroke-width:1.5px}.oct-map-arrow{fill:none;stroke:#fff;stroke-width:4px;stroke-linecap:round}.oct-slice-map marker path{fill:#fff}.oct-scan-window{background-color:#020407;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(#ffffff0f 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #172033;border-radius:8px;height:clamp(128px,29vw,190px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14,0 14px 28px #071f4921}.oct-scan-window:before,.oct-scan-window:after{z-index:3;content:"";background:#6cc6e04d;height:1px;position:absolute;left:0;right:0}.oct-scan-window:before{top:50%}.oct-scan-window:after{opacity:.45;top:calc(50% + 38px)}.oct-scan-window[data-depth-state=far]{background-color:#020407;background-image:linear-gradient(90deg,#ffffff0a 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.oct-scan-image{transform-origin:50%;will-change:transform, opacity;width:100%;transition:opacity .17s,transform .17s cubic-bezier(.18,.82,.22,1);position:absolute;top:50%;left:50%}.oct-scan-image img{image-rendering:auto;width:100%;height:auto;display:block}.oct-slider-field{gap:8px}.oct-slider-field>span{color:#45596a;justify-content:space-between;align-items:center;gap:8px;min-width:0;font-weight:900;display:flex}.oct-slider-field>span svg{margin-right:1px}.oct-slider-field output{color:#08275d;margin-left:auto}.oct-slider-field input[type=range]{accent-color:#0b8295;min-height:24px}.oct-shell[data-dragging-device=true] .oct-device-model,.oct-shell[data-dragging-device=true] .oct-scan-image{transition:none}.astigmatism-workbench{grid-template-areas:"stage""side""preview"}.astigmatism-title-actions{grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);align-items:start;gap:12px;display:grid}.astigmatism-title-actions>.usage-disclosure:first-child{justify-items:start}.astigmatism-preset-disclosure{justify-items:end}.astigmatism-preset-panel{gap:10px;width:min(100%,620px);display:grid}.astigmatism-preset-columns{grid-template-columns:minmax(120px,.72fr) minmax(190px,1.28fr);gap:10px;display:grid}.astigmatism-preset-group{align-content:start;gap:7px;display:grid}.astigmatism-preset-group>strong{color:#526b86;font-size:.78rem;font-weight:900}.astigmatism-preset-group button{color:#08275d;text-align:left;cursor:pointer;background:#fff;border:1px solid #b9d7ef;border-radius:8px;gap:2px;min-height:40px;padding:7px 9px;font-weight:900;display:grid}.astigmatism-preset-group button[aria-pressed=true]{color:#06469b;background:#eef7ff;border-color:#0b63c7;box-shadow:inset 0 0 0 1px #0b63c71f}.astigmatism-preset-group small{color:#526b86;font-size:.72rem;font-weight:900}.astigmatism-preset-description{color:#243b58;background:#eef7ff;border-radius:8px;margin:0;padding:9px 10px;font-size:.84rem;font-weight:800;line-height:1.6}.astigmatism-stage-card{grid-area:stage;gap:14px}.astigmatism-side{grid-area:side}.astigmatism-preview-card{grid-area:preview}.astigmatism-stage-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.astigmatism-stage-toolbar .fundus-reset-button{flex:none;min-width:118px}.astigmatism-stage-grid{gap:12px;display:grid}.astigmatism-diagram-panel{background:linear-gradient(90deg,#1d71ca0f 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#fff,#f2f8ff);border:1px solid #d7e6f7;border-radius:8px;min-width:0;overflow:hidden}.astigmatism-sturm-svg{filter:none;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;max-height:none;padding:10px;display:block}.astigmatism-sturm-svg text{fill:#344b68;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:16px;font-weight:900}.astigmatism-focus-diopter,.astigmatism-meridian-label{fill:#0b63c7;font-size:14px}.astigmatism-label-card rect{fill:#ffffffad;stroke:#b9d7efc2;stroke-width:1.2px}.astigmatism-label-card text{font-size:14px}.astigmatism-label-card .astigmatism-focus-diopter{font-size:13px}.astigmatism-label-card.corrected rect{fill:#f5fdf9ad;stroke:#88c9abc2}.astigmatism-model-readout rect{fill:#eef7fff0;stroke:#b9d7ef;stroke-width:1.5px}.astigmatism-model-readout text{fill:#061d49;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:20px}.astigmatism-axis-line{fill:none;stroke:#7891aa;stroke-dasharray:6 8;stroke-linecap:round;stroke-width:2px}.astigmatism-corrected-axis{stroke:#188653;opacity:.42}.astigmatism-ray{fill:none;marker-end:url(#astigmatism-ray-arrow);stroke-linecap:round;stroke-width:3.2px}.astigmatism-ray-strong{stroke:#0b63c7}.astigmatism-ray-weak{stroke:#0b8295;opacity:.72}.astigmatism-cornea{fill:#7ec7d942;stroke:#0b8295;stroke-width:3.4px}.astigmatism-spectacle-lens{fill:#1886531a;stroke:#188653;stroke-width:2.5px}.astigmatism-meridian-lens{cursor:grab;touch-action:none}.astigmatism-meridian-lens:active{cursor:grabbing}.astigmatism-meridian-ellipse{fill:#7ec7d93d;stroke:#0b8295;stroke-width:3px}.astigmatism-meridian-strong,.astigmatism-meridian-weak{stroke-linecap:round}.astigmatism-meridian-strong{stroke:#0b63c7;stroke-width:6px}.astigmatism-meridian-weak{stroke:#0b8295;stroke-dasharray:7 7;stroke-width:4.5px}.astigmatism-focus-line{cursor:grab;stroke-linecap:round;stroke-width:9px;touch-action:none}.astigmatism-focus-line.front{stroke:#df6a3a}.astigmatism-focus-line.back{stroke:#7c5fb4}.astigmatism-least-circle,.astigmatism-corrected-circle{cursor:grab;fill:#fff;stroke:#08275d;stroke-width:3px}.astigmatism-retina-line{cursor:grab;stroke:#6f2430;stroke-dasharray:7 7;stroke-linecap:round;stroke-width:4.5px;touch-action:none}.astigmatism-lens-shift-line{fill:none;stroke:#188653;stroke-dasharray:5 7;stroke-linecap:round;stroke-width:2px;opacity:.56}.astigmatism-label-guide{fill:none;stroke:#7891aa;stroke-dasharray:3 5;stroke-linecap:round;stroke-width:1.4px;opacity:.58}.astigmatism-label-guide.front{stroke:#df6a3a}.astigmatism-label-guide.back{stroke:#7c5fb4}.astigmatism-label-guide.corrected{stroke:#188653;opacity:.62}.astigmatism-corrected-line{stroke-linecap:round;stroke-width:5px}.astigmatism-corrected-line.front{stroke:#df6a3a;opacity:.72}.astigmatism-corrected-line.back{stroke:#7c5fb4;opacity:.72}.astigmatism-corrected-circle{stroke:#188653;stroke-width:2.5px}.astigmatism-drag-target{cursor:grab;fill:#0000;stroke:#0000;stroke-linecap:round;stroke-width:24px;pointer-events:stroke;touch-action:none}.astigmatism-drag-target:active,.astigmatism-focus-line:active,.astigmatism-retina-line:active,.astigmatism-least-circle:active{cursor:grabbing}.astigmatism-sturm-svg marker path{fill:#0b63c7}.astigmatism-axis-card{background:#fbfdff;border:1px solid #cde2f5;border-radius:8px;grid-template-columns:minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.astigmatism-axis-card dl{gap:8px;margin:0;display:grid}.astigmatism-axis-card dl div,.astigmatism-refraction-readout{background:#eef7ff;border-radius:8px;gap:3px;padding:10px;display:grid}.astigmatism-axis-card dt,.astigmatism-refraction-readout span{color:#526b86;font-size:.76rem;font-weight:900}.astigmatism-axis-card dd{color:#08275d;margin:0;font-size:1.2rem;font-weight:900}.astigmatism-readout-card{gap:9px}.astigmatism-refraction-readout strong{color:#061d49;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(1.08rem,4.8vw,1.34rem)}.astigmatism-refraction-readout.is-residual{background:#eff9f2}.astigmatism-lens-toggle{color:#08275d;cursor:pointer;background:#f8fcff;border:1px solid #b9d7ef;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:42px;font-weight:900;display:inline-flex}.astigmatism-lens-heading{justify-content:space-between}.astigmatism-lens-heading h2{min-width:0}.astigmatism-lens-heading .astigmatism-lens-toggle{flex:none;width:auto;min-height:36px;padding:0 12px}.astigmatism-lens-toggle[aria-pressed=true]{color:#14613d;background:#eff9f2;border-color:#188653}.astigmatism-axis-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.astigmatism-axis-choice button{color:#08275d;cursor:pointer;background:#f8fcff;border:1px solid #b9d7ef;border-radius:8px;min-height:38px;font-weight:900}.astigmatism-axis-choice button[aria-pressed=true]{color:#14613d;background:#eff9f2;border-color:#188653}.astigmatism-axis-choice button:disabled{cursor:not-allowed;opacity:.46}.astigmatism-slider-field{gap:8px}.astigmatism-slider-field>span{color:#45596a;justify-content:space-between;align-items:center;gap:8px;min-width:0;font-weight:900;display:flex}.astigmatism-slider-field svg{color:#0b63c7;filter:none;flex:none;width:19px;height:19px}.astigmatism-slider-field output{color:#08275d;text-align:right;margin-left:auto;font-size:.78rem;font-weight:900}.astigmatism-slider-field input[type=range]{accent-color:#0b8295;min-height:24px}.astigmatism-slider-field input[type=range]:disabled{opacity:.45}.astigmatism-preview-grid{gap:10px;display:grid}.astigmatism-preview-panel{background:#fbfdff;border:1px solid #cde2f5;border-radius:8px;gap:8px;min-width:0;padding:10px;display:grid}.astigmatism-preview-panel h3{color:#08275d;margin:0;font-size:.95rem}.astigmatism-target-svg{aspect-ratio:1;filter:none;background:linear-gradient(90deg,#1d71ca0d 1px,#0000 1px) 0 0/22px 22px,linear-gradient(#fff,#f6fbff);border:1px solid #d7e6f7;border-radius:8px;width:100%;height:auto;max-height:220px}.astigmatism-landolt-svg{aspect-ratio:11/6}.astigmatism-landolt-svg text{fill:#526b86;letter-spacing:0;font-size:11px;font-weight:900}.astigmatism-landolt-svg image{image-rendering:auto}.astigmatism-chart-ring{fill:none;stroke:#b9d7ef;stroke-width:2px}.astigmatism-chart-spoke{stroke:#111827;stroke-linecap:butt}.astigmatism-chart-center{fill:#111827}.speed-control{grid-template-columns:repeat(4,minmax(0,1fr))}.speed-control button{justify-content:center;align-items:center;gap:4px;display:inline-flex}[data-reduced-motion=true] .pupil-group,[data-reduced-motion=true] .occluder,[data-reduced-motion=true] .timeline-track span{transition:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (width>=760px){.home-shell{gap:44px;padding:18px 24px}.home-nav nav{display:flex}.home-hero{grid-template-columns:minmax(0,1.02fr) minmax(320px,.8fr);min-height:560px;padding:28px 0 8px}.home-actions{grid-template-columns:minmax(260px,340px) minmax(220px,280px);align-items:center}.hero-visual{display:block}.available-card{grid-template-columns:230px minmax(0,1fr) 132px;align-items:center;padding:18px}.favorite-card{grid-template-columns:260px minmax(0,1fr) 132px;align-items:center;padding:18px}.available-list{gap:14px}.available-thumb{min-height:170px}.planned-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.home-footer{grid-template-columns:1fr;align-items:start}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));width:auto}.app-shell{gap:16px;padding:20px}.app-header{grid-template-columns:1fr minmax(260px,360px)}h1{font-size:3.2rem}.mobile-order{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.stage{grid-area:1/1;min-height:420px;padding:24px}.panel-cases{grid-area:2/1}.panel-controls{grid-area:1/2}.panel-explanation{grid-area:2/2}svg{width:min(100%,310px);max-height:230px}.case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.timeline{grid-template-columns:minmax(0,1fr) 320px;align-items:center;position:static}.timeline output{grid-column:auto}.fundus-shell{gap:22px;padding:18px 24px 24px}.fundus-header{grid-template-columns:200px minmax(0,1fr);align-items:start}.fundus-title-block,.fundus-back-link{grid-column:2}.fundus-workbench{grid-template-columns:minmax(0,1fr) 330px;align-items:start}.fundus-stage-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,.85fr) 156px;align-items:center}.oct-visual-grid{grid-template-columns:minmax(300px,.88fr) minmax(0,1.12fr);align-items:stretch}.astigmatism-workbench{grid-template-columns:minmax(0,1fr) 330px;grid-template-areas:"stage side""preview side"}.astigmatism-stage-grid{grid-template-columns:minmax(0,1fr)}.astigmatism-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.oct-eye-scene{min-height:430px}.oct-device-model{left:calc(50% + 14px)}.fundus-target-pad{height:190px}.frontal-eye{min-height:510px}.fundus-state-grid{grid-template-columns:minmax(0,1fr)}}@media (width>=960px){.home-content-layout{grid-template-columns:300px minmax(0,1fr);align-items:start}.home-main-flow{gap:36px}.category-sidebar{display:grid;position:sticky;top:18px}.home-nav .home-genre-button{display:none}.home-hero{min-height:520px}}@media (width<=759px){.astigmatism-title-actions{grid-template-columns:minmax(0,1fr)}.astigmatism-preset-disclosure{justify-items:start}.astigmatism-preset-panel{width:100%}.astigmatism-preset-columns{grid-template-columns:minmax(82px,.66fr) minmax(0,1.34fr);gap:7px}.astigmatism-preset-group button{min-height:38px;padding:6px 7px;font-size:.78rem}.astigmatism-preset-group small{font-size:.66rem}.astigmatism-preset-description{font-size:.78rem}.astigmatism-workbench{grid-template-areas:"stage""preview""side"}.astigmatism-readout-card{display:none}.astigmatism-stage-card,.astigmatism-preview-card{padding:10px}.fundus-retina-labels{inset:10px 12px}.fundus-retina-label{min-width:42px;padding:4px 6px;font-size:.66rem}.fundus-retina-label[data-region=left]{left:8%}.fundus-retina-label[data-region=right]{left:92%}.face-cue.is-left{left:0}.face-cue.is-right{right:0}.face-cue-ear{top:11%}.face-cue-nose{top:76%}.oct-visual-grid{grid-template-columns:minmax(0,1fr);gap:10px}.oct-eye-scene{min-height:252px;padding:8px}.oct-eye-shell{width:min(94%,270px);height:184px}.oct-iris-window{width:clamp(142px,46vw,174px)}.oct-inline-depth-controls{z-index:9;width:100%;padding:7px;position:relative}.oct-device-layer{bottom:84px}.oct-device-model{--oct-device-hit:clamp(104px, 30vw, 128px);--oct-device-visual:clamp(66px, 20vw, 84px)}.oct-depth-arrow-body{transform-origin:50%;transform:translateY(6px)scale(.78,.68)}.oct-depth-arrow-head,.oct-depth-arrow-center{transform-origin:50%;transform:translateY(6px)scaleY(.72)}.oct-scan-stack{gap:6px}.oct-scan-panel{grid-template-columns:64px minmax(0,1fr);gap:5px}.oct-scan-side-label{gap:3px;padding:5px 3px}.oct-slice-map{gap:1px}.oct-slice-map svg{width:46px;height:29px}.oct-slice-map span,.oct-scan-side-label>span{font-size:.6rem;line-height:1.15}.oct-scan-window{height:clamp(112px,31vw,128px)}.astigmatism-stage-toolbar{align-items:stretch}.astigmatism-stage-toolbar .fundus-card-heading{align-items:center}.astigmatism-stage-toolbar .fundus-reset-button{min-width:104px}.astigmatism-sturm-svg{min-width:0;padding:5px}.astigmatism-sturm-svg text{font-size:24px}.astigmatism-diagram-panel{background-size:18px 18px,auto;overflow:hidden}.astigmatism-sturm-svg .astigmatism-focus-diopter,.astigmatism-sturm-svg .astigmatism-meridian-label,.astigmatism-sturm-svg .astigmatism-label-card text{font-size:18px}.astigmatism-sturm-svg .astigmatism-label-card .astigmatism-focus-diopter,.astigmatism-sturm-svg .astigmatism-label-card.corrected text{font-size:16px}.astigmatism-sturm-svg .astigmatism-label-card.corrected .astigmatism-focus-diopter{font-size:14px}.astigmatism-model-readout text{font-size:26px}.astigmatism-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.astigmatism-preview-panel{grid-template-columns:minmax(46px,.46fr) minmax(0,.54fr);align-items:center;gap:5px;padding:5px}.astigmatism-preview-panel h3{overflow-wrap:anywhere;font-size:.74rem;line-height:1.2}.astigmatism-target-svg{max-height:76px}.astigmatism-side{gap:8px}.astigmatism-lens-card{order:1;gap:7px;padding:8px 10px}.astigmatism-model-card{order:2}.astigmatism-lens-card .astigmatism-slider-field{gap:5px}.astigmatism-lens-heading .astigmatism-lens-toggle{min-height:32px;padding:0 10px;font-size:.82rem}.astigmatism-axis-choice{gap:5px}.astigmatism-axis-choice button{min-height:34px;padding:0 4px;font-size:.76rem}}@media (width<=390px){.home-shell{padding:10px}.home-hero h1{font-size:2.15rem}.home-button{text-align:left;justify-content:space-between;padding:0 12px}.planned-grid{grid-template-columns:minmax(0,1fr)}.app-shell{padding:8px}h1{font-size:1.82rem}.stage{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);padding:10px}.status-list,.control-grid,.quiz-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.fundus-shell{padding:8px}.fundus-card{padding:11px}.fundus-anatomy,.fundus-state-grid{grid-template-columns:minmax(0,1fr)}.oct-stage-card{padding:8px}.oct-visual-grid{grid-template-columns:minmax(0,1fr);gap:8px}.oct-eye-scene{min-height:236px}.oct-eye-shell{height:160px}.oct-iris-window{width:148px}.oct-slice-map svg{width:40px;height:25px}.oct-scan-panel{grid-template-columns:56px minmax(0,1fr);gap:4px}.oct-scan-side-label{padding:4px 2px}.oct-scan-window{height:116px}.oct-device-model{--oct-device-hit:112px;--oct-device-visual:72px}.astigmatism-axis-card{grid-template-columns:minmax(0,1fr);justify-items:center}.astigmatism-axis-card dl{width:100%}.astigmatism-preview-panel h3{font-size:.7rem}.astigmatism-target-svg{max-height:70px}.fundus-quiz-actions{grid-template-columns:minmax(0,1fr)}.fundus-target-cross{width:62px;height:62px}.nasal-marker,.temporal-marker{bottom:10px}.speed-control{grid-template-columns:repeat(2,minmax(0,1fr))}}.refraction-shell{background:linear-gradient(#fff 0%,#f8fbff 52%,#eef7ff 100%)}.refraction-workbench{grid-template-areas:"stage""readout""side"}.refraction-stage-card{grid-area:stage;gap:12px}.refraction-readout-card{grid-area:readout;gap:10px}.refraction-side{grid-area:side}.refraction-stage-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.refraction-stage-toolbar .fundus-reset-button{flex:none}.refraction-new-patient-confirm{z-index:30;background:#f8fcff;border:1px solid #b9d7ef;border-radius:8px;gap:7px;width:min(86%,360px);padding:10px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 36px #071f4938}.refraction-new-patient-confirm strong{color:#08275d;font-size:.92rem;font-weight:900}.refraction-new-patient-confirm span{color:#526b86;font-size:.78rem;font-weight:800}.refraction-new-patient-confirm div{justify-content:flex-end;gap:7px;display:flex}.refraction-new-patient-confirm button{min-height:34px;padding:0 12px;font-size:.8rem;font-weight:900}.refraction-step-strip,.refraction-segmented{gap:7px;display:grid}.refraction-step-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.refraction-segmented{grid-template-columns:repeat(2,minmax(0,1fr))}.refraction-step-strip button,.refraction-segmented button{color:#0b4e75;white-space:nowrap;background:#f8fcff;min-width:0;min-height:40px;padding:0 6px;font-size:.78rem;font-weight:900}.refraction-step-strip button[aria-pressed=true],.refraction-segmented button[aria-pressed=true]{color:#06469b;background:#eef7ff;border-color:#0b63c7}.refraction-step-strip button:disabled,.refraction-segmented button:disabled,.refraction-stage-rx-steppers button:disabled,.refraction-axis-picker-toggle:disabled,.astigmatism-slider-field input:disabled{cursor:not-allowed;opacity:.48}.refraction-stage{--refraction-eye-left:36%;--refraction-eye-top:50%;--refraction-patient-front-width:min(68%, 500px);--refraction-patient-front-aspect:.6;--refraction-patient-front-offset-x:-34%;--refraction-patient-front-offset-y:-64%;--refraction-patient-back-left:35%;--refraction-patient-back-bottom:4px;--refraction-patient-back-width:min(29%, 220px);--refraction-patient-back-aspect:.6;background:linear-gradient(90deg,#1d71ca0d 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#fff,#f3f9ff);border:1px solid #d7e6f7;border-radius:8px;min-height:360px;position:relative;overflow:hidden}.refraction-patient-image{width:min(34%,280px);height:auto;min-height:0;aspect-ratio:var(--refraction-patient-back-aspect);object-fit:contain;object-position:center;display:block;position:absolute;bottom:16px;left:34%;transform:translate(-50%)}.refraction-patient-image[data-sprite=true]{background-repeat:no-repeat;background-size:500% 100%}.refraction-stage[data-view=front] .refraction-patient-image{left:var(--refraction-eye-left);top:var(--refraction-eye-top);width:var(--refraction-patient-front-width);height:auto;aspect-ratio:var(--refraction-patient-front-aspect);object-fit:cover;object-position:center;max-width:none;min-height:0;transform:translate(var(--refraction-patient-front-offset-x), var(--refraction-patient-front-offset-y));position:absolute}.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=child]{--refraction-patient-front-offset-x:-35%;--refraction-patient-front-offset-y:-62%}.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=young]{--refraction-patient-front-offset-x:-34%;--refraction-patient-front-offset-y:-64%}.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=adult],.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=middle],.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=elderly]{--refraction-patient-front-offset-x:-34%;--refraction-patient-front-offset-y:-65%}.refraction-stage[data-view=back] .refraction-patient-image{object-position:center 56%}.refraction-stage[data-view=back] .refraction-patient-image[data-sprite=true]{left:var(--refraction-patient-back-left);bottom:var(--refraction-patient-back-bottom);width:var(--refraction-patient-back-width);height:auto;aspect-ratio:var(--refraction-patient-back-aspect);object-position:var(--patient-sprite-position,50%) center}.refraction-patient-profile-badge{z-index:5;color:#08275d;background:#ffffffe6;border:1px solid #b9d7efe0;border-radius:8px;gap:2px;width:112px;min-width:0;padding:7px 8px;display:grid;position:absolute;top:14px;bottom:auto;left:18px;box-shadow:0 12px 22px #071f491f}.refraction-patient-profile-badge[data-view=back]{width:132px;top:auto;bottom:76px;left:clamp(84px,22%,230px)}.refraction-patient-profile-badge span{color:#526b86;font-size:.72rem;font-weight:900}.refraction-patient-profile-badge strong{font-size:.78rem;line-height:1.2}.refraction-age-option-grid{background:#f8fcff;border:1px solid #cde2f5;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:8px;display:grid}.refraction-age-option-grid[data-enabled=false]{opacity:.58}.refraction-age-option{color:#0b4e75;align-items:center;gap:6px;min-width:0;font-size:.8rem;font-weight:900;display:flex}.refraction-chart-controller{background:#f8fcff;border:1px solid #cde2f5;border-radius:8px;grid-template-columns:minmax(116px,.46fr) minmax(0,1fr);grid-template-areas:"heading heading""va directions";gap:10px;padding:10px;display:grid}.refraction-controller-heading{color:#08275d;grid-area:heading/1/heading/-1;align-items:center;gap:8px;font-size:.9rem;display:flex}.refraction-controller-heading svg{color:#0b63c7;filter:none;width:19px;height:19px}.refraction-va-controller{grid-area:va;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.refraction-low-va-toggle{color:#06469b;white-space:normal;min-width:0;min-height:32px;padding:0 8px;font-size:.8rem;font-weight:900}.refraction-va-button-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.refraction-va-button-grid>div{align-content:start;gap:5px;display:grid}.refraction-va-button-grid button{color:#08275d;background:#fff;min-width:0;min-height:31px;padding:0 6px;font-size:.8rem;font-weight:900}.refraction-monitor{aspect-ratio:16/9;background:#1f2c3a;border:1px solid #1f2c3a;border-radius:8px;place-items:center;width:min(40%,390px);padding:8px;display:grid;position:absolute;top:6%;left:35%;transform:translate(-50%);box-shadow:0 12px 22px #071f4929}.refraction-monitor-screen{background:#fff;border-radius:4px;place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden;container-type:size}.refraction-chart-va{color:#526b86;font-size:clamp(.62rem,1.4vw,.82rem);font-weight:900;position:absolute;top:7px;left:8px}.refraction-landolt{--landolt-size:108px;width:min(var(--landolt-size), 88%);color:#111827;filter:none;height:auto;max-height:90%;display:block}.refraction-front-target,.refraction-over-lens,.refraction-answer-board{color:#08275d;text-align:center;background:#ffffffe0;border:1px solid #b9d7efdb;border-radius:8px;place-items:center;gap:8px;min-width:min(82%,430px);padding:12px;display:grid;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 24px #071f491f}.refraction-stage[data-view=front] .refraction-over-lens{min-width:min(42%,310px);bottom:18px;left:34%}.refraction-stage[data-view=front] .refraction-answer-board{min-width:min(48%,360px);left:36%}.refraction-stage[data-view=front] .refraction-front-target{width:112px;min-width:0;padding:7px;bottom:14px;left:auto;right:286px;transform:none}.refraction-over-lens svg,.refraction-answer-board svg{color:#0b63c7;filter:none;width:28px;height:28px}.refraction-front-target>span,.refraction-over-lens span,.refraction-answer-board span{color:#344b68;font-weight:900}.refraction-trial-frame{--frame-axis:180deg;left:var(--refraction-eye-left);top:var(--refraction-eye-top);z-index:4;aspect-ratio:1;pointer-events:none;width:min(35%,272px);position:absolute;transform:translate(-50%,-50%)}.refraction-trial-frame[data-interactive=true]{cursor:grab;pointer-events:auto;touch-action:none}.refraction-trial-frame[data-interactive=true]:active{cursor:grabbing}.refraction-trial-lens-ring{background:radial-gradient(circle,#ffffff12 0 62%,#84a7c51f 63% 100%);border:3px solid #182636d1;border-radius:50%;width:100%;height:100%;position:relative;box-shadow:inset 0 0 0 1px #ffffff94,0 10px 20px #071f491f}.refraction-trial-lens-ring:before,.refraction-trial-lens-ring:after{content:"";background:#18263685;border-radius:999px;width:116%;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.refraction-trial-lens-ring:after{transform:translate(-50%,-50%)rotate(90deg)}.refraction-frame-degree{color:#fff;background:#061d49c7;border:1px solid #ffffffb3;border-radius:999px;place-items:center;min-width:28px;min-height:16px;font-size:.54rem;font-weight:900;display:grid;position:absolute;transform:translate(-50%,-50%)}.refraction-frame-axis{width:124%;height:0;transform:translate(-50%, -50%) rotate(var(--frame-axis));position:absolute;top:50%;left:50%}.refraction-frame-axis:before,.refraction-frame-axis:after{content:"";background:#fffffff5;border-radius:999px;width:24%;height:4px;position:absolute;top:-2px;box-shadow:0 0 5px #061d49ad}.refraction-frame-axis:before{left:0}.refraction-frame-axis:after{right:0}.refraction-frame-axis-label{color:#061d49;white-space:nowrap;background:#ffffffeb;border:1px solid #b9d7ef;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:900;position:absolute;bottom:-30px;left:50%;transform:translate(-50%)}.refraction-presented-instrument{--instrument-rotation:0deg;left:var(--refraction-eye-left);top:var(--refraction-eye-top);z-index:6;pointer-events:none;opacity:.92;width:min(36%,274px);transform:translate(-50%, -50%) rotate(var(--instrument-rotation));place-items:center;animation:.36s cubic-bezier(.16,.84,.26,1) both refraction-present-shell;display:grid;position:absolute}.refraction-presented-sphere{left:var(--refraction-eye-left);top:var(--refraction-eye-top);width:min(29%,220px)}.refraction-lens-visual{--instrument-rotation:0deg;aspect-ratio:1;width:100%;transform:rotate(var(--instrument-rotation));border-radius:50%;place-items:center;display:grid;position:relative}.refraction-lens-visual img{opacity:.48;filter:drop-shadow(0 18px 22px #071f492e);border-radius:50%;width:100%;height:auto}.refraction-lens-visual:before{content:"";pointer-events:none;background:radial-gradient(circle at 40% 35%,#ffffff4d,#85bee01a 52%,#ffffff0a);border-radius:50%;position:absolute;inset:16%}.refraction-lens-visual-sphere-plus img,.refraction-lens-visual-sphere-minus img{opacity:.56}.refraction-presented-jcc{left:var(--refraction-eye-left);top:var(--refraction-eye-top);width:min(31%,236px)}.refraction-jcc-axis-mark,.refraction-cylinder-axis-mark{pointer-events:none;width:118%;height:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.refraction-jcc-axis-mark:before,.refraction-jcc-axis-mark:after,.refraction-cylinder-axis-mark:before,.refraction-cylinder-axis-mark:after{content:"";border-radius:999px;width:22%;height:5px;position:absolute;top:-2px}.refraction-jcc-axis-mark:before,.refraction-cylinder-axis-mark:before{left:0}.refraction-jcc-axis-mark:after,.refraction-cylinder-axis-mark:after{right:0}.refraction-jcc-axis-mark.is-black{transform:translate(-50%,-50%)rotate(90deg)}.refraction-jcc-axis-mark.is-black:before,.refraction-jcc-axis-mark.is-black:after{background:#111827}.refraction-jcc-axis-mark.is-red:before,.refraction-jcc-axis-mark.is-red:after{background:#d71920}.refraction-jcc-power-label{z-index:2;white-space:nowrap;background:#ffffffdb;border-radius:999px;padding:2px 5px;font-size:.62rem;font-weight:900;line-height:1;position:absolute;left:50%;transform:translate(-50%,-50%)}.refraction-jcc-power-label.is-red{color:#b9151c;top:50%;left:17%}.refraction-jcc-power-label.is-black{color:#111827;top:17%}.refraction-cylinder-axis-mark:before,.refraction-cylinder-axis-mark:after{background:#fffffff5;box-shadow:0 0 5px #061d49b3}.refraction-presented-instrument strong{color:#061d49;transform:translateX(-50%) rotate(calc(-1 * var(--instrument-rotation)));white-space:nowrap;background:#ffffffeb;border:1px solid #b9d7efd1;border-radius:8px;padding:4px 8px;font-size:.82rem;font-weight:900;position:absolute;bottom:12%;left:50%}.refraction-presented-instrument>.refraction-lens-visual{animation:.36s cubic-bezier(.16,.84,.26,1) both refraction-present-lens}@keyframes refraction-present-shell{0%{opacity:0}to{opacity:1}}.refraction-presented-instrument.is-exiting{animation:.18s ease-in both refraction-return-shell}.refraction-presented-instrument.is-exiting>.refraction-lens-visual{animation:.18s ease-in both refraction-return-lens}@keyframes refraction-present-lens{0%{transform:translate(82%,-30%)scale(.78)}to{transform:translate(0)scale(1)}}@keyframes refraction-return-shell{0%{opacity:1}to{opacity:0}}@keyframes refraction-return-lens{0%{transform:translate(0)scale(1)}to{transform:translate(82%,-30%)scale(.78)}}.refraction-stage-lens-dock{z-index:7;background:#f8fcffeb;border:1px solid #b9d7efd6;border-radius:8px;gap:8px;width:min(26%,178px);max-height:calc(100% - 132px);padding:8px;display:grid;position:absolute;top:16px;right:12px;overflow:auto;box-shadow:0 12px 24px #071f491f}.refraction-stage-rx-controls{z-index:8;background:#f8fcfff0;border:1px solid #b9d7efdb;border-radius:8px;gap:7px;width:min(33%,270px);max-height:calc(100% - 24px);padding:9px;display:grid;position:absolute;bottom:12px;right:12px;overflow:auto;box-shadow:0 12px 24px #071f491f}.refraction-stage-rx-controls[data-open=true]{z-index:18}.refraction-stage-rx-current{gap:5px;display:grid}.refraction-panel-toggle{color:#06469b;background:#fff;border-color:#b9d7ef;justify-content:space-between;align-items:center;gap:6px;min-width:0;min-height:32px;padding:0 8px;font-size:.72rem;font-weight:900;display:flex}.refraction-panel-toggle b{color:#08275d;white-space:nowrap;font-size:.72rem}.refraction-panel-toggle span{white-space:nowrap}.refraction-stage-rx-current span{color:#526b86;font-size:.68rem;font-weight:900}.refraction-stage-rx-current strong{color:#061d49;overflow-wrap:anywhere;background:#f8fcff;border:1px solid #d7e6f7;border-radius:7px;grid-template-rows:repeat(2,minmax(17px,auto));gap:2px;padding:6px 7px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;line-height:1.2;display:grid}.refraction-stage-rx-current strong span{color:inherit;font:inherit}.refraction-stage-rx-current .refraction-trial-rx-line{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.refraction-stage-rx-current .refraction-trial-draft-rx[data-pending=true]{color:#0b63c7}.refraction-stage-rx-current .refraction-trial-draft-rx[data-pending=false]{color:#7a91aa}.refraction-stage-rx-steppers{gap:5px;display:grid}.refraction-stage-rx-steppers>div{grid-template-columns:18px 34px minmax(56px,1fr) 34px;align-items:center;gap:4px;display:grid}.refraction-stage-rx-steppers span,.refraction-stage-rx-steppers output{color:#08275d;font-size:.72rem;font-weight:900}.refraction-stage-rx-steppers output{text-align:center}.refraction-stage-rx-steppers button,.refraction-axis-picker-toggle,.refraction-wear-trial-button,.refraction-axis-picker button{color:#08275d;background:#fff;min-width:0;min-height:30px;padding:0 6px;font-size:.76rem;font-weight:900}.refraction-axis-apply-row{grid-template-columns:minmax(62px,.7fr) minmax(58px,.55fr);gap:5px;display:grid}.refraction-axis-picker-toggle{color:#06469b;background:#fff;border-color:#b9d7ef;width:100%}.refraction-wear-trial-button{color:#fff;background:linear-gradient(#1374df,#0b56ad);border-color:#0b63c7}.refraction-wear-trial-button:disabled{color:#7a91aa;box-shadow:none;background:#eef5fb;border-color:#d7e6f7}.refraction-axis-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.refraction-axis-picker button{min-height:32px;padding:0 4px;font-size:.74rem}.refraction-axis-picker button[aria-pressed=true]{color:#06469b;background:#fff;border-color:#0b63c7;box-shadow:inset 0 0 0 2px #0b63c73d}.refraction-jcc-stage-panel{z-index:10;background:#f8fcffeb;border:1px solid #b9d7efdb;border-radius:8px;gap:8px;width:min(35%,260px);max-height:calc(100% - 28px);padding:9px;display:grid;position:absolute;top:14px;right:12px;overflow:visible;box-shadow:0 12px 24px #071f491f}.refraction-jcc-power-note{z-index:9;color:#08275d;background:#f8fcffeb;border:1px solid #b9d7efdb;border-radius:8px;gap:2px;min-width:140px;padding:8px 10px;display:grid;position:absolute;top:12px;left:12px;box-shadow:0 12px 24px #071f491f}.refraction-jcc-power-note span{color:#526b86;font-size:.68rem;font-weight:900}.refraction-jcc-power-note strong{color:#061d49;white-space:nowrap;font-size:.8rem;font-weight:900}.refraction-jcc-power-note b,.refraction-jcc-power-note i{font-style:normal;font-weight:900}.refraction-jcc-power-note b{color:#b9151c}.refraction-jcc-power-note i{color:#111827}.refraction-jcc-preview,.refraction-cylinder-preview{background:#fff;border:1px solid #d7e6f7;border-radius:8px;place-items:center;gap:4px;min-width:0;padding:7px;display:grid;position:relative}.refraction-cylinder-preview{text-align:left;grid-template-columns:58px minmax(0,1fr)}.refraction-jcc-preview img,.refraction-cylinder-preview img{aspect-ratio:1;object-fit:contain;width:100%}.refraction-jcc-preview .refraction-lens-visual{width:min(100%,118px)}.refraction-cylinder-preview .refraction-lens-visual{width:54px}.refraction-jcc-preview strong,.refraction-cylinder-preview span{color:#08275d;overflow-wrap:anywhere;min-width:0;font-size:.75rem;font-weight:900}.refraction-jcc-stage-actions{z-index:14;background:#f8fcfff5;border:1px solid #b9d7efdb;border-radius:8px;grid-template-columns:minmax(0,1fr);gap:6px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 14px 26px #071f4929}.refraction-jcc-choice-pair{background:#fff;border:1px solid #d7e6f7;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:6px;display:grid}.refraction-jcc-stage-actions button{color:#08275d;white-space:normal;word-break:keep-all;background:#fff;min-width:0;min-height:36px;padding:0 6px;font-size:.72rem;font-weight:900}.refraction-jcc-stage-actions button[aria-pressed=true]{color:#06469b;background:#fff;border-color:#0b63c7;box-shadow:inset 0 0 0 2px #0b63c73d}.refraction-jcc-slots{gap:6px;display:grid}.refraction-jcc-slot{color:#08275d;text-align:left;background:#fff;gap:3px;min-height:52px;padding:7px 8px;display:grid}.refraction-jcc-slot[aria-pressed=true],.refraction-jcc-slot[aria-expanded=true]{background:#fff;border-color:#0b63c7;box-shadow:inset 0 0 0 2px #0b63c733}.refraction-jcc-slot span{color:#526b86;font-size:.68rem;font-weight:900}.refraction-jcc-slot strong{color:#061d49;overflow-wrap:anywhere;font-size:.76rem;line-height:1.25}.refraction-answer-stage-panel{z-index:7;background:#f8fcfff2;border:1px solid #b9d7efe0;border-radius:8px;grid-template-rows:auto auto auto minmax(92px,auto);align-content:start;gap:10px;width:auto;max-height:none;padding:14px;display:grid;position:absolute;inset:12px;overflow:auto;transform:none;box-shadow:0 18px 34px #071f4929}.refraction-answer-action-row{align-items:center;gap:8px;min-width:0;display:flex}.refraction-answer-action-row>button{min-height:36px;padding:0 14px;font-size:.82rem;font-weight:900}.refraction-answer-action-row .refraction-review-link{color:#06469b;background:#fff;margin-left:auto}.refraction-answer-action-row .refraction-review-link:disabled{cursor:not-allowed;opacity:.46;color:#72859b;background:#eef3f8}.refraction-answer-heading-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.refraction-answer-heading-row .fundus-card-heading{min-width:0}.refraction-answer-copy{color:#06469b;white-space:nowrap;background:#fff;flex:none;min-height:30px;padding:0 8px;font-size:.74rem;font-weight:900}.refraction-answer-formula{grid-template-columns:minmax(0,1fr);align-items:start;gap:8px;display:grid}.refraction-answer-va-row{min-width:0;display:flex}.refraction-answer-rx-row{grid-template-columns:minmax(164px,.9fr) minmax(258px,1.45fr);gap:8px;min-width:0;display:grid}.refraction-answer-va-row label,.refraction-answer-lens-field{background:#fff;border:1px solid #d7e6f7;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:8px;display:grid}.refraction-answer-va-row label{width:min(180px,100%)}.refraction-answer-lens-field{grid-template-columns:auto 32px minmax(62px,1fr) 32px}.refraction-answer-lens-field.is-cylinder-axis{grid-template-columns:auto 32px minmax(58px,1fr) 32px auto minmax(64px,.85fr)}.refraction-answer-va-row span,.refraction-answer-lens-field span{color:#08275d;white-space:nowrap;font-size:.86rem;font-weight:900}.refraction-answer-va-row select,.refraction-answer-lens-field input,.refraction-answer-lens-field select,.refraction-answer-lens-field button{color:#08275d;background:#fff;min-width:0;min-height:36px;padding:0 7px;font-size:.82rem;font-weight:900}.refraction-answer-lens-field input{text-align:center;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace}.refraction-answer-stage-panel>.primary-action{justify-self:start;min-height:36px;padding:0 16px}.refraction-answer-placeholder{color:#7a91aa;text-align:center;background:#ffffff9e;border:1px dashed #bfd9ef;border-radius:8px;place-items:center;min-height:92px;padding:14px;font-size:.95rem;font-weight:900;display:grid}.refraction-answer-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.refraction-answer-score-grid span{box-sizing:border-box;background:#fff;border:1px solid #d7e6f7;border-radius:8px;grid-template-columns:auto auto;gap:4px 8px;min-width:0;padding:9px;display:grid}.refraction-answer-result[data-rank=SS],.refraction-answer-result[data-rank=S],.refraction-answer-result[data-rank=A],.refraction-answer-score-grid span[data-rank=S],.refraction-answer-score-grid span[data-rank=A]{background:#effaf3;border-color:#9ed7b4}.refraction-answer-result[data-rank=B],.refraction-answer-score-grid span[data-rank=B]{background:#fff;border-color:#d7e6f7}.refraction-answer-result[data-rank=C],.refraction-answer-result[data-rank=D],.refraction-answer-score-grid span[data-rank=C],.refraction-answer-score-grid span[data-rank=D]{background:#fff8f8;border-color:#f3c1c1}.refraction-answer-score-grid b,.refraction-answer-score-grid em,.refraction-answer-score-grid small{color:#08275d;min-width:0;font-style:normal;font-weight:900}.refraction-answer-score-grid b{font-size:.86rem}.refraction-answer-score-grid em{color:#06469b;justify-self:end;font-size:1.05rem}.refraction-answer-score-grid small{color:#526b86;overflow-wrap:anywhere;grid-column:1/-1;font-size:.7rem}.refraction-answer-result{gap:8px}.refraction-answer-result>strong{color:#061d49;font-size:1.28rem;line-height:1.18}.refraction-review-panel{z-index:7;background:#f8fcfff5;border:1px solid #b9d7efe0;border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:14px;display:grid;position:absolute;inset:12px;box-shadow:0 18px 34px #071f4929}.refraction-review-summary{grid-template-columns:minmax(74px,.45fr) minmax(90px,.55fr) minmax(180px,1.2fr) minmax(180px,1.2fr) auto;gap:8px;display:grid}.refraction-review-stat,.refraction-review-play,.refraction-review-step-buttons button{background:#fff;border:1px solid #d7e6f7;border-radius:8px;gap:2px;min-width:0;padding:8px;display:grid;position:relative}.refraction-review-stat.has-help{padding-right:28px}.refraction-review-stat.has-help>.refraction-option-help{margin-left:0;position:absolute;top:6px;right:6px}.refraction-review-stat.has-help .refraction-option-help-popover span{color:#163761;font-size:.76rem;font-weight:700}.refraction-review-nav{grid-template-columns:minmax(76px,1fr) 70px;gap:6px;min-width:152px;display:grid}.refraction-review-play{color:#06469b;place-items:center;min-width:76px;font-size:.82rem;font-weight:900}.refraction-review-play svg{fill:currentColor;stroke-width:2.3px;width:20px;height:20px}.refraction-review-play[aria-pressed=true]{background:#e5f2ff;border-color:#0b63c7}.refraction-review-step-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.refraction-review-step-buttons button{color:#06469b;place-items:center;min-height:0;padding:0;font-weight:900}.refraction-review-step-buttons svg{filter:none;stroke-width:2.6px;width:17px;height:17px}.refraction-review-step-buttons button:disabled{cursor:not-allowed;opacity:.45}.refraction-review-summary span,.refraction-history-list span,.refraction-history-detail span,.refraction-history-list small,.refraction-history-detail small{color:#526b86;font-size:.68rem;font-weight:900}.refraction-review-summary strong,.refraction-history-list strong,.refraction-history-detail strong{color:#08275d;overflow-wrap:anywhere;min-width:0;font-size:.86rem;font-weight:900}.refraction-review-body{grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr);gap:10px;min-height:0;display:grid}.refraction-history-list,.refraction-history-detail{min-height:0;overflow:auto}.refraction-history-list{scrollbar-color:#86add5 #eaf3fb;scrollbar-width:thin;scrollbar-gutter:stable;touch-action:pan-y;align-content:start;gap:7px;padding-right:6px;display:grid;overflow-y:scroll}.refraction-history-list::-webkit-scrollbar{width:12px}.refraction-history-list::-webkit-scrollbar-track{background:#eaf3fb;border-radius:999px}.refraction-history-list::-webkit-scrollbar-thumb{background:#86add5;border:3px solid #eaf3fb;border-radius:999px}.refraction-history-list button{text-align:left;touch-action:pan-y;background:#fff;border:1px solid #d7e6f7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label response""detail response";align-items:center;gap:4px;width:100%;min-height:72px;padding:8px 10px;line-height:1.28;display:grid;overflow:visible}.refraction-history-list button strong,.refraction-history-list button small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.refraction-history-list button strong{grid-area:label;align-items:baseline;gap:4px;display:flex}.refraction-history-list button small{grid-area:detail}.refraction-history-order{color:#0b63c7;flex:none}.refraction-history-count{color:#526b86;flex:none;font-size:.7em}.refraction-history-list button[aria-pressed=true]{background:#eef7ff;border-color:#0b63c7}.refraction-history-list em{color:#06469b;white-space:nowrap;background:#e5f2ff;border-radius:8px;grid-area:response;place-self:center start;width:fit-content;max-width:100%;padding:2px 6px;font-size:.66rem;font-style:normal;font-weight:900}.refraction-history-detail{grid-template-rows:auto minmax(0,1fr);gap:8px;display:grid}.refraction-history-detail>div{background:#fff;border:1px solid #d7e6f7;border-radius:8px;gap:3px;padding:8px;display:grid}.refraction-history-detail .refraction-optics-svg{min-height:220px}.refraction-history-optics-stack{gap:8px;min-height:0;display:grid;overflow:auto}.refraction-history-optics-stack .refraction-optics-svg{min-height:205px}.refraction-actual-optics-ghost{color:#0b5f9f;opacity:.62}.refraction-actual-optics-ghost line,.refraction-actual-optics-ghost circle{fill:none;stroke:currentColor;stroke-width:7px;stroke-dasharray:12 10}.refraction-actual-optics-ghost text{fill:#245678;font-size:23px;font-weight:900}.refraction-optics-svg .astigmatism-axis-line,.refraction-optics-svg .astigmatism-ray,.refraction-optics-svg .astigmatism-cornea,.refraction-optics-svg .astigmatism-focus-line,.refraction-optics-svg .astigmatism-least-circle,.refraction-optics-svg .astigmatism-retina-line,.refraction-optics-svg .astigmatism-meridian-ellipse,.refraction-optics-svg .refraction-focus-point,.refraction-optics-svg .refraction-actual-optics-ghost line,.refraction-optics-svg .refraction-actual-optics-ghost circle{vector-effect:non-scaling-stroke}.refraction-optics-svg .astigmatism-axis-line{stroke-width:1.2px}.refraction-optics-svg .astigmatism-ray{stroke-width:1.7px}.refraction-optics-svg .astigmatism-cornea,.refraction-optics-svg .astigmatism-meridian-ellipse{stroke-width:1.9px}.refraction-optics-svg .astigmatism-focus-line{stroke-width:3px}.refraction-optics-svg .astigmatism-least-circle{stroke-width:1.3px}.refraction-optics-svg .astigmatism-retina-line{stroke-width:1.8px}.refraction-optics-svg .refraction-focus-point{fill:#fff;stroke:#08275d;stroke-width:2px}.refraction-optics-svg .refraction-actual-optics-ghost line,.refraction-optics-svg .refraction-actual-optics-ghost circle{stroke-width:2.8px}@keyframes refraction-optics-history-enter{0%{opacity:.35;transform:translate(14px)}to{opacity:1;transform:translate(0)}}.refraction-options-card{gap:10px}.refraction-option-section{gap:8px;display:grid}.refraction-option-type{background:#f8fcff;border:1px solid #d7e6f7;border-radius:8px;gap:7px;padding:8px;display:grid}.refraction-option-type>span{color:#526b86;font-size:.72rem;font-weight:900}.refraction-option-section.is-secondary{border-top:1px solid #d7e6f7;margin-top:2px;padding-top:10px}.refraction-option-line{align-items:center;gap:4px;min-width:0;display:flex;position:relative}.refraction-option-row{color:#08275d;align-items:center;gap:8px;min-width:0;font-size:.88rem;font-weight:900;display:flex}.refraction-option-row span{min-width:0}.refraction-option-row input{accent-color:#0b63c7;flex:none;width:18px;height:18px}.refraction-option-row:has(input:disabled){opacity:.48}.refraction-option-help{flex:none;margin-left:-1px;display:inline-flex;position:static}.refraction-option-help button{color:#0b63c7;width:18px;height:18px;box-shadow:none;cursor:help;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid}.refraction-option-help svg{stroke-width:2.2px;width:16px;height:16px}.refraction-option-help-popover{z-index:25;color:#163761;opacity:0;pointer-events:none;background:#fff;border:1px solid #c6dcf4;border-radius:8px;gap:4px;width:min(270px,100vw - 40px);padding:10px;font-size:.76rem;line-height:1.45;transition:opacity .16s,transform .16s;display:grid;position:absolute;top:calc(100% + 7px);right:0;transform:translateY(-3px);box-shadow:0 14px 32px #051c412e}.refraction-option-help-popover strong{color:#08275d;font-size:.78rem}.refraction-option-help:hover .refraction-option-help-popover,.refraction-option-help:focus-within .refraction-option-help-popover{opacity:1;transform:translateY(0)}.refraction-options-card p{color:#526b86;margin:0;font-size:.78rem;line-height:1.55}.refraction-case-share{gap:7px}.refraction-case-share-label{color:#526b86;flex:none;font-size:.78rem;font-weight:900}.refraction-case-share-code{color:#08275d;text-overflow:ellipsis;white-space:nowrap;background:#f8fcff;border:1px solid #d7e6f7;border-radius:6px;min-width:0;padding:2px 7px;font-size:.8rem;font-weight:700;overflow:hidden}.refraction-case-share-button{justify-content:center;align-items:center;gap:7px;font-size:.85rem;display:inline-flex}.refraction-case-share-button svg{width:15px;height:15px}.refraction-autoref-card{gap:10px}.refraction-autoref-readout{grid-area:readout;align-self:start}.refraction-autoref-inline{padding:10px}.refraction-autoref-result{background:#f8fcff;border:1px solid #d7e6f7;border-radius:8px;gap:4px;min-width:0;padding:9px;display:grid}.refraction-autoref-result span,.refraction-autoref-result small{color:#526b86;font-size:.72rem;font-weight:900}.refraction-autoref-result strong{color:#08275d;overflow-wrap:anywhere;font-size:.9rem;font-weight:900}.refraction-autoref-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.refraction-autoref-actions button{justify-content:center;min-height:36px;font-size:.82rem;font-weight:900}.refraction-autoref-actions button:disabled{cursor:not-allowed;opacity:.48}.refraction-stage-lens-dock>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.refraction-stage-lens-dock>div>span{color:#526b86;grid-column:1/-1;font-size:.68rem;font-weight:900}.refraction-lens-image-button{background:#fff;place-items:center;min-width:0;min-height:54px;padding:4px;display:grid;position:relative;overflow:hidden}.refraction-lens-image-button img{aspect-ratio:1;object-fit:contain;width:100%}.refraction-lens-image-button .refraction-lens-visual{width:100%}.refraction-lens-image-button strong{color:#061d49;white-space:nowrap;background:#ffffffe6;border-radius:6px;padding:2px 4px;font-size:.62rem;font-weight:900;line-height:1.05;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.refraction-lens-image-button.is-plus{border-color:#d8a72c}.refraction-lens-image-button.is-minus{border-color:#aab4bd}.refraction-point-cluster{background:#fff;border:1px solid #cde2f5;border-radius:8px;grid-template-columns:repeat(5,8px);justify-content:center;gap:6px;width:82px;padding:9px;display:grid}.refraction-point-cluster span{background:#111827;border-radius:50%;width:5px;height:5px}.refraction-point-cluster span:first-child,.refraction-point-cluster span:nth-child(2),.refraction-point-cluster span:nth-child(4),.refraction-point-cluster span:nth-child(5),.refraction-point-cluster span:nth-child(6),.refraction-point-cluster span:nth-child(10){visibility:hidden}.refraction-response-bubble{background:#f8fcffeb;border:1px solid #b9d7ef;border-radius:8px;gap:4px;width:min(34%,240px);padding:12px;display:grid;position:absolute;bottom:16px;left:16px;right:auto;box-shadow:0 12px 24px #071f491f}.refraction-stage[data-view=front] .refraction-response-bubble{width:min(31%,230px);inset:auto auto 18px 14px}.refraction-response-bubble span{color:#526b86;font-size:.76rem;font-weight:900}.refraction-response-bubble strong{color:#061d49;overflow-wrap:anywhere;font-size:clamp(1rem,4.4vw,1.35rem);line-height:1.25}.refraction-readout-grid{gap:8px;display:grid}.refraction-readout-grid>div{background:#eef7ff;border-radius:8px;gap:3px;padding:10px;display:grid}.refraction-readout-grid span{color:#526b86;font-size:.76rem;font-weight:900}.refraction-readout-grid strong{color:#061d49;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(.96rem,4vw,1.14rem)}.refraction-readout-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.refraction-readout-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.refraction-readout-actions button{color:#06469b;background:#f8fcff;align-items:center;gap:6px;min-height:36px;padding:0 10px;font-size:.78rem;font-weight:900;display:inline-flex}.refraction-readout-actions svg{filter:none;width:17px;height:17px}.refraction-debug-panel,.refraction-optics-panel{border-top:1px solid #d7e6f7;gap:10px;margin-top:10px;padding-top:10px;display:grid}.refraction-debug-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.refraction-debug-summary>div{background:#f8fcff;border-radius:8px;gap:3px;min-width:0;padding:9px;display:grid}.refraction-debug-summary span,.refraction-debug-table [role=columnheader]{color:#526b86;font-size:.72rem;font-weight:900}.refraction-debug-summary strong,.refraction-debug-table span{color:#061d49;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.82rem}.refraction-debug-table{gap:4px;display:grid;overflow-x:auto}.refraction-debug-table [role=row]{grid-template-columns:82px 82px 74px minmax(220px,1fr);align-items:center;gap:6px;min-width:520px;display:grid}.refraction-debug-table [role=row]>*{background:#f3f9ff;border-radius:6px;min-width:0;padding:7px}.refraction-optics-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.refraction-optics-tabs button{color:#06469b;background:#f8fcff;min-width:0;min-height:38px;padding:0 8px;font-size:.82rem;font-weight:900}.refraction-optics-diagram-panel{background:linear-gradient(90deg,#1d71ca0d 1px,#0000 1px) 0 0/22px 22px,linear-gradient(#fff,#f6fbff);border:1px solid #cde2f5;border-radius:8px;overflow:hidden}.refraction-optics-svg{background:0 0;border:0;width:100%;max-height:360px;display:block}.refraction-optics-viewer{min-width:0;position:relative;overflow:hidden}.refraction-optics-viewport{min-height:0;overflow:hidden}.refraction-optics-viewport[data-pannable=true]{cursor:grab;touch-action:none}.refraction-optics-viewport[data-pannable=true]:active{cursor:grabbing}.refraction-optics-zoom-layer{min-width:0}.refraction-optics-zoom-controls{z-index:2;background:#ffffffeb;border:1px solid #b9d7efe0;border-radius:999px;grid-template-columns:32px auto 32px;align-items:center;gap:3px;padding:3px;display:inline-grid;position:absolute;top:8px;right:8px;box-shadow:0 8px 18px #071f4924}.refraction-optics-zoom-controls button{color:#06469b;background:#f8fcff;border-radius:50%;place-items:center;width:30px;height:30px;min-height:0;padding:0;display:grid}.refraction-optics-zoom-controls button:disabled{cursor:not-allowed;opacity:.35}.refraction-optics-zoom-controls svg{filter:none;stroke-width:2.4px;width:17px;height:17px}.refraction-optics-zoom-controls span{color:#08275d;text-align:center;min-width:42px;font-size:.7rem;font-weight:900}.refraction-direction-pad{grid-area:directions;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:".up.""left.right"".down.";align-content:start;align-self:start;gap:6px;display:grid}.refraction-direction-pad button{min-width:0;min-height:52px;font-size:1.2rem;font-weight:900}.refraction-direction-pad button:first-child{grid-area:up}.refraction-direction-pad button:nth-child(2){grid-area:right}.refraction-direction-pad button:nth-child(3){grid-area:down}.refraction-direction-pad button:nth-child(4){grid-area:left}.refraction-lens-step-grid,.refraction-overlens-grid,.refraction-jcc-grid,.refraction-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.refraction-jcc-grid{grid-template-columns:minmax(0,1fr)}.refraction-lens-step-grid button,.refraction-overlens-grid button,.refraction-jcc-grid button{color:#08275d;white-space:normal;background:#f8fcff;min-width:0;min-height:38px;padding:0 7px;font-size:.8rem;font-weight:900}.refraction-answer-grid input,.refraction-answer-grid select{min-width:0}@media (width>=760px){.refraction-workbench{grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"stage side""readout side"}.refraction-step-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.refraction-stage{min-height:520px}.refraction-patient-image{left:var(--refraction-patient-back-left);bottom:var(--refraction-patient-back-bottom);width:var(--refraction-patient-back-width);height:auto;min-height:0}.refraction-stage[data-view=front] .refraction-patient-image{left:var(--refraction-eye-left);top:var(--refraction-eye-top);width:var(--refraction-patient-front-width);height:auto;bottom:auto}.refraction-readout-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.refraction-monitor{width:min(40%,390px);top:6%;left:35%}.refraction-chart-controller{grid-template-columns:minmax(0,1fr) minmax(128px,.38fr)}.refraction-stage-rx-controls{width:min(36%,292px)}.refraction-stage-rx-controls .refraction-trial-toggle-label{display:none}.refraction-stage-rx-controls .refraction-panel-toggle{pointer-events:none}.refraction-jcc-stage-actions{width:min(112%,292px);top:0;left:auto;right:calc(100% + 8px)}}@media (width<=759px){.refraction-stage-toolbar{align-items:stretch}.refraction-stage-toolbar .fundus-reset-button{min-width:112px}.refraction-step-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.refraction-step-strip button{min-height:34px;padding:0 3px;font-size:.68rem}.refraction-stage{--refraction-eye-left:33%;--refraction-eye-top:49%;--refraction-patient-front-width:98%;--refraction-patient-front-offset-x:-34%;--refraction-patient-front-offset-y:-64%;--refraction-patient-back-left:31%;--refraction-patient-back-bottom:8px;--refraction-patient-back-width:31%;min-height:340px}.refraction-stage[data-mode=answer]{min-height:380px}.refraction-stage[data-mode=review]{min-height:640px}.refraction-patient-image{width:var(--refraction-patient-back-width);height:auto;aspect-ratio:var(--refraction-patient-back-aspect);object-fit:contain;opacity:.96;min-height:0;position:absolute;bottom:58px;left:31%;transform:translate(-50%)}.refraction-stage[data-view=front] .refraction-patient-image{left:var(--refraction-eye-left);top:var(--refraction-eye-top);width:var(--refraction-patient-front-width);height:calc(163.3vw - 65.32px);aspect-ratio:var(--refraction-patient-front-aspect);object-fit:cover;object-position:center;max-width:none;transform:translate(var(--refraction-patient-front-offset-x), var(--refraction-patient-front-offset-y));bottom:auto}.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=child]{--refraction-patient-front-offset-x:-35%;--refraction-patient-front-offset-y:-62%}.refraction-stage[data-view=front] .refraction-patient-image[data-age-group=young]{--refraction-patient-front-offset-x:-34%;--refraction-patient-front-offset-y:-64%}.refraction-monitor{width:46%;padding:5px;top:9%;left:8px;transform:none}.refraction-response-bubble{width:min(45%,172px);padding:9px 10px;bottom:8px;left:8px;right:auto;transform:none}.refraction-stage[data-view=front] .refraction-response-bubble{width:min(45%,172px);inset:auto auto 8px 8px;transform:none}.refraction-stage[data-mode=jcc] .refraction-response-bubble{width:min(45%,172px);padding:7px 8px;bottom:8px;left:8px}.refraction-response-bubble strong{font-size:.92rem;line-height:1.1}.refraction-stage[data-mode=jcc] .refraction-response-bubble strong{white-space:nowrap;font-size:.92rem;line-height:1.1}.refraction-front-target,.refraction-over-lens,.refraction-answer-board{min-width:min(64%,250px);padding:9px;bottom:10px;left:42%}.refraction-stage-lens-dock{width:36%;max-height:calc(100% - 120px);padding:6px;top:8px;right:8px}.refraction-stage-lens-dock>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.refraction-lens-image-button{min-height:42px;padding:3px}.refraction-lens-image-button strong{font-size:.54rem}.refraction-presented-instrument{width:43%}.refraction-presented-sphere{width:36%}.refraction-presented-jcc{width:39%}.refraction-presented-instrument strong{font-size:.68rem;bottom:7%}.refraction-point-cluster{grid-template-columns:repeat(5,8px);gap:5px;width:74px;padding:7px}.refraction-chart-controller{grid-template-columns:minmax(0,1fr) minmax(110px,.42fr);grid-template-areas:"heading heading""va directions"}.refraction-autoref-inline{gap:7px;padding:8px}.refraction-autoref-inline .fundus-card-heading h2{font-size:.86rem}.refraction-autoref-result{padding:7px}.refraction-autoref-result strong{font-size:.78rem}.refraction-autoref-actions button{min-height:32px;padding:0 6px;font-size:.72rem}.refraction-va-controller{grid-template-columns:minmax(0,1fr)}.refraction-direction-pad button{min-height:44px}.refraction-jcc-stage-panel{width:42%;max-height:none;padding:6px;top:8px;right:8px}.refraction-jcc-power-note{min-width:124px;padding:6px 8px;top:8px;left:8px}.refraction-jcc-power-note strong{font-size:.68rem}.refraction-cylinder-preview{display:none}.refraction-jcc-stage-actions{grid-template-columns:minmax(0,1fr);gap:4px;width:112%;max-height:none;padding:5px;top:0;left:auto;right:calc(100% + 4px);overflow:visible}.refraction-jcc-stage-actions button{min-height:34px;padding:0 4px;font-size:.56rem;line-height:1.12}.refraction-jcc-choice-pair{gap:4px;padding:5px}.refraction-stage[data-view=front] .refraction-front-target{width:74px;padding:5px;bottom:96px;right:144px}.refraction-trial-frame{width:40%}.refraction-frame-degree{min-width:22px;min-height:14px;font-size:.38rem}.refraction-frame-axis-label{padding:3px 6px;font-size:.6rem;bottom:-24px}.refraction-stage-rx-controls{gap:5px;width:52%;max-height:72%;padding:6px;bottom:8px;right:8px}.refraction-stage[data-view=front] .refraction-stage-rx-controls{width:52%;inset:auto 8px 8px auto}.refraction-stage-rx-current strong{gap:2px;padding:5px 6px;font-size:.58rem}.refraction-stage-rx-current .refraction-trial-rx-line{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}.refraction-stage-rx-steppers>div{grid-template-columns:14px 28px minmax(42px,1fr) 28px;gap:3px}.refraction-stage-rx-steppers button,.refraction-axis-picker-toggle,.refraction-wear-trial-button,.refraction-axis-picker button{min-height:26px;font-size:.64rem}.refraction-axis-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.refraction-jcc-slot{min-height:42px;padding:5px 6px}.refraction-jcc-slot strong{font-size:.62rem}.refraction-answer-stage-panel{grid-template-rows:auto auto auto minmax(0,1fr);width:auto;max-height:none;padding:10px;inset:8px}.refraction-answer-formula{gap:5px}.refraction-answer-rx-row{grid-template-columns:minmax(112px,.88fr) minmax(184px,1.45fr);gap:5px}.refraction-answer-va-row label,.refraction-answer-lens-field{padding:5px}.refraction-answer-va-row label{grid-template-columns:auto minmax(64px,1fr);width:128px}.refraction-answer-lens-field{grid-template-columns:auto 24px minmax(44px,1fr) 24px;gap:3px}.refraction-answer-lens-field.is-cylinder-axis{grid-template-columns:auto 22px minmax(42px,1fr) 22px auto minmax(42px,.88fr);gap:2px}.refraction-answer-va-row span,.refraction-answer-lens-field span{font-size:.72rem}.refraction-answer-va-row select,.refraction-answer-lens-field input,.refraction-answer-lens-field select,.refraction-answer-lens-field button{min-height:30px;padding:0 3px;font-size:.74rem}.refraction-answer-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.refraction-answer-score-grid span{gap:2px 5px;padding:6px}.refraction-answer-score-grid b{font-size:.7rem}.refraction-answer-score-grid small{font-size:.56rem;line-height:1.25}.refraction-answer-score-grid em{font-size:.9rem}.refraction-answer-result>strong{font-size:1.14rem}.refraction-answer-action-row>button{min-height:32px;padding:0 10px;font-size:.74rem}.refraction-review-panel{grid-template-rows:auto minmax(0,1fr);padding:10px;inset:8px}.refraction-review-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 96px;grid-template-areas:"turn time play""lens lens play""actual actual play";gap:5px}.refraction-review-stat,.refraction-review-play{padding:6px}.refraction-review-stat:first-of-type{grid-area:turn}.refraction-review-stat:nth-of-type(2){grid-area:time}.refraction-review-final-rx{grid-area:lens}.refraction-review-true-rx{grid-area:actual}.refraction-review-nav{grid-area:play;grid-template-rows:minmax(42px,1fr) 28px;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0}.refraction-review-play{min-width:0;font-size:.68rem}.refraction-review-play svg{width:18px;height:18px}.refraction-review-step-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.refraction-review-step-buttons button{min-height:28px;padding:0}.refraction-review-step-buttons svg{width:15px;height:15px}.refraction-review-stat.has-help .refraction-option-help-popover{width:min(220px,100vw - 28px);left:50%;right:auto;transform:translate(-50%,-3px)}.refraction-review-stat.has-help .refraction-option-help:hover .refraction-option-help-popover,.refraction-review-stat.has-help .refraction-option-help:focus-within .refraction-option-help-popover{transform:translate(-50%)}.refraction-review-summary span,.refraction-history-list span,.refraction-history-detail span,.refraction-history-list small,.refraction-history-detail small{font-size:.6rem}.refraction-review-summary strong,.refraction-history-list strong,.refraction-history-detail strong{font-size:.72rem}.refraction-review-body{grid-template-rows:252px minmax(228px,1fr);grid-template-columns:minmax(0,1fr);gap:6px}.refraction-history-list{scrollbar-width:auto;max-height:none;padding-right:9px}.refraction-history-list::-webkit-scrollbar{width:14px}.refraction-history-list button{grid-template-columns:minmax(0,1fr) auto;gap:2px;min-height:58px;padding:5px 6px}.refraction-history-list button strong{display:flex;overflow:visible}.refraction-history-list em{padding:1px 5px;font-size:.58rem}.refraction-history-detail{grid-template-rows:minmax(0,1fr);gap:0;overflow:visible}.refraction-history-detail>div:first-child{display:none}.refraction-history-optics-stack{gap:5px;overflow:visible}.refraction-history-detail .refraction-optics-svg{min-height:228px;max-height:248px}.refraction-history-optics-stack .refraction-optics-svg{min-height:224px;max-height:244px}.refraction-history-detail .refraction-optics-zoom-controls{grid-template-columns:28px auto 28px;gap:2px;padding:2px;top:2px;right:6px}.refraction-history-detail .refraction-optics-zoom-controls button{width:26px;height:26px}.refraction-history-detail .refraction-optics-zoom-controls span{min-width:34px;font-size:.62rem}.refraction-history-detail .astigmatism-label-card text{font-size:24px}.refraction-history-detail .astigmatism-focus-diopter{font-size:26px}.refraction-history-detail .astigmatism-model-readout text{font-size:24px}.refraction-debug-summary{grid-template-columns:minmax(0,1fr)}.refraction-readout-heading{flex-direction:column;align-items:stretch}.refraction-readout-actions{justify-content:stretch}.refraction-readout-actions button{flex:120px;justify-content:center}}@media (width<=390px){.refraction-step-strip button,.refraction-segmented button,.refraction-lens-step-grid button,.refraction-overlens-grid button,.refraction-jcc-grid button{font-size:.74rem}.refraction-stage{--refraction-eye-left:32%;--refraction-eye-top:49%;--refraction-patient-front-width:102%;--refraction-patient-front-offset-x:-34%;--refraction-patient-front-offset-y:-64%;--refraction-patient-back-left:30%;--refraction-patient-back-bottom:8px;--refraction-patient-back-width:30%;min-height:300px}.refraction-stage[data-mode=answer]{min-height:380px}.refraction-patient-image{width:var(--refraction-patient-back-width);height:auto;aspect-ratio:var(--refraction-patient-back-aspect)}.refraction-stage[data-view=front] .refraction-patient-image{left:var(--refraction-eye-left);top:var(--refraction-eye-top);width:var(--refraction-patient-front-width);height:calc(162vw - 64.8px);aspect-ratio:var(--refraction-patient-front-aspect);max-width:none;transform:translate(var(--refraction-patient-front-offset-x), var(--refraction-patient-front-offset-y))}.refraction-monitor{width:46%}.refraction-stage-lens-dock{width:39%}.refraction-stage-rx-controls,.refraction-stage[data-view=front] .refraction-stage-rx-controls{width:54%}.refraction-answer-stage-panel{padding:8px;left:6px;right:6px}.refraction-review-panel{padding:8px;inset:6px}.refraction-answer-formula{gap:4px}.refraction-answer-rx-row{grid-template-columns:minmax(106px,.84fr) minmax(178px,1.42fr);gap:4px}.refraction-answer-va-row label{grid-template-columns:auto minmax(60px,1fr);width:124px}.refraction-answer-lens-field{grid-template-columns:auto 21px minmax(38px,1fr) 21px;gap:2px}.refraction-answer-lens-field.is-cylinder-axis{grid-template-columns:auto 19px minmax(36px,1fr) 19px auto minmax(38px,.86fr);gap:2px}.refraction-answer-va-row select,.refraction-answer-lens-field input,.refraction-answer-lens-field select,.refraction-answer-lens-field button{min-height:30px;padding:0 2px;font-size:.72rem}.refraction-chart-controller{grid-template-columns:minmax(0,1fr) 96px;gap:7px;padding:8px}.refraction-direction-pad{gap:4px}.refraction-direction-pad button{aspect-ratio:1;min-height:0;padding:0}.refraction-va-button-grid,.refraction-va-button-grid>div{gap:4px}.refraction-va-button-grid button{min-height:28px;padding:0 4px;font-size:.76rem}.refraction-low-va-toggle{min-height:30px}.refraction-answer-action-row{gap:5px}.refraction-answer-action-row>button{padding:0 8px;font-size:.7rem}.refraction-answer-score-grid{gap:4px}.refraction-answer-score-grid span{padding:5px}.refraction-answer-score-grid small{font-size:.52rem}.refraction-history-detail .refraction-optics-svg{min-height:236px;max-height:250px}}.home-genre-button,.tour-trigger-button{color:#06469b;background:#fff;border-color:#b9d7ef;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 12px;font-size:.9rem;font-weight:900;display:inline-flex}.home-genre-button svg,.tour-trigger-button svg,.genre-drawer-heading button svg,.genre-link-list svg{filter:none;width:18px;height:18px}.home-nav .home-genre-button{margin-left:auto}.genre-drawer-layer{z-index:80;position:fixed;inset:0}.genre-drawer-backdrop{background:#071f4952;border:0;border-radius:0;min-height:0;position:absolute;inset:0}.genre-drawer{background:#fff;border-right:1px solid #cde2f5;align-content:start;gap:18px;width:min(88vw,360px);padding:18px;animation:.18s ease-out both drawer-slide-in;display:grid;position:absolute;inset:0 auto 0 0;overflow-y:auto;box-shadow:18px 0 40px #071f492e}@keyframes drawer-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.genre-drawer-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.genre-drawer-heading h2{color:#061d49;margin:0;font-size:1.28rem}.genre-drawer-heading button{place-items:center;width:42px;min-height:42px;padding:0;display:grid}.genre-groups{gap:14px;display:grid}.genre-group{gap:8px;display:grid}.genre-group h3{color:#216d7a;margin:0;font-size:.82rem}.genre-group p{color:#526b86;background:#f8fcff;border:1px dashed #cde2f5;border-radius:8px;margin:0;padding:10px;font-weight:800}.genre-link-list{gap:7px;display:grid}.genre-link-list a{color:#071f49;background:#f8fcff;border:1px solid #d7e6f7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px;padding:9px 10px;font-weight:900;display:grid}.category-sidebar{background:#fff;border:1px solid #d7e6f7;border-radius:8px;align-self:start;gap:20px;padding:20px;box-shadow:0 14px 30px #194c8717}.category-sidebar h2{color:#061d49;margin:0;font-size:1.22rem}.category-sidebar .genre-groups{gap:16px}.category-sidebar .genre-group{gap:10px}.category-sidebar .genre-group h3{font-size:.9rem}.category-sidebar .genre-link-list a{min-height:50px;padding:12px 13px;font-size:.96rem}.status-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.new-arrival-pill{color:#d61f2c;letter-spacing:0;text-transform:uppercase;background:0 0;width:fit-content;margin:0;padding:0;font-size:.82rem;font-weight:900}.simulator-title-actions{flex-wrap:wrap;align-items:start;gap:10px;display:flex}.simulator-title-actions .usage-disclosure{flex:260px}.tour-trigger-button{flex:none}.onboarding-layer{z-index:120;pointer-events:none;position:fixed;inset:0}.onboarding-scrim{background:#03142c94;position:absolute;inset:0}.onboarding-highlight{pointer-events:none;background:#ffffff1a;border:2px solid #8fd2ff;border-radius:10px;transition:top .14s,left .14s,width .14s,height .14s;position:fixed;box-shadow:0 0 0 9999px #03142c6b,0 0 0 6px #8fd2ff2e}.onboarding-skip,.onboarding-card{pointer-events:auto;position:fixed}.onboarding-skip{z-index:2;color:#06469b;background:#fff;border-color:#cde2f5;min-height:40px;padding:0 12px;font-size:.86rem;font-weight:900;top:12px;right:12px}.onboarding-card{z-index:2;color:#071f49;background:#fff;border:1px solid #b9d7ef;border-radius:8px;gap:9px;max-width:calc(100vw - 24px);padding:14px;transition:top .14s,left .14s;display:grid;box-shadow:0 18px 34px #03142c3d}.onboarding-progress{color:#216d7a;margin:0;font-size:.76rem;font-weight:900}.onboarding-card h2{color:#061d49;margin:0;font-size:1.06rem}.onboarding-card p:not(.onboarding-progress){color:#263b57;margin:0;line-height:1.62}.onboarding-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:2px;display:grid}.onboarding-actions button{min-width:0;min-height:42px;font-weight:900}@media (width<=759px){.home-nav{flex-wrap:wrap}.home-nav .home-genre-button{order:3;width:100%;margin-left:0}.tour-trigger-button{width:100%}.refraction-stage[data-view=back] .refraction-patient-image[data-sprite=true]{left:var(--refraction-patient-back-left);bottom:var(--refraction-patient-back-bottom);width:var(--refraction-patient-back-width);aspect-ratio:.6;height:auto}.refraction-patient-profile-badge{width:104px;min-width:0;padding:6px 8px;top:10px;bottom:auto;left:10px}.refraction-patient-profile-badge[data-view=back]{width:112px;top:auto;bottom:68px;left:12px}.refraction-patient-profile-badge span{font-size:.64rem}.refraction-patient-profile-badge strong{font-size:.74rem}.refraction-age-option-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7px}.refraction-age-option{font-size:.74rem}}
