:root{--ink:#2b2b2b;--paper:#fff8ee;--line:#ded4c8;--blue:#5eccde;--green:#6ecb92;--coral:#ff7075;--yellow:#f7ca6b;--lavender:#8791de;--action-lilac:#e2def8;--white:#fff;--font:Outfit,system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.5 var(--font)}
button,input,select,textarea{font:inherit;color:inherit}
button,select{cursor:pointer}
a{color:inherit;text-underline-offset:.22em}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #314995;outline-offset:4px}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:750;line-height:1.08;letter-spacing:-.025em}
h1{font-size:clamp(2.55rem,6.3vw,5rem)}
h2{font-size:clamp(1.55rem,3.5vw,2.25rem)}
h3{font-size:1.26rem}
p+p{margin-top:.7rem}
.eyebrow{font-size:1rem;font-weight:700;margin:0 0 6px}
.muted{color:#50504f}
.wrap{width:min(1140px,calc(100% - 40px));margin-inline:auto}
.mark img{width:76px;height:auto;display:block}
.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.stack{display:grid;gap:16px;min-width:0}
.action{display:inline-flex;min-height:44px;align-items:center;justify-content:center;text-align:center;border:0;border-radius:0 24px 24px 0;background:var(--fill,var(--yellow));padding:8px 15px;text-decoration:none;font-weight:680}
.action:hover{filter:brightness(.97)}
.action.secondary{--fill:var(--action-lilac)}
.action:disabled{cursor:default;opacity:.65}
.badge{display:inline-block;padding:4px 10px;background:var(--fill,#eae7fa);border-radius:20px;font-weight:680;line-height:1.2}
.age-3{--age:var(--yellow)}.age-4{--age:var(--green)}.age-5{--age:var(--blue)}.age-6{--age:var(--coral)}.age-mixed{--age:var(--lavender)}
.age-badge{--fill:var(--age)}
.public-hero{padding:clamp(42px,7vw,90px) 0 35px}
.public-hero p:last-child{max-width:64ch;margin-top:17px;font-size:1.17rem}
.public-body{padding-bottom:72px;max-width:1140px}
.public-body h2{margin-top:5px}
.legal-document{max-width:88ch}
.legal-document h2{font-size:clamp(1.4rem,3vw,2rem);margin:1.5em 0 .55em;scroll-margin-top:16px}
.legal-document ol,.legal-document ul{padding-inline-start:1.5em;margin:0 0 1em}
.legal-document li+li{margin-top:.55em}
.legal-document p{margin-block:.75em}
.legal-table{overflow-x:auto;margin-block:1em}
.legal-document table{width:100%;border-collapse:collapse;font-size:.96rem}
.legal-document th,.legal-document td{border:1px solid var(--line);padding:10px;vertical-align:top;text-align:left}
.legal-document th{background:#ece8fa}
@media (max-width:540px){.legal-document table{min-width:520px}}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:15px}
.card{background:var(--white);border:1px solid var(--line);border-radius:0 27px 27px 0;padding:18px;min-width:0;display:grid;gap:12px;align-content:start}
.card.color{background:var(--fill)}
.card.age{border-left:7px solid var(--age,var(--lavender))}
.card ul{margin:0;padding-left:1.15em}
.public-body details,.panel-main details{background:var(--white);border:1px solid var(--line);border-radius:9px;padding:4px 12px}
summary{min-height:44px;padding:8px 0;font-weight:700;cursor:pointer}
details>p,details>.stack{padding-bottom:11px}
.author-layout,.author-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(23px,5vw,70px)}
.author-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.public-photo{display:block;width:100%;height:auto;border-radius:0 54px 54px 0}
.author-intro{align-self:center}
.author-intro h2,.author-note h2,.author-loop h2{margin:0 0 13px}
.author-intro .eyebrow,.author-note .eyebrow,.author-loop .eyebrow{color:#49527f}
.author-notes{margin-block:clamp(15px,4vw,45px)}
.author-note{border-top:4px solid var(--note-accent);padding-block:16px}
.author-loop{display:grid;grid-template-columns:minmax(0,1fr) clamp(96px,15vw,164px);gap:clamp(16px,4vw,52px);align-items:center;background:#ffedc4;border-radius:0 48px 48px 0;padding:clamp(22px,5vw,48px)}
.author-loop p{max-width:65ch}
.author-loop .action{--fill:var(--blue);margin-top:16px}
.author-loop-motif{display:block;width:100%;height:auto}
.panel{min-height:100vh;display:grid;grid-template-columns:208px minmax(0,1fr)}
.panel-preview-embedded .panel{min-height:0}
.panel-nav{padding:20px 15px;display:flex;flex-direction:column;gap:4px;background:#ebe8fa;border-right:1px solid #d6cfee;align-items:stretch}
.panel-nav .mark{margin-bottom:21px}
.panel-nav .mark img{width:72px}
.panel-nav .nav-links{display:flex;flex-direction:column;gap:4px}
.panel-nav .nav-links a{min-height:44px;display:flex;align-items:center;text-decoration:none;padding:6px 12px;border-radius:7px;font-weight:670}
.panel-nav a[aria-current="page"]{background:var(--lavender)}
.panel-main{max-width:1200px;width:100%;padding:clamp(18px,4vw,48px);min-width:0}
.panel-main h1{font-size:clamp(2.15rem,5vw,3.65rem)}
.panel-main header{margin-bottom:21px}
.status{min-height:1.5em;margin:8px 0 16px;font-weight:650}
.panel-main:has(#moje-plany:not([hidden]))>.status:empty{min-height:0;margin:0}
.notice{padding:12px 14px;background:#ece8fa;border-radius:8px}
.notice.error{border:1px solid #ad4b4b;background:#fde7e6}
.fields{display:grid;gap:12px}
.field{display:grid;gap:4px;font-weight:650}
.field input,.field select,.field textarea{width:100%;border:1px solid #797379;background:var(--white);border-radius:7px;padding:8px 10px;min-height:44px;font-weight:400}
.field select{max-width:100%}
fieldset{border:1px solid var(--line);padding:7px 12px;margin:0;min-width:0;border-radius:8px}
legend{font-weight:650}
.check{min-height:44px;display:inline-flex;align-items:center;gap:6px;padding-right:6px}
.check input{width:18px;height:18px;accent-color:#373562}
.group-schedule{padding:10px 14px 14px}
#group-slots{display:grid;gap:10px;margin:12px 0}
.group-slot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;padding:10px;background:#f7f5fd;border-radius:10px}
.group-slot .text-button{font-size:.88rem}
.group-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.group-week-day{min-width:0;min-height:96px;background:#f8f6f1;border-radius:7px;padding:7px}
.group-week-day h3{font-size:.88rem;overflow-wrap:anywhere;letter-spacing:0;margin:0 0 6px}
.group-week-empty{font-size:.82rem;color:#666577}
.group-week .group-week-list{list-style:none;padding:0;display:grid;gap:5px}
.group-history-options{display:grid;max-height:240px;overflow:auto;margin-bottom:12px}
.group-history-options .check{min-height:44px}
.group-week-item{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere;background:#fff;border-left:4px solid var(--age);border-radius:0 7px 7px 0;padding:5px;font-size:.87rem}
.group-week-item strong{font-variant-numeric:tabular-nums}
.group-week-item.is-preview{outline:1px dashed #7e82b8;outline-offset:-1px}
.group-week-item small{color:#565c83}
@media(max-width:900px){
 .group-week-days{grid-template-columns:1fr}
 .group-week-day{display:grid;grid-template-columns:105px minmax(0,1fr);gap:8px;align-items:start;min-height:auto}
 .group-week-day h3{margin:5px 0 0}
 .group-week-empty{padding-block:3px}
}
@media(max-width:480px){
 .group-slot{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .group-slot .text-button{grid-column:1/-1;justify-self:start;min-height:36px}
}
.months-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}
.year-controls,.year-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,185px),1fr));gap:12px;align-items:end}
.year-heading h2{font-size:clamp(1.2rem,3vw,1.55rem)}
.panel-main .year-page-header{margin-bottom:0}
.year-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:8px 16px}
.year-group-field{width:min(100%,290px)}
#year-cycle-note,#year-summary{font-size:.9rem;color:#565c73}
#year-cycle-note{padding-block:6px}
#year-cycle-note:empty,#year-closure-indicator:empty{display:none}
.panel-main details.year-plan-settings{border:0;background:#ebe8fa;padding:0 12px;border-radius:9px}
.year-plan-settings>summary{min-height:44px;padding-block:10px}
#year-closure-indicator{display:inline-block;margin-inline-start:.65em;font-size:.85rem;font-weight:500}
.year-settings-content{padding-block:0 12px}
#year-break-settings summary{padding-block:6px}
#year-break-summary{display:inline-block;margin-inline-start:.65em;font-size:.9rem;font-weight:500}
#year-break-form{padding-block:6px 10px}
.winter-info{font-size:.9rem}
.year-heading{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}
.year-approval{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:12px 15px;border-radius:10px;background:#eeeafb}
.year-approval p{font-size:.9rem}
.year-special{justify-self:start}
.year-entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}
.year-entry{display:grid;gap:10px;min-height:170px;padding:22px;border-left:6px solid var(--tile-edge);border-radius:0 26px 26px 0;background:var(--tile);color:inherit;text-decoration:none}
.year-entry strong{font-size:clamp(1.25rem,3vw,1.65rem)}
.year-entry-action{align-self:end;font-weight:700;text-decoration:underline}
.year-wizard{max-width:650px;gap:14px}
.wizard-days{display:flex;flex-wrap:wrap;gap:8px 16px}
.wizard-days .check{min-height:36px}
#wizard-error,#year-break-error{color:#8a2f39}
.year-builder{display:grid;gap:22px;align-items:start}
.year-shelf{gap:10px;padding:13px}
.year-shelf p{font-size:.9rem}
#year-available{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));padding:4px;gap:8px}
#year-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
.year-month{display:grid;align-content:start;gap:8px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fffdf9}
.panel-main .year-month-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 8px;margin-bottom:0}
.year-month h3{margin:0;text-transform:capitalize;font-size:1.16rem}
.year-month-count,.year-month-gap{font-size:.85rem}
.year-closed-note{display:grid;gap:2px;border-left:4px solid #8790e0;border-radius:0 7px 7px 0;background:#eeecfc;padding:6px 8px;font-size:.85rem;font-weight:700}
.year-closed-note span{font-weight:500}
.year-month-gap{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line)}
.year-month-gap .text-button{font-size:.85rem}
.year-tile,.year-shelf-tile{display:grid;gap:3px;min-width:0;background:var(--tile);border:0;border-left:4px solid var(--tile-edge);border-radius:0 10px 10px 0;padding:8px 9px}
.year-tile-title{font-weight:740;overflow-wrap:anywhere;line-height:1.25}
.panel-main details.year-topic-info,.year-topic-info{padding:0;border:0;background:none}
.year-topic-info > summary{padding:0;cursor:pointer}
.year-topic-info > summary:hover{text-decoration:underline}
.year-topic-info > p,.year-topic-info > .row{margin-top:5px}
.year-tile-title > .year-tile-meta{display:block;font-weight:500;margin-top:3px}
.year-topic-links .action{min-height:36px;padding:5px 10px;font-size:.85rem}
.year-tile-meta,.year-shelf-tile small{font-size:.85rem}
.year-tile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:4px}
.year-tile-copy{min-width:0}
.year-tile-split{font-size:.8rem;padding-top:3px;color:#4b5168}
.year-shelf-tile{grid-template-columns:auto 1fr;align-items:center;text-align:left;font-weight:720;min-height:48px;cursor:grab;border:0}
.year-shelf-tile small{display:block;font-weight:500}
.year-drag-grip{display:grid;place-items:center;min-width:30px;min-height:44px;touch-action:none;user-select:none;cursor:grab;font-size:1.25rem}
.year-drag-ghost{position:fixed;z-index:1002;top:0;left:0;pointer-events:none;max-width:190px;padding:8px 12px;border-radius:8px;background:#fff0cf;box-shadow:0 4px 14px #29233a36;font-weight:750}
.year-drop-board{position:fixed;z-index:1001;left:50%;bottom:12px;transform:translateX(-50%);width:min(calc(100% - 24px),660px);max-height:55vh;overflow:auto;background:var(--white);border:2px solid #298fa3;border-radius:14px;padding:8px 12px;box-shadow:0 6px 22px #29233a36}
.year-drop-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.year-drop-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}
.year-drop-months button{min-height:40px;padding:3px 4px;border-radius:8px;text-transform:capitalize}
.year-drop-months button:disabled{opacity:.42}
.year-drop-options{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.year-drop-options p{width:100%}
.year-tile-controls{display:flex;align-items:center;flex:none}
.year-tile-controls>.year-drag-grip,.year-tile-menu>summary{width:32px;min-height:44px;border:0;border-radius:6px;background:var(--action-lilac);background:color-mix(in srgb,var(--tile) 82%,var(--tile-edge));padding:0;display:grid;place-items:center}
.year-tile-controls>.year-drag-grip:hover,.year-tile-menu>summary:hover{filter:brightness(.95)}
.panel-main details.year-tile-menu{position:relative;background:transparent;border:0;padding:0}
.year-tile-menu>summary{list-style:none;font-size:1.4rem;cursor:pointer}
.year-tile-menu>summary::-webkit-details-marker{display:none}
.year-tile-options{position:absolute;z-index:3;inset-inline-end:0;top:100%;width:200px;padding:5px;background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 12px #29233a26}
.year-tile-options .action{display:block;width:100%;min-height:44px;border:0;border-radius:5px;padding:6px;text-align:start;font-size:.85rem}
.year-tile-options .action + .action{margin-top:4px}
.tone-fixed{--tile:#fff0cf;--tile-edge:#d3912b}
.tone-seasonal{--tile:#def5f5;--tile-edge:#298fa3}
.tone-flexible{--tile:#edebfc;--tile-edge:#767ac7}
.year-continuation{border-left-style:dotted}
.year-special-day,.panel-main details.year-special-day{border-left:4px solid #d86b74;background:#ffe7e6;border-radius:0 7px 7px 0;padding:6px 8px;font-size:.9rem}
.year-month.can-drop{outline:2px dashed #298fa3;outline-offset:-3px}
.year-month.is-drop-target,.year-drop-months .is-drop-target{background:#e5f7ed;border-color:#3d8d66}
.year-tile.is-drop-target{outline:3px solid #3d8d66;outline-offset:1px}
@media(max-width:720px){
 .year-group-field{width:100%}
 .year-drop-board{bottom:64px}
}
#move-error{color:#8a2f39}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-form{max-width:760px}
.contact-form textarea{resize:vertical}
.auth-card{max-width:490px;padding:clamp(18px,4vw,28px)}
.plan-entry{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:9px}
.text-button{border:0;border-radius:7px;background:var(--action-lilac);min-height:44px;padding:3px 9px;text-align:start;font-weight:650}
.text-button:hover{filter:brightness(.95)}
.group-slot-remove{background:#ffe2e3}
.catalog-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px}
.song-lines{white-space:pre-line}
.curriculum-songs details{padding-inline:12px}
.word-with-image{display:flex;align-items:center;gap:9px;margin-block:4px}
.word-with-image img{display:block;width:50px;height:50px;object-fit:contain;border-radius:9px;background:#f8f6f1}
.word-preview-trigger{flex:none;padding:0;border:0;border-radius:9px;background:transparent;cursor:zoom-in}
.word-preview{width:min(calc(100% - 24px),620px);padding:0;border:0;border-radius:18px;background:#fff;color:var(--ink)}
.word-preview::backdrop{background:rgba(36,39,63,.66)}
.word-preview-content{padding:clamp(12px,3vw,24px)}
.word-preview-heading{justify-content:space-between;margin-bottom:12px}
.word-preview img{display:block;width:auto;max-width:100%;height:auto;max-height:70vh;object-fit:contain;margin-inline:auto}
.word-pictogram{display:grid;place-items:center;flex:0 0 50px;height:50px;border-radius:9px;background:#f8f6f1;font-size:1.6rem}
.occasion-materials ul{padding:0}
.coloring-options > summary{font-size:1.25rem;font-weight:740}
.coloring-options > form{margin-top:12px}
.coloring-words{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:0;min-width:0}
.coloring-words legend{font-weight:650}
.coloring-word-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:6px 12px}
.coloring-word{display:flex;align-items:center;gap:7px;cursor:pointer;min-height:44px}
.coloring-word img{object-fit:contain;border-radius:6px;background:#f8f6f1}
.stage-list{display:grid;gap:10px;margin:0;padding-left:22px}
.dates{padding:0;list-style:none;display:grid;gap:8px;margin:0}
.date-group+.date-group{margin-top:14px}
@media(max-width:720px){
 .wrap{width:calc(100% - 30px)}
 .author-layout,.author-notes{grid-template-columns:minmax(0,1fr)}
 .author-loop{grid-template-columns:minmax(0,1fr)}
 .author-loop-motif{display:none}
 .public-photo{max-width:390px}
 .panel{display:block}.panel-main{padding:16px 16px 110px}
 .panel-nav{position:fixed;inset:auto 0 0;z-index:10;display:block;padding:0 0 env(safe-area-inset-bottom);border:0;border-top:1px solid var(--line)}
 .panel-nav .mark{display:none}.panel-nav .nav-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
 .panel-preview .panel-nav .nav-links{grid-template-columns:repeat(3,minmax(0,1fr))}
 .panel-nav .nav-links a{justify-content:center;min-height:57px;padding:4px 2px;border-radius:0;line-height:1.1;text-align:center;font-size:clamp(.72rem,3.6vw,.95rem);white-space:nowrap}
 .catalog-controls{grid-template-columns:minmax(0,1fr)}
}
@media print{
 @page{size:A4;margin:11mm}
 .printing-work-plan .panel{display:none}
 .work-plan-print{display:block!important;font:10pt/1.3 Outfit,system-ui,sans-serif;color:#2b2b2b;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .work-plan-print::before{content:'';display:block;width:52pt;height:42pt;margin:0 0 4pt;background:url(brand-mark.png) left center/contain no-repeat}
 .work-plan-print h1{font-size:21pt;line-height:1.1;font-weight:800;margin:0 0 9pt;color:#2b2b2b}
 .work-plan-print h2{display:block;width:fit-content;font-size:11.5pt;font-weight:800;margin:9pt 0 5pt;padding:2pt 12pt;border-radius:999pt;break-inside:avoid;background:#5eccde;color:#2b2b2b;break-after:avoid}
 .work-plan-print h2:nth-of-type(4n+2){background:#6ecb92}
 .work-plan-print h2:nth-of-type(4n+3){background:#f7ca6b}
 .work-plan-print h2:nth-of-type(4n){background:#8791de}
 .work-plan-print p{margin:0 0 3pt}
 .work-plan-print h1+p,.work-plan-print h1+p~p:nth-of-type(-n+5){padding:3pt 10pt;background:#ebe8fa;border-left:6pt solid #5eccde;border-radius:0 12pt 12pt 0}
 .work-plan-print h1+p+p{border-left-color:#6ecb92!important}
 .work-plan-print h1+p+p+p{border-left-color:#ff7075!important}
 .work-plan-print h1+p+p+p+p{border-left-color:#f7ca6b!important}
 .work-plan-print h1+p+p+p+p+p{border-left-color:#8791de!important}
 .work-plan-print h1+p+p+p+p+p+p{margin-top:6pt;padding:4pt 10pt;background:#fff8ee;border:1px solid #ded4c8;border-radius:9pt;font-size:8.5pt}
 .work-plan-print h2+table{break-before:avoid}
 .work-plan-print table{width:100%;border-collapse:separate;border-spacing:0;font-size:8.5pt;margin-bottom:6pt;border:1px solid #ded4c8;border-radius:10pt;overflow:hidden}
 .work-plan-print th{background:#ebe8fa;color:#2b2b2b;font-weight:800;border-bottom:1px solid #d6cfee}
 .work-plan-print th,.work-plan-print td{padding:2pt 6pt;text-align:left;vertical-align:middle;white-space:pre-line}
 .work-plan-print td{border-bottom:1px solid #ded4c8;border-right:1px solid #ded4c8;background:#fff}
 .work-plan-print td:last-child{border-right:0}
 .work-plan-print td:first-child{background:#fff8ee;font-weight:700}
 .work-plan-print tbody tr:last-child td{border-bottom:0}
 .work-plan-print td img{display:block;width:22pt;height:22pt;object-fit:contain;margin:0 auto}
 .work-plan-print td:has(img){width:32pt;padding:1pt 4pt;text-align:center;background:#fff}
 .work-plan-print th:empty{width:32pt}
 .work-plan-print tr{break-inside:avoid}
 .work-plan-print thead{display:table-header-group}
 body{background:#fff;color:#000} .panel{display:block} .panel-nav,.status,.no-print{display:none!important}
 .panel-main{padding:0} .card{break-inside:avoid;border-color:#888}
}
.work-plan-print{display:none}
@font-face{font-family:TralaLot;src:url("game-lot.otf") format("opentype");font-display:swap}
.class-room{--game-ink:#40486e;--game-line:#dcddee;--game-lilac:#eeedfb;--game-blue:#e0f5f7;--game-yellow:#fff0d0;--game-green:#e0f4e6;--game-coral:#ffe7e7;background:#fffaf3;color:var(--game-ink)}
.game-sprite{position:absolute;width:0;height:0;overflow:hidden}
.game{display:grid;justify-items:center;align-content:start;min-height:100svh;padding:clamp(14px,3vw,34px)}
.game #game-intro{width:min(100%,1020px)}
.game-header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-bottom:clamp(14px,2.5vw,24px)}
.game-brand{display:inline-flex;align-items:center;gap:12px;font-size:.95rem;font-weight:650;text-decoration:none}
.game-brand img{display:block;width:60px;height:auto}
.game-preview,.game-active-title{padding:5px 12px;border-radius:99px;background:var(--game-lilac);font-size:.9rem;font-weight:700}
.game-cover{position:relative;isolation:isolate;overflow:hidden;background:#fffdf8;border:1px solid #eee3d5;border-radius:0 50px 50px 0;padding:clamp(24px,5vw,46px);margin-bottom:24px}
.game-cover-copy{position:relative;z-index:1}
.game-cover .eyebrow{font-size:.98rem}
.game-cover h1{font-family:TralaLot,Outfit,system-ui,sans-serif;font-size:clamp(2rem,7.4vw,5rem);text-transform:uppercase;letter-spacing:0;line-height:1.05;margin-bottom:8px;max-width:12ch;overflow-wrap:anywhere}
.game-cover-shapes{position:absolute;inset:0;z-index:-1;overflow:hidden}
.game-cover-shapes span{position:absolute;width:clamp(75px,20vw,212px);aspect-ratio:1;background:var(--fill);opacity:.88}
.game-cover-shapes span:nth-child(1){--fill:#ffb9ba;right:24%;top:-70%;border-radius:50%}
.game-cover-shapes span:nth-child(2){--fill:#a8dfba;right:-6%;top:-38%;border-radius:0 0 50% 50%}
.game-cover-shapes span:nth-child(3){--fill:#f9d887;right:13%;bottom:-63%;border-radius:50% 50% 0 0}
.game-cover-shapes span:nth-child(4){--fill:#a1e3eb;right:-5%;bottom:-63%;border-radius:50%}
.game-launcher{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.game-choice{--art:var(--game-lilac);position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;text-align:left;background:var(--art);background:color-mix(in srgb,var(--art) 52%,white);border:0;border-radius:0 32px 32px 0;padding:10px 10px 14px}
.game-choice-yellow{--art:var(--game-yellow)}
.game-choice-blue{--art:var(--game-blue)}
.game-choice-green{--art:var(--game-green)}
.game-choice-art{grid-column:1/-1;display:grid;place-items:center;min-height:104px;background:var(--art);border-radius:0 24px 24px 0}
.game-choice-art svg{width:clamp(70px,11vw,114px);height:auto}
.game-choice-art img{display:block;width:clamp(64px,9vw,100px);height:auto}
.game-choice-copy{display:grid;gap:4px;padding:12px 0 0 5px}
.game-choice-copy strong{font-size:clamp(1.1rem,2.1vw,1.35rem);line-height:1.15}
.game-choice-copy>span{font-size:.92rem;color:#575e78;line-height:1.25}
.game-choice-arrow{width:25px;height:25px;align-self:center;margin:10px 3px 0 0}
.game-choice:hover{filter:brightness(.97)}
.game-preparation{margin-top:24px;padding:16px 0;border-top:1px solid #e8dfd6}
.game-preparation details{border:0;border-top:1px solid #e8dfd6;padding:3px 0}
.game-preparation form{padding-bottom:12px}
.game-preparation .game-disclaimer,.game-offline p{font-size:.92rem;color:#555e77;margin-top:7px}
.game-offline{padding-bottom:14px}
.game #game-round{width:min(100%,980px);gap:12px}
.game-toolbar{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.game-toolbar #game-exit{justify-self:start}
.game-sound{display:flex;justify-content:flex-end;gap:8px}
.game-toolbar .action{min-height:44px;touch-action:manipulation}
.game-toolbar #game-repeat{min-width:58px;background:var(--game-blue)}
.game-teacher{display:flex;flex-wrap:wrap;gap:4px 8px;justify-content:center}
.game-teacher button{border-radius:99px;background:#f0eff9;padding-inline:13px;text-decoration:none;font-size:.91rem}
.game-teacher button[aria-pressed="true"]{background:#dcdff7}
.game-response{justify-self:center;max-width:38rem;text-align:center;font-size:.95rem}
.game-response summary{font-weight:550}
.game-options{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:24px;margin-inline:auto;width:min(100%,860px)}
.game-options:has(>:nth-child(4)){grid-template-columns:repeat(4,minmax(96px,1fr))}
.game-options:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(96px,1fr));max-width:560px}
.game-options.single-control{grid-template-columns:1fr;justify-items:center}
.game-tile{--tile:var(--game-lilac);position:relative;display:grid;place-items:center;min-height:96px;aspect-ratio:1;padding:clamp(12px,2.2vw,27px);border:0;border-radius:0 30% 30% 0;background:var(--tile);font-size:clamp(2rem,7vw,4rem);font-weight:750}
.game-tile[data-word="sunny"],.game-tile[data-word="windy"]{--tile:var(--game-yellow)}
.game-tile[data-word="cold"],.game-tile[data-word="snowy"]{--tile:var(--game-blue)}
.game-tile[data-word="penguin"],.game-tile[data-word="polar bear"]{--tile:var(--game-green)}
.game-tile[data-word="gloves"]{--tile:var(--game-coral)}
.game-tile:hover{filter:brightness(.95)}
.game-tile:disabled{cursor:default}
.game-tile.correct{background:var(--game-green)}
.game-tile.is-hint{outline:4px solid #49527f;outline-offset:3px}
.game-tile.correct::after{content:"";position:absolute;inset:12px 18px auto auto;width:14px;height:8px;border:solid #318457;border-width:0 0 3px 3px;transform:rotate(-45deg)}
.game-art,.game-tile img,.game-main-control img{display:block;width:100%;max-width:160px;aspect-ratio:1;object-fit:contain}
.game-vocab-tile{align-content:center;gap:8px;aspect-ratio:auto;min-height:126px;padding:12px;background:var(--game-green);font-size:clamp(1rem,2.6vw,1.4rem);line-height:1.2;overflow-wrap:anywhere}
.game-vocab-tile:nth-child(3n+2){background:var(--game-blue)}
.game-vocab-tile:nth-child(3n){background:var(--game-yellow)}
.game-vocab-tile :is(.game-art,img){width:min(100%,96px);border-radius:12px}
.game-main-control{min-width:min(236px,100%);min-height:112px;padding:18px 26px;display:grid;place-items:center;gap:8px;font-size:1.25rem;border:0;background:var(--game-yellow)}
.game-main-control .game-art{width:clamp(72px,16vw,128px)}
.mystery-game{display:grid;justify-items:center;gap:10px;width:100%}
.mystery-scene{position:relative;isolation:isolate;width:min(78vw,360px,48svh);aspect-ratio:1/1.25;clip-path:inset(0 -25% -5%);cursor:pointer}
.mystery-scene::before{content:"";position:absolute;inset:32% -3% 0;border-radius:48% 48% 20% 20%;background:#fff0ca}
.mystery-body,.mystery-lid{position:absolute;inset:auto 0 0;width:100%;height:auto;user-select:none;pointer-events:none}
.mystery-body{z-index:3;clip-path:inset(49.25% 0 0)}
.mystery-lid{z-index:4;clip-path:inset(0 0 50.7%);transform-origin:22% 49%}
.mystery-mouth{position:absolute;inset:auto 18.4% 41% 18.4%;height:8%;border-radius:50% 50% 0 0;background:#a53234;opacity:0}
.mystery-card{position:absolute;z-index:2;left:27%;bottom:46%;width:46%;aspect-ratio:4/5;display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center;justify-items:center;gap:5px;padding:clamp(7px,2vw,15px);border:2px solid #dedaf5;border-radius:12px;background:#fff;color:#3d4263;box-shadow:0 7px 0 #40395925;opacity:0}
.mystery-card :is(img,svg){width:100%;height:100%;min-height:0;object-fit:contain}
.mystery-word{font-size:clamp(1rem,4.6vw,1.72rem);line-height:1.05;text-align:center;overflow-wrap:anywhere}
.mystery-scene.is-open .mystery-lid{transform:translate(-22%,-22%) rotate(-27deg) scale(.73)}
.mystery-scene.is-open :is(.mystery-card,.mystery-mouth){opacity:1}
.mystery-button{min-height:48px;padding-inline:22px;background:var(--game-yellow);touch-action:manipulation}
.game-feedback{min-height:1.45em;text-align:center;font-size:clamp(1.1rem,3.4vw,1.6rem);font-weight:750}
.game-feedback:empty{min-height:0}
.class-room.audio-only{background:#282b43;color:#fff8ee}
.audio-only .game-toolbar .action,.audio-only .game-main-control,.audio-only .game-teacher button,.audio-only .game-active-title{color:#2b2b2b}
.audio-only :focus-visible{outline-color:#aaaef0}
@media(prefers-reduced-motion:no-preference){
 .game-choice,.game-tile{transition:transform .18s,filter .18s}
 .game-choice:hover{transform:translateY(-3px)}
 .game-tile.correct .game-art,.game-tile.correct img{animation:game-correct .3s ease-out}
 @keyframes game-correct{50%{transform:scale(1.09)}}
 .mystery-scene.is-open .mystery-lid{animation:mystery-lift .48s cubic-bezier(.19,.86,.33,1) both}
 .mystery-scene.is-open .mystery-card{animation:mystery-pop .55s .14s cubic-bezier(.18,.72,.32,1) both}
 @keyframes mystery-lift{from{transform:none}70%{transform:translate(-25%,-27%) rotate(-32deg) scale(.76)}}
 @keyframes mystery-pop{from{transform:translateY(94%) rotate(-11deg) scale(.28);opacity:0}26%{opacity:1}72%{transform:translateY(-7%) rotate(4deg) scale(1.04)}}
 .game-teacher:has(#game-pause[aria-pressed="true"])~.game-options :is(.mystery-lid,.mystery-card){animation-play-state:paused}
}
@media(max-width:620px){
 .game-cover-shapes{inset:0 0 0 55%}
 .game-cover-shapes span:nth-child(1){top:-36%;right:35%}
 .game-cover-shapes span:nth-child(2){right:-45%;top:-22%}
 .game-cover-shapes span:nth-child(3){right:7%;bottom:-43%}
 .game-cover-shapes span:nth-child(4){right:-60%;bottom:-29%}
 .game-launcher{grid-template-columns:1fr;gap:12px}
 .game-choice{grid-template-columns:75px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px}
 .game-choice-art{grid-column:auto;min-height:66px}
 .game-choice-art :is(svg,img){width:60px}
 .game-choice-copy,.game-choice-arrow{padding:0;margin:0}
 .game-options,.game-options:has(>:nth-child(4)){grid-template-columns:repeat(2,minmax(96px,1fr))}
 .game-toolbar{grid-template-columns:1fr 1fr}
 .game-active-title{grid-column:1/-1;grid-row:2;justify-self:center}
}
.price-options { border: 0; padding: 0; margin: 0; min-width: 0; }
.price-options legend { font-weight: 700; margin-bottom: .55rem; }
.price-options label { font-weight: 700; margin-inline: .3rem 1rem; cursor: pointer; }
.price-grid { margin-top: 1.25rem; }
.price { display: none; margin-block: .5rem; }
.price strong { font-size: clamp(2.2rem, 6vw, 4rem); line-height: 1; }
#price-month:checked ~ .price-grid .price-month,
#price-year:checked ~ .price-grid .price-year { display: block; }
@media (prefers-reduced-motion: no-preference) {
  .price { animation: price-enter 240ms ease-out both; }
  @keyframes price-enter {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

/* Słowniczek: powiększanie karty, nowe kafle gier */
.game-choice-coral{--art:var(--game-coral)}
.game-vocab-tile{transition:transform .15s ease}
.game-vocab-tile:hover{transform:scale(1.04)}
.game-vocab-tile:active{transform:scale(.97)}
.vocab-zoom{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:18px;background:rgba(43,43,43,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer}
.vocab-zoom-card{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;justify-items:center;align-items:center;width:min(86vw,72vh,620px);aspect-ratio:1;padding:clamp(16px,4vw,36px);border-radius:12px 38% 38% 12px;box-shadow:0 18px 50px rgba(0,0,0,.28);cursor:default}
.vocab-zoom-art{display:grid;place-items:center;min-height:0;height:100%;width:100%}
.vocab-zoom-art :is(img,svg){width:100%;height:100%;max-height:100%;object-fit:contain;animation:vocab-bob 2.4s ease-in-out infinite}
.vocab-zoom-card strong{font-size:clamp(2rem,9vw,4.4rem);line-height:1;font-weight:800;color:var(--game-ink)}
.vocab-zoom-close{position:absolute;top:10px;right:14px;width:48px;height:48px;border:0;border-radius:50%;background:#fff;color:var(--game-ink);font-size:2rem;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.18)}
@keyframes vocab-bob{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-3%) rotate(1.5deg)}}
@media (prefers-reduced-motion:reduce){.vocab-zoom-art :is(img,svg){animation:none}.game-vocab-tile{transition:none}}

/* games polish */
@keyframes tile-in{from{opacity:0;transform:translateY(26px) scale(.78) rotate(-3deg)}to{opacity:1;transform:none}}
@keyframes tile-win{0%{transform:scale(1)}30%{transform:scale(1.14) rotate(-3deg)}55%{transform:scale(.96) rotate(2deg)}75%{transform:scale(1.06)}100%{transform:scale(1.03)}}
@keyframes tile-wobble{0%,100%{transform:translateX(0)}18%{transform:translateX(-12px) rotate(-3deg)}36%{transform:translateX(10px) rotate(2deg)}54%{transform:translateX(-7px)}72%{transform:translateX(4px)}}
@keyframes balloon-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}}
@keyframes balloon-pop{0%{transform:scale(1)}35%{transform:scale(1.28)}100%{transform:scale(0);opacity:0}}
@keyframes shadow-sway{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}
@keyframes shadow-reveal{0%{transform:scale(.8)}50%{transform:scale(1.2) rotate(-4deg)}100%{transform:scale(1)}}
@keyframes confetti-fly{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}70%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy) + 90px)) rotate(var(--r))}}
.game-options>.game-tile{animation:tile-in .55s cubic-bezier(.34,1.56,.64,1) both;box-shadow:0 7px 0 rgba(43,43,43,.14);transition:transform .18s,box-shadow .18s}
.game-options>.game-tile:nth-child(2){animation-delay:.07s}
.game-options>.game-tile:nth-child(3){animation-delay:.14s}
.game-options>.game-tile:nth-child(4){animation-delay:.21s}
.game-options>.game-tile:nth-child(5){animation-delay:.28s}
.game-options>.game-tile:nth-child(6){animation-delay:.35s}
@media (hover:hover){.game-options>.game-tile:not(:disabled):hover{transform:translateY(-6px) rotate(-1.5deg);box-shadow:0 13px 0 rgba(43,43,43,.14)}}
.game-options>.game-tile:not(:disabled):active{transform:translateY(3px) scale(.97);box-shadow:0 2px 0 rgba(43,43,43,.14)}
.game-options>.game-tile.correct{animation:tile-win .7s cubic-bezier(.34,1.56,.64,1) both;box-shadow:0 0 0 6px #fff,0 0 0 12px var(--game-green)}
.game-options>.game-tile.wobble{animation:tile-wobble .5s}
.game-options>.game-tile img,.game-options>.game-tile svg{max-width:100%;max-height:100%;object-fit:contain}
.confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:95}
.confetti-layer i{position:fixed;width:11px;height:15px;border-radius:3px;animation:confetti-fly 1.2s cubic-bezier(.2,.7,.3,1) forwards}
.game-main-control{transition:transform .18s,box-shadow .18s}
.game-main-control:active{transform:scale(.96)}
.game-options.shadow-round,.game-options.shadow-round:has(>:nth-child(4)){grid-template-columns:repeat(3,minmax(96px,1fr))}
.game-options.shadow-round:has(>:nth-child(5)){grid-template-columns:repeat(4,minmax(96px,1fr))}
.shadow-stage{grid-column:1/-1;display:grid;justify-items:center;gap:6px;padding:clamp(12px,2vw,24px);border-radius:0 40px 40px 0;border-left:9px solid var(--game-green);background:var(--game-lilac);cursor:pointer;animation:tile-in .6s cubic-bezier(.34,1.56,.64,1) both}
.shadow-stage>:not(strong){width:min(38vw,230px);height:min(38vw,230px);display:grid;place-items:center;filter:brightness(0) opacity(.78);transition:filter .5s;animation:shadow-sway 3.4s ease-in-out infinite}
.shadow-stage>:not(strong) img,.shadow-stage>:not(strong) svg{max-width:100%;max-height:100%;object-fit:contain}
.shadow-stage strong{font-size:clamp(1.6rem,5vw,2.6rem);font-weight:800;opacity:0;transform:translateY(10px);transition:opacity .4s .15s,transform .4s .15s}
.shadow-stage.revealed>:not(strong){filter:none;animation:shadow-reveal .7s cubic-bezier(.34,1.56,.64,1) both}
.shadow-stage.revealed strong{opacity:1;transform:none}
.game-options.balloon-round{padding-bottom:34px}
.game-options>.game-tile.balloon{border-radius:50% 50% 48% 48%/58% 58% 42% 42%;animation:tile-in .55s cubic-bezier(.34,1.56,.64,1) both,balloon-float 3.4s ease-in-out .6s infinite;animation-delay:calc(var(--i,0)*.1s),calc(var(--i,0)*-.8s)}
.game-tile.balloon::before{content:"";position:absolute;left:50%;bottom:-9px;width:16px;height:12px;background:var(--tile);clip-path:polygon(50% 0,100% 100%,0 100%);transform:translateX(-50%)}
.game-tile.balloon::after{content:"";position:absolute;left:50%;bottom:-40px;width:3px;height:32px;background:#40486e;border-radius:3px;transform:translateX(-50%)}
.game-options>.game-tile.balloon.popped{animation:balloon-pop .4s ease-out forwards;box-shadow:none}
.game-options>.game-tile.balloon.wobble{animation:tile-wobble .5s}
@media (prefers-reduced-motion:reduce){.game-options>.game-tile,.shadow-stage,.shadow-stage>*,.game-tile.balloon{animation:none!important}}

/* games polish 2 */
@keyframes cmd-pop{from{transform:scale(.35) rotate(-6deg);opacity:0}to{transform:none;opacity:1}}
@keyframes dance-bounce{from{transform:translateY(0) rotate(-2deg) scale(1)}to{transform:translateY(-14px) rotate(2deg) scale(1.04)}}
@keyframes note-wiggle{from{transform:rotate(-14deg) scale(1)}to{transform:rotate(14deg) scale(1.12)}}
@keyframes freeze-shiver{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@keyframes box-wiggle{0%,58%,100%{transform:none}64%{transform:rotate(-4deg) scale(1.02)}71%{transform:rotate(4deg) scale(1.02)}78%{transform:rotate(-3deg)}85%{transform:rotate(2deg)}}
@keyframes blank-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
body[data-game="conductor"] #game-instruction{font-size:clamp(3.2rem,11vw,7rem);font-weight:900;line-height:1;margin:.15em 0 .2em;letter-spacing:-.02em;animation:cmd-pop .55s cubic-bezier(.34,1.56,.64,1)}
body[data-game="conductor"] #game-instruction[data-cmd="dance"]{color:#ff5a60}
body[data-game="conductor"] #game-instruction[data-cmd="freeze"]{color:#2f9bb3}
body[data-game="conductor"] .game-main-control{min-width:min(86vw,420px);min-height:min(56vh,330px);flex-direction:column;gap:14px;font-size:1.3rem;border-radius:0 40px 40px 0;border-left:12px solid var(--game-lilac)}
body[data-game="conductor"] .game-main-control svg{width:min(34vw,150px);height:min(34vw,150px)}
.game-options.is-dancing .game-main-control{background:var(--game-yellow);border-left-color:var(--game-coral);animation:dance-bounce .55s ease-in-out infinite alternate}
.game-options.is-dancing .game-main-control svg{animation:note-wiggle .55s ease-in-out infinite alternate}
.game-options.is-frozen .game-main-control{background:var(--game-blue);border-left-color:#fff;box-shadow:inset 0 0 0 8px rgba(255,255,255,.55);animation:freeze-shiver .12s linear 5}
.game-options.is-frozen .game-main-control svg{filter:saturate(.4) brightness(1.15)}
.mystery-scene:not(.is-open){animation:box-wiggle 2.6s ease-in-out infinite;cursor:pointer}
.mystery-scene.is-open .mystery-card{animation:tile-win .7s cubic-bezier(.34,1.56,.64,1) both}
.game-tile:disabled:not([data-word]){background:#fff;border:6px dashed #ff5a60;color:#ff5a60;font-size:clamp(3rem,10vw,6rem);animation:blank-pulse 1s ease-in-out infinite;box-shadow:none}
@media (prefers-reduced-motion:reduce){body[data-game="conductor"] #game-instruction,.mystery-scene,.game-tile:disabled:not([data-word]),.game-options.is-dancing .game-main-control,.game-options.is-dancing .game-main-control svg,.game-options.is-frozen .game-main-control{animation:none!important}}

.missing-choices{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:24px;margin-top:14px;padding-top:22px;border-top:5px dotted var(--line);min-height:40px}
.missing-choices:empty{border-top-color:transparent}
.game-options.game-options:has(.missing-choices){width:min(100%,900px);grid-template-columns:repeat(3,minmax(96px,1fr))}
.game-options:has(.missing-choices)>.game-tile{min-height:0}

@keyframes girl-dance{0%{transform:translateY(0) rotate(-9deg) scale(1.02,.96)}50%{transform:translateY(-22px) rotate(0) scale(.97,1.05)}100%{transform:translateY(0) rotate(9deg) scale(1.02,.96)}}
@keyframes girl-freeze{0%{transform:scale(1.18) rotate(6deg)}60%{transform:scale(.94)}100%{transform:scale(1)}}
.dancer-girl{width:min(70vw,360px);height:min(70vw,360px);margin:-85px 0 -45px;object-fit:contain;transform-origin:50% 88%}
.dancer-girl.is-on{animation:girl-dance .62s ease-in-out infinite}
.dancer-girl.is-off{animation:girl-freeze .4s cubic-bezier(.34,1.56,.64,1) both;filter:saturate(.55) hue-rotate(165deg) brightness(1.12) drop-shadow(0 0 12px #bfefff)}
@media (prefers-reduced-motion:reduce){.dancer-girl{animation:none!important}}

.game-main-control img.dancer-girl{max-width:none;width:min(80vw,440px);height:min(80vw,440px);margin:-110px 0 -60px}
body[data-game="conductor"] .game-main-control{min-height:min(64vh,420px);min-width:min(92vw,520px)}

/* memory-20 */
body[data-game=memory] #game-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:min(92vw,820px);margin:0 auto;align-content:start}
body[data-game=memory] #game-options>*{width:auto;min-width:0;height:auto;min-height:0;aspect-ratio:1/1;padding:6px}
body[data-game=memory] #game-options img{max-width:80%;max-height:80%;object-fit:contain}
@media (max-width:600px){body[data-game=memory] #game-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}}

/* coloring-flat */
.coloring-options{border:3px solid #1f2540;border-radius:18px;box-shadow:6px 6px 0 #1f2540;background:#fff;padding:0;overflow:hidden}
.coloring-options>summary{background:#ffcf5a;color:#1f2540;font-size:1.3rem;font-weight:800;padding:16px 20px;list-style:none;cursor:pointer;border-bottom:3px solid #1f2540;display:flex;justify-content:space-between;align-items:center}
.coloring-options>summary::-webkit-details-marker{display:none}
.coloring-options>summary::after{content:"+";display:grid;place-items:center;width:30px;height:30px;border:3px solid #1f2540;border-radius:50%;background:#fff;font-size:1.2rem;line-height:1}
.coloring-options[open]>summary::after{content:"\2212"}
.coloring-options:not([open])>summary{border-bottom:0}
.coloring-options .coloring-intro{margin:0;padding:14px 20px 0;color:#3b3f5c}
.coloring-options form{padding:4px 20px 22px}
.coloring-options .step-title{margin:22px 0 10px;font-size:1.05rem;font-weight:800;color:#1f2540}
.coloring-options .coloring-words{border:0;padding:0;margin:0}
.coloring-options .coloring-words legend{padding:0;margin:20px 0 10px;font-size:1.05rem;font-weight:800;color:#1f2540}
.coloring-options .coloring-word-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px}
.coloring-options .coloring-word{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 10px;border:3px solid #1f2540;border-radius:14px;background:#fff;cursor:pointer;position:relative;box-shadow:3px 3px 0 #1f2540;font-weight:700;transition:transform .08s,box-shadow .08s}
.coloring-options .coloring-word:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 #1f2540}
.coloring-options .coloring-word img{width:84px;height:84px;object-fit:contain;background:#fff}
.coloring-options .coloring-word input{position:absolute;top:8px;left:8px;width:20px;height:20px;accent-color:#ff6b5b}
.coloring-options .coloring-word:has(input:checked){background:#c9f0e6}
.coloring-options .coloring-word:has(input:not(:checked)){opacity:.5;box-shadow:none}
.coloring-options .year-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.coloring-options select{border:3px solid #1f2540;border-radius:12px;padding:10px;font-weight:600}
.coloring-options .row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.coloring-options .action{background:#ff6b5b;color:#fff;border:3px solid #1f2540;box-shadow:4px 4px 0 #1f2540;border-radius:14px;font-weight:800;padding:12px 20px;cursor:pointer}
.coloring-options .action:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 #1f2540}
