/* Crazy Guide theme layer. Two looks keyed on <html data-theme="a|b">:
   A "The Suitcase" (luggage stickers, neo-brutalist)  ·  B "The Postcard Rack" (vintage postcards).
   Tokens only + the shared toggle / chooser; each surface (landing, trip pages, app, guide) adds its own skin on top.
   Fonts are self-hosted (OFL: Suez One, Heebo, Alef, Bellefair, IBM Plex Mono) so no third-party request is made. */
@font-face{font-family:'Alef';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/alef-hebrew-fevfs0nq.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:'Alef';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/alef-latin-fevfs0nq.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Alef';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/alef-hebrew-fevqs0nq.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:'Alef';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/alef-latin-fevqs0nq.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Bellefair';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/bellefair-hebrew-kjexbuyy.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:'Bellefair';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/bellefair-latin-kjexbuyy.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Heebo';font-style:normal;font-weight:500 900;font-display:swap;src:url(fonts/heebo-hebrew-ngs6v5_n.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:'Heebo';font-style:normal;font-weight:500 900;font-display:swap;src:url(fonts/heebo-latin-ngs6v5_n.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibmplexmono-latin-f6qfjpt.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Suez One';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/suezone-hebrew-taijgmd_.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:'Suez One';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/suezone-latin-taijgmd_.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root,[data-theme="a"]{
  color-scheme:light;
  --cg-bg:#F4F4F0;--cg-surface:#fff;--cg-surface-2:#FFFBE9;--cg-ink:#000;--cg-muted:#3a3a36;--cg-line:#000;
  --cg-accent:#3DDC97;--cg-on-accent:#000;--cg-hi:#FFD23F;--cg-on-hi:#000;--cg-hot:#FF5A36;--cg-pink:#FF9ECF;--cg-sky:#7CC4FF;
  --cg-btn-bg:#000;--cg-btn-ink:#fff;--cg-btn-hover:#3DDC97;--cg-btn-hover-ink:#000;
  --cg-bw:3px;--cg-border:var(--cg-bw) solid #000;--cg-shadow:5px 5px 0 #000;--cg-shadow-s:3px 3px 0 #000;--cg-shadow-l:8px 8px 0 #000;
  --cg-radius:14px;--cg-radius-s:10px;--cg-pill:99px;
  --cg-fd:"Suez One","Heebo",Arial,sans-serif;--cg-fb:"Heebo",Arial,sans-serif;--cg-fm:"Heebo",Arial,sans-serif;
  --cg-fd-weight:400;--cg-fb-weight:500;--cg-strong:800;--cg-lh:1.55;--cg-track:0;
  --cg-focus:#000;--cg-focus-halo:#FFD23F;--cg-ok:#0b5d2e;--cg-bad:#b00020;--cg-bar:#000;--cg-bar-ink:#fff;
  --cg-ease:cubic-bezier(.2,.8,.2,1);
}
[data-theme="b"]{
  --cg-bg:#E3E9EE;--cg-surface:#FDFCF8;--cg-surface-2:#F6F1E4;--cg-ink:#1D3557;--cg-muted:#4A5A70;--cg-line:rgba(29,53,87,.28);
  --cg-accent:#F2B83B;--cg-on-accent:#1D3557;--cg-hi:#F2B83B;--cg-on-hi:#1D3557;--cg-hot:#C8412E;--cg-pink:#C8412E;--cg-sky:#E3E9EE;
  --cg-btn-bg:#1D3557;--cg-btn-ink:#FDFCF8;--cg-btn-hover:#F2B83B;--cg-btn-hover-ink:#1D3557;
  --cg-bw:1.5px;--cg-border:var(--cg-bw) solid #1D3557;--cg-shadow:0 10px 24px -14px rgba(29,53,87,.55);--cg-shadow-s:0 4px 10px -6px rgba(29,53,87,.5);--cg-shadow-l:0 18px 38px -18px rgba(29,53,87,.6);
  --cg-radius:5px;--cg-radius-s:4px;--cg-pill:5px;
  --cg-fd:"Bellefair","Alef",Georgia,serif;--cg-fb:"Alef",system-ui,sans-serif;--cg-fm:"IBM Plex Mono",ui-monospace,monospace;
  --cg-fd-weight:400;--cg-fb-weight:400;--cg-strong:700;--cg-lh:1.65;--cg-track:.01em;
  --cg-focus:#1D3557;--cg-focus-halo:#F2B83B;--cg-ok:#1b5e3a;--cg-bad:#C8412E;--cg-bar:#1D3557;--cg-bar-ink:#FDFCF8;
}
.cg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- toggle (persistent, in every header) ---------- */
.cg-tt{display:inline-flex;align-items:stretch;gap:0;border:var(--cg-border);border-radius:var(--cg-pill);background:var(--cg-surface);color:var(--cg-ink);font-family:var(--cg-fb);overflow:hidden;box-shadow:var(--cg-shadow-s);line-height:1}
.cg-tt button{appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-size:13px;font-weight:var(--cg-strong);display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 12px;cursor:pointer;justify-content:center}
.cg-tt button+button{border-inline-start:var(--cg-border)}
.cg-tt button[aria-pressed="true"]{background:var(--cg-accent);color:var(--cg-on-accent)}
.cg-tt button:hover:not([aria-pressed="true"]){background:var(--cg-surface-2)}
.cg-tt .cg-sw{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;flex:none;display:inline-block}
.cg-tt .cg-sw[data-t="a"]{background:#3DDC97;border-color:#000;border-radius:4px;transform:rotate(-8deg)}
.cg-tt .cg-sw[data-t="b"]{background:#FDFCF8;border-color:#1D3557;border-radius:2px;box-shadow:inset 0 -5px 0 #F2B83B}
@media(max-width:520px){.cg-tt button{padding:0 10px}.cg-tt .cg-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}
.cg-float{position:fixed;inset-block-end:max(12px,env(safe-area-inset-bottom));inset-inline-start:12px;z-index:60}
.cg-tt:focus-within{outline:3px solid var(--cg-focus);outline-offset:2px}

/* ---------- first-visit chooser ---------- */
dialog.cg-pick{border:var(--cg-border);border-radius:calc(var(--cg-radius) + 6px);padding:0;width:min(880px,calc(100vw - 20px));max-height:calc(100dvh - 20px);overflow:auto;background:var(--cg-bg);color:var(--cg-ink);font-family:var(--cg-fb);box-shadow:var(--cg-shadow-l)}
dialog.cg-pick::backdrop{background:rgba(10,14,22,.62)}
.cg-pick form{display:block;margin:0;padding:clamp(16px,4vw,30px)}
.cg-pick h2{font:var(--cg-fd-weight) clamp(26px,5vw,40px)/1.05 var(--cg-fd);margin:0 0 6px;letter-spacing:var(--cg-track)}
.cg-pick .cg-sub{margin:0 0 18px;color:var(--cg-muted);font-size:16px;line-height:1.5}
.cg-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 16px;padding:0;border:0}
.cg-opt{appearance:none;text-align:start;font:inherit;color:var(--cg-ink);cursor:pointer;padding:0;display:block;border-radius:var(--cg-radius);background:transparent;border:0;position:relative}
.cg-opt:focus-visible{outline:3px solid var(--cg-focus);outline-offset:4px}
.cg-opt .cg-card{display:block;border:var(--cg-border);border-radius:var(--cg-radius);background:var(--cg-surface);box-shadow:var(--cg-shadow);overflow:hidden;transition:transform .18s var(--cg-ease),box-shadow .18s var(--cg-ease)}
.cg-opt:hover .cg-card,.cg-opt:focus-visible .cg-card{transform:translate(-2px,-2px)}
.cg-opt .cg-prev{display:block;padding:16px 16px 14px;background:var(--cg-bg);border-bottom:var(--cg-border);min-height:150px;position:relative;overflow:hidden}
.cg-opt .cg-meta{display:block;padding:12px 16px 14px;background:var(--cg-surface);color:var(--cg-ink)}
.cg-opt .cg-name{display:block;font:var(--cg-fd-weight) 24px/1.1 var(--cg-fd);letter-spacing:var(--cg-track)}
.cg-opt .cg-desc{display:block;font-size:14.5px;line-height:1.45;color:var(--cg-muted);margin-top:4px}
.cg-opt .cg-go{display:inline-block;margin-top:10px;background:var(--cg-btn-bg);color:var(--cg-btn-ink);border-radius:var(--cg-radius-s);padding:8px 14px;font-weight:var(--cg-strong);font-size:15px;min-height:40px;line-height:24px}
.cg-opt:hover .cg-go,.cg-opt:focus-visible .cg-go{background:var(--cg-btn-hover);color:var(--cg-btn-hover-ink)}
/* mini previews (each card re-declares its own data-theme, so tokens resolve per card) */
.cg-prev .pv-k{display:inline-block;font:var(--cg-strong) 11px/1 var(--cg-fb);letter-spacing:.08em;background:var(--cg-hi);color:var(--cg-on-hi);padding:5px 9px;border:var(--cg-border);border-radius:var(--cg-pill)}
.cg-prev .pv-h{display:block;font:var(--cg-fd-weight) 38px/1 var(--cg-fd);margin:12px 0 10px;letter-spacing:var(--cg-track)}
.cg-prev .pv-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.cg-prev .pv-b{display:inline-block;background:var(--cg-btn-bg);color:var(--cg-btn-ink);font:var(--cg-strong) 13px/1 var(--cg-fb);padding:9px 12px;border-radius:var(--cg-radius-s);border:var(--cg-border)}
.cg-prev .pv-c{display:inline-block;background:var(--cg-accent);color:var(--cg-on-accent);font:var(--cg-strong) 12px/1 var(--cg-fb);padding:7px 10px;border:var(--cg-border);border-radius:var(--cg-pill);box-shadow:var(--cg-shadow-s)}
.cg-prev .pv-a{position:absolute;inset-block-end:12px;inset-inline-end:14px;width:60px;height:44px;background:var(--cg-surface);border:var(--cg-border);display:grid;place-items:center;font:11px var(--cg-fm);color:var(--cg-ink)}
.cg-opt[data-theme="a"] .pv-a{border-radius:8px;transform:rotate(-7deg);box-shadow:var(--cg-shadow-s);background:var(--cg-pink)}
.cg-opt[data-theme="b"] .pv-a{border-radius:2px;transform:rotate(4deg);background:var(--cg-surface);border-style:dashed;letter-spacing:.06em}
.cg-opt[data-theme="b"] .pv-a:before{content:"";position:absolute;inset:4px;border:1px solid var(--cg-line)}
.cg-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cg-foot .cg-note{margin:0;color:var(--cg-muted);font-size:14px}
.cg-skip{appearance:none;background:transparent;border:0;font:inherit;color:var(--cg-ink);text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:0 6px;cursor:pointer;font-weight:var(--cg-strong)}
.cg-skip:focus-visible{outline:3px solid var(--cg-focus);outline-offset:2px}
@media(max-width:620px){.cg-opts{grid-template-columns:minmax(0,1fr)}.cg-opt .cg-prev{min-height:118px}.cg-prev .pv-h{font-size:32px;margin:8px 0}}
@media(prefers-reduced-motion:no-preference){dialog.cg-pick[open]{animation:cg-in .28s var(--cg-ease)}@keyframes cg-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){.cg-opt .cg-card{transition:none}.cg-opt:hover .cg-card,.cg-opt:focus-visible .cg-card{transform:none}}
