/* Shared visual system: all public page templates inherit this through base. */
:root{color-scheme:dark;--bg:#0c0d19;--bg-2:#10111e;--panel:#171827;--panel-2:#201e34;--ink:#f4f2fb;--muted:#b9b4ca;--muted-2:#a09aaf;--primary:#b7a0ff;--primary-2:#9279ce;--accent:#f2d391;--accent-2:#dbb873;--success:#89efd0;--pop:#dd9ebf;--pop-2:#89efd0;--mint:#89efd0;--line:#c6bdeb24;--line-strong:#b29dce4d;--shadow:0 10px 30px #0002;--shadow-lg:0 20px 60px #0005;--font-h:'Manrope',system-ui,sans-serif;--font:'Manrope',system-ui,sans-serif;--maxw:1248px}
html{scroll-padding-top:108px}body{background:var(--bg)}body:before{display:none}h1,h2,h3{letter-spacing:-.04em}button,input,select,textarea{font:inherit}button{touch-action:manipulation}img{max-width:100%}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--mint);outline-offset:4px}.e8k-symbols{position:absolute;width:0;height:0;overflow:hidden}.e8k-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip-link{position:fixed;left:16px;top:-100px;z-index:200;background:var(--mint);color:#102b28;padding:12px 20px}.skip-link:focus{top:12px}
header.nav,header.nav.scrolled{position:sticky;background:#0c0d19fa;border-bottom:1px solid var(--line);backdrop-filter:none;box-shadow:none;transition:none}.nav-inner{height:88px;gap:25px}.logo{flex-shrink:0}.logo img{display:block;width:218px;height:auto}.nav-links{gap:22px}.nav-links a{font-size:12px}.nav-right{gap:13px}.nav-account-link{font-size:12px}.nav-cta-desktop,.nav-streak{display:none}.nav-toggle{background:var(--panel);color:var(--ink);min-width:42px}.nav-dropdown-inner{background:var(--panel);box-shadow:var(--shadow-lg)}.nav-dropdown:focus-within .nav-dropdown-panel{display:block}.mobile-menu{top:88px;background:#131321;backdrop-filter:none;max-height:calc(100dvh - 88px);overflow-y:auto;visibility:hidden}.mobile-menu.open{visibility:visible}.mobile-menu a{padding-block:12px}.btn{border-radius:10px;transition:transform .18s,background-color .18s;border:1px solid transparent}.btn-primary{background:var(--mint);color:#102b28;box-shadow:0 4px 24px #75ebc619}.btn-primary:hover{background:#a5f7df;color:#102b28;box-shadow:0 5px 26px #75ebc625}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}.btn-accent{box-shadow:none}.eyebrow{font-size:10px;letter-spacing:.14em;background:#b7a0ff0a;border-color:var(--line);color:var(--primary)}.eyebrow:before{background:var(--mint)}.grad{background:none;color:var(--mint)}.blk{padding-block:75px}.blk.alt{background:#11111f}.sec-head{margin-bottom:32px}.sec-head h2{font-size:clamp(28px,3vw,40px)}.hero{padding:65px 0 58px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 90% 0%,#7255a724,transparent 65%)}.hero h1{font-size:clamp(36px,4.4vw,60px);max-width:830px}.hero .lead{font-size:16px;line-height:1.85}.hero-grid-single .hero-copy{max-width:850px}.subhead{padding-top:55px}.hero-stats{color:var(--muted)}.visual-decor{display:none}.countdown-card{background:#171827eb;border-color:var(--line-strong)}.cd-unit{background:#ffffff06}.cd-head .ic{background:var(--panel-2)!important;color:var(--accent)!important}
/* Subject illustrations are static WebP: no video, parallax or canvas loop. */
.page-matematyka .hero,.page-polski .hero,.page-angielski .hero{background:linear-gradient(90deg,#0c0d19 10%,#0c0d19ed 42%,#0c0d1938),var(--world-art) right center/cover no-repeat}.page-matematyka{--world-art:url('../images/magic/math.webp')}.page-polski{--world-art:url('../images/magic/polish.webp')}.page-angielski{--world-art:url('../images/magic/english.webp')}.page-matematyka .hero-copy{max-width:730px}.page-polski .hero,.page-angielski .hero{background-position:right center}.hero-parent-note{font-size:14px;max-width:850px;color:var(--muted);line-height:1.85}
footer{background:#10111d;border-top:1px solid var(--line)}.foot-brand .logo img{width:225px}.foot-col a{color:var(--muted)}.bottom-nav{background:#11111ff5;border-color:var(--line);box-shadow:none;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav-item{color:var(--muted)}.bottom-nav-item.active{color:var(--mint)}.modal,.tycik-panel,.classpicker-panel,.exam-picker-panel{background:var(--panel);color:var(--ink);border:1px solid var(--line-strong)}.modal .close,.tycik-close{background:var(--panel-2);color:var(--ink)}.cookie-banner{background:#171827f7;border-color:var(--line-strong);backdrop-filter:none}.cookie-banner p{color:var(--muted)}.tycik-fab,.niko-fab{animation:none;background:var(--panel-2);border:1px solid var(--line-strong);box-shadow:0 8px 25px #0003}.tycik-bubble,.niko-bubble{color:var(--ink)}.niko-xp-badge,.study-item.is-now .dot{animation:none}.classpicker-fab{background:var(--panel-2);color:var(--mint);border:1px solid var(--line-strong)}.tycik-login-links .btn-primary{color:#102b28}.tycik-player-card,.tycik-challenge,.tycik-analysis,.tycik-badge-detail{background:#ffffff05}.tycik-panel-title span,.tycik-player-title{color:var(--muted)}.modal-avatar{background:var(--panel)}.character-collection-head h3{color:var(--ink)}.character-collection-head p{color:var(--muted)}.shop-item,.shop-item-base{background:var(--panel-2);color:var(--ink);border-color:var(--line)}.shop-item-base.selected{border-color:var(--mint)}.shop-item-name,.shop-item-desc{color:var(--ink)}
/* Clear answer states and readable forms across learning, account and checkout. */
input,textarea,select{color-scheme:dark}.e8k-form input,.e8k-form textarea,.e8k-form select,.gate-form input,.konto-auth-card input{background:var(--bg-2);color:var(--ink);border-color:var(--line-strong)}.qr-box{background:#fff;color:#000}.lib-tab.active,.grade-tab.active,.temat-badge,.exammap-node.exammap-final,.study-item.is-now .card h4:after{background:#514074;color:#fff}.wariant-tab.active{background:var(--accent);color:#231a02}.recent-new{background:var(--mint);color:#102b28}.prose{line-height:1.9}.prose a{text-decoration:underline;text-underline-offset:3px;color:var(--primary)}.prose table{display:block;max-width:100%;overflow:auto}.prose pre{overflow:auto}.prose h2{margin-top:1.6em}.tycik-avatar,.niko-avatar{flex-shrink:0}
/* The home mission remains the existing personalized mission, with its real links. */
.page-default #zacznij-tutaj{padding:30px 0;background:var(--bg)}.page-default #zacznij-tutaj .wrap-narrow{max-width:1248px}.page-default #zacznij-tutaj .sec-head{margin-bottom:18px}.page-default #zacznij-tutaj .sec-head h2{font-size:28px}.page-default #zacznij-tutaj .sec-head p{font-size:13px}.page-default .daily-mission{max-width:none}.page-default .daily-card{background:linear-gradient(110deg,#172d2c,#191827);border:1px solid #89efd039;padding:25px}.page-default .daily-card h3{color:var(--ink)}.page-default .daily-desc{color:var(--muted)}.page-default .daily-meta{color:var(--mint)}.page-default .daily-personalized{color:var(--accent)}
/* Content is visible without JS. Only JS-armed, offscreen elements are revealed. */
.reveal{opacity:1;transform:none;transition:none}.reveal.motion-ready{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}.reveal.motion-ready.in{opacity:1;transform:none}
@media(hover:hover) and (pointer:fine){.world-node,.tutor-card,.arch-card,.recent-card{transition:transform .2s,border-color .2s}.world-node:hover,.tutor-card:hover,.arch-card:hover,.recent-card:hover{transform:translateY(-3px);border-color:var(--primary)}}
@media(max-width:1100px){.nav-links{display:none}.nav-toggle{display:grid}.nav-inner{gap:15px}.nav-right{margin-left:auto}.logo img{width:210px}}
@media(max-width:600px){html{scroll-padding-top:85px}.nav-inner{height:74px;gap:8px}.logo img{width:175px}.nav-right{gap:9px}.nav-account-link{font-size:11px}.nav-right .nav-account-link:nth-of-type(2){display:none}.nav-toggle{width:36px;min-width:36px;height:36px}.mobile-menu{top:74px;max-height:calc(100dvh - 144px)}.wrap{padding-inline:20px}.hero{padding:35px 0 40px}.hero h1{font-size:36px}.hero .lead{font-size:14px}.blk{padding-block:48px}.subhead{padding-top:35px}.sec-head h2{font-size:29px}.page-matematyka .hero,.page-polski .hero,.page-angielski .hero{background:linear-gradient(90deg,#0c0d19f5,#0c0d19bb),var(--world-art) center/cover no-repeat}.reveal.motion-ready{transform:translateY(8px);transition-duration:.28s}.tycik-widget,.niko-widget,.classpicker-widget{display:none}.tycik-widget.open{display:block}.tycik-panel{position:fixed;left:12px;right:12px;width:auto;bottom:80px;max-height:calc(100dvh - 105px)}.tycik-widget.open .tycik-fab{display:none}.classpicker-widget:has(.classpicker-panel:not([hidden])){display:block}.bottom-nav{min-height:65px}.bottom-nav-item{min-height:48px}.cookie-banner{bottom:65px}.cookie-inner{padding:15px 20px}.modal{max-height:calc(100dvh - 36px);overflow:auto}.page-default #zacznij-tutaj .daily-card{padding:22px 18px}.page-default #zacznij-tutaj .sec-head h2{font-size:25px}.page-default #zacznij-tutaj .sec-head p{font-size:12px}.page-default .daily-card h3{font-size:23px}.page-default .daily-desc{font-size:13px}.page-default .zacznij-tutaj-alt{font-size:11px}.backdrop,.zoe-note{backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.motion-ready{opacity:1;transform:none}}
@media print{body{background:#fff;color:#111}header.nav,footer,.bottom-nav,.tycik-widget,.niko-widget,.classpicker-widget,.cookie-banner{display:none!important}.reveal.motion-ready{opacity:1;transform:none}:root{--bg:#fff;--bg-2:#fff;--panel:#fff;--panel-2:#f5f5f5;--ink:#111;--muted:#444;--muted-2:#555;--line:#ddd;color-scheme:light}.hero{background:none!important}}
@media(min-width:601px){.tycik-bubble,.niko-bubble{display:none}.tycik-fab,.niko-fab{padding:7px;border-radius:50%;min-width:56px;min-height:56px}.tycik-fab:hover .tycik-bubble,.tycik-fab:focus-visible .tycik-bubble,.niko-fab:hover .niko-bubble,.niko-fab:focus-visible .niko-bubble{display:block}.tycik-fab:hover,.tycik-fab:focus-visible,.niko-fab:hover,.niko-fab:focus-visible{border-radius:32px;padding-right:18px}}
/* Shrink grid tracks instead of letting long Polish labels widen the viewport. */
.fiszki-list-compact{grid-template-columns:repeat(4,minmax(0,1fr))}.fiszka{min-width:0;overflow-wrap:anywhere}.arkusz-opts{grid-template-columns:repeat(2,minmax(0,1fr))}.arkusz-opt{min-width:0;overflow-wrap:anywhere}.arkusz-opts-compact{grid-template-columns:repeat(4,minmax(0,1fr))}.arkusz-opt.arkusz-wrong,.transform-feedback,.gate-alert.err{color:#ff9ba8}.arkusz-opt.picked .arkusz-opt-letter,.arkusz-q.arkusz-graded .arkusz-opt.arkusz-correct .arkusz-opt-letter{color:#102b28}
@media(min-width:640px){.fiszki-list-compact{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media(max-width:480px){.arkusz-opts{grid-template-columns:1fr}.arkusz-opts-compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.btn{white-space:normal;text-align:center;justify-content:center;max-width:100%}.kp-grid,.blog-grid,.zad-grid,.dzial-grid,.dzial-tematy,.dzial-cards-grid,.slowka-grid{grid-template-columns:minmax(0,1fr)}.zad-card,.kp-card{min-width:0;overflow-wrap:anywhere}.arkusz-q{padding-inline:14px}.hero h1{font-size:32px}.exammap-track{max-width:100%;overflow-x:auto}.hero-cta{align-items:stretch}.hero-cta .btn{width:100%}}
.page-toc{top:88px;background:#171827f5;backdrop-filter:none}.study-item .card-head{flex-wrap:wrap}.study-item .card-head h4{min-width:0;overflow-wrap:anywhere}
@media(max-width:600px){.page-toc{top:74px}.study-item .card{padding:15px}.study-item h4{font-size:15px}}
.castle-world-ic{display:grid;place-items:center;margin-inline:auto;color:var(--accent);background:radial-gradient(circle,#b7a0ff18,transparent 70%);width:62px;height:62px;border:1px solid var(--line-strong);border-radius:18px}.castle-world-ic .e8k-icon{width:32px;height:32px}.boss-ic .e8k-icon{width:34px;height:34px;color:var(--accent)}.subject-card .ic .e8k-icon{width:40px;height:40px}.role-card .ic .e8k-icon{width:30px;height:30px}
.gate-card,.role-card{background:linear-gradient(130deg,#242138,#171827);border:1px solid var(--line-strong);box-shadow:none}.gate-card .go,.role-card .go{color:var(--mint)}.gate-card .blob{opacity:.12}.gate-exam .ic{color:var(--accent)}.gate-klasy .ic{color:var(--mint)}
@media(hover:none){.btn:hover{transform:none;box-shadow:none}}

/* Shared original SVG icons: same vocabulary in Twig, async panels and maps. */
svg.e8k-icon{display:inline-block;width:1.15em;height:1.15em;min-width:1em;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;overflow:visible;flex-shrink:0}
.e8k-icon-trophy,.e8k-icon-coin,.e8k-icon-crown,.e8k-icon-chest{color:#f2d391}.e8k-icon-book,.e8k-icon-wand,.e8k-icon-boss,.e8k-icon-hat,.e8k-icon-gem{color:#b7a0ff}.e8k-icon-check,.e8k-icon-leaf,.e8k-icon-paw{color:#89efd0}.e8k-icon-fire,.e8k-icon-close{color:#f2aaa4}
.ciekawostki li::before{content:'';width:17px;height:20px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 16c0-3-4-4-3-9a7 7 0 0 1 14 0c1 5-3 6-3 9Zm0 3h8m-6 3h4' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat;color:#f2d391}
/* Four exam choices stay in a compact 2 × 2 grid, including narrow screens. */
[data-arkusz-quiz][data-subject="matematyka"] .arkusz-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
[data-arkusz-quiz][data-subject="matematyka"] .arkusz-opt{min-width:0;min-height:44px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:480px){[data-arkusz-quiz][data-subject="matematyka"] .arkusz-opt{padding:9px 8px;gap:6px}}
/* Adult resources remain in the parent shell; legacy widgets do not compete with the student's four destinations. */
.shell-student .tycik-widget,.shell-student .niko-widget,.shell-student .classpicker-widget,.shell-student .exam-picker-widget,.shell-student #kontakt-mat,.shell-student #cke-najtrudniejsze,.shell-student .gate-card,.shell-student .quickpick-grid,.shell-student .world-map,.shell-student [href*="korepetytorzy"],.shell-student [href*="misja-pro"],.shell-student [href*="cke.gov.pl"]{display:none!important}.shell-parent .tycik-widget,.shell-parent .niko-widget,.shell-parent .classpicker-widget{display:none!important}.shell-student .foot-grid{grid-template-columns:1fr}.shell-student .nav-links a{font-size:12px;letter-spacing:.06em}.shell-student .bottom-nav-item{font-size:10px}
.shell-student [id^="korepetytorzy"],.shell-student [id^="kontakt-"],.shell-student a[href^="#kontakt"],.shell-student a[href^="#korepetytorzy"],.shell-student a[href="#cke-najtrudniejsze"]{display:none!important}.adventure-route>li{scroll-margin-top:110px}
.role-choice{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:20px}.role-choice .btn{min-height:48px}.shell-student .nav-links a:focus-visible{outline:2px solid var(--mint);outline-offset:6px}
/* Stopka stron Porady (blog + artykuły) — ta sama kolorystyka co landing page,
   gdzie stylują ją reguły body.page-default w gaming-home.css. */
body.page-blog footer,body.page-item footer{background:#05060b;border-top:1px solid var(--line-strong);position:relative}
body.page-blog footer::before,body.page-item footer::before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#25f4c8 30%,#7c5cff 70%,transparent)}
body.page-blog .foot-col h5,body.page-item .foot-col h5{color:var(--mint);font-family:var(--font-h);letter-spacing:.18em}
body.page-blog .foot-col a:hover,body.page-item .foot-col a:hover{color:var(--mint)}
