:root{--ink:#102d4f;--muted:#526b80;--paper:#f6f8fb;--line:#dce5ed;--coral:#efb399}*{box-sizing:border-box}body{margin:0;background:#edf2f7;color:#40546b;font-family:Inter,system-ui,sans-serif;font-size:14px}.calc-activity{--zsa-max-width:1400px;--zsa-navy:#102d4f;max-width:1400px;padding:28px 36px 30px;background:var(--paper);color:#40546b;font-size:14px;line-height:1.5}.calc-activity [hidden],[hidden]{display:none!important}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #387ee0;outline-offset:4px}.activity-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:24px}.identity{display:flex;align-items:center;gap:12px}.brand{display:grid;place-items:center;width:46px;height:46px;flex-shrink:0;border:1px solid #e0e8f0;border-radius:11px;background:white}.brand img{display:block}.calc-activity h1{font-size:clamp(22px,2.2vw,30px);line-height:1.2;letter-spacing:-.04em;margin:0;font-weight:600;color:var(--ink)}.activity-header nav{display:flex;gap:8px;flex-shrink:0}.calc-activity .zsa-btn,.outline{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;font-size:13px;border:1px solid #c9d7e5;border-radius:8px;padding:9px 13px;background:white;color:#274864}.calc-activity .primary{background:#187566;color:white;border-color:#187566}.calc-activity .primary:hover{background:#126357;color:white}.workspace{display:grid;grid-template-columns:minmax(330px,430px) minmax(280px,1fr);gap:28px;align-items:start;max-width:1060px;margin:0 auto}.panel{background:#fff;border:1px solid #dce5ef;border-radius:14px;box-shadow:0 4px 18px #193d6508;padding:24px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:.14em;color:#536c82;margin:0}.calculator-wrap{width:100%;min-width:0}.calculator{padding:24px 26px 16px;border-radius:22px 22px 32px 32px;background:#183e50;box-shadow:0 7px 0 #102d3f,0 15px 28px #193d6517;border:1px solid #335d6d}.calc-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#e9f2f4;font-size:19px;font-weight:650;margin-bottom:18px;line-height:1.2}.calc-top b{display:block;font-size:8px;font-weight:400;letter-spacing:2px;margin-top:5px;color:#b6cfda}.solar{width:76px;height:24px;background:repeating-linear-gradient(90deg,#304039 0,#304039 16px,#526258 17px,#526258 18px);border:2px solid #102d3f;border-radius:3px;flex-shrink:0}.lcd{background:#e2eacb;border:6px solid #102e3c;border-radius:9px;height:117px;padding:8px 12px;color:#293e2f;font-family:ui-monospace,monospace;box-shadow:inset 0 2px 5px #1d392826;line-height:1.2}#indicators{font-size:10px;letter-spacing:1px;height:16px}#expression{font-size:20px;white-space:pre;overflow:auto;height:28px;scrollbar-width:none}#answer{font-size:29px;text-align:right;overflow:auto;white-space:nowrap}.keypad{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(9,58px);gap:5px 11px;margin-top:14px}.key{position:relative;padding-top:14px;min-width:0}.key>span{position:absolute;top:0;left:0;right:0;text-align:center;color:var(--coral);font-size:9px;line-height:12px;white-space:nowrap}.calc-activity .key button{width:100%;height:41px;min-height:0;border-radius:7px;border:1px solid #6d8e9a;background:#355e6c;color:#f4f7ef;box-shadow:0 3px 0 #0b2c3b;font-size:15px;font-weight:500;padding:0 2px;touch-action:manipulation}.key button:active{transform:translateY(2px);box-shadow:0 1px 0 #0b2c3b}.calc-activity .key.num button{background:#edf2ec;color:#224151;border-color:#fff;font-size:19px}.calc-activity .key.second button{background:#efb399;color:#303c3c;border-color:#f5c8b6}.calc-activity .key.enter button{background:#95cbb8;color:#163d39;font-size:11px;border-color:#b5dece}.key button.expected{outline:2px solid #f7c189;outline-offset:3px}.calc-activity .key button[aria-pressed=true]{background:#efa986;color:#203e32}.dpad{grid-column:4/6;grid-row:1/3;display:grid;grid-template:repeat(3,27px)/repeat(3,1fr);align-self:center;margin:8px 4px 0}.calc-activity .dpad button{min-height:0;padding:0;background:#355e6c;color:#e9f2f4;border:1px solid #7098a8;font-size:12px;touch-action:manipulation}.dpad button:nth-child(1){grid-area:1/2;border-radius:10px 10px 0 0}.dpad button:nth-child(2){grid-area:2/1;border-radius:10px 0 0 10px}.dpad button:nth-child(3){grid-area:2/3;border-radius:0 10px 10px 0}.dpad button:nth-child(4){grid-area:3/2;border-radius:0 0 10px 10px}.calc-bottom{font-size:8px;letter-spacing:1.8px;text-align:center;color:#b1c8d0;margin-top:19px}.under-calc{font-size:11px;color:#526b80;margin:18px 0 0;display:flex;align-items:center;gap:6px}.under-calc>span{color:#187566;font-size:8px}.under-calc button{margin-left:auto;font-size:12px;color:#2b625c;border:0;background:none;padding:8px}.right{min-width:0}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:24px}.calc-activity .tabs button{background:none;border:0;padding:5px 0 12px;color:#526b80;font-size:13px}.tabs button.active{border-bottom:2px solid #187566;color:#163e5a}#count{font-size:10px;background:#eaf0f5;border-radius:4px;padding:2px 5px;margin-left:5px}.practice-heading{display:flex;justify-content:space-between;align-items:center}.practice-heading>span:last-child{font-size:10px;color:#526b80}.calc-activity h2{font-size:23px;font-weight:600;letter-spacing:-.6px;margin:12px 0 8px;color:var(--ink)}.muted{font-size:13px;color:var(--muted);margin:0 0 20px}.lesson{display:flex;width:100%;text-align:left;align-items:center;gap:12px;padding:15px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink)}.lesson .icon{background:#eaf3f1;border:1px solid #cee2dc;width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;border-radius:9px;font-family:serif;font-size:19px;color:#1e6a5d}.lesson b{font-size:13px;font-weight:600}.lesson small{display:block;color:#526b80;font-size:11px;margin-top:5px}.lesson .arrow{margin-left:auto;color:#187566}.lesson:hover .icon{background:#dceee8}.study-tip{margin-top:24px;background:#eef6f3;border:1px solid #cfe0db;border-left:3px solid #288576;padding:14px 16px;display:flex;gap:12px;border-radius:9px}.study-tip>span{font-size:21px;color:#187566}.study-tip p{margin:0;color:#305f55;font-size:12px;line-height:1.7}.study-tip b{font-weight:600;color:#214e44}.lesson-detail{border:1px solid #cfe0db;border-radius:9px;padding:16px;margin-top:15px;font-size:13px;line-height:1.7}.calc-activity .lesson-detail button{min-height:44px;border:0;border-radius:7px;background:#187566;color:white;padding:8px 12px;font-size:12px}.steps{font-family:monospace;font-size:12px;background:#eaf3f1;padding:10px;margin:10px 0}.lesson-sequence{font-size:11px}.free-practice{margin-left:6px}.about{margin:24px 0 0;padding:15px 21px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:13px;line-height:1.7}.about summary{cursor:pointer;color:#3d5871;font-weight:550;min-height:27px}.about p{margin:14px 0 0}.calc-activity .zsa-footer{font-size:11px;color:#536b80;margin-top:18px;padding-top:10px;border-color:#dce6ee;justify-content:space-between}.calc-activity .zsa-footer a{color:#274864}.calc-activity dialog{width:calc(100% - 32px);max-width:570px;max-height:85dvh;overflow:auto;padding:24px;border:1px solid #c5d3e4;border-radius:15px;background:white;color:#334155;box-shadow:0 18px 60px #0b2a5b33;font-size:14px;line-height:1.7}.calc-activity dialog::backdrop{background:#0b1b3373}.calc-activity dialog h2{margin-right:45px}.calc-activity .close{float:right;display:grid;place-items:center;width:44px;min-height:44px;background:white;border:1px solid #d8e1ed;border-radius:8px;color:#355579;font-size:25px}#modal-body button{min-height:44px;margin:5px;padding:10px 14px;border:1px solid #c9d7e5;border-radius:7px;background:#eef6f3;color:#214e44;font-size:13px}#modal-body input,#modal-body textarea{width:100%;padding:10px;background:#f8fafd;border:1px solid #b8c8dc;border-radius:7px;font:inherit;color:#334e72}#modal-body label{display:block;margin:12px 0}#history-list button{display:block;text-align:left;width:100%;background:none;border:0;border-bottom:1px solid var(--line);padding:15px 0;color:var(--ink);font-size:14px}#history-list b{float:right}#history-list:empty:after{content:'Your work will appear here. Try your first calculation.';display:block;color:#526b80;font-size:13px;padding:25px 0}.share-link{display:flex;gap:8px;margin-top:7px}.share-link input{min-width:0;flex:1}#share-status{min-height:22px;color:#38623e}.key button[data-key="MEMVAR"]{font-size:10px}.key button[data-key="STATVAR"],.key button[data-key="CLEAR"]{font-size:11px}.key.tall{grid-row:8 / 10}.key.tall button{height:calc(100% - 3px)}.row-1{grid-row:1}.row-2{grid-row:2}.row-3{grid-row:3}.row-4{grid-row:4}.row-5{grid-row:5}.row-6{grid-row:6}.row-7{grid-row:7}.row-8{grid-row:8}.row-9{grid-row:9}.col-1{grid-column:1}.col-2{grid-column:2}.col-3{grid-column:3}.col-4{grid-column:4}.col-5{grid-column:5}
@media(min-width:1450px){.calc-activity{margin:24px auto;border:1px solid #dee7ef;border-radius:20px}}@media(max-width:1000px){.calc-activity{padding:22px}.activity-header{flex-wrap:wrap}.workspace{gap:20px;grid-template-columns:minmax(310px,390px) minmax(260px,1fr)}.panel{padding:20px}}@media(max-width:760px){.calc-activity{padding:18px 14px}.activity-header{gap:15px;margin-bottom:17px;padding-bottom:17px}.identity{width:100%}.calc-activity h1{font-size:24px}.activity-header nav{margin-left:58px;flex-wrap:wrap}.calc-activity .zsa-btn{padding:9px 11px}.workspace{display:flex;flex-direction:column;align-items:center;gap:24px}.calculator-wrap,.right{width:100%;max-width:430px}.calculator{padding:20px}.calc-top{font-size:18px}.keypad{gap:5px 8px;grid-template-rows:repeat(9,53px)}.key>span{font-size:8px}.calc-activity .key button{font-size:14px;height:36px}.calc-activity .key.tall button{height:calc(100% - 3px)}.key button[data-key="MEMVAR"]{font-size:9px}.key button[data-key="STATVAR"],.key button[data-key="CLEAR"]{font-size:10px}.about{padding:15px;font-size:12px}.calc-activity .zsa-footer{gap:10px}.share-link{flex-wrap:wrap}.share-link input{flex-basis:100%;min-height:44px}.calc-activity dialog{padding:19px}}
/* Calculator-only mode fills the visual viewport, including browsers without native fullscreen. */
body.calculator-fullscreen{overflow:hidden;overscroll-behavior:none;background:#183e50}body.calculator-fullscreen .calc-activity{margin:0;padding:0;border:0;border-radius:0;max-width:none;background:#183e50}body.calculator-fullscreen .activity-header,body.calculator-fullscreen .right,body.calculator-fullscreen .under-calc,body.calculator-fullscreen .about,body.calculator-fullscreen .zsa-footer{display:none}body.calculator-fullscreen .workspace{display:block;margin:0;padding:0;max-width:none}body.calculator-fullscreen .calculator-wrap{position:fixed;inset:0;z-index:1000;width:100%;height:100vh;height:100dvh;max-width:none;display:flex;flex-direction:column;background:#183e50;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.fullscreen-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 14px;color:#c2dae3;font-size:11px;flex-shrink:0}.calc-activity .fullscreen-toolbar button{min-height:36px;font-size:12px;padding:5px 12px;border:1px solid #7395a2;border-radius:7px;background:#234f60;color:white}body.calculator-fullscreen .calculator{flex:1;min-height:0;display:flex;flex-direction:column;border:0;border-radius:0;box-shadow:none;padding:6px clamp(10px,3vw,28px) 8px;gap:0}body.calculator-fullscreen .calc-top{margin:0 0 8px;font-size:clamp(14px,3.8vw,23px);flex-shrink:0}body.calculator-fullscreen .calc-top b{display:inline;font-size:8px;margin-left:9px}body.calculator-fullscreen .solar{height:20px;width:65px}body.calculator-fullscreen .lcd{flex:0 0 clamp(78px,14dvh,135px);height:auto;min-height:0;padding:5px 10px;border-width:5px}body.calculator-fullscreen #indicators{height:14px;font-size:10px}body.calculator-fullscreen #expression{font-size:clamp(17px,3.2dvh,29px);height:1.25em}body.calculator-fullscreen #answer{font-size:clamp(23px,4dvh,40px)}body.calculator-fullscreen .keypad{flex:1;min-height:0;grid-template-rows:repeat(9,minmax(0,1fr));gap:clamp(3px,.6dvh,7px) clamp(6px,2vw,18px);margin-top:8px}body.calculator-fullscreen .key{min-height:0;padding-top:clamp(10px,1.6dvh,15px)}body.calculator-fullscreen .key>span{font-size:clamp(7px,1.2dvh,11px);line-height:1.4}body.calculator-fullscreen .key button{height:calc(100% - 3px);font-size:clamp(13px,2.4dvh,23px);border-radius:7px}body.calculator-fullscreen .key.num button{font-size:clamp(17px,3dvh,30px)}body.calculator-fullscreen .key button[data-key="MEMVAR"],body.calculator-fullscreen .key button[data-key="STATVAR"],body.calculator-fullscreen .key button[data-key="CLEAR"]{font-size:clamp(9px,1.7dvh,17px)}body.calculator-fullscreen .key.enter button{font-size:clamp(10px,1.8dvh,18px)}body.calculator-fullscreen .dpad{min-height:0;height:calc(100% - 12px);grid-template-rows:repeat(3,minmax(0,1fr));align-self:stretch;margin:8px 6px 4px}body.calculator-fullscreen .dpad button{font-size:clamp(10px,2dvh,18px)}body.calculator-fullscreen .calc-bottom{margin-top:7px;font-size:7px;line-height:1.1;flex-shrink:0}body.calculator-fullscreen dialog{z-index:1001}@media(max-height:500px){body.calculator-fullscreen .fullscreen-toolbar{padding:0 12px}body.calculator-fullscreen .fullscreen-toolbar button{min-height:27px;font-size:10px}body.calculator-fullscreen .calc-top{display:none}body.calculator-fullscreen .lcd{flex-basis:64px;border-width:3px;padding:3px 8px}body.calculator-fullscreen #indicators{font-size:8px;height:11px}body.calculator-fullscreen #expression{font-size:14px;height:17px}body.calculator-fullscreen #answer{font-size:20px}body.calculator-fullscreen .keypad{margin-top:3px;gap:2px 8px}body.calculator-fullscreen .key{padding-top:7px}body.calculator-fullscreen .key>span{font-size:6px;line-height:7px}body.calculator-fullscreen .key button{font-size:11px}body.calculator-fullscreen .key.num button{font-size:13px}body.calculator-fullscreen .key button[data-key="MEMVAR"],body.calculator-fullscreen .key button[data-key="STATVAR"],body.calculator-fullscreen .key button[data-key="CLEAR"],body.calculator-fullscreen .key.enter button{font-size:9px}body.calculator-fullscreen .calc-bottom{display:none}}
