/* Stand-in for the Claude Design system tokens + component styles (the _ds folder
   was not part of the export). Base = the product navy palette, same values as
   web/event and web/admin; shared/site.css remaps it for data-theme=bright. */
@font-face{font-family:'Gallinari';src:url(../assets/fonts/GallinariExtraboldCond.woff) format('woff');font-weight:800;font-display:swap;unicode-range:U+0000-00FF,U+0400-045F,U+0490-0491,U+2000-206F}
@font-face{font-family:'Roboto Condensed';src:url(../assets/fonts/RobotoCondensed-ExtraBold.woff2) format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:'Montserrat';src:url(../assets/fonts/Montserrat-Regular.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Montserrat';src:url(../assets/fonts/Montserrat-SemiBold.woff2) format('woff2');font-weight:600 700;font-display:swap}
@font-face{font-family:'Montserrat';src:url(../assets/fonts/Montserrat-ExtraBold.woff2) format('woff2');font-weight:800;font-display:swap}

:root{
  --cb-navy:#1C2740;--cb-cream:#E8DFC9;--cb-coral:#F0785A;--cb-coral-hover:#F38B71;--cb-coral-press:#D9633F;
  --cb-surface:#26334F;--cb-surface-elevated:#2F3D5C;--cb-border:#3A486A;
  --cb-text-primary:#E8DFC9;--cb-text-secondary:#B9B3A3;--cb-text-muted:#8E93A8;
  --cb-success:#5AC08A;--cb-danger:#E4574F;--cb-accent-fest:#8FB8C0;
  --cb-tint-success:rgba(90,192,138,.16);--cb-tint-danger:rgba(228,87,79,.16);--cb-tint-fest:rgba(143,184,192,.16);--cb-tint-muted:rgba(232,223,201,.08);--cb-tint-coral-selection:rgba(240,120,90,.35);
  --cb-bar-glass:rgba(28,39,64,.88);
  --cb-cat-orange:#F0954A;--cb-cat-red:#E4574F;--cb-cat-purple:#A884D8;--cb-cat-blue:#4A90E2;--cb-cat-black:#16181D;
  --bg-app:#1C2740;--text-link:#F0785A;--accent-hover:#F38B71;
  --font-sans:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --font-display:'Gallinari','Montserrat',sans-serif;
  --tracking-eyebrow:.08em;--tracking-display:.01em;--leading-display:.9;
  --focus-ring:0 0 0 3px rgba(240,120,90,.45);
}
/* Gallinari has no Kazakh letters — see web/event/app/globals.css */
:root[lang=kk]{--font-display:'Roboto Condensed','Montserrat',sans-serif}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg-app);font:400 15px/1.5 var(--font-sans);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0;font-weight:700}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--accent-hover)}
button,input,textarea{font:inherit}
img{max-width:100%}
::selection{background:var(--cb-tint-coral-selection)}

.ds-btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 22px;border:0;border-radius:999px;background:var(--cb-coral);color:var(--cb-navy);font:700 15px/1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:background .15s ease}
:root[data-theme=bright] .ds-btn{color:#1D273E}
.ds-btn:hover{background:var(--cb-coral-hover)}
.ds-btn:active{background:var(--cb-coral-press)}
.ds-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.ds-btn-lg{height:56px;padding:0 30px;font-size:16px}
.ds-btn-full{width:100%}

.ds-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:8px;font:600 12px/1.4 var(--font-sans);background:var(--cb-tint-muted);color:var(--cb-text-secondary)}
.ds-pill{border-radius:999px}
.ds-tone-success{background:var(--cb-tint-success);color:var(--cb-success)}
.ds-tone-danger{background:var(--cb-tint-danger);color:var(--cb-danger)}

.ds-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;background:var(--cb-surface-elevated);border: 2px solid var(--cb-border);color:var(--cb-text-primary);font-weight:700}

.ds-seg{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--cb-surface);border: 2px solid var(--cb-border)}
.ds-seg button{height:30px;min-width:38px;padding:0 10px;border:0;border-radius:999px;background:transparent;color:var(--cb-text-secondary);font:700 12px/1 var(--font-sans);cursor:pointer}
.ds-seg button[aria-pressed=true]{background:var(--cb-coral);color:var(--cb-navy)}

.ds-sheet-backdrop{position:fixed;inset:0;z-index:100;display:flex;justify-content:flex-end;background:rgba(10,14,24,.55)}
.ds-sheet{width:min(420px,100%);height:100%;overflow-y:auto;padding:20px 20px calc(24px + env(safe-area-inset-bottom,0px));background:var(--bg-app);color:var(--cb-text-primary);box-shadow:-8px 0 28px rgba(0,0,0,.35);animation:ds-in .2s ease-out}
@keyframes ds-in{from{transform:translateX(24px);opacity:0}}
.ds-sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.ds-sheet-head h2{font-size:20px}
.ds-sheet-close{width:40px;height:40px;border-radius:12px;border: 2px solid var(--cb-border);background:var(--cb-surface);color:var(--cb-text-primary);font-size:22px;cursor:pointer}

.ds-field{display:block}
.ds-field input{width:100%;height:48px;padding:0 14px;border-radius:14px;border: 2px solid var(--cb-border);background:var(--cb-navy);color:var(--cb-text-primary);font:400 16px/1 var(--font-sans);outline:none}
.ds-field input:focus{border-color:var(--cb-coral);box-shadow:var(--focus-ring)}

.ds-days{display:flex;gap:6px;max-width:100%;overflow-x:auto}
.ds-days button{flex:0 0 auto;width:52px;padding:8px 0;display:flex;flex-direction:column;align-items:center;gap:3px;border-radius:14px;border: 2px solid var(--cb-border);background:var(--cb-surface);color:var(--cb-text-secondary);cursor:pointer}
.ds-days small{font:600 11px/1 var(--font-sans);text-transform:uppercase}
.ds-days b{font:700 18px/1 var(--font-sans);color:var(--cb-text-primary)}
.ds-days button[aria-pressed=true]{background:var(--cb-coral);border-color:var(--cb-coral);color:var(--cb-navy)}
.ds-days button[aria-pressed=true] b{color:var(--cb-navy)}

.ds-chips{display:flex;flex-wrap:wrap;gap:8px}
.ds-chips button{height:36px;padding:0 14px;border-radius:999px;border: 2px solid var(--cb-border);background:transparent;color:var(--cb-text-secondary);font:600 13px/1 var(--font-sans);cursor:pointer}
.ds-chips button[aria-pressed=true]{background:var(--cb-text-primary);border-color:var(--cb-text-primary);color:var(--bg-app)}

.ds-empty{padding:24px 8px;text-align:center}
.ds-empty-icon{width:48px;height:48px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:var(--cb-tint-success);color:var(--cb-success);font-size:22px;font-weight:800}
.ds-empty h3{font-size:18px;margin-bottom:6px}
.ds-empty p{margin:0;color:var(--cb-text-secondary);font-size:15px}
