@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#14263b;--muted:#657485;--orange:#e76832;--pale:#f5f6f3;--line:#e1e7e7;--green:#347968;--blue:#3d7698}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fcfcfa;font:15px 'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #eaaf81;outline-offset:3px}.header{max-width:1400px;margin:auto;padding:24px 5%;display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:18px}.brand img{width:133px}.brand span{border-left:1px solid #cdd5d8;padding-left:18px;letter-spacing:1.6px;font-size:10px;font-weight:800;max-width:115px}.header nav{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:13px;font-weight:700}.header nav a{padding:12px 0}.header nav a.active{color:var(--orange);border-bottom:2px solid}.nav-plan{border:0;background:none;color:var(--ink);padding:9px}.nav-plan b{background:#e9ede8;padding:3px 7px;border-radius:6px;margin-left:5px}.edition{font-size:10px;color:var(--muted);border:1px solid var(--line);padding:6px 9px;border-radius:5px;white-space:nowrap}main{max-width:1280px;margin:auto;padding:0 4%}.hero{display:grid;grid-template-columns:1fr 1.12fr;gap:40px;align-items:center;padding:60px 0 50px}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:var(--green);display:flex;gap:9px;align-items:center}.eyebrow:before{content:'';width:20px;height:2px;background:currentColor}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-1px}h1{font-size:49px;line-height:1.16;margin:23px 0;font-weight:800}h1 em{font-style:normal;color:var(--orange)}.lead{font-size:16px;line-height:1.8;color:var(--muted);max-width:470px}.searchbar{display:flex;gap:8px;background:white;border:1px solid #d9dfde;border-radius:10px;padding:7px;margin:28px 0 13px;box-shadow:0 5px 15px #183c4010}.searchbar input{min-width:0;flex:1;border:0;background:none;padding:12px;outline:none}.button{background:var(--ink);color:white;border:0;border-radius:7px;font-weight:700;padding:13px 20px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button.orange{background:var(--orange)}.button.outline{background:white;color:var(--ink);border:1px solid #cad3d8}.micro{font-size:11px;color:var(--muted)}.hero-art{position:relative;border-radius:24px;background:#eef2eb;padding:35px 15px 15px;overflow:hidden;min-height:380px}.hero-art>svg{width:100%;display:block}.art-chip{display:inline-flex;background:white;padding:12px 17px;border-radius:9px;position:absolute;top:24px;left:25px;font-size:12px;font-weight:700;box-shadow:0 6px 20px #193f3410}.art-label{display:flex;align-items:center;justify-content:space-between;background:#ffffffdf;border-radius:12px;padding:16px 20px;margin:0 10px 8px}.art-label strong{display:block;font:800 17px Manrope}.art-label small{font-size:11px;color:var(--muted)}.arrow{font-size:23px;line-height:1}.quick{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.chip{padding:8px 13px;border-radius:30px;background:white;border:1px solid var(--line);font-size:12px;cursor:pointer}.chip:hover,.chip.on{border-color:var(--orange);color:var(--orange);background:#fff5ed}.intro-row{padding:27px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.intro-row article{display:flex;gap:14px;align-items:flex-start}.number{font:800 26px Manrope;color:#bccbc5}.intro-row h3{font-size:14px;margin:0 0 6px}.intro-row p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.section-head{display:flex;align-items:end;justify-content:space-between;margin:42px 0 22px}.section-head h2{font-size:27px;margin:6px 0}.section-head a{font-size:12px;font-weight:700;color:var(--orange)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.game-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;transition:transform .18s,box-shadow .18s}.game-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #16374b10}.thumb{height:202px;background:#f1f4ef;overflow:hidden;position:relative}.thumb svg{width:100%;height:100%}.game-body{padding:20px}.game-body h3{font-size:19px;margin:10px 0}.game-body p{color:var(--muted);font-size:13px;line-height:1.7;min-height:42px;margin:0 0 17px}.card-meta{display:flex;gap:7px;flex-wrap:wrap;color:#5d6b75;font-size:10px}.card-meta span{background:#f2f5f3;border-radius:4px;padding:5px 7px}.tag{font-size:9px;letter-spacing:1.2px;font-weight:800;color:var(--green);text-transform:uppercase}.card-end{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding-top:14px;margin-top:16px;font-size:11px;font-weight:700}.bookmark{border:1px solid var(--line);background:white;border-radius:6px;color:var(--ink);padding:6px 10px}.notice{margin:28px 0;padding:16px 20px;border-left:3px solid var(--orange);background:#faf0e6;color:#785936;font-size:12px;line-height:1.7}.library-title{padding:42px 0 20px}.library-title h1{font-size:38px;margin:12px 0}.library-title p{color:var(--muted);line-height:1.7}.library-layout{display:grid;grid-template-columns:210px 1fr;gap:30px}.filters{border:1px solid var(--line);border-radius:12px;background:#fff;padding:21px;height:max-content;position:sticky;top:20px}.filters h3{font-size:15px;margin:0 0 24px}.filters label{display:block;font-size:11px;font-weight:700;margin:20px 0 7px}.filters select,.filters input{width:100%;padding:10px 9px;border:1px solid #d9dfdd;border-radius:6px;background:white;color:var(--ink);font-size:12px}.filters button{margin-top:24px;font-size:11px;width:100%;border:0;background:#f0f3f0;padding:10px;border-radius:6px}.library-results .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.results-bar{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);padding:0 0 18px}.results-bar b{color:var(--ink)}.empty{padding:70px 20px;text-align:center;background:#f0f3ee;border-radius:12px}.breadcrumbs{display:flex;gap:9px;color:var(--muted);font-size:11px;margin:30px 0}.detail-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.detail-head h1{font-size:36px;margin:12px 0}.detail-head p{color:var(--muted);margin:0 0 20px}.detail-actions{display:flex;gap:8px;flex-wrap:wrap}.detail-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:26px;margin-top:25px}.diagram{background:#eef2ec;border:1px solid var(--line);border-radius:14px;overflow:hidden}.diagram svg{width:100%;display:block}.diagram-caption{padding:16px 22px;background:white;font-size:11px;line-height:1.6;color:var(--muted)}.key-facts{background:var(--ink);color:white;padding:27px;border-radius:13px}.key-facts h3{font-size:17px;margin:0 0 15px}.fact{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #ffffff20;font-size:12px;gap:15px}.fact span{color:#b7c6d2}.fact b{text-align:right}.materials{margin-top:25px;font-size:12px;line-height:1.9;color:#dbe5e8}.materials h4{color:#fff;margin:0 0 8px}.detail-text{display:grid;grid-template-columns:1.7fr 1fr;gap:36px;padding:30px 0}.steps{list-style:none;padding:0;counter-reset:step}.steps li{counter-increment:step;position:relative;padding:0 0 25px 48px;line-height:1.8;font-size:13px;color:var(--muted)}.steps li:before{content:counter(step);position:absolute;left:0;top:2px;width:29px;height:29px;border-radius:7px;background:#e8efeb;color:var(--green);font-weight:800;text-align:center;line-height:29px}.steps li strong{display:block;color:var(--ink);font-size:14px;margin-bottom:3px}.note-box{padding:21px;background:#edf3ee;border-radius:10px;font-size:13px;line-height:1.8;margin-bottom:18px}.note-box h3{font-size:15px;margin:0 0 10px}.note-box.safety{background:#fbf0e5}.note-box p{margin:0}.bottom-cta{background:#e7efeb;border-radius:15px;margin:45px 0;padding:34px;display:flex;justify-content:space-between;align-items:center;gap:20px}.bottom-cta h2{font-size:23px;margin:0 0 8px}.bottom-cta p{font-size:13px;color:var(--muted);margin:0}footer{max-width:1280px;padding:28px 4%;margin:50px auto 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:25px;color:var(--muted);font-size:11px}footer img{width:95px}footer span{margin-left:auto}dialog{width:min(650px,92%);border:1px solid var(--line);border-radius:15px;padding:30px;color:var(--ink)}dialog::backdrop{background:#10253780}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0}.dialog-head button{font-size:27px;border:0;background:none}dialog>p{font-size:12px;line-height:1.7;color:var(--muted)}.plan-item{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--line)}.plan-item small{display:block;color:var(--muted);margin-top:6px}.plan-item button{border:0;background:none;color:var(--orange);font-size:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;font-size:12px;padding:14px 25px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:20}#toast.show{opacity:1}
@media(max-width:900px){.header{gap:15px;padding:20px 4%}.header nav{gap:16px}.brand span,.edition{display:none}.hero{gap:20px}.hero h1{font-size:39px}.hero-art{min-height:300px;padding-top:35px}.grid{gap:15px}.thumb{height:170px}.game-body{padding:16px}.library-layout{grid-template-columns:180px 1fr;gap:20px}.detail-layout,.detail-text{grid-template-columns:1.5fr 1fr}.intro-row{gap:20px}}@media(max-width:650px){.header{flex-wrap:wrap;gap:12px;padding:15px 5%}.brand img{width:116px}.header nav{gap:12px;font-size:11px}.nav-plan{font-size:11px;padding:5px}.hero{grid-template-columns:1fr;padding:35px 0 25px;gap:25px}.hero h1{font-size:40px;max-width:450px}.hero-art{min-height:0;padding:28px 10px 10px}.art-chip{top:14px;font-size:10px}.intro-row{grid-template-columns:1fr;padding:22px 0;gap:18px}.section-head h2{font-size:24px}.grid,.library-results .grid{grid-template-columns:1fr}.thumb{height:220px}.library-title{padding-top:27px}.library-title h1{font-size:32px}.library-layout{display:block}.filters{position:static;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;margin-bottom:22px}.filters h3{grid-column:1/-1;margin:0}.filters label{margin:0 0 5px}.filters button{margin-top:0;align-self:end;grid-column:1/-1}.filters .filter-search{grid-column:1/-1}.detail-head{display:block}.detail-head h1{font-size:30px}.detail-layout,.detail-text{grid-template-columns:1fr;gap:20px}.key-facts{padding:24px}.detail-actions .button{font-size:11px}.bottom-cta{padding:24px;display:block}.bottom-cta .button{margin-top:20px}footer{align-items:start;flex-wrap:wrap;gap:15px}footer p{margin:0;width:65%;line-height:1.7}footer span{margin-left:0}.results-bar{font-size:11px}.searchbar .button{padding:12px}main{padding:0 5%}}
@media print{.header,footer,.breadcrumbs,.detail-actions,.bottom-cta,#toast,.notice,.nav-plan{display:none!important}body{background:white;font-size:11px}main{padding:0;max-width:none}.detail-layout{grid-template-columns:1.7fr 1fr}.diagram{break-inside:avoid}.detail-text{grid-template-columns:1.7fr 1fr}.steps li,.note-box{break-inside:avoid}.key-facts{-webkit-print-color-adjust:exact;print-color-adjust:exact}.dialog-head button,#printPlan,.plan-item button{display:none}body.print-plan main,body.print-plan footer{display:none}body.print-plan dialog:not(#planDialog){display:none!important}body.print-plan #planDialog[open]{position:static;display:block;border:0;width:100%;max-width:none;max-height:none;overflow:visible}body.print-plan #planDialog::backdrop{background:none}}
.scene{position:relative;width:100%;height:100%;min-height:220px;overflow:hidden;background:#eef3ef}.scene>img.game-art{display:block;width:100%;height:100%;object-fit:contain}.scene .scene-logo{position:absolute;right:2.4%;bottom:2.5%;width:17%;max-width:104px;height:auto;object-fit:contain}.hero-art .scene{height:370px}.diagram .scene{min-height:380px}.locked-scene{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#e7ede8,#e3eaf0);min-height:220px;gap:10px}.locked-scene strong{font-size:34px;color:#7a9189}.locked-badge{display:inline-block;background:#f2e8dc;color:#705135;border-radius:6px;padding:4px 8px;font-size:11px}.source-box{background:#f1f5f2;border:1px solid #dce6df;border-radius:12px;padding:20px;line-height:1.8;margin:25px 0}.source-box a{text-decoration:underline}.membership-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.membership-options article{border:1px solid #dce4e1;border-radius:14px;padding:20px}.membership-options h3{margin-top:0}.membership-gate{text-align:center;padding:70px 20px;max-width:700px;margin:auto}.membership-gate h1{font-size:38px}.membership-gate p{line-height:1.8;color:var(--muted)}.uncertain{font-size:11px;color:#6a7888}.preview-note{background:#f5eade;padding:10px 15px;border-radius:8px;margin-top:12px;font-size:12px;line-height:1.6}@media(max-width:600px){.membership-options{grid-template-columns:1fr}.scene .scene-logo{width:21%;max-width:85px}.hero-art .scene{height:260px}.diagram .scene{min-height:220px}.membership-gate h1{font-size:29px}}
.thumb .scene{min-height:0;height:100%;background:#fff}.diagram .scene{min-height:0;height:auto;aspect-ratio:3/2}.diagram .scene>img.game-art{width:100%;height:auto}.scene-logo{pointer-events:none}.thumb .locked-scene{min-height:0;height:100%}

/* Public card derivatives are contained on white; full artwork stays protected. */
.card-membership-badge{position:absolute;top:10px;right:10px;z-index:1;display:inline-flex;align-items:center;gap:5px;padding:7px 10px;background:#14263b;color:#fff;box-shadow:0 2px 8px #14263b1a;font-size:11px;font-weight:700;line-height:1.2;letter-spacing:0;pointer-events:none}
.thumb .card-preview{padding-top:27px}
.thumb .card-preview-placeholder{background:#fff;color:var(--muted);font-size:12px;padding:35px 12px 15px;text-align:center}
.membership-gate-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.gate-account-link{text-decoration:underline;text-underline-offset:3px}

.card-membership-badge.is-open{background:#276757;color:#fff}

/* Keep visitor/account navigation visible on mobile as well as desktop. */
.header .auth-nav{display:flex;align-items:center;gap:8px;flex-shrink:0;font-size:12px;font-weight:700}
.header .auth-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 13px;border:1px solid var(--line);border-radius:7px;white-space:nowrap}
.header .auth-nav a[hidden]{display:none}
.header .auth-nav .auth-register{background:var(--ink);border-color:var(--ink);color:#fff}
@media(max-width:1050px){.header{flex-wrap:wrap;gap:14px}.header .auth-nav{margin-left:auto}.header>nav{order:3;width:100%;margin-left:0;justify-content:flex-start;flex-wrap:wrap;gap:20px}}
@media(max-width:400px){.header .auth-nav{gap:6px;font-size:11px}.header .auth-nav a{padding:9px}.header>nav{gap:12px}}

/* Oyun library: three cards on desktop, two on medium screens, one on phones. */
@media(min-width:651px) and (max-width:1050px){.library-results .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Preserve the approved wordmark proportions in every shared placement. */
.brand img,footer img{height:auto;object-fit:contain}
.auth-nav #accountNav{display:block;padding:0;border:0;background:transparent;max-width:240px}.auth-nav #accountNav[hidden]{display:none!important}.auth-nav #profileName{font-weight:800;overflow-wrap:anywhere}.auth-nav #profileRole{font-size:10px;color:#526d64}.auth-nav #sessionStatus{font-size:10px;color:#657485;max-width:130px}@media(max-width:600px){.auth-nav #accountNav{max-width:220px;font-size:11px}}

/* Nine games per page; the existing responsive card columns stay unchanged. */
#libraryHeading{scroll-margin-top:24px}#libraryHeading:focus-visible{outline:2px solid var(--green);outline-offset:6px;border-radius:4px}
.result-range{text-align:center;color:var(--muted);font-size:12px;line-height:1.6;margin:24px 0 12px}
.library-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.library-pagination[hidden]{display:none}
.pagination-pages{display:flex;justify-content:center;align-items:center;gap:4px;flex-wrap:wrap}
.library-pagination button{min-width:44px;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
.library-pagination button:hover:not(:disabled){border-color:var(--green);background:#eef4ef}.library-pagination button[aria-current="page"]{background:var(--green);border-color:var(--green);color:#fff;font-weight:800}.library-pagination button[aria-current="page"]:hover{background:var(--green)}
.library-pagination button:focus-visible{outline:3px solid var(--green);outline-offset:3px}.library-pagination button:disabled{color:#67736f;background:#f1f3f1;cursor:default}.pagination-gap{padding:0 5px;color:var(--muted)}
@media(max-width:650px){.library-pagination{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pagination-pages{grid-column:1/-1;grid-row:1}.library-pagination button{min-width:36px;padding:9px 10px}.library-pagination>.pagination-direction{justify-self:start}.library-pagination>.pagination-direction:last-child{justify-self:end}.result-range{font-size:11px}}
@media print{.library-pagination,.result-range{display:none!important}}

/* Wrap the complete core menu instead of hiding entries on narrower screens. */
.header{flex-wrap:wrap}.header nav{flex-wrap:wrap;gap:8px 20px;min-width:0}.header nav>a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.header nav>a[aria-current=page]{color:var(--orange);border-bottom:2px solid}.header .auth-nav{flex-wrap:wrap}
@media(max-width:1100px){.header nav{width:100%;margin-left:0;justify-content:flex-start}}
@media(max-width:600px){.header nav{gap:4px 14px;font-size:12px}}


/* Game builder only. Daily-plan and exercise print surfaces are independent. */
#planDialog{width:min(900px,calc(100vw - 32px))}
.plan-game{padding:12px 0 24px;border-bottom:1px solid #d7e1dd;line-height:1.6}
.plan-game .plan-item{margin-bottom:12px}.plan-game .plan-item h2{font-size:20px;margin:0}.plan-game .plan-item a{font-size:inherit;font-weight:700}
.plan-brand{display:block;font-size:11px;font-weight:700;color:#347968;margin-bottom:4px}
.plan-art{max-width:680px;margin:16px auto}.plan-art .scene{aspect-ratio:auto}.plan-art .game-art{width:100%;height:auto;object-fit:contain}
.plan-steps{padding-left:24px}.plan-steps li{margin:10px 0}.plan-game h3{margin:18px 0 8px}
.plan-page-footer{display:block;padding:12px 0 0;font-size:11px;border:0}
/* This named page does not change /daily-plans or individual-game printing. */
@page game-plan{size:A4 portrait;margin:8mm}
/* The same rules measure natural content before opening the print dialog. */
body.plan-print-layout #planItems,body.print-plan #planItems{width:194mm;margin:0;padding:0}
:is(body.plan-print-layout,body.print-plan) .plan-game{page:game-plan;position:relative;box-sizing:border-box;width:194mm;height:280mm;margin:0;padding:0 0 8mm;border:0;break-inside:avoid-page;break-after:page;font:10pt/1.25 Arial,sans-serif;color:#14263b;overflow:visible}
:is(body.plan-print-layout,body.print-plan) .plan-game:last-child{break-after:auto}
:is(body.plan-print-layout,body.print-plan) .plan-page-content{display:flow-root}
:is(body.plan-print-layout,body.print-plan) .plan-item{display:block;margin:0 0 2mm;padding:0 0 2mm;border:0;border-bottom:1px solid #d7e1dd}
:is(body.plan-print-layout,body.print-plan) .plan-game .plan-item h2{font:700 17pt/1.15 Arial,sans-serif;margin:0}
:is(body.plan-print-layout,body.print-plan) .plan-game .plan-item a{text-decoration:none;color:inherit}
:is(body.plan-print-layout,body.print-plan) .plan-brand{font-size:8pt;margin:0 0 1mm}
:is(body.plan-print-layout,body.print-plan) .plan-item small{font-size:8pt;margin-top:1mm}
:is(body.plan-print-layout,body.print-plan) .plan-item button{display:none}
:is(body.plan-print-layout,body.print-plan) .plan-game p{margin:0 0 2mm;font-size:inherit;line-height:inherit;overflow-wrap:anywhere;break-inside:avoid}
:is(body.plan-print-layout,body.print-plan) .plan-art{width:100%;height:62mm;max-width:none;margin:2mm 0 3mm;break-inside:avoid}
:is(body.plan-print-layout,body.print-plan) .plan-art .scene{width:100%;height:62mm;min-height:0;aspect-ratio:auto;background:white;overflow:visible}
:is(body.plan-print-layout,body.print-plan) .plan-art .game-art{display:block;width:100%;height:62mm;max-height:none;object-fit:contain}
:is(body.plan-print-layout,body.print-plan) .plan-art .scene-logo{display:none}
:is(body.plan-print-layout,body.print-plan) .plan-page-body{column-count:2;column-gap:6mm;column-fill:balance}
:is(body.plan-print-layout,body.print-plan) .plan-instructions{display:block;margin-top:2mm}
:is(body.plan-print-layout,body.print-plan) .plan-instructions aside{border:0;padding:0;margin-top:2mm}
:is(body.plan-print-layout,body.print-plan) .plan-game h3{font-size:11pt;line-height:1.2;margin:0 0 2mm}
:is(body.plan-print-layout,body.print-plan) .plan-steps{margin:0;padding-left:5mm}
:is(body.plan-print-layout,body.print-plan) .plan-steps li{margin:0 0 2mm;overflow-wrap:anywhere;break-inside:avoid}
:is(body.plan-print-layout,body.print-plan) .plan-page-footer{position:absolute;bottom:0;left:0;right:0;display:block!important;margin:0;padding:2mm 0 0;border:0;border-top:1px solid #d7e1dd;font:8pt/1.2 Arial,sans-serif;color:#657485}
/* Long games retain a 10pt reading size; only spacing and illustration height tighten. */
:is(body.plan-print-layout,body.print-plan) .plan-game.plan-compact{line-height:1.15}
:is(body.plan-print-layout,body.print-plan) .plan-compact .plan-art{height:48mm;margin:2mm 0 3mm}
:is(body.plan-print-layout,body.print-plan) .plan-compact .plan-art .scene,:is(body.plan-print-layout,body.print-plan) .plan-compact .plan-art .game-art{height:48mm}
:is(body.plan-print-layout,body.print-plan) .plan-compact p,:is(body.plan-print-layout,body.print-plan) .plan-compact .plan-steps li{margin-bottom:1mm}
:is(body.plan-print-layout,body.print-plan) .plan-compact .plan-instructions{margin-top:1mm}
:is(body.plan-print-layout,body.print-plan) .plan-compact h3{margin-bottom:1mm;break-after:avoid}
@media print{
 body.print-plan{margin:0;padding:0;background:white}
 body.print-plan #planDialog[open]{position:static;inset:auto;width:194mm;max-width:none;min-width:0;height:auto;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow:visible;box-shadow:none}
 body.print-plan #planDialog>.dialog-head,body.print-plan #planDialog>p,body.print-plan #printPlan{display:none!important}
 body.print-plan #planItems{display:block}
 body.print-plan .plan-game{break-before:auto}
 body.print-plan #planDialog::backdrop{display:none}
}

/* Daily featured game: one linked card, flush folder tab and shared artwork/label edges. */
.hero-art{padding:36px 15px 15px;min-height:0;overflow:visible}
.hero-game{display:block;position:relative;width:100%;font-family:'DM Sans',Arial,sans-serif}
.hero-folder-tab{position:absolute;left:0;bottom:100%;width:42%;height:16px;background:#fff;border-radius:14px 20px 0 0}
.hero-game .scene{height:auto;min-height:0;aspect-ratio:3/2;background:#fff;border-radius:0 14px 0 0}
.hero-game .scene>img.game-art{width:100%;height:100%;object-fit:contain}
.hero-game .art-label{width:100%;margin:0;padding:18px 20px;background:#e3ece5;border-radius:0 0 14px 14px;gap:16px;font-family:inherit}
.hero-game .art-label strong{font-family:inherit;font-size:17px;font-weight:700;line-height:1.4}
.hero-game .art-label small{display:block;font-family:inherit;text-transform:uppercase;font-size:10px;line-height:1.5;letter-spacing:.25px;margin-bottom:3px}
.hero-game .art-label>div{min-width:0;overflow-wrap:anywhere}
.hero-game .arrow{flex-shrink:0}
.hero-game:focus-visible{border-radius:0 14px 14px 14px;outline-offset:5px}
.hero-game-empty{padding:40px 20px;background:#fff;border-radius:14px}
@media(max-width:650px){.hero-art{padding:30px 10px 10px}.hero-folder-tab{height:14px}.hero-game .art-label{padding:16px}.hero-game .art-label strong{font-size:16px}}

/* Home exercise cards reuse the existing game-card layout. */
.home-exercise-art{display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-size:12px;padding:0}.home-exercise-art>img{width:100%;height:100%;object-fit:contain}.home-exercise-placeholder{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px}.home-exercise-placeholder>span{font-size:32px;color:var(--green)}.home-exercise-placeholder strong{color:var(--ink)}.home-exercise-placeholder small{font-size:11px;line-height:1.6}.home-exercises .section-head{gap:18px}.home-exercises .section-head>a{flex-shrink:0}@media(max-width:420px){.home-exercises .section-head{align-items:flex-start;flex-direction:column;gap:8px}}

/* Home blog cards share the existing responsive card grid and public editorial art. */
.home-blog-art{display:block;padding:0;background:#fff}.home-blog-art>img{display:block;width:100%;height:100%;object-fit:cover}.home-blog-card .card-meta{flex-wrap:wrap}.home-blog-card time{font:inherit;color:inherit}.home-blog .section-head{gap:18px}

/* Spor.ONE product promotions use only published same-origin covers. */
.home-products-note{font-size:13px;line-height:1.7;color:var(--muted);margin:-10px 0 24px}.home-products-message{padding:24px;border:1px solid var(--line);border-radius:12px;color:var(--muted);line-height:1.7}.home-product-art{display:flex;align-items:center;justify-content:center;padding:0;background:#fff}.home-product-art>img{display:block;width:100%;height:100%;object-fit:contain}.product-image-fallback{padding:20px;font-size:12px;color:var(--muted);text-align:center}.home-products .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-product-card .game-body{min-width:0}.home-product-card h3,.home-product-card p{overflow-wrap:anywhere}@media(max-width:850px){.home-products .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.home-products .grid{grid-template-columns:1fr}}
