@font-face{font-family:ClassWizX;src:url('assets/fonts/ClassWizXDisplay-Regular.woff2')}@font-face{font-family:ClassWizCW;src:url('assets/fonts/PocketCWDisplay-Regular.woff2')}@font-face{font-family:ClassWizMathX;src:url('assets/fonts/ClassWizMathX-Regular.otf')}@font-face{font-family:ClassWizMathCW;src:url('assets/fonts/ClassWizMathCW-Regular.otf')}
html,body{background:#131416}#app{max-width:none;padding:0;height:100dvh;gap:0;align-items:center}.switchbar{width:100%;height:31px;flex-basis:31px;margin:0;background:#131416;z-index:5}.switch{padding:2px}.switch button{padding:4px 24px;font-size:11px}.switchbar #about{right:4px;font-size:20px}#calculator.ex,#calculator.cw{width:100%;max-width:480px;flex:1;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:none;gap:0;overflow:hidden;display:block;isolation:isolate}.face{position:absolute;pointer-events:none;z-index:-1;max-width:none}.ex .face{left:-69.121%;top:-5.565%;width:237.530%;height:111.296%}.cw .face{left:-60.442%;top:-2.632%;width:220.994%;height:105.263%}.branding,.modeltag,.underlabel,.bottom-mark{display:none!important}#calculator .bezel{position:absolute;padding:0;margin:0;border:0;border-radius:2.5%;background:none;box-shadow:none;min-height:0;display:block;overflow:hidden}.ex .bezel{left:9.8%;top:14.95%;width:79.7%;height:14.95%}.cw .bezel{left:10.3%;top:14.88%;width:79.4%;height:14.94%}#calculator #lcd{width:100%;height:100%;border-radius:3px;padding:2px 4px;background:#c9d8c7;color:#10190f;box-shadow:inset 0 0 3px #779076;font-family:ClassWizX,monospace;font-weight:400}#calculator.cw #lcd{background:#cadfd3;font-family:ClassWizCW,monospace}#status{font-family:ClassWizX;font-size:11px;height:13%;min-height:9px;gap:8px;border:0;letter-spacing:0;line-height:1}#status .mode{display:none}#calculator.home-screen #status,#calculator.menu-screen #status{display:none}#calculator.home-screen #screen,#calculator.menu-screen #screen{height:100%}#screen{height:87%;scrollbar-width:none}#screen::-webkit-scrollbar{display:none}#error{font-family:inherit;inset:6px 4px;background:#c9d8c7;font-size:18px;z-index:4}#error small{font-family:inherit;font-size:15px}.menu-title{font-size:18px;line-height:1.1;padding:1px 1px;border-bottom:1px solid #253324;font-weight:400;background:inherit}.menu-list{padding:0}.menu-item{font-family:inherit;font-weight:400;font-size:20px;line-height:1.1;height:25px;padding:1px 2px}.menu-item.selected{background:#142416;color:#d4e1ce}.cw .menu-item{font-size:20px;height:26px}.menu-item .chevron{margin-left:auto}.menu-grid{padding:0;gap:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);height:100%;align-items:stretch}.ex .menu-grid{height:71%;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);padding-top:2px}.app-icon{height:100%;min-height:0;padding:0;border:0;border-radius:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:none;color:#101b10}.app-icon img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;mix-blend-mode:multiply;pointer-events:none}.cw .app-icon.selected{background:#102515}.cw .app-icon.selected img{filter:invert(1);mix-blend-mode:screen}.ex .app-icon img{width:98%;height:94%;filter:invert(1);mix-blend-mode:multiply}.ex .app-icon.selected{background:#111e12}.ex .app-icon.selected img{filter:none;mix-blend-mode:screen}.ex-home-label{font:25px/1 ClassWizX;margin:1px 0 0;height:28%;white-space:nowrap}.home-scroll{position:absolute;right:0;top:5%;height:44%;width:3px;background:#2c452e}.home-scroll.bottom{top:50%}.home-grid-page{height:100%}.form-row{min-height:25px;border:0}.form-row label{font:19px ClassWizX;min-width:55px}.cw .form-row label{font-family:ClassWizCW}.form-row math-field{font-size:22px;min-height:26px}.lcd-action{font:19px/1.1 ClassWizX;padding:1px 2px;margin:1px 0;background:transparent;color:#102010;text-align:left;display:block}.lcd-action:before{content:'▸ '}.cw .lcd-action{font-family:ClassWizCW}.data-table{font:18px ClassWizX}.cw .data-table{font-family:ClassWizCW}.data-table td,.data-table th{padding:1px 3px;font-weight:400;border-color:#456246;min-width:24px;height:24px}.data-table button{min-height:20px}.sheet-editor{font:18px ClassWizX;min-height:24px}.sheet-editor math-field{font-size:22px;min-height:25px}.result-list{font:22px/1.15 ClassWizX}.cw .result-list{font-family:ClassWizCW}.result-list div{padding:1px 1px;border:0}.result-list span:last-child{white-space:nowrap}.calc-editor{min-height:44%;height:auto}.result{font-size:30px;min-height:40%;padding:0 2px;line-height:1}.result-note{display:none}math-field{font-size:30px;min-height:30px;font-weight:400}math-field::part(content){padding:1px 0}math{font-family:ClassWizMathX;font-size:1em}.cw math{font-family:ClassWizMathCW}.full-result{padding:2px;font-size:29px}.result .ML__mathlive,.result .ML__cmr,.result .ML__mathit{font-family:ClassWizMathX!important}.cw .result .ML__mathlive,.cw .result .ML__cmr,.cw .result .ML__mathit{font-family:ClassWizMathCW!important}
#calculator #navigation,#calculator #scientific,#calculator #numeric{display:contents}#calculator .key{position:absolute;border:0;margin:0;padding:0;background:transparent!important;border-radius:30%;box-shadow:none!important;color:transparent!important;font-size:0!important;transform:none;z-index:2;aspect-ratio:auto!important;max-height:none!important;min-height:0!important;align-self:auto!important;justify-self:auto!important}#calculator .key .shiftlabel,#calculator .key .alphalabel{display:none}#calculator .key:active{background:#ffffff22!important;filter:none}#calculator .key.latched{box-shadow:0 0 0 2px #e6d991aa,inset 0 0 9px #eedb7d77!important}#calculator .dpad{position:absolute;margin:0;display:block;background:none;box-shadow:none;border:0;z-index:2;left:32%;top:35.7%;width:33%;height:11.5%}#calculator .dpad button{position:absolute;color:transparent;background:none;border:0;width:34%;height:34%;font-size:0}#calculator .dpad .up{left:33%;top:0}#calculator .dpad .down{left:33%;bottom:0}#calculator .dpad .left{left:0;top:33%}#calculator .dpad .right{right:0;top:33%}#calculator .dpad .ok{left:33%;top:33%}#calculator .dpad button:active{background:#ffffff20;border-radius:30%}.skin-scroll-hint{position:absolute;right:0;bottom:0;font:15px ClassWizX;pointer-events:none}
@media(min-width:500px){#calculator.ex,#calculator.cw{max-width:calc((100dvh - 31px)*.48)}}
#calculator.ex{border-radius:14% 14% 10% 10% / 5% 5% 3% 3%}.cw .app-icon img{clip-path:inset(0 2% 4% 0)}.menu-index{position:absolute;bottom:0;right:0;font:14px/1 ClassWizX;background:#c9d8c7;color:#10190f;padding-left:1px}.menu-title:empty{display:none}
html,body,#app{overflow:clip}#calculator.ex,#calculator.cw{overflow:clip!important}#calculator .calc-editor{min-height:0;height:48%;overflow:hidden}#calculator .calc-editor math-field{font-size:23px;min-height:0}#calculator .result{font-size:23px;min-height:0;height:48%;padding:0 2px;overflow:auto}#calculator .full-result{font-size:25px}#calculator #status{height:11%}#calculator #screen{height:89%}#calculator.home-screen #screen,#calculator.menu-screen #screen{height:100%}
/* The LCD shows a fixed hardware viewport, rather than a scrolling app page. */
#screen{position:relative}.menu-list{padding-top:8px;height:100%;padding-right:5px}.menu-item,.cw .menu-item{height:23px;padding:0 2px;line-height:23px;font-size:21px;white-space:nowrap}.menu-scroll{position:absolute;right:0;top:8%;height:88%;width:2px;background:#20382033}.menu-scroll div{position:absolute;width:2px;background:#172c18}.menu-item .chevron{font-family:monospace;font-size:19px}.result,.calc-editor{scrollbar-width:none!important}.result::-webkit-scrollbar,.calc-editor::-webkit-scrollbar{display:none}.array-prompt{position:absolute;bottom:1px;right:1px;text-align:right;white-space:pre;font-size:22px;line-height:1.05}.data-table{font-size:14px;table-layout:fixed}.data-table th,.data-table td{height:15px;min-width:0;max-width:none;padding:0 3px;background:transparent}.data-table th:first-child{width:22px}.data-table button{min-height:14px;height:14px;line-height:14px}.sheet-editor{min-height:17px;height:19px;border-top:1px solid #243924;font-size:13px;background:transparent}.sheet-editor math-field{font-size:16px;min-height:0;height:19px}.table-footer{font-size:16px;line-height:19px}.data-table th{text-align:center}.data-table td.active{background:#132718;color:#cadfd3}#screen[data-mode=Statistics][data-kind=grid] .data-table{width:auto;min-width:29%}#screen[data-mode=Statistics][data-kind=grid] .data-table td,#screen[data-mode=Statistics][data-kind=grid] .data-table th{border-top:0;border-bottom:0}#screen[data-mode=Statistics][data-kind=grid] .data-table td{width:63px;min-width:63px}#screen[data-mode=Statistics][data-kind=grid] .data-table th:first-child{border-left:0}.form-row label{font-size:19px}.form-row{gap:2px}#screen[data-kind=form] .menu-title{font-size:17px}#screen[data-kind=result] .menu-title{font-size:17px}.result-list{font-size:19px}#screen[data-kind=grid],#screen[data-kind=sheet],#screen[data-kind=table]{overflow:hidden}#screen[data-kind=grid] .sheet-editor{position:absolute;bottom:0;width:100%}#screen[data-kind=sheet] .sheet-editor{position:absolute;bottom:0;width:100%}

.cw .app-icon img{clip-path:inset(0 4% 5% 0)}
.cw #status{position:relative;font-family:ClassWizCW}.cw .status-angle{position:absolute;left:22%;top:1px;border:1px solid #162b19;font-size:7px;line-height:7px;height:9px;padding:0 1px}.cw .status-textbook{position:absolute;left:12%;top:0;font-size:13px;line-height:10px}.cw .status-shift{position:absolute;left:1%;font-size:9px;line-height:9px;border:1px solid #162b19}.cw .status-number{position:absolute;left:31%;font-size:8px;line-height:9px}.data-table{font-size:13px;line-height:13px}.data-table th,.data-table td{height:15px;line-height:13px}.data-table button{font-size:13px;line-height:13px;height:13px;min-height:13px}.table-footer{font-size:14px;line-height:16px}#screen[data-kind=grid] .sheet-editor:not(.editing){visibility:hidden}
#screen[data-kind=form] .menu-title{font-size:20px;line-height:22px;height:23px;border:0;padding:0}#screen[data-kind=form] .form-row{height:23px;min-height:0;line-height:23px;padding:0 2px}#screen[data-kind=form] .form-row label{min-width:88px;font-size:20px;line-height:23px}#screen[data-kind=form] .form-row math-field{font-size:20px;min-height:0;height:23px}#screen[data-kind=form] .lcd-action{font-size:20px;line-height:23px;height:23px;padding:0 2px;margin:0;width:100%;border:0}#screen[data-kind=form] .lcd-action.selected{background:#142416;color:#d4e1ce}#screen[data-kind=form]{overflow:hidden}

/* The calculator occupies the entire display. Small controls sit beside the
   Dynamic Island, over the otherwise empty top edge of the casing. */
html,body{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
img,canvas{-webkit-user-drag:none;-webkit-touch-callout:none}
#app{position:relative;width:100%;height:100dvh;padding:0;gap:0}
.switchbar{position:absolute;inset:0 0 auto;margin:0 auto;height:40px;flex-basis:auto;max-width:480px;background:none;pointer-events:none;z-index:10}
.switch{display:contents}
.switch button{position:absolute;top:9px;padding:5px 9px;border-radius:7px;font-size:10px;line-height:14px;background:#17191ce8;color:#bfc2c7;pointer-events:auto}
.switch button[data-model=EX]{left:8px}
.switch button[data-model=CW]{right:8px}
.switch .selected{background:#44484eee;color:white;box-shadow:0 1px 3px #0005}
.switchbar #about{top:7px;left:88px;right:auto;width:24px;padding:2px;font-size:19px;line-height:23px;pointer-events:auto;color:#aaaeb5}
@media(min-width:500px){#calculator.ex,#calculator.cw,.switchbar{max-width:calc(100dvh*.48)}}

/* Replay directions use the same measured, clipped shapes as the 3D keys. */
#calculator .dpad{display:contents}
#calculator .dpad .key{position:absolute;font-size:0;padding:0;right:auto;bottom:auto}

/* WKWebView's CSS3D overlay lands below the matching native-rendered recess.
   Lift only the native overlay; browser rendering is already centred. */
#calculator #lcd{box-sizing:border-box}
html[data-native-host="1"] #calculator #lcd{transform:translateY(-5.5%)}
