.sim,.intro,.photoset--split{max-width:58rem}.photoset--split .photoset__fig img{aspect-ratio:1200 / 630}.sim{margin-top:var(--space-xl)}.sim__load{display:none;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);line-height:1.3;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity var(--dur-long) var(--ease-out),visibility var(--dur-long)}.sim.has-load .sim__load{display:flex}.sim.is-loading .sim__load{opacity:1;visibility:visible}.sim__load-bar{flex:1;height:var(--rule-thick);overflow:hidden;background:var(--color-rule)}.sim__load-fill{display:block;height:100%;background:var(--color-accent);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-long) var(--ease-out)}.sim__modes{min-width:0;margin:0 0 var(--space-md);padding:0;border:0}.sim__modes legend{padding:0;margin-bottom:var(--space-xs)}.sim__opts{display:grid}.sim__mode{position:relative;display:flex}.sim__mode + .sim__mode{margin-top:calc(-1 * var(--rule-hair))}.sim__mode:focus-within{z-index:2}.sim__mode input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.sim__mode>span{display:flex;flex:1;align-items:center;min-height:44px;padding:var(--space-sm) var(--space-lg);border:var(--rule-hair) solid var(--color-accent);color:var(--color-accent);font-size:var(--text-sm);font-weight:500;white-space:nowrap}.sim__mode:hover>span{background:var(--color-paper-2)}.sim__mode input:checked + span{position:relative;z-index:1;background:var(--color-accent);color:var(--color-accent-ink)}.sim__mode input:focus-visible + span{outline:var(--rule-thick) solid var(--color-focus);outline-offset:3px}.sim__mode--nudge::before{content:'';position:absolute;inset:0;background:var(--color-accent);opacity:0;pointer-events:none}.sim__mode--nudge.is-nudged::before{animation:sim-nudge 1.4s var(--ease-in-out) 3}.sim__hint{position:absolute;bottom:calc(100% + var(--space-3xs));left:calc(50% - 12px);display:flex;align-items:center;gap:var(--space-3xs);width:max-content;color:var(--color-accent);font-size:var(--text-sm);font-weight:600;line-height:1.3;white-space:nowrap;cursor:pointer;opacity:0;visibility:hidden;translate:0 4px;transition:opacity var(--dur-long) var(--ease-out),translate var(--dur-long) var(--ease-out),visibility var(--dur-long)}.is-nudged .sim__hint{opacity:1;visibility:visible;translate:none}.is-flipped .sim__hint{right:calc(50% - 12px);left:auto;flex-direction:row-reverse}.is-below .sim__hint{top:calc(100% + var(--space-3xs));bottom:auto}.sim__hint-arrow{flex:none;width:24px;height:24px;max-width:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.is-flipped .sim__hint-arrow{scale:-1 1}.is-below .sim__hint-arrow{scale:1 -1}.is-below.is-flipped .sim__hint-arrow{scale:-1 -1}.is-nudged .sim__hint-arrow{animation:sim-bob 1.4s var(--ease-in-out) 3}.sim__hint-tap{display:none}@keyframes sim-nudge{50%{opacity:0.24}}@keyframes sim-bob{50%{transform:translateY(3px)}}.sim__stage{position:relative;max-width:100%;aspect-ratio:1280 / 830;overflow:hidden;background:var(--color-ink-deep);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm)}.sim__v{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;background-position:center;background-size:cover;opacity:0;transition:opacity var(--dur-short) var(--ease-out)}.sim:not(.is-live):has(#sim-normal:checked) .sim__v--normal,.sim:not(.is-live):has(#sim-blurry:checked) .sim__v--blurry,.sim:not(.is-live):has(#sim-astigmatism:checked) .sim__v--astigmatism,.sim:not(.is-live):has(#sim-double-vision:checked) .sim__v--double-vision,.sim:not(.is-live):has(#sim-floaters:checked) .sim__v--floaters,.sim:not(.is-live):has(#sim-cataract:checked) .sim__v--cataract,.sim:not(.is-live):has(#sim-glaucoma-early:checked) .sim__v--glaucoma-early,.sim:not(.is-live):has(#sim-glaucoma-moderate:checked) .sim__v--glaucoma-moderate,.sim:not(.is-live):has(#sim-glaucoma-advanced:checked) .sim__v--glaucoma-advanced,.sim:not(.is-live):has(#sim-scene-day:checked):has(#sim-type-normal:checked) .sim__v--types-day-normal,.sim:not(.is-live):has(#sim-scene-day:checked):has(#sim-type-nuclear:checked) .sim__v--types-day-nuclear,.sim:not(.is-live):has(#sim-scene-day:checked):has(#sim-type-cortical:checked) .sim__v--types-day-cortical,.sim:not(.is-live):has(#sim-scene-day:checked):has(#sim-type-psc:checked) .sim__v--types-day-psc,.sim:not(.is-live):has(#sim-scene-night:checked):has(#sim-type-normal:checked) .sim__v--types-night-normal,.sim:not(.is-live):has(#sim-scene-night:checked):has(#sim-type-nuclear:checked) .sim__v--types-night-nuclear,.sim:not(.is-live):has(#sim-scene-night:checked):has(#sim-type-cortical:checked) .sim__v--types-night-cortical,.sim:not(.is-live):has(#sim-scene-night:checked):has(#sim-type-psc:checked) .sim__v--types-night-psc,.sim:not(.is-live):has(#sim-scene-closeup:checked):has(#sim-type-normal:checked) .sim__v--types-closeup-normal,.sim:not(.is-live):has(#sim-scene-closeup:checked):has(#sim-type-nuclear:checked) .sim__v--types-closeup-nuclear,.sim:not(.is-live):has(#sim-scene-closeup:checked):has(#sim-type-cortical:checked) .sim__v--types-closeup-cortical,.sim:not(.is-live):has(#sim-scene-closeup:checked):has(#sim-type-psc:checked) .sim__v--types-closeup-psc,.sim:not(.is-live):has(#sim-scene-clinic:checked):has(#sim-type-normal:checked) .sim__v--types-clinic-normal,.sim:not(.is-live):has(#sim-scene-clinic:checked):has(#sim-type-nuclear:checked) .sim__v--types-clinic-nuclear,.sim:not(.is-live):has(#sim-scene-clinic:checked):has(#sim-type-cortical:checked) .sim__v--types-clinic-cortical,.sim:not(.is-live):has(#sim-scene-clinic:checked):has(#sim-type-psc:checked) .sim__v--types-clinic-psc,.sim:not(.is-live):has(#sim-time-day:checked):has(#sim-lens-astig:checked) .sim__v--lens-day-astig,.sim:not(.is-live):has(#sim-time-day:checked):has(#sim-lens-monofocal:checked) .sim__v--lens-day-monofocal,.sim:not(.is-live):has(#sim-time-day:checked):has(#sim-lens-multifocal:checked) .sim__v--lens-day-multifocal,.sim:not(.is-live):has(#sim-time-day:checked):has(#sim-lens-edof:checked) .sim__v--lens-day-edof,.sim:not(.is-live):has(#sim-time-night:checked):has(#sim-lens-astig:checked) .sim__v--lens-night-astig,.sim:not(.is-live):has(#sim-time-night:checked):has(#sim-lens-monofocal:checked) .sim__v--lens-night-monofocal,.sim:not(.is-live):has(#sim-time-night:checked):has(#sim-lens-multifocal:checked) .sim__v--lens-night-multifocal,.sim:not(.is-live):has(#sim-time-night:checked):has(#sim-lens-edof:checked) .sim__v--lens-night-edof{background-image:var(--poster);opacity:1}.sim.is-live .sim__v.is-on{opacity:1}.sim__play{position:absolute;right:var(--space-sm);bottom:var(--space-sm);display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:var(--radius-sm);background:var(--scrim-soft);color:var(--color-on-dark);cursor:pointer}.sim__play[hidden]{display:none}.sim__wait{position:absolute;left:var(--space-sm);bottom:var(--space-sm);display:flex;align-items:center;height:44px;padding-inline:var(--space-sm);border-radius:var(--radius-sm);background:var(--scrim-strong);color:var(--color-on-dark);font-size:var(--text-sm);font-weight:500;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--dur-short) var(--ease-out),visibility var(--dur-short)}.sim.is-waiting .sim__wait{opacity:1;visibility:visible;transition-delay:300ms}.sim__play:focus-visible{outline-color:var(--color-focus-dark)}.sim__ico{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sim__ico--play,.sim__play.is-paused .sim__ico--pause{display:none}.sim__play.is-paused .sim__ico--play{display:block}.sim--grid .sim__opts .sim__mode{margin:0 calc(-1 * var(--rule-hair)) calc(-1 * var(--rule-hair)) 0}.sim--grid .sim__mode>span{padding-inline:var(--space-md)}.copy .simwarn,.simwarn{color:var(--color-alert)}.simnote{display:grid;gap:var(--space-sm);margin-top:var(--space-lg);padding:var(--space-md);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);border-inline-start:var(--rule-thick) solid var(--color-accent)}.simnote__icon{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;color:var(--color-accent)}.simnote__body{display:grid;justify-items:start;gap:var(--space-md)}.simnote .simnote__text{max-width:var(--measure);font-size:var(--text-base);color:var(--color-ink-2)}.simnote__text strong{font-weight:600;color:var(--color-ink)}.sim + .copy{margin-top:var(--space-lg)}.sim--cued + .copy{margin-top:var(--space-xl)}@media (min-width:23rem) and (max-width:39.99rem){.sim--grid .sim__opts{grid-template-columns:repeat(2,minmax(max-content,1fr))}.sim--grid .sim__opts .sim__mode:last-child:nth-child(odd){grid-column:1 / -1}}@media (min-width:24rem){.simnote{grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-md);padding:var(--space-md) var(--space-lg)}}@media (min-width:40rem){.sim__opts{grid-auto-flow:column;justify-content:start}.sim__mode + .sim__mode{margin-top:0;margin-left:calc(-1 * var(--rule-hair))}.sim--grid .sim__opts{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(max-content,1fr))}}.sim--axes .sim__stage{margin-bottom:var(--space-md)}.sim--axes .sim__load{margin-top:calc(-1 * var(--space-xs))}.sim--axes .sim__opts{display:flex;flex-wrap:wrap;padding:0 var(--rule-hair) var(--rule-hair) 0}.sim--axes .sim__opts .sim__mode{flex:1 1 0;min-width:max-content;margin:0 calc(-1 * var(--rule-hair)) calc(-1 * var(--rule-hair)) 0}.sim--axes .sim__mode>span{justify-content:center;padding-inline:var(--space-sm)}@media (min-width:64rem) and (hover:hover){.sim--axes{display:flex;flex-direction:column}.sim--axes .sim__load,.sim--axes .sim__modes{order:-1}.sim--axes .sim__load{margin-top:0}.sim--axes .sim__stage{margin-bottom:0}.sim--cued + .copy{margin-top:var(--space-lg)}}@media (hover:none){.sim__hint-click{display:none}.sim__hint-tap{display:inline}}@media (prefers-reduced-motion:reduce){.sim__v,.sim__hint,.sim__load,.sim__load-fill{transition:none}.sim__wait{transition:visibility 0s}.sim__mode--nudge.is-nudged::before,.is-nudged .sim__hint-arrow{animation:none}}
