:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#e6eef8;background:#10151d;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% -10%,#28364a 0%,#111720 56%,#0b1017 100%);min-height:100vh}.app{max-width:1130px;margin:auto;padding:34px 24px 24px}header{margin:0 0 28px}h1{font-size:clamp(26px,4vw,42px);margin:6px 0 8px;letter-spacing:-.035em}h1 span{font-size:.55em;vertical-align:middle;color:#7edbd6;border:1px solid #427b7b;border-radius:6px;padding:4px 9px;letter-spacing:.06em}header p{color:#98a9bc;margin:0}.eyebrow{color:#70a8c9;letter-spacing:.18em;font-size:11px;font-weight:750}h2{font-size:24px;margin:5px 0 0;letter-spacing:-.02em}.panel{background:linear-gradient(145deg,#202b38,#17202b);border:1px solid #36485a;box-shadow:0 14px 38px #0005,inset 0 1px #ffffff10;border-radius:16px;margin-bottom:20px;padding:24px}.heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.actions{display:flex;gap:12px}button{font:inherit;cursor:pointer;touch-action:manipulation}.action{background:linear-gradient(#4e8fcf,#285c9b);color:white;border:1px solid #75b0ec;border-radius:9px;min-width:68px;padding:11px 16px;font-size:20px;font-weight:700;box-shadow:0 5px #153a60}.action:active{transform:translateY(3px);box-shadow:0 2px #153a60}.subtle{background:#243342;border:1px solid #456076;border-radius:8px;color:#b9d1e5;padding:9px 14px}.reg-layout{display:grid;grid-template-columns:minmax(340px,1fr) minmax(280px,.8fr);gap:28px;align-items:center}.switchbank{display:flex;justify-content:space-around;gap:12px;padding:14px 14px 10px;background:linear-gradient(125deg,#3b4146,#747b80 40%,#42484d 78%,#323b42);border:3px solid #252d34;border-radius:12px;box-shadow:inset 0 2px 8px #0008,0 7px 12px #0005}.switch-unit{text-align:center;min-width:57px}.toggle{position:relative;border:0;background:transparent;width:58px;height:132px;padding:0;display:block;margin:auto}.mount{position:absolute;inset:0;display:block}.channel{position:absolute;top:8px;left:18px;width:23px;height:105px;background:linear-gradient(90deg,#0a0d10,#1c2328 40%,#080b0d);border:3px solid #25292b;border-radius:5px;box-shadow:inset 0 0 8px #000}.handle{position:absolute;left:13px;top:72px;width:32px;height:54px;border-radius:9px 9px 13px 13px;background:linear-gradient(90deg,#343a3e,#aeb5b7 24%,#52595b 45%,#1c2225 76%,#757c80 94%);border:1px solid #1c2226;box-shadow:5px 5px 6px #0008;transition:top .17s ease}.handle:before{content:"";position:absolute;left:6px;right:6px;top:-11px;height:18px;border-radius:7px;background:linear-gradient(90deg,#1a2023,#91999c 35%,#343a3d 85%)}.grip{position:absolute;left:4px;right:4px;top:15px;height:26px;background:repeating-linear-gradient(0deg,#0003 0 2px,#fff2 2px 4px);border-radius:5px}.toggle[data-on="true"] .handle{top:20px}.lamp{position:absolute;right:-1px;top:9px;width:12px;height:12px;background:#27332f;border:2px solid #1c2529;border-radius:50%;box-shadow:inset 0 1px 3px #000}.toggle[data-on="true"] .lamp{background:#65ff7b;box-shadow:0 0 11px #4aff70,0 0 3px #a8ffb0}.toggle:focus-visible{outline:3px solid #8dd7ff;border-radius:8px}.bit-label{color:#d0d8df;font-size:11px;letter-spacing:.1em;margin:4px 0}.bit-value{color:#7aff94;font:700 27px ui-monospace,monospace}.readout{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.value{background:#0e1720;border:1px solid #2d4251;border-radius:9px;padding:14px 9px;text-align:center}.value small,.extended small{display:block;color:#91a6b9;font-size:10px;letter-spacing:.09em;margin-bottom:7px}.value strong{font:700 clamp(23px,3vw,34px) ui-monospace,monospace;color:#8af3a0}.value:nth-child(3) strong{color:#ffa3a9}.extended{grid-column:1/-1;text-align:center;background:#111a23;border:1px solid #30414f;border-radius:9px;padding:12px}.extended span{font:500 clamp(15px,2.7vw,24px) ui-monospace,monospace;letter-spacing:.08em;color:#ffb1b4}.flags{display:flex;flex-wrap:wrap;gap:18px;margin-top:20px;padding-top:17px;border-top:1px solid #364653}.flag{display:flex;align-items:center;gap:7px;color:#a6b5c6;font-size:15px;font-weight:750}.flag small{font-size:10px;letter-spacing:.08em;font-weight:500}.flag i{display:inline-block;width:16px;height:16px;border-radius:50%;background:#1c2934;border:2px solid #4a5360}.flag.on i{background:#72c5ff;box-shadow:0 0 12px #42a9ff}.flag[data-flag="negative"].on i{background:#e57ff9;box-shadow:0 0 12px #e57ff9}.operator-label{font:700 17px ui-monospace,monospace;color:#9bd9d5}.operator-label span{color:#fff}.operators{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:23px}.operators button{padding:11px 18px;border-radius:9px;border:1px solid #426075;background:#1b303e;color:#b4cbdc;font-weight:800;letter-spacing:.05em}.operators button.selected{background:#197f80;border-color:#70d8d0;color:#fff;box-shadow:0 0 0 2px #2ba6a63b}.output-label{font-size:11px;letter-spacing:.14em;color:#7bbab8;margin-bottom:12px;font-weight:800}.result-bits{display:flex;gap:12px}.result-bit{flex:1;text-align:center;background:#0b2829;border:1px solid #317d78;border-radius:9px;padding:15px 6px;font:700 clamp(28px,4vw,42px) ui-monospace,monospace;color:#83ffca;box-shadow:inset 0 0 14px #00c7a00b}.expression{margin-top:14px;color:#a9b8c7;font:13px ui-monospace,monospace}.explain{border-top:1px solid #364653;margin-top:21px;padding-top:16px;color:#9ebbb9}footer{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#7890a4;font-size:12px;padding:6px 0 20px}@media(max-width:720px){.app{padding:20px 12px}.panel{padding:16px}.reg-layout{grid-template-columns:1fr;gap:18px}.heading{align-items:flex-start}.switchbank{max-width:500px;width:100%;margin:auto}.readout{max-width:500px;width:100%;margin:auto}.flags{gap:11px}.flag small{font-size:9px}.operators button{flex:1;padding:11px 8px}.operator-label{font-size:13px}}

.formula-screen{background:linear-gradient(180deg,#081e24,#09161d);border:2px solid #41616a;border-radius:12px;padding:17px 22px;margin-bottom:24px;box-shadow:inset 0 3px 16px #0009,0 2px 8px #0004}.screen-caption{font-size:10px;letter-spacing:.2em;color:#83b4bd;font-weight:800;margin-bottom:10px}.formula-text{font:700 clamp(17px,3.2vw,32px)/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.035em;white-space:normal;overflow-wrap:anywhere;text-align:center}.formula-input{color:#d9e8f4}.formula-op{color:#f3c47c}.formula-equals{color:#8aa1b3}.formula-answer{color:#80ffc2}.alu-flags{margin-top:24px}.alu-flags .flag[data-alu-flag="negative"].on i{background:#e57ff9;box-shadow:0 0 12px #e57ff9}@media(max-width:720px){.formula-screen{padding:12px}.formula-text{font-size:clamp(15px,3.8vw,25px)}}

/* Title-line attribution and copyright links */
.title-line{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.title-line h1{margin:6px 0 8px}
.developer-credit{font-size:14px;color:#b7c8da;white-space:nowrap;text-align:right}
.developer-credit a,footer a{color:#8bd8f2;text-decoration:underline;text-underline-offset:3px}
.developer-credit a:hover,footer a:hover{color:#fff}
@media(max-width:650px){.developer-credit{white-space:normal;text-align:left}}
