/* Fonts loaded via Next.js font optimization */
:root{--navy-950:#0E1F40;--navy-900:#153063;--navy-800:#1A3A75;--navy-700:#1F4387;--navy-500:#4A69A6;--navy-300:#A3B5D6;--navy-100:#E3E9F4;--navy-50:#F3F6FB;
--gold-700:#B08C0F;--gold-600:#D6AD15;--gold-500:#EAC448;--gold-200:#F7E6A8;--gold-100:#FBF3D6;
--ink:#2A2B2A;--ink-2:#55534F;--ink-3:#84807A;--line:#E4E2DE;--line-strong:#CFCBC4;--canvas:#FAF9F7;--surface:#fff;--sunken:#F2F2F2;
--ok:#1E7A4C;--ok-bg:#E6F3EC;--err:#B42318;--park:#5B3C8C;--park-bg:#EFEAF6;
--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;
--sh-1:0 1px 2px rgba(14,31,64,.06),0 1px 1px rgba(14,31,64,.04);--sh-2:0 4px 12px -2px rgba(14,31,64,.10),0 2px 4px rgba(14,31,64,.05);--sh-3:0 24px 48px -12px rgba(14,31,64,.25),0 8px 16px -8px rgba(14,31,64,.12)}
*{box-sizing:border-box;margin:0}
body{font-family:Poppins,system-ui,sans-serif;color:var(--ink);background:var(--canvas);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
::selection{background:var(--gold-200);color:var(--navy-950)}
.num{font-variant-numeric:tabular-nums}
h1,h2,h3{text-wrap:balance;letter-spacing:-.025em;line-height:1.15}
.btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--r-md);font:500 15px Poppins;border:1px solid transparent;cursor:pointer;text-decoration:none}
.btn-primary{background:var(--navy-700);color:#fff}.btn-accent{background:var(--gold-500);color:var(--navy-950)}
.btn-secondary{background:#fff;border-color:var(--line-strong);color:var(--ink)}.btn-ghost-dark{background:transparent;color:#fff;border-color:var(--navy-500)}
.caps{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.tag{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--navy-50);color:var(--navy-700)}
.tag.park{background:var(--park-bg);color:var(--park)}
/* chat */
.msgs{display:flex;flex-direction:column;gap:4px;padding:16px 14px}
.row{display:flex;align-items:flex-end;gap:8px}.row.me{justify-content:flex-end}
.av{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:50% 20%;flex:none;background:#fff}
.av.sp{visibility:hidden}
.b{max-width:78%;padding:10px 14px;font-size:15px;line-height:1.45;border-radius:18px 18px 18px 6px;background:#fff;box-shadow:var(--sh-1)}
.me .b{background:var(--navy-700);color:#fff;border-radius:18px 18px 6px 18px;box-shadow:none}
.gap{height:10px}.ts{font-size:11px;color:var(--ink-3);padding:2px 40px}
.me+.ts,.ts.r{text-align:right;padding-right:4px}
.chips{display:flex;gap:6px;padding:6px 0 0 40px}
.chip{height:36px;padding:0 10px;border-radius:999px;border:1px solid var(--navy-300);background:#fff;color:var(--navy-700);font:500 14px Poppins;display:inline-flex;align-items:center}
.chip.hov{background:var(--navy-50);border-color:var(--navy-700)}
.typing{display:inline-flex;gap:5px;padding:14px 16px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--navy-300)}.typing i:nth-child(2){opacity:.6}.typing i:nth-child(3){opacity:.3}
/* grid */
:where(.grid){display:grid;gap:4px;align-items:center}
.gh{font-size:12px;font-weight:600;color:var(--ink-2);text-align:center}
.rn{font-size:14px;font-weight:500;padding-right:8px;white-space:nowrap}.rn small{display:block;color:var(--ink-3);font-weight:400;font-size:12px}
.c{height:44px;border-radius:var(--r-sm);border:1px solid var(--line);background:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;color:var(--ink-3)}
.c.bk{background:var(--sunken);border-color:var(--sunken)}
.c.sg{background:var(--gold-100);border:2px solid var(--gold-500);color:var(--navy-950);font-weight:600}
.c.sg.hov{box-shadow:0 0 0 4px rgba(234,196,72,.35)}
.c.sel{background:var(--navy-700);border-color:var(--navy-700);color:#fff;font-weight:600}
.c.mt{background:var(--sunken);border-color:var(--sunken)}
.legend{display:flex;gap:18px;font-size:13px;color:var(--ink-2)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:14px;height:14px;border-radius:4px;border:1px solid var(--line)}
.field label{display:block;font-size:14px;font-weight:500;margin-bottom:6px}
.inp{height:48px;border-radius:var(--r-md);border:1px solid var(--line-strong);padding:0 14px;display:flex;align-items:center;font-size:15px;background:#fff}
.inp.filling{background:var(--navy-50);border-color:var(--navy-700)}
.inp .ph{color:var(--ink-3)}
.dates{display:flex;gap:6px}.d{width:56px;padding:8px 0;border-radius:var(--r-md);text-align:center;border:1px solid var(--line);background:#fff}
.d b{display:block;font-size:20px;font-weight:600}.d small{font-size:12px;color:var(--ink-2)}
.d.on{background:var(--navy-700);border-color:var(--navy-700);color:#fff}.d.on small{color:var(--navy-100)}
.d.today b::after{content:"";display:block;width:5px;height:5px;border-radius:50%;background:var(--gold-500);margin:2px auto 0}
