/* Scoped original TI-30XS-style interface. */
.drs30-page{margin:0;background:#fff;color:#213547;font-family:Arial,Helvetica,sans-serif;line-height:1.65}.drs30-page *{box-sizing:border-box}.drs30-header{border-bottom:1px solid #e6ecf0;background:#fff;padding:16px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}.drs30-header a{color:#243c52;text-decoration:none;font-weight:600;font-size:14px}.drs30-header .drs30-brand{font-size:18px;font-weight:800}.drs30-header nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.drs30-header a[aria-current]{color:#24714a}.drs30-page .drs30-main{max-width:1000px;margin:auto;padding:28px 20px 0}.drs30-page h1{text-align:center;font-size:clamp(25px,4vw,34px);line-height:1.2;margin:0 0 10px;color:#19374c}.drs30-lead{text-align:center;font-size:14px;color:#5b6b76;margin:0 0 20px}.drs30-widget{--calc-scale:1;outline:none;max-width:100%;color:#111}.drs30-zoom{display:flex;justify-content:center;gap:9px;margin:0 0 20px}.drs30-zoom button{border:0;border-radius:5px;background:#172b3a;color:white;width:38px;height:34px;padding:0;font-size:22px;font-weight:700;cursor:pointer;line-height:1}.drs30-stage{width:268px;height:520px;margin:auto;position:relative}.drs30-shell{width:268px;height:520px;border-radius:9px;background:#434f55;padding:10px 11px;transform:scale(var(--calc-scale));transform-origin:top left;font-family:Arial,Helvetica,sans-serif;color:white;box-shadow:inset 0 1px 1px #78868c;user-select:none}.drs30-brand-row{height:30px;display:flex;align-items:center;justify-content:space-between;line-height:1;color:#f5f5f5}.drs30-brand-row>span{font-size:10px;font-weight:bold;letter-spacing:.2px}.drs30-model{text-align:right;font-size:20px;font-weight:700}.drs30-model small{font-weight:400;font-size:11px;letter-spacing:1px;display:block}.drs30-lcd{height:105px;background:#fbfcf8;border:1px solid #c7d0d0;color:#121512;position:relative;font-family:'Courier New',monospace;overflow:hidden;margin-bottom:10px;user-select:text}.drs30-status{height:11px;text-align:right;padding:0 4px;font-size:8px;line-height:11px;font-weight:bold;white-space:nowrap}.drs30-history{height:44px;padding:0 4px;overflow:hidden;font-size:15px;font-weight:bold;line-height:21px;white-space:pre-wrap;overflow-wrap:anywhere}.drs30-history .drs30-result{text-align:right;font-size:18px}.drs30-entry{position:absolute;bottom:2px;left:4px;right:4px;height:44px;overflow:hidden}.drs30-mirror{white-space:pre-wrap;overflow-wrap:anywhere;font-size:20px;line-height:22px;font-weight:700;margin:0;padding:0;min-height:44px;pointer-events:none}.drs30-caret{display:inline-block;background:#171b16;width:7px;height:17px;vertical-align:-2px;animation:drs30-blink .8s steps(1,end) infinite}.drs30-input{position:absolute;inset:0;width:100%;height:44px;resize:none;background:transparent!important;border:0!important;padding:0!important;margin:0!important;box-shadow:none!important;outline:0!important;color:transparent!important;caret-color:transparent!important;font:700 20px/22px 'Courier New',monospace!important;overflow:auto;opacity:.02}.drs30-widget[data-off=true] .drs30-lcd>*{visibility:hidden}.drs30-message{position:absolute;inset:13px 3px 2px;background:#fbfcf8;font:700 13px/17px 'Courier New',monospace;overflow:auto;z-index:3}.drs30-message[hidden]{display:none}.drs30-message button{display:block;width:100%;text-align:left;background:transparent;color:#141a16;border:0;padding:1px 3px;font:700 13px/17px 'Courier New',monospace;cursor:pointer;border-radius:0}.drs30-message button.active{background:#243026;color:#fff}.drs30-keypad{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(9,36px);gap:4px}.drs30-key{height:36px;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0!important;margin:0!important;border:2px solid #11191c!important;border-radius:5px!important;background:#536168!important;color:#fff!important;box-shadow:inset 0 0 0 1px #a4afb3;cursor:pointer;line-height:1!important;touch-action:manipulation;font-family:Arial,Helvetica,sans-serif!important}.drs30-key .secondary{font-size:9px;line-height:10px;height:10px;color:#d6ee8b;white-space:nowrap;font-weight:500}.drs30-key .primary{font-size:13px;font-weight:500;line-height:17px}.drs30-key.number{background:#fff!important;color:#353a3d!important;box-shadow:inset 0 0 0 1px #d4d4d4}.drs30-key.number .primary{font-size:20px;font-weight:600}.drs30-key.number .secondary{color:#4f681b}.drs30-key.number.small .primary{font-size:12px}.drs30-key.operator{background:#30383d!important}.drs30-key.operator .primary{font-size:23px}.drs30-key.second{background:#b8d486!important;color:#243025!important;box-shadow:inset 0 0 0 1px #def1ae}.drs30-key.second[aria-pressed=true]{background:#e7ffb6!important;box-shadow:0 0 0 2px #e7ffb6}.drs30-key:active{transform:translateY(1px);filter:brightness(.88)}.drs30-key:focus-visible,.drs30-arrows button:focus-visible,.drs30-zoom button:focus-visible{outline:2px solid #4e9fff;outline-offset:2px}.drs30-arrows{grid-column:4/6;grid-row:1/3;border-radius:50%;background:#232a2f;border:2px solid #101619;position:relative;box-shadow:inset 0 0 0 1px #a8b2b5}.drs30-arrows button{position:absolute;width:38px;height:29px;padding:0;border:1px solid #b4bcbf;border-radius:8px;background:#343e44;color:white;font-size:11px;cursor:pointer}.drs30-arrows [data-key=up]{left:26px;top:0;clip-path:polygon(0 0,100% 0,100% 48%,50% 100%,0 48%)}.drs30-arrows [data-key=down]{left:26px;bottom:0;clip-path:polygon(50% 0,100% 52%,100% 100%,0 100%,0 52%)}.drs30-arrows [data-key=left]{left:0;top:18px;width:31px;height:36px;clip-path:polygon(0 0,50% 0,100% 50%,50% 100%,0 100%)}.drs30-arrows [data-key=right]{right:0;top:18px;width:31px;height:36px;clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%,0 50%)}.drs30-hint{max-width:430px;margin:15px auto 0;text-align:center;color:#60717d;font-size:12px;line-height:1.5;min-height:36px}.drs30-panel{max-width:470px;margin:20px auto;padding:20px;border:1px solid #d7e1e6;border-radius:10px;background:#f7fafb;color:#213547}.drs30-panel[hidden]{display:none}.drs30-panel h2{font-size:19px;margin:0 0 10px}.drs30-panel label{display:block;font-size:13px;font-weight:600;margin:10px 0}.drs30-panel input,.drs30-panel textarea{display:block;width:100%;padding:9px;border:1px solid #b7c6cd;border-radius:5px;background:white;color:#152d3d;font:16px Arial;box-sizing:border-box}.drs30-panel textarea{min-height:70px}.drs30-panel button{background:#233f52;color:white;border:0;border-radius:5px;padding:9px 14px;margin:5px 6px 0 0;cursor:pointer;font:600 13px Arial}.drs30-panel .drs30-close{background:#e4ebef;color:#253f50}.drs30-panel p{font-size:13px;margin:8px 0}.drs30-panel table{border-collapse:collapse;width:100%;font-size:14px;margin-top:12px}.drs30-panel td,.drs30-panel th{border-bottom:1px solid #d7e1e6;padding:5px;text-align:left}.drs30-panel output{display:block;font-size:13px;overflow-wrap:anywhere}.drs30-content{max-width:760px;margin:50px auto 0;font-size:16px}.drs30-content section{margin:0 0 34px}.drs30-content h2{font-size:24px;line-height:1.3;color:#19374c;margin:0 0 14px}.drs30-content h3{font-size:17px;color:#19374c;margin:0 0 8px}.drs30-content p{margin:0 0 13px}.drs30-content a{color:#256344}.drs30-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.drs30-card{padding:20px;border:1px solid #e0e8e9;border-radius:10px;background:#f8faf9}.drs30-card p{font-size:14px;margin:0}.drs30-examples{width:100%;border-collapse:collapse;font-size:14px}.drs30-examples th,.drs30-examples td{text-align:left;padding:12px 8px;border-bottom:1px solid #dfe7e9}.drs30-content code{background:#eef2ef;color:#20362b;border-radius:3px;padding:2px 4px;overflow-wrap:anywhere}.drs30-content details{border-bottom:1px solid #dfe7e9;padding:14px 0}.drs30-content summary{cursor:pointer;font-weight:700;color:#233f52}.drs30-content details p{padding-top:10px}.drs30-note{border-left:3px solid #799587;padding:14px 20px;background:#f5f8f6;font-size:14px}.drs30-back{display:inline-block;background:#254535;color:white!important;padding:10px 20px;border-radius:6px;text-decoration:none}.drs30-footer{margin-top:40px;border-top:1px solid #e4e9ec;padding:25px 20px;text-align:center;font-size:12px;color:#5b6b76}.drs30-footer a{color:inherit;margin:0 8px}.drs30-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@keyframes drs30-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.drs30-caret{animation:none}}@media(max-width:600px){.drs30-header{padding:12px 16px;flex-direction:column;gap:9px}.drs30-header nav{gap:16px;justify-content:center}.drs30-header a{font-size:12px}.drs30-page .drs30-main{padding:22px 14px 0}.drs30-lead{font-size:12px}.drs30-cards{grid-template-columns:1fr}.drs30-content h2{font-size:22px}.drs30-content{font-size:15px}.drs30-examples{font-size:12px}.drs30-examples td{padding:10px 4px}}

.drs30-entry{top:12px;bottom:auto;height:88px}.drs30-input{height:100%!important}.drs30-lcd.has-history .drs30-entry{top:auto;bottom:2px;height:44px}.drs30-widget *{box-sizing:border-box}
/* v1.0.1: remove the empty theme sidebar column on calculator pages only. */
body.drs30-host-page #page{max-width:1200px;margin-left:auto;margin-right:auto}
body.drs30-host-page .site-content{display:block}
body.drs30-host-page #primary{float:none;width:100%!important;max-width:100%;margin-left:auto;margin-right:auto}
body.drs30-host-page #left-sidebar,body.drs30-host-page #right-sidebar{display:none}
body.drs30-host-page .entry-header{text-align:center}
body.drs30-host-page .entry-title{text-align:center;margin-left:auto;margin-right:auto}
body.drs30-host-page .site-main{margin-left:0;margin-right:0}
.drs30-mirror{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin:0!important;font-family:'Courier New',monospace!important;font-size:20px!important;line-height:22px!important}
.drs30-tools{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:15px auto 0}
.drs30-tools button{background:#edf4ef;color:#254535;border:1px solid #c8d9ce;border-radius:6px;padding:9px 14px;font:600 12px Arial,sans-serif;cursor:pointer;min-height:38px}
.drs30-tools button:hover{background:#dcebe1}
.drs30-tools button:focus-visible{outline:2px solid #2563eb;outline-offset:2px}

/* v1.0.2: consistent key typography independent of WordPress theme fonts. */
.drs30-shell,.drs30-shell button,.drs30-shell button span,.drs30-brand-row *{font-family:Arial,Helvetica,sans-serif!important;font-style:normal!important;letter-spacing:0!important;text-transform:none!important;text-shadow:none!important}
.drs30-key{overflow:hidden;gap:0!important;text-indent:0!important;white-space:nowrap!important;align-items:center!important;justify-content:center!important}
.drs30-key .primary{display:block!important;max-width:100%;font-size:12px!important;line-height:16px!important;font-weight:500!important;text-align:center!important;padding:0!important;margin:0!important}
.drs30-key .secondary{display:flex!important;align-items:center;justify-content:center;gap:1px;max-width:100%;height:10px;font-size:8px!important;line-height:10px!important;font-weight:500!important;text-align:center!important;padding:0!important;margin:0!important;flex-shrink:0}
.drs30-key.number .primary{font-size:20px!important;line-height:20px!important;font-weight:600!important}
.drs30-key.number.small .primary{font-size:11px!important;line-height:16px!important;font-weight:500!important}
.drs30-key.operator .primary{font-size:23px!important;line-height:22px!important;font-weight:400!important}
.drs30-key .secondary:empty{display:none!important}
.drs30-key[data-key="exp"] .secondary{font-size:7px!important;gap:1px}
.drs30-key .drs30-frac{display:inline-flex!important;flex-direction:column;vertical-align:middle;align-items:stretch;justify-content:center;line-height:1!important;text-align:center;min-width:5px}
.drs30-key .drs30-frac>span{display:block!important;font-size:inherit!important;line-height:.85!important;padding:0 1px!important;margin:0!important}
.drs30-key .drs30-frac>span:first-child{border-bottom:1px solid currentColor}
.drs30-key .secondary .drs30-frac{font-size:5.5px!important}
.drs30-key .drs30-fraction-main{font-size:10px!important;line-height:17px!important}
.drs30-key[data-key="variables"] .primary{font-size:9px!important;line-height:9px!important}
.drs30-var-row{display:block!important;line-height:9px!important}
.drs30-tools button{font-family:Arial,Helvetica,sans-serif!important;letter-spacing:0!important}
.drs30-key .primary .drs30-frac{font-size:9px!important}
.drs30-key .drs30-var-row{font-size:9px!important;font-weight:500!important}
/* v1.0.3: stronger, clearer keypad lettering. */
.drs30-shell .drs30-key .primary,
.drs30-shell .drs30-key .secondary,
.drs30-shell .drs30-key .drs30-var-row,
.drs30-shell .drs30-key .drs30-frac,
.drs30-shell .drs30-key .drs30-frac>span{font-weight:700!important}
.drs30-shell .drs30-key .secondary{font-size:8.5px!important;color:#e1f7a0!important}
.drs30-shell .drs30-key.number .secondary{color:#405711!important}
.drs30-shell .drs30-key[data-key="exp"] .secondary{font-size:7px!important}
