/* Gymveo design system · tokens. Source of truth: DESIGN.md. Do not add raw hex values in page CSS. */
@font-face{font-family:Outfit;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/outfit-latin.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:Outfit;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/outfit-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Readex Pro";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/readex-arabic.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EEFF}
@font-face{font-family:"Readex Pro";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/readex-latin.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{--ink:#0B1530;--ink2:#131F42;--ink3:#1B2856;--cobalt:#2F50FF;--sky:#9DB4FF;--fog:#EEF1F6;--coral:#FF5A3C;--paper:#FFFFFF}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased}
body.floor,body.desk{color-scheme:light}
body.floor{color-scheme:dark}
html[data-theme="light"] body.floor{color-scheme:light}
html[data-theme="dark"] body.desk{color-scheme:dark}
img,svg{max-width:100%}
[hidden]{display:none!important}
h1,h2,h3,h4,h5{margin:0;font-weight:600;letter-spacing:-.02em;text-wrap:balance}
p{margin:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
.tab,.num{font-variant-numeric:tabular-nums}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:3px solid var(--focus,#9DB4FF);outline-offset:2px}

/* shared primitives */
.floor,.desk{--r-sm:8px;--r-md:12px;--r-lg:16px;--ease:cubic-bezier(.2,.8,.2,1);font-family:Outfit,system-ui,sans-serif;background:var(--page);color:var(--text)}
.floor[dir="rtl"],.desk[dir="rtl"]{font-family:"Readex Pro",Outfit,sans-serif}
.floor svg.ic,.desk svg.ic{width:20px;height:20px;flex:none}
.floor b,.desk b{font-weight:600}

/* FLOOR tokens: member app, dark (default) */
.floor{--page:#0B1530;--panel:#131F42;--raised:#1B2856;--line:rgba(157,180,255,.18);--line-2:rgba(157,180,255,.34);
  --text:#EEF1F6;--text-hi:#FFFFFF;--text-2:#C9D3EE;--muted:#8C9ABF;--accent-2:#9DB4FF;
  --action:#2F50FF;--on-action:#FFFFFF;--live:#FF5A3C;--ok:#6FD39C;--warn:#FFC266;--bad:#FF8A70;--focus:#9DB4FF;font-size:16px}
/* FLOOR light (member chose Light in Moi) */
html[data-theme="light"] .floor,.floor.light{--page:#F4F6FA;--panel:#FFFFFF;--raised:#E9EDF4;--line:#DCE2EC;--line-2:#C3CCDA;
  --text:#0B1530;--text-hi:#0B1530;--text-2:#3C4764;--muted:#5F6A85;--accent-2:#2F50FF;--ok:#0F7A45;--warn:#9A5B00;--bad:#C4331C}
/* DESK tokens: staff app, light (default) */
.desk{--page:#EEF1F6;--panel:#FFFFFF;--raised:#FFFFFF;--sunken:#E4E9F1;--line:#D4DBE7;--line-soft:#E3E8F0;
  --text:#0B1530;--text-hi:#0B1530;--text-2:#3C4764;--muted:#56607A;--accent-2:#2F50FF;
  --action:#2F50FF;--action-h:#2440E0;--on-action:#FFFFFF;--live:#FF5A3C;--focus:#9DB4FF;
  --ok:#0F7A45;--ok-bg:#E2F4EA;--warn:#8A5200;--warn-bg:#FFF1D6;--bad:#B42A14;--bad-bg:#FDE7E2;font-size:15px}
/* DESK dark (evening desk) */
html[data-theme="dark"] .desk,.desk.dark{--page:#0B1530;--panel:#131F42;--raised:#1B2856;--sunken:#0E1836;--line:#26335E;--line-soft:#1D2A52;
  --text:#EEF1F6;--text-hi:#FFFFFF;--text-2:#C9D3EE;--muted:#8C9ABF;--accent-2:#9DB4FF;
  --ok:#6FD39C;--ok-bg:#12352A;--warn:#FFC266;--warn-bg:#3A2C10;--bad:#FF8A70;--bad-bg:#3D1A14}


