/* Mayan product foundation. Page modules own composition; these tokens own the UI. */
:root{--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--r-sm:10px;--r-md:16px;--r-lg:24px;--r-btn:10px;--action:#74232e;--font-ar:Cairo,Tahoma,sans-serif;--font-en:'Instrument Sans',Arial,sans-serif;--font-mono:'DM Mono',monospace;--gut:80px;--m-in:140ms;--m-out:200ms;--m-ease:cubic-bezier(.2,.8,.2,1)}
:root[data-theme=light]{--page-bg:#f6f5f1;--surface:#fffefa;--surface-raised:#eeede8;--surface-muted:#e8e7e1;--input-bg:#fffefa;--theme-ink:#242b2f;--theme-muted:#60676a;--theme-line:#d8dcd8;--ink:#242b2f;--muted:#60676a;--line:#d8dcd8;--line-strong:#a0a8a8;--accent:#74232e;--focus:#8f3040;--brand-bordeaux:#74232e}
:root[data-theme=dark]{--page-bg:#17191b;--surface:#202326;--surface-raised:#292d31;--surface-muted:#2e3337;--input-bg:#1b1e21;--theme-ink:#f4f3ed;--theme-muted:#aeb8bc;--theme-line:#3e474c;--ink:#f4f3ed;--muted:#aeb8bc;--line:#3e474c;--line-strong:#66747b;--accent:#e7a9b1;--focus:#efb7bf;--brand-bordeaux:#e7a9b1}
*{box-sizing:border-box}html{scroll-padding-top:96px}body{margin:0}.app-page{font-family:var(--font-ar);font-size:16px;line-height:1.7}html[lang=en] .app-page{font-family:var(--font-en);line-height:1.6}html[lang=ar] :is(h1,h2,h3){letter-spacing:0}
.skip{position:absolute;inset-block-start:8px;inset-inline-start:24px;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.app-page a{color:var(--accent);text-decoration:none}.app-page a:not(.button,.brand):hover{text-decoration:underline;text-underline-offset:5px}
html[data-theme] .app-page{background:var(--page-bg);background-image:none;color:var(--ink)}
html[data-theme] .app-page .wrap{width:min(calc(100% - 2 * var(--gut)),1280px);max-width:1280px;margin-inline:auto}
html[data-theme] .app-page>header{position:relative;z-index:10;background:var(--page-bg);border-bottom:1px solid var(--line)}
html[data-theme] .app-page .site-header-nav{height:auto;min-height:88px;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;padding-block:16px}
html[data-theme] .app-page .brand{font-size:28px;font-weight:500;line-height:1.2;white-space:nowrap;color:var(--ink);text-decoration:none;display:flex;align-items:baseline;gap:10px}
html[data-theme] .app-page .brand small{font-family:var(--font-en);font-size:11px;letter-spacing:2px;font-weight:500;color:var(--muted)}
html[data-theme] .site-header-nav :is(.account-nav,.links){gap:24px;flex-wrap:nowrap;align-items:center;font-size:14px;justify-self:end}
html[data-theme] .site-header-nav :is(.account-nav,.links)>a{position:relative;text-decoration:none;color:var(--muted);white-space:nowrap;padding-block:8px;min-height:44px;display:inline-flex;align-items:center}
html[data-theme] .site-header-nav :is(.account-nav,.links)>a[aria-current=page]{color:var(--ink)}
html[data-theme] .site-header-nav :is(.account-nav,.links)>a::after{content:'';position:absolute;inset-inline:0;bottom:2px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:inline-start;transition:transform var(--m-out) var(--m-ease)}
html[data-theme] .site-header-nav :is(.account-nav,.links)>a:is(:hover,:focus-visible,[aria-current=page])::after{transform:scaleX(1)}
html[data-theme] .site-preferences{gap:8px;display:flex;align-items:center;justify-self:end}
html[data-theme] .site-preferences button{border:1px solid var(--line);background:transparent;color:var(--ink);min-height:44px;border-radius:var(--r-sm);font-size:13px;font-weight:500;padding:8px 12px;white-space:nowrap}
.nav-menu-toggle{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:23px;line-height:1;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);cursor:pointer}
.nav-sheet{width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:24px;border:0;background:var(--page-bg);color:var(--ink);font-family:inherit;inset:0;overflow:auto}
.nav-sheet::backdrop{background:#1118}.nav-sheet-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--line)}.nav-sheet-heading h2{margin:0;font-size:24px;font-weight:500}
.nav-sheet-heading button{font:inherit;font-size:14px;min-height:48px;padding:12px 20px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);cursor:pointer}
.nav-sheet :is(.account-nav,.links){display:flex;flex-direction:column;align-items:stretch;gap:0;font-size:20px;width:100%}.nav-sheet :is(.account-nav,.links)>:is(a,button){min-height:64px;padding:16px 0;text-align:start;border-radius:0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-decoration:none;line-height:1.5}.nav-sheet [aria-current=page]{font-weight:600;color:var(--accent)!important}
.landing-page .nav-sheet .links>:is(.nav__link,.btn){display:flex;justify-content:flex-start;min-height:64px;width:100%;font-size:18px;background:transparent;color:var(--ink)!important;border:0;border-bottom:1px solid var(--line);padding:16px 0;white-space:normal;line-height:1.5}.landing-page .nav-sheet .links{margin:0;gap:0}.landing-page .nav-sheet .signup-link{color:var(--accent)!important}
html[data-theme] .app-page main{padding-block:40px;min-height:calc(100svh - 200px)}
html[data-theme] .app-page :is(h1,h2,h3){font-weight:500;overflow-wrap:break-word;color:var(--ink)}
html[data-theme] .app-page h1{font-size:clamp(32px,3.3vw,48px);line-height:1.3;margin-block:8px 16px;letter-spacing:-.025em}
:where(html[data-theme] .app-page) h2{font-size:clamp(24px,2.3vw,32px);line-height:1.4;margin-block:0 24px;letter-spacing:-.015em}
:where(html[data-theme] .app-page) h3{font-size:21px;line-height:1.5;font-weight:500}
html[lang=ar][data-theme] .app-page :is(h1,h2,h3){letter-spacing:0;line-height:1.6}
html[data-theme] .app-page :is(.helper,.muted,.state-hint,.tiny-label,small){font-size:13px;color:var(--muted);line-height:1.75}
html[data-theme] .app-page .eyebrow{font-size:13px;font-weight:500;letter-spacing:0;color:var(--accent)}
html[data-theme] .app-page .lead{font-size:18px;line-height:1.8;max-width:58ch}
html[data-theme] .app-page :is(.button,.text-button){font-size:14px;font-weight:500;min-height:48px;border-radius:var(--r-btn);line-height:1.5;filter:none;box-shadow:none;transition:background-color var(--m-out),border-color var(--m-out),color var(--m-out),transform 90ms}
html[data-theme] .app-page .button{padding:12px 20px;text-decoration:none;max-width:100%;white-space:normal}
html[data-theme] .app-page .button.primary{background:var(--action);color:#fff7f2;border:1px solid var(--action)}
html[data-theme] .app-page .button.secondary{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}
html[data-theme] .app-page .text-button{background:transparent;color:var(--accent);padding:10px 8px;border:0;text-decoration:none}
html[data-theme] .app-page :is(.button,.text-button):disabled{cursor:default;opacity:.5;transform:none}
html[data-theme] .app-page :is(.panel,.record-card,.vehicle-card,.summary-card,.attention-box,.identity-card,.component-tile,.paint-controls,.component-dialog){background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);color:var(--ink);box-shadow:none}
html[data-theme] .app-page .panel{padding:32px}
html[data-theme] .app-page .field{gap:8px;margin-bottom:24px;min-width:0}
html[data-theme] .app-page :is(.field label,.search-label,.profile-form label){font-size:13px;font-weight:500;line-height:1.6}
html[data-theme] .app-page :is(input,select,textarea){font:inherit;accent-color:var(--action);max-width:100%}
html[data-theme] .app-page :is(.field input,.field textarea,.field select,.search-label input,.profile-form input,.heading-tools select,.component-toolbar select,.component-toolbar input,:where(#alert-filter,#system-select)){min-height:48px;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:12px 14px;background:var(--input-bg);color:var(--ink);font-size:16px;line-height:1.5;box-shadow:none}
html[data-theme] .app-page :is(input,select,textarea):focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-color:var(--focus);box-shadow:none}
html[data-theme] .app-page .field input:is([type=checkbox],[type=radio]){min-height:20px;min-width:20px;width:20px;padding:0}
html[data-theme] .app-page .password-input{background:var(--input-bg);border:1px solid var(--line-strong);border-radius:var(--r-sm);overflow:hidden}
html[data-theme] .app-page .password-input input{border:0;background:transparent;outline-offset:-3px}
html[data-theme] .app-page :is(.notice,.notice.error){border-radius:var(--r-sm);padding:16px;font-size:14px;line-height:1.7;border-inline-start:3px solid currentColor}
html[data-theme] .app-page :is(.form-actions,.garage-actions,.heading-tools){gap:12px}
html[data-theme] .app-page .role{font-size:12px;padding:4px 10px;line-height:1.6}
html[data-theme] .app-page .empty-state{border:1px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface);padding:64px 24px}.empty-state h2{margin-bottom:12px}
html[data-theme] .app-page dialog{max-width:calc(100vw - 32px);max-height:90dvh;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--r-lg)}
html[data-theme] .app-page dialog::backdrop{background:#10161cb3;backdrop-filter:blur(4px)}
html[data-theme] .app-page .nav-sheet{max-width:none;max-height:none;border:0;border-radius:0;background:var(--page-bg)}
html[data-theme] .app-page :is(dl,.notes){font-size:14px;line-height:1.8}.app-page dl{gap:12px 16px}
html[data-theme] .app-page footer{padding-block:32px;margin-top:40px;border-top:1px solid var(--line);background:transparent;color:var(--muted);font-size:13px}
html[data-theme] .app-page footer .wrap{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}
html[data-theme] .app-page .vehicle-view{animation:none}
.skip:focus{z-index:100;clip-path:none;width:auto;height:auto;padding:12px 16px;background:var(--surface);color:var(--ink)}
.record-extra-fields{grid-column:1/-1;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.record-extra-fields>summary{min-height:48px;padding-block:12px;font-size:14px;font-weight:500;cursor:pointer;color:var(--accent)}.record-extra-fields>.form-grid{margin-top:24px}
@media(hover:hover) and (pointer:fine){html[data-theme] .app-page .button:hover:not(:disabled){transform:translateY(-1px)}html[data-theme] .app-page .button.primary:hover:not(:disabled){background:#61202a;border-color:#61202a}html[data-theme] .app-page .button.secondary:hover:not(:disabled){background:var(--surface-raised);border-color:var(--ink)}html[data-theme] .app-page .text-button:hover:not(:disabled){background:var(--surface-raised)}html[data-theme] .app-page .vehicle-card:has(a):hover{transform:translateY(-2px);border-color:var(--line-strong)}html[data-theme] .app-page .vehicle-card{transition:transform 180ms,border-color 140ms}}
html[data-theme] .app-page .button:active:not(:disabled){transform:translateY(1px) scale(.985)}
@media(max-width:1279px){:root{--gut:48px}.site-header-nav :is(.account-nav,.links){gap:16px!important}}
@media(max-width:1023px){html[data-theme] .site-header-nav,html[data-theme] .app-page .site-header-nav{grid-template-columns:minmax(0,1fr) auto auto;min-height:76px;gap:12px;padding-block:12px}html[data-theme] .site-header-nav .brand{grid-column:1;grid-row:1;justify-self:start}html[data-theme] .site-header-nav .site-preferences{grid-column:2;grid-row:1}.site-header-nav .nav-menu-toggle{display:inline-flex;grid-column:3;grid-row:1}html[data-theme] .app-page main{padding-block:32px}.app-page .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1023px){html[data-theme] .landing-page .site-header-nav{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px}html[data-theme] .landing-page .site-header-nav .site-preferences{margin-inline-start:0}}
@media(max-width:639px){:root{--gut:24px;--r-lg:20px}html[data-theme] .site-header-nav,html[data-theme] .app-page .site-header-nav{gap:8px;min-height:76px}html[data-theme] .app-page .brand{font-size:25px}html[data-theme] .app-page .brand small{display:none}html[data-theme] .site-preferences button{padding:8px 10px;font-size:12px}html[data-theme] .app-page main{padding-block:24px}html[data-theme] .app-page h1{font-size:32px}html[data-theme] .app-page .panel{padding:24px}.app-page .form-grid{grid-template-columns:minmax(0,1fr)}html[data-theme] .app-page .form-actions{display:flex;flex-wrap:wrap}html[data-theme] .app-page .form-actions>*{flex:1;min-width:120px}html[data-theme] .app-page :is(.helper,.muted,small){font-size:13px}.nav-sheet{padding:24px}.app-page .toolbar{gap:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}html[data-theme] .app-page :is(.button,.text-button,.vehicle-card){transition:none!important;animation:none!important;transform:none!important}html[data-theme] .site-header-nav a::after{transition:none!important;animation:none!important}}
