/* Journey mode (Silk Road game layer): loaded only by /<lang>/sayohat/ pages. Own warm palette in light and dark mode. */
.jy{--sand:#F3E3C3;--sand2:#E7CFA0;--line:#D9BF8C;--ink:#2B2118;--brown:#6B4E1F;--blue:#1e55c8;--blue2:#16429e;--teal:#0B7C87;--gold:#E0A100;--gold2:#F2B705;--card:#FFFFFF;
  max-width:560px;margin:12px auto 24px;background:var(--sand);color:var(--ink);border-radius:24px;padding:16px 16px 20px;font-family:Nunito,system-ui,sans-serif;box-sizing:border-box}
@media (max-width:600px){.jy{margin:0;border-radius:0}}
.jy *{box-sizing:border-box}
.jy h1,.jy h2,.jy h3,#jy-sheet h2,#jy-sheet h3{font-family:"Bricolage Grotesque",Nunito,sans-serif;font-weight:800;color:var(--blue);margin:0;line-height:1.1}
.jy h1{font-size:30px}.jy h2{font-size:21px;margin-bottom:10px}
.jy-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.jy-tt small{display:block;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brown)}
.jy-me{display:flex;align-items:center;gap:6px;background:var(--card);border-radius:999px;padding:4px 12px 4px 4px;text-decoration:none;color:var(--ink);font-weight:800;box-shadow:0 2px 0 var(--line);min-height:44px}
.jy-av{width:40px;height:40px;display:block}.jy-av svg{width:40px;height:40px;display:block}
.jy-st{display:flex;align-items:center;gap:4px;font-size:16px}
.jy-star{width:18px;height:18px;fill:none;stroke:#B08A4A;stroke-width:1.6}.jy-star.on{fill:var(--gold);stroke:var(--gold)}
.jy-subs{display:flex;gap:8px;overflow-x:auto;padding:12px 2px 6px;margin:0 -2px;scrollbar-width:thin}
.jy-subs a{flex:0 0 auto;white-space:nowrap;text-decoration:none;font-weight:800;font-size:14px;border-radius:999px;padding:9px 14px;background:var(--card);color:var(--brown);border:1.5px solid var(--line)}
.jy-subs a[aria-current]{background:var(--blue);color:#fff;border-color:var(--blue)}
.jy-prog{margin-top:6px}
.jy-pt{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:700;color:var(--brown);margin-bottom:6px}
.jy-bar{height:12px;background:#E2C894;border-radius:999px;overflow:hidden}.jy-bar i{display:block;height:100%;background:var(--teal);border-radius:999px;min-width:4px}
.jy-map{margin-top:8px}
.jy-trail{position:relative;margin:0 auto;max-width:420px}
.jy-path{position:absolute;inset:0;width:100%;height:100%}.jy-path path{fill:none;stroke:#C9A66B;stroke-width:9;stroke-linecap:round;stroke-dasharray:2 15}
.jy-palm{position:absolute;width:40px;height:50px}.jy-palm.l{left:0}.jy-palm.r{right:0}
.jy-spot{position:absolute;transform:translate(-50%,-32px);display:flex;flex-direction:column;align-items:center;gap:3px;width:120px}
.jy-node{width:64px;height:64px;border-radius:50%;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:Fredoka,Nunito,sans-serif;font-weight:700;font-size:26px;
  background:#E9D6AE;color:#6B5636;box-shadow:0 5px 0 #CDB487;transition:transform .12s}
.jy-node:hover{transform:translateY(-2px)}.jy-node:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.jy-node.done{background:var(--teal);color:#fff;box-shadow:0 5px 0 #075A62}
.jy-node.cur{background:var(--gold2);color:#1E2A4A;box-shadow:0 5px 0 #A87700,0 0 0 8px rgba(224,161,0,.25);border:4px solid #fff}
.jy-node.gate{width:76px;height:76px;border-radius:18px;background:#8C6B3E;color:#fff;box-shadow:0 5px 0 #5E4626}
.jy-node.gate.cur{background:var(--gold2);color:#1E2A4A}
.jy-node.gate.open{background:var(--blue);box-shadow:0 5px 0 var(--blue2)}
.jy-node .jy-ic{width:38px;height:38px}
.jy-ic{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px;flex:0 0 auto}
.jy-stars{display:flex;gap:1px}.jy-stars .jy-star{width:16px;height:16px}
.jy-gname{font-size:12px;font-weight:800;color:#5E4626;background:var(--card);border:1.5px solid var(--line);border-radius:8px;padding:2px 8px;white-space:nowrap}
.jy-here{position:absolute;top:-40px;width:40px;height:40px;filter:drop-shadow(0 2px 0 rgba(0,0,0,.15));pointer-events:none}.jy-here svg{width:40px;height:40px}
.jy-bub{margin-top:12px}
.jy-say{display:flex;gap:8px;align-items:flex-start}
.jy-say p{margin:0;background:var(--card);border-radius:4px 14px 14px 14px;padding:9px 12px;font-size:14px;line-height:1.4;box-shadow:0 2px 0 var(--line);color:var(--ink)}
.jy-say b{color:var(--blue)}
.jy-muso{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center}.jy-muso .jy-ic{width:22px;height:22px}
.jy-link{background:none;border:0;color:var(--blue);font:inherit;font-weight:800;text-decoration:underline;cursor:pointer;padding:0}
.jy-bot{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;border-top:2px solid var(--line);padding-top:14px}
.jy-bot a{flex:1 1 auto;text-align:center;text-decoration:none;font-weight:800;font-size:14px;color:var(--brown);border-radius:12px;padding:12px 10px;background:var(--card);min-height:44px}
.jy-bot a[aria-current]{background:var(--blue);color:#fff}
.jy-list details{background:var(--card);border-radius:12px;padding:8px 12px;margin:6px 0}.jy-list a{color:var(--blue)}
/* dialog */
#jy-sheet{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center}#jy-sheet[hidden]{display:none}
.jy-scrim{position:absolute;inset:0;background:rgba(16,24,48,.6)}
.jy-dlg{position:relative;width:100%;max-width:520px;max-height:92vh;overflow:auto;background:#F3E3C3;color:#2B2118;border-radius:24px 24px 0 0;padding:20px 18px 24px;font-family:Nunito,system-ui,sans-serif;
  --line:#D9BF8C;--card:#fff;--blue:#1e55c8;--ink:#2B2118;--brown:#6B4E1F;--gold:#E0A100;--gold2:#F2B705;--teal:#0B7C87;display:flex;flex-direction:column;gap:12px}
@media (min-width:700px){#jy-sheet{align-items:center}.jy-dlg{border-radius:24px}}
.jy-dlg h2{font-size:24px;padding-right:40px}.jy-dlg h3{font-size:18px}
.jy-x{position:absolute;right:8px;top:8px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#6B4E1F;cursor:pointer;display:flex;align-items:center;justify-content:center}
.jy-sub{margin:0;color:#6B4E1F;font-weight:700;font-size:14px}
.jy-note{margin:0;font-size:14px;color:#6B4E1F}
.jy-scene{border-radius:16px;overflow:hidden;border:3px solid #1e55c8}.jy-art{display:block;width:100%;height:auto}
.jy-score{display:flex;align-items:center;gap:10px;font-size:15px}.jy-score .jy-star{width:26px;height:26px}
.jy-acts{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.jy-go,.jy-sec{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:16px;font-family:Fredoka,Nunito,sans-serif;font-weight:700;font-size:19px;text-decoration:none;cursor:pointer;border:0;padding:8px 16px}
.jy-go{background:#F2B705;color:#1E2A4A;box-shadow:0 5px 0 #A87700}
.jy-sec{background:#fff;color:#1e55c8;border:2px solid #D9BF8C;font-size:16px;min-height:48px}
.jy-go:focus-visible,.jy-sec:focus-visible,.jy-opt button:focus-visible,.jy-x:focus-visible{outline:3px solid #1e55c8;outline-offset:2px}
body.jy-lock{overflow:hidden}
.jy-avbig{width:120px;height:120px;align-self:center;flex:0 0 auto}.jy-avbig svg{width:120px;height:120px;display:block}
.jy-opt{border:0;margin:0;padding:0}.jy-opt legend{font-weight:800;font-size:14px;color:#6B4E1F;margin-bottom:6px}
.jy-opt div{display:flex;flex-wrap:wrap;gap:8px}
.jy-opt button{min-height:44px;min-width:44px;border-radius:12px;border:2px solid #D9BF8C;background:#fff;color:#2B2118;font:inherit;font-weight:700;font-size:14px;padding:6px 12px;cursor:pointer}
.jy-opt button.sw{background:var(--c);padding:0;border-color:#fff;box-shadow:0 0 0 1.5px #D9BF8C}
.jy-opt button[aria-pressed="true"]{border-color:#1e55c8;box-shadow:0 0 0 2px #1e55c8}
.jy-opt button.sw[aria-pressed="true"]{box-shadow:0 0 0 3px #1e55c8}
/* caravan */
.jy-panel{background:#FBF3E2;border-radius:18px;padding:14px;margin-top:14px}
.jy-hero{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.jy-who{display:flex;flex-direction:column;gap:6px;flex:1 1 200px}.jy-who small{color:#6B4E1F;font-weight:700}.jy-who b{font-family:"Bricolage Grotesque",Nunito,sans-serif;font-size:24px;color:#1e55c8}
.jy-tot{display:flex;align-items:center;gap:6px;font-weight:800}
.jy-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media (max-width:380px){.jy-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
.jy-item{background:#EFE4CF;border-radius:14px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;color:#5E4A2C}
.jy-item b{font-size:13px;line-height:1.2}.jy-item small{font-size:11.5px;line-height:1.25;color:#5E4A2C}
.jy-item.got{background:#DFF1F2;color:#075A62}.jy-item .jy-ic{width:30px;height:30px}
.jy-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.jy-card{display:flex;gap:10px;align-items:flex-start;background:#EFE4CF;border-radius:14px;padding:10px;color:#5E4A2C}
.jy-card.got{background:#fff;border:2px solid #E0A100;color:#2B2118}.jy-card b{display:block;color:#1e55c8}.jy-card p{margin:2px 0 0;font-size:13.5px;line-height:1.35}
.jy-card .jy-ic{width:32px;height:32px;color:#8A5A00}.jy-ic.lk{color:#7A6440}
.jy-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.jy-badge{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;background:#EFE4CF;border-radius:14px;padding:10px;color:#5E4A2C}
.jy-badge .jy-ic{width:34px;height:34px}.jy-badge b{font-size:14px}.jy-badge small{font-size:12px}
.jy-badge.got{background:#F2B705;color:#1E2A4A}.jy-badge.got .jy-ic{fill:none}
.jy-worlds{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px}
.jy-world{flex:0 0 120px;background:#fff;border:1.5px solid #D9BF8C;border-radius:14px;padding:10px}.jy-world small{display:block;font-size:12px;font-weight:800;color:#6B4E1F}
.jy-world b{font-family:Fredoka,Nunito,sans-serif;font-size:15px;line-height:1.15}
.jy-world.cur{background:#1e55c8;border-color:#1e55c8;color:#fff}.jy-world.cur small{color:#BFD3FF}
@media (prefers-reduced-motion:reduce){.jy-node{transition:none}}
/* ---------- tablet and desktop layouts ---------- */
.jy-main{min-width:0}.jy-bot-d,.jy-sm{display:none}
.jy-sn{display:block}
@media (min-width:700px){
  .jy{max-width:900px;margin:20px auto 32px;padding:24px 28px 28px;border-radius:28px}
  .jy h1{font-size:36px}
  .jy-subs{flex-wrap:wrap;overflow:visible;padding-top:16px}
  .jy-subs a{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border-radius:14px;padding:8px 14px}
  .jy-sm{display:flex;align-items:center;gap:3px;font-size:12px;font-weight:700;opacity:.85}.jy-sm .jy-star{width:13px;height:13px}
  .jy-prog{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 22px;align-items:center}
  .jy-pt,.jy-bar{grid-column:1}.jy-bub{grid-column:2;grid-row:1/3;margin:0}
  .jy-trail{max-width:640px}
  .jy-palm{width:56px;height:70px}
  .jy-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jy-badges{grid-template-columns:repeat(4,minmax(0,1fr))}
  .jy-worlds{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));overflow:visible}
  .jy-world{flex:none}
  .jy-bot{justify-content:center}.jy-bot a{flex:0 1 220px}
}
@media (min-width:1100px){
  .jy{max-width:1240px;display:grid;grid-template-columns:360px minmax(0,1fr);gap:28px;align-items:start;padding:28px}
  .jy-side{position:sticky;top:96px;max-height:calc(100vh - 112px);overflow:auto;display:flex;flex-direction:column;gap:14px;padding:2px 6px 2px 2px;scrollbar-width:thin}
  .jy-top{flex-wrap:wrap}.jy h1{font-size:34px}
  .jy-subs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:0;margin:0}
  .jy-subs a{white-space:normal;min-height:56px;justify-content:center}
  .jy-subs a:hover{border-color:var(--blue)}
  .jy-prog{display:block;margin:0}.jy-bub{margin-top:12px}
  .jy-bot-d{display:flex;flex-wrap:wrap;margin:0}.jy-bot-d a{flex:1 1 auto}.jy-bot-m{display:none}
  .jy-main{background:#EFDDB6;border-radius:24px;padding:24px 16px;min-height:calc(100vh - 140px)}
  .jy-trail{max-width:720px}
  .jy-spot{transform:translate(-50%,-36px)}
  .jy-node{width:72px;height:72px;font-size:28px}.jy-node.gate{width:86px;height:86px}
  .jy-here{top:-46px;width:46px;height:46px}.jy-here svg{width:46px;height:46px}
  .jy-palm{width:68px;height:85px}
  /* caravan */
  .jy-hero{flex-direction:column;align-items:stretch;text-align:center;margin:0}.jy-hero .jy-avbig{width:150px;height:150px}.jy-hero .jy-avbig svg{width:150px;height:150px}
  .jy-hero .jy-who{align-items:center}.jy-hero .jy-bar{width:100%}
  #jy-car{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;background:none;padding:0;min-height:0}
  #jy-car .jy-panel{margin:0}.jy-psouv,.jy-pworld{grid-column:1/-1}
  .jy-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jy-badges{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* r55 design (31 Oct 2026): school blue #1e55c8, Bricolage headings; desktop side panel fits under the menu + ad slot */
@media (min-width:1100px){
  .jy-side{top:84px;max-height:calc(100vh - 100px);gap:12px}
  .jy-bot-d{gap:8px}.jy-bot-d a{padding:10px}
  .jy-bot-d a[data-jy-off]{flex-basis:100%;background:none;min-height:40px;padding:6px;text-decoration:underline;color:#6B4E1F}
  .jy-subs a{min-height:52px;padding:7px 12px}
}
/* world switcher (31 Oct 2026, World 2 = Khiva) */
.jy-worldsw{display:flex;gap:8px;margin-top:12px}
.jy-worldsw a{flex:1 1 0;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;text-decoration:none;background:#FBF3E2;border:2px solid #D9BF8C;border-radius:16px;padding:8px 12px;color:#2B2118;min-height:52px}
.jy-worldsw b{grid-row:1/3;width:34px;height:34px;border-radius:10px;background:#E9D6AE;color:#6B4E1F;display:flex;align-items:center;justify-content:center;font-family:Fredoka,Nunito,sans-serif;font-size:19px}
.jy-worldsw span{font-weight:800;font-size:15px;line-height:1.15}.jy-worldsw small{font-size:12px;font-weight:700;color:#6B4E1F}
.jy-worldsw a[aria-current]{background:#1e55c8;border-color:#1e55c8;color:#fff}.jy-worldsw a[aria-current] b{background:#F2B705;color:#1E2A4A}.jy-worldsw a[aria-current] small{color:#DCE6FF}
.jy-worldsw a:not([aria-current]):hover{border-color:#1e55c8}
.jy-world.open{text-decoration:none;color:#2B2118;border-color:#1e55c8}.jy-world.open:hover{background:#EEF3FF}
@media (min-width:1100px){.jy-worldsw{margin-top:0}}
/* 11 worlds (31 Oct 2026): the switcher becomes a scrolling row of compact chips (wraps on desktop) */
.jy-worldsw{overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.jy-worldsw a{flex:0 0 auto;display:flex;align-items:center;gap:8px;min-height:44px;padding:5px 12px 5px 5px;border-radius:999px;grid-template-columns:none}
.jy-worldsw b{width:32px;height:32px;border-radius:50%;font-size:16px}
.jy-worldsw span{font-size:14px;white-space:nowrap}.jy-worldsw small{display:none}
@media (min-width:1100px){.jy-worldsw{flex-wrap:wrap;overflow:visible}}
/* tablet/desktop: other worlds as numbered circles, the current one with its name */
@media (min-width:700px){
  .jy-worldsw{flex-wrap:wrap;overflow:visible;gap:6px}
  .jy-worldsw a{padding:4px;min-width:44px;justify-content:center}
  .jy-worldsw a:not([aria-current]) span{display:none}
  .jy-worldsw a[aria-current]{padding-right:14px}
}
