/* Four complete chips at phone widths; no obscuring overflow fade. */
.season-nav{flex-wrap:wrap;overflow:visible;gap:6px}.season-nav a{padding:12px}.chip-fade:after{display:none!important}.effects-toggle{max-width:47%;white-space:normal;line-height:1.25}.lights-row{height:90px}.lights{opacity:.8}.flyby-band{position:absolute;left:0;top:0;width:calc(100% - 205px);height:72px;overflow:hidden;pointer-events:none}.flyby{position:absolute;width:150px;height:62px;left:-150px;top:4px;animation:flyby 3.8s ease-in-out forwards;pointer-events:none}@keyframes flyby{to{transform:translateX(var(--travel))}}
.effects-enabled .lights{animation:twinkle 5.3s ease-in-out infinite alternate}.effects-enabled .lights:nth-of-type(odd){animation-duration:6.7s}@keyframes twinkle{from{opacity:.6}to{opacity:.95}}
.effects-enabled .elf-card:hover .elf-sprite,.effects-enabled .elf-card:focus-visible .elf-sprite{animation:elf-bounce .4s ease-out}@keyframes elf-bounce{45%{transform:translateY(-3px)}to{transform:translateY(0)}}.elf-sprite{float:right;width:auto;height:100px;margin-left:1rem}.game-links .next-card h2{font-size:1.65rem}.game-links .next-card>img{width:100%;display:block}.next-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.game-links{grid-template-columns:repeat(2,minmax(0,1fr))}.quiet-notice{border-block:1px solid #214c4255;padding:.7rem 1rem;background:#fffaf0;font-weight:700}.game-intro{margin-bottom:1.5rem}.game-intro summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:700}.email-card,.ticket,#game-results{background:#fffaf0;border:2px solid var(--green);border-radius:1.2rem;padding:clamp(1.1rem,4vw,2.5rem);overflow-wrap:anywhere}.email-card h2{font-size:1.5rem}.email-card p{max-width:78ch}.email-header{border-bottom:1px solid #214c4255;padding-bottom:1rem}.email-header p{margin:.3rem 0}.preview{font-style:italic}.email-context{border-left:4px solid var(--green);padding:.5rem 1rem;background:#214c4209}.email-destination{font-family:ui-monospace,monospace;font-size:.94rem;overflow-wrap:anywhere}.game-choices{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.game-choices button{min-height:48px;background:var(--green);color:var(--cream);border-color:var(--green)}.game-choices button:focus-visible{outline-color:var(--red)}.email-feedback{border-top:2px solid var(--green);margin-top:1.5rem;padding-top:1rem}.email-feedback h3:focus,#results-heading:focus,#certificate-heading:focus{outline:3px solid var(--red);outline-offset:5px}u.clue{text-decoration-thickness:3px;text-underline-offset:.2em}.clue-label{font-size:.875rem;font-weight:700;border:1px solid var(--green);border-radius:.3rem;padding:.2rem .4rem;margin-left:.4rem;display:inline-block}.finished-area{position:relative;isolation:isolate;min-height:100px;width:210px;display:flex;align-items:center;justify-content:center;margin:1rem 0}.finished-area img{width:180px;height:48px}.burst{position:absolute;inset:0;pointer-events:none;overflow:hidden}.burst img{position:absolute;width:8px;height:8px;left:100px;top:45px;opacity:.7;animation:burst-drift .85s ease-out forwards}.burst img:nth-child(3n){width:6px;height:6px}@keyframes burst-drift{to{transform:translate(var(--dx),var(--dy)) rotate(50deg);opacity:0}}
input{font:inherit;border:2px solid var(--green);border-radius:.5rem;min-height:48px;width:min(100%,460px);padding:.6rem .8rem}input:focus-visible{outline:3px solid var(--red);outline-offset:4px}label{display:block;font-weight:700}.certificate-art{background:#fff;border-radius:1rem;overflow:hidden;margin-top:2rem}.certificate-art svg{display:block;width:100%;height:auto}.certificate-controls .actions{gap:.75rem}.ticket h2{font-size:clamp(1.4rem,3vw,2rem)}.ticket-number{font:700 .95rem ui-monospace,monospace}.jingle-panel{border-top:1px solid #214c4255;padding-top:1rem;font-size:.94rem}.jingle-panel p{max-width:70ch}.effects-paused .flyby,.effects-paused .burst{display:none}.effects-paused *{animation:none!important;transition:none!important}body[data-season-active="false"] .lights{animation:none!important}.santa-route{animation:none!important;stroke-dasharray:none!important}html{scroll-behavior:auto}
@media(max-width:649px){.season-nav{display:grid;grid-template-columns:1fr 1fr;font-size:.875rem}.season-nav a{justify-content:center;padding:12px 8px;white-space:normal;text-align:center}.next-cards,.game-links{grid-template-columns:1fr}.lights-row{height:92px}.lights{max-width:45%}.effects-toggle{font-size:.75rem}.flyby-band{width:48%;height:72px}.email-card,.ticket{padding:1.1rem}.game-choices{gap:.75rem}.game-choices button{padding:.5rem}.certificate-controls .actions{align-items:stretch;flex-direction:column}.certificate-controls button{width:100%}.certificate-art{border-radius:0}.contacts a{white-space:normal}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.flyby,.burst{display:none!important}}
@page{size:letter landscape;margin:0}
@media print{body:has(#certificate:not([hidden])){background:white!important}body:has(#certificate:not([hidden]))>*{display:none!important}body:has(#certificate:not([hidden]))>main{display:block!important;width:100%;margin:0;padding:0}body:has(#certificate:not([hidden])) main>*{display:none!important}body:has(#certificate:not([hidden])) main>#certificate{display:block!important;margin:0;padding:0}#certificate>*{display:none!important}#certificate>.certificate-art{display:block!important;width:11in;height:8.5in;padding:.5in;margin:0;border-radius:0;break-inside:avoid}#certificate svg{width:100%;height:100%}.certificate-art svg>rect:first-of-type{fill:white}.certificate-art svg>path,.certificate-art svg>circle{display:none}.certificate-art svg [fill="#EDC66C"]{fill:#B8902F}.certificate-art svg [stroke="#EDC66C"]{stroke:#B8902F}.jingle-panel,.game-intro{display:none!important}}

.grumble-sprite{float:right;width:auto;height:120px;margin:0 0 1rem 1rem}.game-intro{display:flow-root}.effects-enabled .lights{animation:none}.effects-enabled .lights ellipse{animation:twinkle 4.8s ease-in-out infinite alternate}.effects-enabled .lights ellipse:nth-of-type(3n){animation-duration:6.7s;animation-delay:-2s}.effects-enabled .lights ellipse:nth-of-type(3n + 1){animation-duration:5.6s;animation-delay:-3s}body[data-season-active="false"] .lights ellipse{animation:none!important}

.desk-scene{max-width:600px}.desk-scene>img{display:block;width:100%;height:auto}
