*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 90% 0,#143d4b,#080f1c 50%);color:#eaf6fa;font:16px/1.65 system-ui,Arial}.wrap{max-width:1050px;margin:auto;padding:24px}a{color:#67e8db}h1,h2,h3{line-height:1.2}h1{font-size:clamp(2rem,5vw,3.4rem);color:#ffd575}h2{color:#ffd575;margin-top:0}h3{color:#80e6dd}.tag,.note{color:#a9d1d7}.tag{letter-spacing:.12em;font-weight:bold}.hero{display:grid;grid-template-columns:1fr 43%;align-items:center;gap:22px;margin:24px 0}.hero img{width:100%;border-radius:20px;border:1px solid #477480}.lead{font-size:1.3rem;color:#89e8dc}.resources,.tiles,.row{display:flex;gap:12px;flex-wrap:wrap}.resource,.btn{display:inline-block;text-decoration:none;border-radius:11px;background:#e4bd63;color:#12202d;padding:11px 16px;font-weight:700;border:0;cursor:pointer;font:inherit}.resource:hover,.btn:hover{filter:brightness(1.1)}.alt{background:#164450;color:#d9ffff;border:1px solid #458e94}section,.tile,.panel{background:#0d2030;border:1px solid #286575;border-radius:18px;padding:24px;margin:18px 0}.tile{flex:1 1 215px;margin:0;display:flex;flex-direction:column}.tile .btn{margin-top:auto;text-align:center}input,textarea,select{background:#071522;color:#fff;border:1px solid #4a8490;border-radius:9px;padding:10px;font:inherit;max-width:100%}input[type=number]{width:85px}.bits{display:grid;grid-template-columns:repeat(8,minmax(25px,1fr));gap:7px}.bit{padding:12px 0;text-align:center;background:#184454;color:#fff;border:1px solid #58a2a9;border-radius:9px;cursor:pointer;font-size:1.15rem}.bit.on{background:#e4bd63;color:#10212b}.formula,.result{background:#071827;padding:15px;border-radius:10px;margin:12px 0;overflow-wrap:anywhere}.good{color:#82edb1}.bad{color:#ffae9f}.small{font-size:.9rem;color:#a7cdd3}label{display:block;margin:10px 0}footer{margin:35px 0;color:#a5c8cf}button:focus-visible,a:focus-visible{outline:3px solid #fff}table{border-collapse:collapse;width:100%}td,th{border:1px solid #346574;padding:8px;text-align:center}@media(max-width:700px){.hero{grid-template-columns:1fr}.wrap{padding:14px}section{padding:16px}.bit{padding:8px 0}}