/* Toy Hunt UK: chunky toy-shop nav tabs + slide-out site menu (22 Oct 2026).
   Loaded after styles.css / legal.css and assets/mascot.css on every page.
   Fonts (Luckiest Guy, Fredoka, Nunito) are declared in assets/mascot.css. */

/* ---------- nav tabs ---------- */
.header .nav{display:flex;gap:10px;justify-content:flex-start;align-items:stretch;overflow-x:auto;overflow-y:visible;scrollbar-width:none;padding:8px 2px 14px;-webkit-overflow-scrolling:touch}
.header .nav::-webkit-scrollbar{display:none}
.header .nav a{--tab:#0b63ce;--tab-ink:#fff;--tab-edge:#10265b;
  position:relative;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  background:var(--tab);color:var(--tab-ink);border:3px solid var(--tab-edge);border-radius:18px;padding:6px 8px 5px;
  box-shadow:0 5px 0 var(--tab-edge);font-family:"Luckiest Guy","Fredoka","Arial Rounded MT Bold","Trebuchet MS",sans-serif;font-weight:400;font-size:15px;line-height:1.05;letter-spacing:.04em;text-align:center;
  text-decoration:none;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;user-select:none}
.header .nav a>span{display:block;margin:0;font:inherit;font-size:inherit;letter-spacing:inherit;color:inherit;white-space:nowrap;text-shadow:var(--tab-shadow,0 2px 0 rgba(0,0,0,.28))}
.header .nav .tab-ico{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#fff;border:2px solid var(--tab-edge);font-style:normal;font-size:18px;line-height:1;box-shadow:inset 0 -3px 0 rgba(16,38,91,.12)}
/* one bright colour per tab (matched by link, so a tab keeps its colour on every page) */
.header .nav a[href="#home"],.header .nav a[href="/"]{--tab:#d4142c}
.header .nav a[href$="#top10"]{--tab:#ff8a1f;--tab-ink:#10265b;--tab-shadow:0 2px 0 rgba(255,255,255,.45)}
.header .nav a[href$="#retailers"]{--tab:#ffd52f;--tab-ink:#10265b;--tab-shadow:0 2px 0 rgba(255,255,255,.55)}
.header .nav a[href$="#pricehunt"]{--tab:#0b7d3e}
.header .nav a[href$="#gift-guides"]{--tab:#0b63ce}
.header .nav a[href$="#categories"]{--tab:#7a3ed8}
.header .nav a[href$="#deals"]{--tab:#d6176f}
.header .nav a[href$="#howitworks"]{--tab:#13c7e9;--tab-ink:#10265b;--tab-shadow:0 2px 0 rgba(255,255,255,.45)}
@media (hover:hover){.header .nav a:hover{background:var(--tab);transform:translateY(-2px);box-shadow:0 7px 0 var(--tab-edge);filter:brightness(1.06) saturate(1.05)}}
.header .nav a:active{transform:translateY(4px);box-shadow:0 1px 0 var(--tab-edge);filter:none;transition-duration:.05s}
.header .nav a:focus-visible{outline:4px solid #10265b;outline-offset:3px}
/* current page / section: white ring, yellow halo and a star badge */
.header .nav a[aria-current]{box-shadow:0 5px 0 var(--tab-edge),inset 0 0 0 3px #fff;outline:4px solid #ffd52f;outline-offset:0}
.header .nav a[aria-current]::after{content:"★";position:absolute;top:-9px;right:-7px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#ffd52f;color:#10265b;border:2px solid #10265b;font-family:Arial,sans-serif;font-size:13px;line-height:1;text-shadow:none}
.header .nav a[aria-current]:focus-visible{outline-color:#10265b}
.header .nav a[aria-current]:active{box-shadow:0 1px 0 var(--tab-edge),inset 0 0 0 3px #fff}
/* room for the star badge on tabs that scroll */
.header .nav{padding-top:12px}
@media (max-width:1100px){.header .nav{gap:8px}.header .nav a{font-size:14px;letter-spacing:.02em}}
@media (max-width:960px) and (min-width:761px){.header .nav a>span{white-space:normal}}
/* phones and small tablets: one swipeable row of round pills */
@media (max-width:760px){
  .header .nav{display:flex;gap:8px;padding:12px 14px 12px 2px;scroll-snap-type:x proximity;scroll-padding-left:4px;
    -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 30px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 30px),transparent)}
  .header .nav a{flex:0 0 auto;flex-direction:row;gap:6px;border-radius:999px;padding:4px 13px 3px 4px;font-size:14px;scroll-snap-align:start;box-shadow:0 4px 0 var(--tab-edge)}
  .header .nav a>span{white-space:nowrap;padding-top:2px}
  .header .nav .tab-ico{width:28px;height:28px;flex-basis:28px;font-size:15px}
  .header .nav a[aria-current]{box-shadow:0 4px 0 var(--tab-edge),inset 0 0 0 3px #fff}
  .header .nav a[aria-current]::after{top:-8px;right:-4px;width:19px;height:19px;font-size:11px}
  .header .nav a:active{transform:translateY(3px);box-shadow:0 1px 0 var(--tab-edge)}
}
@media (prefers-reduced-motion:reduce){.header .nav a{transition:none}.header .nav a:hover,.header .nav a:active{transform:none}}
@media (forced-colors:active){.header .nav a{border-color:CanvasText}.header .nav a[aria-current]{outline-color:Highlight}}

/* ---------- menu button ---------- */
.th-menu-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:48px;min-height:46px;padding:6px 13px 4px;margin:0;
  background:#ffd52f;color:#10265b;border:3px solid #10265b;border-radius:15px;box-shadow:0 4px 0 #10265b;cursor:pointer;
  font-family:"Luckiest Guy","Fredoka","Arial Rounded MT Bold",sans-serif;font-weight:400;font-size:16px;line-height:1;letter-spacing:.05em;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,box-shadow .12s ease}
.th-menu-btn .th-burger{display:grid;gap:4px;width:20px;margin-top:-2px}
.th-menu-btn .th-burger i{display:block;height:3px;border-radius:3px;background:currentColor}
@media (hover:hover){.th-menu-btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 #10265b}}
.th-menu-btn:active,.th-menu-btn[aria-expanded="true"]{transform:translateY(3px);box-shadow:0 1px 0 #10265b}
.th-menu-btn:focus-visible{outline:4px solid #13c7e9;outline-offset:3px}
/* home page: sits with Favourites / My Hunt (styles.css .headlinks button resets it otherwise) */
.headlinks button.th-menu-btn{display:inline-flex;align-items:center;gap:7px;background:#ffd52f;color:#10265b;border:3px solid #10265b;font-size:16px;align-self:center}
.headlinks button.th-menu-btn small{font:inherit;font-size:16px;display:inline}
.th-guide .topbar .headlinks{display:flex;margin-left:auto}
/* legal / info pages: dark header, so the button sits beside "Back to Toy Hunt UK" */
.th-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}
.th-head .th-menu-btn{box-shadow:0 4px 0 #b88f00;border-color:#fff;min-height:42px}
@media (hover:hover){.th-head .th-menu-btn:hover{box-shadow:0 6px 0 #b88f00}}
.th-head .th-menu-btn:active,.th-head .th-menu-btn[aria-expanded="true"]{box-shadow:0 1px 0 #b88f00}
@media (max-width:650px){
  .headlinks button.th-menu-btn{padding:6px 10px 4px}
  .headlinks button.th-menu-btn small{display:none}
  .th-guide .topbar .headlinks{order:2}
}
/* phones: brand + menu button on the first row, "Back to Toy Hunt UK" wraps underneath */
@media (max-width:480px){.th-head .th-head-inner{flex-wrap:wrap;row-gap:10px}.th-head-actions{display:contents}.th-head .legal-brand.th-brand{flex:1 0 auto}.th-head .th-menu-btn{order:1;min-width:44px;min-height:42px;padding:5px 10px 3px}.th-head .th-menu-btn .th-menu-label{display:none}.th-head-actions .legal-back.th-back{order:2}}

/* ---------- slide-out site menu ---------- */
html.th-menu-lock,html.th-menu-lock body{overflow:hidden}
.th-menu{position:fixed;inset:0;z-index:9000;font-family:"Nunito","Poppins",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#10265b}
.th-menu[hidden]{display:none}
.th-menu *{box-sizing:border-box}
.th-menu-backdrop{position:absolute;inset:0;background:rgba(9,26,60,.6);opacity:0;transition:opacity .22s ease}
.th-menu-panel{position:absolute;top:0;right:0;bottom:0;width:min(400px,92vw);display:flex;flex-direction:column;background:#fffaf0;border-left:5px solid #10265b;
  box-shadow:-8px 0 0 rgba(16,38,91,.25);transform:translateX(105%);transition:transform .25s cubic-bezier(.2,.9,.3,1.1);outline:none}
.th-menu.is-open .th-menu-backdrop{opacity:1}
.th-menu.is-open .th-menu-panel{transform:none}
.th-menu-top{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 14px 18px;background:#10265b;color:#fff;border-bottom:5px solid #ffd52f;box-shadow:inset 0 -5px 0 #f51b73}
.th-menu-title{margin:0;font-family:"Luckiest Guy","Fredoka",sans-serif;font-weight:400;font-size:28px;letter-spacing:.04em;line-height:1;color:#fff;text-shadow:0 3px 0 #050f2b}
.th-menu-title b{color:#ffd52f;font-weight:400}
.th-menu-close{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:#f51b36;color:#fff;border:3px solid #fff;box-shadow:0 4px 0 #050f2b;font:700 26px/1 Arial,sans-serif;cursor:pointer;padding:0 0 2px}
.th-menu-close:active{transform:translateY(3px);box-shadow:0 1px 0 #050f2b}
.th-menu-close:focus-visible{outline:4px solid #ffd52f;outline-offset:2px}
.th-menu-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:14px 16px 28px}
.th-menu-h{margin:16px 2px 8px;font-family:"Fredoka","Nunito",sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#4b5876}
.th-menu-h:first-child{margin-top:2px}
.th-menu ul{list-style:none;margin:0;padding:0}
/* main sections: coloured toy tiles, same colours as the tabs */
.th-menu-tiles{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.th-menu-tiles a,.th-menu-tiles button{--tab:#0b63ce;--tab-ink:#fff;width:100%;display:flex;align-items:center;gap:8px;min-height:50px;padding:6px 10px 5px 6px;border:3px solid #10265b;border-radius:14px;
  background:var(--tab);color:var(--tab-ink);box-shadow:0 4px 0 #10265b;font-family:"Luckiest Guy","Fredoka",sans-serif;font-weight:400;font-size:15px;letter-spacing:.03em;line-height:1.05;text-align:left;text-decoration:none;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease}
.th-menu-tiles .tab-ico{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#fff;border:2px solid #10265b;font-style:normal;font-size:16px;line-height:1}
.th-menu-tiles .t-home{--tab:#d4142c}.th-menu-tiles .t-top10{--tab:#ff8a1f;--tab-ink:#10265b}.th-menu-tiles .t-retailers{--tab:#ffd52f;--tab-ink:#10265b}.th-menu-tiles .t-pricehunt{--tab:#0b7d3e}
.th-menu-tiles .t-gifts{--tab:#0b63ce}.th-menu-tiles .t-categories{--tab:#7a3ed8}.th-menu-tiles .t-deals{--tab:#d6176f}.th-menu-tiles .t-how{--tab:#13c7e9;--tab-ink:#10265b}
.th-menu-tiles .t-fav{--tab:#fff;--tab-ink:#10265b}.th-menu-tiles .t-myhunt{--tab:#fff;--tab-ink:#10265b}.th-menu-tiles .t-comp{--tab:#ffd52f;--tab-ink:#10265b}
@media (hover:hover){.th-menu-tiles a:hover,.th-menu-tiles button:hover{transform:translateY(-2px);box-shadow:0 6px 0 #10265b}}
.th-menu-tiles a:active,.th-menu-tiles button:active{transform:translateY(3px);box-shadow:0 1px 0 #10265b}
/* plain link lists */
.th-menu-list{display:grid;gap:6px}
.th-menu-list a{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;border-radius:12px;background:#fff;border:2px solid #dbe3f0;color:#10265b;font-family:"Fredoka","Nunito",sans-serif;font-weight:600;font-size:16px;line-height:1.2;text-decoration:none}
.th-menu-list a>i{font-style:normal;flex:0 0 auto}
@media (hover:hover){.th-menu-list a:hover{border-color:#10265b;background:#fff3a8}}
.th-menu-list.small a{min-height:40px;font-size:15px;font-weight:500}
.th-menu a:focus-visible,.th-menu-tiles button:focus-visible{outline:4px solid #13c7e9;outline-offset:2px}
.th-menu [aria-current]{position:relative}
.th-menu-list a[aria-current]{background:#ffd52f;border-color:#10265b;font-weight:700}
.th-menu-tiles a[aria-current]{box-shadow:0 4px 0 #10265b,inset 0 0 0 3px #fff;outline:3px solid #ffd52f;outline-offset:0}
.th-menu-tiles a[aria-current]:focus-visible{outline-color:#13c7e9}
@media (max-width:360px){.th-menu-tiles{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.th-menu-backdrop,.th-menu-panel,.th-menu-tiles a,.th-menu-tiles button,.th-menu-btn{transition:none}}
.th-menu-btn .th-menu-label{font:inherit;color:inherit}
