[hidden]{display:none!important}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:#ebf3ff;background:#071024}button,input,select{font:inherit}button{cursor:pointer}.app{max-width:1320px;margin:0 auto;padding:30px 22px 70px}.eyebrow{color:#8abaf5;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:800}.heading{font-size:36px;margin:7px 0 5px;font-weight:900;letter-spacing:-1.2px}.sub{color:#a3b7cd;margin:0 0 26px;line-height:1.5}.shell{display:grid;grid-template-columns:360px minmax(0,1fr);gap:20px}.panel{border:1px solid #293957;background:#101c32;border-radius:22px;padding:23px;box-shadow:0 22px 48px #0003}.panel h2{font-size:18px;margin:0 0 16px}.field{display:block;color:#a5b7d1;font-size:13px;font-weight:800;letter-spacing:.04em;margin:20px 0 8px}.field:first-of-type{margin-top:8px}select,input[type=text]{width:100%;background:#071226;color:#f5f9ff;border:1px solid #3a4d70;border-radius:12px;padding:12px;outline:none}select:focus,input:focus{border-color:#83b8fb}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pill{background:#1c2b43;border:1px solid #394d70;color:#dde9f8;border-radius:10px;padding:12px 8px;font-weight:700}.pill.active{border-color:#f9ce4b;background:#283554;color:#fff}.switch{display:flex;align-items:center;justify-content:space-between;margin:15px 0;color:#dce7f6;font-weight:650;font-size:14px}.switch input{accent-color:#ffd100;width:18px;height:18px}.tip{font-size:12px;color:#8fa9c4;line-height:1.5;margin:12px 0 0}.previewPanel{min-width:0}.previewHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.previewHeader span{color:#93a9c4;font-size:12px}.previewFrame{height:390px;border-radius:16px;background:repeating-linear-gradient(45deg,#182840,#182840 10px,#1e304c 10px,#1e304c 20px);display:flex;align-items:center;justify-content:center;padding:14px;overflow:hidden}.scoreboard{--team:#003594;--accent:#ffd100;--opp:#97233f;position:relative;width:100%;max-width:840px;padding:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--team) 65%,#07142e),#07132d 68%);border:1px solid color-mix(in srgb,var(--accent) 48%,transparent);border-radius:17px;box-shadow:0 12px 35px #0008}.sbHead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:5px;text-align:center;margin-bottom:8px}.chant{font-weight:1000;font-stretch:condensed;font-style:italic;letter-spacing:-1px;text-transform:uppercase;color:white;text-shadow:2px 2px 0 var(--accent),-1px -1px 0 var(--accent),0 3px 8px #0009;font-size:clamp(10px,2.4vw,21px);white-space:nowrap}.chant:first-child{text-align:left}.chant:last-child{text-align:right}.livePill{padding:4px 8px;color:var(--accent);border:1px solid var(--accent);border-radius:999px;background:#12274a;font-size:10px;font-weight:900;white-space:nowrap}.statusText{font-weight:800;font-size:11px;margin-top:3px;color:#b4f7dd}.sbMain{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,1.15fr) minmax(0,1fr);gap:5px}.teamCard{border:1px solid color-mix(in srgb,var(--team) 85%,white);border-radius:12px;min-height:102px;display:flex;align-items:center;padding:11px;gap:9px;background:#06122dc9;min-width:0}.teamCard.visitor{border-left:5px solid var(--opp)}.teamCard.fav{border-right:5px solid var(--accent)}.teamCard .logo{width:48px;height:48px;object-fit:contain;flex:0 0 auto}.teamCard.fav{justify-content:flex-end}.teamLabel{min-width:0}.teamName{font-size:clamp(11px,1.8vw,20px);font-weight:900;line-height:1.1}.record{color:#c3d0dd;font-size:11px;margin-top:5px}.to{font-size:9px;color:#a7b7d0;margin-top:7px}.dots{color:var(--accent);letter-spacing:3px}.scoreBlock{border-radius:12px;background:#06122dcb;border:1px solid #365077;padding:12px 6px;min-width:0;text-align:center}.scores{font-size:clamp(25px,4.1vw,43px);font-weight:1000;letter-spacing:-1px;line-height:1.05}.scores b{color:var(--accent);font-size:.7em;margin:0 13px}.down{font-size:11px;margin-top:8px;font-weight:750}.tdrow{display:flex;justify-content:space-around;color:#a9b9ca;font-size:10px;margin-top:10px}.tdrow strong{color:var(--accent)}.quarters{margin-top:6px;border-radius:10px;background:#081637cc;padding:8px 11px}.qrow{display:grid;grid-template-columns:minmax(85px,2.5fr) repeat(5,minmax(0,1fr));font-size:11px;gap:5px;padding:4px 0;border-bottom:1px solid #65779544;text-align:center}.qrow:last-child{border-bottom:0}.qrow span:first-child{text-align:left;font-weight:800}.qhead{color:#9aabc8;font-weight:750}.qrow span:last-child{color:var(--accent);font-weight:900}.footer{display:flex;justify-content:space-between;font-size:9px;color:#b3c3d5;margin-top:7px;gap:10px}.scoreboard.large{max-width:100%;padding:20px}.scoreboard.large .teamCard{min-height:135px}.scoreboard.large .logo{width:64px;height:64px}.scoreboard.large .scores{font-size:56px}.scoreboard.clean .chant{display:none}.scoreboard.clean .sbHead{grid-template-columns:1fr}.scoreboard.noQ .quarters{display:none}.scoreboard.noTO .to{display:none}.scoreboard.noTD .tdrow{display:none}.scoreboard.noHeader .chant{display:none}.urlBox{display:flex;gap:8px;margin:16px 0 10px}.urlBox input{flex:1;min-width:0;font-size:12px}.btn{border:0;border-radius:11px;background:#ffd100;color:#101620;padding:12px 17px;font-weight:900;white-space:nowrap}.btn.secondary{background:#263a59;color:#dbeaff}.notice{padding:10px 12px;background:#1b2b42;border-radius:10px;border:1px solid #2f4669;color:#b5c8df;font-size:12px;line-height:1.5}.features{margin:18px 0 0;padding:0 0 0 20px;color:#a9bed7;font-size:13px;line-height:1.8}.onlyOverlay{background:transparent}.onlyOverlay .app{display:none}.onlyOverlay .fullView{display:flex;position:fixed;inset:0;align-items:flex-end;justify-content:center;background:transparent;padding:0 12px 16px}.fullView .scoreboard{max-width:940px}.fullView .scoreboard.large{max-width:1280px}@media(max-width:970px){.shell{grid-template-columns:1fr}.previewFrame{height:320px}.heading{font-size:29px}}@media(max-width:600px){.app{padding:18px 12px}.previewFrame{height:260px;padding:5px}.panel{padding:15px}.logo{display:none}.teamCard{padding:8px}.chant{font-size:10px}.scoreboard{padding:6px}.sbMain{grid-template-columns:1fr 1.25fr 1fr}.scoreBlock{padding:6px 3px}.tdrow{gap:4px;font-size:8px}}