/* ============================================================
   LILOU — Design tokens
   ============================================================ */
/* @brand:light */
:root{
  --navy:#14384A;
  --navy-deep:#0C2532;
  --navy-soft:#2E5C73;
  --navy-mist:#E3EDF4;
  --rose:#96754E;
  --rose-light:#D8C090;
  --rose-deep:#6E5537;
  --rose-mist:#F6EFE4;
  --cream:#EEF7FF;
  --cream-2:#E4F0FA;
  --cream-3:#D8E8F5;
  --paper:#FFFFFF;
  --ink:#12242E;
  --ink-2:#41565F;
  --muted:#7C9099;
  --line:#D6E4EE;
  --line-strong:#BDD2E0;
  --good:#2F6B4F;
  --good-bg:#E6F1EB;
  --warn:#9A6714;
  --warn-bg:#FBF0DC;
  --danger:#A63C33;
  --danger-bg:#FAE9E6;
  --info:#2A588A;
  --info-bg:#E8F0F8;
  --on-accent:#FFFFFF;
  --on-primary:#EAF3FA;
  --on-accent-ink:#2B2010;
  --on-accent-soft:#5C4423;
  --surface-dark:#0E1A22;
  --logo-plate:#EEF7FF;
  --r-sm:8px; --r-md:14px; --r-lg:22px; --r-xl:30px;
  --sp1:4px; --sp2:8px; --sp3:12px; --sp4:16px; --sp5:24px; --sp6:32px; --sp7:48px;
  --shadow-s:0 1px 2px rgba(20,56,74,.06), 0 2px 8px rgba(20,56,74,.05);
  --shadow-m:0 4px 12px rgba(20,56,74,.08), 0 12px 32px rgba(20,56,74,.07);
  --shadow-l:0 12px 32px rgba(20,56,74,.12), 0 28px 68px rgba(20,56,74,.10);
  --fa:'Vazirmatn','IRANSans','Segoe UI',Tahoma,Arial,sans-serif;
  --serif:'Montserrat Alternates','Vazirmatn',Georgia,sans-serif;
  --tap:44px;
}
/* @end */
/* @brand:dark */
html[data-theme="dark"]{
  --navy:#7FB3CC;
  --navy-deep:#B9D7E6;
  --navy-soft:#5E90A8;
  --navy-mist:#16242E;
  --rose:#C9A87A;
  --rose-light:#7A6440;
  --rose-deep:#E0C79B;
  --rose-mist:#241C12;
  --cream:#101619;
  --cream-2:#161D22;
  --cream-3:#1D262C;
  --paper:#141B20;
  --ink:#E4EEF3;
  --ink-2:#AFC0C8;
  --muted:#7E8F98;
  --line:#26313A;
  --line-strong:#35434E;
  --good:#7BC49C;
  --good-bg:#1A2A22;
  --warn:#E0B15E;
  --warn-bg:#2B2416;
  --danger:#E58C82;
  --danger-bg:#2E1D1B;
  --info:#7FB0E0;
  --info-bg:#182432;
  --on-accent:#101A22;
  --on-primary:#E4EEF3;
  --on-accent-ink:#160F06;
  --on-accent-soft:#E3C9A6;
  --surface-dark:#0E1A22;
  --logo-plate:#EEF7FF;
  --shadow-s:0 1px 2px rgba(0,0,0,.3);
  --shadow-m:0 4px 14px rgba(0,0,0,.4);
  --shadow-l:0 14px 40px rgba(0,0,0,.55);
}
/* @end */

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  font-family:var(--fa); background:var(--cream); color:var(--ink);
  font-size:15px; line-height:1.7; font-weight:400;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body::before{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:0; opacity:.5;
  background:
    radial-gradient(1100px 620px at 88% -8%, var(--rose-mist), transparent 62%),
    radial-gradient(900px 520px at 4% 4%, var(--navy-mist), transparent 60%);
}
input,select,textarea,button{font-family:inherit; font-size:inherit; color:inherit}
button{cursor:pointer; border:0; background:none}
a{color:var(--navy); text-decoration:none}
::selection{background:var(--rose-light); color:var(--ink)}

*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:var(--line-strong); border-radius:99px; border:3px solid var(--cream)}
*::-webkit-scrollbar-thumb:hover{background:var(--rose)}
