:root{--brand-950:#1b1f4d;--brand-900:#262b6b;--brand-800:#333a93;--brand-700:#3e45b4;--brand-600:#4a52ce;--brand-500:#5c66e2;--brand-400:#8189ec;--brand-300:#a3a9f2;--brand-100:#e2e4fb;--brand-50:#f0f1fe;--brand-warm:#f2a654;--brand-warm-dark:#e08c33;--brand-coral:#f5734f;--brand-coral-dark:#de5d33;--brand-bg:#f5f7ff;--brand-bg-light:#eff1fb;--brand-bg-pale:#eaeaf1;--brand-surface:#fff;--brand-text:#1f1f1f;--brand-text-secondary:#4c5560;--brand-text-muted:#68737f;--brand-border:#ced4da;--brand-border-strong:#b4bcc5;--brand-r-sm:8px;--brand-r-md:12px;--brand-r-lg:20px;--brand-r-full:100px;--brand-shadow-none:none;--brand-shadow-sm:6px 16px 31px -18px #b7bcd1;--brand-shadow-md:0 4px 12px #1f1f1f1a;--brand-shadow-lg:0 5px 15px #00000040;--brand-font-sans:"Nunito", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--brand-font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}[data-crankpal-app-dark]{--app-dark-brand-500:#8189ec;--app-dark-brand-600:#a3a9f2;--app-dark-brand-bg:#0f112a;--app-dark-brand-surface:#171a41;--app-dark-brand-bg-light:#1e2255;--app-dark-brand-bg-pale:#22265f;--app-dark-brand-50:#1f2357;--app-dark-brand-text:#dcdff2;--app-dark-brand-text-secondary:#9aa1c6;--app-dark-brand-text-muted:#7e86ad;--app-dark-brand-border:#222761;--app-dark-brand-border-strong:#2b317b;--app-dark-brand-warm:#f5b978;--app-dark-brand-coral:#f79074;--app-light-on-accent:#fff;--app-dark-on-accent:#1b1f4d;--app-light-state-success:#177a4e;--app-dark-state-success:#4fb98a;--app-light-state-warning:#f59e0b;--app-dark-state-warning:#d9a43c;--app-light-state-warning-dark:#a16207;--app-dark-state-warning-dark:#e3b45c;--app-light-state-danger:#e5484d;--app-dark-state-danger:#e0666b;--app-light-state-info:#1b6e9e;--app-dark-state-info:#5aacd6}@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-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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:0px;--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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--text-xs--line-height:calc(1 / .75);--text-sm--line-height:calc(1.25 / .875);--text-base--line-height:calc(1.5 / 1);--text-lg--line-height:calc(1.75 / 1.125);--text-xl--line-height:calc(1.75 / 1.25);--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-xs:var(--shadow-xs);--shadow-sm:var(--shadow-sm);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) 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}*{box-sizing:border-box;margin:0;padding:0}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}code{font-family:var(--font-mono)}}@layer components{.cl-shell{background:linear-gradient(180deg, var(--cl-bezel-0) 0%, var(--cl-bezel-1) 16%, var(--cl-bezel-2) 62%, var(--cl-bezel-3) 100%);box-shadow:0 1px 0 var(--cl-line-hi) inset, 0 -2px 0 var(--cl-shade) inset, 0 26px 50px -26px var(--cl-shadow);color:var(--cl-text);border-radius:22px;padding:8px;position:relative}.cl-inner{background:radial-gradient(128% 168% at 50% -26%, var(--cl-panel-0) 0%, var(--cl-panel-1) 58%, var(--cl-panel-2) 100%);border:1px solid var(--cl-line);box-shadow:0 22px 46px -22px var(--cl-shadow) inset;border-radius:15px;padding:12px 18px 14px;position:relative;overflow:hidden}.cl-inner:before{content:"";pointer-events:none;background:repeating-linear-gradient(45deg, var(--cl-glass-3) 0 1px, transparent 1px 3px);position:absolute;inset:0}.cl-glass{pointer-events:none;background:linear-gradient(104deg, transparent 26%, var(--cl-glass-1) 40%, var(--cl-glass-2) 46%, var(--cl-glass-3) 53%, transparent 64%), radial-gradient(120% 90% at 50% 120%, var(--cl-vignette), transparent 62%);border-radius:15px;position:absolute;inset:0}.cl-row{justify-content:space-between;align-items:center;gap:8px;height:54px;display:flex;position:relative}.cl-lamp{appearance:none;cursor:pointer;width:54px;height:54px;color:var(--tint);--core:var(--cl-ready-core);--glow:var(--cl-ready-glow);--tint:var(--cl-ready-tint);background:0 0;border:0;border-radius:10px;flex:none;place-items:center;margin:0;padding:0;display:grid;position:relative}.cl-lamp:focus-visible{outline:2px solid var(--cl-ring);outline-offset:5px}.cl-lamp svg{--halo-mid:.78;--halo-far:.42;width:100%;height:100%;overflow:visible}.cl-lamp .cl-halo{color:var(--glow)}.cl-lamp .cl-halo-mid{opacity:var(--halo-mid)}.cl-lamp .cl-halo-far{opacity:var(--halo-far)}.cl-lamp.cl-plan{--core:var(--cl-plan-core);--glow:var(--cl-plan-glow);--tint:var(--cl-plan-tint)}.cl-lamp.cl-soon{--core:var(--cl-soon-core);--glow:var(--cl-soon-glow);--tint:var(--cl-soon-tint)}.cl-lamp.cl-hold{--core:var(--cl-hold-core);--glow:var(--cl-hold-glow);--tint:var(--cl-hold-tint)}.cl-lamp.cl-soon svg,.cl-lamp.cl-hold svg{--halo-mid:1;--halo-far:.62}.cl-lamp.cl-unknown{--core:var(--cl-off);--tint:var(--cl-off)}.cl-lamp.cl-unknown .cl-halo{display:none}.cl-lamp.cl-off{--core:var(--cl-off);--tint:var(--cl-off);cursor:default;opacity:.55}.cl-lamp.cl-off .cl-halo{display:none}.cl-lamp[aria-expanded=true]:after{content:"";pointer-events:none;border:1px solid var(--cl-ring);box-shadow:inset 0 1px 0 var(--cl-detail-hi), 0 0 0 4px var(--cl-ring-soft);background:var(--cl-ring-soft);border-radius:12px;position:absolute;inset:-6px}.cl-odos{grid-template-columns:auto 1fr auto;align-items:end;gap:10px 14px;margin-top:8px;display:grid;position:relative}.cl-odo{flex-direction:column;gap:5px;min-width:0;display:flex}.cl-odo-lab{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--cl-text-mute);white-space:nowrap;font-size:9px}.cl-odo-line{align-items:center;gap:6px;display:flex}.cl-drums{background:var(--cl-drum-well);box-shadow:0 1px 0 var(--cl-line), 0 0 0 1px var(--cl-shade), inset 0 3px 8px var(--cl-shade);border-radius:4px;gap:2px;padding:2px;display:inline-flex}.cl-drums i{font-style:normal;font-family:var(--font-mono);text-align:center;width:1.02em;height:1.42em;color:var(--cl-drum-text);font-variant-numeric:tabular-nums;background:linear-gradient(180deg, var(--cl-drum-0) 0%, var(--cl-drum-1) 16%, var(--cl-drum-2) 50%, var(--cl-drum-1) 84%, var(--cl-drum-0) 100%);box-shadow:inset 0 0 0 1px var(--cl-shade);border-radius:2px;font-size:14px;font-weight:500;line-height:1.42em}.cl-drums i.cl-wheel{position:relative;overflow:hidden}.cl-strip{will-change:transform;flex-direction:column;display:flex;position:absolute;top:0;left:0;right:0}.cl-strip b{height:1.42em;line-height:1.42em;font-weight:inherit;display:block}.cl-odo-unit{font-family:var(--font-mono);color:var(--cl-text-dim);letter-spacing:.06em;font-size:10px}.cl-brand{width:clamp(72px,26%,120px);color:var(--cl-brand);opacity:.9;place-self:center}.cl-brand svg{width:100%;height:auto;display:block}.cl-readout{background:linear-gradient(180deg, var(--cl-readout-0), var(--cl-readout-1));border:1px solid var(--cl-line);box-shadow:0 1px 0 var(--cl-line) inset;font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;padding:7px 11px;font-size:10px;display:flex;position:relative}.cl-readout .lvl{color:var(--core);text-shadow:0 0 10px var(--glow);--core:var(--cl-ready-core);--glow:var(--cl-ready-glow);font-weight:600}.cl-readout .lvl.cl-plan{--core:var(--cl-plan-core);--glow:var(--cl-plan-glow)}.cl-readout .lvl.cl-soon{--core:var(--cl-soon-core);--glow:var(--cl-soon-glow)}.cl-readout .lvl.cl-hold{--core:var(--cl-hold-core);--glow:var(--cl-hold-glow)}.cl-readout .lvl.cl-unknown{--core:var(--cl-text-dim);--glow:transparent}.cl-readout .sep{color:var(--cl-text-faint)}.cl-readout .val{color:var(--cl-text-dim);min-width:0}.cl-readout .val b{color:var(--cl-text);font-weight:500}.cl-readout .rt{color:var(--cl-text-mute);margin-inline-start:auto}.cl-cta{cursor:pointer;width:100%;color:var(--cl-panel-2);background:var(--cl-soon-tint);border:0;border-radius:8px;margin-top:12px;padding:9px;font-size:13px;font-weight:600}.cl-cta.cl-hold{background:var(--cl-hold-tint)}.cl-history{border:1px dashed var(--cl-line-hi);color:var(--cl-text-dim);border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;margin-top:10px;padding:8px 11px;font-size:12px;line-height:1.42;display:flex}.cl-history b{color:var(--cl-text);font-weight:600}.cl-history .cl-detail-link{margin-top:2px;font-size:12px}.cl-detail{z-index:6;background:var(--cl-detail-bg);-webkit-backdrop-filter:blur(22px)saturate(170%);backdrop-filter:blur(22px)saturate(170%);border:1px solid var(--cl-detail-line);width:min(300px,100% - 20px);box-shadow:inset 0 1px 0 var(--cl-detail-hi), 0 22px 46px -16px var(--cl-shadow);color:var(--cl-detail-text);text-transform:none;letter-spacing:0;font-family:var(--font-sans);border-radius:16px;padding:12px 13px 11px;position:absolute}.cl-detail.cl-detail-floating{z-index:1200;width:300px;position:fixed}.cl-detail:before{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(120% 62% at 16% -4%, var(--cl-line-hi), transparent 62%);position:absolute;inset:0}.cl-detail>*{position:relative}.cl-detail-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.cl-detail-ic{width:20px;height:20px;color:var(--tint);flex:none}.cl-detail-ic svg{--halo-mid:.7;--halo-far:0}.cl-detail-name{letter-spacing:-.012em;flex:1;min-width:0;font-size:14px;font-weight:700}.cl-detail-body{color:var(--cl-detail-text-2);flex-direction:column;gap:5px;font-size:12px;line-height:1.42;display:flex}.cl-detail-body b{color:var(--cl-detail-text);font-weight:600}.cl-detail-dim{color:var(--cl-text-dim)}.cl-detail-foot{border-top:1px solid var(--cl-line-hi);justify-content:space-between;align-items:center;gap:10px;margin-top:9px;padding-top:8px;font-size:11.5px;display:flex}.cl-detail-link{cursor:pointer;color:var(--cl-detail-link);background:0 0;border:0;padding:0;font-weight:600}.cl-detail-close{cursor:pointer;color:var(--cl-text-dim);background:0 0;border:0;padding:0 2px;font-size:18px;line-height:1}.cl-chip{letter-spacing:.09em;text-transform:uppercase;color:var(--core);background:var(--glow);border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-size:9px;font-weight:800;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cl-chip{background:color-mix(in srgb, var(--glow) 18%, transparent)}}.cl-chip{--core:var(--cl-ready-core);--glow:var(--cl-ready-glow)}.cl-chip svg{width:10px;height:10px}.cl-chip.cl-plan{--core:var(--cl-plan-core);--glow:var(--cl-plan-glow)}.cl-chip.cl-soon{--core:var(--cl-soon-core);--glow:var(--cl-soon-glow)}.cl-chip.cl-hold{--core:var(--cl-hold-core);--glow:var(--cl-hold-glow)}.cl-chip.cl-unknown{--core:var(--cl-text-dim);--glow:var(--cl-text-mute)}.cl-compact .cl-inner{padding:8px 14px 12px}.cl-compact .cl-row{height:44px}.cl-compact .cl-lamp{width:44px;height:44px}.cl-compact .cl-odos{margin-top:6px}.cl-compact .cl-drums i{font-size:12px}.cl-mini{border-radius:14px;flex:none;padding:5px}.cl-mini .cl-inner{border-radius:10px;grid-template-columns:auto auto;grid-template-areas:"lamps odos""readout odos";align-items:center;gap:4px 10px;padding:6px 10px 6px 8px;display:grid}.cl-mini .cl-glass{border-radius:10px}.cl-mini .cl-row{grid-area:lamps;justify-content:center;gap:3px;height:30px}.cl-mini .cl-lamp{border-radius:7px;width:30px;height:30px}.cl-mini .cl-readout{grid-area:readout;justify-content:center;margin-top:0;padding:2px 8px;font-size:9px}.cl-mini .cl-odos{flex-direction:column;grid-area:odos;align-items:stretch;gap:4px;margin-top:0;display:flex}.cl-mini .cl-odo{gap:1px}.cl-mini .cl-odo-lab{letter-spacing:.1em;font-size:7.5px}.cl-mini .cl-odo-line{gap:4px}.cl-mini .cl-drums i{font-size:10px}.cl-mini .cl-odo-unit{font-size:9px}.cl-mini .cl-brand{display:none}@media (width<=480px){.cl-lamp{width:44px;height:44px}.cl-odos{grid-template-columns:1fr 1fr}.cl-brand{order:-1;grid-column:1/-1;margin-bottom:2px}}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.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:0}.start-0{inset-inline-start:0}.start-\[18px\]{inset-inline-start:18px}.-end-0\.5{inset-inline-end:-2px}.-end-1{inset-inline-end:-4px}.end-0{inset-inline-end:0}.-top-1{top:-4px}.top-1\/2{top:50%}.top-full{top:100%}.-right-1{right:-4px}.right-0{right:0}.right-4{right:16px}.-bottom-0\.5{bottom:-2px}.bottom-4{bottom:16px}.bottom-\[88px\]{bottom:88px}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-\[235px\]{left:235px}.isolate{isolation:isolate}.z-50{z-index:50}.z-\[1150\]{z-index:1150}.z-\[1200\]{z-index:1200}.z-\[1400\]{z-index:1400}.z-\[1401\]{z-index:1401}.z-\[1500\]{z-index:1500}.col-span-full{grid-column:1/-1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.mx-0\.5{margin-inline:2px}.mx-3\.5{margin-inline:14px}.mx-auto{margin-inline:auto}.my-1{margin-block:4px}.ms-1\.5{margin-inline-start:6px}.-mt-1{margin-top:-4px}.-mt-2{margin-top:-8px}.mt-0{margin-top:0}.mt-0\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-1\.5{margin-top:6px}.mt-2{margin-top:8px}.mt-2\.5{margin-top:10px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-px{margin-top:1px}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:2px}.mb-1{margin-bottom:4px}.mb-1\.5{margin-bottom:6px}.mb-2{margin-bottom:8px}.mb-2\.5{margin-bottom:10px}.mb-3{margin-bottom:12px}.mb-3\.5{margin-bottom:14px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.ml-2{margin-left:8px}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\!hidden{display:none!important}.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}.inline-flex\!{display:inline-flex!important}.table{display:table}.aspect-square{aspect-ratio:1}.h-1\.5{height:6px}.h-2{height:8px}.h-4{height:16px}.h-5{height:20px}.h-5\.5{height:22px}.h-7{height:28px}.h-8{height:32px}.h-9{height:36px}.h-10{height:40px}.h-11{height:44px}.h-\[18px\]{height:18px}.h-\[38px\]\!{height:38px!important}.h-\[72px\]\!{height:72px!important}.h-\[76px\]{height:76px}.h-\[calc\(100vh-220px\)\]{height:calc(100vh - 220px)}.h-full{height:100%}.h-px{height:1px}.max-h-25{max-height:100px}.max-h-30{max-height:120px}.max-h-60{max-height:240px}.max-h-70{max-height:280px}.max-h-96{max-height:384px}.max-h-120{max-height:480px}.min-h-0{min-height:0}.min-h-9{min-height:36px}.min-h-9\.5{min-height:38px}.min-h-125{min-height:500px}.min-h-screen{min-height:100vh}.w-2{width:8px}.w-3\.5{width:14px}.w-4{width:16px}.w-5{width:20px}.w-5\.5{width:22px}.w-7{width:28px}.w-8{width:32px}.w-9{width:36px}.w-11{width:44px}.w-18{width:72px}.w-80{width:320px}.w-\[18px\]{width:18px}.w-\[26px\]{width:26px}.w-\[38px\]\!{width:38px!important}.w-\[72px\]\!{width:72px!important}.w-\[235px\]{width:235px}.w-\[340px\]{width:340px}.w-auto{width:auto}.w-full{width:100%}.max-w-28{max-width:112px}.max-w-\[200px\]{max-width:200px}.max-w-\[280px\]{max-width:280px}.max-w-\[520px\]{max-width:520px}.max-w-\[640px\]{max-width:640px}.max-w-\[calc\(100vw-36px\)\]{max-width:calc(100vw - 36px)}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-4\.5{min-width:18px}.min-w-5{min-width:20px}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[calc\(100\%-26px\)\]{--tw-translate-x:calc(100% - 26px);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-decimal{list-style-type:decimal}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:2px}.gap-0\.75{gap:3px}.gap-1{gap:4px}.gap-1\.5{gap:6px}.gap-1\.25{gap:5px}.gap-2{gap:8px}.gap-2\.5{gap:10px}.gap-3{gap:12px}.gap-3\.5{gap:14px}.gap-4{gap:16px}: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-border>:not(:last-child)){border-color:var(--border)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[4px\]{border-radius:4px}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:var(--r-full)}.rounded-lg{border-radius:var(--r-lg)}.rounded-md{border-radius:var(--r-md)}.rounded-sm{border-radius:var(--r-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-s-md{border-start-start-radius:var(--r-md);border-end-start-radius:var(--r-md)}.rounded-t-md{border-top-left-radius:var(--r-md);border-top-right-radius:var(--r-md)}.rounded-bl-xl{border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e-0{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-0{border-right-style:var(--tw-border-style);border-right-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--warning-border\){border-color:var(--warning-border)}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--danger\)\]{border-color:var(--danger)}.border-accent{border-color:var(--accent)}.border-border{border-color:var(--border)}.border-primary{border-color:var(--primary)}.bg-\(--orange\){background-color:var(--orange)}.bg-\(--search-highlight\){background-color:var(--search-highlight)}.bg-\(--surface-subtle\){background-color:var(--surface-subtle)}.bg-\(--teal-50\){background-color:var(--teal-50)}.bg-\(--warning-bg\){background-color:var(--warning-bg)}.bg-\[\#…\]{background-color:#…}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-\[var\(--bg-light\)\]{background-color:var(--bg-light)}.bg-\[var\(--danger-bg\)\]{background-color:var(--danger-bg)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-accent{background-color:var(--accent)}.bg-bg-light{background-color:var(--bg-light)}.bg-bg-pale{background-color:var(--bg-pale)}.bg-border{background-color:var(--border)}.bg-danger{background-color:var(--danger)}.bg-info{background-color:var(--info)}.bg-orange-dark{background-color:var(--orange-d)}.bg-primary{background-color:var(--primary)}.bg-success{background-color:var(--success)}.bg-success-bg{background-color:var(--success-bg)}.bg-surface{background-color:var(--surface)}.bg-surface-subtle{background-color:var(--surface-subtle)}.bg-term-bg{background-color:var(--term-bg)}.bg-text-muted{background-color:var(--text-muted)}.bg-transparent{background-color:#0000}.bg-warning-bg{background-color:var(--warning-bg)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:2px}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.p-3\.5{padding:14px}.p-4\.5{padding:18px}.p-5{padding:20px}.p-6{padding:24px}.px-1{padding-inline:4px}.px-1\.5{padding-inline:6px}.px-1\.75{padding-inline:7px}.px-2{padding-inline:8px}.px-2\.5{padding-inline:10px}.px-3{padding-inline:12px}.px-3\.5{padding-inline:14px}.px-4{padding-inline:16px}.px-4\.5{padding-inline:18px}.px-5{padding-inline:20px}.px-7{padding-inline:28px}.py-0\.5{padding-block:2px}.py-1{padding-block:4px}.py-1\.5{padding-block:6px}.py-2{padding-block:8px}.py-2\.5{padding-block:10px}.py-3{padding-block:12px}.py-3\.5{padding-block:14px}.py-4{padding-block:16px}.py-6{padding-block:24px}.py-px{padding-block:1px}.ps-3\.5{padding-inline-start:14px}.ps-4{padding-inline-start:16px}.ps-9{padding-inline-start:36px}.pt-0\.5{padding-top:2px}.pt-1{padding-top:4px}.pt-2{padding-top:8px}.pt-3{padding-top:12px}.pr-1\.5{padding-right:6px}.pr-3\.5{padding-right:14px}.pb-1{padding-bottom:4px}.pb-2{padding-bottom:8px}.pb-2\.5{padding-bottom:10px}.pb-3{padding-bottom:12px}.pb-24{padding-bottom:96px}.pl-1{padding-left:4px}.pl-3\.25{padding-left:13px}.text-center{text-align:center}.text-end{text-align:end}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-\[-2px\]{vertical-align:-2px}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--fs-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-2xl\!{font-size:var(--fs-2xl)!important;line-height:var(--tw-leading,var(--text-2xl--line-height))!important}.text-base{font-size:var(--fs-md);line-height:var(--tw-leading,var(--text-base--line-height))}.text-base\!{font-size:var(--fs-md)!important;line-height:var(--tw-leading,var(--text-base--line-height))!important}.text-lg{font-size:var(--fs-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--fs-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--fs-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xl\!{font-size:var(--fs-xl)!important;line-height:var(--tw-leading,var(--text-xl--line-height))!important}.text-xs{font-size:var(--fs-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0px\]{font-size:0}.text-\[13px\]{font-size:13px}.leading-4{--tw-leading:calc(4px * 4);line-height:16px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\(--green-900\){color:var(--green-900)}.text-\(--green-950\){color:var(--green-950)}.text-\(--orange-d\){color:var(--orange-d)}.text-\(--teal-700\){color:var(--teal-700)}.text-\(--text-muted\){color:var(--text-muted)}.text-\(--white\){color:var(--white)}.text-\[var\(--accent-contrast\)\]{color:var(--accent-contrast)}.text-\[var\(--accent-dark\)\]{color:var(--accent-dark)}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--text\)\]{color:var(--text)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-accent{color:var(--accent)}.text-accent-dark{color:var(--accent-dark)}.text-danger{color:var(--danger)}.text-inherit{color:inherit}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-term-black{color:var(--term-black)}.text-term-blue{color:var(--term-blue)}.text-term-bright-blue{color:var(--term-bright-blue)}.text-term-bright-cyan{color:var(--term-bright-cyan)}.text-term-bright-green{color:var(--term-bright-green)}.text-term-bright-magenta{color:var(--term-bright-magenta)}.text-term-bright-red{color:var(--term-bright-red)}.text-term-bright-white{color:var(--term-bright-white)}.text-term-bright-yellow{color:var(--term-bright-yellow)}.text-term-cyan{color:var(--term-cyan)}.text-term-fg{color:var(--term-fg)}.text-term-green{color:var(--term-green)}.text-term-magenta{color:var(--term-magenta)}.text-term-red{color:var(--term-red)}.text-term-white{color:var(--term-white)}.text-term-yellow{color:var(--term-yellow)}.text-text{color:var(--text)}.text-text-muted{color:var(--text-muted)}.text-text-secondary{color:var(--text-secondary)}.text-warning{color:var(--warning)}.text-warning-strong{color:var(--warning-strong)}.text-white{color:var(--white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}.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-lg{--tw-shadow:var(--shadow-lg);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:var(--shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:var(--shadow-sm);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}.blur{--tw-blur:blur(8px);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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);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,)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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-\[width\]{transition-property:width;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))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.outline-none\!{--tw-outline-style:none!important;outline-style:none!important}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\[--topbar-h\:0px\]{--topbar-h:0px}.\[animation-duration\:1\.4s\]{animation-duration:1.4s}@media (hover:hover){.group-hover\:opacity-60:is(:where(.group):hover *){opacity:.6}.group-hover\/row\:bg-bg-pale:is(:where(.group\/row):hover *){background-color:var(--bg-pale)}}.group-data-\[c1\]\:hidden:is(:where(.group)[data-c1] *),.group-data-\[c2\]\:hidden:is(:where(.group)[data-c2] *),.group-data-\[c3\]\:hidden:is(:where(.group)[data-c3] *){display:none}.placeholder\:text-text-muted::placeholder{color:var(--text-muted)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:border-accent:focus-within{border-color:var(--accent)}.focus-within\:shadow-\[var\(--ring\)\]:focus-within{--tw-shadow:var(--ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-accent:hover{border-color:var(--accent)}.hover\:border-border-strong:hover{border-color:var(--border-strong)}.hover\:bg-\(--black-a04\):hover{background-color:var(--black-a04)}.hover\:bg-\(--surface-subtle\):hover{background-color:var(--surface-subtle)}.hover\:bg-\[var\(--bg-light\)\]:hover{background-color:var(--bg-light)}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-bg-light:hover{background-color:var(--bg-light)}.hover\:bg-bg-pale:hover{background-color:var(--bg-pale)}.hover\:bg-surface-subtle:hover{background-color:var(--surface-subtle)}.hover\:text-\(--teal-700\):hover{color:var(--teal-700)}.hover\:text-accent-dark:hover{color:var(--accent-dark)}.hover\:text-danger:hover{color:var(--danger)}.hover\:text-primary:hover{color:var(--primary)}.hover\:text-text:hover{color:var(--text)}.hover\:text-white:hover{color:var(--white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:underline-offset-2:hover{text-underline-offset:2px}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-\[0_6px_18px_var\(--primary-a08\)\]:hover{--tw-shadow:0 6px 18px var(--tw-shadow-color,var(--primary-a08));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:border-accent:focus{border-color:var(--accent)}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-accent:focus-visible{outline-color:var(--accent)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-60:disabled{opacity:.6}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}.motion-reduce\:transition-none{transition-property:none}}@media not all and (width>=900px){.max-\[900px\]\:order-2{order:2}.max-\[900px\]\:ms-auto{margin-inline-start:auto}.max-\[900px\]\:block{display:block}.max-\[900px\]\:w-auto{width:auto}.max-\[900px\]\:w-full{width:100%}.max-\[900px\]\:grow{flex-grow:1}.max-\[900px\]\:flex-wrap{flex-wrap:wrap}.max-\[900px\]\:gap-y-1\.5{row-gap:6px}.max-\[900px\]\:px-0{padding-inline:0}}@media not all and (width>=800px){.max-\[800px\]\:hidden{display:none}.max-\[800px\]\:h-auto{height:auto}.max-\[800px\]\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media not all and (width>=768px){.max-\[768px\]\:min-h-0{min-height:0}}@media not all and (width>=720px){.max-\[720px\]\:right-3{right:12px}.max-\[720px\]\:bottom-3{bottom:12px}}@media not all and (width>=64rem){.max-lg\:left-\[68px\]{left:68px}}@media not all and (width>=48rem){.max-md\:\!static{position:static!important}.max-md\:top-auto{top:auto}.max-md\:bottom-\[88px\]{bottom:88px}.max-md\:left-0{left:0}.max-md\:ms-auto{margin-inline-start:auto}.max-md\:self-center{align-self:center}}@media not all and (width>=40rem){.max-sm\:order-6{order:6}.max-sm\:\!hidden{display:none!important}.max-sm\:flex{display:flex}.max-sm\:w-full{width:100%}.max-sm\:basis-full{flex-basis:100%}.max-sm\:flex-wrap{flex-wrap:wrap}.max-sm\:items-start{align-items:flex-start}.max-sm\:gap-2{gap:8px}}@media (width>=900px){.min-\[900px\]\:sticky{position:sticky}.min-\[900px\]\:top-5{top:20px}}@media (width>=40rem){.sm\:block{display:block}.sm\:before\:absolute:before{content:var(--tw-content);position:absolute}.sm\:before\:inset-y-0:before{content:var(--tw-content);inset-block:0}.sm\:before\:start-0:before{content:var(--tw-content);inset-inline-start:0}.sm\:before\:w-px:before{content:var(--tw-content);width:1px}.sm\:before\:bg-border:before{content:var(--tw-content);background-color:var(--border)}}@media (width>=48rem){.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:gap-\[18px\]{gap:18px}}@media (width>=64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}}@media (width>=96rem){.\32 xl\:table-cell{display:table-cell}}@media (pointer:coarse){.pointer-coarse\:\!hidden{display:none!important}.pointer-coarse\:flex{display:flex}.pointer-coarse\:min-h-11{min-height:44px}.pointer-coarse\:min-w-11{min-width:44px}}@media (width<=768px){.\[\@media\(max-width\:768px\)\]\:fixed{position:fixed}.\[\@media\(max-width\:768px\)\]\:start-2\.5{inset-inline-start:10px}.\[\@media\(max-width\:768px\)\]\:top-2\.5{top:10px}.\[\@media\(max-width\:768px\)\]\:z-\[1380\]{z-index:1380}.\[\@media\(max-width\:768px\)\]\:pt-16{padding-top:64px}.\[\@media\(max-width\:768px\)\]\:shadow-\[var\(--shadow-fab\)\]{--tw-shadow:var(--shadow-fab);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\[\@media\(max-width\:768px\)\]\:\[--topbar-h\:60px\]{--topbar-h:60px}}@media (width>=769px) and (width<=1024px){.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:absolute{position:absolute}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:end-2{inset-inline-end:8px}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:top-0{top:0}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:hidden{display:none}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:h-3{height:12px}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:w-3{width:12px}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:flex-col{flex-direction:column}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:gap-1\.5{gap:6px}.\[\@media\(min-width\:769px\)_and_\(max-width\:1024px\)\]\:p-0{padding:0}}body:has(.modal-backdrop) .\[body\:has\(\.modal-backdrop\)_\&\]\:\!hidden{display:none!important}}:root{--term-bg:#14161c;--term-fg:#e4e6eb;--term-black:#8b93a1;--term-red:#f2777a;--term-green:#6fcf8e;--term-yellow:#f0c674;--term-blue:#6fb3f2;--term-magenta:#d99ae0;--term-cyan:#6fd3d3;--term-white:#e4e6eb;--term-bright-red:#ff9b9d;--term-bright-green:#96e0ab;--term-bright-yellow:#f6d99a;--term-bright-blue:#9acbf7;--term-bright-magenta:#e8bced;--term-bright-cyan:#9ce2e2;--term-bright-white:#fff;--scrim-heavy:var(--brand-text)}@supports (color:color-mix(in lab, red, red)){:root{--scrim-heavy:color-mix(in srgb, var(--brand-text) 92%, transparent)}}:root[data-theme=dark]{--scrim-heavy:var(--brand-text)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark]{--scrim-heavy:color-mix(in srgb, var(--brand-text) 94%, transparent)}}.badge.stage-live:before{background:var(--success);opacity:1;animation:1.6s ease-in-out infinite stage-live-pulse}@keyframes stage-live-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 color-mix(in srgb, var(--success) 45%, transparent)}70%{opacity:.7;box-shadow:0 0 0 4px color-mix(in srgb, var(--success) 0%, transparent)}}@media (prefers-reduced-motion:reduce){.badge.stage-live:before{animation:none}}.badge.stage-live.stage-leaving{animation:2.4s ease-in-out infinite stage-leaving-blink}.badge.stage-live.stage-leaving:before{opacity:.6;animation:none}@keyframes stage-leaving-blink{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.badge.stage-live.stage-leaving{opacity:.55;animation:none}}.bike-row-main{min-width:0;color:inherit;flex:auto;grid-template-columns:minmax(200px,1fr) 210px 210px;align-items:center;column-gap:26px;display:grid}.bike-row-cell.bike-row-owner{min-width:0}@media (width<=980px){.bike-row-main{flex-wrap:wrap;gap:14px;display:flex}}.bike-thumb-catalog img{mix-blend-mode:multiply}.bike-thumb-own img{border:1px solid var(--border)}[data-theme=dark] .bike-thumb-catalog img{mix-blend-mode:normal;background:var(--white);border:1px solid var(--border)}.bike-split{grid-template-columns:minmax(360px,11fr) minmax(340px,9fr);align-items:start;gap:16px;display:grid}.bike-split-left{flex-direction:column;gap:12px;min-width:0;display:flex;position:sticky;top:76px}.bike-split-left .card{margin-bottom:0}.bike-split-right{min-width:0}.bike-visual{position:relative}.bike-slot-overlay{z-index:5;max-height:calc(100% - 24px);position:absolute;bottom:12px;left:12px;right:12px;overflow:auto}.bike-slot-overlay .card{box-shadow:var(--shadow-md)}@media (width<=1100px){.bike-split{grid-template-columns:1fr}.bike-split-left{position:static}}.sensor-note{font-size:var(--fs-sm);color:var(--text-muted);margin:0 0 12px}.sensor-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:12px;display:grid}.sensor-card{align-items:flex-start;gap:16px;margin-bottom:0;display:flex}.sensor-photo{border-radius:var(--r-md);background:var(--white);border:1px solid var(--border);width:96px;height:96px;color:var(--accent);flex:0 0 96px;justify-content:center;align-items:center;padding:8px;display:flex}.sensor-photo img{object-fit:contain;width:100%;height:100%}.sensor-body{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex}.sensor-title{font-weight:700;font-size:var(--fs-md);color:var(--text);overflow-wrap:anywhere}.sensor-nickname{color:var(--text-secondary);font-weight:500}.sensor-meta{font-size:var(--fs-sm);color:var(--text-muted)}.sensor-battery{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.sensor-battery-glyph{border:1.5px solid var(--text-secondary);border-radius:3px;flex:none;width:30px;height:14px;padding:1.5px;display:inline-flex;position:relative}.sensor-battery-glyph:after{content:"";background:var(--text-secondary);border-radius:0 1px 1px 0;width:2px;height:4px;position:absolute;top:3.5px;right:-4px}.sensor-battery-glyph>span{border-radius:1.5px;height:100%;display:block}.sensor-battery-unknown{border-style:dashed;border-color:var(--border-strong)}.sensor-battery-unknown:after{background:var(--border-strong)}.sensor-warning{font-size:var(--fs-sm);color:var(--orange-d);align-items:center;gap:6px;display:flex}.sensor-facts{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px 16px;margin:6px 0 0;display:grid}.sensor-facts dt{font-size:var(--fs-xs);color:var(--text-muted)}.sensor-facts dd{font-size:var(--fs-sm);color:var(--text);overflow-wrap:anywhere;margin:0}.sensor-facts--grouped{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px 24px;margin-top:12px}.sensor-facts--grouped .sensor-fact{min-width:0}.sensor-facts--grouped dt{text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.sensor-detail-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:0 16px;display:grid}@media (width<=1000px){.sensor-detail-pair{grid-template-columns:1fr}}@media (width<=560px){.sensor-grid{grid-template-columns:1fr}.sensor-photo{flex-basis:72px;width:72px;height:72px}}:root{--cl-bezel-0:#46434f;--cl-bezel-1:#232230;--cl-bezel-2:#131219;--cl-bezel-3:#0b0a10;--cl-panel-0:#262530;--cl-panel-1:#101017;--cl-panel-2:#07070b;--cl-line:#ffffff0e;--cl-line-hi:#ffffff29;--cl-shade:#000000d9;--cl-glass-1:#ffffff0e;--cl-glass-2:#ffffff16;--cl-glass-3:#ffffff05;--cl-vignette:#0000006b;--cl-shadow:#000000bf;--cl-ring:#ffffff57;--cl-ring-soft:#ffffff0d;--cl-text:#c9c7d8;--cl-text-dim:#8e8ca0;--cl-text-mute:#5b5969;--cl-text-faint:#3b3947;--cl-brand:#a5a3b6;--cl-ready-core:#cffbe4;--cl-ready-glow:#22c77e;--cl-plan-core:#d6f0ff;--cl-plan-glow:#2ba6e0;--cl-soon-core:#ffebc7;--cl-soon-glow:#f2a413;--cl-hold-core:#ffdadc;--cl-hold-glow:#f0434b;--cl-ready-tint:#5fd9a2;--cl-plan-tint:#67c0eb;--cl-soon-tint:#f7bd52;--cl-hold-tint:#f5787e;--cl-off:#2b2a35;--cl-drum-0:#07070a;--cl-drum-1:#26252e;--cl-drum-2:#3d3c47;--cl-drum-text:#edebf5;--cl-drum-well:#030305;--cl-readout-0:#0009;--cl-readout-1:#00000047;--cl-detail-bg:#2827359e;--cl-detail-line:#ffffff26;--cl-detail-hi:#ffffff3d;--cl-detail-text:#e9e7f2;--cl-detail-text-2:#c6c4d4;--cl-detail-link:#a8aef4}@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-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}:root{--follower-cursor:#fff;--follower-cursor-outline:#111;--curtain-velvet-deep:#34050e;--curtain-velvet-dark:#640916;--curtain-velvet:#951121;--curtain-velvet-light:#bf1b2e;--curtain-velvet-sheen:#de4557;--curtain-gold-dark:#8a6420;--curtain-gold:#d4a63c;--curtain-gold-light:#f6dc90;--curtain-backstage:#110206;--curtain-backstage-light:#2c0a11;--curtain-shade:#1002059e;--curtain-glow:#ffbc6e4d;--curtain-spot:#ffe4b038;--curtain-vignette:#0a010394;--sd-indigo-950:var(--brand-950);--sd-indigo-900:var(--brand-900);--sd-indigo-800:var(--brand-800);--sd-indigo-700:var(--brand-700);--sd-indigo-600:var(--brand-600);--sd-indigo-500:var(--brand-500);--sd-indigo-400:var(--brand-400);--sd-indigo-300:var(--brand-300);--sd-indigo-100:var(--brand-100);--sd-indigo-50:var(--brand-50);--green-950:var(--sd-indigo-950);--green-900:var(--sd-indigo-900);--green-800:var(--sd-indigo-600);--green-700:var(--sd-indigo-700);--teal-500:var(--sd-indigo-500);--teal-600:var(--sd-indigo-600);--teal-700:#4747a1;--teal-50:var(--sd-indigo-50);--teal-100:var(--sd-indigo-100);--teal-200:var(--sd-indigo-300);--bg:var(--brand-bg);--bg-light:var(--brand-bg-light);--bg-pale:var(--brand-bg-pale);--surface:var(--brand-surface);--surface-subtle:#fafbff;--white:#fff;--print-ink:#111;--search-highlight:#fef9c3;--wash-sky:#f0f6ff;--orange-pale:#fdf1e2;--warning-bg:#fff8e0;--warning-border:#ffe08a;--warning-strong:#8a6900;--purple:#843cf6;--purple-bg:#f3edfe;--cat-blue-bg:#eef3fb;--cat-blue-fg:#2c5fb3;--cat-green-bg:#eef7f0;--cat-green-fg:#2f7d4f;--cat-amber-bg:#fff7e8;--cat-amber-fg:#9a6700;--cat-red-bg:#fdeaea;--cat-red-fg:#b3261e;--cat-grey-bg:#eef1f0;--cat-grey-fg:#5b6b66;--sidebar:#fff;--sidebar-hover:var(--sd-indigo-600);--sidebar-fg:#6c7383;--sidebar-fg-strong:#404852;--sidebar-fg-dim:#8d9498;--primary:var(--sd-indigo-600);--accent:var(--sd-indigo-500);--accent-dark:var(--sd-indigo-600);--orange:var(--brand-warm);--orange-d:var(--brand-warm-dark);--text:var(--brand-text);--text-secondary:var(--brand-text-secondary);--text-muted:var(--brand-text-muted);--border:var(--brand-border);--border-strong:var(--brand-border-strong);--avatar-1:#4b49ac;--avatar-2:#7c5bc7;--avatar-3:#3c7d8a;--avatar-4:#a9702f;--avatar-5:#a8496b;--avatar-6:#5a6472;--card-visa:#1a1f71;--card-mastercard-a:#eb001b;--card-mastercard-b:#f79e1b;--card-amex:#2e77bc;--card-sepa:#0b5cab;--card-mark-fg:#fff;--warning:#ffc100;--danger:#ff4747;--danger-bg:#ffeded;--success:#57b657;--success-bg:#eaf6ea;--info:#248afd;--info-bg:#e9f3ff;--chart-1:#0072b2;--chart-2:#009e73;--chart-3:#e69f00;--chart-4:#cc79a7;--chart-5:#56b4e9;--shadow-xs:var(--brand-shadow-none);--shadow-sm:var(--brand-shadow-sm);--shadow-md:var(--brand-shadow-md);--shadow-lg:var(--brand-shadow-lg);--shadow-fab:0 2px 10px #0628212e;--stage-shadow-near:#0628216b;--stage-shadow-mid:#06282157;--stage-shadow-far:#06282142;--ring:0 0 0 3px var(--accent-a22);--r-sm:var(--brand-r-sm);--r-md:var(--brand-r-md);--r-lg:var(--brand-r-lg);--r-full:var(--brand-r-full);--ease:ease;--font-sans:var(--brand-font-sans);--font-mono:var(--brand-font-mono);--fs-xs:11px;--fs-sm:12.5px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:26px;--fs-3xl:34px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--accent-a15:#5e50f926;--accent-a22:#5e50f938;--primary-a08:#4b49ac14;--hover-surface:#1f1f1f14;--black-a06:#0000000f;--black-a04:#0000000a;--scrim:#00000080;--surface-a85:#ffffffd9;--topbar-bg:#fff;--shadow-topbar:0 5px 21px -5px #cdd1e1;--channel-whatsapp:#25d366;--channel-email:#5a6472;--channel-facebook:#1877f2;--channel-instagram:#e1306c;--channel-sms:var(--green-800);--channel-app:var(--teal-500);--channel-crankpal:var(--green-900)}:root[data-theme=dark]{--bg:#1b1a21;--bg-light:#232227;--bg-pale:#282f3a;--surface:#232227;--surface-subtle:#1f1e24;--sidebar:#232227;--sidebar-hover:var(--brand-600);--sidebar-fg:#fff;--sidebar-fg-strong:#fff;--sidebar-fg-dim:#8d9498;--primary:var(--brand-400);--accent:var(--brand-300);--accent-dark:var(--brand-600);--orange:#f2a654;--orange-d:#e08c33;--text:#e8e8f0;--text-secondary:#a9aab8;--text-muted:#8b8d9c;--border:#33323b;--border-strong:#45444f;--success:#6cc46c;--success-bg:#6cc46c1f;--danger:#ff6b6b;--danger-bg:#ff6b6b1f;--warning:#ffcf33;--warning-bg:#ffcf331f;--warning-border:#ffcf3359;--warning-strong:#ffde70;--info:#4fa0fd;--info-bg:#4fa0fd1f;--chart-3:#c08200;--chart-4:#c06b9b;--chart-5:#3b9fd6;--wash-sky:#1a2130;--orange-pale:#f2a65429;--purple:#a98bff;--purple-bg:#a98bff24;--sd-indigo-50:#8a88e81a;--sd-indigo-100:#8a88e82e;--sd-indigo-300:#8a88e857;--shadow-xs:none;--shadow-sm:0 1px 2px #0006, 0 2px 8px #0000004d;--shadow-md:0 2px 4px #0006, 0 8px 24px #00000073;--shadow-lg:0 4px 8px #00000080, 0 20px 48px #0009;--ring:0 0 0 3px #8a88e847;--accent-a15:#8a88e826;--accent-a22:#8a88e838;--primary-a08:#8a88e81a;--hover-surface:#ffffff0f;--black-a06:#ffffff0f;--black-a04:#ffffff0a;--scrim:#0009;--surface-a85:#232227d9;--topbar-bg:#232227;--shadow-topbar:0 5px 21px -5px #0000008c}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:var(--fs-md);font-feature-settings:"cv05", "cv11";line-height:1.5}::selection{background:#5e50f940}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::-webkit-scrollbar-track{background:0 0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.app-layout{flex:1;min-height:0;display:flex}.sidebar{background:var(--sidebar);width:235px;color:var(--sidebar-fg);height:100vh;box-shadow:var(--shadow-sm);z-index:2;flex-direction:column;padding:20px 0 16px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid var(--hover-surface);align-items:center;gap:10px;margin-bottom:12px;padding:4px 16px 20px;display:flex}.brand-logo{color:#fff;width:32px;height:32px;font-weight:800;font-size:var(--fs-lg);background:linear-gradient(230deg,#759bff,#843cf6);border-radius:11px;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #5e50f959}.brand-name{font-weight:700;font-size:var(--fs-md);letter-spacing:-.01em;color:inherit}.brand-sub{font-size:var(--fs-xs);color:currentColor;opacity:.55}.sidebar .brand-name{color:var(--sidebar-fg-strong)}.sidebar .brand-sub{color:var(--sidebar-fg-dim);opacity:1}.nav-scroll{flex:1;margin:0 -4px;padding:0 4px;overflow-y:auto}.nav-section{margin-top:4px}.nav-group-label{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--sidebar-fg-dim);padding:14px 16px 6px;font-weight:700}.nav-item{color:var(--sidebar-fg);font-size:var(--fs-md);text-align:start;cursor:pointer;width:100%;transition:background .25s var(--ease), color .25s var(--ease);background:0 0;border:0;align-items:center;gap:11px;padding:13px 31px 13px 16px;font-family:inherit;display:flex;position:relative}.nav-item:hover{background:var(--sidebar-hover);color:var(--white)}.nav-item.locked{opacity:.55}.nav-item.locked:hover{opacity:.85}.nav-lock{font-size:var(--fs-sm);opacity:.8;margin-inline-start:4px}.nav-item.active{background:var(--sidebar-hover);color:var(--white);font-weight:600}.nav-icon{opacity:.85;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.nav-icon svg{width:17px;height:17px}.nav-item.active .nav-icon{opacity:1}.sidebar-footer{border-top:1px solid var(--hover-surface);margin-top:auto;padding:16px 16px 0}.user-pill{align-items:center;gap:8px;padding:8px 0;display:flex}.avatar{background:var(--accent);width:32px;height:32px;color:var(--white);font-weight:600;font-size:var(--fs-sm);border-radius:50%;justify-content:center;align-items:center;display:flex}.user-name{font-size:var(--fs-sm);color:var(--sidebar-fg-strong);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.user-role{font-size:var(--fs-xs);color:var(--sidebar-fg-dim)}.user-settings-btn{background:var(--black-a06);width:30px;height:30px;color:var(--sidebar-fg);font-size:var(--fs-lg);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.user-settings-btn:hover{background:var(--accent);color:var(--white)}.main{padding:24px 30px max(28px, var(--assistant-safe-bottom,0px), var(--scan-safe-bottom,0px));flex:1;min-width:0;max-width:calc(100vw - 235px)}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.page-title{font-size:var(--fs-2xl);letter-spacing:-.022em;font-weight:800}.page-subtitle{font-size:var(--fs-md);color:var(--text-muted);margin-top:3px}.page-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow-xs);padding:20px}.card-title{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px;font-weight:700}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;display:grid}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);transition:border-color .15s var(--ease), box-shadow .15s var(--ease), transform .15s var(--ease);flex-direction:column;gap:2px;padding:18px 20px;display:flex;position:relative}a.kpi-card:hover,.kpi-card.clickable:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.kpi-label{font-size:var(--fs-xs);text-transform:uppercase;color:var(--text-muted);letter-spacing:.07em;font-weight:700}.kpi-value{font-size:var(--fs-2xl);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:4px;font-weight:800}.kpi-delta{font-size:var(--fs-sm);color:var(--success);margin-top:4px;font-weight:600}.kpi-delta.warn{color:var(--orange)}.kpi-delta.neutral{color:var(--text-muted);font-weight:500}.kpi-icon{top:16px;background:var(--bg-pale);width:34px;height:34px;color:var(--teal-700);border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;inset-inline-end:16px}.kpi-icon svg{width:17px;height:17px}.table{border-collapse:collapse;width:100%;font-size:var(--fs-md)}.table thead th{text-align:start;font-weight:700;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--bg-light);border-bottom:1px solid var(--border);z-index:1;padding:14px 22px;position:sticky;top:0}.table thead th:first-child{border-start-start-radius:var(--r-md);padding-inline-start:24px}.table thead th:last-child{border-start-end-radius:var(--r-md);padding-inline-end:24px}.table tbody td{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:18px 22px}.table tbody td:first-child{padding-inline-start:24px}.table tbody td:last-child{padding-inline-end:24px}.table tbody tr{transition:background .1s}.table tbody tr:hover{background:var(--bg-pale)}.table tbody tr.row-link{cursor:pointer}.table tbody tr:last-child td{border-bottom:none}.table .num{font-variant-numeric:tabular-nums}.badge{border-radius:var(--r-full);font-size:var(--fs-xs);letter-spacing:.02em;white-space:nowrap;align-items:center;gap:5px;padding:3px 9px;font-weight:600;display:inline-flex}.badge:before{content:"";opacity:.55;background:currentColor;border-radius:50%;width:5px;height:5px}.badge.no-dot:before,.badge.plan-plus:before,.badge.plan-premium:before,.badge.plan-base:before{display:none}.badge.plan-plus{color:#1e40af;background:#dbeafe}.badge.plan-premium{color:#92400e;background:#fef3c7}.badge.plan-base{color:#4b5563;background:#f3f4f6}.btn{font-weight:600;font-size:var(--fs-md);white-space:nowrap;transition:background .15s var(--ease), box-shadow .15s var(--ease), transform .1s var(--ease), border-color .15s var(--ease);border-radius:3px;justify-content:center;align-items:center;gap:7px;padding:14px 24px;line-height:1;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn svg{width:15px;height:15px}.btn-primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-xs)}.btn-primary:hover{background:var(--green-700)}.btn-accent{background:var(--accent);color:var(--accent-contrast,var(--white));box-shadow:var(--shadow-xs)}.btn-accent:hover{background:var(--accent-dark);color:var(--accent-contrast,var(--white))}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--bg-light);border-color:var(--text-muted)}.btn-danger-soft{background:var(--danger-bg);color:var(--danger)}.btn-danger-soft:hover{background:var(--danger);color:#fff}.btn-sm{font-size:var(--fs-sm);border-radius:3px;padding:8px 13px}.segmented{background:var(--bg-light);border:1px solid var(--border);scrollbar-width:none;border-radius:10px;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented button{font-size:var(--fs-sm);white-space:nowrap;color:var(--text-muted);transition:background .15s var(--ease), color .15s var(--ease), box-shadow .15s var(--ease);border-radius:7px;flex-shrink:0;align-items:center;gap:6px;padding:6px 13px;font-weight:600;display:inline-flex}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.segmented .count{font-size:var(--fs-xs);border-radius:var(--r-full);background:var(--black-a06);color:var(--text-muted);font-variant-numeric:tabular-nums;padding:1px 6px;font-weight:700}.segmented button.active .count{background:var(--bg-pale);color:var(--teal-700)}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar-search{width:320px;max-width:100%;position:relative}.toolbar-search .input{padding-inline-start:34px}.toolbar-search svg{inset-inline-start:11px;width:15px;height:15px;color:var(--text-muted);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.field{margin-bottom:14px}.field label{font-size:var(--fs-sm);color:var(--text-secondary);margin-bottom:6px;font-weight:600;display:block}.input,.select,.textarea{border:1px solid var(--border);width:100%;font-size:var(--fs-md);background:var(--surface);color:var(--text);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);border-radius:2px;padding:13px 14px}.input:hover,.select:hover,.textarea:hover{border-color:var(--text-muted)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.login-page{background:var(--surface);flex-direction:row-reverse;min-height:100vh;display:flex}.login-hero{color:var(--text);background:radial-gradient(ellipse 85% 65% at 90% 105%, var(--orange-pale) 0%, transparent 60%), radial-gradient(ellipse 70% 55% at 15% -5%, var(--wash-sky) 0%, transparent 65%), linear-gradient(180deg, var(--surface) 0%, var(--bg-pale) 100%);flex-direction:column;flex:1;padding:44px 56px 0;display:flex;position:relative;overflow:hidden}.login-hero h1{font-size:var(--fs-2xl);letter-spacing:-.025em;max-width:480px;margin-top:26px;font-weight:800;line-height:1.15}.login-hero p{color:var(--text-secondary);font-size:var(--fs-md);max-width:440px;margin-top:10px;line-height:1.6}.login-hero-points{flex-wrap:wrap;gap:8px;max-width:560px;margin-top:18px;display:flex}.login-hero-point{font-size:var(--fs-sm);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-full);box-shadow:var(--shadow-md);align-items:center;gap:8px;padding-block:6px;padding-inline:7px 12px;font-weight:600;display:inline-flex}.login-hero-point .pt-icon{border-radius:var(--r-full);background:var(--accent);width:22px;height:22px;color:var(--surface);flex-shrink:0;justify-content:center;align-items:center;display:flex}.login-hero-point .pt-icon svg{width:12px;height:12px}.login-panel{background:var(--surface);border-inline-end:1px solid var(--border);justify-content:center;align-items:center;width:480px;max-width:48vw;padding:40px;display:flex}.login-card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:var(--shadow-md);padding:40px}.login-panel .login-card{box-shadow:none;background:0 0;border:none;padding:0}.login-logo{align-items:center;gap:10px;margin-bottom:28px;display:flex}.login-error{background:var(--danger-bg);color:var(--danger);border-radius:var(--r-sm);font-size:var(--fs-sm);border:1px solid #f6c8ca;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;display:flex}@media (width<=860px){.login-hero{display:none}.login-panel{border-radius:0;width:100%;max-width:none}}.chart-bars{align-items:flex-end;gap:12px;height:200px;padding:24px 0 22px;display:flex}.bar{background:linear-gradient(180deg, var(--teal-500) 0%, var(--teal-600) 100%);min-height:4px;transition:filter .15s var(--ease), transform .15s var(--ease);transform-origin:bottom;border-radius:6px 6px 2px 2px;flex:1;position:relative}.bar.peak{background:linear-gradient(180deg, var(--orange) 0%, var(--orange-d) 100%)}.bar:hover{filter:brightness(1.08);transform:scaleY(1.02)}.bar-label{bottom:-20px;text-align:center;font-size:var(--fs-xs);color:var(--text-muted);position:absolute;inset-inline:0}.bar-value{top:-22px;text-align:center;font-size:var(--fs-xs);font-weight:600;position:absolute;inset-inline:0}.grid-2{grid-template-columns:1.6fr 1fr;align-items:start;gap:20px;display:grid}.leads-card .leads-list{max-height:172px;margin-inline-end:-8px;padding-inline-end:8px;overflow-y:auto}.list-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.list-row:last-child{border-bottom:none}.list-row-name{font-weight:600}.list-row-meta{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.list-row-action{color:var(--accent-dark);font-weight:600;font-size:var(--fs-sm)}.progress{background:var(--border);border-radius:4px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:4px;height:100%}.progress-fill.warn{background:var(--warning)}.progress-fill.danger{background:var(--orange)}.empty{text-align:center;color:var(--text-muted);padding:40px}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:56px 24px;display:flex}.empty-state-icon{background:var(--bg-pale);width:52px;height:52px;color:var(--teal-700);border-radius:14px;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.empty-state-icon svg{width:24px;height:24px}.empty-state-title{font-size:var(--fs-md);color:var(--text);font-weight:700}.empty-state-sub{font-size:var(--fs-sm);color:var(--text-muted);max-width:340px}.empty-state .btn{margin-top:12px}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}.skeleton{background:linear-gradient(90deg, var(--bg-light), var(--border), var(--bg-light));-webkit-user-select:none;user-select:none;background-size:200% 100%;border-radius:6px;animation:1.4s ease-in-out infinite skeleton-pulse;color:#0000!important}.skeleton-row{height:14px;margin:10px 0}.skeleton-kpi{border-radius:var(--r-md);height:92px}.skeleton-block{border-radius:var(--r-md);height:220px}.nav-badge{background:var(--orange);color:#fff;font-size:var(--fs-xs);text-align:center;border-radius:100px;min-width:18px;padding:2px 7px;font-weight:700}.nav-item.active .nav-badge{color:var(--orange);background:#fff}.badge-unread{background:var(--orange);color:#fff}.ch-dot{background:var(--text-muted);color:#fff;width:22px;height:22px;font-size:var(--fs-xs);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.inbox-shell{grid-template-columns:380px 1fr;gap:16px;height:calc(100vh - 240px);min-height:500px;display:grid}@media (width>=769px){.main:has(>.inbox-shell){flex-direction:column;height:100dvh;display:flex}.main:has(>.inbox-shell)>.inbox-shell{flex:1;height:auto}}.unread-pill{background:var(--orange);color:#fff;font-size:var(--fs-xs);border-radius:100px;margin-inline-start:auto;padding:1px 7px;font-weight:700}.bubble{max-width:70%;font-size:var(--fs-md);border-radius:14px;padding:10px 14px;line-height:1.4}.bubble.inbound{background:var(--bg-pale);border-end-start-radius:4px;align-self:flex-start}.bubble.outbound{background:var(--sd-indigo-100);color:var(--text);border-end-end-radius:4px;align-self:flex-end}.bubble-meta{font-size:var(--fs-xs);opacity:.65;margin-top:4px}.conv-compose{border-top:1px solid var(--border);align-items:flex-end;gap:10px;padding:14px;display:flex}.conv-compose .textarea{border:1px solid var(--border);font-size:var(--fs-md);resize:vertical;border-radius:10px;flex:1;padding:10px 12px}.info-card{background:linear-gradient(135deg, var(--teal-50) 0%, var(--wash-sky) 100%);border:1px solid var(--teal-200);border-radius:12px;flex-wrap:wrap;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.info-card-icon{background:var(--accent);width:36px;height:36px;color:var(--white);font-weight:700;font-size:var(--fs-lg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.route-list{padding:8px 12px}.route-stop{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;margin-bottom:0;padding:12px;display:flex}.route-stop.start{background:var(--teal-50);border-color:var(--teal-200)}.route-marker{background:var(--orange);color:#fff;width:32px;height:32px;font-weight:700;font-size:var(--fs-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.route-stop.start .route-marker{background:var(--primary);color:var(--white)}.route-leg{color:var(--accent-dark);align-items:center;gap:10px;padding:6px 0 6px 28px;font-weight:600;display:flex}.ctx-menu{z-index:1000;background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:240px;padding:6px;animation:.1s ctx-in;position:fixed;box-shadow:0 12px 40px #4b49ac2e}@keyframes ctx-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ctx-menu-item{text-align:start;width:100%;font-size:var(--fs-sm);background:0 0;border-radius:6px;padding:8px 10px;transition:background .1s;display:block}.ctx-menu-item:hover{background:var(--bg-light)}.ctx-menu-item.primary{color:var(--accent);font-weight:600}.ctx-menu-item.primary:hover{background:var(--teal-50)}.ctx-menu-item.danger{color:var(--danger)}.ctx-menu-item.danger:hover{background:#fee2e2}.ctx-week-btn{font-size:var(--fs-xs);border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:6px;padding:4px 8px}.ctx-week-btn:hover{background:var(--bg-light)}.ctx-week-btn.active{background:var(--accent);color:var(--white);border-color:var(--accent);font-weight:600}.tt-bar{background:var(--surface-subtle);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:14px 18px;display:flex}.tt-bar.running{background:linear-gradient(135deg, var(--teal-50) 0%, var(--wash-sky) 100%);border-color:var(--teal-200);animation:2s ease-in-out infinite pulse-bg}@keyframes pulse-bg{0%,to{box-shadow:0 0 #5e50f900}50%{box-shadow:0 0 0 6px #5e50f914}}.user-pick{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;transition:all .1s;display:flex}.user-pick:hover{border-color:var(--accent);background:var(--surface-subtle)}.user-pick.active{border-color:var(--accent);background:var(--teal-50)}.note-compose{background:var(--bg-light);border-radius:10px;margin-bottom:14px;padding:14px;position:relative}.note-compose .textarea{border:1px solid var(--border);width:100%;font-family:inherit;font-size:var(--fs-md);resize:vertical;background:var(--surface);border-radius:8px;padding:10px 12px}.note-compose .textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-a15);outline:none}.mention-picker{top:60px;background:var(--surface);border:1px solid var(--border);z-index:10;border-radius:10px;min-width:240px;max-height:240px;padding:4px;position:absolute;inset-inline-start:22px;overflow-y:auto;box-shadow:0 10px 30px #4b49ac26}.mention-pick{cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.mention-pick:hover{background:var(--bg-light)}.note-delete{color:var(--text-muted);width:22px;height:22px;font-size:var(--fs-lg);background:0 0;border-radius:50%}.note-delete:hover{background:var(--danger);color:#fff}.mention-inline{background:var(--teal-50);border-radius:4px;padding:1px 5px;font-weight:700}.mention-chip{font-size:var(--fs-xs);border-radius:100px;align-items:center;padding:2px 8px;font-weight:600;display:inline-flex}.week-nav{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;margin-bottom:16px;padding:10px 16px;display:flex}.shifts-day-col{border-inline-end:1px solid var(--border);cursor:pointer;transition:background .1s}.shifts-day-col:hover{background:#f7faf8}.shifts-day-col:last-child{border-inline-end:none}.shifts-day-col.today{background:var(--teal-50)}.shifts-day-col.today:hover{background:var(--teal-100)}.shifts-day-body{position:relative}.shift-block{cursor:grab;z-index:2;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:6px;padding:4px 6px;transition:filter .1s;position:absolute;inset-inline:2px;overflow:hidden}.shift-block:hover{filter:brightness(1.1);z-index:3}.shift-block.dragging{cursor:grabbing;z-index:10;filter:brightness(1.08);box-shadow:0 6px 20px #00000040}.shift-block.ghost{opacity:.7;border:2px dashed #ffffff80}.shift-resize-handle{cursor:ns-resize;z-index:3;background:0 0;height:8px;position:absolute;inset-inline:0}.shift-resize-handle.top{top:0}.shift-resize-handle.bottom{bottom:0}.shift-block:hover .shift-resize-handle:after{content:"";background:#fff9;border-radius:2px;height:2px;margin:3px 30%;display:block}.shifts-day-col.drag-target{background:var(--teal-50);outline:2px dashed var(--accent);outline-offset:-2px}.avatar-mini{color:#fff;width:16px;height:16px;font-size:var(--fs-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.chat-head{cursor:pointer;background:0 0;border:3px solid #fff;border-radius:50%;width:56px;height:56px;padding:0;transition:transform .15s,box-shadow .15s;animation:.32s cubic-bezier(.34,1.56,.64,1) chat-head-pop;position:relative;box-shadow:0 4px 14px #4b49ac33}@keyframes chat-head-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.chat-head:hover{transform:scale(1.06);box-shadow:0 8px 22px #4b49ac47}@keyframes badge-bounce{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}.chat-head-close{top:-6px;background:var(--text);color:#fff;width:20px;height:20px;font-size:var(--fs-sm);opacity:0;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-weight:700;transition:opacity .15s;display:flex;position:absolute;inset-inline-start:-6px}.chat-head:hover .chat-head-close{opacity:1}.chat-head-close:hover{background:var(--danger)}.chat-window{pointer-events:auto;background:var(--surface);border-radius:12px 12px 0 0;flex-direction:column;width:320px;height:420px;animation:.24s cubic-bezier(.4,0,.2,1) chat-window-rise;display:flex;position:absolute;bottom:0;overflow:hidden;box-shadow:0 -4px 24px #4b49ac38}@keyframes chat-window-rise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-window-status{font-size:var(--fs-xs);color:#ffffffb3;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-window-btn{color:#fff;width:28px;height:28px;font-size:var(--fs-lg);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-weight:700;transition:background .1s;display:flex}.chat-window-btn:hover{background:#ffffff26}.chat-window-compose{background:var(--surface);border-top:1px solid var(--border);gap:6px;padding:8px;display:flex}.chat-window-compose textarea{resize:none;font-size:var(--fs-sm);border:1px solid var(--border);border-radius:18px;outline:none;flex:1;min-height:36px;max-height:100px;padding:8px 12px;font-family:inherit}.chat-window-compose textarea:focus{border-color:var(--accent)}.chat-window-compose .btn{border-radius:50%;flex-shrink:0;width:36px;height:36px;padding:0}@media (width<=720px){.chat-window{width:calc(100vw - 24px);inset-inline-end:12px!important}}.toast-stack{bottom:max(24px, var(--assistant-safe-bottom,0px));z-index:9999;pointer-events:none;flex-direction:column-reverse;gap:10px;display:flex;position:fixed;inset-inline-end:24px}.toast{background:var(--surface);border:1px solid var(--border);pointer-events:auto;border-radius:12px;gap:12px;min-width:320px;max-width:380px;padding:12px 14px;animation:.28s cubic-bezier(.4,0,.2,1) toast-slide-in;display:flex;box-shadow:0 12px 36px #4b49ac2e}.toast.leaving{animation:.2s ease-in forwards toast-slide-out}@keyframes toast-slide-in{0%{opacity:0;transform:translate(110%)}to{opacity:1;transform:translate(0)}}@keyframes toast-slide-out{0%{opacity:1;max-height:200px;transform:translate(0)}to{opacity:0;max-height:0;padding-top:0;padding-bottom:0;transform:translate(110%)}}.toast.clickable{cursor:pointer;transition:transform .1s,box-shadow .1s}.toast.clickable:hover{transform:translateY(-2px);box-shadow:0 16px 44px #4b49ac38}.toast-chat{border-inline-start:4px solid var(--accent)}.toast-info{border-inline-start:4px solid #3b82f6}.toast-success{border-inline-start:4px solid var(--success)}.toast-error{border-inline-start:4px solid var(--danger)}.toast-avatar{color:#fff;width:40px;height:40px;font-weight:700;font-size:var(--fs-md);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-body{flex:1;min-width:0}.toast-title-row{align-items:baseline;gap:6px;display:flex}.toast-title{font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.toast-subtitle{font-size:var(--fs-xs);color:var(--accent-dark);background:var(--bg-pale);border-radius:100px;flex-shrink:0;padding:1px 7px;font-weight:600}.toast-close{width:22px;height:22px;font-size:var(--fs-lg);color:var(--text-muted);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-inline-start:auto;display:flex}.toast-close:hover{background:var(--bg-light);color:var(--text)}.toast-text{font-size:var(--fs-sm);color:var(--text);-webkit-line-clamp:3;word-wrap:break-word;-webkit-box-orient:vertical;margin-top:4px;line-height:1.4;display:-webkit-box;overflow:hidden}@media (width<=600px){.toast-stack{inset-inline:12px;bottom:12px}.has-scan-fab .toast-stack{bottom:max(84px, var(--assistant-safe-bottom,0px))}.toast{min-width:0;max-width:none}}.live-dot{vertical-align:middle;background:#ef4444;border-radius:50%;width:10px;height:10px;margin-inline-start:10px;animation:1.5s ease-in-out infinite live-pulse;display:inline-block}@keyframes live-pulse{0%,to{opacity:1;box-shadow:0 0 #ef444480}70%{opacity:.7;box-shadow:0 0 0 8px #ef444400}}@media (width>=801px){.main:has(>.chat-shell){flex-direction:column;height:100dvh;display:flex}.main:has(>.chat-shell)>.chat-shell{flex:1;height:auto}}.add-line{margin-top:6px}.add-line-row{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:10px;display:flex}.inv-dropdown{top:100%;z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:10px;max-height:280px;margin-top:4px;position:absolute;inset-inline:0;overflow-y:auto;box-shadow:0 10px 30px #4b49ac1f}.inv-item{cursor:pointer;text-align:start;border-bottom:1px solid var(--border);background:0 0;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.inv-item:hover{background:var(--bg-light)}.inv-item:last-child{border-bottom:none}.wo-detail-root .page-header.wo-sticky-header{z-index:40;background:var(--bg);border-bottom:1px solid var(--border);margin:0 -32px 22px;padding:12px 32px;position:sticky;top:64px}@media (width<=1100px){.wo-detail-root .page-header.wo-sticky-header{margin:0 -20px 18px;padding:10px 20px}}@media (width<=640px){.wo-detail-root .page-header.wo-sticky-header{border-bottom:0;margin:0 0 18px;padding:0;position:static}}.chatable-name{font:inherit;color:inherit;cursor:pointer;text-align:inherit;background:0 0;border:0;margin:0;padding:0;display:inline}.chatable-name:hover{color:var(--accent-dark);text-underline-offset:2px;text-decoration:underline}.chatable-name:hover b{color:inherit}.chatable-name:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.presence-av-btn{cursor:pointer;transition:transform .12s var(--ease);background:0 0;border:0;border-radius:50%;margin:0;padding:0;display:inline-flex}.presence-av-btn:hover{transform:translateY(-2px)}.presence-av-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.presence-link{color:#0f7a5f;font-weight:700}.presence-bar{background:var(--teal-50);border:1px solid var(--teal-200);width:fit-content;max-width:100%;animation:ctx-in .2s var(--ease);border-radius:100px;align-items:center;gap:10px;margin-top:10px;padding:5px 12px 5px 6px;display:flex}.presence-avatars{align-items:center;display:flex}.presence-avatars .presence-av{border:2px solid var(--surface);box-shadow:0 1px 3px #0000001f}.presence-avatars .presence-av-btn{margin-inline-start:-8px}.presence-avatars .presence-av-btn:first-child{margin-inline-start:0}.presence-avatars>.presence-av{margin-inline-start:-8px}.presence-avatars>.presence-av:first-child{margin-inline-start:0}.presence-more{height:26px;font-size:var(--fs-sm);color:var(--primary);background:var(--teal-100);border:2px solid var(--surface);border-radius:100px;justify-content:center;align-items:center;margin-inline-start:-6px;padding:0 8px;font-weight:700;display:inline-flex}.presence-label{font-size:var(--fs-sm);color:#0f7a5f;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.presence-label:before{content:"";background:var(--success);vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-inline-end:6px;animation:1.5s ease-in-out infinite wo-pulse;display:inline-block}.wo-detail-root.realtime-shake{animation:realtime-shake .5s var(--ease)}@keyframes realtime-shake{0%,to{transform:translate(0)}12%,36%,60%,84%{transform:translate(-7px)}24%,48%,72%{transform:translate(7px)}}@media (prefers-reduced-motion:reduce){.wo-detail-root.realtime-shake{animation:none}}.wo-timer-pill{background:linear-gradient(135deg, var(--teal-50) 0%, var(--teal-100) 100%);border:1px solid var(--teal-200);box-shadow:0 2px 8px var(--accent-a15);border-radius:100px;align-items:stretch;animation:2.5s ease-in-out infinite wo-glow;display:flex;overflow:hidden}@keyframes wo-glow{0%,to{box-shadow:0 2px 8px var(--accent-a15)}50%{box-shadow:0 4px 14px #5e50f94d}}.wo-timer-link{cursor:pointer;text-align:start;background:0 0;border-inline-end:1px solid #4b49ac1a;align-items:center;gap:10px;padding:6px 14px 6px 12px;display:flex}.wo-timer-link:hover{background:#fff6}.wo-timer-pulse{background:var(--success);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.5s ease-in-out infinite wo-pulse}@keyframes wo-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.wo-timer-info{min-width:0;line-height:1.2}.wo-timer-label{font-size:var(--fs-xs);color:var(--primary);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-weight:700;overflow:hidden}.wo-timer-meta{font-size:var(--fs-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;margin-top:1px;overflow:hidden}.wo-timer-clock{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--fs-lg);color:var(--primary);font-variant-numeric:tabular-nums;margin-inline-start:4px;font-weight:700}.wo-timer-stop{color:var(--danger);font-size:var(--fs-md);cursor:pointer;background:0 0;padding:0 14px;font-weight:700}.wo-timer-stop:hover{background:#ef44441a}.elapsed-box{background:linear-gradient(135deg, var(--teal-50) 0%, var(--wash-sky) 100%);border:1px solid var(--teal-200);text-align:center;border-radius:10px;padding:14px}.topbar{z-index:90;background:var(--topbar-bg);height:60px;box-shadow:var(--shadow-topbar);justify-content:space-between;align-items:center;gap:18px;padding-inline-end:38px;display:flex;position:sticky;top:0}.app-shell .sidebar{z-index:95;height:calc(100vh - 60px);top:60px}.topbar-search{flex:1;align-items:center;gap:10px;max-width:460px;display:flex}.topbar-actions{align-items:center;gap:12px;margin-inline-end:var(--timecard-safe-right,0px);display:flex}@media (width<=900px){.topbar{flex-flow:wrap;align-items:center;gap:10px;height:auto;padding:8px 14px}.topbar-search{flex:100%;order:2;max-width:none}.topbar-actions{justify-content:flex-end}}.timecard-widget{background:0 0;border:0;border-radius:0;align-items:center;gap:14px;padding:0;display:flex}.timecard-widget.compact .tc-label{font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.timecard-widget.compact .tc-state{font-size:var(--fs-sm);font-weight:600;line-height:1.2}.timecard-widget.compact .tc-hours{font-size:var(--fs-xs);color:var(--text-muted)}.tc-info{text-align:end}.tc-actions{gap:4px;display:flex}.tc-actions .btn-sm{font-size:var(--fs-sm);white-space:nowrap;padding:6px 12px}.page-header{margin-top:4px}@keyframes search-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.search-group{padding:4px 0}.search-group+.search-group{border-top:1px solid var(--border)}.settings-grid{flex-direction:column;gap:18px;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.settings-actions{background:var(--surface);border:1px solid var(--border);border-radius:12px;justify-content:flex-end;align-items:center;padding:16px;display:flex;position:sticky;bottom:0}.logo-preview{border:1px solid var(--border);background:var(--surface);border-radius:14px;justify-content:center;align-items:center;width:110px;height:110px;display:flex;overflow:hidden}.logo-preview img{object-fit:contain;width:100%;height:100%}.logo-placeholder{font-size:var(--fs-3xl);color:var(--accent);background:var(--primary);justify-content:center;align-items:center;width:100%;height:100%;font-weight:800;display:flex}.hours-grid{flex-direction:column;gap:4px;display:flex}.hours-day{border-bottom:1px dashed var(--border);padding:12px 0}.hours-day:last-child{border-bottom:none}.hours-day-head{align-items:center;gap:12px;display:flex}.hours-toggle{font-size:var(--fs-sm);color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;display:flex}.hours-toggle input{cursor:pointer}.hours-intervals{margin-top:10px;flex-direction:column;gap:6px;margin-inline-start:112px;display:flex}.hours-interval{background:var(--bg-light);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;display:flex}.hours-interval .input{max-width:110px;font-size:var(--fs-sm);padding:6px 8px}.interval-label{font-size:var(--fs-xs);color:var(--accent-dark);text-transform:uppercase;letter-spacing:.06em;min-width:80px;font-weight:700}.interval-remove{color:var(--text-muted);width:22px;height:22px;font-size:var(--fs-lg);background:0 0;border-radius:50%;margin-inline-start:auto;font-weight:700}.interval-remove:hover{background:var(--danger);color:#fff}.btn.btn-ghost.btn-sm{color:var(--accent-dark);font-size:var(--fs-sm);border:1px solid var(--accent);background:0 0;border-radius:100px;padding:4px 10px}.btn.btn-ghost.btn-sm:hover{background:var(--accent);color:#fff}@media (width<=600px){.hours-intervals{margin-inline-start:0}.hours-day-head{flex-wrap:wrap}}.integrations-list{flex-direction:column;gap:14px;display:flex}.integration-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.integration-head{align-items:center;gap:14px;padding:16px 20px;display:flex}.integration-body{background:var(--bg);border-top:1px solid var(--border);padding:16px 20px}.status-dot{border-radius:50%;width:8px;height:8px}.toggle{cursor:pointer;display:inline-block}.toggle input{display:none}.toggle-track{background:var(--border);border-radius:100px;width:36px;height:20px;transition:background .2s;display:inline-block;position:relative}.toggle-thumb{top:2px;background:#fff;border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;inset-inline-start:2px}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track .toggle-thumb{inset-inline-start:18px}.role-picker{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.role-card{border:1.5px solid var(--border);background:var(--surface);cursor:pointer;text-align:start;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;display:flex}.role-card:hover{border-color:var(--accent)}.role-card.active{border-color:var(--accent);background:var(--teal-50)}.role-card b{font-size:var(--fs-md)}.role-card span{font-size:var(--fs-xs);color:var(--text-muted)}.perms-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.perm-group{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px}.perm-group-title{font-size:var(--fs-xs);color:var(--accent-dark);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-weight:700}.perm-row{font-size:var(--fs-sm);align-items:center;gap:8px;padding:6px 0;display:flex}.perms-matrix tbody td:first-child{font-size:var(--fs-sm)}.perms-matrix .group-row{background:var(--surface-subtle);font-size:var(--fs-xs);color:var(--accent-dark);letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:8px 16px!important}.modal-backdrop{background:var(--scrim);z-index:1000;justify-content:center;align-items:center;padding:20px;animation:.15s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border-radius:14px;width:100%;max-width:540px;max-height:90vh;animation:.18s modal-in;overflow-y:auto;box-shadow:0 30px 80px #2a29604d}@keyframes modal-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:18px 24px;display:flex}.modal-close{background:var(--bg-light);width:32px;height:32px;font-size:var(--fs-xl);color:var(--text-muted);border-radius:50%}.modal-close:hover{background:var(--border);color:var(--text)}.modal-body{padding:20px 24px}.modal-foot{border-top:1px solid var(--border);background:var(--bg);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 24px;display:flex}.modal-summary{background:linear-gradient(135deg, var(--teal-50) 0%, var(--wash-sky) 100%);border:1px solid var(--teal-200);border-radius:10px;padding:14px}.channel-picker{flex-wrap:wrap;gap:6px;display:flex}.channel-pick{border:1px solid var(--border);background:var(--surface);font-size:var(--fs-sm);cursor:pointer;border-radius:100px;align-items:center;gap:6px;padding:8px 12px;font-weight:500;transition:all .15s;display:flex}.channel-pick:hover:not(:disabled){border-color:var(--accent);background:var(--surface-subtle)}.channel-pick.active{background:var(--primary);color:#fff;border-color:var(--primary)}.channel-pick:disabled{opacity:.45;cursor:not-allowed}.route-stop.draggable{cursor:grab;position:relative}.route-stop.draggable:active{cursor:grabbing}.route-stop.draggable .drag-handle{color:var(--text-muted);font-size:var(--fs-md);cursor:grab;letter-spacing:-2px;-webkit-user-select:none;user-select:none;padding:0 4px}.route-stop.dragging{opacity:.5;transform:scale(.98)}.route-stop.drop-target{outline:2px dashed var(--accent);outline-offset:2px;background:var(--teal-50)}.stop-actions{gap:4px;margin-inline-start:6px;display:flex}.stop-actions button{background:var(--bg-light);width:30px;height:30px;font-size:var(--fs-md);border-radius:8px;transition:background .15s}.stop-actions button:hover{background:var(--accent);color:#fff}.route-shell{grid-template-columns:1fr 1.2fr;gap:18px;display:grid}@media (width<=1100px){.route-shell{grid-template-columns:1fr}}.google-map{background:#e8f0ed;border-radius:10px;width:100%;height:480px;overflow:hidden}.map-error{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:10px;height:480px;padding:20px;overflow-y:auto}.map-error code{font-size:var(--fs-sm);background:#fee2bd;border-radius:4px;padding:1px 5px;font-family:ui-monospace,monospace}.map-loading{background:var(--surface-a85);color:var(--text-muted);font-size:var(--fs-md);border-radius:10px;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}.turn-by-turn{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.tbt-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f0f9f5 0%,#fff 100%);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.btn-nav{align-items:center;padding:8px 14px;display:inline-flex;background:var(--orange)!important;color:#fff!important}.btn-nav:hover{background:var(--orange-d)!important}.tbt-legs{max-height:460px;overflow-y:auto}.tbt-leg{border-bottom:1px solid var(--border)}.tbt-leg:last-child{border-bottom:none}.tbt-leg-head{cursor:pointer;text-align:start;background:0 0;align-items:center;gap:12px;width:100%;padding:12px 18px;transition:background .1s;display:flex}.tbt-leg-head:hover{background:var(--surface-subtle)}.tbt-leg.open .tbt-leg-head{background:var(--teal-50)}.tbt-leg-num{background:var(--orange);color:#fff;width:28px;height:28px;font-weight:700;font-size:var(--fs-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tbt-chev{color:var(--text-muted);font-size:var(--fs-md)}.tbt-steps{background:var(--surface-subtle);padding:4px 18px 16px 58px}.tbt-step{border-bottom:1px dashed var(--border);gap:12px;padding:10px 0;display:flex}.tbt-step:last-child{border-bottom:none}.tbt-step-icon{background:var(--primary);width:28px;height:28px;color:var(--white);font-size:var(--fs-lg);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.tbt-step-instr{font-size:var(--fs-sm);line-height:1.4}.tbt-step-instr b{color:var(--primary)}.report-paper{background:var(--surface);border:1px solid var(--border);border-radius:12px;max-width:720px;margin:0 auto;padding:36px 40px;box-shadow:0 4px 20px #4b49ac0f}.report-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.report-section{font-size:var(--fs-xs);color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;margin:24px 0 12px;font-weight:700}.report-row{border-bottom:1px dashed var(--border);font-size:var(--fs-md);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.report-row.report-total{border-bottom:none;border-top:2px solid var(--primary);font-size:var(--fs-lg);margin-top:8px;padding-top:12px}.bike-emoji{font-size:var(--fs-2xl);flex-shrink:0}.bike-hero{background:linear-gradient(135deg, var(--surface) 0%, var(--bg) 100%);border:1px solid var(--border);border-radius:16px;align-items:center;gap:32px;margin-bottom:24px;padding:24px 32px;display:flex}.bike-hero-left{flex-shrink:0}.bike-health-ring{width:130px;height:130px;position:relative}.bike-health-ring svg{width:100%;height:100%}.bike-health-num{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.bike-hero-stats{flex:none;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:16px 24px;display:grid}.bike-stat-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.bike-stat-value{font-size:var(--fs-2xl);margin-top:4px;font-weight:800}.bike-tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:18px;display:flex}.bike-tab{font-size:var(--fs-md);color:var(--text-muted);background:0 0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;font-weight:500}.bike-tab.active{color:var(--primary);border-bottom-color:var(--accent);font-weight:600}.bike-tab:hover{color:var(--text)}.components-groups{flex-direction:column;gap:18px;display:flex}.comp-group{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.comp-group-head{border-bottom:1px solid var(--border);background:var(--surface-subtle);align-items:center;gap:12px;padding:14px 18px;display:flex}.comp-group-icon{color:#fff;width:36px;height:36px;font-size:var(--fs-xl);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:flex}.comp-group-health{color:#fff;font-size:var(--fs-sm);border-radius:100px;padding:4px 12px;font-weight:700}.comp-group-body{flex-direction:column;gap:8px;padding:10px;display:flex}.comp-group .component-row{border:1px solid var(--border);background:var(--surface)}.component-row{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;padding:14px 18px;display:flex}.comp-cat-badge{background:var(--bg-pale);color:var(--primary);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;text-align:center;border-radius:8px;flex-shrink:0;width:150px;padding:6px 10px;font-weight:700}.timeline{padding-inline-start:28px;position:relative}.timeline:before{content:"";top:8px;bottom:8px;background:var(--border);width:2px;position:absolute;inset-inline-start:10px}.timeline-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:14px 18px;position:relative}.timeline-marker{inset-inline-start:-23px;width:14px;height:14px;box-shadow:0 0 0 1px var(--border);border:3px solid #fff;border-radius:50%;position:absolute;top:22px}@media (width<=900px){.bike-hero{flex-direction:column;gap:20px;padding:20px}.bike-hero-stats{grid-template-columns:repeat(3,1fr);width:100%}}@media (width<=1180px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}}@media (width<=1024px){.sidebar{width:68px;padding:16px 10px}.sidebar .brand-name,.sidebar .brand-sub,.sidebar .nav-item span:not(.nav-icon):not(.nav-badge),.sidebar .nav-group-label,.sidebar .user-name,.sidebar .user-role,.sidebar .sidebar-footer .btn{display:none}.sidebar-brand{justify-content:center;padding:0 0 16px}.nav-item{justify-content:center;padding:10px}.nav-badge{top:2px;font-size:var(--fs-xs);padding:1px 5px;position:absolute;inset-inline-end:2px}.user-pill{justify-content:center;padding:4px}.user-settings-btn{display:none}.main{max-width:calc(100vw - 68px);padding:0 20px max(24px, var(--assistant-safe-bottom,0px), var(--scan-safe-bottom,0px))}}@media (width<=640px){.kpi-grid{grid-template-columns:1fr}.page-title{font-size:var(--fs-xl)}.inbox-shell{grid-template-columns:1fr}}.card.flush{padding:0;overflow:hidden}.avatar{box-shadow:inset 0 0 0 1px var(--black-a06)}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);background:var(--text);color:#fff;font-size:var(--fs-xs);white-space:nowrap;z-index:500;pointer-events:none;border-radius:6px;padding:4px 8px;font-weight:500;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.cal-week{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);grid-template-columns:52px repeat(7,1fr);display:grid;overflow:hidden}.cal-head{text-align:center;font-size:var(--fs-sm);border-bottom:1px solid var(--border);border-inline-start:1px solid var(--border);background:var(--bg-light);padding:10px 6px;font-weight:700}.cal-head.today{background:var(--bg-pale);color:var(--teal-700)}.cal-head .cal-day-num{font-size:var(--fs-lg);letter-spacing:-.02em;font-weight:800;display:block}.cal-hour-label{font-size:var(--fs-xs);color:var(--text-muted);text-align:end;border-top:1px dashed var(--border);font-variant-numeric:tabular-nums;height:48px;padding:2px 6px 0 0}.cal-col{border-inline-start:1px solid var(--border);position:relative}.cal-col.today{background:var(--bg-pale)}.cal-cell{border-top:1px dashed var(--border);height:48px}.cal-event{font-size:var(--fs-xs);line-height:var(--cal-line-h,14px);cursor:default;box-shadow:var(--shadow-xs);border-inline-start:3px solid;border-radius:7px;padding:2px 7px;position:absolute;overflow:hidden}.cal-event b,.cal-event .cal-ev-meta{font-size:var(--fs-xs);height:var(--cal-line-h,14px);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.cal-event .cal-ev-meta{opacity:.8}.cal-event.st-requested{background:var(--info-bg);border-color:var(--info);color:#1d4e94}.cal-event.st-confirmed{background:var(--success-bg);border-color:var(--success);color:#0c5e3f}.cal-event.st-in_progress{border-color:var(--warning);color:#7c4a03;background:#fef3c7}.cal-event.st-completed{background:var(--bg-light);border-color:var(--border-strong);color:var(--text-muted)}.cal-event.onsite{outline:1.5px dashed var(--orange);outline-offset:-1.5px}.pos-shell{grid-template-columns:1.4fr 1fr;align-items:start;gap:18px;display:grid}@media (width<=1000px){.pos-shell{grid-template-columns:1fr}}.pos-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);text-align:start;align-items:center;gap:12px;width:100%;padding:11px 14px;transition:border-color .12s,background .12s;display:flex}.pos-item:hover:not(:disabled){border-color:var(--accent);background:var(--bg-pale)}.pos-item:disabled{opacity:.45;cursor:not-allowed}.pos-cart-row{border-bottom:1px dashed var(--border);align-items:center;gap:10px;padding:10px 0;display:flex}.pos-qty{border:1px solid var(--border);border-radius:var(--r-full);align-items:center;gap:2px;padding:2px;display:inline-flex}.pos-qty button{width:24px;height:24px;color:var(--text-secondary);border-radius:50%;font-weight:700}.pos-qty button:hover{background:var(--bg-pale);color:var(--teal-700)}.pos-total-row{font-size:var(--fs-md);justify-content:space-between;align-items:baseline;padding-top:14px;display:flex}.pos-total-row b{font-size:var(--fs-2xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.pay-methods{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;display:grid}.pay-method{border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--surface);font-size:var(--fs-sm);text-align:center;padding:10px;font-weight:600;transition:all .12s}.pay-method:hover{border-color:var(--accent)}.pay-method.active{border-color:var(--accent);background:var(--bg-pale);color:var(--teal-700)}.invoice-paper{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);max-width:800px;box-shadow:var(--shadow-sm);margin:0 auto;padding:44px 48px}.invoice-head{justify-content:space-between;gap:24px;margin-bottom:32px;display:flex}.invoice-num{font-size:var(--fs-2xl);letter-spacing:-.02em;font-weight:800}.invoice-parties{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px;display:grid}.invoice-party-label{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-weight:700}.invoice-table{border-collapse:collapse;width:100%;font-size:var(--fs-md)}.invoice-table th{text-align:start;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);border-bottom:2px solid var(--text);padding:8px 0}.invoice-table td{border-bottom:1px solid var(--border);padding:10px 0}.invoice-totals{margin-inline-start:auto;width:280px;margin-top:18px}.invoice-totals .row{font-size:var(--fs-md);justify-content:space-between;padding:6px 0;display:flex}.invoice-totals .row.grand{border-top:2px solid var(--text);font-size:var(--fs-lg);margin-top:6px;padding-top:10px;font-weight:800}@media print{.sidebar,.topbar,.page-actions,.no-print{display:none!important}.main{max-width:100%;padding:0}.invoice-paper{box-shadow:none;border:none;padding:0}body{background:#fff}}.reminder-reasons{flex-wrap:wrap;gap:5px;margin-top:5px;display:flex}.reason-chip{font-size:var(--fs-xs);border-radius:var(--r-full);background:var(--orange-pale);color:var(--orange-d);padding:2px 9px;font-weight:600}.cal-capacity{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px;font-weight:600;display:block}.cal-event.dragging{opacity:.45}.qr-label{border:2px dashed var(--border-strong);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:18px;display:flex}@media print{.modal-backdrop{background:#fff;padding:0;position:static}.modal{box-shadow:none;max-width:none}.modal-head,.modal-foot{display:none}.qr-label{border-style:solid}}.qr-inline-trigger{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:9px;flex-direction:column;align-items:center;gap:2px;padding:4px 5px;line-height:1;transition:border-color .15s,box-shadow .15s;display:inline-flex}.qr-inline-trigger:hover{border-color:var(--border-strong);box-shadow:0 1px 6px #00000014}.qr-inline-trigger img,.qr-inline-trigger .qr-inline-ph{border-radius:3px;width:50px;height:50px;display:block}.qr-inline-trigger .qr-inline-ph{background:var(--bg-light)}.qr-inline-cap{font-size:var(--fs-xs);letter-spacing:.02em;color:var(--text-muted);font-weight:600}.qr-btn-mobile{display:none}@media (width<=640px){.qr-inline-trigger{display:none}.qr-btn-mobile{display:inline-flex}}.scan-fab{inset-inline-start:18px;z-index:1200;background:var(--accent);color:#fff;width:56px;height:56px;font-size:var(--fs-2xl);cursor:pointer;border:0;border-radius:50%;line-height:1;position:fixed;bottom:18px;box-shadow:0 6px 20px #00000047}.scan-backdrop{z-index:1500;background:#06282199;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.scan-sheet{background:var(--surface);border-radius:18px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 24px 64px #0006}.scan-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;font-weight:700;display:flex}.scan-video-wrap{aspect-ratio:4/3;background:#000;position:relative}.scan-video{object-fit:cover;width:100%;height:100%;display:block}.scan-reticle{pointer-events:none;border:3px solid #ffffffe6;border-radius:14px;position:absolute;inset:18% 14%;box-shadow:0 0 0 100vmax #0000002e}.scan-hint{font-size:var(--fs-sm);color:var(--text-muted);text-align:center;padding:12px 16px}.scan-error{font-size:var(--fs-md);color:var(--danger);text-align:center;padding:24px 18px}@media (width<=640px){.table-cards thead{display:none}.table-cards,.table-cards tbody,.table-cards tr,.table-cards td{width:auto;display:block}.table-cards tbody{padding:10px}.table-cards tr{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-bottom:10px;padding:10px 14px}.table-cards td{white-space:normal!important;text-align:start!important;border:0!important;padding:4px 0!important}.table-cards td:before{content:attr(data-label);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1px;font-weight:700;display:block}.table-cards td.num:first-child{margin-bottom:4px;border-bottom:1px solid var(--border)!important;text-align:start!important;padding-bottom:8px!important}.table-cards td.num:first-child:before{display:none}.table-cards td.num:first-child b{font-size:var(--fs-lg)}}.add-line-row{background:var(--bg-light);border-radius:10px;align-items:flex-start;gap:8px;padding:10px 12px;display:flex;position:relative}.add-line-row .alr-kind{flex-shrink:0;width:146px}.add-line-row .alr-main{flex:1;min-width:0}.add-line-row .alr-qty{flex-shrink:0;width:72px}.add-line-row .alr-price{flex-shrink:0;width:96px}.add-line-row .alr-del{flex-shrink:0}@media (width<=640px){.add-line-row{flex-wrap:wrap}.add-line-row .alr-kind{flex:auto;order:1;width:auto}.add-line-row .alr-del{order:2}.add-line-row .alr-main{flex:100%;order:3}.add-line-row .alr-qty{flex:0 0 68px;order:4;width:auto}.add-line-row .alr-price{flex:auto;order:5;width:auto}}.slot-picker{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-light);padding:12px}.slot-days{grid-template-columns:28px repeat(7,1fr) 28px;align-items:stretch;gap:5px;margin-bottom:10px;display:grid}.slot-nav{background:var(--surface);border:1px solid var(--border);font-size:var(--fs-md);color:var(--text-secondary);border-radius:8px;font-weight:700}.slot-nav:hover{background:var(--bg-pale);color:var(--teal-700)}.slot-day{background:var(--surface);border:1.5px solid var(--border);border-radius:9px;flex-direction:column;align-items:center;gap:1px;padding:6px 2px;transition:border-color .12s,background .12s;display:flex}.slot-day:hover:not(.active){border-color:var(--border-strong)}.slot-day.active{border-color:var(--accent);background:var(--bg-pale)}.slot-day.closed{opacity:.55}.slot-day-free{font-size:var(--fs-xs);color:var(--teal-700);font-weight:600}.slot-day.closed .slot-day-free{color:var(--text-muted)}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:5px;max-height:200px;padding:2px;display:grid;overflow-y:auto}.slot-btn{background:var(--surface);border:1.5px solid var(--border);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;border-radius:8px;padding:7px 4px 16px;font-weight:700;transition:border-color .1s,background .1s,transform .1s;position:relative}.slot-btn:hover:not(:disabled):not(.active){border-color:var(--accent);transform:translateY(-1px)}.slot-btn.active{border-color:var(--accent);background:var(--accent);color:var(--white)}.slot-btn.limited:not(.active){background:var(--warning-bg);border-color:#f6c089}.slot-btn.full,.slot-btn:disabled{background:var(--bg-light);color:var(--text-muted);border-color:var(--border);cursor:not-allowed;opacity:.6;padding-bottom:7px;text-decoration:line-through}.slot-avail{bottom:3px;font-size:var(--fs-xs);color:var(--text-muted);font-weight:600;position:absolute;inset-inline:0}.slot-btn.active .slot-avail{color:var(--white)}.slot-btn.limited:not(.active) .slot-avail{color:var(--orange-d)}.slot-empty{text-align:center;font-size:var(--fs-sm);color:var(--text-muted);padding:24px}.slot-legend{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:14px;margin-top:10px;display:flex}.slot-dot{vertical-align:-1px;border-radius:3px;width:9px;height:9px;margin-inline-end:4px;display:inline-block}.slot-dot.free{background:var(--surface);border:1.5px solid var(--accent)}.slot-dot.limited{background:var(--warning-bg);border:1.5px solid #f6c089}.slot-dot.full{background:var(--border)}.wizard-steps{gap:6px;margin-bottom:16px;display:flex}.wizard-step{font-size:var(--fs-sm);color:var(--text-muted);background:var(--bg-light);border:1px solid var(--border);border-radius:8px;flex:1;align-items:center;gap:7px;padding:7px 10px;font-weight:600;display:flex}.wizard-step.active{background:var(--bg-pale);border-color:var(--accent);color:var(--teal-700)}.wizard-step.done{color:var(--success)}.wizard-step-num{background:var(--border);width:18px;height:18px;font-size:var(--fs-xs);color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.wizard-step.active .wizard-step-num{background:var(--accent);color:var(--white)}.wizard-step.done .wizard-step-num{background:var(--success);color:#fff}.doc-sides{grid-template-columns:1fr 1fr;gap:10px;display:grid}.doc-side-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:5px;font-weight:700}.doc-side-img{object-fit:cover;border:1px solid var(--border);background:var(--surface);border-radius:10px;width:100%;height:120px}.doc-side-drop{border:1.5px dashed var(--border-strong);background:var(--surface);cursor:pointer;height:120px;font-size:var(--fs-sm);color:var(--text-secondary);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-weight:600;transition:border-color .12s,background .12s;display:flex}.doc-side-drop:hover{border-color:var(--accent);background:var(--bg-pale)}.terms-box{background:var(--bg-light);border:1px solid var(--border);max-height:160px;font-size:var(--fs-sm);color:var(--text-secondary);border-radius:10px;padding:12px 14px;line-height:1.55;overflow-y:auto}.terms-box ol{flex-direction:column;gap:6px;margin:0;padding-inline-start:18px;display:flex}@media print{.loaner-contract .terms-box{max-height:none;overflow:visible}}.avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar-upload{cursor:pointer;flex-shrink:0;position:relative;overflow:hidden}.avatar-upload:after{content:"✎";background:var(--scrim);color:#fff;font-size:var(--fs-sm);opacity:0;border-radius:50%;justify-content:center;align-items:center;transition:opacity .12s;display:flex;position:absolute;inset:0}.avatar-upload:hover:after{opacity:1}.avatar-mini img,.toast-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.tl-type{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--r-full);vertical-align:1px;margin-inline-start:7px;padding:1px 7px;font-weight:700}.tl-note{background:var(--bg-pale);color:var(--teal-700)}.tl-session{background:var(--info-bg);color:var(--info)}.tl-assign{color:#92400e;background:#fef3c7}.bike-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:inherit;box-shadow:var(--shadow-xs);transition:border-color .15s var(--ease), box-shadow .15s var(--ease), transform .15s var(--ease);align-items:center;gap:26px;padding:14px 22px;display:flex}.bike-row:hover{border-color:var(--teal-200);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.bike-row-id{align-items:center;gap:12px;min-width:0;display:flex}.bike-row-cell{flex-shrink:0;min-width:0}.bike-row-cell.num-cell{text-align:start;min-width:76px}.bike-row-cell.num-cell b{font-size:var(--fs-md)}.bike-row-label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:3px;font-weight:700}.bike-row-go{color:var(--text-muted);font-size:var(--fs-xl);flex-shrink:0;margin-inline-start:auto}@media (width<=980px){.bike-row{flex-wrap:wrap;gap:14px}.bike-row-id{flex-basis:100%}.bike-row-go{display:none}}.timer-dot{background:var(--success);border-radius:50%;width:7px;height:7px;margin-inline-end:5px;animation:1.5s ease-in-out infinite wo-pulse;display:inline-block}.badge .timer-dot{margin-inline-end:2px}.shift-create-ghost{pointer-events:none;color:var(--green-950);border:2px dashed var(--teal-600)!important;background:#5e50f959!important}.shifts-day-body{cursor:crosshair}.shifts-day-body .shift-block{cursor:grab}.worked-overlay{pointer-events:none;z-index:1;background:#5e50f933;border-inline-start:3px solid #1ea48a8c;border-radius:4px;position:absolute;inset-inline:1px}.shifts-day-body .shift-block{inset-inline:2px calc(42% + 3px)}.worked-overlay{inset-inline:calc(58% + 2px) 2px}.wo-session-block{z-index:2;background:var(--green-800);box-shadow:var(--shadow-xs);border-radius:5px;justify-content:center;align-items:center;transition:filter .1s,transform .1s;display:flex;position:absolute;inset-inline:calc(58% + 4px) 4px;overflow:hidden}.wo-session-block:hover{filter:brightness(1.25);z-index:3;transform:scale(1.03)}.wo-session-block.running{outline:2px solid var(--success);outline-offset:1px;animation:1.5s ease-in-out infinite wo-pulse}.wo-session-label{font-size:var(--fs-xs);color:#fff;font-weight:800;font-family:var(--font-mono);letter-spacing:.02em}.shifts-day-body .shift-block{inset-inline-end:2px}.shifts-day-body.has-actual .shift-block{inset-inline-end:calc(42% + 3px)}.shift-create-ghost.conflict{border-color:var(--danger)!important;background:#e5484d4d!important}.shifts-day-body .shift-block,.shifts-day-body.has-actual .shift-block{z-index:1;inset-inline-end:2px}.shifts-day-body .shift-block:hover{z-index:4}.shifts-day-body .shift-block.dragging{z-index:10}.worked-overlay{z-index:2;border-inline-start:3px solid var(--scrim);background:repeating-linear-gradient(45deg,#2a29604d 0 4px,#2a296014 4px 8px);border-radius:4px;width:40%;inset-inline:auto 2px}.wo-session-block{z-index:5;cursor:pointer;width:calc(40% - 6px);inset-inline:auto 4px}.wo-session-block:hover{z-index:6}.tl-msg{background:var(--info-bg);color:var(--info)}.portal-shell{max-width:860px;min-height:100vh;margin:0 auto;padding:0 16px 48px}.portal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:14px;padding:16px 0;display:flex}.portal-tabs{flex-wrap:wrap;gap:4px;margin-bottom:18px;padding-bottom:2px;display:flex}.portal-tab{border-radius:var(--r-full);font-size:var(--fs-sm);color:var(--text-secondary);background:var(--bg-light);border:1px solid var(--border);white-space:nowrap;padding:8px 14px;font-weight:600;transition:all .12s}.portal-tab:hover{border-color:var(--border-strong)}.portal-tab.active{background:var(--green-900);color:#fff;border-color:var(--green-900)}.portal-main{display:block}@media (width<=640px){.portal-header{flex-wrap:wrap;gap:10px}}.msg-attachments{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.msg-attachment{background:var(--surface-a85);border:1px solid var(--border);max-width:100%;font-size:var(--fs-sm);color:var(--text);box-shadow:0 1px 2px var(--black-a06);border-radius:8px;align-items:center;gap:6px;padding:5px 10px;font-weight:600;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}a.msg-attachment:hover{background:var(--surface);border-color:var(--accent)}.msg-attachment-icon{font-size:var(--fs-sm);flex-shrink:0}.msg-attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.msg-attachment-dl{color:var(--text-muted);flex-shrink:0;font-weight:800}.bubble .msg-attachments{margin-top:6px}.portal-staff-foot{justify-content:center;padding:30px 0 10px;display:flex}.portal-staff-link{border:1px solid var(--border);background:var(--surface);font-size:var(--fs-sm);color:var(--text-muted);opacity:.5;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;text-decoration:none;transition:color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s;display:inline-flex;box-shadow:0 1px 2px #2a29600d}.portal-staff-link b{color:var(--text-secondary);font-weight:700;transition:color .15s}.portal-staff-link-icon{font-size:var(--fs-sm);filter:grayscale(35%);opacity:.8}.portal-staff-link-arrow{opacity:.45;font-weight:800;transition:transform .15s,opacity .15s}.portal-staff-link:hover{opacity:1;color:var(--text-secondary);border-color:var(--accent);transform:translateY(-1px);box-shadow:0 3px 10px #2a29601a}.portal-staff-link:hover b{color:var(--green-950)}.portal-staff-link:hover .portal-staff-link-arrow{opacity:1;transform:translate(2px)}.mkt{background:var(--bg);min-height:100vh;color:var(--text);overflow-y:auto}.pw-feedback{background:var(--bg-subtle,#f7f8f7);border:1px solid var(--border);border-radius:10px;margin:2px 0 12px;padding:10px 12px}.pw-bar-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.pw-bar{flex:1;gap:4px;display:flex}.pw-bar-seg{background:#e3e6e3;border-radius:999px;flex:1;height:5px;transition:background .2s}.pw-bar-seg.lvl1{background:#d9554f}.pw-bar-seg.lvl2{background:#e0962f}.pw-bar-seg.lvl3{background:#8db83a}.pw-bar-seg.lvl4{background:var(--accent)}.pw-bar-label{font-size:var(--fs-xs);text-align:end;min-width:52px;color:var(--text-muted);font-weight:800}.pw-bar-label.lvl1{color:#d9554f}.pw-bar-label.lvl2{color:#b97a16}.pw-bar-label.lvl3{color:#6f9426}.pw-bar-label.lvl4{color:var(--success)}.pw-reqs{grid-template-columns:1fr 1fr;gap:3px 14px;margin:0;padding:0;list-style:none;display:grid}.pw-req{font-size:var(--fs-sm);color:var(--text-secondary);align-items:baseline;gap:6px;display:flex}.pw-req i{color:var(--text-muted);font-style:normal;font-size:var(--fs-xs)}.pw-req-dot{flex-shrink:0;width:12px;font-weight:800}.pw-req.ok,.pw-req.ok .pw-req-dot{color:var(--success)}.pw-req.ko{color:#b3433e}.pw-req.ko .pw-req-dot{color:#d9554f}.pw-req.soft,.pw-req.soft .pw-req-dot{color:var(--text-muted)}@media (width<=480px){.pw-reqs{grid-template-columns:1fr}}.login-link-btn{cursor:pointer;width:100%;font-size:var(--fs-sm);color:var(--text-muted);text-align:center;background:0 0;border:none;margin-top:10px;padding:6px;font-weight:600;display:block}.login-link-btn:hover{color:var(--green-950);text-decoration:underline}.portal-ok-box{background:var(--success-bg);font-size:var(--fs-sm);color:var(--success);border:1px solid #bfe3d2;border-radius:10px;padding:11px 13px;line-height:1.5}.login-divider{color:var(--text-muted);font-size:var(--fs-xs);align-items:center;gap:10px;margin:14px 0 12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.card-flush{padding:0;overflow:hidden}.card-flush .table{margin:0}body:has(.portal-shell){background:linear-gradient(180deg, #dcefff 0%, #eef7ff 22%, var(--bg) 60%)}.portal-login.login-page{background:linear-gradient(#aee2ff 0%,#d4f0ff 45%,#fdf3e6 100%)}.portal-header{border-bottom:none}.portal-tab{background:#ffffffb8}.portal-tab.active{background:var(--teal-500);border-color:var(--teal-500);color:var(--white)}.portal-shell .card{border-color:#0e3a541a;border-radius:18px;box-shadow:0 8px 22px #0e3a540f}.portal-logo-mark svg{width:100%;height:100%;display:block}.portal-shell{font-size:var(--fs-lg)}.portal-shell .card-title{font-size:var(--fs-xl)}.portal-shell .card,.portal-shell .card p,.portal-shell .card li,.portal-shell .card td,.portal-shell .card label{font-size:var(--fs-lg);line-height:1.6}.portal-shell h1{font-size:var(--fs-2xl)}.portal-shell h2,.portal-shell h3{font-size:var(--fs-xl)}.portal-shell .portal-tab{font-size:var(--fs-md);padding:10px 18px}.portal-shell .btn{font-size:var(--fs-md);padding:11px 18px}.portal-shell .portal-main .card{border-top:4px solid var(--teal-500)}.portal-shell .portal-main .card:nth-of-type(3n+2){border-top-color:#4cc9f0}.portal-shell .portal-main .card:nth-of-type(3n){border-top-color:#f7934f}.portal-login .login-card{font-size:var(--fs-lg)}.portal-login .login-card .input{font-size:var(--fs-lg);padding:12px 14px}.portal-login .login-card label{font-size:var(--fs-md)}.portal-login .login-card .btn{font-size:var(--fs-lg);padding:12px}.nav-hamburger{border:1px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text);font-size:var(--fs-xl);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;line-height:1;display:none}.sidebar-overlay{display:none}@media (width>=641px) and (width<=1024px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}[data-tip]:focus-visible:after{content:attr(data-tip);background:var(--text);color:#fff;font-size:var(--fs-xs);white-space:nowrap;z-index:500;pointer-events:none;border-radius:6px;padding:4px 8px;font-weight:500;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}@media (width<=768px){.nav-hamburger{margin:0;display:inline-flex}.sidebar,.app-shell .sidebar{top:0;inset-inline-start:0;z-index:1400;width:270px;height:auto;padding:16px 14px;transition:transform .25s;position:fixed;bottom:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 20px 60px #06282159}.sidebar.open{transform:translate(0)}.sidebar .brand-name,.sidebar .brand-sub,.sidebar .nav-group-label,.sidebar .user-name,.sidebar .user-role{display:block}.sidebar .nav-item span:not(.nav-icon):not(.nav-badge){display:inline}.sidebar .sidebar-footer .btn{display:inline-flex}.sidebar .user-pill{justify-content:flex-start;padding:6px}.sidebar .user-settings-btn{display:inline-flex}.sidebar-brand{justify-content:flex-start;padding:0 0 16px}.sidebar-overlay{z-index:1390;background:#06282173;display:block;position:fixed;inset:0}.main{max-width:100vw;padding:0 14px max(24px, var(--assistant-safe-bottom,0px), var(--scan-safe-bottom,0px))}.card{-webkit-overflow-scrolling:touch;overflow-x:auto}.card.flush{overflow:auto visible}.input,.select,.textarea{font-size:var(--fs-lg)}.nav-item{padding:12px}.btn{min-height:44px}.btn.btn-sm{min-height:40px}.table tbody td,.table thead th{padding-top:14px;padding-bottom:14px}.topbar{padding-top:max(8px, env(safe-area-inset-top))}.sidebar{padding-bottom:env(safe-area-inset-bottom)}.main{padding-left:calc(14px + env(safe-area-inset-left));padding-right:calc(14px + env(safe-area-inset-right))}.cal-week{-webkit-overflow-scrolling:touch;grid-template-columns:46px repeat(7,minmax(72px,1fr));overflow-x:auto}.inbox-shell,.chat-shell{height:auto;min-height:0}.page-title{font-size:var(--fs-xl)}}@media (pointer:coarse){.modal-close,.stop-actions button,.pos-qty button,.user-settings-btn{min-width:44px;min-height:44px}}@media (width<=480px){.grid-2,.modal .row{grid-template-columns:1fr}}.fitting-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.fitting-cell{background:var(--bg-light);border:1px solid var(--border);border-radius:10px;padding:8px 11px}.fitting-cell-label{font-size:var(--fs-xs);color:var(--text-muted)}.fitting-cell-value{font-size:var(--fs-md);margin-top:2px;font-weight:700}@media (width<=480px){.fitting-grid{grid-template-columns:repeat(2,1fr)}}.legal-doc-content p,.legal-preview p{margin:0 0 var(--sp-3)}.legal-doc-content h1,.legal-preview h1{font-size:var(--fs-xl);margin:var(--sp-4) 0 var(--sp-3);font-weight:600}.legal-doc-content h2,.legal-preview h2{font-size:var(--fs-lg);margin:var(--sp-4) 0 var(--sp-2);font-weight:600}.legal-doc-content ul,.legal-preview ul{margin:0 0 var(--sp-3);padding-inline-start:var(--sp-5);list-style:outside}.legal-doc-content ol,.legal-preview ol{margin:0 0 var(--sp-3);padding-inline-start:var(--sp-5);list-style:decimal}.legal-doc-content li,.legal-preview li{margin-bottom:var(--sp-1)}.legal-doc-content a,.legal-preview a{text-decoration:underline}
