/* One measured coordinate system; no independent stretching of panel parts. */
.calculator.photo-panel{position:relative;width:355px!important;height:745px!important;min-height:745px!important;max-height:745px!important;padding:0!important;border:0;border-radius:46px 46px 40px 40px;background:#2e2e2e url('/assets/fx991cncw2-original.png') -222px -28px / 800px 800px no-repeat;box-shadow:0 8px 20px #182d3526;isolation:isolate}
.photo-panel .device-top,.photo-panel .device-sub{visibility:hidden}
.calculator.photo-panel .navigation-pad,.calculator.photo-panel .science-keypad,.calculator.photo-panel .keypad{position:absolute;inset:0;width:355px;height:745px;margin:0;padding:0;display:block;pointer-events:none;background:none;border:0}
.calculator.photo-panel .navigation-pad:before,.calculator.photo-panel .navigation-pad:after,.photo-panel .direction-bridge{display:none}
.calculator.photo-panel .key-slot,.calculator.photo-panel .nav-slot{position:absolute;left:var(--key-x);top:var(--key-y);width:var(--key-w);height:var(--key-h);margin:0;padding:0;display:block;background:none;border:0;box-shadow:none;pointer-events:none}
.calculator.photo-panel button[data-key]{position:absolute;inset:0;display:block;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:50%;background: url('/assets/fx991cncw2-original.png') var(--cap-x) var(--cap-y) / 800px 800px no-repeat;box-shadow:none;color:transparent;font-size:0;pointer-events:auto;cursor:pointer;transition:transform 65ms ease-out}
.calculator.photo-panel .nav-pageup button{border-radius:50% 50% 0 0}.calculator.photo-panel .nav-pagedown button{border-radius:0 0 50% 50%}
/* The page rocker is one physical cap with two independent click regions. */
.calculator.photo-panel .navigation-pad:after{content:"";display:block;position:absolute;left:291px;top:274px;width:36px;height:82px;border:0;border-radius:18px;margin:0;box-shadow:none;background:url('/assets/fx991cncw2-original.png') -513px -302px / 800px 800px no-repeat;pointer-events:none;z-index:0;transition:transform 65ms ease-out}
.calculator.photo-panel .nav-pageup,.calculator.photo-panel .nav-pagedown{z-index:1}
.calculator.photo-panel .nav-pageup button,.calculator.photo-panel .nav-pagedown button{background:none}
.calculator.photo-panel .nav-pageup button[data-key]:active,.calculator.photo-panel .nav-pagedown button[data-key]:active{transform:none!important;filter:none}
.calculator.photo-panel .navigation-pad:has(.nav-pageup button:hover,.nav-pagedown button:hover):after{filter:brightness(1.06)}
.calculator.photo-panel .navigation-pad:has(.nav-pageup button:active,.nav-pagedown button:active):after{transform:translateY(1px);filter:brightness(.93)}
.photo-panel button[data-key]>*{visibility:hidden}.photo-panel .key-legend,.photo-panel .nav-legend{visibility:hidden}
.calculator.photo-panel button[data-key]:hover{filter:brightness(1.06)}
.calculator.photo-panel button[data-key]:active{transform:translateY(1px)!important;filter:brightness(.93)}
.calculator.photo-panel button[data-key].pressed{outline:1px solid #a6d7ef;outline-offset:1px}
.calculator.photo-panel button[data-key].key-next{filter:brightness(1.16);z-index:4}
.calculator.photo-panel button[data-key].key-blocked{filter:brightness(.87);cursor:not-allowed}
.calculator.photo-panel .screen{position:absolute;left:37px;top:111px;width:281px;height:113px!important;min-height:113px!important;max-height:113px!important;margin:0;border:0;border-radius:5px;padding:5px 8px;background:#d3e7dc;color:#172e25;box-shadow:inset 0 1px 2px #1e342132;overflow:hidden}
.photo-panel .screen-status{position:absolute;top:5px;left:8px;right:8px;height:12px;font-size:9px;padding:0;border:0;gap:8px}.photo-panel .screen-status button{font-size:9px}
.photo-panel .screen #expression{position:absolute;top:18px;left:8px;width:calc(100% - 16px);height:22px;padding:0;font-size:14px;line-height:22px}
.photo-panel #natural-expression{position:absolute;top:40px;left:8px;right:8px;min-height:0;height:28px;padding:0;font-size:13px}
.photo-panel #exact-result{position:absolute;left:8px;right:8px;bottom:17px;height:28px;padding-right:3px;font-size:17px}
.photo-panel #natural-expression,.photo-panel #exact-result,.photo-panel #display{scrollbar-width:none}
.photo-panel #natural-expression::-webkit-scrollbar,.photo-panel #exact-result::-webkit-scrollbar,.photo-panel #display::-webkit-scrollbar{display:none}
.photo-panel .screen #display{position:absolute;bottom:4px;left:8px;right:8px;height:24px;min-height:0;font-size:21px;line-height:24px;white-space:nowrap;overflow-x:auto}
.photo-panel .screen:has(#exact-result:not(:empty)) #display{font-size:11px;bottom:0;height:16px;line-height:16px}
.photo-panel .screen #display.error{font-size:11px;white-space:normal;line-height:1.2}
.photo-panel #screen-note{display:none}
.photo-panel #panel-training-screen{position:absolute;inset:5px 8px}
.photo-panel .panel-status{font-size:9px;line-height:12px;padding:0 0 2px}
.photo-panel .panel-field-name{font-size:9px;line-height:12px;margin:2px 0}
.photo-panel .panel-content{height:55px;font-size:12px;line-height:18px}
.photo-panel .screen-menu-item{line-height:18px}
.photo-panel .panel-entry{font-size:17px;line-height:21px;padding-top:2px;max-height:52px}
.photo-panel .screen-result-line{font-size:12px;line-height:18px}
.photo-panel .panel-foot{font-size:8px;line-height:11px;padding-top:1px;margin-top:1px}
.photo-panel .screen-ready{padding:5px 0}
.calculator.photo-panel .device-masthead{position:absolute;left:30px;top:18px;width:295px;height:85px;margin:0;padding:0}
.calculator.photo-panel #battle-screen{position:absolute;inset:0;margin:0;background:#25332f;border-radius:8px}
.calculator.photo-panel #battle-screen .pixel-sky{height:77px}.calculator.photo-panel #battle-screen .boss-health{height:4px;margin-top:3px}
.free-device-host{width:355px}
@media(prefers-reduced-motion:reduce){.calculator.photo-panel button[data-key]{transition:none}}
