/* Tabestoon design tokens (DESIGN.md). Shared by the menu and the cafe site; colours from decisions.md. */
:root{
  --blue:#3D7FCC;--blue-ink:#2E66A8;--sky:#78B6E6;--sand:#E9D1B1;--sand-soft:#F3E6D2;--cream:#FAF7EF;--navy:#2D3E50;
  --ink:var(--navy);--muted:#5B6B7B;--bg:var(--cream);--surface:#FFFDF8;--line:#EADFCB;--accent:var(--blue);--on-accent:#fff;
  --ph:radial-gradient(120% 90% at 85% 15%,#DCEBF8 0,transparent 60%),radial-gradient(90% 80% at 10% 95%,#F1E1C8 0,transparent 65%),#F6F1E6;
  --shadow-sm:0 1px 2px rgba(45,62,80,.06),0 2px 8px rgba(45,62,80,.05);
  --shadow-md:0 6px 18px -6px rgba(45,62,80,.16),0 2px 6px rgba(45,62,80,.06);
  --shadow-lg:0 18px 40px -14px rgba(46,102,168,.32);
  --r-sm:10px;--r-md:16px;--r-lg:24px;--r-pill:999px;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --font:Vazirmatn,Tahoma,sans-serif;
}
@media (prefers-color-scheme:dark){:root{
  --ink:#F1ECE2;--muted:#A9B6C3;--bg:#1A2430;--surface:#223040;--line:#324458;--accent:var(--sky);--on-accent:#14202C;--sand-soft:#3A3428;
  --ph:radial-gradient(120% 90% at 85% 15%,#2B4A68 0,transparent 60%),radial-gradient(90% 80% at 10% 95%,#4A4234 0,transparent 65%),#24313F;
  --shadow-sm:0 1px 2px rgba(0,0,0,.25);--shadow-md:0 8px 22px -8px rgba(0,0,0,.5);--shadow-lg:0 18px 40px -14px rgba(0,0,0,.6);
}}
*{box-sizing:border-box}
body{margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}
::selection{background:var(--sand);color:var(--navy)}
input,textarea{caret-color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
html{scrollbar-color:var(--sand) transparent}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.ic{flex:none;display:inline-block;vertical-align:middle}
.num{font-variant-numeric:tabular-nums}
[hidden]{display:none!important}
.sea{display:block;width:100%;height:56px}
.sea .w1{fill:var(--sand)}.sea .w2{fill:var(--sky)}.sea .w3{fill:var(--blue)}
.pebbles{background-image:url(/images/pattern-pebbles.svg);background-size:280px}
@media (prefers-color-scheme:dark){.pebbles{background-image:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto!important}}
