/* Dial Window — dark theme, phone-first, big tap targets, steady state (no animation). */
:root { color-scheme: dark; }
* { box-sizing: border-box; }
body { margin: 0; background: #101418; color: #e8edf2; font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; font-size: 17px; line-height: 1.45; }
body.fixtureLane { background: #1a1408; }
.top { padding: 18px 16px 6px; max-width: 720px; margin: 0 auto; }
h1 { margin: 0; font-size: 30px; }
.tagline { color: #aeb9c4; margin: 6px 0 14px; }
.laneSwitch { display: flex; gap: 10px; }
.laneSwitch button { flex: 1; }
.laneNote { color: #aeb9c4; font-size: 15px; }
.fixtureBanner { max-width: 720px; margin: 10px auto 0; padding: 12px 16px; background: #f5c542; color: #191104; font-weight: 700; border-radius: 10px; width: calc(100% - 32px); }
main { max-width: 720px; margin: 0 auto; padding: 8px 16px 24px; }
.card { background: #1a2129; border: 1px solid #2c3742; border-radius: 14px; padding: 16px; margin: 14px 0; }
body.fixtureLane .card { border-color: #6b5518; }
h2 { margin: 0 0 12px; font-size: 21px; }
.laneHint { font-size: 14px; color: #aeb9c4; font-weight: 400; }
button { min-height: 52px; padding: 12px 18px; font-size: 17px; border-radius: 10px; border: 1px solid #3d4a58; background: #232d38; color: #e8edf2; cursor: pointer; }
button[aria-pressed="true"] { background: #2f5d8a; border-color: #4a86c2; color: #ffffff; font-weight: 700; }
button.primary { background: #2f5d8a; border-color: #4a86c2; color: #ffffff; font-weight: 700; width: 100%; margin-top: 12px; }
button:disabled { opacity: 0.45; cursor: not-allowed; }
.dialStatus { font-size: 24px; font-weight: 800; letter-spacing: 0.02em; }
.dialStatus.no { color: #f0b429; }
.dialStatus.ok { color: #7ee2a0; }
.dialReason { color: #cdd6df; }
.windowEdges { display: flex; gap: 12px; margin-top: 10px; }
.edge { flex: 1; background: #141a20; border: 1px solid #2c3742; border-radius: 10px; padding: 12px; }
.edgeLabel { display: block; font-size: 14px; color: #aeb9c4; letter-spacing: 0.06em; }
.edgeVal { display: block; font-size: 26px; font-weight: 800; margin-top: 4px; }
.mrow { display: flex; justify-content: space-between; gap: 12px; padding: 5px 0; border-bottom: 1px solid #242f3a; }
.mk { color: #aeb9c4; } .mv { font-weight: 600; text-align: right; }
.methodName { font-weight: 800; margin-bottom: 8px; }
.custody { color: #aeb9c4; font-size: 14px; margin: 10px 0 0; }
.hint { color: #aeb9c4; font-size: 14px; }
form label { display: block; margin: 10px 0; font-size: 15px; color: #cdd6df; }
input, select { display: block; width: 100%; min-height: 52px; margin-top: 4px; padding: 10px 12px; font-size: 17px; border-radius: 10px; border: 1px solid #3d4a58; background: #10151b; color: #e8edf2; }
fieldset.wx { border: 1px solid #3d4a58; border-radius: 10px; margin: 14px 0; padding: 10px 12px; }
fieldset.wx legend { font-size: 14px; color: #f0b429; padding: 0 6px; }
.msg { min-height: 22px; color: #7ee2a0; }
.passRow, .callRow { background: #141a20; border: 1px solid #2c3742; border-radius: 10px; padding: 10px 12px; margin: 8px 0; }
.passHead { display: flex; flex-wrap: wrap; gap: 8px; align-items: baseline; }
.passEt { font-size: 20px; font-weight: 800; }
.passMeta { color: #aeb9c4; font-size: 14px; }
.fxTag { background: #f5c542; color: #191104; font-weight: 800; font-size: 13px; padding: 2px 8px; border-radius: 6px; }
.scoreTag { font-weight: 800; font-size: 13px; padding: 2px 8px; border-radius: 6px; border: 1px solid #3d4a58; }
.scoreTag.hit { color: #7ee2a0; } .scoreTag.miss { color: #f08a80; }
.passBits, .passWx { color: #cdd6df; font-size: 14px; margin-top: 4px; }
.callHead { font-weight: 700; }
.callBody, .callChk { color: #aeb9c4; font-size: 14px; margin-top: 3px; word-break: break-all; }
.calLine { font-size: 16px; }
.calBig { font-size: 22px; font-weight: 800; color: #7ee2a0; margin-top: 8px; }
.calNo { font-size: 18px; font-weight: 800; color: #f0b429; margin-top: 8px; }
.empty { color: #aeb9c4; }
.importLabel { display: block; margin-top: 14px; font-size: 15px; color: #cdd6df; }
footer { max-width: 720px; margin: 0 auto; padding: 6px 16px 28px; color: #7d8894; font-size: 13px; }
