@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-50:oklch(98% .016 73.684);--color-orange-600:oklch(64.6% .222 41.116);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-green-50:oklch(98.2% .018 155.826);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-purple-600:oklch(55.8% .288 302.321);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-xl:80rem;--container-md:28rem;--container-lg:32rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.badge{align-items:center;gap:var(--space-1);padding:.125rem var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;line-height:1;display:inline-flex}.badge svg,.badge .badge__icon{flex-shrink:0;width:12px;height:12px}.badge--success{background:var(--status-success-bg);color:var(--status-success-text)}.badge--warning{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge--danger{background:var(--status-error-bg);color:var(--status-error-text)}.badge--info{background:var(--status-info-bg);color:var(--status-info-text)}.badge--neutral{background:var(--surface-tertiary);color:var(--text-secondary)}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:var(--font-medium);font-size:var(--text-sm);line-height:var(--leading-tight);border-radius:var(--button-radius);padding-inline:var(--button-padding-x);padding-block:var(--density-button-py);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), filter var(--duration-fast) var(--ease-out);border:1px solid #0000;text-decoration:none;display:inline-flex;position:relative}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:not(:active){transform:scale(1)}.btn:active{transition:transform 80ms var(--ease-out);transform:scale(.98)}.btn--sm{min-height:32px;font-size:var(--text-xs)}.btn--md{min-height:40px}.btn--lg{min-height:48px;font-size:var(--text-base)}@media (pointer:coarse){.btn{min-height:44px}}.btn--primary{background-color:var(--color-brand-red);color:var(--text-on-brand)}.btn--secondary{background-color:var(--surface-tertiary);color:var(--text-primary)}.btn--outline{border-color:var(--border-strong);color:var(--text-primary);background-color:#0000}.btn--ghost{color:var(--text-primary);background-color:#0000}.btn--danger{background-color:var(--status-error-text);color:var(--color-brand-white)}.btn--primary:hover,.btn--danger:hover{filter:brightness(.92)}.btn--secondary:hover,.btn--ghost:hover,.btn--outline:hover{background-color:var(--surface-secondary)}.btn--outline:hover{border-color:var(--border-brand)}.btn:disabled,.btn.is-disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn.is-loading{cursor:wait}.btn.is-loading .btn__label,.btn.is-loading .btn__icon{opacity:0;visibility:hidden}.btn__spinner{animation:.8s linear infinite btn-spin;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.btn__icon{align-items:center;display:inline-flex}@keyframes btn-spin{to{transform:translate(-50%,-50%)rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn__spinner{animation-duration:2s}.btn{transition-duration:0s}.btn:active,.btn:not(:active){transform:none}}.form-field{gap:var(--space-1);flex-direction:column;display:flex}.form-field__label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.form-field__required{color:var(--status-error-text);margin-left:.125rem}.form-field__input{padding:var(--density-form-field-py) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background-color:var(--surface-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);width:100%;min-height:44px;transition-property:border-color,box-shadow;transition-duration:var(--duration-fast);transition-timing-function:var(--ease-out)}.form-field__input::placeholder{color:var(--text-tertiary)}.form-field__input:focus-visible{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}.form-field__input:disabled{background-color:var(--surface-secondary);color:var(--text-disabled);cursor:not-allowed}.form-field__input--textarea{resize:vertical;min-height:88px}.form-field__input--select{appearance:none;background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-8)}.form-field[data-invalid=true] .form-field__input{border-color:var(--status-error-text)}.form-field[data-invalid=true] .form-field__input:focus-visible{box-shadow:0 0 0 3px var(--status-error-bg)}.form-field__helper{font-size:var(--text-xs);color:var(--text-tertiary);margin:0}.form-field__error{font-size:var(--text-xs);color:var(--status-error-text);margin:0}@media (prefers-reduced-motion:reduce){.form-field__input{transition-duration:0s}}.form-section{border:0;min-width:0;margin:0;padding:0}.form-section__legend{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4);padding:0}.form-section__hint{font-size:var(--text-sm);color:var(--text-secondary);margin:calc(var(--space-2) * -1) 0 var(--space-4)}.form-section__grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=768px){.form-section__grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.form-section__grid--single{grid-template-columns:1fr}.form-sticky-footer{z-index:var(--z-sticky);justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-wrap:wrap;display:flex;position:sticky;bottom:0}@media (width<=639px){.form-sticky-footer{justify-content:stretch}.form-sticky-footer>*{flex:auto;justify-content:center}}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);overflow:hidden}.card__header{padding:var(--density-card-padding);border-bottom:1px solid var(--border-default);font-weight:var(--font-semibold);color:var(--text-primary)}.card__body{padding:var(--density-card-padding);color:var(--text-primary)}.card__footer{padding:var(--density-card-padding);border-top:1px solid var(--border-default);background:var(--surface-secondary)}.card--no-padding>.card__body{padding:0}:where(.card__header+.card__body){padding-top:0}:where(.card__body:has(+.card__footer)){padding-bottom:0}.modal__backdrop{background:var(--surface-overlay);z-index:var(--z-modal-backdrop);position:fixed;inset:0}.modal__dialog{background:var(--surface-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);z-index:var(--z-modal);padding:var(--space-6);width:min(90vw,480px);max-height:85vh;color:var(--text-primary);position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)scale(1)}.modal__dialog:focus-visible{box-shadow:var(--shadow-2xl), var(--focus-ring);outline:none}.modal__dialog--sm{width:min(90vw,320px)}.modal__dialog--md{width:min(90vw,480px)}.modal__dialog--lg{width:min(90vw,640px)}.modal__dialog--xl{width:min(90vw,800px)}.modal__header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.modal__title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.modal__close{border-radius:var(--radius-md);width:2rem;height:2rem;color:var(--text-secondary);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.modal__close:hover{background:var(--surface-secondary)}.modal__close:focus-visible{box-shadow:var(--focus-ring);outline:none}.modal__body{color:var(--text-primary)}.modal__footer{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-default);display:flex}.modal-enter{transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out)}.modal-enter-from{opacity:0;transform:translate(-50%, -50%) scale(var(--motion-modal-scale-from))}.modal-enter-to{opacity:1;transform:translate(-50%,-50%)scale(1)}@media (prefers-reduced-motion:reduce){.modal-enter{transition:none}}.sidebar-group{padding:0 var(--space-3)}.sidebar-group+.sidebar-group{margin-top:var(--space-5)}.sidebar-group__label{font-size:11px;font-weight:var(--font-semibold);color:var(--sidebar-text-subdued);text-transform:uppercase;letter-spacing:.08em;padding:0 var(--space-3);margin:0 0 var(--space-2)}.sidebar-group__items{flex-direction:column;gap:2px;display:flex}.sidebar-item{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-md);color:var(--sidebar-text-default);font-size:var(--text-sm);font-weight:var(--font-medium);min-height:40px;transition:background-color .15s var(--ease-out), color .15s var(--ease-out);text-decoration:none;display:flex;position:relative}.sidebar-item:hover{background-color:var(--sidebar-overlay-faint);color:var(--sidebar-text-primary)}.sidebar-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar-item.is-active,.sidebar-item--active{background-color:var(--sidebar-overlay-soft);color:var(--color-brand-white);font-weight:var(--font-semibold)}.sidebar-item.is-active:before,.sidebar-item--active:before{content:"";width:var(--sidebar-active-strip);background-color:var(--sidebar-active-bg);border-radius:0 2px 2px 0;position:absolute;top:6px;bottom:6px;left:0}.sidebar-item__icon{opacity:.8;flex-shrink:0;width:18px;height:18px}.sidebar-item:hover .sidebar-item__icon,.sidebar-item.is-active .sidebar-item__icon,.sidebar-item--active .sidebar-item__icon{opacity:1}.sidebar-item__label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sidebar{width:var(--sidebar-width);background-color:var(--sidebar-bg);color:var(--sidebar-text);z-index:var(--z-fixed);transition:transform var(--duration-slow) var(--ease-in-out);flex-direction:column;display:flex;position:fixed;inset-block:0;inset-inline-start:0;overflow:hidden;transform:translate(-100%)}@media (width>=1024px){.sidebar{transition:width var(--duration-normal) var(--ease-in-out);transform:translate(0)}.sidebar--collapsed{width:var(--sidebar-collapsed-width)}.sidebar--collapsed .sidebar-item__label,.sidebar--collapsed .sidebar-group__label{display:none}.sidebar--collapsed .sidebar-item{padding-inline:var(--space-2);justify-content:center}}.sidebar--mobile-open{transform:translate(0)}@media (width>=1024px){.sidebar--mobile-open{transform:translate(0)}}.sidebar-backdrop{z-index:calc(var(--z-fixed) - 1);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out), visibility 0s linear var(--duration-normal);background-color:#00000080;position:fixed;inset:0}.sidebar-backdrop--visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--duration-normal) var(--ease-out), visibility 0s}@media (width>=1024px){.sidebar-backdrop{display:none!important}}.sidebar__toggle{margin:var(--space-2) auto var(--space-4);border-radius:var(--radius-md);width:32px;height:32px;color:var(--sidebar-text);cursor:pointer;background-color:#0000;border:1px solid #0000;justify-content:center;align-items:center;transition:background-color .15s ease-out;display:none}.sidebar__toggle:hover{background-color:var(--sidebar-overlay-muted)}.sidebar__toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar__toggle-icon{width:16px;height:16px;transition:transform .15s ease-out}.sidebar__toggle-icon--rotated{transform:rotate(180deg)}@media (width>=1024px){.sidebar__toggle{display:inline-flex}}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar-backdrop,.sidebar__toggle-icon{transition:none}}.topbar{z-index:var(--z-sticky);background:var(--header-bg);border-bottom:1px solid var(--border-default);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--ease-in-out);position:sticky;top:0}.topbar--scrolled{box-shadow:var(--shadow-md)}.topbar__inner{align-items:center;gap:var(--space-3);height:var(--header-height);padding:0 var(--space-6);max-width:100%;display:flex}.topbar__hamburger{min-width:44px;min-height:44px;padding:var(--space-2);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@media (width>=1024px){.topbar__hamburger{display:none}}.topbar__hamburger:hover{background:var(--surface-secondary);color:var(--text-primary)}.topbar__hamburger:focus-visible{box-shadow:var(--focus-ring);outline:none}.topbar__heading{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.topbar__breadcrumb{font-size:var(--text-xs);color:var(--text-tertiary);letter-spacing:.01em}.topbar__title{font-size:1.125rem;font-weight:var(--font-semibold);color:var(--text-primary);line-height:var(--leading-tight);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;max-width:60ch;overflow:hidden}.topbar__search{max-width:360px;height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-secondary);color:var(--text-primary);font-size:var(--text-sm);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);border:1px solid #0000;flex:1}.topbar__search::placeholder{color:var(--text-tertiary)}.topbar__search:focus{background:var(--surface-primary);border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}.topbar__actions{align-items:center;gap:var(--space-1);margin-left:auto;display:inline-flex}.topbar__bell{width:36px;height:36px;color:var(--text-secondary);border-radius:var(--radius-md);transition:background-color .15s var(--ease-out), color .15s var(--ease-out);justify-content:center;align-items:center;display:inline-flex;position:relative}.topbar__bell:hover{color:var(--text-primary);background:var(--surface-secondary)}.topbar__bell:focus-visible{box-shadow:var(--focus-ring);outline:none}.topbar__bell svg{width:20px;height:20px}.topbar__badge{background:var(--color-brand-red);min-width:16px;height:16px;color:var(--color-brand-white);border-radius:var(--radius-full);font-size:9px;font-weight:var(--font-bold);border:1.5px solid var(--surface-primary);justify-content:center;align-items:center;padding:0 3px;display:inline-flex;position:absolute;top:3px;right:3px}.topbar__profile{position:relative}.topbar__profile-button{align-items:center;gap:var(--space-2);padding:4px var(--space-2) 4px 4px;border-radius:var(--radius-full);cursor:pointer;color:var(--text-primary);min-height:40px;transition:background-color .15s var(--ease-out), border-color .15s var(--ease-out);background:0 0;border:1px solid #0000;display:inline-flex}.topbar__profile-button:hover{background:var(--surface-secondary);border-color:var(--border-default)}.topbar__profile-button:focus-visible{box-shadow:var(--focus-ring);outline:none}.topbar__avatar{border-radius:var(--radius-full);background:var(--color-brand-red);width:30px;height:30px;color:var(--color-brand-white);font-weight:var(--font-bold);letter-spacing:.02em;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.topbar__profile-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.topbar__profile-button svg{width:14px;height:14px;color:var(--text-tertiary);flex-shrink:0}.topbar__profile-menu{background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);min-width:192px;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);padding:var(--space-1);position:absolute;top:calc(100% + 6px);right:0}.topbar__profile-menu a,.topbar__profile-menu button{text-align:left;width:100%;padding:10px var(--space-3);color:var(--text-primary);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:background-color .15s var(--ease-out);background:0 0;border:none;align-items:center;text-decoration:none;display:flex}.topbar__profile-menu a:hover,.topbar__profile-menu button:hover{background:var(--surface-secondary)}.topbar__profile-menu form{margin:0}.topbar__profile-menu form button{color:var(--status-error-text)}.topbar__profile-menu form button:hover{background:var(--status-error-bg)}.topbar__profile-menu hr{border:none;border-top:1px solid var(--border-default);margin:var(--space-1) 0}.topbar__bell-wrap{position:relative}.topbar__notification-menu{background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:360px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);z-index:var(--z-popover);flex-direction:column;max-height:480px;display:flex;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.topbar__notification-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;display:flex}.topbar__notification-list{flex:1;overflow-y:auto}.topbar__notification-item{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-default);color:inherit;transition:background var(--duration-fast) var(--ease-out);text-decoration:none;display:block}.topbar__notification-item:hover{background:var(--surface-secondary)}.topbar__notification-item--unread{border-left:3px solid var(--color-brand-red);padding-left:calc(var(--space-4) - 3px);background:#dc26260a}.topbar__notification-footer{padding:var(--space-3) var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--color-brand-red);border-top:1px solid var(--border-default);font-weight:500;text-decoration:none;display:block}.topbar__notification-footer:hover{background:var(--surface-secondary)}.topbar__notif{position:relative}.topbar__notif-panel{background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:380px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);z-index:var(--z-popover);flex-direction:column;max-height:480px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden}.topbar__notif-head{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;display:flex}.topbar__notif-title{font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--text-primary)}.topbar__notif-mark{color:var(--color-brand-red);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;padding:4px 8px;font-size:11px}.topbar__notif-mark:hover{background:#dc262614}.topbar__notif-list{flex:1;max-height:380px;overflow-y:auto}.topbar__notif-empty{padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-tertiary);font-size:var(--text-sm)}.topbar__notif-empty svg{opacity:.6;margin:0 auto 8px}.topbar__notif-item{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-default);color:inherit;transition:background var(--duration-fast) var(--ease-out);align-items:flex-start;text-decoration:none;display:flex}.topbar__notif-item:last-child{border-bottom:0}.topbar__notif-item:hover{background:var(--surface-secondary)}.topbar__notif-item--unread{border-left:3px solid var(--color-brand-red);padding-left:calc(var(--space-4) - 3px);background:#dc26260a}.topbar__notif-icon{border-radius:var(--radius-full);background:var(--surface-secondary);width:28px;height:28px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.topbar__notif-icon--speedalert{background:var(--status-error-bg,#fef2f2);color:var(--status-error-text,#dc2626)}.topbar__notif-icon--fencein,.topbar__notif-icon--fenceout{background:var(--status-warning-bg,#fefce8);color:var(--status-warning-text,#ca8a04)}.topbar__notif-icon--engineon,.topbar__notif-icon--engineoff{background:var(--status-info-bg,#eff6ff);color:var(--status-info-text,#2563eb)}.topbar__notif-body{flex:1;min-width:0}.topbar__notif-row{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.topbar__notif-plate{font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--text-primary)}.topbar__notif-time{color:var(--text-tertiary);white-space:nowrap;flex-shrink:0;font-size:11px}.topbar__notif-text{color:var(--text-secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;display:-webkit-box;overflow:hidden}.topbar__notif-foot{padding:var(--space-3) var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--color-brand-red);border-top:1px solid var(--border-default);font-weight:500;text-decoration:none;display:block}.topbar__notif-foot:hover{background:var(--surface-secondary)}.notif-row--unread{border-left:3px solid var(--color-brand-red);background:#dc26260a}.skip-link{top:-100px;left:var(--space-4);z-index:9999;padding:var(--space-2) var(--space-4);background:var(--surface-elevated);color:var(--text-primary);border:2px solid var(--border-focus);border-radius:var(--radius-md);font-weight:var(--font-medium);transition:top var(--duration-fast) var(--ease-out);text-decoration:none;position:absolute}.skip-link:focus,.skip-link:focus-visible{top:var(--space-4);box-shadow:var(--focus-ring);outline:none}@media (prefers-reduced-motion:reduce){.skip-link{transition:none}}.page-footer{background:var(--surface-secondary);border-top:1px solid var(--border-default);color:var(--text-tertiary);font-size:var(--text-xs);line-height:var(--leading-normal)}.page-footer__inner{max-width:100%;padding:var(--space-4) var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-footer__copy{margin:0}.page-footer__rights{color:var(--text-tertiary)}.toast-container{top:var(--space-4);right:var(--space-4);z-index:var(--z-toast);gap:var(--space-2);pointer-events:none;max-width:calc(100vw - 2 * var(--space-4));flex-direction:column;display:flex;position:fixed}.toast-container__region{gap:var(--space-2);flex-direction:column;display:flex}.toast{background:var(--surface-elevated);border:1px solid var(--border-default);border-left:4px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-3) var(--space-4);align-items:flex-start;gap:var(--space-3);pointer-events:auto;min-width:320px;max-width:480px;color:var(--text-primary);display:flex}.toast--success{border-left-color:var(--status-success-text)}.toast--success .toast__icon{color:var(--status-success-text)}.toast--info{border-left-color:var(--status-info-text)}.toast--info .toast__icon{color:var(--status-info-text)}.toast--warning{border-left-color:var(--status-warning-text)}.toast--warning .toast__icon{color:var(--status-warning-text)}.toast--error{border-left-color:var(--status-error-text)}.toast--error .toast__icon{color:var(--status-error-text)}.toast__icon{flex-shrink:0;width:20px;height:20px;margin-top:2px}.toast__body{flex:1;min-width:0}.toast__title{margin:0 0 var(--space-1) 0;font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--text-primary)}.toast__message{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal);margin:0}.toast__dismiss{width:1.5rem;height:1.5rem;color:var(--text-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.toast__dismiss:hover{background:var(--surface-secondary);color:var(--text-primary)}.toast__dismiss:focus-visible{box-shadow:var(--focus-ring);outline:none}.toast-enter{transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out)}.toast-enter-from{opacity:0;transform:translateX(var(--motion-toast-distance))}.toast-enter-to{opacity:1;transform:translate(0)}.toast-leave{transition:opacity var(--duration-fast) var(--ease-in), transform var(--duration-fast) var(--ease-in)}.toast-leave-from{opacity:1;transform:translate(0)}.toast-leave-to{opacity:0;transform:translateX(var(--motion-toast-distance))}@media (prefers-reduced-motion:reduce){.toast-enter,.toast-leave{transition:none!important}}.sidebar-header{border-bottom:1px solid var(--sidebar-overlay-muted);flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 16px;display:flex}.sidebar-header__brand{align-items:center;gap:12px;min-width:0;display:flex}.sidebar-header__logo-wrap{background:var(--sidebar-overlay-muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;overflow:hidden}.sidebar-header__logo{object-fit:contain;width:28px;height:28px}.sidebar-header__name{color:var(--sidebar-text-primary);letter-spacing:-.01em;font-size:13px;font-weight:700;line-height:1.2}.sidebar-header__sub{color:var(--sidebar-text-subdued);margin-top:1px;font-size:11px;line-height:1.2}.sidebar-header__close{padding:var(--space-3);min-width:44px;min-height:44px;color:var(--sidebar-text-subdued);cursor:pointer;border-radius:var(--radius-md);transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sidebar-header__close:hover{color:var(--sidebar-text-emphasis);background:var(--sidebar-overlay-muted)}.sidebar-header__close:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar-user{border-top:1px solid var(--sidebar-overlay-muted);flex-shrink:0;margin-top:auto;padding:12px;position:relative}.sidebar-user__trigger{border-radius:var(--radius-md);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px;transition:background-color .15s ease-out;display:flex}.sidebar-user__trigger:hover{background:#ffffff0f}.sidebar-user__trigger:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar-user__avatar{border-radius:var(--radius-full);background:var(--color-brand-red);width:32px;height:32px;color:var(--color-brand-white);letter-spacing:.02em;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.sidebar-user__info{flex:1}.sidebar-user__name{color:#ffffffe6;font-size:13px;font-weight:600;line-height:1.2}.sidebar-user__role{color:#fff6;text-transform:capitalize;margin-top:2px;font-size:11px;line-height:1.2}.sidebar-user__chevron{color:#ffffff4d;flex-shrink:0;width:14px;height:14px;transition:transform .2s ease-out,color .15s ease-out}.sidebar-user__trigger[aria-expanded=true] .sidebar-user__chevron{color:#fff9;transform:rotate(180deg)}.sidebar-user__menu{background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:var(--z-dropdown);position:absolute;bottom:calc(100% - 4px);left:12px;right:12px}.sidebar-user__menu-item{align-items:center;gap:var(--space-2);width:100%;padding:10px var(--space-3);color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;border-radius:var(--radius-md);text-align:left;background:0 0;border:none;text-decoration:none;transition:background-color .15s ease-out;display:flex}.sidebar-user__menu-item:hover{background:var(--surface-secondary)}.sidebar-user__menu-item--danger{color:var(--status-error-text)}.sidebar-user__menu-item--danger:hover{background:var(--status-error-bg)}.sidebar-user__divider{border:none;border-top:1px solid var(--border-default);margin:var(--space-1) 0}.stat-card{background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--card-radius);box-shadow:var(--shadow-sm);padding:var(--space-5);transition:box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);cursor:default}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.stat-card{transition:none}.stat-card:hover{transform:none}}.stat-card__body{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.stat-card__text{flex:1;min-width:0}.stat-card__label{font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.07em;color:var(--text-tertiary);margin-bottom:var(--space-2);line-height:1}.stat-card__value{font-size:1.875rem;font-weight:var(--font-bold);color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-width:3rem;line-height:1}.stat-card__icon-wrap{border-radius:var(--radius-xl);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stat-card__icon{width:22px;height:22px}.page-header{gap:var(--space-4);margin-bottom:var(--space-6);flex-direction:column;display:flex}@media (width>=640px){.page-header{flex-direction:row;align-items:flex-start}}.page-header__text{flex:1;min-width:0}.page-header__title{font-size:1.125rem;font-weight:var(--font-semibold);color:var(--text-primary);line-height:var(--leading-tight);letter-spacing:-.01em}.page-header__subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-1);line-height:var(--leading-normal)}.page-header__actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.card-interactive{cursor:pointer;transition:box-shadow .2s ease-out,transform .2s ease-out}.card-interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}@keyframes page-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}main#main-content{animation:.2s ease-out both page-fade-in}@media (prefers-reduced-motion:reduce){main#main-content{animation:none}}.form-input{height:40px;line-height:1.5}.form-input::placeholder{color:var(--text-tertiary)}.btn-primary:active,.btn-outline:active,.btn-secondary:active,.btn.btn--primary:active,.btn.btn--outline:active{transition-duration:80ms;transform:scale(.98)}.auth-shell{background-color:var(--surface-primary);grid-template-columns:1fr;min-height:100vh;display:grid}@media (width>=1024px){.auth-shell{grid-template-columns:3fr 2fr}}.auth-shell__brand{background-color:var(--sidebar-bg);color:#fffffff2;padding:56px 64px;display:none;position:relative;overflow:hidden}@media (width>=1024px){.auth-shell__brand{flex-direction:column;justify-content:space-between;display:flex}}.auth-shell__brand-bg{background-color:var(--sidebar-bg);z-index:0;position:absolute;inset:0}.auth-shell__brand-bg:before{content:"";opacity:1;background-image:linear-gradient(#00000006 1px,#0000 1px),linear-gradient(90deg,#00000006 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.auth-shell__brand-inner{z-index:1;flex-direction:column;flex:1;justify-content:space-between;gap:64px;display:flex;position:relative}.auth-shell__brand-mark{align-items:center;gap:12px;display:flex}.auth-shell__brand-logo-wrap{background:#ffffff14;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.auth-shell__brand-logo{object-fit:contain;width:32px;height:32px}.auth-shell__brand-name{letter-spacing:-.01em;font-size:15px;font-weight:700;line-height:1.2}.auth-shell__brand-sub{color:#ffffff80;margin-top:2px;font-size:12px;line-height:1.2}.auth-shell__brand-message{max-width:480px}.auth-shell__brand-headline{letter-spacing:-.02em;color:#fffffffa;font-size:2.25rem;font-weight:700;line-height:1.15}.auth-shell__brand-tagline{color:#ffffffa6;margin-top:16px;font-size:15px;line-height:1.6}.auth-shell__brand-features{flex-direction:column;gap:12px;margin-top:32px;padding:0;list-style:none;display:flex}.auth-shell__brand-features li{color:#ffffffd9;align-items:center;gap:12px;font-size:14px;display:flex}.auth-shell__brand-features svg{width:18px;height:18px;color:var(--color-brand-red);flex-shrink:0}.auth-shell__brand-footer{color:#ffffff59;letter-spacing:.01em;font-size:12px}.auth-shell__form{background-color:var(--surface-primary);justify-content:center;align-items:center;padding:48px 24px;display:flex}@media (width>=1024px){.auth-shell__form{padding:48px}}.auth-shell__form-inner{width:100%;max-width:400px}.auth-shell__mobile-brand{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-bottom:32px;display:flex}.auth-shell__mobile-logo-wrap{background:var(--surface-secondary);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.auth-shell__mobile-logo{object-fit:contain;width:40px;height:40px}.auth-shell__mobile-name{color:var(--text-primary);letter-spacing:-.01em;font-size:16px;font-weight:700}.auth-shell__mobile-sub{color:var(--text-secondary);margin-top:2px;font-size:13px}.auth-shell__heading{margin-bottom:32px}.auth-shell__title{color:var(--text-primary);letter-spacing:-.02em;font-size:1.5rem;font-weight:700;line-height:1.2}.auth-shell__subtitle{color:var(--text-secondary);margin-top:8px;font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-form__error{border-radius:var(--radius-md);background-color:var(--status-error-bg);color:var(--status-error-text);border:1px solid var(--status-error-border);animation:auth-error-in var(--duration-normal) var(--ease-out) both;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.auth-form__error svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.auth-form__error p{margin:0;font-size:13px;line-height:1.5}@keyframes auth-error-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.auth-form__password{position:relative}.auth-form__password .form-field__input{padding-right:44px}.auth-form__password-toggle{width:36px;height:36px;color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s ease-out,background-color .15s ease-out;display:inline-flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.auth-form__password-toggle:hover{color:var(--text-primary);background-color:var(--surface-secondary)}.auth-form__password-toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.auth-form__password-toggle svg{width:18px;height:18px}.auth-form__row{justify-content:space-between;align-items:center;gap:16px;display:flex}.auth-form__remember{cursor:pointer;color:var(--text-primary);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.auth-form__checkbox{width:16px;height:16px;accent-color:var(--color-brand-red);cursor:pointer}.auth-form__forgot{color:var(--text-secondary);font-size:13px;font-weight:500;text-decoration:none;transition:color .15s ease-out}.auth-form__forgot:hover{color:var(--text-brand)}.auth-form__submit{width:100%;margin-top:4px}:where(.panel){overflow:hidden;padding:0!important}.panel__header{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px;display:flex}.panel__heading{flex:1;min-width:0}.panel__title{color:var(--text-primary);letter-spacing:-.01em;font-size:15px;font-weight:600;line-height:1.3}.panel__subtitle{color:var(--text-tertiary);margin-top:2px;font-size:12px;line-height:1.4}.panel__action{color:var(--text-secondary);white-space:nowrap;border-radius:var(--radius-md);align-items:center;gap:4px;padding:4px 8px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s ease-out,gap .15s ease-out;display:inline-flex}.panel__action:hover{color:var(--text-brand);gap:6px}.panel__action svg{width:14px;height:14px}.fleet-chart__canvas-wrap{height:240px;position:relative}.fleet-chart__legend{flex-direction:column;gap:10px;margin-top:20px;padding:0;list-style:none;display:flex}.fleet-chart__legend-item{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;font-size:13px;display:grid}.fleet-chart__legend-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.fleet-chart__legend-item:first-child .fleet-chart__legend-dot{background-color:var(--status-info-text)}.fleet-chart__legend-item:nth-child(2) .fleet-chart__legend-dot{background-color:var(--status-error-text)}.fleet-chart__legend-item:nth-child(3) .fleet-chart__legend-dot{background-color:var(--status-warning-text)}.fleet-chart__legend-item:nth-child(4) .fleet-chart__legend-dot{background-color:var(--text-tertiary)}.fleet-chart__legend-label{color:var(--text-secondary)}.fleet-chart__legend-value{font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:600}.recent-list{margin:0;padding:0;list-style:none}.recent-list__item{border-bottom:1px solid var(--border-default);align-items:center;gap:12px;padding:14px 24px;transition:background-color .15s ease-out;display:flex}.recent-list__item:last-child{border-bottom:none}.recent-list__item:hover{background-color:var(--surface-secondary)}.recent-list__avatar{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.recent-list__avatar svg{width:16px;height:16px}.recent-list__avatar--moving{background-color:var(--status-info-bg);color:var(--status-info-text)}.recent-list__avatar--idle{background-color:var(--surface-tertiary);color:var(--text-tertiary)}.recent-list__body{flex:1;min-width:0}.recent-list__plate{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.3;font-family:var(--font-mono);letter-spacing:.02em}.recent-list__meta{color:var(--text-tertiary);align-items:center;gap:6px;margin-top:2px;font-size:12px;line-height:1.3;display:flex}.recent-list__driver{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recent-list__sep{color:var(--border-strong)}.recent-list__when{color:var(--text-tertiary);white-space:nowrap;flex-shrink:0;font-size:11px}.recent-list__empty{text-align:center;color:var(--text-tertiary);padding:40px 24px;font-size:13px}.recent-list__empty svg{opacity:.4;width:32px;height:32px;margin:0 auto 12px}.trip-history__grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=1024px){.trip-history__grid{grid-template-columns:var(--col-side) 1fr}}@media (width>=1280px){.trip-history__grid{grid-template-columns:var(--col-side) 1fr var(--col-side)}}.trip-history__col{flex-direction:column;gap:16px;min-width:0;display:flex}.trip-filter{flex-direction:column;gap:16px;display:flex}.trip-filter__range{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.trip-filter__sep{color:var(--text-tertiary);font-size:14px}.trip-filter__submit{gap:8px;width:100%}.trip-filter__submit svg{order:2;width:16px;height:16px;transition:transform .15s ease-out}.trip-filter__submit:hover svg{transform:translate(2px)}.trip-summary__icon{background-color:var(--status-info-bg);width:36px;height:36px;color:var(--status-info-text);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.trip-summary__icon svg{width:18px;height:18px}.trip-summary__grid{grid-template-columns:repeat(2,1fr);gap:16px;margin:0;display:grid}.trip-summary__cell{min-width:0}.trip-summary__label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px;font-weight:500;line-height:1.2}.trip-summary__value{color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700;line-height:1.2}.trip-summary__unit{color:var(--text-tertiary);letter-spacing:.02em;margin-left:2px;font-size:12px;font-weight:600}.trip-map{flex-direction:column;gap:12px;display:flex}.trip-map__card{padding:6px}.trip-map__canvas{border-radius:8px;width:100%;overflow:hidden}.trip-tabs__nav{border-bottom:1px solid var(--border-default);background:var(--surface-secondary);grid-template-columns:repeat(3,1fr);gap:4px;padding:6px;display:grid}.trip-tabs__tab{border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:600;transition:background-color .15s ease-out,color .15s ease-out,box-shadow .15s ease-out;display:inline-flex}.trip-tabs__tab:hover{color:var(--text-primary);background-color:var(--surface-primary)}.trip-tabs__tab.is-active{color:var(--text-primary);background-color:var(--surface-primary);box-shadow:var(--shadow-sm)}.trip-tabs__count{background:var(--surface-tertiary);min-width:22px;height:18px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}.trip-tabs__tab.is-active .trip-tabs__count{background:var(--color-brand-red);color:var(--color-brand-white)}.trip-tabs__panels{padding:12px}.trip-list__items{flex-direction:column;gap:8px;max-height:480px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.trip-list__item{background:var(--surface-primary);border:1px solid var(--border-default);border-radius:8px;align-items:flex-start;gap:10px;padding:12px;transition:background-color .15s ease-out,border-color .15s ease-out;display:flex}.trip-list__item:hover{background:var(--surface-secondary);border-color:var(--border-strong)}.trip-list__num{background:var(--status-info-bg);width:28px;height:28px;color:var(--status-info-text);font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.trip-list__num--stop{background:var(--status-error-bg);color:var(--status-error-text)}.trip-list__num--stop svg{width:14px;height:14px}.trip-list__num--alert{background:var(--status-warning-bg);color:var(--status-warning-text)}.trip-list__num--alert svg{width:14px;height:14px}.trip-list__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.trip-list__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.trip-list__primary{color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:13px;font-weight:600;line-height:1.3}.trip-list__chip{background:var(--surface-tertiary);color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.trip-list__chip--success{background:var(--status-success-bg);color:var(--status-success-text)}.trip-list__chip--muted{background:var(--surface-tertiary);color:var(--text-tertiary)}.trip-list__sep{color:var(--text-tertiary);margin:0 4px;font-weight:400}.trip-list__times{color:var(--text-secondary);flex-direction:column;gap:2px;font-size:12px;display:flex}.trip-list__time{align-items:center;gap:8px;display:flex}.trip-list__time-marker{border-radius:999px;flex-shrink:0;width:8px;height:8px;display:inline-block}.trip-list__time--start .trip-list__time-marker{background:var(--status-success-text)}.trip-list__time--end .trip-list__time-marker{background:var(--status-error-text)}.trip-list__driver{color:var(--text-tertiary);align-items:center;gap:6px;margin-top:2px;font-size:12px;display:inline-flex}.trip-list__driver svg{width:13px;height:13px}.trip-list__message{color:var(--text-secondary);font-size:12px;line-height:1.4}.trip-list__meta{color:var(--text-tertiary);align-items:center;gap:4px;font-size:11px;display:inline-flex}.trip-list__meta svg{width:12px;height:12px}.trip-list__empty{text-align:center;color:var(--text-tertiary);padding:32px 16px}.trip-list__empty svg{opacity:.4;width:36px;height:36px;margin:0 auto 10px}.trip-list__empty p{font-size:13px}.trip-timeline__controls{border-bottom:1px solid var(--border-default);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.trip-timeline__buttons{align-items:center;gap:6px;display:inline-flex}.trip-timeline__btn{background:var(--surface-secondary);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;transition:background-color .15s ease-out,color .15s ease-out,transform 80ms ease-out;display:inline-flex}.trip-timeline__btn:hover{background:var(--surface-tertiary);color:var(--text-primary)}.trip-timeline__btn:active{transform:scale(.95)}.trip-timeline__btn svg{width:14px;height:14px}.trip-timeline__btn--primary{background:var(--color-brand-red);color:var(--color-brand-white);width:38px;height:38px}.trip-timeline__btn--primary:hover{background:var(--color-red-700);color:var(--color-brand-white)}.trip-timeline__btn--primary svg{width:16px;height:16px}.trip-timeline__readout{align-items:center;gap:12px;display:inline-flex}.trip-timeline__time{font-family:var(--font-mono);color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:13px}.trip-timeline__speed{background-color:var(--surface-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);height:32px;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:right 8px center;background-repeat:no-repeat;padding:0 28px 0 10px;font-size:12px;font-weight:600}.trip-timeline__chart{padding:14px 16px 16px}.trip-timeline__legend{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 12px;padding:0;font-size:11px;list-style:none;display:flex}.trip-timeline__legend li{align-items:center;gap:6px;display:inline-flex}.trip-timeline__dot{border-radius:999px;width:8px;height:8px}.trip-timeline__dot--moving{background:var(--status-info-text)}.trip-timeline__dot--stop{background:var(--status-error-text)}.trip-timeline__alert-icon{width:12px;height:12px}.trip-timeline__band-wrap{padding-top:14px;position:relative}.trip-timeline__band{background:var(--surface-tertiary);isolation:isolate;border-radius:999px;width:100%;height:24px;position:relative;overflow:visible}.trip-timeline__seg{z-index:1;position:absolute;top:0;bottom:0}.trip-timeline__seg--moving{background:#2563eb}.trip-timeline__seg--stop{background:0 0}.trip-timeline__band:before{content:"";pointer-events:none;box-shadow:inset 0 0 0 1px var(--border-default);z-index:3;border-radius:999px;position:absolute;inset:0}.trip-timeline__alert{color:var(--status-warning-text);z-index:4;cursor:help;position:absolute;top:-4px;transform:translate(-50%)}.trip-timeline__alert svg{filter:drop-shadow(0 1px 2px #00000026);width:14px;height:14px}.trip-timeline__cursor{background:var(--color-brand-red);z-index:5;pointer-events:none;border-radius:999px;width:3px;position:absolute;top:-4px;bottom:-4px;transform:translate(-50%);box-shadow:0 0 0 3px #dc26262e}.trip-timeline__slider{opacity:0;cursor:pointer;z-index:6;width:100%;height:100%;margin:0;position:absolute;inset:0}.trip-timeline__ticks{height:18px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-top:8px;font-size:11px;position:relative}.trip-timeline__tick{white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.trip-timeline__tick:first-child{transform:translate(0)}.trip-timeline__tick:last-child{transform:translate(-100%)}body[data-degraded=true]:before{content:"Mode terdegradasi";bottom:var(--space-4,16px);right:var(--space-4,16px);z-index:var(--z-fixed,1030);letter-spacing:.02em;color:var(--status-warning-text);background-color:var(--status-warning-bg);border:1px solid var(--status-warning-border,var(--status-warning-text));box-shadow:var(--shadow-sm);pointer-events:none;animation:degraded-pulse 2.4s var(--ease-in-out,ease-in-out) infinite;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:600;line-height:1.2;position:fixed}@keyframes degraded-pulse{0%,to{opacity:.92}50%{opacity:.6}}@media (prefers-reduced-motion:reduce){body[data-degraded=true]:before{animation:none}}.js-fallback-notice{z-index:var(--z-fixed,1030);padding:var(--space-3,12px) var(--space-4,16px);text-align:center;color:var(--status-warning-text);background-color:var(--status-warning-bg);border-bottom:1px solid var(--status-warning-border,var(--status-warning-text));margin:0;font-size:13px;font-weight:500;line-height:1.5;position:relative}*{-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{min-height:100dvh;overflow-x:hidden}main#main-content{padding:16px}.dashboard-grid__stats{grid-template-columns:1fr;gap:12px}@media (width>=400px){.dashboard-grid__stats{grid-template-columns:repeat(2,1fr)}}.topbar__search,.topbar__profile-name{display:none}.topbar__title{font-size:1rem}:where(.card):not(:has(.card__body)){border-radius:var(--radius-lg)}.vehicles-grid{gap:12px}.form-input,.form-field__input,select{min-height:44px;font-size:16px}.btn-primary,.btn-outline,.btn-secondary{min-height:44px}@media (width>=640px){main#main-content{padding:20px}.topbar__title{font-size:1.125rem}.dashboard-grid__stats{grid-template-columns:repeat(2,1fr);gap:16px}}@media (width>=1024px){main#main-content{padding:24px}.topbar__search{display:block}.topbar__profile-name{display:inline}.topbar__title{font-size:1.5rem}.dashboard-grid__stats{grid-template-columns:repeat(4,1fr)}}@media (width>=1440px){main#main-content{max-width:1600px;margin-inline:auto;padding:32px}}a,button,[role=button]{transition:color .15s ease-out,background-color .15s ease-out,border-color .15s ease-out,box-shadow .15s ease-out,opacity .15s ease-out,transform 80ms ease-out}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-md);outline:none}.overflow-y-auto,.overflow-x-auto{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}*{scrollbar-width:thin;scrollbar-color:var(--border-default) transparent}.stat-card{padding:16px}@media (width>=640px){.stat-card{padding:var(--space-5)}}.stat-card__value{font-size:1.5rem}@media (width>=640px){.stat-card__value{font-size:1.875rem}}.stat-card__icon-wrap{width:36px;height:36px}@media (width>=640px){.stat-card__icon-wrap{width:44px;height:44px}}.page-header__title{font-size:1rem}@media (width>=640px){.page-header__title{font-size:1.125rem}}.page-header__actions{width:100%}@media (width>=640px){.page-header__actions{width:auto}}.trip-history__grid{gap:12px}@media (width>=640px){.trip-history__grid{gap:16px}}.trip-history{--col-side:100%}@media (width>=1024px){.trip-history{--col-side:300px}}@media (width>=1280px){.trip-history{--col-side:320px}}.trip-timeline__controls{flex-direction:column;align-items:flex-start;gap:12px}@media (width>=640px){.trip-timeline__controls{flex-direction:row;align-items:center}}.panel__header{padding:14px 16px}@media (width>=640px){.panel__header{padding:20px 24px}}.panel__body{padding:14px 16px}@media (width>=640px){.panel__body{padding:20px 24px}}.auth-shell__form{padding:32px 16px}@media (width>=640px){.auth-shell__form{padding:48px 32px}}@media (width>=1024px){.auth-shell__form{padding:48px}}.auth-shell__title{font-size:1.25rem}@media (width>=640px){.auth-shell__title{font-size:1.5rem}}.auth-shell__brand-headline{font-size:1.75rem}@media (width>=1280px){.auth-shell__brand-headline{font-size:2.25rem}}@media (width<=639px){.flex.gap-2.pt-4.border-t{flex-direction:column}.flex.gap-2.pt-4.border-t>*{text-align:center;justify-content:center;width:100%}}.sidebar-nav{padding:12px 0}@media (width>=1024px){.sidebar-nav{padding:var(--space-4) 0}}::selection{background-color:var(--selection-bg);color:var(--text-primary)}img{max-width:100%;height:auto}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=639px){.table th,.table td{padding:var(--space-2) var(--space-3);font-size:12px}}.dashboard-grid{gap:var(--space-6);display:grid}.dashboard-grid__stats{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=768px){.dashboard-grid__stats{grid-template-columns:repeat(4,1fr)}}.dashboard-grid__main{gap:var(--space-6);grid-template-columns:1fr;display:grid}@media (width>=1024px){.dashboard-grid__main{grid-template-columns:3fr 2fr}}.card-legacy{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding);transition:box-shadow var(--duration-normal) var(--ease-in-out)}:where(.card):not(:has(.card__body)){background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding);transition:box-shadow var(--duration-normal) var(--ease-in-out)}:where(.card):not(:has(.card__body)):hover{box-shadow:var(--shadow-md)}.btn-primary,.btn-secondary,.btn-outline{padding:var(--button-padding-y) var(--button-padding-x);border-radius:var(--button-radius);font-weight:var(--font-medium);font-size:var(--text-sm);transition:all var(--duration-normal) var(--ease-in-out);cursor:pointer;border:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--color-brand-red);color:var(--color-brand-white)}.btn-primary:hover{background-color:var(--color-red-700)}.btn-secondary{background-color:var(--color-brand-black);color:var(--color-brand-white)}.btn-secondary:hover{background-color:var(--color-gray-900)}.btn-outline{border:2px solid var(--color-brand-red);color:var(--color-brand-red);background-color:#0000}.btn-outline:hover{background-color:var(--color-brand-red);color:var(--color-brand-white)}.badge-success,.badge-warning,.badge-error,.badge-info,.badge-primary,.badge-outline{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:var(--leading-tight);align-items:center;display:inline-flex}.badge-success{background-color:var(--status-success-bg);color:var(--status-success-text);border:1px solid var(--status-success-border)}.badge-warning{background-color:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.badge-error{background-color:var(--status-error-bg);color:var(--status-error-text);border:1px solid var(--status-error-border)}.badge-info{background-color:var(--status-info-bg);color:var(--status-info-text);border:1px solid var(--status-info-border)}.badge-primary{background-color:var(--color-brand-red);color:var(--color-brand-white)}.badge-outline{color:var(--text-secondary);border:1px solid var(--border-default);background-color:#0000}.status-online,.status-offline,.status-idle,.status-moving{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:var(--leading-tight);align-items:center;display:inline-flex}.status-online{background-color:var(--status-success-bg);color:var(--status-success-text);border:1px solid var(--status-success-border)}.status-offline{background-color:var(--status-error-bg);color:var(--status-error-text);border:1px solid var(--status-error-border)}.status-idle{background-color:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.status-moving{background-color:var(--status-info-bg);color:var(--status-info-text);border:1px solid var(--status-info-border)}.stats-card{background:var(--surface-primary);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding);transition:box-shadow var(--duration-normal) var(--ease-in-out)}.stats-card-icon{border-radius:var(--radius-xl);background-color:var(--color-brand-red);width:3rem;height:3rem;color:var(--color-brand-white);justify-content:center;align-items:center;display:flex}.stats-card-value{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:var(--leading-tight)}.stats-card-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-medium)}.table-container{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);overflow:hidden}.table{border-collapse:collapse;width:100%}.table thead{background-color:var(--surface-secondary);border-bottom:2px solid var(--border-strong)}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.table td{padding:var(--space-4);border-bottom:1px solid var(--border-default);font-size:var(--text-sm);color:var(--text-primary)}.table tbody tr:hover{background-color:var(--surface-secondary)}.table tbody tr:last-child td{border-bottom:none}.form-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--surface-primary);transition:all var(--duration-normal) var(--ease-in-out)}.form-input:focus{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}.form-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2);display:block}.alert{padding:var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);border:1px solid}.alert-success{background-color:var(--status-success-bg);color:var(--status-success-text);border-color:var(--status-success-border)}.alert-warning{background-color:var(--status-warning-bg);color:var(--status-warning-text);border-color:var(--status-warning-border)}.alert-error{background-color:var(--status-error-bg);color:var(--status-error-text);border-color:var(--status-error-border)}.alert-info{background-color:var(--status-info-bg);color:var(--status-info-text);border-color:var(--status-info-border)}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-0\.5{top:calc(var(--spacing) * .5)}.top-1{top:calc(var(--spacing) * 1)}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0\.5{left:calc(var(--spacing) * .5)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.mx-auto{margin-inline:auto}.my-3{margin-block:calc(var(--spacing) * 3)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-4{margin-right:calc(var(--spacing) * 4)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.max-h-\[600px\]{max-height:600px}.min-h-\[44px\]{min-height:44px}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-32{width:calc(var(--spacing) * 32)}.w-40{width:calc(var(--spacing) * 40)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[44px\]{min-width:44px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_3fr\]{grid-template-columns:1fr 3fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-100>:not(:last-child)){border-color:var(--color-gray-100)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-amber-400{border-color:var(--color-amber-400)}.border-amber-500{border-color:var(--color-amber-500)}.border-blue-400{border-color:var(--color-blue-400)}.border-blue-500{border-color:var(--color-blue-500)}.border-emerald-500{border-color:var(--color-emerald-500)}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-800{border-color:var(--color-gray-800)}.border-green-200{border-color:var(--color-green-200)}.border-red-200{border-color:var(--color-red-200)}.border-red-300{border-color:var(--color-red-300)}.border-red-500{border-color:var(--color-red-500)}.border-red-600{border-color:var(--color-red-600)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-700{background-color:var(--color-blue-700)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-green-50{background-color:var(--color-green-50)}.bg-orange-50{background-color:var(--color-orange-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-600{background-color:var(--color-red-600)}.bg-white{background-color:var(--color-white)}.bg-yellow-50{background-color:var(--color-yellow-50)}.bg-yellow-500{background-color:var(--color-yellow-500)}.p-0{padding:calc(var(--spacing) * 0)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[color\:var\(--text-secondary\)\]{color:var(--text-secondary)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-orange-600{color:var(--color-orange-600)}.text-purple-600{color:var(--color-purple-600)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-\[var\(--duration-fast\)\]{--tw-duration:var(--duration-fast);transition-duration:var(--duration-fast)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.peer-checked\:translate-x-5:is(:where(.peer):checked~*){--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.peer-checked\:bg-blue-600:is(:where(.peer):checked~*){background-color:var(--color-blue-600)}@media (hover:hover){.hover\:bg-\[color\:var\(--surface-secondary\)\]:hover{background-color:var(--surface-secondary)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:text-\[color\:var\(--text-primary\)\]:hover{color:var(--text-primary)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-red-700:hover{color:var(--color-red-700)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-75:hover{opacity:.75}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[color\:var\(--border-focus\)\]:focus-visible{--tw-ring-color:var(--border-focus)}@media (width>=40rem){.sm\:w-96{width:calc(var(--spacing) * 96)}}@media (width>=48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=64rem){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:pl-16{padding-left:calc(var(--spacing) * 16)}.lg\:pl-64{padding-left:calc(var(--spacing) * 64)}}@media (width>=80rem){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.bg-senapati-black{background-color:var(--color-brand-black)}.bg-senapati-red{background-color:var(--color-brand-red)}.bg-senapati-white{background-color:var(--color-brand-white)}.text-senapati-black{color:var(--color-brand-black)}.text-senapati-red{color:var(--color-brand-red)}.text-senapati-white{color:var(--color-brand-white)}.border-senapati-red{border-color:var(--color-brand-red)}.elevation-sm{box-shadow:var(--shadow-sm)}.elevation-md{box-shadow:var(--shadow-md)}.elevation-lg{box-shadow:var(--shadow-lg)}.elevation-xl{box-shadow:var(--shadow-xl)}.transition-default{transition:all var(--duration-normal) var(--ease-in-out)}.transition-fast{transition:all var(--duration-fast) var(--ease-in-out)}.transition-slow{transition:all var(--duration-slow) var(--ease-in-out)}}@layer tokens{:root{--color-brand-black:#000;--color-brand-red:#dc2626;--color-brand-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-gray-950:#030712;--color-green-50:#f0fdf4;--color-green-500:#22c55e;--color-green-600:#16a34a;--color-green-700:#15803d;--color-yellow-50:#fefce8;--color-yellow-500:#eab308;--color-yellow-600:#ca8a04;--color-red-50:#fef2f2;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-blue-50:#eff6ff;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--surface-primary:var(--color-brand-white);--surface-secondary:var(--color-gray-50);--surface-tertiary:var(--color-gray-100);--surface-elevated:var(--color-brand-white);--surface-inverse:var(--color-brand-black);--surface-overlay:#00000080;--surface-hover:var(--color-gray-100);--text-primary:var(--color-gray-900);--text-secondary:var(--color-gray-600);--text-tertiary:var(--color-gray-500);--text-inverse:var(--color-brand-white);--text-brand:var(--color-brand-red);--text-on-brand:var(--color-brand-white);--text-disabled:var(--color-gray-400);--border-default:var(--color-gray-200);--border-strong:var(--color-gray-300);--border-brand:var(--color-brand-red);--border-focus:var(--color-brand-red);--color-focus:var(--color-blue-600);--focus-ring:0 0 0 2px var(--color-focus,#2563eb);--status-success-bg:var(--color-green-50);--status-success-text:var(--color-green-700);--status-success-border:var(--color-green-500);--status-warning-bg:var(--color-yellow-50);--status-warning-text:var(--color-yellow-600);--status-warning-border:var(--color-yellow-500);--status-error-bg:var(--color-red-50);--status-error-text:var(--color-red-700);--status-error-border:var(--color-red-500);--status-info-bg:var(--color-blue-50);--status-info-text:var(--color-blue-600);--status-info-border:var(--color-blue-500);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000040;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-full:9999px;--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--motion-stagger:50ms;--motion-modal-scale-from:.96;--motion-toast-distance:16px;--motion-flyto-duration:.5s;--z-base:0;--z-dropdown:1000;--z-sticky:1100;--z-fixed:1200;--z-modal-backdrop:1300;--z-modal:1400;--z-popover:1500;--z-toast:1500;--z-tooltip:1600;--sidebar-width:16rem;--sidebar-collapsed-width:4rem;--sidebar-bg:var(--surface-inverse);--sidebar-text:var(--text-inverse);--sidebar-hover-bg:#ffffff1a;--sidebar-active-bg:var(--color-brand-red);--sidebar-active-strip:3px;--sidebar-overlay-subtle:#ffffff0f;--sidebar-overlay-faint:#ffffff12;--sidebar-overlay-muted:#ffffff14;--sidebar-overlay-soft:#ffffff1f;--sidebar-text-muted:#ffffff4d;--sidebar-text-dim:#ffffff59;--sidebar-text-subdued:#fff6;--sidebar-text-medium:#ffffff80;--sidebar-text-soft:#fff9;--sidebar-text-secondary:#ffffffa6;--sidebar-text-default:#ffffffbf;--sidebar-text-strong:#ffffffd9;--sidebar-text-emphasis:#ffffffe6;--sidebar-text-primary:#fffffff2;--sidebar-text-max:#fffffffa;--selection-bg:#dc262626;--selection-bg-strong:#dc26262e;--timeline-moving:var(--color-blue-600);--header-height:4rem;--header-bg:var(--surface-primary);--header-border:var(--border-default);--card-bg:var(--surface-primary);--card-border:var(--border-default);--card-radius:var(--radius-lg);--card-shadow:var(--shadow-sm);--card-padding:var(--space-6);--button-radius:var(--radius-md);--button-padding-x:var(--space-4);--button-padding-y:var(--space-2);--density-card-padding:var(--space-6);--density-row-py:var(--space-4);--density-button-py:var(--space-2);--density-form-field-py:var(--space-3);--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}[data-theme=dark]{--surface-primary:var(--color-gray-950);--surface-secondary:var(--color-gray-900);--surface-tertiary:var(--color-gray-800);--surface-elevated:var(--color-gray-900);--surface-overlay:#000000b3;--surface-hover:var(--color-gray-800);--text-primary:var(--color-gray-50);--text-secondary:var(--color-gray-300);--text-tertiary:var(--color-gray-400);--text-disabled:var(--color-gray-600);--border-default:var(--color-gray-700);--border-strong:var(--color-gray-600);--color-focus:#60a5fa;--status-success-bg:#22c55e26;--status-success-text:#4ade80;--status-warning-bg:#eab30826;--status-warning-text:#facc15;--status-error-bg:#ef444426;--status-error-text:#f87171;--status-info-bg:#3b82f626;--status-info-text:#60a5fa;--shadow-sm:0 1px 2px 0 #0006;--shadow-md:0 4px 6px -1px #00000080, 0 2px 4px -1px #00000059;--shadow-lg:0 10px 15px -3px #0000008c, 0 4px 6px -2px #0006;--header-bg:var(--surface-elevated);--card-shadow:0 1px 2px 0 #0006}[data-density=compact]{--density-card-padding:var(--space-4);--density-row-py:var(--space-3);--density-button-py:.375rem;--density-form-field-py:var(--space-2)}}.skeleton{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.skeleton__line,.skeleton__block{background-color:var(--surface-tertiary);border-radius:var(--radius-md);width:100%;height:1rem;position:relative;overflow:hidden}.skeleton__line:before,.skeleton__block:before{content:"";background:linear-gradient(90deg, var(--surface-tertiary) 0%, var(--surface-secondary) 50%, var(--surface-tertiary) 100%);will-change:transform;animation:skeleton-shimmer var(--duration-slow) infinite linear;animation-duration:1.4s;position:absolute;inset:0;transform:translate(-100%)}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton__line:before,.skeleton__block:before{opacity:.6;animation:none;transform:translate(0)}}.skeleton--avatar .skeleton__block--avatar,.skeleton__block--avatar{border-radius:var(--radius-full);flex:none;width:2.5rem;height:2.5rem}.skeleton--card{padding:var(--density-card-padding);background-color:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--card-radius);gap:var(--space-3)}.skeleton__card-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.skeleton__card-head .skeleton__line{flex:auto}.skeleton--table{gap:var(--space-3)}.skeleton__row{grid-template-columns:repeat(var(--skeleton-cols,4), minmax(0, 1fr));gap:var(--space-3);display:grid}.skeleton__row--head .skeleton__block--head{background-color:var(--surface-secondary);height:.75rem}.data-table{background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:100%;box-shadow:var(--card-shadow);overflow-x:auto}.data-table__placeholder{min-height:var(--space-12)}.data-table__table{border-collapse:collapse;width:100%}.data-table__thead{background:var(--surface-primary)}.data-table__container{max-height:70vh;overflow:auto}.data-table__container thead{z-index:1;background:var(--surface-primary);position:sticky;top:0}.data-table__th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--surface-primary);border-top:0;border-left:0;border-right:0;border-bottom:1px solid var(--border-default);white-space:nowrap}.data-table__th--center,.data-table__td--center{text-align:center}.data-table__th--right,.data-table__td--right{text-align:right}.data-table__sort-btn{align-items:center;gap:var(--space-1);font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.data-table__sort-btn:hover{color:var(--text-primary)}.data-table__sort-btn:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:0}.data-table__sort-icon{opacity:.4;transition:opacity var(--duration-fast) var(--ease-in-out);font-size:12px;line-height:1}.data-table__sort-icon.is-active{opacity:1;color:var(--text-brand)}.data-table__td{padding:var(--density-row-py) var(--space-4);border-bottom:1px solid var(--border-default);font-size:var(--text-sm);color:var(--text-primary)}.data-table__tbody .data-table__tr:last-child .data-table__td{border-bottom:0}.data-table__tbody .data-table__tr{background:var(--surface-primary);transition:background-color var(--duration-fast) var(--ease-out)}.data-table__tbody .data-table__tr:nth-child(odd){background:var(--surface-primary)}.data-table__tbody .data-table__tr:nth-child(2n){background:var(--surface-secondary)}.data-table__tbody .data-table__tr:hover{background:var(--surface-hover)}@media (width<=1023px){.data-table__cell--sticky{z-index:1;background:var(--surface-elevated);position:sticky;left:0}.data-table__th.data-table__cell--sticky{background:var(--surface-primary)}}@media (width>=1024px){.data-table__th{z-index:1;position:sticky;top:0}}@media (width<=1023px){.data-table--collapse{box-shadow:none;background:0 0;border:0;overflow:visible}.data-table--collapse .data-table__table,.data-table--collapse .data-table__thead,.data-table--collapse .data-table__tbody,.data-table--collapse .data-table__tr,.data-table--collapse .data-table__th,.data-table--collapse .data-table__td{display:block}.data-table--collapse .data-table__thead{position:absolute;top:-9999px;left:-9999px}.data-table--collapse .data-table__tr{background:var(--surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-3);box-shadow:var(--card-shadow)}.data-table--collapse .data-table__td{padding:var(--space-1) 0;text-align:left;border-bottom:0}.data-table--collapse .data-table__td:before{content:attr(data-label);font-size:var(--text-xs);color:var(--text-tertiary);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1);display:block}.data-table--collapse .data-table__cell--sticky{position:static}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.mceasy-marker{cursor:pointer;flex-direction:column;align-items:center;display:flex}.mceasy-arrow{filter:drop-shadow(0 1px 2px #0006);transform-origin:50%;border-bottom:16px solid #2563eb;border-left:8px solid #0000;border-right:8px solid #0000;width:0;height:0}.mceasy-plate{color:#111;white-space:nowrap;background:#fff;border-radius:4px;margin-top:2px;padding:2px 6px;font-size:11px;font-weight:600;box-shadow:0 1px 3px #0003}.mceasy-stop{color:#dc2626;cursor:pointer;background:#fff;border:2px solid #dc2626;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:700;display:flex;box-shadow:0 2px 4px #0003}.leaflet-container{font-family:inherit}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
