/* ===== Nowe światy: atlas 2.0, Żywa Tradycja, Echa Czasu ===== */

/* --- strona główna: podgląd świata + rząd medalionów --- */
.caption .rail{display:flex;justify-content:center;gap:clamp(5px,1vw,12px);margin:4px auto 0;pointer-events:auto}
.rm{position:relative;width:clamp(32px,8.4vw,50px);aspect-ratio:1;border-radius:50%;padding:0;border:1px solid rgba(255,226,160,.35);background:#0b0d10;overflow:visible;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}
.rm img{width:100%;height:100%;border-radius:50%;object-fit:cover;filter:saturate(.75) brightness(.7);transition:filter .3s}
.rm i{position:absolute;left:50%;bottom:-15px;transform:translateX(-50%);font:500 8.5px/1 'JetBrains Mono',monospace;font-style:normal;letter-spacing:.08em;color:var(--muted);white-space:nowrap;transition:color .3s}
.rm.ex{border-color:hsl(var(--hh) 80% 65% / .7);box-shadow:0 0 14px hsl(var(--hh) 90% 55% / .35)}
.rm.ex::after{content:'';position:absolute;inset:-5px;border-radius:50%;border:1px dashed hsl(var(--hh) 80% 70% / .45);animation:rmOrbit 14s linear infinite}
@keyframes rmOrbit{to{transform:rotate(360deg)}}
.rm:hover,.rm:focus-visible,.rm.hl{transform:translateY(-6px) scale(1.18);border-color:hsl(var(--hh) 85% 70%);box-shadow:0 0 22px hsl(var(--hh) 90% 60% / .6);outline:none}
.rm:hover img,.rm.hl img{filter:none}
.rm:hover i,.rm.hl i{color:var(--ink)}
.caption .rail-hint{margin-top:22px;pointer-events:auto}
.w.hl path,.w.hl circle.hit{fill:rgba(111,243,232,.16);stroke:rgba(111,243,232,.85);stroke-width:2}
body.pvon .w .tag{opacity:0!important}
/* podgląd: obok pieczęci, gdy jest miejsce — inaczej wysuwa się od dołu */
.pv{position:fixed;z-index:16;top:43%;left:calc(50% + var(--sr,240px) + 3vw);width:min(360px,calc(50vw - var(--sr,240px) - 6vw));transform:translate(14px,-50%);opacity:0;transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1);border-radius:16px;overflow:hidden;background:rgba(5,7,11,.88);border:1px solid hsl(var(--h) 70% 60% / .4);box-shadow:0 30px 80px -20px hsl(var(--h) 90% 45% / .45);backdrop-filter:blur(10px)}
.pv.on{opacity:1;transform:translate(0,-50%)}
.pv-media{position:relative;aspect-ratio:16/9;cursor:pointer;background:#000;overflow:hidden}
.pv-media img,.pv-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pv-media video{opacity:0;transition:opacity .5s}
.pv.vid .pv-media video{opacity:1}
.pv-live{position:absolute;left:10px;top:9px;font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:#fff;padding:3px 8px;border-radius:99px;background:rgba(0,0,0,.5)}
.pv-live::before{content:'●';color:#ff4d4d;margin-right:6px;animation:sealPulse 1.4s infinite}
.pv-txt{padding:14px 16px 16px}
.pv-txt small{display:block;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--acc)}
.pv-txt h2{font:400 clamp(24px,2.2vw,32px)/1.05 'Cormorant Garamond',serif;margin:6px 0}
.pv-txt p{font-size:12.5px;line-height:1.5;color:#cfc8b6;margin-bottom:12px}
.pv-txt .btn{padding:11px 16px}
.pv-hint{display:block;margin-top:8px;font-size:9px;letter-spacing:.12em;color:var(--muted)}
.pv-x{position:absolute;right:6px;top:4px;z-index:2;width:30px;height:30px;font-size:20px;color:#fff;text-shadow:0 1px 4px #000;display:none}
.film .pv,.inworld .pv{display:none}
@media (max-width:1100px){
  .pv{top:auto;left:12px;right:12px;width:auto;bottom:calc(var(--bar) + 3vh + 96px);transform:translateY(20px);display:grid;grid-template-columns:44% 1fr;max-width:620px;margin:0 auto}
  .pv.on{transform:none}
  .pv-media{aspect-ratio:auto;min-height:100%}
  .pv-txt{padding:12px 14px}
  .pv-txt p{font-size:11.5px;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .pv-x{display:block}
  .pv-hint{display:none}
  body.pvon .caption h1,body.pvon .caption .rail-hint{opacity:0}
}
@media (max-width:520px){.pv{grid-template-columns:1fr}.pv-media{aspect-ratio:16/9}}
.bar.bot>span:first-child{flex:1;min-width:0;margin-right:14px}.bar.bot .langs{flex:none}
#world[data-w="trad"] .wbg img,#world[data-w="echa"] .wbg img{filter:brightness(.8)}

/* ===================== ATLAS 2.0 ===================== */
.at2{--g:#ffd68c}
.at2-stage{position:relative;display:grid;grid-template-columns:1fr 0;transition:grid-template-columns .5s cubic-bezier(.2,.8,.2,1)}
.at2.carded .at2-stage{grid-template-columns:1fr 340px}
.at2-view{position:relative;aspect-ratio:16/9;overflow:hidden;cursor:grab;touch-action:none;background:#0b0d10;outline:none}
.at2-view.drag{cursor:grabbing}
.at2.adding .at2-view{cursor:crosshair}
.at2-map{position:absolute;inset:0;transform-origin:0 0;--z:1;--age:0}
.at2-map.anim{transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.at2-map>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;filter:sepia(calc(var(--age) * .9)) brightness(calc(1 - var(--age) * .18)) contrast(calc(1 + var(--age) * .08));transition:filter .4s}
.at2-tint{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 45%,rgba(40,22,6,.75));opacity:calc(var(--age) * .9)}
.ap,.aph,.avo,.am{position:absolute;transform:translate(-50%,-50%) scale(calc(1 / var(--z)));transform-origin:center}
.ap{width:30px;height:30px;display:grid;place-items:center;opacity:0;transition:opacity .5s,filter .4s}
.at2.built .ap{opacity:1;transition-delay:var(--d)}
.ap i{width:12px;height:12px;border-radius:50%;background:var(--g);box-shadow:0 0 0 4px rgba(255,214,140,.22),0 0 16px var(--g);transition:transform .3s,background .3s}
.ap.c-sac i{--g:#ffd68c}.ap.c-dom i{background:#ff9f6e;box-shadow:0 0 0 4px rgba(255,159,110,.22),0 0 16px #ff9f6e}
.ap.c-pra i{background:#9fe08a;box-shadow:0 0 0 4px rgba(159,224,138,.22),0 0 16px #9fe08a}.ap.c-nat i{background:#6fd3f3;box-shadow:0 0 0 4px rgba(111,211,243,.22),0 0 16px #6fd3f3}
.ap.minor i{width:8px;height:8px}
.ap span{position:absolute;left:24px;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:10px;letter-spacing:.06em;color:#fff;text-shadow:0 1px 6px #000,0 0 2px #000;pointer-events:none;transition:opacity .3s}
.ap.minor span,.ap.nolab span{opacity:0}
.at2.zoomed .ap.minor span,.at2.zoomed .ap.nolab span,.ap:hover span,.ap:focus-visible span,.ap.sel span{opacity:1}
.ap:hover i,.ap.sel i{transform:scale(1.5)}
.ap.sel i{background:var(--cyan);box-shadow:0 0 0 6px rgba(111,243,232,.25),0 0 24px var(--cyan)}
.ap[data-s=future]{opacity:.15!important}
.ap[data-s=future] span{opacity:0!important}
.ap[data-s=gone] i{background:transparent!important;border:1.5px dashed #c9b28a;box-shadow:none!important}
.ap[data-s=gone] span{color:#cbbfa6;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.5)}
.at2.hide-sac .c-sac,.at2.hide-dom .c-dom,.at2.hide-pra .c-pra,.at2.hide-nat .c-nat{display:none}
.at2-photos,.at2-voices{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .5s}
.at2.show-photos .at2-photos,.at2.show-voices .at2-voices{opacity:1}
.at2.show-photos .aph,.at2.show-voices .avo{pointer-events:auto}
.aph{width:74px;padding:3px 3px 4px;background:#f3ead6;border-radius:2px;box-shadow:0 8px 20px rgba(0,0,0,.6);margin-top:-52px}
.aph img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:sepia(.5)}
.aph:nth-child(odd){rotate:-4deg}.aph:nth-child(even){rotate:5deg}
.aph:hover{z-index:3;scale:1.25}
.aph[data-s=future]{opacity:.2}
.avo{width:38px;height:38px;border-radius:50%;background:rgba(111,243,232,.15);border:1px solid var(--cyan);color:var(--cyan);font-size:15px;box-shadow:0 0 20px rgba(111,243,232,.5);margin:26px 0 0 26px}
.avo span{position:absolute;left:44px;top:11px;font-size:10px;white-space:nowrap;color:var(--cyan);text-shadow:0 1px 4px #000}
.am{width:26px;height:26px;border-radius:50%;background:rgba(255,94,138,.2);border:1px solid #ff5e8a;color:#ff8fae;font-size:12px;display:grid;place-items:center;box-shadow:0 0 16px rgba(255,94,138,.6);animation:pop .4s}
.am i{font-style:normal}
.am span{position:absolute;left:30px;font-size:9px;color:#ffc2d2;text-shadow:0 1px 4px #000;white-space:nowrap}
.at2-ring{position:absolute;width:70px;height:70px;margin:-35px 0 0 -35px;border-radius:50%;border:2px solid var(--cyan);opacity:0;pointer-events:none;transform:scale(calc(1 / var(--z)))}
.at2-ring.on{animation:atRing 1.6s ease-out}
@keyframes atRing{0%{opacity:1;scale:.3}100%{opacity:0;scale:1.8}}
.at2-hud{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:flex-start;padding:14px 16px;pointer-events:none;background:linear-gradient(rgba(4,6,10,.75),transparent)}
.at2-hud>*{pointer-events:auto}
.at2-year b{display:block;font:400 clamp(30px,4vw,52px)/1 'Cormorant Garamond',serif;color:var(--gold);text-shadow:0 2px 20px #000}
.at2-year span{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#d9cfb8;text-shadow:0 1px 6px #000}
.at2-tools{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.at2-tools button{padding:7px 12px;border-radius:99px;font-size:10px;letter-spacing:.08em;color:var(--ink);background:rgba(4,6,10,.7);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(6px);transition:all .25s}
.at2-tools button:hover,.at2-tools button.on{border-color:var(--gold);background:rgba(217,173,98,.2)}
.at2-tools .zm{display:flex;gap:4px}
.at2-tools .zm button{width:30px;padding:7px 0;font-size:13px}
.at2-feed{position:absolute;left:16px;bottom:14px;max-width:min(380px,70%);padding:12px 14px;border-radius:10px;background:rgba(4,6,10,.88);border:1px solid var(--gold);box-shadow:0 12px 40px rgba(0,0,0,.6);opacity:0;transform:translateY(10px);transition:opacity .4s,transform .4s;pointer-events:none}
.at2-feed.on{opacity:1;transform:none;pointer-events:auto}
.at2-feed time{font:400 26px/1 'Cormorant Garamond',serif;color:var(--gold)}
.at2-feed p{margin:4px 0 8px;font-size:12px;line-height:1.45;color:#e7e1d1}
.at2-feed button{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);margin-right:14px}
.at2-hint{position:absolute;right:14px;bottom:12px;font-size:9px;letter-spacing:.14em;color:rgba(255,255,255,.55);text-shadow:0 1px 4px #000;pointer-events:none}
.at2.carded .at2-hint{display:none}
.at2-card{position:relative;overflow:auto;max-height:100%;background:#0a0c10;border-left:1px solid rgba(255,214,140,.25);padding:0;opacity:0;transition:opacity .4s}
.at2-card.on{opacity:1;padding:18px 18px 16px}
.at2-card .x{position:absolute;right:10px;top:8px;font-size:22px;color:var(--muted);z-index:2;width:30px;height:30px}
.at2-card figure{margin:-18px -18px 14px;position:relative}
.at2-card figure img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;animation:atDev 1.4s ease-out}
@keyframes atDev{from{filter:brightness(2.2) contrast(.4) blur(3px)}}
.at2-card figcaption{position:absolute;left:10px;bottom:8px;font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:#f3ead6;text-shadow:0 1px 4px #000}
.at2-card .cat{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.at2-card .cat i{width:8px;height:8px;border-radius:50%;background:#ffd68c}
.at2-card .cat.c-dom i{background:#ff9f6e}.at2-card .cat.c-pra i{background:#9fe08a}.at2-card .cat.c-nat i{background:#6fd3f3}.at2-card .cat.c-mem i{background:#ff5e8a}
.at2-card h3{margin:8px 0 6px;font:400 26px/1.1 'Cormorant Garamond',serif;color:var(--ink)}
.at2-card .st{display:block;font-style:normal;font-size:10px;letter-spacing:.06em;margin-bottom:10px}
.at2-card .st.h{color:#9fe08a}.at2-card .st.f{color:#6fd3f3}.at2-card .st.g{color:#e0a07a}
.at2-card p{font-size:13px;line-height:1.6;color:#d8d2c2}
.at2-card .tr{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}
.at2-card .tr small{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.at2-card .tr li{list-style:none;font-size:11.5px;color:#bdb6a5;margin-top:6px;padding-left:14px;position:relative}
.at2-card .tr li::before{content:'▸';position:absolute;left:0;color:var(--gold)}
.at2-card .btns{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}
.at2-card .go,.at2-card .ghost{padding:9px 14px;border-radius:99px;font-size:10px;letter-spacing:.12em;color:var(--ink);border:1px solid var(--cyan);background:rgba(111,243,232,.1)}
.at2-card .ghost{border-color:rgba(255,255,255,.2);background:none}
.at2-card .nav{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted)}
.at2-card .nav button{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.15);color:var(--ink)}
.at2-card .memtxt{font:italic 400 18px/1.45 'Cormorant Garamond',serif;color:var(--ink);margin-top:10px}
.at2-card .fine{font-size:10.5px;color:var(--muted);margin-top:10px}
.mf textarea,.mf input{width:100%;margin-top:8px;padding:10px;border-radius:8px;background:#11141a;border:1px solid rgba(255,255,255,.15);color:var(--ink);font:inherit;font-size:13px;resize:vertical}
.mf label{display:block;margin-top:10px;font-size:10px;letter-spacing:.1em;color:var(--muted)}
.mf input{width:110px;display:inline-block;margin-left:8px}
.at2-ctl{display:grid;gap:14px;padding:16px 18px;background:rgba(0,0,0,.45);border-top:1px solid rgba(255,255,255,.06)}
.at2-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.at2-chips button{display:flex;align-items:center;gap:7px;padding:7px 12px;border-radius:99px;border:1px solid rgba(255,255,255,.12);font-size:11px;color:var(--muted);transition:all .25s}
.at2-chips button i{width:8px;height:8px;border-radius:50%;background:#ffd68c}
.at2-chips .c-dom i{background:#ff9f6e}.at2-chips .c-pra i{background:#9fe08a}.at2-chips .c-nat i{background:#6fd3f3}
.at2-chips button.on,.at2-chips button[aria-pressed=true]{color:var(--ink);border-color:var(--gold);background:rgba(217,173,98,.12)}
.at2-chips .sep{width:1px;height:20px;background:rgba(255,255,255,.12);margin:0 4px}
.at2-time{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.at2-play{width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);font-size:14px;background:rgba(217,173,98,.1);transition:all .25s}
.at2-play:hover,.at2.playing .at2-play{background:var(--gold);color:#000}
.at2-range{position:relative;padding:6px 0 20px}
.at2-range input{width:100%;accent-color:var(--gold);position:relative;z-index:2}
.at2-ticks{position:absolute;left:8px;right:8px;top:0;height:30px;pointer-events:none}
.at2-ticks button{position:absolute;top:0;width:3px;height:9px;margin-left:-1.5px;background:var(--cyan);border-radius:2px;pointer-events:auto;opacity:.75}
.at2-ticks button:hover{opacity:1;transform:scaleY(1.5)}
.at2-scale{position:absolute;left:8px;right:8px;bottom:0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:var(--muted)}
@media (max-width:900px){
  .at2-stage,.at2.carded .at2-stage{grid-template-columns:1fr}
  .at2-view{aspect-ratio:4/3}
  .at2-card{border-left:0;border-top:1px solid rgba(255,214,140,.25);max-height:none}
  .at2-card:not(.on){display:none}
  .at2-tools button[data-a=tour],.at2-tools button[data-a=add]{padding:6px 9px;font-size:9px}
  .at2-hint{display:none}
  .at2-feed{left:10px;right:10px;max-width:none;bottom:10px}
  .ap span{font-size:9px}
}

/* ===================== ŻYWA TRADYCJA: skrzynia strojów ===================== */
.sj-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid rgba(255,255,255,.08)}
.sj-tabs button{padding:14px 10px;text-align:left;border-right:1px solid rgba(255,255,255,.06);color:var(--muted);transition:all .3s;position:relative}
.sj-tabs button b{display:block;font:400 20px/1.1 'Cormorant Garamond',serif;color:var(--ink)}
.sj-tabs button small{font-size:9px;letter-spacing:.08em}
.sj-tabs button.on{background:linear-gradient(rgba(224,65,58,.16),transparent)}
.sj-tabs button.on::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#e0413a}
.sj-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.sj-fig{position:relative;aspect-ratio:1000/1340;overflow:hidden;background:#0d0f12;margin:0}
.sj-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sj-fig .arch{filter:grayscale(1) sepia(.55) contrast(1.15) brightness(.92) blur(.6px);clip-path:inset(0 calc(100% - var(--cut)) 0 0)}
.sj-fig.in .col{animation:sjIn 1s ease-out}
@keyframes sjIn{from{opacity:0;transform:scale(1.04)}}
.sj-fig::after{content:'';position:absolute;top:0;bottom:0;left:var(--cut);width:2px;margin-left:-1px;background:#f3ead6;box-shadow:0 0 18px rgba(255,240,200,.8);pointer-events:none}
.sj-cut{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:1}
.sj-fig .lab{position:absolute;bottom:12px;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:#f3ead6;text-shadow:0 1px 4px #000;pointer-events:none}
.sj-fig .lab.l{left:12px}.sj-fig .lab.r{right:12px}
.sj-hot{position:absolute;inset:0;z-index:2;pointer-events:none}
.sj-hot button{position:absolute;width:30px;height:30px;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:auto;animation:pop .4s var(--d) backwards}
.sj-hot i{width:12px;height:12px;border-radius:50%;background:#fff3d6;box-shadow:0 0 0 4px rgba(255,243,214,.3),0 0 18px #ffcf7a;animation:sealPulse 2.2s infinite}
.sj-hot button.on i{background:#e0413a;box-shadow:0 0 0 6px rgba(224,65,58,.35),0 0 24px #e0413a}
.sj-side{padding:22px 24px;display:flex;flex-direction:column;gap:12px}
.sj-when{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#e0413a}
.sj-name{font:400 clamp(30px,3.4vw,46px)/1 'Cormorant Garamond',serif}
.sj-desc{font-size:13.5px;line-height:1.6;color:#cfc8b6}
.sj-det{min-height:96px;padding:14px 16px;border-radius:12px;background:rgba(224,65,58,.07);border:1px solid rgba(224,65,58,.3);animation:pop .3s}
.sj-det b{font:400 22px/1.1 'Cormorant Garamond',serif;color:#ffd9b0}
.sj-det p{font-size:13px;line-height:1.55;color:#e1dacb;margin-top:6px}
.sj-det .hint{color:var(--muted);font-size:12px;margin:0}
.sj-list{display:flex;flex-wrap:wrap;gap:6px}
.sj-list button{padding:6px 10px;border-radius:99px;font-size:10.5px;color:var(--muted);border:1px solid rgba(255,255,255,.12);transition:all .25s}
.sj-list button:hover,.sj-list button.on{color:var(--ink);border-color:#e0413a;background:rgba(224,65,58,.12)}
.sj-audio{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.35)}
.sj-audio .k{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-right:6px}
.sj-audio button{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;text-align:left;padding:8px 14px 8px 8px;border-radius:99px;border:1px solid rgba(255,255,255,.14);transition:all .25s}
.sj-audio button i{grid-row:span 2;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11px;background:rgba(224,65,58,.2);color:#ffb3a8}
.sj-audio button b{font-weight:400;font-size:12px;color:var(--ink)}
.sj-audio button small{font-size:9.5px;color:var(--muted)}
.sj-audio button.on{border-color:#e0413a;background:rgba(224,65,58,.12)}
.sj-audio .bars{display:flex;gap:3px;align-items:flex-end;height:22px;margin-left:auto;opacity:.25}
.sj-audio .bars i{width:3px;height:30%;background:#e0413a;border-radius:2px}
.sj-audio.on .bars{opacity:1}
.sj-audio.on .bars i{animation:sjBar .8s ease-in-out infinite alternate}
.sj-audio .bars i:nth-child(2){animation-delay:.1s}.sj-audio .bars i:nth-child(3){animation-delay:.3s}.sj-audio .bars i:nth-child(4){animation-delay:.15s}.sj-audio .bars i:nth-child(5){animation-delay:.4s}.sj-audio .bars i:nth-child(6){animation-delay:.05s}.sj-audio .bars i:nth-child(7){animation-delay:.25s}
@keyframes sjBar{to{height:100%}}
@media (max-width:900px){
  .sj-tabs{grid-template-columns:repeat(5,minmax(110px,1fr));overflow-x:auto}
  .sj-main{grid-template-columns:1fr}
  .sj-side{padding:18px 16px}
}

/* --- wycinanka --- */
.wy{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);background:radial-gradient(circle at 35% 50%,#f4ecdb 0,#e8dcc2 60%,#cdbd9b 100%)}
.wy-stage{position:relative;display:grid;place-items:center;padding:22px;min-height:340px}
.wy canvas{width:100%;max-width:560px;aspect-ratio:1;touch-action:none;cursor:crosshair}
.wy-hint{position:absolute;bottom:14px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.14em;color:#6e5d43;transition:opacity .5s;pointer-events:none}
.wy-hint.off{opacity:0}
.wy-ctl{padding:24px 22px;background:#0b0d10;display:flex;flex-direction:column;gap:14px}
.wy-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wy-row small{width:72px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.wy-row input[type=range]{flex:1;accent-color:#e0413a}
.wy .sw{width:30px;height:30px;border-radius:50%;background:var(--c);border:2px solid rgba(255,255,255,.15);transition:transform .2s}
.wy .sw.on{border-color:#fff;transform:scale(1.15)}
.wy .fd{width:36px;height:30px;border-radius:8px;border:1px solid rgba(255,255,255,.15);font-size:12px;color:var(--muted)}
.wy .fd.on{border-color:#e0413a;color:var(--ink);background:rgba(224,65,58,.15)}
.wy-row.btns button{padding:9px 13px;border-radius:99px;border:1px solid rgba(255,255,255,.15);font-size:10.5px;color:var(--ink);transition:all .25s}
.wy-row.btns button:hover{border-color:#e0413a;background:rgba(224,65,58,.12)}
.wy-note{font-size:12px;line-height:1.6;color:var(--muted);margin-top:auto}
@media (max-width:900px){.wy{grid-template-columns:1fr}.wy-stage{padding:14px}}

/* ===================== ECHA CZASU: wehikuł ===================== */
.wh-screen{position:relative;aspect-ratio:16/9;overflow:hidden;background:#020409}
.wh-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04)}
.wh-screen.landed .wh-img{animation:whKb 22s ease-out forwards,whIn 1.2s ease-out}
@keyframes whKb{from{transform:scale(1.14)}to{transform:scale(1.03)}}
@keyframes whIn{from{filter:brightness(3) saturate(0) blur(6px)}}
.wh-warp{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.wh-screen.warping .wh-card,.wh-screen.warping .wh-hud{opacity:0}
.wh-hud{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;padding:12px 16px;font:400 10px/1 'JetBrains Mono',monospace;letter-spacing:.14em;color:#9fd4ff;text-shadow:0 1px 6px #000;background:linear-gradient(rgba(2,4,9,.7),transparent);transition:opacity .4s;z-index:3}
.wh-card{position:absolute;left:18px;bottom:18px;width:min(430px,calc(100% - 36px));padding:16px 18px;border-radius:14px;background:rgba(3,6,14,.82);border:1px solid rgba(95,184,255,.4);backdrop-filter:blur(8px);box-shadow:0 20px 60px rgba(0,0,0,.6);transition:opacity .4s;z-index:3}
.wh-screen.landed .wh-card{animation:pop .6s .4s backwards}
.wh-card .when{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#5fb8ff}
.wh-card h3{font:400 28px/1.1 'Cormorant Garamond',serif;margin:6px 0}
.wh-card .d{font-size:13px;line-height:1.55;color:#d8d2c2}
.wh-card .s{font-size:11px;line-height:1.5;color:#8fa6bd;margin-top:8px;font-style:italic}
.wh-card .btns{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.wh-card .btns:empty{display:none}
.wh-card .btns button{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}
.wh-badge{position:absolute;right:14px;bottom:12px;font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);text-shadow:0 1px 4px #000;z-index:3}
.wh-console{padding:18px 20px;background:linear-gradient(#070b14,#04060a);border-top:1px solid rgba(95,184,255,.25);display:grid;grid-template-columns:auto 1fr;gap:10px 24px;align-items:center}
.wh-year small{display:block;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.wh-year b{display:block;min-width:150px;font:400 clamp(32px,4vw,48px)/1 'Cormorant Garamond',serif;color:#ffd68c;text-shadow:0 0 24px rgba(255,214,140,.5)}
.wh-dial{position:relative;padding:8px 0 26px}
.wh-dial .track{position:absolute;left:8px;right:8px;top:16px;height:4px;border-radius:2px;background:rgba(255,255,255,.1)}
.wh-dial .glow{position:absolute;left:0;top:0;bottom:0;border-radius:2px;background:linear-gradient(90deg,#5fb8ff,#ffd68c);box-shadow:0 0 14px #5fb8ff}
.wh-dial .track button{position:absolute;top:-6px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:#0b111c;border:1px solid #5fb8ff;z-index:3}
.wh-dial .track button i{position:absolute;inset:4px;border-radius:50%;background:#5fb8ff;opacity:.4}
.wh-dial .track button.on i{opacity:1;background:#ffd68c;box-shadow:0 0 12px #ffd68c}
.wh-dial .track button span{position:absolute;top:20px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;letter-spacing:.06em;color:var(--muted)}
.wh-dial .track button.on span{color:#ffd68c}
.wh-dial input{width:100%;position:relative;z-index:2;opacity:0;height:24px;cursor:pointer}
.wh-go{grid-column:1/-1;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.wh-go label{font-size:10px;letter-spacing:.1em;color:var(--muted)}
.wh-go input{width:110px;margin-left:8px;padding:9px 10px;border-radius:8px;background:#0d1320;border:1px solid rgba(95,184,255,.35);color:var(--ink);font:inherit;font-size:14px}
.wh-go .go,.zg .go{padding:11px 20px;border-radius:99px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#04060a;background:linear-gradient(90deg,#ffd68c,#ffb85c);box-shadow:0 0 24px rgba(255,190,90,.45);transition:transform .2s}
.wh-go .go:hover,.zg .go:hover{transform:translateY(-2px)}
.wh-go .nav{display:flex;gap:6px;margin-left:auto}
.wh-go .nav button{padding:9px 12px;border-radius:99px;border:1px solid rgba(95,184,255,.35);font-size:10.5px;color:var(--ink)}
.wh-msg{grid-column:1/-1;font-size:12px;color:#9fd4ff;min-height:1em}
@media (max-width:900px){
  .wh-screen{aspect-ratio:3/4}
  .wh-console{grid-template-columns:1fr}
  .wh-dial .track button span{display:none}
  .wh-dial .track button.on span{display:block}
  .wh-go .nav{margin-left:0}
  .wh-card{left:10px;right:10px;bottom:10px;width:auto}
  .wh-badge{top:36px;bottom:auto;right:10px}
}

/* --- gra: który to rok --- */
.zg{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.zg-img{position:relative;margin:0;aspect-ratio:16/10;overflow:hidden;background:#020409}
.zg-img img{width:100%;height:100%;object-fit:cover;animation:whIn 1s ease-out}
.zg-res{position:absolute;left:12px;right:12px;bottom:12px;padding:12px 14px;border-radius:10px;background:rgba(3,6,14,.86);font-size:12px;color:#d8d2c2;opacity:0;transform:translateY(8px);transition:all .4s}
.zg-res:empty{display:none}
.zg.shown .zg-res,.zg-res.fin{opacity:1;transform:none}
.zg-res b{display:block;font:400 22px/1.1 'Cormorant Garamond',serif;color:var(--ink);margin-bottom:4px}
.zg-res.ok{border:1px solid #9fe08a}.zg-res.mid{border:1px solid #ffd68c}.zg-res.bad{border:1px solid #e0907a}.zg-res.fin{border:1px solid #ffd68c;text-align:center}
.zg-ctl{padding:22px;display:flex;flex-direction:column;gap:14px;justify-content:center}
.zg-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.zg-top b{color:var(--ink)}
.zg-y b{font:400 44px/1 'Cormorant Garamond',serif;color:#ffd68c}
.zg-ctl input{width:100%;accent-color:#5fb8ff}
.zg-sc{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.06em;color:var(--muted)}
.zg .go{align-self:flex-start}
@media (max-width:900px){.zg{grid-template-columns:1fr}}
