/* Original approved Trek, Shop, Collection and settings visuals are verbatim in
   approved-shell.css. Only live-data controls and accessibility adapters live here. */
.journey-wallet{max-width:none}.journey-wallet .pill{white-space:nowrap}
.journey-money{display:inline-flex;align-items:center;gap:4px}
.journey-load{text-align:center;margin:24px 0;padding:22px 14px;border:3px solid var(--ink);border-radius:22px;background:var(--paper2);box-shadow:4px 5px var(--ink)}
.journey-load button{min-height:44px;padding:6px 18px;border:2.5px solid var(--ink);border-radius:99px;background:var(--turm);font-weight:700}
.journey-mark{font:3rem var(--display);color:var(--mad)}
.trekstrip{text-decoration:none}.trekstrip .go{white-space:nowrap}
.journey-trek .stop-number{font:400 17px 'Lilita One',Mukta,sans-serif}
.journey-trek .walkrow{margin-bottom:22px}
.journey-trek .btn{min-height:52px;height:auto;padding-block:8px;line-height:1.2}
.journey-trek .mchoice{min-width:0;overflow-wrap:anywhere}
.journey-trek .mchoice .pick{position:absolute;top:-8px;right:8px;padding:1px 6px;border:1.5px solid var(--ink);border-radius:99px;background:var(--turm);color:var(--ink);font:700 .62rem Mukta,sans-serif}
.journey-trek .routes{scroll-padding-inline:16px}
.journey-trek .rcard{white-space:normal;min-height:112px}
.journey-trek .rcard:focus-visible{outline-offset:1px}
.journey-shop .shop-segment{margin-bottom:6px}
.journey-shop .seg button{position:relative}.journey-shop .seg button:after{content:'';position:absolute;inset:-5px 0}
.journey-shop .pack:disabled{opacity:1;cursor:default}
.journey-shop .pack:disabled .price{font-size:.88rem}
.journey-shop .free{text-decoration:none}
.journey-shop .items{grid-template-columns:repeat(3,minmax(0,1fr))}
.journey-shop .item{min-width:0}
.journey-shop .item .nm{font:700 .8rem/1.1 Mukta,sans-serif;margin:0;letter-spacing:0}
.journey-shop .item .st{margin-top:auto}.journey-shop .item button.st{position:relative}.journey-shop .item button.st:after{content:'';position:absolute;inset:-7px 0}
.journey-shop .item .st.buy{font-size:.85rem}
.journey-shop .item .st.goal{overflow-wrap:anywhere}
.journey-shop .item .pv svg{max-width:100%;height:auto}
.journey-shop .item:has(.j-unlock-confirm){grid-column:1/-1}
.journey-shop .item:has(.j-unlock-confirm) .pv{width:80px;height:80px}
.journey-shop .item:has(.j-unlock-confirm) .st{width:auto;min-width:88px}
.j-unlock-confirm{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;width:100%;padding-top:10px;border-top:2px dashed #1b225033}
.j-unlock-confirm strong{width:100%;text-align:center;font-size:1rem}
.j-unlock-confirm .btn{min-height:44px;height:auto;padding:7px 14px;font-size:.95rem;white-space:normal}
.journey-shop .cats{scroll-padding-inline:16px}
.journey-shop .cats .chip{position:relative}.journey-shop .cats .chip:after{content:'';position:absolute;inset:-4px 0}
.journey-shop .cats .chip:focus-visible{outline-offset:1px}
.journey-settings .profile{min-width:0}.journey-settings .profile>svg{flex:none}.journey-settings .profile>div{min-width:0}
.journey-settings .srow .ic svg{width:24px;height:24px}
.journey-settings .srow .tx label{cursor:pointer;display:block}
.journey-settings .srow .tx label:has(+input[type=range]){min-height:0}
.journey-settings .srow input[type=range]{height:44px;min-height:44px;display:block;cursor:pointer;margin:-8px 0 -14px}
.journey-settings .switch-target{position:relative;height:32px;min-width:56px;display:flex;align-items:center;cursor:pointer;flex:none}.journey-settings .switch-target:after{content:'';position:absolute;inset:-6px 0}
.journey-settings input.sw[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;width:56px;height:32px;margin:0;background:#D6CFBB;border:2.5px solid var(--ink);border-radius:99px;cursor:pointer;flex:none;transition:background .2s}
.journey-settings input.sw:before{content:'';position:absolute;top:2px;left:2px;width:23px;height:23px;border-radius:50%;background:#fff;border:2px solid var(--ink);transition:left .35s var(--ease-boing)}
.journey-settings input.sw:checked{background:var(--jungle)}
.journey-settings input.sw:checked:before{left:25px}
.journey-settings input.sw:disabled{cursor:default;opacity:.55}
.journey-settings .srow .seg button{position:relative;min-width:44px;overflow-wrap:anywhere}.journey-settings .srow .seg button:after{content:'';position:absolute;inset:-5px 0}
.journey-settings .where select{width:44%;height:44px;min-height:44px;max-width:44%;padding:0 6px;border-radius:12px;font:700 .9rem Mukta,sans-serif}
.journey-settings .region-result{align-items:flex-start;flex-direction:column;gap:5px}
.journey-settings .region-card>.note{margin:10px 14px 14px}
.journey-settings .glowtest>span{display:flex;flex-direction:column;align-items:center;gap:10px;font:400 .95rem var(--display)}
.journey-settings .srow:has([data-j-pref=animations]) .tx label{cursor:default}
.journey-settings .srow:has([data-j-pref=animations]) .seg{width:150px}
.j-status{overflow-wrap:anywhere;min-height:1px}.j-status:empty{margin:0}
.j-status:focus,.journey-shop .item h2:focus{outline:3px solid var(--pink);outline-offset:3px}
.j-celebration .celcard h2{font:400 1.75rem/1.05 var(--display);margin:0;color:var(--mad)}
.j-celebration .btns{justify-content:center}
/* Retain the approved typefaces while enlarging every explicit journey label. */
.big .journey-trek .routehead b{font-size:1.4rem}
.big .journey-trek .routehead small{font-size:1rem}
.big .journey-trek .streakbadge{font-size:1.55rem}
.big .journey-trek .streakbadge small{font-size:.78rem}
.big .journey-trek .map .lbl{font-size:15px}.big .journey-trek .map .lblne{font-size:12.4px}
.big .journey-trek .mchoice b{font-size:1.15rem}.big .journey-trek .mchoice small{font-size:.86rem}
.big .journey-trek .walkrow .btn{font-size:1.24rem}
.big .journey-trek .rcard b{font-size:1.18rem}.big .journey-trek .rcard small{font-size:.9rem}
.big .journey-trek h2,.big .journey-shop h2,.big .journey-settings h2{font-size:1.5rem}
.big .journey-trek .note,.big .journey-shop .note,.big .journey-settings .note{font-size:.94rem}
.big .journey-shop .seg button{font-size:.96rem}.big .journey-shop .cats .chip{font-size:1.06rem}
.big .journey-shop .item .nm{font-size:.92rem}.big .journey-shop .item .st{font-size:.97rem}.big .journey-shop .item .st.goal{font-size:.81rem}
.big .journey-shop .pack .amt{font-size:1.4rem}.big .journey-shop .pack .price{font-size:1rem}
.big .journey-settings .srow .tx b{font-size:1.13rem}.big .journey-settings .srow .tx small{font-size:.9rem}
.big .journey-settings .srow .seg button{font-size:.96rem}.big .journey-settings select{font-size:1.13rem}
.big .journey-settings .profile b{font-size:1.46rem}.big .journey-settings .profile small{font-size:1rem}
@media(max-width:380px){.big .journey-settings .srow{gap:10px;padding-inline:10px}}
/* The native control stays above the label’s extra hit area, and focused controls
   scroll clear of the approved sticky header and navigation. */
.journey-settings input.sw[type=checkbox]{z-index:1}
.journey-settings :is(button,input,select),.journey-shop button,.journey-trek button{scroll-margin-block:96px}
/* 8 Nov 2026 (approved pictures 3a/4a): the word On or Off beside each switch; tune chooser under Music. */
.journey-settings .switch-target{gap:6px}
.journey-settings .switch-target .sw-word{min-width:26px;font:700 .82rem/1 Mukta,sans-serif;color:var(--ink2)}
.journey-settings .switch-target input.sw:checked+.sw-word{color:var(--jungle)}
.journey-settings .j-tune{display:flex;align-items:center;gap:8px;margin-top:6px;cursor:pointer}
.journey-settings .j-tune span{font:700 .8rem Mukta,sans-serif;color:var(--ink2)}
.journey-settings .j-tune select{flex:1;min-width:0;height:44px;min-height:44px;padding:0 8px;border:2px solid var(--ink);border-radius:12px;background:#fff;color:var(--ink);font:700 .88rem Mukta,sans-serif}
/* My collection first (8 Nov 2026, approved pictures 5a). */
.journey-collection .j-using{margin:10px 0 12px}
.journey-collection .j-using .preview{height:170px}
.journey-collection .j-using p{margin:8px 2px 0;font:600 .88rem/1.3 Mukta,sans-serif;color:var(--ink)}
.journey-collection .j-using p b{font-family:var(--display);font-weight:400;margin-right:4px}
.journey-collection .grp{margin:14px 2px 8px;font:400 1rem/1.1 var(--display);color:var(--ink)}
.journey-collection .j-next{display:grid;grid-template-columns:60px 1fr;gap:6px 10px;align-items:center;padding:10px;background:var(--paper2);border:2.5px solid var(--ink);border-radius:18px;box-shadow:3px 4px 0 var(--ink)}
.journey-collection .j-next .pv{width:60px;height:60px;display:grid;place-items:center}
.journey-collection .j-next .nx{min-width:0}
.journey-collection .j-next .nx b{display:block;font:700 .95rem/1.2 Mukta,sans-serif}
.journey-collection .j-next .bar{display:block;height:10px;margin:5px 0 4px;border:2px solid var(--ink);border-radius:99px;background:#fff;overflow:hidden}
.journey-collection .j-next .bar i{display:block;height:100%;background:var(--turm)}
.journey-collection .j-next .nx small{display:block;font-size:.76rem;line-height:1.25;color:var(--ink2)}
.journey-collection .j-next .nb{grid-column:1/-1;display:flex;gap:8px}
.journey-collection .j-next .nb .btn{flex:1;min-height:44px}
.journey-collection .j-next .j-try[aria-pressed=true]{background:var(--ink);color:#fff}
.journey-collection .j-next .j-unlock-confirm{grid-column:1/-1}
/* Gear tab (Next ideas 8 Nov, answer 3a): real things to hold, "Coming soon" only, our own drawings. */
.journey-gear .gear-head{background:var(--paper2);border:3px solid var(--ink);border-radius:20px;box-shadow:0 4px 0 var(--ink);padding:14px;margin-top:12px}
.journey-gear .gear-eyebrow{margin:0;font:700 .72rem/1.2 Mukta,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}
.journey-gear .gear-head h2{margin:4px 0 6px;font:400 1.45rem/1.1 var(--display)}
.journey-gear .gear-head .note{margin:0}
.journey-gear .gear-list{display:grid;gap:12px;margin-top:12px}
.journey-gear .gear-card{display:grid;grid-template-columns:118px 1fr;gap:12px;align-items:center;background:var(--paper2);border:3px solid var(--ink);border-radius:20px;box-shadow:0 4px 0 var(--ink);padding:12px}
.journey-gear .gear-pic{border:2.5px solid var(--ink);border-radius:14px;display:grid;place-items:center;aspect-ratio:1}
.journey-gear .gear-pic svg{width:88%;height:auto;display:block}
.journey-gear .gear-txt{display:grid;gap:5px;justify-items:start;min-width:0}
.journey-gear .gear-txt .soon{position:static;background:var(--turm);color:var(--ink);border:2px solid var(--ink)}
.journey-gear .gear-txt b{font:400 1.15rem/1.1 var(--display)}
.journey-gear .gear-txt small{font-size:.92rem;line-height:1.3;color:var(--ink2)}
.journey-gear .gear-note{margin:12px 0 0;font-size:.88rem;line-height:1.35;color:var(--ink2);padding:10px 12px;border:2px dashed rgba(27,34,80,.35);border-radius:14px}
@media (max-width:340px){.journey-gear .gear-card{grid-template-columns:92px 1fr}}
