/* ==========================================================================
   URSY.PHOTOS — design tokens. Copied verbatim from URSY.CLOUD tokens.css,
   plus this property’s additions: --m-photos, the physical print paper
   (--print*) and the free-tier ad plate wash (--ad-*).
   Law: NO hex/oklch literal outside this file. If a colour is not a token,
   it does not exist. Accessibility tooling reads this file.
   ========================================================================== */
:root{
  /* surfaces */
  --bg:#fbfbfa; --ink:#131518; --ink2:#5c6167; --ink3:#686c72;
  /* hairlines + washes */
  --line:rgba(18,20,24,.08); --line2:rgba(18,20,24,.15); --hover:rgba(18,20,24,.05);
  /* glass */
  --glass:rgba(255,255,255,.72); --card:rgba(255,255,255,.82); --sheet:rgba(255,255,255,.92);
  --field:rgba(255,255,255,.9); --topline:rgba(255,255,255,.75);
  --scrim:rgba(250,250,249,.34); --sideveil:rgba(252,252,251,.66);
  --lift:0 30px 90px -30px rgba(16,18,22,.5);
  /* THE ACCENT. One bright cyan for interaction: hovers, focus, selection,
     primary emphasis. Owner-approved value — change only here. */
  --neon:#15E7F4; --neon-soft:rgba(21,231,244,.14); --on-neon:#04212a;
  /* status */
  --ok:oklch(.52 .14 155); --warn:oklch(.62 .13 75); --danger:oklch(.55 .17 25);
  /* aurora orb palette (runtime-overridable by theme.js colour profiles) */
  --o1:oklch(.76 .22 208); --o2:oklch(.66 .30 272); --o3:oklch(.86 .21 92); --o4:oklch(.66 .30 312);
  --spec:rgba(255,255,255,.95);
  --vig:radial-gradient(130% 90% at 50% -22%, rgba(255,255,255,.6), rgba(255,255,255,0) 56%),
        radial-gradient(130% 100% at 50% 120%, rgba(18,20,24,.075), rgba(18,20,24,0) 52%);
  /* per-service identity (icons, tiles, footer column heads) */
  --m-web:oklch(.56 .17 258); --m-domain:oklch(.54 .13 158); --m-mail:oklch(.68 .14 75);
  --m-wp:oklch(.54 .17 300); --m-sec:oklch(.55 .18 28); --m-help:oklch(.56 .16 285);
  --m-photos:oklch(.58 .19 345);
  /* physical prints stay paper, whatever the theme */
  --print:#ffffff; --print-ink:#43474d; --print-ink2:#7a7f86; --print-line:rgba(16,18,22,.08);
  --print-glare:rgba(255,255,255,.88);
  --photo-table:#eef0ef; --photo-table-line:rgba(18,20,24,.08);
  --photo-table-shadow:0 24px 70px -50px rgba(16,18,22,.38);
  --photo-card-shadow:0 16px 28px -16px rgba(16,18,22,.28);
  --photo-card-shadow-hover:0 22px 36px -17px rgba(16,18,22,.36);
  --photo-card-shadow-selected:0 0 0 2px var(--neon),0 22px 42px -16px rgba(16,18,22,.4);
  --photo-card-shadow-active:0 34px 66px -22px rgba(16,18,22,.58);
  /* the free tier’s one plain ad plate */
  --ad-wash:rgba(18,20,24,.035); --ad-ink:#6d7178;
  /* type — two faces and there is no third */
  --font-ui:'Instrument Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  /* geometry */
  --radius-s:8px; --radius-m:14px; --radius-l:22px;
  --header-h:68px; --shell:1140px; --reading:72ch;
}
[data-theme="dark"]{
  --bg:#050506; --ink:#f6f4f1; --ink2:#a5abb2; --ink3:#8e959d;
  --line:rgba(255,255,255,.085); --line2:rgba(255,255,255,.17); --hover:rgba(255,255,255,.06);
  --glass:rgba(17,17,20,.7); --card:rgba(17,17,20,.8); --sheet:rgba(13,13,16,.93);
  --field:rgba(20,20,23,.9); --topline:rgba(255,255,255,.07);
  --scrim:rgba(5,5,6,.3); --sideveil:rgba(8,8,10,.56);
  --lift:0 34px 100px -30px rgba(0,0,0,.85);
  --neon:#15E7F4; --neon-soft:rgba(21,231,244,.18); --on-neon:#04212a;
  --ok:oklch(.7 .13 155); --warn:oklch(.78 .12 78); --danger:oklch(.7 .15 25);
  --o1:oklch(.72 .25 205); --o2:oklch(.62 .33 274); --o3:oklch(.82 .24 90); --o4:oklch(.64 .33 314);
  --vig:radial-gradient(130% 90% at 50% -22%, rgba(255,255,255,.05), rgba(255,255,255,0) 56%),
        radial-gradient(130% 100% at 50% 120%, rgba(0,0,0,.5), rgba(0,0,0,0) 55%);
  --m-web:oklch(.72 .13 258); --m-domain:oklch(.72 .12 158); --m-mail:oklch(.80 .12 82);
  --m-wp:oklch(.72 .13 300); --m-sec:oklch(.70 .15 28); --m-help:oklch(.72 .13 285);
  --m-photos:oklch(.74 .15 345);
  --print:#f4f1ec; --print-ink:#43474d; --print-ink2:#83888f; --print-line:rgba(16,18,22,.1);
  --print-glare:rgba(255,255,255,.72);
  --photo-table:#111216; --photo-table-line:rgba(255,255,255,.1);
  --photo-table-shadow:0 28px 76px -46px rgba(0,0,0,.74);
  --photo-card-shadow:0 18px 34px -16px rgba(0,0,0,.72);
  --photo-card-shadow-hover:0 24px 42px -16px rgba(0,0,0,.82);
  --photo-card-shadow-selected:0 0 0 2px var(--neon),0 24px 46px -16px rgba(0,0,0,.86);
  --photo-card-shadow-active:0 36px 72px -18px rgba(0,0,0,.94);
  --ad-wash:rgba(255,255,255,.05); --ad-ink:#9aa0a7;
}
