:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#173b44;background:#f3f5f1;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main{max-width:1600px;margin:auto;padding:26px 40px 18px}header,.intro,.toolbar,.worldhead,.metrics,.below,footer{display:flex;align-items:center;justify-content:space-between}header{border-bottom:1px solid #cedbd7;padding-bottom:20px}.brand{font-weight:760;font-size:25px;letter-spacing:-1px}.brand span{font-weight:400}.brand small{display:inline-block;font-size:10px;letter-spacing:1.7px;margin-left:18px;font-weight:650;color:#577478}.live{font-size:10px;font-weight:700;letter-spacing:1.4px}.live i{display:inline-block;width:7px;height:7px;background:#548b70;border-radius:50%;margin-right:7px}.intro{padding:28px 0 24px;gap:25px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;color:#638183;margin:0 0 10px}h1{font-weight:650;font-size:clamp(24px,2.7vw,40px);letter-spacing:-1.1px;margin:0 0 9px}.intro p:not(.eyebrow){font-size:14px;color:#526d72;margin:0}.clock{min-width:190px;text-align:right}.clock small{font-size:9px;letter-spacing:1.4px}.clock strong{font-size:34px;font-weight:550;display:block;font-variant-numeric:tabular-nums}.clock em{font-size:19px;font-style:normal}.clock span{font-size:11px;color:#597574}.toolbar{justify-content:flex-start;gap:8px;flex-wrap:wrap;padding:10px;background:#e6ece7;border-radius:11px}button,select{font:inherit;font-size:12px;border:1px solid #c4d2cd;border-radius:7px;background:#fff;color:#204a50;padding:9px 13px;cursor:pointer}button:hover{border-color:#648c85;background:#f8fcf9}button:disabled{opacity:.4;cursor:default}.modes{display:flex;gap:2px}.selected,#send{background:#234f55;color:#fff;border-color:#234f55}#hint{font-size:12px;color:#57736f;flex:1;margin-left:9px}.toolbar label{font-size:11px;margin-left:4px}select{padding:8px 5px}#notice{font-size:12px;margin:12px 3px;color:#5d7473;min-height:16px}.worlds{display:grid;grid-template-columns:1fr 1fr;gap:18px}.world{min-width:0;background:#fff;border:1px solid #d5dfd9;border-radius:13px;overflow:hidden;box-shadow:0 5px 20px #193b4007}.worldhead{padding:17px 20px 13px;border-bottom:1px solid #e3eae4}.tag{font-size:9px;letter-spacing:1.5px;font-weight:750;color:#b16b37}.positive .tag{color:#287d87}h2{font-size:18px;font-weight:550;margin:5px 0 0;letter-spacing:-.3px}.stage{font-size:11px;background:#edf1eb;padding:6px 10px;border-radius:20px;color:#4d6a68}canvas{display:block;width:100%;height:clamp(310px,43vh,580px);cursor:crosshair;touch-action:none;outline-offset:-3px}.metrics{gap:12px;background:#f9faf7;padding:13px 20px;align-items:flex-start;border-top:1px solid #e3eae4;font-size:10px;color:#6b807e}.metrics b{display:block;font-size:14px;color:#2a4c50;font-weight:550;margin-top:5px;font-variant-numeric:tabular-nums}.below{font-size:11px;color:#627a77;gap:15px}.goalkey{color:#be713f;font-size:18px}.dotsep{padding:0 8px;color:#a2b3aa}details{border-top:1px solid #cedbd7;margin-top:15px;padding:15px 0}summary{font-size:13px;cursor:pointer;color:#365e60}.explain{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:8px 0 5px;font-size:12px;line-height:1.65;color:#52706f}h3{font-size:13px;color:#254e51}.explain p{margin:8px 0}footer{font-size:9px;letter-spacing:1.1px;color:#607d79;border-top:1px solid #cedbd7;padding-top:17px}footer span{letter-spacing:.3px}#notice.error{color:#aa3c2c}button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #81b6b1;outline-offset:2px}[hidden]{display:none!important}@media(max-width:850px){main{padding:18px}.intro{align-items:flex-start}.brand small{display:none}.worlds{grid-template-columns:1fr}.clock{min-width:125px}.clock strong{font-size:27px}canvas{height:360px}.explain{grid-template-columns:1fr;gap:4px}.toolbar{gap:6px}#hint{flex-basis:45%}.below{align-items:flex-start;flex-direction:column;gap:0}.below p{margin:6px 0}footer{align-items:flex-start;gap:10px;line-height:1.6}header .live{font-size:8px}}@media(max-width:500px){.intro{flex-direction:column;gap:18px}.clock{text-align:left}.clock strong{display:inline-block;margin:0 10px}.clock small{display:block}.clock span{font-size:10px}.metrics{padding:12px;gap:6px}.metrics b{font-size:12px}.toolbar label{margin:3px}#hint{flex-basis:100%;order:5}h1{font-size:28px}canvas{height:320px}}
.clock span,#solver{font-variant-numeric:tabular-nums}.clock span{display:block;min-height:1.4em}#solver{overflow-wrap:anywhere}

/* Browser adapter additions; frozen demonstrator palette/layout retained. */
.target-input{margin:10px 0 0;font-size:12px;color:#526d72}
.target-input fieldset{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0;min-width:0}
.target-input legend{float:left;margin-right:12px;padding:8px 0}
.target-input input{width:85px;min-width:0;padding:8px;border:1px solid #c4d2cd;border-radius:7px;background:#fff;color:#204a50;font:inherit}
.target-input input:focus-visible,a:focus-visible{outline:3px solid #81b6b1;outline-offset:2px}
.target-input input:disabled,select:disabled{opacity:.5;cursor:default}
.scope{font-size:11px;line-height:1.6;color:#526d72;margin:10px 0 15px}
#notice{line-height:1.5}
#retry{margin:0 0 14px}
footer a{color:inherit;text-underline-offset:3px}
@media(max-width:500px){.target-input legend{float:none;width:100%;padding:3px 0}.target-input input{width:68px}.live{max-width:125px;white-space:normal}.brand small{display:none}}
