/* The shared Sunday Puzzles shell: clear navigation, generous controls and a daily home. */
:root{--paper:#faf8f1;--white:#fffef9;--ink:#263c2e;--muted:#657260;--green:#30593e;--line:#dfe4d5}
html{scroll-behavior:smooth;scroll-padding-top:100px}.site-header{position:sticky;top:0;z-index:40;background:#faf8f1f2;backdrop-filter:blur(14px);border-bottom:1px solid #dfe4d5}.admin-bar .site-header{top:32px}.header-inner{height:82px;gap:24px}#main-nav{gap:6px}#main-nav a{padding:9px 13px;border-radius:24px;font-size:12px;font-weight:600;transition:background .15s ease}#main-nav a:hover,#main-nav a[aria-current=page]{background:#e9eedf;color:#30593e;text-decoration:none}.button{border-radius:25px;min-height:46px}.icon-button{background:#fffef960;border-color:#d9e0d0}.theme-card{border-radius:19px;background:#fffef9;box-shadow:0 3px 0 #26382d04}.theme-card:hover{box-shadow:0 12px 28px #26382d10}.category-badge{border-radius:20px;background:#fffef5e8;padding:5px 10px}.card-image{height:190px}.card-body{padding:23px}.card-body h3{font-size:27px}.card-bottom{border-top:1px solid #edf0e5;padding-top:12px}.page-intro{padding-top:38px}.page-intro h1{font-size:clamp(38px,4vw,58px)}.game-panel,.pack-play,.arcade-play{border-radius:22px;box-shadow:0 8px 28px #243c2a06;border-color:#d8dfcd}.game-toolbar{border-color:#e4e8db}.word-panel{border-radius:17px}.game-note{border-radius:13px}.utility-actions button{border-radius:12px;min-height:45px}.segmented,.arcade-mode{border-radius:13px;padding:4px}.segmented button,.arcade-mode button{border-radius:10px;min-height:36px}.game-status{background:#f1f5e9;padding:11px 13px;border-radius:11px;line-height:1.5}.word-grid button{border-radius:7px}.game-bottom{padding-top:16px}.prose{line-height:1.85}.prose p,.prose li{color:#53634f}.site-footer{background:#f1f3e8;margin-top:48px}.footer-links{flex-wrap:wrap;max-width:650px;gap:18px 24px}.site-footer .footer-bottom{border-color:#dbe2ce}.pack-play button,.arcade-play button{transition:background .15s ease,box-shadow .15s ease}.pack-play button:hover:not(:disabled){box-shadow:0 2px 4px #2348280d}.pack-status{border:1px solid #e2e9d7}.pack-modes button{border-radius:20px;padding:9px 16px}.pack-intro{padding-top:26px}.pack-intro h1{letter-spacing:-1.8px;margin-bottom:17px}.pack-intro p{line-height:1.7}.pack-feature{display:inline-block;font-size:12px!important;padding:8px 12px;border:1px solid #dce5cf;border-radius:11px;background:#f0f4e6}.pack-aside>div:first-child{background:#eef2e6;border-radius:18px;padding:24px}.pack-aside li{font-size:13px;line-height:1.7}.pack-aside h2{font-size:27px}.pack-next{padding:18px 22px;background:#f2efdf;border:0;border-radius:15px}.pack-next a{font-size:13px;text-decoration:none;padding:4px 0}.pack-next a:hover{text-decoration:underline}.arcade-card{position:relative}.arcade-card[data-game=chess]{--card-bg:#f1d28a;--card-ink:#70511b}.game-favorite{position:absolute;top:8px;right:8px;z-index:4;border:1px solid #ffffff66;border-radius:50%;background:#fffef9c9;color:#48603a;width:36px;height:36px;display:grid;place-items:center;padding:0;font-size:23px;line-height:1}.game-favorite[aria-pressed=true]{background:#36553b;color:#ffe19a;border-color:#36553b}.game-favorite:hover{background:#fffef9}.game-favorite[aria-pressed=true]:hover{background:#26472e}.game-card-state{font-size:10px;font-weight:600;color:#3b6c44;margin-top:12px}.game-card-state[hidden]{display:none}.play-dashboard{padding:27px 30px 22px;border:1px solid #dce3cf;border-radius:23px;background:#fffef9;margin:26px 0 8px;box-shadow:0 5px 18px #29452d04}.play-dashboard-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.play-dashboard-heading .eyebrow{font-size:9px;letter-spacing:1.4px}.play-dashboard-heading h2{font-size:30px;letter-spacing:-.8px;margin:9px 0}.play-dashboard-heading p{font-size:11px;color:#6d7b61;margin:0}.play-all-link{font-size:11px;font-weight:600;white-space:nowrap;text-decoration:none;border:1px solid #d8e1ca;border-radius:24px;padding:10px 14px}.play-metrics{display:grid;grid-template-columns:.8fr .8fr 1.2fr 1.2fr;border-block:1px solid #e5eadc;margin:22px 0;padding:20px 0;gap:20px}.play-metrics>div{display:grid;gap:4px;align-content:start;border-right:1px solid #e6eadf}.play-metrics>div:last-child{border-right:0}.play-metrics>div>b{font:36px/1 var(--serif);color:#36583b}.play-metrics>div>span{font-size:10px;color:#6c7d61}.play-week>div{display:flex;gap:7px;justify-content:space-between;margin:1px 0}.play-week>div>span{display:grid;gap:8px;text-align:center;font-size:10px;color:#8c9781}.play-week i{font-size:9px;font-style:normal}.play-week b{font-size:12px;line-height:1;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#eef2e5}.play-week .is-played b{background:#3e7047;color:#fff8e2}.play-resume{padding:16px 20px;background:#ecf2e2;border:1px solid #dce7cb;border-radius:13px;display:flex;align-items:center;gap:14px;margin-bottom:23px}.play-resume-icon{font-size:26px;color:#43613d}.play-resume>div{display:grid;gap:5px}.play-resume b{font-size:12px}.play-resume>div>span{font-size:11px;color:#66775b}.play-resume>a{font-size:11px;font-weight:650;margin-left:auto;white-space:nowrap}.play-daily-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 14px}.play-daily-heading h3{font:22px/1.2 var(--serif);margin:0}.play-daily-heading button{border:0;background:transparent;color:#4a6740;font-size:11px;min-height:36px;padding:5px;text-decoration:underline;text-underline-offset:4px}.play-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.play-pick{display:flex;gap:12px;align-items:center;padding:9px 13px 9px 5px;border:1px solid #dfe6d3;border-radius:13px;text-decoration:none;background:#fbfcf5;min-width:0;transition:border-color .15s,background .15s}.play-pick:hover{background:#f0f5e6;border-color:#a8bf91}.play-pick img{width:66px;height:50px;object-fit:contain;background:#e5edda;border-radius:8px;flex-shrink:0}.play-pick>span{display:grid;gap:5px}.play-pick b{font-size:12px;line-height:1.3}.play-pick small{font-size:9px;color:#70815e}.play-pick>i{font-style:normal;font-size:17px;margin-left:auto;color:#5c784b}.play-dashboard-note{font-size:9px;line-height:1.6;color:#718164;margin:17px 0 0}.play-progress{margin-bottom:28px}.mobile-play-dock{display:none}.home-play-hero{margin:27px 0 0}.home-play-hero .hub-intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:35px;padding:45px 48px 35px;max-width:none;background:#ecefdf;border-radius:28px;border:1px solid #dce2cd;overflow:hidden}.home-play-hero .hub-intro h1{font-size:clamp(42px,5vw,65px)}.home-play-hero .hub-intro p{max-width:460px}.arcade-promo{padding-top:32px;padding-bottom:28px}.arcade-promo>p{color:#65775b;font-size:14px}.arcade-promo .arcade-grid{margin-top:24px}.arcade-promo h2{margin:10px 0 12px}.arcade-promo .eyebrow{font-size:10px}.mobile-play-dock a:focus-visible{outline-offset:-4px}.play-game-breadcrumb{font-size:11px}
@media(min-width:1101px){[data-spp-pack-hub] .arcade-grid[data-count="4"] .arcade-card-bottom{display:block}[data-spp-pack-hub] .arcade-grid[data-count="4"] .arcade-card-mode{display:block;max-width:none;margin:0 0 12px}[data-spp-pack-hub] .arcade-grid[data-count="4"] .arcade-card-cta{display:flex;justify-content:space-between;width:100%}}
@media(max-width:1000px){.header-inner{gap:18px}#main-nav{gap:2px}#main-nav a{padding:8px 9px;font-size:11px}.play-pick{gap:8px;padding-right:10px}.play-pick img{width:51px;height:45px}.play-pick b{font-size:11px}.home-play-hero .hub-intro{padding:35px;gap:15px}.play-metrics{gap:14px}.play-week>div{gap:4px}.play-week b{width:18px;height:18px}}
@media(max-width:800px){.play-picks{grid-template-columns:1fr}.play-pick img{width:65px;height:46px}.play-pick b{font-size:12px}.play-pick small{font-size:10px}.play-pick{gap:14px}.play-metrics{grid-template-columns:repeat(2,1fr);gap:19px}.play-metrics>div:nth-child(2){border-right:0}.play-week>div{max-width:200px;gap:8px}.play-resume{flex-wrap:wrap}.play-resume>a{margin-left:40px}.home-play-hero .hub-intro{grid-template-columns:1fr 200px;gap:0}.play-dashboard-heading h2{font-size:27px}.game-favorite{width:36px;height:36px}}
@media(max-width:760px){.header-inner{height:76px}#main-nav{background:#faf8f1;border:1px solid #dce4d1;box-shadow:0 15px 22px #30452c14;border-radius:0 0 17px 17px}#main-nav a{display:block;font-size:13px;padding:12px 17px}.pack-aside>div:first-child{padding:22px}.footer-main{gap:25px}.footer-links{gap:15px 22px}}
@media(max-width:600px){html{scroll-padding-top:85px}body{padding-bottom:70px}.admin-bar .site-header{top:46px}.header-inner{height:70px;gap:12px}.header-inner .brand{max-width:170px}.spp-logo{width:170px}.header-actions{gap:7px}.icon-button{width:36px;height:36px}.site-footer{padding-bottom:28px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mobile-play-dock{position:fixed;bottom:0;left:0;right:0;z-index:60;display:grid;grid-template-columns:repeat(3,1fr);background:#fffef9f5;border-top:1px solid #dbe2d0;padding:6px 10px calc(7px + env(safe-area-inset-bottom));backdrop-filter:blur(15px);box-shadow:0 -4px 15px #29452d05}.mobile-play-dock a{display:grid;place-items:center;gap:3px;text-decoration:none;font-size:9px;color:#728165;padding:4px 0;border-radius:11px;min-height:43px}.mobile-play-dock svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-play-dock a[aria-current=page]{color:#315c3d;background:#edf3e4;font-weight:650}.play-dashboard{padding:22px 20px;border-radius:20px;margin-top:20px}.play-dashboard-heading{align-items:start;gap:12px;display:block}.play-dashboard-heading h2{font-size:29px;max-width:260px;margin:9px 0}.play-dashboard-heading .play-all-link{display:inline-block;padding:0;border:0;font-size:10px;margin-top:13px}.play-metrics{margin-top:18px;padding:17px 0;gap:19px}.play-metrics>div>b{font-size:32px}.play-metrics>div>span{font-size:9px}.play-metrics>div:nth-child(3){border-right:1px solid #e6eadf}.play-week>div{gap:4px;max-width:160px}.play-week i{font-size:8px}.play-week b{width:16px;height:16px;font-size:10px}.play-resume{padding:14px;gap:10px}.play-resume>div{max-width:calc(100% - 40px)}.play-resume>div>span{font-size:10px;line-height:1.6}.play-resume>a{margin-left:34px;font-size:11px}.play-daily-heading h3{font-size:22px}.play-daily-heading button{font-size:10px}.play-picks{gap:9px}.play-pick{padding:7px 11px 7px 6px}.play-dashboard-note{font-size:9px;line-height:1.7}.game-favorite{width:32px;height:32px;font-size:21px;right:6px;top:6px}.game-card-state{font-size:9px;line-height:1.4}.home-play-hero{margin-top:16px}.home-play-hero .hub-intro{display:block;padding:28px 25px 25px;border-radius:22px}.home-play-hero .hub-intro h1{font-size:43px;letter-spacing:-1.5px}.home-play-hero .hub-art{display:none}.home-play-hero .pack-summary{gap:11px;font-size:9px}.arcade-promo{padding-top:24px}.arcade-promo h2{font-size:32px}.arcade-promo>p{font-size:13px;line-height:1.6}.arcade-promo .arcade-card-copy{padding:17px 13px}.arcade-promo .arcade-grid{gap:12px}.theme-grid{gap:13px}.card-image{height:145px}.card-body{padding:16px 14px}.card-body h3{font-size:24px}.game-panel,.pack-play,.arcade-play{border-radius:17px}.pack-intro h1{font-size:43px;letter-spacing:-1.5px}.pack-feature{font-size:11px!important}.game-status{font-size:11px;padding:10px}.game-collection{scroll-margin-top:85px}.game-favorite{min-height:32px}.play-progress{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.mobile-play-dock,.play-dashboard,.game-favorite{display:none!important}body{padding-bottom:0}}
.play-favourites{padding:26px 0 8px}.play-favourites .play-daily-heading>span{font-size:11px;color:#718164}.play-search-dialog{width:560px;max-width:calc(100% - 30px);padding:30px;border-radius:23px;background:#fffef9}.play-search-dialog h2{font-size:34px;margin:14px 0 22px}.play-search-dialog label{font-size:11px;font-weight:650}.play-search-dialog input{margin:8px 0 17px;border-radius:12px;min-height:48px;font-size:14px;background:#f8faf2}.play-search-results{display:grid;gap:7px;max-height:43vh;overflow:auto}.play-search-results>a{display:flex;align-items:center;gap:12px;border:1px solid #e4e9da;border-radius:10px;padding:7px 12px;text-decoration:none;font-size:13px}.play-search-results>a:hover{background:#edf3e4}.play-search-results img{background:#e8eedd;border-radius:6px;object-fit:contain}.play-search-results b{margin-left:auto}.play-search-results p{font-size:13px;color:#718164}.play-search-themes{display:block;font-size:11px;font-weight:600;margin-top:21px}.play-search-dialog .dialog-close{font-size:24px;min-height:40px;min-width:40px}.play-search-dialog .eyebrow{font-size:9px;letter-spacing:1.3px}
.breadcrumb{margin:18px 0}.pack-intro{padding:10px 0 6px}.pack-intro h1{font-size:clamp(38px,4vw,53px);margin:11px 0 14px}.pack-intro p{margin-bottom:11px}.pack-intro .pack-feature{margin-bottom:4px}.chess-game{margin-top:17px}.chess-status-box p{min-height:0}.chess-status-box{padding:23px}.play-favourites .play-picks{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:800px){.play-favourites .play-picks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.pack-intro h1{font-size:39px}.pack-intro{padding-top:5px}.pack-intro p{font-size:13px}.pack-intro .pack-feature{font-size:10px!important}.chess-game{margin-top:14px}.play-favourites .play-picks{grid-template-columns:1fr}.play-favourites .play-daily-heading{display:block}.play-favourites .play-daily-heading>span{display:block;margin-top:8px}.chess-status-box{padding:19px}}
