*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:#f4f6f9;color:#1b2430}
header{background:#0b2545;color:#fff;padding:14px 16px}header h1{margin:0;font-size:1.2rem}header small{color:#ffd166}
main{max-width:760px;margin:auto;padding:12px}.card{background:#fff;border-radius:12px;padding:14px;margin:12px 0;box-shadow:0 1px 3px #0002}
.grid{display:grid;grid-template-columns:28px repeat(10,1fr);gap:2px;font-size:11px}.grid div{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:4px;text-align:center;overflow:hidden}
.sq{background:#e3ecf7;cursor:pointer}.sq.sold{background:#0b2545;color:#fff;cursor:default;font-size:8px}.sq.held{background:#ffd166;cursor:default}.sq.sel{background:#2a9d8f;color:#fff}.sq.win{outline:3px solid #e63946}
.hd{background:#13315c;color:#ffd166;font-weight:700}input,select{width:100%;padding:10px;margin:4px 0 10px;border:1px solid #ccd;border-radius:8px;font-size:16px}
button{background:#e63946;color:#fff;border:0;border-radius:8px;padding:12px 16px;font-size:16px;font-weight:600;width:100%}button.sec{background:#13315c;width:auto;padding:8px 12px;font-size:14px}
table{width:100%;border-collapse:collapse}td,th{padding:6px;border-bottom:1px solid #eee;text-align:left;font-size:14px}.muted{color:#667;font-size:13px}.pill{background:#ffd166;border-radius:20px;padding:2px 10px;font-size:13px}
.err{color:#e63946}.ok{color:#2a9d8f}code{font-size:12px;word-break:break-all}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.ch{font-size:11px;text-align:center;color:#667;font-weight:700}
.day{min-height:56px;background:#f4f6f9;border-radius:6px;padding:2px;font-size:10px;overflow:hidden}.day.has{background:#e3f4f1}.dn{color:#99a;font-size:9px}
.who{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg{font-size:9px;color:#456;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.msg.open{white-space:normal;overflow:visible;background:#fff;position:relative;z-index:2;box-shadow:0 1px 4px #0003;border-radius:4px;padding:2px}
.cal{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.day{min-height:74px;border-radius:8px;padding:4px;background:#e3ecf7;cursor:pointer;overflow:hidden;position:relative;font-size:11px}
.day .n{font-weight:800;font-size:16px;color:#0b2545}.day .p{position:absolute;top:4px;right:6px;color:#13315c;font-weight:700}
.day.sel{background:#2a9d8f;color:#fff}.day.sel .n,.day.sel .p{color:#fff}.day.held{background:#ffd166;cursor:default}
.day.taken{background:#0b2545;color:#fff;cursor:default}.day.taken .n{color:#ffd166}.day.taken .p{display:none}
.who{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.msg{font-size:9.5px;font-style:italic;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.msg.open{white-space:normal;overflow:visible}.bar{background:#e3ecf7;border-radius:8px;height:16px;margin:8px 0}.bar>div{background:#e63946;height:16px;border-radius:8px}
.season-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px max(24px,calc((100% - 1000px)/2));background:#10243b;border-bottom:3px solid #c89b49}.team-brand{color:white;text-decoration:none;font-weight:950;font-size:24px;letter-spacing:3px}.team-brand span{display:block;font-size:10px;letter-spacing:6px;color:#e4c080}.season-tag{font-size:10px;letter-spacing:2px;color:#e4c080}body:has(.season-hero){background:#f4f1eb}main:has(.season-hero){max-width:1000px;padding:20px}.season-hero{padding:40px 8px 30px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#8c6a32}.season-hero h1{font-size:clamp(48px,8vw,84px);line-height:1;margin:16px 0;color:#10243b;letter-spacing:-4px}.hero-copy{font-size:clamp(20px,3vw,28px);font-weight:650;margin:18px 0 10px}.season-hero>p:not(.eyebrow){max-width:620px}.season-note{margin-top:26px;border-left:3px solid #c89b49;padding-left:14px;font-size:14px}.card{padding:24px;border-radius:14px}.reward-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:26px}.reward-heading h2{font-size:25px;margin:8px 0}.reward-heading>span{font-size:12px;color:#627080;white-space:nowrap}.reward-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0 8px}.reward-card{background:#f4f1eb;border:1px solid #e5ddce;border-radius:10px;padding:18px 14px;display:flex;flex-direction:column;min-height:190px}.reward-number{font-size:38px;line-height:1;font-weight:900;color:#10243b}.reward-milestone{font-size:9px;letter-spacing:1.5px;margin:8px 0;color:#7b6c55}.reward-card h3{font-size:16px;line-height:1.4;margin:6px 0 16px}.reward-status{font-size:11px;color:#63705f;margin-top:auto}.reward-card.earned{border:2px solid #c89b49;background:#fff8e9}.season-footer{padding:30px 8px;color:#667;font-size:12px}.season-footer>b{font-size:20px;color:#10243b}.season-footer details{margin-top:24px;border-top:1px solid #d8d1c5;padding-top:16px;line-height:1.7}.season-footer summary{cursor:pointer}.cal{gap:8px}.day{min-height:88px;padding:10px}.day .p{top:10px;right:10px}button{cursor:pointer;background:#153857}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c89b49;outline-offset:3px}@media(max-width:650px){.reward-grid{grid-template-columns:repeat(2,1fr)}.season-tag{display:none}.season-hero{padding-top:20px}.card{padding:16px}.reward-heading{align-items:flex-start}.reward-heading h2{font-size:21px}.day{padding:6px;min-height:72px}.day .p{top:6px;right:5px;font-size:10px}.cal{gap:4px}}

/* Official Legend Athletics black, orange-gold and white branding. */
body:has(.season-hero){background:#0c0c0d;color:#f4f3ef}.season-header{background:#000;border-color:#f6a000}.team-brand span,.season-tag{color:#f6a000}.season-hero{position:relative;padding:44px 320px 38px 8px;min-height:340px}.official-logo{position:absolute;right:8px;top:20px;width:280px;height:280px;object-fit:contain}.season-hero h1{color:#f6a000;font-family:Impact,'Arial Narrow',system-ui,sans-serif;font-weight:900;letter-spacing:-1px;font-size:clamp(48px,7vw,76px);text-transform:uppercase}.eyebrow{color:#ffbb43}.season-note{border-color:#f6a000;color:#ddd}.season-hero .hero-copy{color:white}.season-hero>p{color:#bdbdbd}body:has(.season-hero) .card{background:#181819;border:1px solid #343434;box-shadow:none}body:has(.season-hero) .muted{color:#b8b8bd}.reward-card{background:#101011;border-color:#424242}.reward-number{color:#f6a000}.reward-card h3{color:white}.reward-milestone{color:#f5b749}.reward-status,.reward-heading>span{color:#c4c4c4}.reward-card.earned{background:#2b2110;border-color:#f6a000}.bar{background:#353535}.bar>div{background:#f6a000}body:has(.season-hero) .day{background:#2c2c2e;color:white}body:has(.season-hero) .day .n,body:has(.season-hero) .day .p{color:#f6a000}body:has(.season-hero) .day.sel{background:#996000}body:has(.season-hero) .day.sel .n,body:has(.season-hero) .day.sel .p{color:white}body:has(.season-hero) .day.taken{background:#151515;border:1px solid #555}body:has(.season-hero) .day.held{background:#5e481c}body:has(.season-hero) button{background:#f6a000;color:#111}body:has(.season-hero) button.sec{background:#333;color:white}body:has(.season-hero) input{background:#242425;border-color:#555;color:white}body:has(.season-hero) input::placeholder{color:#bdbdbd}body:has(.season-hero) a{color:#ffbb43}body:has(.season-hero) .team-brand{color:white}.season-footer,.season-footer>b{color:#ddd}.season-footer details{border-color:#444}@media(max-width:700px){.season-hero{padding:18px 8px 28px;min-height:0}.official-logo{position:static;display:block;width:170px;height:170px;margin:0 auto 24px}.season-hero h1{font-size:54px}.season-hero .eyebrow{margin-top:8px}}

.reward-cap{display:block;color:#bdbdbd;font-size:12px;margin:-8px 0 16px}.legend-board main{max-width:1000px;padding:20px}.legend-board .season-hero h1{font-size:clamp(38px,5vw,60px);line-height:1.05}.board-table{overflow-x:auto}.legend-board th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#b9b9bd;padding:16px 10px;border-color:#444}.legend-board td{padding:18px 10px;border-color:#333}.rank{color:#f6a000;font-weight:800}.calendar-link{display:inline-block;border:1px solid #926516;border-radius:6px;padding:9px 12px;text-decoration:none;font-size:12px;white-space:nowrap}.calendar-link:hover{background:#322510}.earned-note{display:block;color:#bdbdbd;font-size:11px;margin-top:5px}.legend-board h2{font-size:22px}.legend-board .reward-card{min-height:180px}@media(max-width:500px){.legend-board td{padding:14px 5px}.calendar-link{padding:8px 6px;font-size:11px}.legend-board .card{padding:12px}}

.share-actions{display:flex;flex-wrap:wrap;gap:10px}.share-actions a,.share-actions button{display:inline-block;width:auto;padding:12px 16px;border:1px solid #9c701e;border-radius:8px;font-size:14px;text-decoration:none;font-weight:650}.share-actions a{background:#222}#share-card h2{font-size:22px;margin-top:0}#share-card[hidden]{display:none}
