@import "https://fonts.googleapis.com/css2?family=Mulish:wght@400;500;600;700;800;900&display=swap";.app-toast-list{right:1.25rem;top:calc(var(--ub-topbar-height,70px) + .75rem);z-index:2000;pointer-events:none;flex-direction:column;gap:.75rem;max-width:380px;display:flex;position:fixed}.app-toast-list article{box-shadow:var(--ub-shadow-md);pointer-events:all;border:1px solid var(--ub-border);border-left:4px solid;border-radius:12px;align-items:flex-start;gap:.75rem;min-width:320px;padding:1rem;font-size:.875rem;font-weight:600;animation:.3s ease-out toastSlideIn;display:flex}.app-toast__icon{flex:none;margin-top:.1rem}.app-toast__content{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.app-toast__content strong{color:var(--ub-text);font-size:.82rem}.app-toast__content span{color:var(--ub-text-soft);font-size:.8rem;font-weight:500;line-height:1.45}.app-toast__close{color:var(--ub-text-muted);background:0 0;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:.2rem;display:inline-flex}.app-toast__close:hover{color:var(--ub-text);background:var(--ub-surface-alt)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.app-toast-list .is-success{background:var(--ub-surface);color:var(--ub-text);border-left-color:var(--ub-success)}.app-toast-list .is-error{background:var(--ub-surface);color:var(--ub-text);border-left-color:var(--ub-danger)}.app-toast-list .is-info{background:var(--ub-surface);color:var(--ub-text);border-left-color:var(--ub-info)}.app-toast-list .is-warning{background:var(--ub-surface);color:var(--ub-text);border-left-color:var(--ub-warning)}@media (width<=520px){.app-toast-list{max-width:none;left:.75rem;right:.75rem}.app-toast-list article{min-width:0}}.app-modal{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:clamp(1rem,2vw,2rem);display:flex;position:fixed;inset:0}.app-modal article{background:var(--ub-surface,#fff);border:1px solid var(--ub-border,#e9edf3);border-radius:var(--ub-radius-xl,16px);flex-direction:column;width:95vw;height:auto;min-height:220px;max-height:95dvh;animation:.2s modalIn;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.app-modal article.app-modal--lg,.app-modal article.app-modal--xl{width:95vw}@keyframes modalIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.app-modal header{border-bottom:1px solid var(--ub-border,#edf2f7);background:var(--ub-surface,#fff);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.app-modal header h3,.app-modal header h4{color:var(--ub-text,#212529);margin:0;font-size:.95rem;font-weight:700}.app-modal header button{color:var(--ub-text-muted,#6c757d);cursor:pointer;border-radius:var(--ub-radius-sm,6px);background:0 0;border:0;width:2.25rem;height:2.25rem;padding:0;font-size:1.2rem;line-height:1;transition:color .15s,background .15s}.app-modal header button:hover{color:var(--ub-text,#212529);background:#0000000d}.app-modal section{flex:1;min-height:0;padding:1.25rem;overflow-y:auto}.app-modal footer{border-top:1px solid var(--ub-border,#edf2f7);background:var(--ub-surface-alt,#f8f9fa);flex-shrink:0;justify-content:flex-end;gap:.5rem;padding:20px;display:flex}.app-modal__footer{min-height:64px}@media (width<=768px){.app-modal{align-items:center;padding:.5rem}.app-modal article,.app-modal article.app-modal--lg,.app-modal article.app-modal--xl{border-radius:14px;width:95vw;height:auto;max-height:95dvh}.app-modal header{padding:.75rem 1rem}.app-modal section{padding:1rem}.app-modal footer{padding:20px}}.app-confirm-dialog{gap:.75rem;display:grid}.app-confirm-dialog p{color:var(--ub-text-soft);margin:0;font-size:.9rem;line-height:1.6}.app-confirm-dialog footer{border-top:1px solid var(--ub-border);justify-content:flex-end;gap:.5rem;margin-top:.25rem;padding-top:.5rem;display:flex}.app-confirm-dialog button{border:1px solid var(--ub-border);border-radius:var(--ub-radius);cursor:pointer;color:var(--ub-text);background:#fff;padding:.4rem .9rem;font-size:.875rem;font-weight:600;transition:all .15s}.app-confirm-dialog button:hover{background:var(--ub-surface-alt)}.app-confirm-dialog .danger{background:var(--ub-danger);border-color:var(--ub-danger);color:#fff}.app-confirm-dialog .danger:hover{background:#e84d70}.auth-layout{background:var(--ub-bg);justify-content:center;align-items:center;min-height:100vh;padding:clamp(.75rem,2vw,2rem);display:flex}.auth-layout__shell{background:var(--ub-surface);border:1px solid var(--ub-border);width:min(1240px,100%);min-height:min(760px,100vh - 2rem);box-shadow:var(--ub-shadow-md);border-radius:18px;grid-template-columns:minmax(380px,.95fr) minmax(420px,1.05fr);display:grid;overflow:hidden}.auth-layout__aside{color:#fff;background:linear-gradient(145deg,#1d4ed8 0%,#2563eb 55%,#0ea5e9 100%);flex-direction:column;justify-content:space-between;padding:clamp(2rem,4vw,4rem);display:flex;position:relative;overflow:hidden}.auth-brand{z-index:1;letter-spacing:-.04em;align-items:center;gap:.6rem;font-size:1.35rem;font-weight:900;display:inline-flex;position:relative}.auth-brand__mark{background:#ffffff29;border:1px solid #fff3;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.auth-brand span span{color:#bfdbfe}.auth-layout__message{z-index:1;max-width:430px;position:relative}.auth-eyebrow{color:#bfdbfe;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem;font-size:.72rem;font-weight:800;display:inline-block}.auth-layout__message h1{color:#fff;letter-spacing:-.055em;margin:0 0 1rem;font-size:clamp(2rem,4vw,3.2rem);font-weight:800;line-height:1.1}.auth-layout__message h1 strong{color:#dbeafe}.auth-layout__message p{color:#ffffffc7;max-width:370px;margin:0;font-size:.95rem;line-height:1.7}.auth-layout__highlights{z-index:1;gap:.75rem;display:grid;position:relative}.auth-layout__highlights div{color:#ffffffdb;align-items:center;gap:.65rem;font-size:.78rem;font-weight:700;display:flex}.auth-layout__highlights svg{color:#bfdbfe}.auth-layout__decoration{border:1px solid #ffffff24;border-radius:50%;position:absolute}.auth-layout__decoration--one{width:390px;height:390px;top:18%;right:-140px}.auth-layout__decoration--two{background:#ffffff0f;width:360px;height:360px;bottom:-175px;right:45px}.auth-layout__main{background:var(--ub-surface);flex-direction:column;justify-content:center;padding:clamp(1.25rem,4vw,4.5rem);display:flex}.auth-layout__toolbar{color:var(--ub-text-muted);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2.5rem;font-size:.75rem;font-weight:700;display:flex}.auth-layout__toolbar button{color:var(--ub-text-soft);background:var(--ub-surface-alt);border:1px solid var(--ub-border);border-radius:7px;align-items:center;gap:.4rem;padding:.5rem .7rem;font-size:.72rem;font-weight:700;display:inline-flex}.auth-layout__toolbar button:hover{color:var(--ub-primary);border-color:var(--ub-primary)}.auth-layout__content{width:min(440px,100%);margin:0 auto}.auth-layout__footer{color:var(--ub-text-muted);text-align:center;margin-top:auto;padding-top:2rem;font-size:.7rem}@media (width<=820px){.auth-layout{padding:0}.auth-layout__shell{border:0;border-radius:0;grid-template-columns:1fr;min-height:100vh}.auth-layout__aside{min-height:280px;padding:1.5rem}.auth-layout__message h1{max-width:580px;font-size:2rem}.auth-layout__highlights{flex-wrap:wrap;gap:1rem;display:flex}.auth-layout__main{min-height:calc(100vh - 280px);padding:1.5rem}}.layout,.saas-layout{background:var(--ub-bg);min-height:100vh;display:flex}.saas-sidebar{background:linear-gradient(180deg, var(--ub-primary) 0%, var(--ub-primary-dark) 100%);z-index:100;scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;flex:0 0 288px;align-self:flex-start;width:288px;min-width:288px;height:calc(100vh - 32px);margin:16px;transition:width .25s,min-width .25s;display:flex;position:sticky;top:16px;overflow:hidden auto;box-shadow:0 18px 45px #5143a547}.sidebar-collapsed .saas-sidebar{flex-basis:64px;width:64px;min-width:64px}.sidebar-collapsed .saas-sidebar .menu-label,.sidebar-collapsed .saas-sidebar .logo-text,.sidebar-collapsed .saas-sidebar .menu-section-label,.sidebar-collapsed .saas-sidebar .sidebar-footer span,.sidebar-collapsed .saas-sidebar .sidebar-workspace{display:none}.sidebar-collapsed .saas-sidebar .aside-head{justify-content:center;padding:0}.sidebar-collapsed .saas-sidebar .aside-logo{justify-content:center}.sidebar-collapsed .saas-sidebar a{justify-content:center;padding:.6rem}.sidebar-collapsed .saas-sidebar a .menu-icon{margin:0}aside::-webkit-scrollbar{width:4px}aside::-webkit-scrollbar-track{background:0 0}aside::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.saas-sidebar .aside-head{height:var(--ub-topbar-height);border-bottom:1px solid #ffffff1f;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 1.25rem;display:flex}.aside-logo{align-items:center;gap:.6rem;display:flex}.logo-icon{color:#fff;background:#ffffff29;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.logo-text{color:#fff;letter-spacing:.5px;font-size:1.1rem;font-weight:800}.logo-accent{color:#c4b5fd}.menu{flex-direction:column;flex:1;gap:.25rem;padding:1rem .85rem;display:flex}.menu-section{margin-bottom:.25rem}.menu-section+.menu-section{border-top:1px solid #ffffff1a;margin-top:.5rem;padding-top:.5rem}.menu-section-label{color:#ffffff8f;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:.85rem .75rem .45rem;font-size:.65rem;font-weight:700;display:flex}.menu-section-label svg{transition:transform .2s}.menu-section-label svg.rotated{transform:rotate(-90deg)}.menu-section-items{gap:.15rem;display:grid}.saas-sidebar a{color:#ffffffbf;white-space:nowrap;border-left:0;border-radius:10px;align-items:center;gap:.7rem;padding:.7rem .8rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .15s;display:flex}aside a .menu-icon{opacity:.7;flex-shrink:0;width:18px;height:18px}.saas-sidebar a:hover{color:#fff;background:#ffffff1a}aside a:hover .menu-icon{opacity:1}.saas-sidebar a.is-active,.saas-sidebar a.router-link-exact-active{color:#fff;background:#ffffff29;font-weight:700}.saas-sidebar a.is-active .menu-icon,.saas-sidebar a.router-link-exact-active .menu-icon{color:#fff;opacity:1}.sidebar-footer{border-top:1px solid #ffffff1f;flex-shrink:0;padding:.75rem 0}.sidebar-logout{color:#ffffffbf;cursor:pointer;background:0 0;border:0;align-items:center;gap:.7rem;width:100%;padding:.7rem 1.5rem;font-size:.85rem;font-weight:600;transition:color .15s;display:flex}.sidebar-logout:hover{color:#fff}.sidebar-workspace{color:#fff;background:#ffffff1a;border:1px solid #ffffff1f;border-radius:12px;align-items:center;gap:.6rem;margin:.75rem;padding:.7rem;display:flex}.sidebar-workspace>div:nth-child(2){flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.sidebar-workspace strong{white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.sidebar-workspace span{color:#fff9;font-size:.62rem}.workspace-icon{color:#fff;background:#ffffff26;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.saas-main{flex-direction:column;flex:1;min-width:0;margin-left:0;transition:margin-left .25s;display:flex}.sidebar-collapsed .saas-main{margin-left:0}.topbar{z-index:2;height:78px;box-shadow:none;background:0 0;border-bottom:0;justify-content:space-between;align-items:center;gap:.75rem;padding:0 clamp(1rem,2vw,2rem);display:flex;position:relative}.theme-dark .topbar{background:var(--ub-surface)}.topbar-left{align-items:center;gap:.75rem;display:flex}.topbar-right{align-items:center;gap:.5rem;display:flex}.topbar-menu-btn,.topbar-collapse-btn{border:1px solid var(--ub-border);border-radius:var(--ub-radius);width:36px;height:36px;color:var(--ub-text-soft);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:all .15s;display:none}.topbar-menu-btn:hover,.topbar-collapse-btn:hover{background:var(--ub-surface-alt);color:var(--ub-text);border-color:var(--ub-text-muted)}.topbar-collapse-btn{display:inline-flex}.topbar-breadcrumb{align-items:center;gap:.35rem;display:flex}.topbar-page-context{flex-direction:column;gap:.05rem;display:flex}.breadcrumb-overline{color:var(--ub-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.breadcrumb-page{color:var(--ub-text);font-size:1rem;font-weight:700}.topbar-search{align-items:center;display:flex;position:relative}.search-icon{color:var(--ub-text-muted);pointer-events:none;position:absolute;left:.75rem}.search-input{background:var(--ub-surface-alt);border:1px solid var(--ub-border);width:220px;color:var(--ub-text);border-radius:7px;padding:.45rem .75rem .45rem 2.25rem;font-size:.85rem;transition:all .2s}.search-input:focus{outline:3px solid rgba(var(--ub-primary-rgb), .35);outline-offset:1px;border-color:var(--ub-primary);box-shadow:0 0 0 3px rgba(var(--ub-primary-rgb), .15);width:280px}.search-input::placeholder{color:var(--ub-text-muted)}.topbar-icon-btn{border:1px solid var(--ub-border);border-radius:var(--ub-radius);width:36px;height:36px;color:var(--ub-text-soft);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.topbar-icon-btn:hover{background:var(--ub-surface-alt);color:var(--ub-primary);border-color:var(--ub-primary)}.topbar-language,.topbar-help{height:36px;color:var(--ub-text-soft);border:1px solid var(--ub-border);background:0 0;border-radius:7px;align-items:center;gap:.3rem;padding:0 .6rem;font-size:.7rem;font-weight:800;display:inline-flex}.topbar-language:hover,.topbar-help:hover{color:var(--ub-primary);border-color:var(--ub-primary)}.theme-customizer{position:relative}.theme-panel{background:var(--ub-surface);border:1px solid var(--ub-border);width:245px;box-shadow:var(--ub-shadow-md);z-index:1000;border-radius:10px;padding:1rem;position:absolute;top:calc(100% + .75rem);right:-.5rem}.theme-panel__heading{color:var(--ub-primary);justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.theme-panel__heading div{flex-direction:column;gap:.15rem;display:flex}.theme-panel__heading strong{color:var(--ub-text);font-size:.85rem}.theme-panel__heading span{color:var(--ub-text-muted);font-size:.7rem}.theme-mode-switcher{background:var(--ub-surface-alt);border-radius:7px;grid-template-columns:1fr 1fr;gap:.35rem;margin-bottom:1rem;padding:.25rem;display:grid}.theme-mode-switcher button{color:var(--ub-text-muted);background:0 0;border-radius:5px;justify-content:center;align-items:center;gap:.3rem;padding:.45rem .25rem;font-size:.72rem;font-weight:700;display:inline-flex}.theme-mode-switcher button.active{background:var(--ub-surface);color:var(--ub-primary);box-shadow:var(--ub-shadow-sm)}.theme-panel__label{color:var(--ub-text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.6rem;font-size:.68rem;font-weight:800;display:block}.color-swatches{flex-wrap:wrap;gap:.6rem;display:flex}.color-swatch{border:2px solid var(--ub-surface);width:25px;height:25px;box-shadow:0 0 0 1px var(--ub-border);border-radius:50%}.color-swatch.active{box-shadow:0 0 0 2px var(--ub-surface), 0 0 0 4px var(--ub-primary)}.custom-color-field{border-top:1px solid var(--ub-border);color:var(--ub-text-muted);justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;padding-top:.75rem;font-size:.72rem;font-weight:700;display:flex}.custom-color-field input{cursor:pointer;border:0;border-radius:5px;width:30px;height:24px;padding:0}.notification-dot{background:var(--ub-primary);border:1.5px solid var(--ub-surface);color:#fff;text-align:center;border-radius:50%;min-width:15px;height:15px;padding:0 3px;font-size:.58rem;font-weight:800;line-height:12px;position:absolute;top:2px;right:1px}.user-dropdown{position:relative}.topbar-user{border:1px solid var(--ub-border);border-radius:var(--ub-radius);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.25rem .5rem;transition:all .15s;display:flex}.topbar-user:hover{background:var(--ub-surface-alt)}.topbar-avatar{background:linear-gradient(135deg, var(--ub-primary), #8b5cf6);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.75rem;font-weight:800;display:flex}.topbar-user-info{text-align:left;flex-direction:column;display:flex}.topbar-user-name{color:var(--ub-text);font-size:.8rem;font-weight:700;line-height:1.2}.topbar-user-role{color:var(--ub-text-muted);font-size:.7rem;line-height:1.2}.dropdown-menu{background:var(--ub-surface);border:1px solid var(--ub-border);border-radius:var(--ub-radius-lg);min-width:200px;box-shadow:var(--ub-shadow-md);z-index:1000;opacity:0;visibility:hidden;padding:.5rem 0;list-style:none;transition:all .15s;position:absolute;top:calc(100% + .5rem);right:0;transform:translateY(-8px)}.dropdown-item{color:var(--ub-text-soft);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.55rem 1rem;font-size:.85rem;text-decoration:none;transition:all .15s;display:flex}.dropdown-item.danger{color:var(--ub-danger)}.dropdown-item.danger:hover{color:var(--ub-danger);background:#fa5c7c1a}.main-content{min-height:calc(100vh - var(--ub-topbar-height));flex:1;padding:0 1rem 0 0}.menu-overlay{z-index:99;background:#00000073;display:none;position:fixed;inset:0}.desktop-only{display:inline-flex}@media (width<=1024px){.saas-main{margin-left:0!important}.saas-sidebar{flex:none;height:auto;margin:0;transition:transform .25s;position:fixed;top:16px;bottom:16px;left:16px;transform:translate(-110%)}.saas-sidebar.is-open{transform:translate(0)}.topbar-menu-btn{display:inline-flex}.topbar-collapse-btn{display:none!important}.menu-close{justify-content:center;align-items:center;display:inline-flex}.menu-overlay{display:block}.desktop-only{display:none!important}.search-input{width:160px}.search-input:focus{width:200px}.topbar-menu-btn,.topbar-collapse-btn,.topbar-icon-btn{width:44px;height:44px}.main-content{padding:1rem}}@media (width>=1025px){.menu-close{display:none}}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-20{width:5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-fit{width:fit-content}.w-full{width:100%}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t-2{border-top-width:2px}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-transparent{border-color:#0000}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-opacity-75{--tw-bg-opacity:.75}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-4{padding-bottom:1rem}.pl-4{padding-left:1rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-5{line-height:1.25rem}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 2px 6px 0 #9aa1ab26;--tw-shadow-colored:0 2px 6px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--ub-primary:#6657c3;--ub-primary-dark:#5240b3;--ub-primary-rgb:102, 87, 195;--ub-success:#059669;--ub-info:#0891b2;--ub-warning:#d97706;--ub-danger:#dc2626;--ub-danger-rgb:220, 38, 38;--ub-bg:#eeeef7;--ub-surface:#fff;--ub-surface-alt:#f7f7fc;--ub-sidebar-bg:#6657c3;--ub-sidebar-hover:#ffffff1a;--ub-sidebar-active:#ffffff29;--ub-sidebar-text:#ffffffb8;--ub-sidebar-active-text:#fff;--ub-sidebar-width:260px;--ub-topbar-height:70px;--ub-text:#0f172a;--ub-text-soft:#475569;--ub-text-muted:#94a3b8;--ub-border:#e7e7f0;--ub-shadow-card:0 1px 3px #0f172a0f, 0 8px 24px #0f172a08;--ub-shadow-sm:0 1px 3px #0f172a14;--ub-shadow-md:0 18px 50px #0f172a29;--ub-radius-sm:4px;--ub-radius:4px;--ub-radius-lg:8px;--ub-radius-xl:12px;--ub-radius-pill:50px}.theme-dark{--ub-primary:#9087d8;--ub-primary-dark:#7a6ece;--ub-primary-rgb:144, 135, 216;--ub-success:#34d399;--ub-info:#22d3ee;--ub-warning:#fbbf24;--ub-danger:#fb7185;--ub-danger-rgb:251, 113, 133;--ub-bg:#121426;--ub-surface:#191c2d;--ub-surface-alt:#22263b;--ub-sidebar-bg:#6657c3;--ub-sidebar-hover:#ffffff1a;--ub-sidebar-active:#ffffff29;--ub-sidebar-text:#ffffffb8;--ub-sidebar-active-text:#fff;--ub-text:#f8fafc;--ub-text-soft:#cbd5e1;--ub-text-muted:#94a3b8;--ub-border:#30354d;--ub-shadow-card:0 0 35px 0 #0000004d;--ub-shadow-sm:0 2px 6px 0 #0000004d;--ub-shadow-md:0 0 45px 0 #0006}.theme-dark body{background:var(--ub-bg);color:var(--ub-text)}.theme-dark input,.theme-dark select,.theme-dark textarea{background:var(--ub-surface-alt);border-color:var(--ub-border);color:var(--ub-text)}.theme-dark .card,.theme-dark .kpi-card,.theme-dark .list-summary-card,.theme-dark .vehicle-card,.theme-dark .form{background:var(--ub-surface);box-shadow:var(--ub-shadow-card)}.theme-dark thead th{background:var(--ub-surface-alt);color:var(--ub-text)}.theme-dark tbody td{border-bottom-color:var(--ub-border);color:var(--ub-text-soft)}.theme-dark .pagination a,.theme-dark .pagination button,.theme-dark .app-pagination button{background:var(--ub-surface);border-color:var(--ub-border);color:var(--ub-text-soft)}.theme-dark input[type=checkbox],.theme-dark input[type=radio]{background:var(--ub-surface-alt);border-color:var(--ub-border)}.theme-dark .modal-header,.theme-dark .app-modal__header{border-bottom-color:var(--ub-border)}.theme-dark .modal-footer,.theme-dark .app-modal__footer{border-top-color:var(--ub-border);background:var(--ub-surface-alt)}*,*,:before,:after{box-sizing:border-box}body{color:var(--ub-text-soft);background:var(--ub-bg);margin:0;font-family:Mulish,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5}.saas-layout,.saas-layout button,.saas-layout input,.saas-layout select,.saas-layout textarea{font-family:Mulish,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font-family:inherit;font-size:inherit}a{color:var(--ub-primary);text-decoration:none}a:hover{color:var(--ub-primary-dark)}h1,h2,h3,h4,h5,h6{color:var(--ub-text);margin:0 0 .5rem;font-weight:700}input,select,textarea{width:100%;color:var(--ub-text);background:var(--ub-surface);border:1px solid var(--ub-border);appearance:none;border-radius:7px;padding:.6rem .8rem;font-size:.875rem;font-weight:400;line-height:1.5;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:3px solid rgba(var(--ub-primary-rgb), .35);outline-offset:1px;border-color:var(--ub-primary);box-shadow:0 0 0 3px rgba(var(--ub-primary-rgb), .15)}input:disabled,select:disabled,textarea:disabled{background:var(--ub-surface-alt);cursor:not-allowed;opacity:.7}textarea{resize:vertical;min-height:80px}button{cursor:pointer;border:0;transition:opacity .15s,box-shadow .15s}.btn{border-radius:var(--ub-radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.65;cursor:not-allowed}.btn-primary,.btn-create{background:var(--ub-primary);color:#fff;border-color:var(--ub-primary)}.btn-primary:hover,.btn-create:hover{background:var(--ub-primary-dark);border-color:var(--ub-primary-dark);box-shadow:0 2px 6px rgba(var(--ub-primary-rgb), .5)}.btn-secondary{color:#fff;background:#6c757d;border-color:#6c757d}.btn-secondary:hover{background:#5a6268}.btn-danger{background:var(--ub-danger);color:#fff;border-color:var(--ub-danger)}.btn-danger:hover{background:#e84d70;box-shadow:0 2px 6px #fa5c7c80}.btn-sm{padding:.25rem .6rem;font-size:.8rem}.card,.kpi-card,.list-summary-card,.vehicle-card,.form{background:var(--ub-surface);border-radius:var(--ub-radius-lg);box-shadow:var(--ub-shadow-card);border:0}.vehicle-page,.form-page,.list-page{width:100%;max-width:none;padding:clamp(1rem,2vw,2rem)}.page-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.page-title{color:var(--ub-text);margin:0;font-size:1.15rem;font-weight:700}.page-subtitle{color:var(--ub-text-muted);margin:.15rem 0 0;font-size:.8rem}.breadcrumb{color:var(--ub-text-muted);align-items:center;gap:.35rem;margin-bottom:1.5rem;font-size:.8rem;display:flex}.breadcrumb a{color:var(--ub-text-muted)}.breadcrumb a:hover{color:var(--ub-primary)}.breadcrumb span{color:var(--ub-text)}.vehicle-page table{border-collapse:collapse;width:100%}.vehicle-page th,.vehicle-page td{border-bottom:1px solid var(--ub-border);text-align:left;padding:.65rem .75rem;font-size:.875rem}.vehicle-page thead th{background:var(--ub-surface-alt);color:var(--ub-text);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.filters{background:var(--ub-surface);border-radius:var(--ub-radius-lg);box-shadow:var(--ub-shadow-card);flex-wrap:wrap;gap:.65rem;margin-bottom:1.25rem;padding:.75rem 1rem;display:flex}.filters>*{flex:1;min-width:160px}.tabs{border-bottom:2px solid var(--ub-border);gap:0;margin-bottom:1.5rem;display:flex;overflow-x:auto}.step-tab{color:var(--ub-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.65rem 1.1rem;font-size:.875rem;font-weight:700;transition:color .15s,border-color .15s}.step-tab:hover{color:var(--ub-text)}.step-tab.is-current{color:var(--ub-primary);border-bottom-color:var(--ub-primary);background:0 0}.form-group{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-group label{color:var(--ub-text);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:700}.span-2{grid-column:span 2}.badge{border-radius:var(--ub-radius-pill);text-transform:uppercase;letter-spacing:.04em;align-items:center;padding:.2rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.empty{text-align:center;color:var(--ub-text-muted);padding:2.5rem 1rem;font-size:.875rem}.alert{border-radius:var(--ub-radius);margin-bottom:1rem;padding:.7rem 1rem;font-size:.875rem}.error{color:var(--ub-danger);margin-top:.25rem;font-size:.8rem}@media (width<=960px){.module-header,.header-row,.page-header{flex-direction:column;align-items:stretch}.grid-two,.grid-three{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}}select,.settings-section select{background-image:linear-gradient(45deg,#0000 50%,#98a6ad 50%),linear-gradient(135deg,#98a6ad 50%,#0000 50%);background-position:calc(100% - 14px) calc(50% - 3px),calc(100% - 9px) calc(50% - 3px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:2.2rem}.settings-section .form-group,.settings-section .card-row .form-group,.fin-form .form-group{gap:0;position:relative}.settings-section .form-group>label,.settings-section .card-row .form-group>label,.fin-form .form-group>label{letter-spacing:.04em;text-transform:uppercase;color:var(--ub-text-muted);background:var(--ub-surface);z-index:2;pointer-events:none;padding:0 .3rem;font-size:.65rem;font-weight:700;position:absolute;top:-.42rem;left:.6rem}.settings-section .form-group>input,.settings-section .form-group>select,.settings-section .form-group>textarea,.settings-section .card-row .form-group>input,.settings-section .card-row .form-group>select,.settings-section .card-row .form-group>textarea,.fin-form .form-group>input,.fin-form .form-group>select,.fin-form .form-group>textarea{min-height:40px}.settings-section .form-group:focus-within>label,.settings-section .card-row .form-group:focus-within>label,.fin-form .form-group:focus-within>label{color:var(--ub-primary)}.settings-tabs{counter-reset:wizard-step;background:var(--ub-surface);gap:.35rem;padding:.35rem}.settings-tab{border:1px solid var(--ub-border);border-radius:var(--ub-radius);border-bottom:1px solid var(--ub-border);justify-content:center;align-items:center;gap:.45rem;display:inline-flex;position:relative}.settings-tab:before{counter-increment:wizard-step;content:counter(wizard-step);background:var(--ub-surface-alt);width:18px;height:18px;color:var(--ub-text-muted);border:1px solid var(--ub-border);border-radius:50%;justify-content:center;align-items:center;font-size:.64rem;font-weight:800;display:inline-flex}.settings-tab.is-active{border-color:rgba(var(--ub-primary-rgb), .3);background:rgba(var(--ub-primary-rgb), .08)}.settings-tab.is-active:before{background:var(--ub-primary);color:#fff;border-color:var(--ub-primary)}input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:1px solid #9ca3af;border-radius:4px;place-content:center;margin:0;transition:all .15s;display:inline-grid;width:16px!important;max-width:24px!important;height:16px!important;max-height:24px!important}input[type=checkbox]:before{content:"";clip-path:polygon(14% 44%,0 59%,50% 100%,100% 16%,84% 0,43% 62%);background:#fff;width:9px;height:9px;transition:transform .12s ease-in-out;transform:scale(0)}input[type=checkbox]:checked{background:var(--ub-primary);border-color:var(--ub-primary);box-shadow:0 0 0 .15rem rgba(var(--ub-primary-rgb), .2)}input[type=checkbox]:checked:before{transform:scale(1)}input[type=checkbox]:disabled{opacity:.55;cursor:not-allowed}.checkbox-field,.checkbox-row{align-items:center;gap:.5rem;display:inline-flex}.pagination,.app-pagination{align-items:center;gap:.35rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.pagination li,.app-pagination button{display:inline-flex}.pagination a,.pagination button,.app-pagination button{border-radius:var(--ub-radius);min-width:36px;height:36px;color:var(--ub-text-soft);cursor:pointer;background:#fff;border:1px solid #dee2e6;justify-content:center;align-items:center;padding:0 .5rem;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.pagination a:hover,.pagination button:hover,.app-pagination button:hover{border-color:var(--ub-primary);color:var(--ub-primary);background:rgba(var(--ub-primary-rgb), .05)}.pagination li.active a,.pagination li.active button,.app-pagination button.is-active{background:var(--ub-primary);border-color:var(--ub-primary);color:#fff}.pagination li.disabled a,.pagination li.disabled button,.app-pagination button:disabled{opacity:.55;cursor:not-allowed;color:#98a6ad}.toast,.app-toast,.notification{border-radius:var(--ub-radius-lg);box-shadow:var(--ub-shadow-md);border-left:4px solid #0000;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;animation:.3s ease-out slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.modal,.app-modal{z-index:10000;opacity:0;visibility:hidden;background:#0006;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;transition:opacity .3s,visibility .3s;display:flex;position:fixed;top:0;left:0}.modal.active,.app-modal.active{opacity:1;visibility:visible}.modal-backdrop{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}#app,.layout,.main-content,.list-page,.form-page,.vehicle-page,.dashboard-page{width:100%;max-width:none}.table-card,.section-card,.card{border:1px solid var(--ub-border)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header,.app-modal__header{border-bottom:1px solid var(--ub-border);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title{color:var(--ub-text);margin:0;font-size:1.1rem;font-weight:700}.modal-close,.app-modal__close{cursor:pointer;color:var(--ub-text-muted);border-radius:var(--ub-radius);background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:1.5rem;transition:all .15s;display:flex}.modal-close:hover,.app-modal__close:hover{background:var(--ub-surface-alt);color:var(--ub-text)}.modal-body,.app-modal__body{color:var(--ub-text-soft);padding:1.5rem;font-size:.875rem}.modal-footer,.app-modal__footer{border-top:1px solid var(--ub-border);background:var(--ub-surface-alt);justify-content:flex-end;align-items:center;gap:.75rem;padding:20px;display:flex}.dropdown{display:inline-block;position:relative}.dropdown-menu{background:var(--ub-surface);border:1px solid var(--ub-border);border-radius:var(--ub-radius-lg);min-width:180px;box-shadow:var(--ub-shadow-md);z-index:1000;opacity:0;visibility:hidden;margin-top:.5rem;padding:.5rem 0;list-style:none;transition:all .15s;position:absolute;top:100%;left:0;transform:translateY(-8px)}.dropdown-menu.active{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{color:var(--ub-text-soft);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.55rem 1rem;font-size:.875rem;transition:all .15s;display:flex}.dropdown-item:hover{background:var(--ub-surface-alt);color:var(--ub-primary)}.dropdown-item.active{background:rgba(var(--ub-primary-rgb), .1);color:var(--ub-primary);font-weight:600}.dropdown-divider{background:var(--ub-border);height:1px;margin:.35rem 0}.tab-pane{display:none}.tab-pane.active{display:block}.btn-inline{flex-shrink:0;height:36px;padding:.37rem .65rem;font-size:.8rem}table{border-collapse:collapse;width:100%}thead th{background:var(--ub-surface-alt);text-transform:uppercase;letter-spacing:.04em;text-align:left;color:var(--ub-text);padding:.75rem;font-size:.75rem;font-weight:700}tbody td{border-bottom:1px solid var(--ub-border);color:var(--ub-text-soft);padding:.75rem;font-size:.875rem}tbody tr:hover{background:var(--ub-surface-alt)}input[type=radio]{appearance:none;cursor:pointer;background:#fff;border:1px solid #9ca3af;border-radius:50%;place-content:center;width:18px;min-width:18px;height:18px;margin:0;transition:all .15s;display:inline-grid}input[type=radio]:before{content:"";background:0 0;border-radius:50%;width:6px;height:6px;transition:background .12s ease-in-out}input[type=radio]:checked{border-color:var(--ub-primary);background:#fff}input[type=radio]:checked:before{background:var(--ub-primary)}input[type=radio]:disabled{opacity:.55;cursor:not-allowed}fieldset{border:1px solid var(--ub-border);border-radius:var(--ub-radius-lg);margin-bottom:1rem;padding:1.25rem}legend{color:var(--ub-text);padding:0 .5rem;font-size:.875rem;font-weight:700}.text-muted{color:var(--ub-text-muted)}.border{border:1px solid var(--ub-border)}.rounded{border-radius:var(--ub-radius)}.rounded-lg{border-radius:var(--ub-radius-lg)}.rounded-full{border-radius:999px}.shadow{box-shadow:var(--ub-shadow-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only.focus\:not-sr-only:focus{clip:auto;white-space:normal;width:auto;height:auto;margin:0;padding:.5rem 1rem;position:static;overflow:visible}:focus-visible{outline:3px solid var(--ub-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(var(--ub-primary-rgb), .2)}button:focus-visible,a:focus-visible{outline:3px solid var(--ub-primary);outline-offset:2px}.btn-action{border-radius:var(--ub-radius);cursor:pointer;border:1px solid #0000;align-items:center;gap:.25rem;padding:.3rem .75rem;font-size:.775rem;font-weight:600;line-height:1.4;text-decoration:none;transition:all .15s;display:inline-flex}.btn-action.is-primary{color:#fff}.btn-action.is-soft{background:rgba(var(--ub-primary-rgb), .1);color:var(--ub-primary)}.btn-action.is-soft:hover{background:rgba(var(--ub-primary-rgb), .2)}.btn-action.is-danger{color:var(--ub-danger);background:#fa5c7c1a}.btn-action.is-danger:hover{background:var(--ub-danger);color:#fff}.btn-action.is-neutral{color:var(--ub-text-soft);background:#6c757d1a}.btn-action.is-neutral:hover{background:#6c757d33}.btn-action.is-success{color:var(--ub-success);background:#0acf971f}.btn-action.is-success:hover{background:var(--ub-success);color:#fff}@media (width<=768px){.btn-action{min-height:38px;padding:.45rem .85rem;font-size:.8rem}.main-content{padding:1rem}.modal-lg .modal-content,.modal-xl .modal-content{width:100%;max-width:100%}.modal-backdrop{padding:.5rem}.modal-panel{width:96vw;height:96dvh;max-height:96dvh}.app-toast-list{max-width:none;left:.5rem;right:.5rem}}@media (width<=400px){.app-toast-list{left:.25rem;right:.25rem}}.vehicle-page,.form-page,.list-page,.contacts-page{background:var(--ub-bg);padding:clamp(1rem,2vw,2rem)!important}.page-header{margin-bottom:1.5rem!important}.page-title,.page-header__left .page-title{letter-spacing:-.035em;font-size:1.45rem!important;font-weight:800!important}.page-subtitle,.page-header__left .page-subtitle{color:var(--ub-text-muted)!important;font-size:.78rem!important}.filters,.contacts-toolbar{border:1px solid var(--ub-border)!important;background:var(--ub-surface)!important;box-shadow:var(--ub-shadow-card)!important;border-radius:12px!important;padding:.75rem!important}.table-card,.contacts-table-wrapper,.form,.permission-matrix,.settings-section,.vehicle-card{border:1px solid var(--ub-border)!important;background:var(--ub-surface)!important;box-shadow:var(--ub-shadow-card)!important;border-radius:12px!important}.table-card__header,.contacts-table th,.data-table thead tr{background:var(--ub-surface-alt)!important}.data-table th,.contacts-table th{text-transform:uppercase;color:var(--ub-text-muted)!important;letter-spacing:.08em!important;font-size:.66rem!important;font-weight:800!important}.data-table td,.contacts-table td{color:var(--ub-text-soft)!important;border-color:var(--ub-border)!important}.data-table tbody tr:hover td,.contacts-table tbody tr:hover{background:rgba(var(--ub-primary-rgb), .045)!important}.contact-card,.kpi-card,.kpi-card-enhanced{border:1px solid var(--ub-border)!important;box-shadow:var(--ub-shadow-card)!important;border-radius:12px!important}.btn-action.is-primary,.btn-primary,.btn-create{background:var(--ub-primary)!important;border-color:var(--ub-primary)!important}.btn-action.is-primary:hover,.btn-primary:hover,.btn-create:hover{background:var(--ub-primary-dark)!important;border-color:var(--ub-primary-dark)!important}.form-group input,.form-group select,.form-group textarea,.contacts-search,.settings-section input,.settings-section select,.settings-section textarea{border-color:var(--ub-border)!important;background:var(--ub-surface)!important;color:var(--ub-text)!important;border-radius:8px!important}.modal-backdrop,.app-modal{background:#0f172a9e!important}.modal-panel,.app-modal article{flex-direction:column;min-height:220px;display:flex;border:1px solid var(--ub-border)!important;background:var(--ub-surface)!important;border-radius:14px!important;width:95vw!important;height:auto!important;max-height:95dvh!important;box-shadow:0 24px 70px #0f172a40!important}.modal-panel>.modal-body,.modal-panel>form.modal-body,.app-modal__body{flex:auto;min-height:0;overflow-y:auto}.modal-panel>form.modal-body{flex-direction:column;display:flex}.modal-panel .modal-footer,.app-modal__body .modal-footer,.app-modal__body .color-actions,.app-modal__body .model-actions,.app-modal__body .catalog-actions,.app-modal__body>div[style*=justify-content\:flex-end]{z-index:2;background:linear-gradient(to bottom, transparent, var(--ub-surface) 30%);justify-content:flex-end;gap:.6rem;margin-top:auto;padding:20px;display:flex;position:sticky;bottom:-1.5rem}.app-modal__footer{flex:none;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.last\:border-0:last-child{border-width:0}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:text-blue-900:hover{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-red-900:hover{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.focus\:not-sr-only:focus{clip:auto;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:z-50:focus{z-index:50}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.focus\:p-2:focus{padding:.5rem}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.disabled\:opacity-50:disabled{opacity:.5}@media (width>=640px){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:p-6{padding:1.5rem}.sm\:pb-4{padding-bottom:1rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (width>=768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}}
