.home-main{padding-top:14px}.hero{min-height:126px;padding:0 0 4px;display:grid;grid-template-columns:1.28fr .72fr;column-gap:44px;row-gap:6px;align-items:end}.hero h1{margin:4px 0 0;font-size:clamp(3.35rem,4.4vw,3.8rem);line-height:.92;letter-spacing:-.062em}.hero h1 em{color:var(--link);font-style:normal;font-weight:900}.hero-copy{max-width:410px;margin:0 0 4px;color:var(--muted);font-size:1rem;line-height:1.45}
.daily-strip{min-height:68px;margin:3px 0 12px;padding:10px 16px;border:1px solid var(--line);border-left:4px solid var(--primary);border-radius:13px;background:var(--panel);display:grid;grid-template-columns:1.18fr 1fr 1fr auto;gap:22px;align-items:center}.daily-strip p{margin-bottom:3px}.daily-strip strong{color:var(--text);font-size:1.03rem;font-weight:850;letter-spacing:-.02em}.daily-strip a{min-height:44px;color:var(--link);display:flex;align-items:center;font-size:.875rem;font-weight:850;white-space:nowrap}.strip-progress{color:var(--text);font-size:.875rem;font-weight:750}.progress-track{height:5px;margin-top:6px;border-radius:6px;background:var(--line);overflow:hidden}.progress-fill{display:block;width:0;height:100%;background:var(--primary)}.reset-time{color:var(--muted);font-size:.75rem}
.section-heading{min-height:39px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:end;gap:24px}.section-heading .eyebrow{margin-bottom:2px}.section-heading h2{margin:0;font-size:1.72rem}.section-heading>p{margin:0;color:var(--muted);font-size:.875rem}
.game-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.game-card{--accent:var(--primary);--accent-ink:var(--on-accent);min-width:0;min-height:375px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:0 14px 34px rgba(0,0,0,.18);overflow:hidden;display:grid;grid-template-rows:180px minmax(145px,auto) 48px}.game-card.tents{--accent:var(--tents);--accent-ink:var(--tents-ink)}.game-card.nonograms{--accent:var(--nono);--accent-ink:var(--nono-ink)}.game-card.bridges{--accent:var(--bridges);--accent-ink:var(--bridges-ink)}
.game-visual{position:relative;overflow:hidden;background:var(--page)}.game-visual img{width:100%;height:100%;object-fit:contain}.game-card-content{min-width:0;padding:12px 17px 9px;display:flex;flex-direction:column}.game-card-content>.card-kicker{margin:0 0 2px;color:var(--accent-ink);font-size:.75rem!important;font-weight:900!important;letter-spacing:.12em;text-transform:uppercase}.game-card h3{margin:0 0 5px;color:var(--text);font-size:1.72rem;letter-spacing:-.045em}.game-card-content>p{margin:0;color:var(--muted);font-size:.875rem;line-height:1.35}.game-tags{margin-top:auto;padding-top:7px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:.75rem}.card-play{min-height:48px;padding:0 17px;background:var(--accent);color:var(--accent-ink);display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:900;text-decoration:none}.card-play:hover{filter:brightness(.94)}.card-play:focus-visible{outline:3px solid var(--on-accent);outline-offset:-5px}.arrow{font-size:1.1rem}
.lower-features{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.feature-panel{min-height:112px;padding:18px 20px;border:1px solid var(--line);border-radius:15px;background:var(--panel);display:flex;gap:16px}.feature-icon{color:var(--link);font-size:.75rem;font-weight:900;letter-spacing:.1em}.feature-panel h3{margin:0 0 6px;color:var(--text)}.feature-panel p{margin-bottom:6px;color:var(--muted);font-size:.875rem}.feature-panel a{color:var(--link);font-size:.875rem;font-weight:850}
.page-intro{max-width:780px;padding:14px 0 24px}.page-intro h1{margin:5px 0 10px;color:var(--text)}.page-intro>p:last-child{max-width:650px;color:var(--muted);font-size:1rem}.archive-controls{padding:17px;border:1px solid var(--line);border-radius:15px;background:var(--panel);display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.field{display:flex;flex-direction:column;gap:6px;color:var(--text);font-size:.875rem;font-weight:800}.field select,.field input{min-height:44px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:9px;background:var(--page);color:var(--text);font-size:.88rem;color-scheme:light}.button{min-height:46px;padding:0 18px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center;font-weight:900;text-decoration:none}.button.secondary{background:var(--panel);color:var(--link);border-color:var(--link)}.archive-controls .button{height:44px}.note{color:var(--muted);font-size:.875rem}#archive-rows{margin-top:12px}.archive-day{padding:16px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:145px 1fr;gap:16px}.archive-day h2{margin:0;color:var(--text);font-size:1.14rem}.archive-puzzles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.archive-puzzles a{min-height:48px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);font-size:.875rem;font-weight:750;text-decoration:none}.archive-puzzles a span{display:block;color:var(--muted);font-size:.75rem;font-weight:500}.archive-puzzles a.completed{border-color:var(--tents-ink);background:var(--tents)}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.guide-card{position:relative;min-height:210px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);text-decoration:none}.guide-card .step-number{color:var(--link);font-size:.75rem;font-weight:900}.guide-card h2{margin:30px 0 9px;color:var(--text);font-size:1.4rem}.guide-card p{color:var(--muted);font-size:.875rem}.guide-card>span:last-child{color:var(--link);font-size:.875rem;font-weight:850}.tip-box{margin-top:24px;padding:21px;border:1px solid var(--line);border-radius:15px;background:var(--panel);color:var(--text)}.tip-box .note{margin:0}.daily-note{display:grid;grid-template-columns:1.1fr 1fr auto;gap:24px;align-items:center}.daily-note h2{margin:0;color:var(--text);font-size:1.32rem}.daily-note>p{margin:0;color:var(--muted);font-size:.875rem}.daily-note .text-link{color:var(--link)}.print-steps{list-style:none;margin:30px 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.print-steps li{padding:18px;border-top:3px solid var(--primary);background:var(--panel);color:var(--text);display:flex;gap:14px}.print-steps li>span{color:var(--link);font-size:.75rem;font-weight:900}.print-steps h2{font-size:1.08rem}
.prose{max-width:820px;padding:34px 38px;border-radius:18px;background:var(--paper);color:var(--paper-ink);font-family:inherit;font-size:1rem;line-height:1.68;box-shadow:var(--shadow)}.prose h2{margin:34px 0 9px;color:var(--paper-ink);font-family:inherit;font-size:1.48rem}.prose h2:first-child{margin-top:0}.prose h3{margin:24px 0 6px;color:var(--paper-ink);font-family:inherit;font-size:1rem;letter-spacing:-.02em}.prose p,.prose li{color:#333C51}.prose li{margin-bottom:10px}.prose .tip-box{border-color:#CFCCC1;background:#EEECE5;color:var(--paper-ink);font-family:inherit;font-size:.9rem}.guide-actions{margin:30px 0;display:flex;gap:22px;align-items:center}.guide-actions>a:not(.button){min-height:44px;color:var(--text);display:flex;align-items:center;font-weight:750}.welcome-line{display:none}

/* Decorative motion is confined to empty page gutters and owned spacing bands. */
.site-header,main,.site-footer,.noscript{position:relative;z-index:1}.site-header{z-index:3}.site-header #main-nav{gap:16px}.motion-toggle{min-width:96px;min-height:44px;padding:0 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--panel);color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:800;white-space:nowrap}.motion-toggle:hover{color:var(--text)}.motion-toggle[hidden]{display:none}
.page-motion{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}.page-motion *,.motion-gap *{pointer-events:none}.motion-rail{position:absolute;top:0;bottom:0;width:calc(max(0px,(100% - 1244px)/2) + 26px);overflow:hidden}.rail-left{left:0}.rail-right{right:0}
.motion-piece{--dx:7px;--dy:-5px;--turn:9deg;--float-duration:15s;--float-delay:-4s;position:absolute;width:18px;height:18px;border-radius:5px;background:var(--primary);opacity:.54;animation:puzzle-drift var(--float-duration) ease-in-out var(--float-delay) infinite alternate;animation-play-state:paused;will-change:transform}.motion-piece.piece-2,.motion-piece.piece-5,.motion-piece.piece-9,.motion-piece.piece-14{border:3px solid var(--nono-ink);border-radius:50%;background:transparent;opacity:.48;--dx:-6px;--dy:8px;--turn:-8deg;--float-duration:18s}.motion-piece.piece-3,.motion-piece.piece-7,.motion-piece.piece-11,.motion-piece.piece-16{border-radius:50%;background:var(--tents);--dx:9px;--dy:6px;--float-duration:17s}.motion-piece.piece-4,.motion-piece.piece-8,.motion-piece.piece-12,.motion-piece.piece-15{border-radius:3px;background:var(--bridges);--base-turn:45deg;--dx:-8px;--dy:-6px;--turn:7deg;--float-duration:20s}.motion-piece.piece-6,.motion-piece.piece-10,.motion-piece.piece-13{background:var(--nono);--dx:5px;--dy:9px;--turn:-10deg;--float-duration:16s}
.motion-rail .piece-1{left:35%;top:5%;width:28px;height:28px}.motion-rail .piece-2{left:22%;top:16%;width:23px;height:23px}.motion-rail .piece-3{left:48%;top:29%;width:16px;height:16px}.motion-rail .piece-4{left:25%;top:42%;width:21px;height:21px}.motion-rail .piece-5{left:46%;top:55%;width:26px;height:26px}.motion-rail .piece-6{left:24%;top:68%;width:14px;height:14px}.motion-rail .piece-7{left:51%;top:80%;width:22px;height:22px}.motion-rail .piece-8{left:29%;top:92%;width:18px;height:18px}.motion-rail .piece-9{left:33%;top:9%;width:25px;height:25px}.motion-rail .piece-10{left:52%;top:21%;width:16px;height:16px}.motion-rail .piece-11{left:26%;top:35%;width:23px;height:23px}.motion-rail .piece-12{left:49%;top:48%;width:19px;height:19px}.motion-rail .piece-13{left:27%;top:61%;width:15px;height:15px}.motion-rail .piece-14{left:45%;top:74%;width:28px;height:28px}.motion-rail .piece-15{left:24%;top:86%;width:20px;height:20px}.motion-rail .piece-16{left:52%;top:96%;width:17px;height:17px}
.motion-gap{position:relative;width:100%;height:28px;overflow:hidden}.motion-gap .motion-piece{width:11px;height:11px;top:8px;--dx:6px;--dy:-3px;--float-duration:19s}.motion-gap .piece-1{left:18%}.motion-gap .piece-2{left:49%;top:6px;width:14px;height:14px;--dx:-5px;--dy:4px;--float-duration:22s}.motion-gap .piece-3{left:80%;top:9px;width:10px;height:10px;--dx:4px;--dy:3px;--float-duration:20s}.motion-gap-mobile{display:none}.motion-gap+.lower-features,.motion-gap+.tip-box{margin-top:0}.motion-gap+.guide-grid{margin-top:0!important}
html[data-motion=on] .motion-piece{animation-play-state:running}html[data-motion-visibility=hidden] .motion-piece{animation-play-state:paused!important}@keyframes puzzle-drift{from{transform:translate3d(0,0,0) rotate(var(--base-turn,0deg))}to{transform:translate3d(var(--dx),var(--dy),0) rotate(calc(var(--base-turn,0deg) + var(--turn)))}}
@media(max-width:1244px) and (min-width:701px){.motion-rail .motion-piece{left:6px;width:12px;height:12px;--dx:4px;--dy:4px}.motion-rail .piece-2,.motion-rail .piece-5,.motion-rail .piece-9,.motion-rail .piece-14{width:14px;height:14px;border-width:2px}.motion-rail .piece-4,.motion-rail .piece-8,.motion-rail .piece-12,.motion-rail .piece-16{display:none}}
@media(max-width:1000px){.menu-toggle{display:block}.site-header #main-nav{display:none;position:absolute;z-index:20;top:72px;left:0;right:0;padding:8px 16px 16px;border-bottom:1px solid var(--line);background:var(--page);flex-direction:column;align-items:stretch;gap:1px}.site-header #main-nav.is-open{display:flex}.site-header #main-nav a,.site-header #main-nav button{justify-content:center}}
@media(max-width:960px){.daily-strip{grid-template-columns:1fr 1fr}.game-cards{gap:11px}.game-card-content{padding-left:13px;padding-right:13px}.daily-note{grid-template-columns:1fr 1fr}.daily-note a{grid-column:2}}
@media(max-width:700px){.page-motion{display:none}.site-header #main-nav{top:60px}.motion-gap-mobile{display:block}.home-main{padding-top:16px}.hero{min-height:0;padding:0 0 8px;display:block}.hero h1{font-size:clamp(2.25rem,10.2vw,2.5rem);line-height:.94}.hero-copy{max-width:350px;margin-top:10px;font-size:.875rem;line-height:1.35}.daily-strip{min-height:94px;margin:0 0 13px;padding:9px 11px;grid-template-columns:1fr 1fr;gap:4px 12px}.daily-strip .eyebrow{display:none}.daily-strip strong{font-size:.9rem}.daily-strip a{min-height:44px;justify-self:end;font-size:.875rem}.reset-time{font-size:.875rem}.section-heading{min-height:0;margin-bottom:8px;display:block}.section-heading h2{font-size:1.55rem}.section-heading>p{margin-top:3px}.game-cards{grid-template-columns:1fr;gap:12px}.game-card{min-height:246px;grid-template-columns:120px minmax(0,1fr);grid-template-rows:minmax(196px,auto) 48px}.game-visual{grid-column:1;grid-row:1}.game-card-content{grid-column:2;grid-row:1;padding:14px 13px 9px}.game-card h3{font-size:1.42rem}.game-card-content>p{font-size:.875rem;line-height:1.3}.game-tags{display:block;font-size:.75rem}.game-tags span{display:block}.card-play{grid-column:1/-1;grid-row:2;padding:0 15px}.lower-features{grid-template-columns:1fr}.page-intro{padding:8px 0 20px}.archive-controls{grid-template-columns:1fr}.archive-day{grid-template-columns:1fr}.archive-puzzles{grid-template-columns:1fr}.guide-grid,.print-steps{grid-template-columns:1fr}.guide-card{min-height:170px}.guide-card h2{margin-top:18px}.daily-note{display:block}.daily-note>p{margin:12px 0}.daily-note a{min-height:44px;display:inline-flex;align-items:center}.prose{padding:24px 20px;border-radius:15px}}
@media(max-width:360px){.game-card{grid-template-columns:112px minmax(0,1fr)}.game-card-content{padding-left:10px;padding-right:10px}.game-card h3{font-size:1.27rem}}
@media(prefers-reduced-motion:reduce){html[data-motion=on][data-motion-explicit=true] .motion-piece{animation-duration:var(--float-duration)!important;animation-iteration-count:infinite!important}}
@media print{.page-motion,.motion-gap,.motion-toggle{display:none!important}.prose,.tip-box,.guide-card{background:#fff!important;color:#000!important;box-shadow:none!important}.prose *,.tip-box *,.guide-card *{color:#000!important}}
