@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#171918;--panel:#222623;--line:#343a35;--text:#f2f1e9;--muted:#a0aaa2;--accent:#fa927b;--side:210px;color-scheme:dark;font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}button,input,select{font:inherit}button{cursor:pointer;border:0;color:inherit}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}svg{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}p{line-height:1.7}h1,h2,h3,p{margin-top:0}h2{font-size:25px;letter-spacing:-.8px;margin-bottom:0}h3{font-size:18px}.skip{position:fixed;left:230px;top:-100px;padding:12px;background:var(--accent);color:#111;z-index:100}.skip:focus{top:10px}.sidebar{width:var(--side);position:fixed;inset:0 auto 92px 0;border-right:1px solid var(--line);padding:34px 18px;background:#1b1e1c;display:flex;flex-direction:column;z-index:20}.brand{font-size:39px;font-weight:800;letter-spacing:-3px;line-height:1}.brand span{font-size:15px;color:var(--accent);margin-left:3px}.sidebar>.brand{margin-left:17px;margin-bottom:55px}.side-label,.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700}.side-label{margin-left:17px;color:#79867d;margin-bottom:15px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border-radius:8px;background:transparent;text-align:left;color:var(--muted);margin-bottom:5px;font-size:13px;font-weight:600}.nav-item:hover{background:#292f29;color:white}.nav-item.active{background:#33352f;color:#f5e6c9}.nav-item.active svg{color:var(--accent)}.nav-item small{margin-left:auto;font-size:10px;padding:2px 6px;border-radius:4px;background:#43473e;color:#eceddf}.side-bottom{margin-top:auto;padding:20px 16px}.side-bottom strong{font-size:14px}.side-bottom p{font-size:11px;color:var(--muted);margin:8px 0 25px}.local-label{font-size:9px;letter-spacing:1.5px;color:#879580}.little-wave{display:flex;gap:4px;align-items:center;height:30px;margin-bottom:16px}.little-wave i{width:3px;border-radius:4px;background:#778d72;height:10px}.little-wave i:nth-child(2n){height:23px}.little-wave i:nth-child(3n){height:16px}.app-shell{margin-left:var(--side)}.topbar{height:88px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 40px}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{padding:0 13px;color:#7c877d}.breadcrumb strong{font-weight:500;color:#e0e3da}.top-right{display:flex;align-items:center;gap:20px}.today{font-size:11px;color:var(--muted)}.avatar{display:grid;place-items:center;width:34px;height:34px;border:1px solid #555d50;border-radius:50%;color:#d8dfc4;font-size:19px}main{max-width:1530px;margin:auto;padding:32px 40px 125px}.hero{position:relative;display:grid;grid-template-columns:1.2fr 1fr;min-height:320px;background:#e9e8dc;color:#222a25;border-radius:15px;overflow:hidden;margin-bottom:42px}.hero-copy{padding:35px 38px;position:relative;z-index:1}.eyebrow{color:var(--muted);margin-bottom:13px;display:flex;align-items:center;gap:7px}.hero .eyebrow{color:#657263;font-size:9px}.dot{width:6px;height:6px;background:var(--accent);border-radius:50%;display:inline-block}.hero .dot{background:#688463}h1{font-size:clamp(36px,3.6vw,57px);letter-spacing:-2.7px;line-height:1.13;margin-bottom:16px;font-weight:800}h1 em{font-style:normal;color:#62775f}.hero-copy>p:not(.eyebrow){font-size:12px;color:#626c5e;margin-bottom:24px}.primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--accent);color:#29241f;border-radius:7px;padding:12px 17px;font-size:12px;font-weight:800}.primary:hover{background:#ffa48d}.record-scene{position:relative;min-height:320px;overflow:hidden;background:linear-gradient(135deg,#d5d9c6,#bac9b0)}.record{position:absolute;width:310px;height:310px;top:55px;left:50%;transform:translateX(-45%) rotate(-22deg);border-radius:50%;background:repeating-radial-gradient(circle,#171c18 0 2px,#2e342d 3px,#171c18 4px 7px);box-shadow:18px 24px 25px #34473455,inset 0 0 0 9px #181d19;display:grid;place-items:center}.record:after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(transparent 0 35deg,#e1e7ce19 45deg,transparent 75deg 210deg,#e1e7ce15 240deg,transparent 265deg)}.record-label{width:108px;height:108px;border-radius:50%;background:#ef9378;display:flex;flex-direction:column;align-items:center;justify-content:center;border:7px solid #d17a60}.record-label span{font-size:30px;letter-spacing:-2px;font-weight:800}.record-label small{font-size:6px;letter-spacing:1px}.record-label i{height:8px;width:8px;background:#1c241b;border-radius:50%;margin-top:10px}.record-caption{position:absolute;top:23px;left:24px;font-weight:800;letter-spacing:2px;font-size:10px;line-height:1.6}.record-sticker{position:absolute;right:20px;top:70px;background:#f2eedc;border-radius:50%;width:82px;height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);font-size:20px;border:1px dashed #8c987f;z-index:2}.record-sticker strong{font-size:10px}.record-foot{position:absolute;bottom:17px;left:24px;right:24px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;z-index:2;color:#f3f0dc;mix-blend-mode:difference}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 0 23px}.section-heading .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:9px}.quiet{font-size:11px;color:var(--muted)}.genre-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.chip{background:transparent;border:1px solid #3b413b;border-radius:20px;padding:8px 15px;color:#aeb8ae;font-size:11px;white-space:nowrap}.chip:hover{border-color:#84907e}.chip.active{background:#e1e6d3;color:#293128;border-color:#e1e6d3;font-weight:800}.filterbar{display:flex;gap:9px}.search-wrap{display:flex;align-items:center;gap:10px;background:#222622;border:1px solid var(--line);border-radius:7px;padding:0 12px;flex:1;min-width:170px;color:#8b988c}.search-wrap input{background:transparent;border:0;min-width:0;width:100%;height:41px;color:var(--text);font-size:12px;outline:none}.search-wrap:focus-within{outline:2px solid var(--accent);outline-offset:2px}kbd{font-family:inherit;font-size:11px;border:1px solid #465045;border-radius:3px;padding:1px 5px}select{background:#222622;color:#c0c8bd;border:1px solid var(--line);border-radius:7px;padding:9px 25px 9px 10px;font-size:11px;max-width:180px}.results-line{display:flex;justify-content:space-between;margin:18px 0 15px;color:#9aa794;font-size:10px}.text-button{background:none;color:#a9b7a5;font-size:11px;padding:0;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:#fff}.station-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.station-card{position:relative;background:#222623;border:1px solid #303831;border-radius:10px;padding:17px;min-width:0;transition:background .15s,border-color .15s}.station-card:hover{background:#292f29;border-color:#5e6a5a}.station-card.selected{border-color:var(--accent);background:#2c3029}.station-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.station-logo{width:57px;height:57px;flex-shrink:0;border-radius:10px;background:#e4e8dd;display:grid;place-items:center;color:#617258;font-size:24px;font-weight:800;overflow:hidden}.station-logo img{width:100%;height:100%;object-fit:contain;background:#fff;padding:3px}.icon-button{display:inline-grid;place-items:center;width:32px;height:32px;background:none;color:#9ca997;border-radius:6px;flex-shrink:0}.icon-button:hover{background:#ffffff0d;color:#fff}.icon-button.saved{color:var(--accent)}.icon-button.saved svg{fill:currentColor}.station-name{font-size:13px;line-height:1.4;font-weight:800;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:0 0 4px}.station-place{font-size:9px;color:#9eafa0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 16px;min-height:16px}.station-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px}.station-tag{font-size:9px;color:#b1bcac;border:1px solid #404a3e;border-radius:4px;padding:4px 7px;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-play{height:31px;width:31px;display:grid;place-items:center;border-radius:50%;background:#3b4538;color:#e1e9d8}.station-play:hover,.selected .station-play{background:var(--accent);color:#241e18}.station-play svg{width:14px;height:14px}.station-info{position:absolute;top:54px;right:16px}.health-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#788174;margin-right:5px}.health-dot.reachable{background:#a7c987}.health-dot.unreachable{background:#e3a178}.more-button{display:flex;align-items:center;gap:9px;margin:23px auto 0;background:transparent;border:1px solid #46523f;border-radius:7px;padding:10px 20px;font-size:11px;color:#c8d3bf}.empty{grid-column:1/-1;background:var(--panel);border:1px dashed #485442;border-radius:12px;padding:40px;text-align:center}.empty p{color:var(--muted);font-size:13px}.empty h3{margin-bottom:10px}.skeleton{height:190px;background:linear-gradient(100deg,#212621,#2c332b,#212621);border-radius:10px;animation:pulse 1.7s infinite}.games-section{margin-top:48px}.games-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.game-card{background:#242923;border:1px solid #363e34;border-radius:12px;overflow:hidden;padding:0;text-align:left;transition:transform .18s}.game-card:hover{transform:translateY(-4px)}.game-art{height:133px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#2c3429}.coral .game-art{background:#eaa082}.lilac .game-art{background:#bcb1d4}.mint .game-art{background:#b5cbb0}.sand .game-art{background:#e0c594}.quiz-art span{font-size:100px;font-weight:800;transform:rotate(-16deg);line-height:1}.quiz-art i{font-size:62px;font-weight:800;font-style:normal;transform:rotate(13deg);color:#8e5846;margin-left:14px}.tiles-art{gap:5px}.tiles-art span{background:#ede4f1;border:1px solid #9b8eae;box-shadow:3px 5px #9386a6;border-radius:8px;padding:12px 7px;font-size:19px;font-weight:800;transform:rotate(-8deg)}.tiles-art span:last-child{background:#6a5d84;color:white;font-size:16px;transform:rotate(9deg)}.memory-art span{background:#e5edda;padding:10px 13px;border-radius:8px;font-size:35px;transform:rotate(-15deg);box-shadow:2px 3px #7e987770}.memory-art span:nth-child(2){transform:rotate(10deg);margin-left:-8px;color:#6b875e}.memory-art span:last-child{font-size:25px;margin-left:5px;color:#e2edd9;background:#718567;transform:rotate(20deg)}.words-art{gap:3px}.words-art span{padding:10px 6px;background:#fbefcf;border-radius:4px;box-shadow:1px 4px #ac9065;font-size:22px;font-weight:800;transform:rotate(-8deg)}.words-art span:nth-child(2n){transform:rotate(8deg)}.game-meta{padding:18px 16px}.game-meta small{font-size:8px;letter-spacing:.7px;color:#a4b29f}.game-meta h3{font-size:15px;margin:8px 0}.game-meta h3 span{float:right;color:#a6b69c}.game-meta p{font-size:11px;color:#a4b19d;margin:0}.bottom-note{display:flex;align-items:center;gap:22px;margin-top:50px;padding-top:25px;border-top:1px solid var(--line)}.bottom-note .brand{font-size:25px;letter-spacing:-2px;color:#b6c1b0}.bottom-note p{font-size:10px;color:#98a58f;margin:0;flex:1}.bottom-note button{font-size:10px}.player{position:fixed;bottom:0;left:0;right:0;height:92px;background:#242a24f5;border-top:1px solid #45503f;backdrop-filter:blur(18px);z-index:30;display:grid;grid-template-columns:1fr auto 1fr;gap:25px;align-items:center;padding:15px 30px}.now-playing{display:flex;align-items:center;gap:12px;min-width:0}.player-art{display:grid;place-items:center;width:49px;height:49px;border-radius:8px;background:#394735;color:#c5d9b7;flex-shrink:0;overflow:hidden}.player-art img{height:100%;width:100%;object-fit:contain;background:white}.track-text{min-width:0}.track-text strong{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-text>span{font-size:10px;color:#a4b49d;display:block;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:340px}.now-playing>.icon-button{margin-left:auto}.playback{display:flex;align-items:center;gap:15px}.main-play{background:#e4e9d7;color:#263123;border-radius:50%;width:46px;height:46px;display:grid;place-items:center}.main-play:hover{background:var(--accent)}.live-label{font-size:8px;letter-spacing:1px;color:#a8b49d;display:flex;align-items:center;gap:6px}.live-label .dot{background:#9db78d}.player-tools{display:flex;justify-content:flex-end;align-items:center;gap:8px}.player-tools input{width:75px;accent-color:#c3d5ae;height:4px}.sleep-control{display:flex;align-items:center;margin-left:10px;color:#acb9a0}.sleep-control svg{width:16px;height:16px}.sleep-control select{background:transparent;border:0;max-width:105px;padding-left:6px;font-size:10px}.toast{position:fixed;bottom:110px;left:50%;transform:translateX(-50%);z-index:100;padding:13px 20px;background:#e2e8d5;color:#24301f;box-shadow:0 8px 40px #0006;border-radius:8px;font-size:12px;max-width:90vw}dialog{background:#222822;color:var(--text);border:1px solid #4d5b47;border-radius:16px;padding:26px;max-height:calc(100dvh - 125px);overflow:auto;box-shadow:0 30px 100px #0008;width:min(540px,calc(100% - 30px))}dialog::backdrop{background:#0b100cbb;backdrop-filter:blur(6px)}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px}.dialog-top .eyebrow{font-size:9px}.dialog-top h2{font-size:25px}.detail-identity{display:flex;gap:15px;align-items:center}.detail-identity h2{font-size:23px}.detail-identity p{color:var(--muted);font-size:12px;margin:6px 0}.detail-row{border-top:1px solid var(--line);padding:15px 0;font-size:12px;color:#b9c7b1;line-height:1.8}.detail-row strong{color:var(--text)}.detail-row small{display:block;color:var(--muted)}.stream-options{display:grid;gap:8px;margin:20px 0}.stream-choice{padding:12px;text-align:left;background:#30392c;border-radius:7px;font-size:12px;display:flex;justify-content:space-between;gap:10px}.detail-note{font-size:11px;color:var(--muted);line-height:1.8}.detail-link{display:inline-block;color:var(--accent);font-size:12px;text-decoration:underline;margin-top:10px}.game-footnote{font-size:10px;color:#a4b39a;text-align:center;margin:24px 0 0}.game-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.game-toolbar span{font-size:12px;color:#b7c7ad}.secondary{border:1px solid #58674c;border-radius:6px;background:transparent;padding:8px 12px;font-size:11px;color:#d6dfcc}.game-help{font-size:12px;color:#a4b49b;line-height:1.7;margin-bottom:18px}.game-message{min-height:25px;font-size:13px;color:#dfc8a1;text-align:center;margin:14px 0}.board2048{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#414a38;border-radius:10px;padding:8px;touch-action:none}.tile{aspect-ratio:1;border-radius:6px;display:grid;place-items:center;background:#525c47;color:#2c3025;font-size:clamp(20px,5vw,32px);font-weight:800}.tile[data-v="2"]{background:#e9e6d4}.tile[data-v="4"]{background:#e2d9b8}.tile[data-v="8"]{background:#edb883}.tile[data-v="16"]{background:#ef9c76}.tile[data-v="32"]{background:#f78469}.tile[data-v="64"]{background:#ec654e}.tile.high{background:#d7c365;font-size:24px}.dpad{display:flex;justify-content:center;gap:8px;margin-top:12px}.dpad button{width:40px;height:36px;background:#34422e;border-radius:5px}.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.memory-tile{aspect-ratio:1;background:#3c4c34;border:1px solid #586e4b;border-radius:8px;font-size:30px;color:#b9cbaa}.memory-tile.revealed{background:#d3e0c0;color:#3f5537}.memory-tile.matched{background:#86a772;color:#24341e;opacity:1}.quiz-progress{display:flex;gap:5px;margin:12px 0 23px}.quiz-progress i{height:4px;flex:1;background:#44513b;border-radius:4px}.quiz-progress i.done{background:var(--accent)}.quiz-question{font-size:20px;line-height:1.6}.answers{display:grid;gap:9px}.answer{display:flex;align-items:center;gap:13px;padding:14px;text-align:left;border:1px solid #495840;background:#2b3527;border-radius:8px;font-size:13px}.answer b{width:24px;height:24px;border-radius:5px;background:#43533b;display:grid;place-items:center;font-size:11px}.answer.correct{background:#43653a;border-color:#85ad6f;opacity:1}.answer.wrong{background:#6b453b;border-color:#bd816b;opacity:1}.result{text-align:center;padding:20px 0}.result-score{font-size:64px;letter-spacing:-4px;font-weight:800;color:var(--accent)}.result p{color:var(--muted);font-size:13px}.word-slots,.word-letters{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin:20px 0}.word-slots button,.word-letters button{width:42px;height:48px;display:grid;place-items:center;font-size:22px;font-weight:800;border-radius:6px;background:#e3d7b4;color:#3a3f29}.word-slots button{background:#3a4731;border:1px dashed #778765;color:#e3d7b4}.word-letters button:disabled{opacity:.15}.word-clue{text-align:center;font-size:18px;padding:20px 0 5px}[hidden]{display:none!important}@keyframes pulse{50%{opacity:.5}}
@media(min-width:1500px){.station-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.hero{min-height:345px}.record{width:340px;height:340px}}@media(max-width:1180px){:root{--side:180px}.sidebar{padding-inline:10px}.sidebar>.brand{font-size:36px}main{padding:25px 25px 120px}.topbar{padding:0 25px}.hero-copy{padding:30px}.station-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filterbar{flex-wrap:wrap}.search-wrap{flex-basis:100%}.filterbar select{flex:1;max-width:none}.player{padding:15px 20px;gap:15px}.live-label{display:none}.player-tools input{width:55px}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-art{height:145px}}@media(max-width:800px){:root{--side:72px}.sidebar{padding:27px 9px}.sidebar>.brand{font-size:0;margin-left:6px;margin-bottom:36px}.sidebar>.brand:before{content:'a';font-size:39px}.sidebar>.brand span{font-size:11px;margin-left:1px}.side-label,.side-bottom{display:none}.nav-item{padding:15px;justify-content:center;gap:0}.nav-text,.nav-item small{display:none}.topbar{height:68px}.today{display:none}.record-scene{min-height:300px}.record{width:260px;height:260px;left:70%;top:83px}.record-caption{font-size:8px;left:15px}.record-sticker{width:65px;height:65px;top:35px;font-size:17px;right:10px}.record-sticker strong{font-size:8px}.hero{grid-template-columns:1.35fr 1fr}.hero-copy{padding:25px}.hero h1{font-size:38px}.hero .primary{font-size:10px;padding:11px}.hero-copy>p:not(.eyebrow){font-size:11px}.player-tools{gap:1px}.sleep-control{margin-left:0}.player-tools input{display:none}.player{grid-template-columns:1fr auto auto;gap:8px}.track-text>span{max-width:200px}.now-playing>.icon-button{display:none}.playback{gap:4px}.player-tools>#mute{display:none}.station-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading h2{font-size:23px}.bottom-note{flex-wrap:wrap}.bottom-note p{flex-basis:70%}}@media(max-width:540px){:root{--side:0px}.sidebar{inset:0 0 auto 0;height:63px;width:auto;padding:0 17px;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.sidebar>.brand{margin:0 auto 0 0;font-size:29px;letter-spacing:-2px}.sidebar>.brand:before{display:none}.sidebar nav{display:flex;gap:2px}.nav-item{padding:11px;margin:0}.nav-item svg{width:19px;height:19px}.topbar{margin-top:63px;height:49px;padding:0 18px}.breadcrumb{font-size:10px}.avatar{height:27px;width:27px;font-size:16px}main{padding:18px 17px 112px}.hero{grid-template-columns:1fr;min-height:0;margin-bottom:32px}.hero-copy{padding:25px 24px;max-width:90%}.hero h1{font-size:39px}.hero-copy>p:not(.eyebrow){font-size:11px;max-width:230px}.hero .eyebrow{font-size:8px}.record-scene{position:absolute;right:-80px;bottom:-15px;width:165px;height:165px;min-height:0;border-radius:50%;background:transparent;opacity:.6;pointer-events:none}.record{width:160px;height:160px;left:50%;top:0}.record-label{width:65px;height:65px;border-width:4px}.record-label span{font-size:21px}.record-label small{font-size:4px}.record-label i{width:5px;height:5px;margin-top:5px}.record-caption,.record-sticker,.record-foot{display:none}.hero .primary{font-size:11px}.section-heading{align-items:center}.section-heading h2{font-size:21px}.section-heading .quiet{font-size:9px;max-width:85px;text-align:right}.genre-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;margin-bottom:12px}.chip{font-size:10px;padding:7px 12px}.filterbar{gap:7px}.filterbar select{font-size:10px;min-width:0;padding-left:7px;padding-right:15px}.filterbar #health-filter{max-width:150px}#sort-filter{flex-basis:100%}.station-grid{gap:9px}.station-card{padding:13px}.station-name{font-size:12px}.station-logo{width:47px;height:47px;border-radius:8px}.station-head{margin-bottom:13px}.station-info{right:10px;top:47px}.station-tag{font-size:8px}.station-place{font-size:9px;margin-bottom:12px}.station-info svg{width:15px;height:15px}.games-section{margin-top:35px}.games-grid{gap:10px}.game-art{height:105px}.game-meta{padding:14px 12px}.game-meta h3{font-size:13px}.game-meta small{font-size:7px}.game-meta p{font-size:10px}.tiles-art span{font-size:16px;padding:10px 5px}.tiles-art span:last-child{font-size:12px}.memory-art span{font-size:25px;padding:8px 10px}.words-art span{font-size:18px;padding:8px 5px}.quiz-art span{font-size:82px}.bottom-note{gap:15px}.bottom-note p{font-size:9px}.player{height:86px;padding:12px 14px;grid-template-columns:1fr auto;gap:5px}.player-art{width:41px;height:41px}.now-playing{gap:9px}.track-text strong{font-size:11px}.track-text>span{font-size:9px;max-width:180px}.main-play{height:40px;width:40px}.player-tools{display:none}.playback #retry{width:28px}.playback{gap:2px}dialog{padding:20px;max-height:calc(100dvh - 115px);margin:auto}.toast{bottom:98px}.results-line{font-size:9px}.text-button{font-size:10px}.game-dialog h2{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:540px){.hero-copy{max-width:100%;padding:24px 22px}.hero h1{font-size:32px;letter-spacing:-1.7px}.hero-copy>p:not(.eyebrow){max-width:245px}.player{grid-template-columns:1fr auto auto}.player-tools{display:flex}.player-tools>*:not(#player-info){display:none}.track-text>span{max-width:150px}#player-info{width:26px}}
/* Playroom: Sudoku and Greek hangman */
.sudoku-art{display:grid;grid-template-columns:repeat(3,30px);grid-template-rows:repeat(3,30px);align-content:center;justify-content:center;gap:2px}.sudoku-art span{display:grid;place-items:center;background:#ffffff50;font-weight:800;font-size:18px;color:#514663}.hangman-art{display:flex;align-items:center;justify-content:center;gap:7px}.hangman-art span{font-size:28px;font-weight:800;border-bottom:3px solid #754d41;color:#754d41}.sudoku-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));border:2px solid #bac9ad;border-radius:5px;overflow:hidden;margin:18px auto;max-width:432px}.sudoku-cell{aspect-ratio:1;border:0;border-right:1px solid #465045;border-bottom:1px solid #465045;border-radius:0;background:#252d26;color:#bceaa9;font:600 clamp(16px,4vw,23px) Manrope,sans-serif;padding:0;min-width:0;cursor:pointer}.sudoku-cell:nth-child(3n){border-right:2px solid #bac9ad}.sudoku-cell:nth-child(9n){border-right:0}.sudoku-cell:nth-child(n+19):nth-child(-n+27),.sudoku-cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid #bac9ad}.sudoku-cell.given{color:#f2f1e9;font-weight:800}.sudoku-cell.peer{background:#354035}.sudoku-cell.selected{background:#c5dfaf;color:#192417;box-shadow:inset 0 0 0 2px #fff}.sudoku-cell.conflict{color:#ff998a;background:#613b36}.sudoku-cell.selected.conflict{box-shadow:inset 0 0 0 2px #fff}.sudoku-keypad{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px}.sudoku-keypad button{padding:12px 0;font-size:17px}.puzzle-actions{display:flex;gap:8px;margin:12px 0}.reset-confirm{display:flex;gap:6px;align-items:center;font-size:11px}.hang-art{height:145px;color:#d1b8db;text-align:center}.hang-art svg{height:100%;max-width:100%}.hang-hint{text-align:center;font-size:13px;color:var(--muted)}.hang-word{display:flex;justify-content:center;gap:clamp(3px,1vw,7px);margin:22px 0;flex-wrap:wrap}.hang-word span{font-weight:800;font-size:clamp(15px,4vw,25px);min-width:15px;border-bottom:2px solid #839477;padding:3px 0}.hang-word .revealed{color:var(--accent)}.hang-keyboard{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}.hang-keyboard button{padding:11px 0;font-size:15px}.hang-keyboard .correct{background:#c5dfaf;color:#20301e;opacity:1}.hang-keyboard .incorrect{background:#593d36;color:#dbac9f;opacity:.7}.hang-keyboard button:disabled{cursor:default}.game-message{overflow-wrap:anywhere}@media(min-width:1181px){.games-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:540px){.game-toolbar{gap:8px;flex-wrap:wrap}.hang-keyboard{gap:4px}.sudoku-keypad{gap:3px}}
.sudoku-grid{max-width:min(432px,max(240px,calc(100dvh - 420px)))}

/* Expanded playroom */
.playroom-navigation{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 20px}.game-filters{display:flex;gap:7px;flex-wrap:wrap}.game-filters [aria-pressed=true]{background:#c5dfaf;color:#20301e;border-color:#c5dfaf}.all-games{display:block;margin:20px auto}.playroom-art{display:flex;align-items:center;justify-content:center;text-align:center;font-size:36px;font-weight:800;letter-spacing:5px;color:#3c453b}.puzzle-actions{flex-wrap:wrap}.game-toolbar select{max-width:100%;background:#283128;color:var(--text);border:1px solid #62705b;border-radius:7px;padding:8px;font:inherit;font-size:11px}.daily-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;max-width:270px;margin:12px auto 20px}.daily-cell{aspect-ratio:1;display:grid;place-items:center;border:1px solid #697363;border-radius:5px;font-size:23px;font-weight:800}.exact{background:#b8dba1!important;color:#20351b!important}.present{background:#e1c174!important;color:#342c14!important}.absent{background:#454d46!important;color:#d0d5ce!important}.search-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:2px;margin:18px 0}.search-cell{aspect-ratio:1;background:#30392f;color:var(--text);border:0;border-radius:3px;font:700 clamp(12px,3vw,18px) Manrope,sans-serif;padding:0;cursor:pointer}.search-cell.found{background:#637956}.search-cell.selected{background:#fa927b;color:#272c24}.word-list{display:flex;flex-wrap:wrap;gap:8px}.word-list span{font-size:12px;padding:6px 9px;background:#323b30;border-radius:5px}.word-list .found{text-decoration:line-through;color:#b8dba1}.mine-grid{display:grid;gap:3px;margin:18px 0}.mine-cell{aspect-ratio:1;padding:0;border:1px solid #63755b;border-radius:4px;background:#3b4935;color:#e3d6ab;font-size:18px;font-weight:800;cursor:pointer}.mine-cell.open{background:#222822;border-color:#343f30;color:#c5dfaf}.mine-cell.exploded{background:#925447}.nonogram-grid{display:grid;grid-template-columns:45px repeat(5,1fr);grid-template-rows:55px repeat(5,1fr);max-width:345px;margin:18px auto}.nonogram-clue{display:flex;align-items:center;justify-content:center;white-space:pre-line;font-size:15px;font-weight:700}.nonogram-clue.vertical{line-height:1.15;text-align:center;align-items:end;padding-bottom:8px}.nonogram-cell{aspect-ratio:1;border:1px solid #748068;background:#303a2d;color:#f1d0a5;font-size:22px;cursor:pointer}.nonogram-cell.filled{background:#bdd5a8;box-shadow:inset 0 0 0 3px #303a2d}.fifteen-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;max-width:350px;margin:16px auto}.fifteen-cell{aspect-ratio:1;background:#d5c2e2;color:#3b3244;border:0;border-radius:8px;font-size:28px;font-weight:800;cursor:pointer}.fifteen-cell.blank{background:#191f19}.ttt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:320px;margin:20px auto}.ttt-cell{aspect-ratio:1;border:1px solid #75826a;border-radius:9px;background:#303b2d;color:#c8dda9;font-size:48px;cursor:pointer}.ttt-cell:disabled{opacity:1;cursor:default}.solitaire-top,.solitaire-columns{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.solitaire-top{margin:16px 0 20px}.playing-card,.card-space{width:100%;height:76px;display:flex;align-items:flex-start;justify-content:flex-start;padding:7px 4px;font-size:17px;font-weight:800;letter-spacing:-1px;border-radius:5px;border:1px solid #a1a88f;background:#f4f0dd;color:#222a21;cursor:pointer}.playing-card.red{color:#ae3f3a}.playing-card.facedown{background:repeating-linear-gradient(45deg,#566952,#566952 4px,#60765a 4px,#60765a 8px);color:#e1e9d8;border-color:#91a286}.playing-card.selected{outline:3px solid #fa927b;outline-offset:-3px}.card-space{background:#1b241b;color:#87967e;border:1px dashed #6e7e64;justify-content:center}.card-column .playing-card{position:relative;margin-top:-48px}.card-column .playing-card:first-of-type{margin-top:0}.card-column .column-target{height:28px;margin-bottom:50px;padding:2px;line-height:20px}.solitaire-table{padding-bottom:8px}.solitaire-table button:focus-visible{outline:3px solid #ff9f80;z-index:2}.game-message{line-height:1.5}@media(max-width:540px){.playing-card,.card-space{height:62px;font-size:13px;padding:5px 2px}.card-column .playing-card{margin-top:-36px}.card-column .column-target{margin-bottom:38px}.solitaire-top,.solitaire-columns{gap:3px}.game-toolbar .puzzle-actions{gap:5px}.mine-cell{font-size:14px}.playroom-art{font-size:25px;letter-spacing:2px}.daily-cell{font-size:20px}.daily-grid{max-width:235px}.game-filters .secondary{padding:8px}.nonogram-grid{grid-template-columns:35px repeat(5,1fr)}}
/* Find the differences: original lightweight illustrations */
.differences-dialog{width:min(1040px,calc(100% - 30px))}.difference-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:10px 0 18px}.difference-figure{margin:0;min-width:0}.difference-figure figcaption{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.difference-image{position:relative;aspect-ratio:4/3;cursor:crosshair;border-radius:12px;overflow:hidden;touch-action:manipulation;outline-offset:4px;-webkit-tap-highlight-color:transparent}.difference-image>svg{display:block;width:100%;height:100%;user-select:none}.difference-marks{position:absolute;inset:0;pointer-events:none}.difference-mark{position:absolute;transform:translate(-50%,-50%);border:3px solid #284f38;border-radius:50%;box-shadow:0 0 0 2px #f6f1da;display:flex;align-items:flex-start;justify-content:center;font-size:11px;font-weight:800;color:#fff;text-shadow:0 1px 3px #000;background:#b8db9233}.difference-cursor{display:none;position:absolute;transform:translate(-50%,-50%);width:23px;height:23px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 2px #273c2c;pointer-events:none}.difference-cursor:after,.difference-cursor:before{content:'';position:absolute;background:#263c2c;left:50%;top:50%;transform:translate(-50%,-50%)}.difference-cursor:after{width:15px;height:2px}.difference-cursor:before{height:15px;width:2px}.difference-image:focus-visible{outline:3px solid var(--accent)}.difference-image:focus-visible .difference-cursor{display:block}.difference-art{display:flex;align-items:center;justify-content:center;gap:10px}.difference-art>span{position:relative;width:85px;height:85px;border:3px solid #6a8770;border-radius:8px;background:#f3e1b4;color:#bb8a58;text-align:right;padding:5px;font-size:22px}.difference-art i{display:block;text-align:center;color:#658269;font:normal 46px/34px serif}.difference-art b{position:absolute;bottom:8px;right:11px;font-size:13px;color:#d4826b}@media(max-width:700px){.difference-pair{grid-template-columns:1fr;gap:14px}.differences-dialog .game-toolbar{align-items:flex-start}.differences-dialog .puzzle-actions{margin:0}.difference-image{max-width:480px;margin:auto}.difference-mark{border-width:2px}.difference-art>span{width:63px;height:70px}}
/* Difficulty-aware Nonogram; scrollable large boards with pinned clues. */
.nonogram-dialog{width:min(760px,calc(100% - 30px))}.nonogram-scroll{overflow:auto;max-height:58dvh;overscroll-behavior:contain;margin:14px 0;padding:3px}.nonogram-scroll .nonogram-grid{width:100%;max-width:350px;margin:0 auto;grid-template-columns:var(--clue-width,45px) repeat(var(--nonogram-size),minmax(0,1fr));grid-template-rows:var(--clue-height,55px) repeat(var(--nonogram-size),minmax(0,1fr));isolation:isolate}.nonogram-scroll .nonogram-grid.large{width:calc(var(--clue-width) + var(--nonogram-size)*32px);max-width:none;grid-template-columns:var(--clue-width) repeat(var(--nonogram-size),32px);grid-template-rows:var(--clue-height) repeat(var(--nonogram-size),32px)}.nonogram-scroll .nonogram-clue{background:#222822;font-size:13px;z-index:2;padding:4px}.nonogram-scroll .vertical{position:sticky;top:0;align-items:flex-end;line-height:19px;padding-bottom:6px}.nonogram-scroll .row-clue{position:sticky;left:0;justify-content:flex-end;white-space:nowrap;padding-right:8px}.nonogram-corner{position:sticky;top:0;left:0;background:#222822;z-index:3}.nonogram-scroll .nonogram-cell{min-width:0;min-height:0;scroll-margin-top:var(--clue-height);scroll-margin-left:var(--clue-width);padding:0;font-size:21px}.nonogram-scroll .block-right{border-right:2px solid #c0cbaa}.nonogram-scroll .block-bottom{border-bottom:2px solid #c0cbaa}.nonogram-scroll .nonogram-cell:focus-visible{outline:3px solid #fa927b;outline-offset:-3px;z-index:1}
/* Memory difficulty layouts */
.memory-board{grid-template-columns:repeat(var(--memory-columns,4),minmax(0,1fr))}.memory-board .memory-tile{min-width:0}.memory-board[data-level=hard] .memory-tile{font-size:27px}@media(max-width:540px){.memory-board[data-level=hard]{grid-template-columns:repeat(5,minmax(0,1fr))}.memory-board[data-level=medium] .memory-tile,.memory-board[data-level=hard] .memory-tile{font-size:25px}}
/* Rich difference scenes and magnification */
.difference-viewport{overflow:auto;max-height:65dvh;border-radius:12px;overscroll-behavior:auto}.difference-viewport>.difference-image{width:100%;max-width:none;border-radius:0;touch-action:auto}.difference-pair.zoomed .difference-image{width:200%;max-width:none}.differences-dialog .game-toolbar{align-items:flex-start;flex-wrap:wrap}.differences-dialog .game-toolbar>.puzzle-actions{margin:0}.difference-viewport:focus-within{outline-offset:3px}.difference-pair.zoomed .difference-mark{font-size:14px}.difference-viewport .difference-image>svg{stroke:none;fill:none}

/* A small weather glance; the full forecast stays out of the radio's way. */
.weather-toggle{display:flex;align-items:center;gap:10px;background:#252b26;border:1px solid #3a433b;border-radius:12px;padding:9px 12px;text-align:left;min-height:49px;max-width:250px}.weather-toggle:hover{background:#30382f;border-color:#73856d}.weather-summary{display:flex;flex-direction:column;gap:3px;min-width:0}.weather-summary strong{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weather-summary small{font-size:10px;color:var(--muted)}.weather-chevron{color:var(--muted);margin-left:4px}.weather-icon{flex-shrink:0;color:#dfc58e;display:inline-flex}.weather-icon svg{width:28px;height:28px;stroke-width:1.5}.top-right{gap:14px}
.weather-page{width:min(760px,calc(100% - 30px));padding:28px;max-height:calc(100dvh - 115px);overflow:auto}.weather-search>label{display:block;font-size:12px;color:var(--muted);margin:22px 0 9px}.weather-search-fields{display:flex;gap:8px}.weather-search input{width:100%;min-width:0;background:#191e1b;color:var(--text);border:1px solid #465046;border-radius:8px;padding:12px}.weather-search select{max-width:150px;min-width:0}.weather-search .primary{padding:11px 16px;flex-shrink:0}.weather-message{font-size:12px;color:#d5c69e;margin:12px 0;min-height:18px}.weather-results{display:grid;gap:6px;max-height:255px;overflow:auto;margin-bottom:12px}.weather-results:empty{display:none}.weather-result{display:flex;flex-direction:column;gap:5px;text-align:left;background:#30392e;padding:13px 15px;border:1px solid #475342;border-radius:8px}.weather-result:hover{background:#3a4637}.weather-result strong{font-size:14px}.weather-result span{font-size:11px;color:#c4ccbd;line-height:1.6}.weather-current{background:linear-gradient(135deg,#e7e6d8,#bacbb2);color:#25372b;border-radius:16px;padding:25px;display:grid;grid-template-columns:1fr auto;gap:15px;position:relative;overflow:hidden}.weather-current .eyebrow{color:#546b54;font-size:9px;letter-spacing:1.6px}.weather-current h3{font-size:27px;letter-spacing:-1px;margin:0 0 6px}.weather-location{font-size:11px;line-height:1.6;margin:0;max-width:330px}.weather-temperature{display:grid;grid-template-columns:auto auto;align-items:center;gap:0 12px;justify-content:end}.weather-temperature>.weather-icon{color:#7c7442}.weather-temperature .weather-icon svg{width:49px;height:49px}.weather-temperature strong{font-size:54px;font-weight:500;letter-spacing:-3px;line-height:1.2}.weather-temperature>span:last-child{grid-column:1/-1;text-align:right;font-size:12px;margin-top:6px}.weather-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-top:18px;margin-top:8px;border-top:1px solid #758d7040}.weather-metrics>div{display:flex;flex-direction:column;gap:5px}.weather-metrics small{font-size:11px;color:#50624d}.weather-metrics strong{font-size:15px;font-weight:600}.weather-forecast-title{font-size:17px;margin:25px 0 7px}.weather-legend{font-size:10px;color:var(--muted);margin:0 0 13px}.weather-days{border-top:1px solid var(--line)}.weather-day{display:grid;grid-template-columns:75px 1fr 80px 44px 65px;align-items:center;gap:12px;min-height:58px;border-bottom:1px solid var(--line);font-size:12px}.weather-day>strong{font-weight:500}.weather-day-sky{display:flex;align-items:center;gap:12px;color:#cbd3c6}.weather-day-sky span:last-child{font-size:11px}.weather-day-sky svg{width:23px;height:23px}.weather-day-temperatures{display:flex;gap:9px;justify-content:flex-end}.weather-day-temperatures strong{font-weight:600}.weather-day-temperatures span{color:var(--muted)}.weather-rain{color:#a5c7d0;text-align:right}.weather-wind{font-size:10px;text-align:right;color:var(--muted)}.weather-update{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:13px;color:var(--muted)}.weather-update small{font-size:10px}.weather-footer{margin-top:23px;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.weather-footer p{margin:0 0 9px}.weather-footer>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.weather-footer a{text-decoration:underline;text-underline-offset:3px}.weather-footer .text-button{font-size:10px}
@media(max-width:1100px){.top-right .today{display:none}.weather-toggle{max-width:225px}}
@media(max-width:700px){.topbar{height:auto;min-height:75px;padding-top:12px;padding-bottom:12px;gap:12px}.topbar .breadcrumb{font-size:11px}.topbar .breadcrumb>span{padding:0 5px}.topbar .top-right{gap:0;min-width:0}.topbar .avatar{display:none}.weather-toggle{max-width:190px;padding:8px;gap:7px}.weather-summary strong{font-size:11px}.weather-summary small{font-size:9px}.weather-toggle .weather-icon svg{width:24px;height:24px}.weather-chevron{display:none}.weather-page{padding:21px 17px}.weather-search-fields{display:grid;grid-template-columns:1fr auto}.weather-search input{grid-column:1/-1}.weather-search select{max-width:none}.weather-current{padding:19px;grid-template-columns:1fr}.weather-temperature{justify-content:start}.weather-temperature>span:last-child{text-align:left}.weather-current h3{font-size:24px}.weather-temperature strong{font-size:49px}.weather-metrics{margin-top:0;gap:6px}.weather-day{grid-template-columns:65px 1fr 60px 35px;gap:8px;min-height:62px}.weather-day-sky{gap:7px}.weather-day-sky span:last-child{font-size:10px}.weather-wind{display:none}.weather-day-temperatures{gap:6px}.weather-day-sky svg{width:21px;height:21px}.weather-legend{line-height:1.6}.weather-update{align-items:flex-start}.weather-update .text-button{font-size:11px}.weather-search .primary{justify-content:center}.weather-location{max-width:none}}
@media(max-width:380px){.weather-toggle{max-width:164px}.topbar .breadcrumb{max-width:116px;line-height:1.8}.weather-day{grid-template-columns:58px 1fr 55px 31px;gap:5px}}

.weather-message:empty{display:none}


.weather-page{max-width:1060px;margin:0 auto}.weather-page[hidden]{display:none}.weather-page .section-heading{margin-bottom:24px}.weather-page .weather-search{max-width:760px}.weather-page .weather-current{margin-top:26px;padding:32px}.weather-page .weather-temperature strong{font-size:66px}.weather-page .weather-day{min-height:65px}.weather-page .weather-forecast-title{margin-top:32px}.weather-page .weather-current h3{font-size:30px}.weather-page{width:100%;padding:0;max-height:none;overflow:visible}.weather-page .weather-footer{margin-top:28px}.weather-page .weather-location{max-width:520px}.topbar .avatar{display:grid}.topbar{min-height:0}@media(max-width:700px){.weather-page{padding:0;width:100%;max-height:none}.weather-page .weather-current{padding:22px}.weather-page .weather-temperature strong{font-size:54px}.topbar{height:68px;padding-top:0;padding-bottom:0}}@media(max-width:540px){.sidebar{padding-inline:12px}.sidebar>.brand{font-size:27px}.sidebar .nav-item{padding:9px}.topbar{height:49px}.topbar .breadcrumb{max-width:none}}

@media(max-width:700px){.topbar .avatar{display:none}.topbar{height:auto;min-height:68px;padding-top:8px;padding-bottom:8px}.weather-summary small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .top-right{max-width:190px}.weather-toggle{max-width:100%}.topbar .breadcrumb{flex:1}}

.weather-selected{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:12px;margin:0 0 8px}.weather-selected[hidden],#weather-picker[hidden]{display:none}.weather-selected>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weather-selected .text-button{font-size:11px;white-space:nowrap;flex-shrink:0;text-decoration:underline;text-underline-offset:4px}#weather-picker .weather-search>label{margin-top:15px}

/* Header calendar shortcut: same navigation as the sidebar. */
.calendar-toggle{display:flex;align-items:center;gap:10px;background:#252b26;border:1px solid #3a433b;border-radius:12px;padding:9px 12px;text-align:left;min-height:49px;color:var(--text);font:inherit;cursor:pointer;flex-shrink:0}.calendar-toggle:hover{background:#30382f;border-color:#73856d}.calendar-toggle:focus-visible{outline:2px solid #c5dfaf;outline-offset:3px}.calendar-widget-icon{display:inline-flex;color:#c5dfaf}.calendar-widget-icon svg{width:25px;height:25px;stroke-width:1.5}.calendar-widget-summary{display:flex;flex-direction:column;gap:3px}.calendar-widget-summary strong{font-size:12px;font-weight:600;white-space:nowrap}.calendar-widget-summary small{font-size:10px;color:var(--muted);white-space:nowrap}.calendar-widget-summary small span{margin-left:9px}.top-right{flex-shrink:0}@media(max-width:1000px){.topbar .breadcrumb{display:none}.topbar .top-right{width:100%;justify-content:flex-end}}@media(max-width:700px){.topbar .top-right{max-width:none;gap:8px}.topbar .weather-toggle,.topbar .calendar-toggle{flex:1;max-width:none;min-width:0}.calendar-toggle{padding:8px;gap:7px}.calendar-widget-summary strong{font-size:11px}.calendar-widget-summary small{font-size:9px}.calendar-widget-icon svg{width:22px;height:22px}.topbar{height:auto;min-height:68px}.calendar-widget-summary small span{margin-left:4px}}

.calendar-widget-summary{min-width:0}.calendar-widget-summary strong{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.5}.calendar-toggle{max-width:260px}.calendar-widget-icon{flex-shrink:0}@media(max-width:700px){.topbar .calendar-toggle{flex:1.3;max-width:none}.calendar-widget-summary strong{font-size:11px}.topbar .top-right{align-items:stretch}}

.library-switch{display:inline-flex;gap:4px;padding:4px;border:1px solid #394036;border-radius:12px;background:#20251f;margin:0 0 22px}.library-switch[hidden]{display:none}.library-switch button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;padding:11px 18px;font:inherit;font-size:12px;font-weight:600;color:var(--muted);background:transparent;cursor:pointer}.library-switch button[aria-pressed=true]{background:#c5dfaf;color:#23301e}.library-switch button:hover:not([aria-pressed=true]){color:var(--text);background:#2c3428}.library-switch button:focus-visible{outline:2px solid #fa927b;outline-offset:2px}.library-switch svg{width:17px;height:17px}.library-switch button>span{display:inline-flex}@media(max-width:540px){.library-switch{display:flex}.library-switch button{flex:1;padding:10px 12px}}

.nav-item{text-decoration:none}.section-heading h1{font-size:clamp(24px,3vw,32px);line-height:1.25;margin:0}.seo-intro{font-size:13px;line-height:1.8;color:var(--muted)}

.station-preview{border:1px solid #343b33;border-radius:12px;padding:18px}.station-preview h3{font-size:15px}.station-preview p{font-size:11px;color:var(--muted)}

/* Games live in the main document, with the radio player always available. */
.game-page{width:100%;max-width:760px;margin:0 auto;outline:none}.game-page[hidden]{display:none}.game-back{margin-bottom:28px}.game-page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.game-page-heading h1{font-size:clamp(27px,4vw,38px);letter-spacing:-1px;margin:0}.game-page-heading .eyebrow{margin-bottom:8px}.game-page #game-content{max-width:540px;margin:0 auto}.game-page .game-footnote{text-align:center;margin-top:28px}.game-page.differences-dialog{max-width:1100px}.game-page.nonogram-dialog{max-width:820px}.game-page.differences-dialog #game-content,.game-page.nonogram-dialog #game-content{max-width:none}@media(max-width:540px){.game-page-heading{align-items:flex-start}.game-page-heading .quiet{display:none}.game-back{margin-bottom:22px}}

/* Keep both zoom axes scrollable on mobile and desktop. */
.difference-pair.zoomed .difference-viewport{height:clamp(180px,32vw,400px);max-height:55dvh;scroll-behavior:auto}

/* A wider, compact workspace for comparing both images. */
main:has(>.differences-dialog:not([hidden])){max-width:none;padding:18px 22px 115px}
.game-page.differences-dialog{max-width:none;display:grid;grid-template-columns:auto 1fr;column-gap:20px;align-items:center}
.game-page.differences-dialog[hidden]{display:none}
.differences-dialog .game-back{margin:0;justify-self:start}
.differences-dialog .game-page-heading{margin:0;min-width:0}
.differences-dialog .game-page-heading h1{font-size:25px;letter-spacing:-.6px}
.differences-dialog .game-page-heading .eyebrow,.differences-dialog .game-page-heading .quiet,.differences-dialog .game-footnote{display:none}
.game-page.differences-dialog #game-content{grid-column:1/-1;width:100%;margin-top:16px}
.differences-dialog .game-toolbar{display:flex;gap:8px;margin-bottom:8px}
.differences-dialog .game-toolbar>span{font-size:12px}
.differences-dialog .puzzle-actions{display:flex;flex-wrap:wrap;gap:6px;width:100%;align-items:center}
.differences-dialog .puzzle-actions select{max-width:280px;min-width:0}
.differences-dialog .puzzle-actions .secondary{padding:9px 11px}
.differences-dialog .difference-pair{gap:12px;margin:8px 0}
.differences-dialog .difference-figure figcaption{margin-bottom:5px;font-size:10px}
.differences-dialog .difference-viewport{max-height:none}
.differences-dialog .difference-pair.zoomed .difference-viewport{height:clamp(240px,calc(100dvh - 310px),800px);max-height:none}
.differences-dialog .game-message{margin:6px 0;min-height:0}
.difference-instructions{font-size:12px;color:var(--muted);margin:10px 0}
.difference-instructions summary{cursor:pointer;width:fit-content;padding:7px 0}
.difference-instructions .game-help{margin:8px 0}
@media(max-width:700px){
 main:has(>.differences-dialog:not([hidden])){padding:14px 12px 120px}
 .game-page.differences-dialog{column-gap:12px}
 .differences-dialog .game-page-heading h1{font-size:20px}
 .differences-dialog .game-back{font-size:10px;padding:9px}
 .differences-dialog .puzzle-actions select{flex:1 1 44%;width:44%;max-width:100%}
 .differences-dialog .difference-pair{gap:10px}
 .differences-dialog .difference-pair.zoomed .difference-viewport{height:clamp(180px,30dvh,350px)}
}

.game-page.objects-dialog{max-width:1400px}.game-page.objects-dialog #game-content{max-width:none}.objects-dialog .game-page-heading{margin-bottom:14px}.objects-dialog .game-back{margin-bottom:16px}.objects-status{font-size:12px;color:var(--muted);margin-bottom:10px}.objects-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px;align-items:start}.objects-viewport{overflow:auto;border-radius:12px;max-height:calc(100dvh - 260px);overscroll-behavior:auto}.objects-board{position:relative;width:100%;aspect-ratio:4/3;cursor:crosshair;outline-offset:-3px;touch-action:pan-x pan-y}.objects-board>img{display:block;width:100%;height:100%;user-select:none}.objects-viewport.zoomed .objects-board{width:200%}.objects-marks{position:absolute;inset:0;pointer-events:none}.objects-mark{position:absolute;border:3px solid #e9efad;border-radius:14px;box-shadow:0 0 0 2px #345337;background:#a2cb5633}.objects-targets{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.objects-targets h2{font-size:16px;letter-spacing:0;margin-bottom:12px}.objects-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}.objects-list li{display:flex;gap:9px;font-size:12px;line-height:1.5}.objects-list li>span:first-child{color:var(--accent)}.objects-list .found{color:#a0b69b;text-decoration:line-through}.objects-cursor{display:none;position:absolute;transform:translate(-50%,-50%);width:22px;height:22px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 2px #253924;pointer-events:none}.objects-board:focus-visible .objects-cursor{display:block}.objects-dialog .game-message{min-height:24px;margin:8px 0}.objects-card-art{background:linear-gradient(#15271b22,#15271b33),url('images/differences/garden-a.png') center/cover}.objects-card-art span{font:700 84px/1 serif;color:white;text-shadow:0 2px 10px #142b18}
@media(max-width:700px){.objects-layout{grid-template-columns:1fr;gap:12px}.objects-targets{grid-row:1;padding:12px}.objects-list{grid-template-columns:1fr 1fr;gap:6px}.objects-targets h2{font-size:14px}.objects-viewport{max-height:65dvh}.objects-dialog .puzzle-actions{flex-wrap:wrap}.objects-dialog .game-page-heading h1{font-size:25px}}

main:has(>.objects-dialog:not([hidden])){max-width:none;padding:18px 22px 115px}.game-page.objects-dialog{max-width:none;display:grid;grid-template-columns:auto 1fr;gap:12px 20px;align-items:center}.game-page.objects-dialog[hidden]{display:none}.objects-dialog .game-back,.objects-dialog .game-page-heading{margin:0}.objects-dialog .game-back{justify-self:start}.objects-dialog .game-page-heading h1{font-size:25px}.objects-dialog .game-page-heading .eyebrow,.objects-dialog .game-page-heading .quiet,.objects-dialog .game-footnote{display:none}.game-page.objects-dialog #game-content{grid-column:1/-1;width:100%}.objects-viewport{max-height:none}.objects-viewport.zoomed{max-height:calc(100dvh - 280px)}
@media(max-width:700px){main:has(>.objects-dialog:not([hidden])){padding:14px 12px 120px}.game-page.objects-dialog{gap:12px}.objects-dialog .game-page-heading h1{font-size:20px}.objects-dialog .game-back{font-size:10px;padding:9px}.objects-viewport.zoomed{max-height:60dvh}}

.objects-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.objects-list .object-preview{position:relative;display:grid;place-items:center;aspect-ratio:1;min-width:0;padding:7px;background:#eae5d5;border:2px solid transparent;border-radius:10px;overflow:hidden}.object-preview>svg{width:100%;height:100%;display:block;overflow:hidden;stroke:none;fill:none;border-radius:5px}.objects-list .object-preview.found{border-color:#a7bf79;text-decoration:none;background:#c8d4b5}.object-preview.found>svg{opacity:.45}.objects-list .object-preview .object-found-badge{position:absolute;right:4px;bottom:4px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#365337;color:#fff;font-size:17px;font-weight:800;box-shadow:0 1px 4px #0004}
@media(max-width:700px){.objects-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.objects-list .object-preview{padding:3px;border-radius:7px}.objects-list .object-preview .object-found-badge{width:19px;height:19px;font-size:13px;right:1px;bottom:1px}}

.object-preview>img{width:100%;height:100%;object-fit:contain;display:block}.object-preview.found>img{opacity:.45}
