:root{color-scheme:dark;font:16px system-ui;background:#071523;color:#edf8ff}*{box-sizing:border-box}body{margin:0}main{max-width:1000px;margin:auto;padding:24px 16px 60px}a{color:#4dd7f8;text-decoration:none}header{display:flex;gap:16px;align-items:center;margin:24px 0}header img{width:60px;height:60px;object-fit:contain}header p{font-size:11px;letter-spacing:2px;color:#4dd7f8;margin:0}h1{font-size:clamp(24px,5vw,36px);margin:5px 0}h2{font-size:19px;margin:0}.controls{display:flex;align-items:center;justify-content:space-between;gap:12px}button{border:1px solid #345368;border-radius:12px;min-width:44px;min-height:44px;background:#142e42;color:white;font:inherit;cursor:pointer}button:disabled{opacity:.35;cursor:default}#range,.note,#status{color:#a9c4d7;font-size:13px;line-height:1.6}#totals{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.total{padding:10px 14px;background:#17394a;border:1px solid #286178;border-radius:12px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekday{text-align:center;font-size:12px;color:#a9c4d7;padding:8px 0}.day{min-height:110px;border:1px solid #29475b;border-radius:14px;padding:10px;background:linear-gradient(145deg,#16354f,#0b1c2e);overflow-wrap:anywhere}.day time{display:block;font-size:12px;color:#a9c4d7;margin-bottom:10px}.day strong{font-size:14px}.day small{font-size:11px;color:#94adc1}.day.upcoming{background:transparent;border-style:dashed}.day.unknown{background:#0b1b29}.note{margin-top:24px}html.bn-ios-app .back{display:none}@media(max-width:560px){.calendar{gap:4px}.day{padding:6px 4px;border-radius:8px;min-height:72px}.day strong{font-size:11px}.day small{font-size:10px}.weekday{font-size:10px}.day time{font-size:11px}}
.gift{display:flex;align-items:center;gap:8px}.gift img{width:40px;height:40px;object-fit:contain;flex:none}.day .gift{flex-direction:column;gap:4px;text-align:center}.day .gift img{width:clamp(28px,6vw,64px);height:clamp(28px,6vw,64px);max-width:100%}.day .gift strong{font-size:18px;line-height:1.2}.day time{margin-bottom:5px}.day.recorded{border-color:#397990;background:linear-gradient(145deg,#1b4562,#0d2236)}.total{padding:8px 12px}.total strong{font-size:14px}@media(max-width:560px){main{padding-left:10px;padding-right:10px}.day .gift strong{font-size:13px}.total .gift img,.total img{width:30px;height:30px}.total strong{font-size:12px}.day{min-height:88px}header img{width:54px;height:54px}}
body{background:radial-gradient(ellipse at 50% 0,#16394a66,transparent 600px)}main{max-width:900px}header{margin:22px 0 26px}.season-panel{padding:20px 22px;background:linear-gradient(120deg,#16364a,#102333);border:1px solid #294c60;border-radius:20px 20px 0 0}.controls{max-width:420px;margin:auto}.controls h2{font-size:22px}.controls button{background:#091b2b80}#range{text-align:center;margin:8px 0 24px;color:#89aabd}.summary-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-heading h3{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;margin:0;color:#bed7e5}#status{margin:0;font-size:12px}#totals{margin:12px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.total{background:#091d2bcc;border-color:#28495b;border-radius:12px;padding:10px}.calendar-panel{padding:12px 22px 18px;background:#0b1c2bcc;border:1px solid #294c60;border-top:0;border-radius:0 0 20px 20px}.calendar{gap:6px}.day{min-height:104px}.day.upcoming{background:#10243255;border:1px solid #1b354477;color:#526f81}.day.upcoming time{color:#607e91}.day.unknown{border-color:#243e4b}.day.recorded{box-shadow:inset 0 1px #68cbe033}.calendar-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;margin-top:18px;color:#829fad;font-size:11px}.today-link{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:15px 20px;border:1px solid #31667b;border-radius:14px;background:#12394a;font-weight:650;font-size:14px}.empty-totals{font-size:13px;color:#91aaba;margin:4px 0}@media(max-width:560px){.season-panel{padding:16px 12px}.calendar-panel{padding:8px 8px 14px}.controls h2{font-size:19px}#range{margin-bottom:20px;font-size:12px}#totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.total{flex-direction:column;gap:5px;padding:8px 4px;text-align:center}.total strong{font-size:10px}.total img{width:32px;height:32px}.day{min-height:76px;padding:5px 2px}.calendar{gap:3px}.day .gift img{width:30px;height:30px}.calendar-footer{font-size:10px}.summary-heading h3{font-size:10px}#status{font-size:11px}.today-link{padding:13px 16px}}
@font-face{font-family:Lilita;src:url('/history/assets/LilitaOne-Regular.ttf') format('truetype');font-display:swap}h1,h2,.summary-heading h3,.today-link,.alerts-card h3,#season-alerts,.day .gift strong{font-family:Lilita,system-ui;font-weight:400}body{background:radial-gradient(ellipse at 15% 5%,#235b7970,transparent 60%),#071523}h1{color:#fff3ce;text-shadow:0 3px #030a13}.season-panel{background:linear-gradient(125deg,#245879,#143650 65%,#203254);border:2px solid #040e1b;box-shadow:0 6px #020b13}.controls h2{font-size:26px;color:#fff4ca;text-shadow:0 2px #061324}.controls button{border:2px solid #04101d;background:linear-gradient(#e5f5ff,#a7bad9);color:#071523;box-shadow:0 3px #030c15;font-size:23px}.summary-heading h3{color:#65eadf;font-size:16px;letter-spacing:.5px}.calendar-panel{border:2px solid #040e1b;border-top:1px solid #45617a;background:linear-gradient(120deg,#122f48,#0a1b2d);box-shadow:0 6px #020b13}.total{background:linear-gradient(#203d5d,#142940);border:1px solid #5e7d96;box-shadow:0 3px #07131f}.day.recorded{background:linear-gradient(145deg,#2b7395,#15405d);border:1px solid #68d7e5;box-shadow:0 3px #040e1b}.day .gift strong{color:#fff4cb;font-size:21px;text-shadow:0 2px #071523}.day.upcoming{background:#07152350}.today-link,#season-alerts{border:2px solid #03150c;border-radius:14px;background:linear-gradient(#8cff80,#12ed39 48%,#00bf22);color:#031809;box-shadow:inset 0 2px #dcffbf,0 5px #00651b;font-size:20px;text-align:center;justify-content:center;gap:12px}.alerts-card{margin-top:22px;padding:20px;background:linear-gradient(125deg,#303e7c,#39245c);border:2px solid #080e21;border-radius:18px;box-shadow:0 5px #050b17;display:flex;align-items:center;flex-wrap:wrap;gap:16px}.alerts-card>div{flex:1;min-width:180px}.alerts-card h3{font-size:23px;color:#ffe37c;margin:0 0 6px;text-shadow:0 2px #161127}.alerts-card p{font-size:13px;line-height:1.5;color:#e0e7fa;margin:0}#season-alerts{padding:12px 18px;font-size:18px}#season-alerts:disabled{opacity:.7}#alerts-status{flex-basis:100%}#alerts-status:empty{display:none}.today-link{margin-top:18px;background:linear-gradient(#ecfaff,#b1c2e0);border-color:#030c18;box-shadow:0 5px #030c18;color:#10283e}button:focus-visible,a:focus-visible{outline:3px solid #ffe37c;outline-offset:4px}@media(max-width:560px){.controls h2{font-size:23px}.summary-heading h3{font-size:14px}.day .gift strong{font-size:15px}.alerts-card{padding:16px;gap:12px}.alerts-card h3{font-size:21px}#season-alerts{width:100%}}
.value-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;padding:14px 16px;border:1px solid #7abd64;border-radius:14px;background:linear-gradient(120deg,#224e3e,#133437);box-shadow:0 3px #081c25}.value-card>img{width:62px;height:52px;object-fit:contain}.value-card>div{flex:1}.value-card small{display:block;color:#c7efb1;font-size:10px;letter-spacing:1px}.value-card strong{display:block;font:28px Lilita,system-ui;color:#efffc6;text-shadow:0 2px #102b24}.value-card span{display:block;color:#b8d2c7;font-size:11px;margin-top:3px}.value-card details{flex-basis:100%;font-size:12px;color:#c9dfd7}.value-card summary{cursor:pointer;width:fit-content;min-height:24px}.value-card details p{line-height:1.6;margin:6px 0}
/* Keep the complete season together for desktop screenshots. */
@media(min-width:1000px){
 .season-page main{max-width:1280px}
 .season-board{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:stretch}
 .season-board .season-panel{padding:16px;border-radius:20px 0 0 20px}
 .season-board .season-heading{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:12px;padding-bottom:12px}
 .season-board .season-heading h1{font-size:25px}
 .season-board .season-switcher{min-width:0;padding:8px}
 .season-board .season-switcher .controls{gap:6px}
 .season-board .season-switcher .controls h2{font-size:20px}
 .season-board .summary-heading h3{font-size:14px}
 .season-board .value-card{padding:10px;gap:8px;margin-top:10px}
 .season-board .value-card>img{width:40px;height:40px}
 .season-board .value-card strong{font-size:25px}
 .season-board .value-card span{font-size:10px}
 .season-board #totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}
 .season-board .total{padding:7px;gap:5px}
 .season-board .total img{width:26px;height:26px}
 .season-board .total strong{font-size:11px;overflow-wrap:anywhere}
 .season-board .calendar-panel{padding:10px 14px 12px;border:2px solid #040e1b;border-left:0;border-radius:0 20px 20px 0}
 .season-board .calendar{gap:5px}
 .season-board .weekday{padding:4px 0}
 .season-board .day{min-height:clamp(68px,9vh,94px);padding:5px 7px;border-radius:10px}
 .season-board .day time{margin-bottom:0;font-size:11px}
 .season-board .day .gift{gap:1px}
 .season-board .day .gift img{width:clamp(28px,4vh,42px);height:clamp(28px,4vh,42px)}
 .season-board .day .gift strong{font-size:18px}
 .season-board .calendar-footer{margin-top:10px;font-size:10px}
}
/* Site chrome uses the shared design; native shell owns its own navigation. */
html.bn-ios-app .season-web-shell,html.bn-ios-app .creator-promo{display:none!important}.season-page .season-web-shell{max-width:1200px;margin:auto;padding:0 16px}.season-page .navbar{position:relative;top:auto;margin:16px auto}.season-page .creator-promo{margin:14px auto}.season-page .footer-banner{display:block}.season-page .footer{margin-top:24px}.season-page main header{position:static}.season-page .nav-menu-toggle{font-family:inherit}.season-page .calendar-panel button{font-family:Lilita,system-ui}
/* Compact calendar masthead and edge-to-edge site footer. */
.season-page main{padding-top:12px;padding-bottom:24px;max-width:1100px}.season-page main>.back{display:inline-block;font-size:12px;margin:0 0 12px}.season-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #66889c55}.season-page .season-heading header{margin:0;gap:12px;min-width:0}.season-heading header img{width:46px;height:46px}.season-heading header p{font-size:9px;letter-spacing:1.7px}.season-heading h1{font-size:clamp(22px,3vw,30px);margin:3px 0 0;line-height:1.12}.season-switcher{padding:9px 12px;background:#081c2b88;border:1px solid #47758b;border-radius:14px;min-width:270px}.season-switcher .controls{gap:12px}.season-switcher .controls h2{font-size:21px;white-space:nowrap}.season-switcher .controls button{min-width:38px;min-height:38px;font-size:20px;border-radius:10px}.season-switcher #range{margin:7px 0 0;font-size:11px}.season-page .creator-promo{margin:6px auto;padding-top:6px;padding-bottom:8px}.season-page .season-footer-shell{width:100%;max-width:none;padding:0;margin:0}.season-page .season-footer-shell .footer-banner{width:100%;max-width:none;margin:0;border-radius:0}.season-page .season-footer-shell .footer{width:100%;max-width:none;margin:0;padding:24px clamp(16px,4vw,60px) 18px;border-radius:0}.season-page .footer-inner{max-width:1200px;margin:auto;gap:24px}.season-page .footer-bottom{margin-top:18px;padding-top:12px}.season-page .footer-tagline{margin-bottom:0}.season-page .season-footer-shell .footer-banner{padding-top:12px;padding-bottom:12px}.season-page .alerts-card{margin-top:16px}.season-page .today-link{margin-top:14px}@media(max-width:700px){.season-heading{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:16px;padding-bottom:14px}.season-heading header img{width:40px;height:40px}.season-heading h1{font-size:25px}.season-switcher{min-width:0;padding:8px 10px}.season-switcher .controls{max-width:none}.season-page main{padding-bottom:20px}.season-page .season-footer-shell .footer{padding:20px 16px 16px}}html.bn-ios-app .season-page main>.back{display:none}
