:root{--primary: #714b67;--primary-hover: #5c3d55;--primary-light: #f0e6ee;--primary-light-hover: #e4d4e0;--success: #1f8a5b;--success-hover: #19744c;--success-bg: #e5f3ec;--warning: #e6a817;--warning-bg: #fef8e8;--danger: #e13d3d;--danger-bg: #fde8ea;--info: #17a2b8;--info-bg: #e8f7fa;--purple: #875a7b;--purple-bg: #f5eef3;--bg: #f9f9f9;--surface: #ffffff;--surface-2: #f0f0f0;--border: #dee2e6;--border-strong: #adb5bd;--text: #212529;--text-secondary: #495057;--text-muted: #868e96;--sidebar-bg: #714b67;--sidebar-text: #ffffff;--sidebar-section-text: #d1c4d1;--sidebar-text-hover: #ffffff;--sidebar-hover-bg: rgba(0, 0, 0, .08);--sidebar-active-bg: #5a3d54;--sidebar-active-text: #ffffff;--sidebar-active-border: transparent;--sidebar-border: rgba(255, 255, 255, .1);--sidebar-logo-text: #ffffff;--sidebar-user-name: #ffffff;--sidebar-width: 260px;--sidebar-collapsed: 64px;--header-height: 50px;--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow: 0 4px 12px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.04);--shadow-lg: 0 10px 30px rgba(0,0,0,.12), 0 4px 10px rgba(0,0,0,.06);--transition: .2s cubic-bezier(.4,0,.2,1);--transition-slow: .3s cubic-bezier(.4,0,.2,1);--font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--inline-end: right;--font-size-base: 13.5px;--btn-radius: 6px;--input-radius: 6px;--table-header-bg: #f0f0f0;--focus-ring: 0 0 0 2px #ffffff, 0 0 0 4px #714b67}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}a{color:var(--primary)}a,a:hover,a:focus,a:active{text-decoration:none}html{font-size:13.5px;-webkit-font-smoothing:antialiased}html,body{height:100%}[dir=rtl]{--inline-end:left}body{font-family:var(--font-family);font-size:var(--font-size-base);background:var(--bg);color:var(--text);height:100vh;display:flex;overflow:hidden}#app{display:flex;width:100%;min-height:100vh;height:100vh;overflow:hidden;position:relative;flex:1}.sidebar{position:fixed;top:0;inset-inline-start:0;height:100vh;width:var(--sidebar-width);background:var(--sidebar-bg);display:flex;flex-direction:column;transition:width var(--transition-slow),inset-inline-start var(--transition-slow);z-index:100;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:0 18px;height:var(--header-height);border-bottom:1px solid var(--sidebar-border,rgba(255,255,255,.1));flex-shrink:0;overflow:hidden;cursor:pointer}.logo-icon{width:32px;height:32px;background:var(--primary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:var(--icon-size-md);color:#fff;overflow:hidden}.logo-icon.has-logo,.login-logo.has-logo,[data-ui-theme] .logo-icon.has-logo{background:#fff}.logo-icon img,.login-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.logo-text{font-weight:700;font-size:15px;color:var(--sidebar-logo-text,#f1f5f9);white-space:nowrap;min-width:0;max-width:182px;overflow:hidden;transition:opacity var(--transition),width var(--transition)}.logo-name{display:block;overflow:hidden;text-overflow:ellipsis}.logo-sub{font-size:10px;color:var(--sidebar-section-text,var(--sidebar-text));text-transform:uppercase;letter-spacing:.06em;display:block}.sidebar.collapsed .logo-text,.sidebar.collapsed .sidebar-label,.sidebar.collapsed .sidebar-section-title,.sidebar.collapsed .menu-arrow,.sidebar.collapsed .badge{opacity:0;width:0;overflow:hidden}.sidebar-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:10px 0;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-section{margin-bottom:4px}.sidebar-section-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--sidebar-section-text,var(--sidebar-text));padding:10px 18px 4px;white-space:nowrap;transition:opacity var(--transition)}.menu-item{position:relative;display:flex;align-items:center;gap:10px;padding:6px 18px;cursor:pointer;color:var(--sidebar-text);transition:color var(--transition),background var(--transition);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-inline-start:2px solid transparent;text-decoration:none}.menu-item:hover{color:var(--sidebar-text-hover);background:var(--sidebar-hover-bg,rgba(255,255,255,.08))}.menu-item.active{color:var(--sidebar-active-text);background:var(--sidebar-active-bg);border-inline-start-color:var(--sidebar-active-border);font-weight:600}.menu-item i{font-size:var(--icon-size-lg);flex-shrink:0;width:20px;text-align:center;color:inherit}.sidebar-label{font-size:13.5px;font-weight:500;flex:1;transition:opacity var(--transition)}.menu-arrow{font-size:14px;transition:transform var(--transition),opacity var(--transition)}.menu-arrow.open{transform:rotate(180deg)}.badge{font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px;flex-shrink:0;transition:opacity var(--transition)}.badge-primary{background:var(--primary);color:#fff}.badge-danger{background:var(--danger);color:#fff}.badge-service{display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;padding:0 10px;border-radius:50vh;white-space:nowrap;letter-spacing:.01em;background:var(--surface);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 28%,transparent)}.submenu{overflow:hidden;transition:max-height var(--transition-slow)}button.menu-group-toggle{width:100%;border:0;font:inherit;text-align:start;background:none}button.menu-group-toggle>.sidebar-label{font-weight:600}.submenu-card{display:grid;grid-template-rows:0fr;margin-inline:14px 10px;margin-block:0;padding:0 4px;background:color-mix(in srgb,var(--sidebar-text) 6%,transparent);border-radius:10px;transition:grid-template-rows var(--transition-slow),margin var(--transition-slow),padding var(--transition-slow)}.submenu-card.open{grid-template-rows:1fr;margin-block:2px 8px;padding:4px}.submenu-card>.submenu-body{min-height:0;overflow:hidden}.submenu-card>.submenu-body>.menu-item,.submenu-card>.submenu-body>.menu-item.active{gap:10px;margin:0;padding:6px 10px;border-inline-start:0;border-radius:7px;font-size:13px}.submenu-card>.submenu-body>.menu-item:not(.active){color:color-mix(in srgb,var(--sidebar-text) 80%,transparent)}.submenu-card>.submenu-body>.menu-item:not(.active):hover{color:var(--sidebar-text-hover)}.submenu-card>.submenu-body>.menu-item.active{background:color-mix(in srgb,var(--sidebar-text) 16%,transparent)}.submenu-card>.submenu-body>.menu-item>.sidebar-label{font-size:13px}.submenu-card>.submenu-body>.menu-item>i{opacity:.75}.submenu-card>.submenu-body>.menu-item.active>i{opacity:1}.submenu-item{display:flex;align-items:center;gap:10px;padding-block:7px;padding-inline:50px 18px;cursor:pointer;color:var(--sidebar-text);font-size:13px;transition:color var(--transition),background var(--transition);white-space:nowrap;border-inline-start:2px solid transparent}.submenu-item:hover{color:var(--sidebar-text-hover);background:var(--sidebar-hover-bg,rgba(255,255,255,.08))}.submenu-item.active{color:var(--sidebar-active-text);font-weight:600}.submenu-item:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;flex-shrink:0;opacity:.85}.sidebar-footer{padding:12px;border-top:1px solid var(--sidebar-border,rgba(255,255,255,.1));flex-shrink:0}.sidebar-user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--radius);cursor:pointer;transition:background var(--transition);overflow:hidden}.sidebar-user:hover{background:var(--sidebar-hover-bg,rgba(255,255,255,.08))}.avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--purple));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.user-info{min-width:0}.user-name{font-size:13px;font-weight:600;color:var(--sidebar-user-name,#e2e8f0);white-space:nowrap}.user-role{font-size:11px;color:var(--sidebar-section-text,var(--sidebar-text));white-space:nowrap}.sidebar-user-menu{color:var(--sidebar-section-text,var(--sidebar-text));font-size:16px;margin-inline-start:auto;flex-shrink:0}.tooltip-label{display:none;position:absolute;inset-inline-start:calc(var(--sidebar-collapsed) + 8px);top:50%;transform:translateY(-50%);background:var(--surface,#fff);color:var(--primary);font-size:12px;font-weight:500;padding:5px 10px;border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;box-shadow:0 6px 18px #00000014;z-index:200;border:1px solid color-mix(in srgb,var(--primary) 18%,transparent)}.sidebar.collapsed .menu-item:hover .tooltip-label{display:block}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity var(--transition-slow)}.sidebar-overlay.visible{display:block;opacity:1;pointer-events:auto}.main{margin-inline-start:var(--sidebar-width);flex:1;display:flex;flex-direction:column;height:100vh;min-height:0;min-width:0;overflow-x:hidden;overflow-y:visible;background:var(--bg);transition:margin-inline-start var(--transition-slow)}.sidebar.collapsed~.main{margin-inline-start:var(--sidebar-collapsed)}.header{height:var(--header-height);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;padding:0 12px;position:sticky;top:0;z-index:90;flex-shrink:0;overflow:visible}.header-toggle{width:36px;height:36px;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--icon-size-xl);transition:background var(--transition),color var(--transition)}.header-toggle:hover{background:var(--surface-2);color:var(--text)}.header-search{flex:1;max-width:360px;position:relative}.header-search i{position:absolute;inset-inline-start:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:var(--icon-size-md);pointer-events:none}.header-search input{width:100%;height:36px;padding-block:0;padding-inline:34px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:13px;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);outline:none}.header-search input::-moz-placeholder{color:var(--text-muted)}.header-search input::placeholder{color:var(--text-muted)}.header-search input:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px #2563eb1a}.header-spacer{flex:1}.header-actions{display:flex;align-items:center;gap:4px}.header-btn{position:relative;width:36px;height:36px;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--icon-size-lg);transition:background var(--transition),color var(--transition)}.header-btn:hover{background:var(--surface-2);color:var(--text)}.notif-dot{position:absolute;top:6px;inset-inline-end:6px;width:8px;height:8px;border-radius:50%;background:var(--danger);border:2px solid var(--surface)}.header-divider{width:1px;height:24px;background:var(--border);margin:0 4px}.header-profile{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:var(--radius);cursor:pointer;transition:background var(--transition);position:relative}.header-profile:hover{background:var(--surface-2)}.profile-name{font-size:13px;font-weight:600;color:var(--text)}.profile-role{font-size:11px;color:var(--text-muted)}.dropdown{position:relative}.dropdown-menu{display:none;position:absolute;inset-inline-end:0;top:calc(100% + 2px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:-moz-max-content;width:max-content;min-width:180px;padding:6px;z-index:200;animation:fadeIn var(--transition) both}.dropdown-menu.show{display:block}.dropdown-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:500;transition:background var(--transition),color var(--transition);width:-moz-max-content;width:max-content;min-width:100%;white-space:nowrap;border:none;background:none;font-family:inherit;text-align:start}.dropdown-item:hover{background:var(--surface-2);color:var(--text)}.dropdown-item.danger:hover{background:var(--danger-bg);color:var(--danger)}.dropdown-item.warning:hover{background:var(--warning-bg);color:var(--warning)}.dropdown-item.primary:hover{background:var(--primary-light);color:var(--primary)}.dropdown-item.success:hover{background:var(--success-bg);color:var(--success)}.dropdown-separator{height:1px;background:var(--border);margin:4px 0}.content{flex:1;min-height:0;padding:12px;overflow-y:auto}.content-flush{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0;min-width:0}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:12.5px}.page-breadcrumb-bar{flex-shrink:0;padding:6px 12px;background:var(--surface-2);border-bottom:1px solid var(--border)}.page-breadcrumb-bar .breadcrumb{margin-bottom:0}.breadcrumb-item{color:var(--text-muted);transition:color var(--transition);cursor:pointer;text-decoration:none}.breadcrumb-item:hover{color:var(--primary)}.breadcrumb-item.active{color:var(--text);font-weight:500;cursor:default}.breadcrumb-sep{color:var(--text-muted);font-size:14px}[dir=rtl] .fa-chevron-left,[dir=rtl] .fa-chevron-right,[dir=rtl] .fa-angles-left,[dir=rtl] .fa-angles-right,[dir=rtl] .fa-arrow-left,[dir=rtl] .fa-arrow-right{transform:scaleX(-1)}.form-page-header{margin-bottom:20px}.form-page-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.form-page-title{font-size:22px;font-weight:700;color:var(--text);margin:0;line-height:1.25;letter-spacing:-.02em}.form-page-title.is-danger{color:var(--danger)}.form-page-badges{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.form-page-badges .status{min-width:0}.form-page-meta{display:inline-flex;align-items:center;gap:16px;flex-wrap:wrap;margin-inline-start:auto;font-size:13px;color:var(--text-muted);line-height:1.4}.form-page-meta-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.form-page-meta-item .fa-solid,.form-page-meta-item .fa-regular{font-size:12px;width:14px;min-width:14px;opacity:.9}.form-action-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;flex-wrap:wrap}.form-action-bar-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1 auto;min-width:0}.form-action-bar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-inline-start:auto}.form-action-sep{width:1px;align-self:stretch;min-height:28px;flex:0 0 1px;background:var(--border);margin:0 4px}.form-action-bar .btn,.form-action-bar a.btn,.form-action-bar button.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.form-action-bar .btn-sm{gap:6px}.form-action-bar .btn-with-icon .btn-ico,.form-action-bar .btn-sm .fa-solid,.form-action-bar .btn-sm .fa-regular{font-size:12px!important;width:14px;min-width:14px;height:14px;line-height:14px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;margin:0}.form-action-bar .btn-txt{line-height:1.2}.dropdown-item.danger{color:var(--danger)}.dropdown-item.warning{color:var(--warning)}.dropdown-item.primary{color:var(--primary)}.dropdown-item.success{color:var(--success)}:root{--icon-size-xs:10px;--icon-size-sm:12px;--icon-size-md:13px;--icon-size-lg:15px;--icon-size-xl:16px}.fa-solid,.fa-regular,.fa-brands,.fas,.far,.fab{width:1em;min-width:1em;line-height:1;vertical-align:-.125em}.icon-xs{font-size:var(--icon-size-xs)!important;width:1em!important}.icon-sm{font-size:var(--icon-size-sm)!important;width:1em!important}.icon-md{font-size:var(--icon-size-md)!important;width:1em!important}.icon-lg{font-size:var(--icon-size-lg)!important;width:1em!important}.icon-xl{font-size:var(--icon-size-xl)!important;width:1em!important}.menu-item>.fa-solid,.menu-item>.fa-regular,.menu-item>i:first-child{font-size:var(--icon-size-lg);width:20px;flex-shrink:0;text-align:center}.menu-item .menu-arrow{font-size:var(--icon-size-xs)!important;width:auto!important;margin-inline-start:auto;opacity:.7}.logo-icon .fa-solid,.logo-icon .fa-regular{font-size:var(--icon-size-md)}.header-toggle .fa-solid,.header-toggle .fa-regular{font-size:var(--icon-size-xl)}.header-search .fa-solid,.header-search .fa-regular{font-size:var(--icon-size-md)}.header-btn .fa-solid,.header-btn .fa-regular{font-size:var(--icon-size-lg)}.header-profile>.fa-solid,.header-profile>.fa-regular{font-size:var(--icon-size-xs)}.dropdown-item .fa-solid,.dropdown-item .fa-regular{font-size:var(--icon-size-sm);width:14px;flex-shrink:0}.btn .fa-solid,.btn .fa-regular{font-size:var(--icon-size-sm)}.btn-sm .fa-solid,.btn-sm .fa-regular{font-size:var(--icon-size-xs)}.btn-lg .fa-solid,.btn-lg .fa-regular,.btn-icon .fa-solid,.btn-icon .fa-regular{font-size:var(--icon-size-md)}.btn-icon.btn-sm .fa-solid,.btn-icon.btn-sm .fa-regular,.form-action-bar .btn-sm .fa-solid,.form-action-bar .btn-sm .fa-regular{font-size:var(--icon-size-sm)}.breadcrumb .fa-solid.breadcrumb-sep,.breadcrumb .fa-regular.breadcrumb-sep{font-size:9px;width:auto;opacity:.6}.form-error .fa-solid,.form-error .fa-regular,.input-prefix .fa-solid,.input-prefix .fa-regular,.input-suffix .fa-solid,.input-suffix .fa-regular{font-size:var(--icon-size-sm)}.alert .fa-solid,.alert .fa-regular,.toast .fa-solid,.toast .fa-regular{font-size:var(--icon-size-lg)}.toast-close .fa-solid,.toast-close .fa-regular{font-size:var(--icon-size-md)}.empty-state>.fa-solid,.empty-state>.fa-regular{font-size:32px;width:auto;opacity:.4}.login-logo .fa-solid,.login-logo .fa-regular{font-size:18px}.datatable-toolbar .btn-sm .fa-solid,.datatable-toolbar .btn-sm .fa-regular{font-size:var(--icon-size-xs)}.datatable-scroll .th-sort .fa-solid,.datatable-scroll .th-sort .fa-regular{font-size:var(--icon-size-xs);width:auto}.datatable-filter-clear .fa-solid,.datatable-filter-clear .fa-regular,.page-btn .fa-solid,.page-btn .fa-regular,.datatable-pagination .page-btn .fa-solid{font-size:var(--icon-size-xs)}.modal-header .btn-icon .fa-solid,.modal-header .btn-icon .fa-regular{font-size:var(--icon-size-sm)}.ui-theme-card-check{font-size:var(--icon-size-sm)!important}.theme-menu-mode .fa-solid,.theme-menu-mode .fa-regular,.stat-change .fa-solid,.stat-change .fa-regular{font-size:var(--icon-size-sm)}.grid-cols-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid-cols-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-cols-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.col-span-2{grid-column:span 2}.col-span-full{grid-column:1/-1}.mt-6{margin-top:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:visible;transition:box-shadow var(--transition),border-color var(--transition);margin-bottom:10px}.card:hover{box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border)}.card-title{font-size:14px;font-weight:600;color:var(--text)}.card-subtitle{font-size:12px;color:var(--text-muted);margin-top:1px}.card-body{padding:20px}.card-body.no-pad{padding:0}.bank-account-list{display:flex;flex-direction:column;gap:12px}.bank-account-stats{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;padding:14px 20px;color:inherit;text-decoration:none;transition:background var(--transition)}.bank-account-stats:hover{background:var(--surface-2);color:inherit}.bank-stat{display:flex;flex-direction:column;gap:3px;min-width:0}.bank-stat-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.bank-stat-value{font-size:14px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border-bottom:1px solid var(--border)}.kpi-strip--inset{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;overflow:hidden}.kpi-strip-item{padding:8px 12px;min-width:0;border-inline-end:1px solid var(--border)}.kpi-strip-item:last-child{border-inline-end:none}.kpi-strip-label{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-strip-value{font-size:16px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-strip-hint{display:block;margin-top:2px;font-size:11px;font-weight:500;color:var(--text-muted)}.kpi-strip-value--split{display:flex;align-items:baseline;gap:4px}.kpi-strip-suffix{font-size:10px;font-weight:600;letter-spacing:0;color:var(--danger);line-height:1;flex-shrink:0;margin-inline-start:auto}.kpi-strip-item.is-warning .kpi-strip-value{color:var(--warning)}.kpi-strip-item.is-danger .kpi-strip-value{color:var(--danger)}@media(max-width:900px){.kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-strip-item:nth-child(2n){border-inline-end:none}.kpi-strip-item:nth-child(-n+2){border-bottom:1px solid var(--border)}}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px;position:relative;overflow:hidden;transition:transform var(--transition),box-shadow var(--transition)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.stat-card-accent{position:absolute;top:0;inset-inline:0;height:3px}.stat-card--primary .stat-card-accent{background:linear-gradient(90deg,var(--primary),#60a5fa)}.stat-card--success .stat-card-accent{background:linear-gradient(90deg,var(--success),#4ade80)}.stat-card--warning .stat-card-accent{background:linear-gradient(90deg,var(--warning),#fcd34d)}.stat-card--danger .stat-card-accent{background:linear-gradient(90deg,var(--danger),#f87171)}.stat-icon{position:absolute;inset-inline-end:12px;top:50%;transform:translateY(-35%);font-size:52px;line-height:1;opacity:.1;pointer-events:none;z-index:0}.stat-card--primary .stat-icon{color:var(--primary)}.stat-card--success .stat-icon{color:var(--success)}.stat-card--warning .stat-icon{color:var(--warning)}.stat-card--danger .stat-icon{color:var(--danger)}.stat-label,.stat-value,.stat-change{position:relative;z-index:1}.stat-label{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-value{font-size:22px;font-weight:700;color:var(--text);line-height:1;white-space:nowrap;letter-spacing:-.02em;margin-bottom:12px}.stat-change{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600}.stat-change.up{color:var(--success)}.stat-change.down{color:var(--danger)}.stat-change i{font-size:var(--icon-size-sm)}.stat-period{font-size:11px;color:var(--text-muted);margin-inline-start:2px;font-weight:400}[data-theme=dark] .stat-icon{opacity:.15}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:10px 16px;text-align:start;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface-2)}td{padding:12px 16px;font-size:var(--font-size-base);color:var(--text-secondary);border-bottom:1px solid var(--border);vertical-align:middle;transition:background var(--transition)}tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--surface-2)}.td-name{font-weight:600;color:var(--text)}.th-sort{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;padding:0;margin:0;border:none;background:transparent;font:inherit;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color var(--transition);text-align:start}.th-sort:hover,.th-sort-active{color:var(--text)}.th-sort i{font-size:var(--icon-size-sm);opacity:.45;transition:opacity var(--transition);flex-shrink:0;margin-inline-start:auto}.th-sort:hover i,.th-sort-active i{opacity:1}.cell-avatar{display:flex;align-items:center;gap:10px}.cell-avatar-img{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.status{display:inline-flex;align-items:center;justify-content:center;min-width:4.5rem;font-size:12px;font-weight:500;line-height:1.35;padding:2px 12px;border-radius:50vh;border:none;white-space:nowrap;letter-spacing:.01em;text-align:center}.status-success{background:var(--success-bg);color:var(--success)}.status-warning{background:var(--warning-bg);color:var(--warning)}.status-danger{background:var(--danger-bg);color:var(--danger)}.status-info{background:var(--info-bg);color:var(--info)}.status-secondary{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.status-purple{background:var(--purple-bg);color:var(--purple)}.btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;height:36px;border-radius:var(--btn-radius,var(--radius));font-size:var(--font-size-base);font-weight:500;font-family:inherit;line-height:1.2;cursor:pointer;border:1px solid transparent;background:transparent;color:inherit;box-shadow:none;transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition),filter var(--transition);text-decoration:none;white-space:nowrap;flex-shrink:0}.btn:hover{text-decoration:none}.btn:focus{outline:none}.btn:focus-visible{box-shadow:var(--focus-ring,0 0 0 2px var(--surface),0 0 0 4px var(--primary))}.btn:active{transform:scale(.98)}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;pointer-events:none;box-shadow:none}.btn-sm{height:32px;padding:0 12px;font-size:12.5px;gap:6px}.btn-lg{height:40px;padding:0 18px;font-size:14px}.btn-icon{width:36px;padding:0;justify-content:center}.btn-icon.btn-sm{width:32px;height:32px;padding:0}.btn-icon.btn-lg{width:40px;height:40px;padding:0}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}.btn-primary:active{background:var(--primary-hover);border-color:var(--primary-hover);filter:brightness(.96)}.btn-primary:focus-visible{box-shadow:var(--focus-ring,0 0 0 2px var(--surface),0 0 0 4px var(--primary))}.btn-primary-soft{background:var(--primary-light);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 28%,transparent)}.btn-primary-soft:hover{background:var(--primary-light-hover);border-color:color-mix(in srgb,var(--primary) 35%,transparent);color:var(--primary)}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.btn-outline{background:var(--surface);color:var(--primary);border:1px solid var(--primary)}.btn-outline:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.btn-success{background:var(--success);color:#fff;border-color:var(--success)}.btn-success:hover{background:var(--success-hover,color-mix(in srgb,var(--success) 88%,#000));border-color:var(--success-hover,color-mix(in srgb,var(--success) 88%,#000));color:#fff}.btn-success:active{background:var(--success-hover,color-mix(in srgb,var(--success) 82%,#000));border-color:var(--success-hover,color-mix(in srgb,var(--success) 82%,#000));filter:brightness(.96)}.btn-success:focus-visible{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--success)}.btn-success-soft{background:var(--success-bg);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 28%,transparent)}.btn-success-soft:hover{background:color-mix(in srgb,var(--success) 16%,transparent);border-color:color-mix(in srgb,var(--success) 35%,transparent);color:var(--success)}.btn-warning{background:var(--warning);color:#fff;border-color:var(--warning)}.btn-warning:hover{filter:brightness(.92);color:#fff}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover{filter:brightness(.92);color:#fff}.btn-danger-soft{background:var(--danger-bg);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 28%,transparent)}.btn-danger-soft:hover{background:color-mix(in srgb,var(--danger) 16%,transparent);border-color:color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-external{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-inline-start:2px;padding:0;border:0;border-radius:6px;background:var(--primary-light,#f0e6ee);color:var(--primary,#714b67);text-decoration:none;flex-shrink:0;line-height:1;vertical-align:middle;cursor:pointer;text-transform:none;letter-spacing:0}.btn-external-flush{margin-inline-start:0}.btn-external:hover{background:color-mix(in srgb,var(--primary) 16%,var(--primary-light,#f0e6ee));color:var(--primary,#714b67);text-decoration:none}.btn-external:focus-visible{outline:none;box-shadow:var(--focus-ring,0 0 0 2px var(--surface),0 0 0 4px var(--primary))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{font-size:12.5px;font-weight:600;color:var(--text-secondary)}.form-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.form-label-row .form-label{margin-bottom:0}.form-label.required:after{content:" *";color:var(--danger)}.form-input,.form-select,.form-textarea{width:100%;height:36px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--font-size-base);transition:border-color var(--transition),box-shadow var(--transition);outline:none;font-family:inherit}[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .form-textarea,[data-theme=dark] .combo-ctrl,[data-theme=dark] .datatable-filter-field .datatable-filter-input{background-color:var(--bg)}.form-textarea{height:auto;padding:8px 12px;resize:vertical;line-height:1.5}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:var(--text-muted)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}[data-theme=dark] .form-input::-moz-placeholder,[data-theme=dark] .form-textarea::-moz-placeholder,[data-theme=dark] .combo-input::-moz-placeholder,[data-theme=dark] .datatable-filter-input::-moz-placeholder,[data-theme=dark] .header-search input::-moz-placeholder{color:var(--text-secondary);opacity:1}[data-theme=dark] .form-input::placeholder,[data-theme=dark] .form-textarea::placeholder,[data-theme=dark] .combo-input::placeholder,[data-theme=dark] .datatable-filter-input::placeholder,[data-theme=dark] .header-search input::placeholder{color:var(--text-secondary);opacity:1}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--border-strong)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.form-input.error{border-color:var(--danger)}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.form-input.num{text-align:end}.form-input.success{border-color:var(--success)}.form-hint{font-size:11.5px;color:var(--text-muted)}.html-editor{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition)}.html-editor:hover{border-color:var(--border-strong)}.html-editor:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.html-editor.error{border-color:var(--danger)}.html-editor.is-disabled{opacity:.65}.html-editor-toolbar{display:flex;align-items:center;gap:2px;padding:2px 10px;background:var(--bg);border-bottom:1px solid var(--border)}.html-editor-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;line-height:1;transition:background var(--transition),border-color var(--transition),color var(--transition)}.html-editor-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}.html-editor-btn.is-active{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.html-editor-btn:disabled{cursor:default}.html-editor-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.html-editor-btn--end{margin-inline-start:auto}.html-editor-btn--end:hover:not(:disabled){color:var(--danger);border-color:var(--danger)}.html-editor-glyph{font-family:Georgia,Times New Roman,serif;font-size:15px;font-weight:700;line-height:1}.html-editor-glyph.is-italic{font-style:italic;font-weight:600}.html-editor-glyph.is-strike{text-decoration:line-through;text-decoration-thickness:1px}.html-editor-tx{font-family:Georgia,Times New Roman,serif;font-size:14px;font-weight:600;letter-spacing:-.03em;line-height:1}.html-editor-tx i{font-style:normal;text-decoration:line-through;text-decoration-thickness:1px}.html-editor-color-mark{display:flex;flex-direction:column;align-items:center;gap:1px;font-family:Georgia,Times New Roman,serif;font-size:14px;font-weight:700;line-height:1}.html-editor-color-mark i{display:block;width:14px;height:3px;border-radius:1px;background:linear-gradient(90deg,#0d6efd 0 10%,#6610f2 10% 20%,#6f42c1 20% 30%,#d63384 30% 40%,#dc3545 40% 50%,#fd7e14 50% 60%,#ffc107 60% 70%,#198754 70% 80%,#20c997 80% 90%,#212529 90% 100%)}.html-editor-color-mark i.is-ink{background:var(--ink, #212529)}.html-editor-colors{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 10px;background:var(--surface);border-bottom:1px solid var(--border)}.html-editor-swatch{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;padding:0;border-radius:50%;border:1px solid rgba(0,0,0,.28);cursor:pointer}.html-editor-swatch.is-active{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--text)}.html-editor-swatch.is-reset{background:linear-gradient(135deg,var(--surface) 42%,var(--danger) 42% 58%,var(--surface) 58%);border-color:var(--border-strong)}.html-editor-link{display:flex;align-items:center;gap:6px;padding:8px 10px;background:var(--surface);border-bottom:1px solid var(--border)}.html-editor-link .form-input{flex:1;min-width:0;height:32px}.html-editor-body{min-height:calc(var(--rows, 4) * 1.5em + 16px);padding:8px 12px;overflow:auto;resize:vertical;outline:none;line-height:1.5;color:var(--text);background:var(--surface);word-break:break-word}.html-editor.is-disabled .html-editor-body{resize:none}.html-editor-body.is-empty:before{content:attr(data-placeholder);color:var(--text-muted);float:left;height:0;pointer-events:none}.html-editor-body p,.html-content p{margin:0 0 .35em}.html-editor-body p:last-child,.html-content p:last-child{margin-bottom:0}.html-editor-body ul,.html-editor-body ol,.html-content ul,.html-content ol{margin:.25em 0;padding-inline-start:1.25em}.html-editor-body ul,.html-content ul{list-style:disc}.html-editor-body ol,.html-content ol{list-style:decimal}.html-editor-body a,.html-content a{color:var(--primary);text-decoration:underline}.html-editor-body .ink-blue,.html-content .ink-blue{color:#0d6efd}.html-editor-body .ink-indigo,.html-content .ink-indigo{color:#6610f2}.html-editor-body .ink-purple,.html-content .ink-purple{color:#6f42c1}.html-editor-body .ink-pink,.html-content .ink-pink{color:#d63384}.html-editor-body .ink-red,.html-content .ink-red{color:#dc3545}.html-editor-body .ink-orange,.html-content .ink-orange{color:#fd7e14}.html-editor-body .ink-yellow,.html-content .ink-yellow{color:#ffc107}.html-editor-body .ink-green,.html-content .ink-green{color:#198754}.html-editor-body .ink-teal,.html-content .ink-teal{color:#20c997}.html-editor-body .ink-cyan,.html-content .ink-cyan{color:#0dcaf0}.html-editor-body .ink-white,.html-content .ink-white{color:#fff}.html-editor-body .ink-gray,.html-content .ink-gray{color:#6c757d}.html-editor-body .ink-gray-dark,.html-content .ink-gray-dark{color:#343a40}.html-editor-body .ink-light,.html-content .ink-light{color:#f8f9fa}.html-editor-body .ink-dark,.html-content .ink-dark{color:#212529}[data-theme=dark] .html-editor{background:var(--surface)}[data-theme=dark] .html-editor-toolbar{background:var(--surface-2)}[data-theme=dark] .html-editor-body{background:var(--bg);color:var(--text)}[data-theme=dark] .html-editor-body.is-empty:before{color:var(--text-muted)}[data-theme=dark] .html-editor-btn{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .html-editor-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}[data-theme=dark] .html-editor-colors,[data-theme=dark] .html-editor-link{background:var(--surface-2)}[data-theme=dark] .html-content{background:#fff;color:#212529;padding:8px 10px;border-radius:var(--radius)}@media print{.html-content [class*=ink-]{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.drop-zone{border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--surface-2);padding:18px;cursor:pointer;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);min-height:120px;display:flex;align-items:center;justify-content:center;position:relative}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px #2563eb14}.drop-zone.err{border-color:var(--danger)}.drop-zone-empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:var(--text-secondary)}.drop-zone-empty .fa-solid,.drop-zone-empty .fa-regular{font-size:22px;color:var(--text-muted)}.drop-zone-text{font-size:13px;font-weight:500;color:var(--text)}.drop-zone-hint{font-size:11.5px;color:var(--text-muted)}.drop-zone-preview{display:flex;align-items:center;justify-content:center;width:100%}.drop-zone-preview img{max-width:180px;max-height:80px;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-sm);background:var(--surface);padding:6px;border:1px solid var(--border)}.drop-zone-remove{position:absolute;top:8px;inset-inline-end:8px;width:28px;height:28px;display:grid;place-items:center;border:none;border-radius:var(--radius-sm);background:var(--surface);color:var(--danger);cursor:pointer;box-shadow:var(--shadow-sm);pointer-events:auto;transition:background var(--transition),color var(--transition)}.drop-zone-remove:hover{background:var(--danger-bg);color:var(--danger)}.drop-zone-remove .fa-solid,.drop-zone-remove .fa-regular{font-size:var(--icon-size-sm)}.form-control-readonly{display:flex;flex-direction:column;gap:4px;min-height:38px;justify-content:center;background:var(--surface-2);cursor:default}.form-error{font-size:11.5px;color:var(--danger);display:flex;align-items:center;gap:4px}.form-warning{font-size:11.5px;color:var(--warning);display:flex;align-items:flex-start;gap:4px;line-height:1.35}.form-warning .fa-solid,.form-warning .fa-regular{font-size:var(--icon-size-sm);margin-top:1px}.input-group{display:flex;align-items:stretch;position:relative;width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.input-group:focus-within{border-color:var(--primary);box-shadow:none}.input-group>.form-input,.input-group>.form-select,.input-group>.btn{border:0;border-radius:0;box-shadow:none;background:transparent}.input-group>.form-input{flex:1 1 75%;min-width:0;width:75%;border-inline-end:1px solid var(--border)}.input-group>.form-select{flex:0 0 25%;width:25%;min-width:0;background-color:var(--surface-2)}.input-group.input-group-currency>.form-select{flex:0 0 4.75rem;width:4.75rem;min-width:4.75rem}.input-group.input-group-currency>.form-input{flex:1 1 auto;width:auto;min-width:0}.input-group>.form-input:focus,.input-group>.form-select:focus,.input-group>.btn:focus,.input-group>.form-input:focus-visible,.input-group>.form-select:focus-visible{outline:none;box-shadow:none;border:0}.input-group>.form-input:focus,.input-group>.form-input:focus-visible{border-inline-end:1px solid var(--border)}.input-group>.form-input:hover,.input-group>.form-select:hover{border-color:transparent}.input-prefix{position:absolute;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:14px;display:flex;align-items:center;pointer-events:none;inset-inline-start:10px}.input-suffix{position:absolute;top:1px;bottom:1px;inset-inline-end:1px;background:var(--surface-2);border-inline-start:1px solid var(--border);padding:0 12px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:13px;font-weight:500;border-start-end-radius:calc(var(--radius) - 1px);border-end-end-radius:calc(var(--radius) - 1px);pointer-events:none}.has-prefix,.has-suffix{position:relative}.has-prefix .form-input{padding-inline-start:32px}.has-suffix .form-input{padding-inline-end:42px}.password-toggle{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:4px;width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius)}.password-toggle:hover{color:var(--text)}.password-toggle .fa-solid{font-size:var(--icon-size-sm)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}.form-row>.form-group{min-height:0}.form-row>.form-group>.html-editor,.form-row>.form-group>.form-textarea{flex:1 1 auto;min-height:0}.form-row>.form-group>.html-editor{display:flex;flex-direction:column}.form-row>.form-group>.html-editor .html-editor-body{flex:1 1 auto}.form-row>.form-group>.form-textarea{height:100%;resize:none}.passenger-identity{display:grid;grid-template-columns:100px minmax(0,1fr) minmax(0,1fr);gap:14px}.passenger-identity.has-age{grid-template-columns:100px minmax(0,1fr) minmax(0,1fr) 88px}.passenger-more-link{display:inline-block;margin-top:16px;padding:0;border:0;background:none;color:var(--primary);font:inherit;font-size:13px;font-weight:600;text-decoration:underline;cursor:pointer}.passenger-more-link:hover{color:var(--primary-hover,var(--primary))}.passenger-row-warning{display:inline-flex;align-items:center;color:var(--warning);cursor:help;flex-shrink:0}.passenger-row-warning .fa-solid,.passenger-row-warning .fa-regular{font-size:var(--icon-size-sm)}.form-row.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-row.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-row.cols-2-1-1{grid-template-columns:2fr 1fr 1fr}.form-row.cols-4-3-3{grid-template-columns:4fr 3fr 3fr}.form-row.cols-auto{grid-template-columns:repeat(auto-fit,minmax(max(240px,calc((100% - 28px) / 3)),1fr))}.sale-layout-field{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px;min-width:0}.sale-layout-field>.switch{flex:0 0 auto}.sale-layout-field>.form-input,.sale-layout-field>.form-select,.sale-layout-field>.input-group{flex:1 1 auto;min-width:0}.import-map-wrap{overflow:auto}.import-map{width:100%;border-collapse:collapse}.import-map th,.import-map td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:start;vertical-align:middle}.import-map th{font-size:12px;color:var(--text-muted);font-weight:600}.import-map td:last-child{width:16rem}.import-letter{display:inline-flex;min-width:1.5rem;margin-inline-end:8px;color:var(--text-muted);font-size:12px;font-weight:600}.import-sample{color:var(--text-secondary);font-size:13px;max-width:16rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-option{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);cursor:pointer}.import-option:hover{border-color:var(--primary)}.import-option input{width:16px;height:16px;margin-top:1px;flex-shrink:0;cursor:pointer;accent-color:var(--primary)}.import-option-title{display:block;font-size:13px;font-weight:600;color:var(--text);line-height:1.3}.import-option-hint{display:block;margin-top:3px;font-size:12px;line-height:1.45;color:var(--text-muted)}.import-drop{display:flex;align-items:center;gap:12px;margin:0;padding:16px;border:1px dashed color-mix(in srgb,var(--success) 32%,transparent);border-radius:var(--radius);background:var(--success-bg);cursor:pointer;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}.import-drop.has-file{padding:10px 14px;border-style:solid}.import-drop:hover,.import-drop.drag-over{border-color:var(--success);background:color-mix(in srgb,var(--success-bg) 72%,var(--success));box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 14%,transparent)}.import-drop.err{border-color:var(--danger);background:var(--danger-bg)}.import-drop .fa-solid,.import-drop .fa-regular{font-size:18px;color:var(--success);flex-shrink:0}.import-drop-copy{min-width:0}.import-drop-title{display:block;font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-drop-hint{display:block;margin-top:2px;font-size:12px;color:var(--text-muted)}.import-drop-note{margin:8px 0 12px;font-size:12px;line-height:1.45;color:var(--text-muted)}.import-errors{margin:0;padding-inline-start:18px;color:var(--danger);font-size:13px}.import-errors li+li{margin-top:4px}.form-col-meta{display:flex;flex-direction:column;gap:8px;min-width:0}.form-group:has(.combo.open),.card-body:has(.combo.open){position:relative;z-index:5;overflow:visible}.modal:has(.combo.open),.modal-body:has(.combo.open),.service-form-section:has(.combo.open),.service-form-section-body:has(.combo.open),.form-row:has(.combo.open){overflow:visible}.ui-tooltip{position:relative;display:block;max-width:100%}.ui-tooltip-target{display:block}.ui-tooltip-target:focus{outline:none}.ui-tooltip-target:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.ui-tooltip-bubble{position:absolute;z-index:40;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:-moz-max-content;width:max-content;max-width:280px;padding:6px 8px;border-radius:var(--radius-sm);background:var(--surface,#fff);color:var(--primary);font-size:12px;font-weight:400;line-height:1.35;text-align:center;border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);box-shadow:0 6px 18px #00000014;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease}.ui-tooltip-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--surface,#fff)}.ui-tooltip--right .ui-tooltip-bubble{inset:50% auto auto;inset-inline-start:calc(100% + 8px);transform:translateY(-50%)}.ui-tooltip--right .ui-tooltip-bubble:after{top:50%;left:auto;right:auto;inset-inline-start:auto;inset-inline-end:100%;transform:translateY(-50%);border:5px solid transparent;border-top-color:transparent;border-inline-end-color:var(--surface,#fff)}.ui-tooltip:hover .ui-tooltip-bubble,.ui-tooltip:focus-within .ui-tooltip-bubble{opacity:1;visibility:visible}.form-label-hint.ui-tooltip{display:inline-flex;margin-inline-start:6px;vertical-align:middle;max-width:none}.form-label-hint .ui-tooltip-target{display:inline-flex;align-items:center;line-height:1}.form-label-hint-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--primary);cursor:help}.form-label-hint-icon .fa-solid,.form-label-hint-icon .fa-regular{font-size:12px;width:14px;min-width:14px;color:inherit}.form-label-hint .ui-tooltip-bubble{text-align:start;z-index:1060}.tooltip-lines-tip.ui-tooltip{display:inline;max-width:none}.tooltip-lines-tip .ui-tooltip-target{display:inline}.tooltip-lines-tip .ui-tooltip-bubble{text-align:start;max-width:none;width:-moz-max-content;width:max-content;padding:8px 12px;font-size:12.5px;font-weight:400;line-height:1.5;border-radius:var(--radius)}.tooltip-kv{display:grid;grid-template-columns:auto 1fr;-moz-column-gap:14px;column-gap:14px;row-gap:0;margin:0;border:0}.tooltip-kv dt{margin:0;font-weight:700;white-space:nowrap}.tooltip-kv dd{margin:0;font-weight:400}.combo{position:relative}.combo-with-addon{display:flex;align-items:stretch}.combo-with-addon .combo-ctrl{flex:1;min-width:0;border-start-end-radius:0;border-end-end-radius:0;border-inline-end:none}button.combo-addon{flex:0 0 36px;display:flex;align-items:center;justify-content:center;margin:0;padding:0;font:inherit;line-height:1;border:1px solid var(--border);border-inline-start:none;border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:var(--radius);border-end-end-radius:var(--radius);background:var(--surface-2);color:var(--text-secondary);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.combo-addon:hover{background:var(--surface);color:var(--primary)}.combo.open.combo-with-addon .combo-addon{border-color:var(--primary)}.combo.err.combo-with-addon .combo-addon{border-color:var(--danger)}.combo.disabled .combo-addon{opacity:.65;cursor:not-allowed;pointer-events:none}.combo-ctrl{min-height:36px;display:flex;align-items:center;padding:4px 32px 4px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:text;transition:border-color var(--transition),box-shadow var(--transition)}.combo.open .combo-ctrl{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.combo-clear{position:absolute;inset-inline-end:6px;top:50%;transform:translateY(-50%);width:22px;height:22px;margin:0;padding:0;border:none;border-radius:var(--radius);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.combo-clear:hover{color:var(--text);background:var(--surface-2)}.combo-with-addon .combo-clear{inset-inline-end:42px}.combo-input{border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--font-size-base);flex:1;min-width:60px;color:var(--text);height:26px}.combo-input::-moz-placeholder{color:var(--text-muted)}.combo-input::placeholder{color:var(--text-muted)}.combo-input::-webkit-search-cancel-button,.combo-input::-webkit-search-decoration{display:none;-webkit-appearance:none;appearance:none}.combo-pop{position:absolute;inset-inline:0;top:calc(100% + 5px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:6px;z-index:40;max-height:280px;overflow:auto;display:none;flex-direction:column;gap:2px}.combo.open .combo-pop{display:flex}.opt{display:flex;align-items:center;gap:9px;padding:4px 10px;border-radius:var(--radius-sm);font-size:13px;line-height:1.35;color:var(--text);cursor:pointer;transition:background var(--transition),color var(--transition)}.opt:hover{background:var(--surface-2)}.opt.active{background:var(--primary-light);color:var(--primary)}.opt.sel{color:var(--primary);font-weight:600}.opt.sel.active,.opt.sel:hover{background:var(--primary-light)}.opt-empty{padding:10px;font-size:12.5px;color:var(--text-muted);text-align:center}.opt-main{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.opt-label{font-weight:500}.opt-code{margin-inline-start:auto;flex-shrink:0;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:end}.opt-hint{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.combo.err .combo-ctrl{border-color:var(--danger)}.combo.err.open .combo-ctrl{box-shadow:0 0 0 3px #dc26261f}.combo.disabled .combo-ctrl{opacity:.65;cursor:not-allowed;background:var(--surface-2)}.customer-summary{margin-top:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.customer-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;margin:0}.customer-summary-item{display:contents}.customer-summary-item dt{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.customer-summary-item dd{margin:0;font-size:12.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-summary-link{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:12px;font-weight:500;color:var(--primary);text-decoration:none}.customer-summary-link:hover{text-decoration:underline}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;padding-inline-end:20px;background-position:var(--inline-end) 4px center}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-item,.radio-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--text-secondary)}.checkbox-item input,.radio-item input{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:36px}.switch-track{width:36px;height:20px;border-radius:10px;background:var(--border-strong);transition:background var(--transition),opacity var(--transition);position:relative;flex-shrink:0;align-self:center}.switch-track:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a1f;transition:inset-inline-start var(--transition)}.switch input{display:none}.switch input:checked+.switch-track{background:var(--primary)}.switch input:checked+.switch-track:after{inset-inline-start:19px}.switch input:disabled+.switch-track{opacity:.55;cursor:not-allowed}.switch input:disabled~.switch-label{opacity:.65;cursor:not-allowed}.switch:has(input:disabled){cursor:not-allowed}.switch-label{font-size:12.5px;font-weight:600;color:var(--text-secondary);line-height:20px;margin:0;align-self:center}.form-switch{margin-top:0}.form-switch-with-hint{display:inline-flex;align-items:center;gap:2px;flex-wrap:wrap}.form-switch-with-hint .form-label-hint{margin-inline-start:0}.switch.travel-type-row{min-height:0}.form-switch.mb-4,.line-items-editor{margin-bottom:16px}.line-items-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.line-items-scroll{overflow-x:auto}.line-items-table{width:100%;border-collapse:collapse}.line-items-table th,.line-items-table td{padding:3px 6px;text-align:start}.line-items-table th:first-child,.line-items-table td:first-child{padding-inline-start:0}.line-items-table th:last-child,.line-items-table td:last-child{padding-inline-end:0}.line-items-table thead th{font-size:12.5px;font-weight:600;color:var(--text-secondary);white-space:nowrap;padding-bottom:8px;vertical-align:bottom}.line-items-table tbody td{vertical-align:middle}.line-items-table tbody td:first-child{vertical-align:top}.line-items-table .col-qty{width:70px}.line-items-table .col-price{width:90px}.line-items-table .col-tax{width:70px}.line-items-table .col-total{width:100px;text-align:end;white-space:nowrap}.line-items-table .col-action{width:32px;text-align:center}.line-items-total{font-size:12px;font-weight:600;color:var(--text-secondary)}.line-items-grand-total{font-size:13px;font-weight:700;color:var(--text-secondary);border-top:1px solid var(--border);padding-top:10px!important}.related-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.related-link{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius);background:var(--surface-2);font-size:12px;color:var(--text-secondary);text-decoration:none;transition:background var(--transition),color var(--transition)}.related-link:hover{background:var(--primary-light);color:var(--primary)}.finance-panel{margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.finance-panel-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:12px}.finance-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.finance-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:var(--radius);background:var(--surface-2);font-size:12.5px}.finance-row-meta{color:var(--text-muted);font-size:11.5px}.inline-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;align-items:end}.mini-chart{display:flex;align-items:flex-end;gap:2px;height:32px}.bar{background:var(--primary);border-radius:2px 2px 0 0;flex:1;opacity:.5;transition:opacity var(--transition),height var(--transition)}.bar.active,.mini-chart:hover .bar{opacity:1}.chart-area{height:200px;position:relative;overflow:hidden}.chart-svg{width:100%;height:100%}.modal-backdrop{display:none;position:fixed;inset:0;background:#0f172a73;z-index:500;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:16px}.modal-backdrop.show{display:flex;animation:fadeIn var(--transition) both}.modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:540px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp var(--transition-slow) both;border:1px solid var(--border)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);min-height:44px;flex-shrink:0}.modal-title{font-size:14px;font-weight:700;color:var(--text);line-height:1.3}.modal-body{padding:16px;flex:1;min-height:0;overflow-y:auto}.modal-body.modal-body-flush{padding:0;display:flex;flex-direction:column;overflow:hidden}.modal-body-flush .datatable:not(.datatable-full):not(.datatable-compact){flex:1;min-height:300px}.modal-body-flush .datatable:not(.datatable-full):not(.datatable-compact) .datatable-scroll{flex:1 1 auto;min-height:0;height:auto;max-height:none}.modal-body-flush .datatable:not(.datatable-full):not(.datatable-compact) .datatable-footer{margin-top:0}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 16px;border-top:1px solid var(--border);flex-shrink:0}.confirm-dialog{max-width:380px;border-radius:var(--radius-lg);overflow:hidden}.confirm-dialog.confirm-dialog-wide{max-width:520px}.confirm-dialog-main{display:flex;align-items:flex-start;gap:12px;padding:14px 14px 0;position:relative}.confirm-dialog-icon{width:36px;height:36px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:15px}.confirm-dialog-icon-danger{background:var(--danger-bg);color:var(--danger)}.confirm-dialog-icon-success{background:var(--success-bg);color:var(--success)}.confirm-dialog-icon-warning{background:var(--warning-bg);color:var(--warning)}.confirm-dialog-icon-primary{background:var(--primary-light);color:var(--primary)}.confirm-dialog-content{flex:1;min-width:0;padding-inline-end:24px}.confirm-dialog-title{font-size:14px;font-weight:700;color:var(--text);line-height:1.35;margin:0 0 4px}.confirm-dialog-message{font-size:12.5px;color:var(--text-secondary);line-height:1.45;margin:0}.confirm-dialog-close{position:absolute;top:10px;inset-inline-end:10px;width:28px;height:28px;color:var(--text-muted)}.confirm-dialog-close:hover{color:var(--text)}.confirm-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 14px 14px}.confirm-dialog-actions-left{margin-inline-end:auto}.confirm-dialog-danger{border-top:3px solid var(--danger)}.confirm-dialog-success{border-top:3px solid var(--success)}.confirm-dialog-warning{border-top:3px solid var(--warning)}.confirm-dialog-primary{border-top:3px solid var(--primary)}.tabs{display:flex;align-items:stretch;border-bottom:1px solid var(--border);gap:0;background:var(--surface);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab-item{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:500;font-family:inherit;line-height:1.2;color:var(--text-muted);background:transparent;border:0;border-bottom:4px solid transparent;cursor:pointer;white-space:nowrap;margin-bottom:-1px;transition:color var(--transition),border-color var(--transition)}.tab-item:hover{color:var(--text)}.tab-item.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-item:focus-visible{outline:none;box-shadow:var(--focus-ring)}.tab-count{font-size:11px;font-weight:600;line-height:1;border-radius:10px;padding:1px 7px;background:var(--primary-light);color:var(--primary)}.tab-content{display:none;padding:16px 0}.tab-content.active{display:block}.steps{--steps-arrow:10px;display:flex;list-style:none;margin:0 0 12px;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.steps-item{position:relative;display:flex;align-items:center;gap:10px;flex:1 1 0;min-width:0;padding:10px calc(16px + var(--steps-arrow));font-size:13px;font-weight:500;color:var(--text-muted);background:var(--surface);white-space:nowrap;overflow:visible;text-overflow:ellipsis;z-index:1;border-inline-end:1px solid var(--border)}.steps-item:first-child{padding-inline-start:16px}.steps-item:last-child{padding-inline-end:16px;border-inline-end:0}.steps-item:not(:last-child){border-inline-end:0}.steps-item:not(:last-child):after{content:"";position:absolute;top:50%;inset-inline-end:calc(var(--steps-arrow) * -1);width:calc(var(--steps-arrow) * 2);height:calc(var(--steps-arrow) * 2);background:inherit;border-block-start:1px solid var(--border);border-inline-end:1px solid var(--border);transform:translateY(-50%) rotate(45deg);z-index:2;box-sizing:border-box;pointer-events:none}[dir=rtl] .steps-item:not(:last-child):after{border-inline-end:0;border-inline-start:1px solid var(--border);transform:translateY(-50%) rotate(-45deg)}.steps-item:nth-child(1){z-index:5}.steps-item:nth-child(2){z-index:4}.steps-item:nth-child(3){z-index:3}.steps-item:nth-child(4){z-index:2}.steps-item:nth-child(5){z-index:1}.steps-dot{width:20px;height:20px;border-radius:50%;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0;color:var(--text-muted);background:var(--surface)}.steps-item.is-done{background:var(--primary-light);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,transparent)}.steps-item.is-done .steps-dot{background:var(--primary);border-color:var(--primary);color:#fff}.steps-item.is-done:not(:last-child):after{border-block-start-color:color-mix(in srgb,var(--primary) 28%,transparent);border-inline-end-color:color-mix(in srgb,var(--primary) 28%,transparent)}[dir=rtl] .steps-item.is-done:not(:last-child):after{border-inline-start-color:color-mix(in srgb,var(--primary) 28%,transparent)}.steps-item.is-current{background:#f3f3f3;color:var(--primary)}.steps-item.is-current .steps-dot{border-color:var(--primary);color:var(--primary);background:transparent}.steps-item.is-accepted{background:var(--success-bg);color:var(--success)}.steps-item.is-accepted .steps-dot{background:transparent;border-color:var(--success);color:var(--success)}.steps-item.is-done:has(+.is-accepted):after{border-block-start-color:color-mix(in srgb,var(--success) 28%,transparent);border-inline-end-color:color-mix(in srgb,var(--success) 28%,transparent)}[dir=rtl] .steps-item.is-done:has(+.is-accepted):after{border-inline-start-color:color-mix(in srgb,var(--success) 28%,transparent)}.alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.alert i{font-size:var(--icon-size-lg);flex-shrink:0;margin-top:1px}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 22%,transparent)}.alert-warning{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(217,119,6,.2)}.alert-danger{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(220,38,38,.2)}.alert-info{background:var(--info-bg);color:var(--info);border:1px solid rgba(8,145,178,.2)}.alert-text{flex:1}.alert-text a{font-weight:700;text-decoration:underline;color:var(--primary)}.alert-title{font-weight:700;margin-bottom:2px}.toast-container{position:fixed;top:24px;inset-inline-end:24px;z-index:600;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{--toast-enter:24px;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-lg);font-size:13px;font-weight:500;box-shadow:var(--shadow-lg);pointer-events:all;animation:slideInEnd .3s both;min-width:260px;max-width:360px}[dir=rtl] .toast{--toast-enter:-24px}.toast i{font-size:var(--icon-size-lg);flex-shrink:0}.toast-success{background:var(--success-bg);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 22%,transparent)}.toast-warning{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(217,119,6,.2)}.toast-error,.toast-danger{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(220,38,38,.2)}.toast-info{background:var(--info-bg);color:var(--info);border:1px solid rgba(8,145,178,.2)}.toast-close{margin-inline-start:auto;background:none;border:none;color:currentColor;opacity:.5;cursor:pointer;font-size:var(--icon-size-md);padding:0;display:flex}.toast-close:hover{opacity:1}.progress{height:8px;background:var(--surface-2);border-radius:10px;overflow:hidden}.progress-bar{height:100%;border-radius:10px;transition:width .5s cubic-bezier(.4,0,.2,1)}.pagination{display:flex;align-items:center;gap:4px}.page-btn{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);font-family:inherit;font-weight:500}.page-btn:hover:not(.active):not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.page-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-btn-ellipsis{cursor:default;border-color:transparent;background:transparent}.datatable{width:100%;max-width:100%;display:flex;flex-direction:column;background:var(--surface);min-height:0;min-width:0;overflow:hidden;font-size:var(--font-size-base)}.datatable-full{flex:1;min-height:0;border:none;border-radius:0}.datatable-full .datatable-scroll{flex:1;min-height:0;height:auto;max-height:none}.datatable-full:not(.datatable-compact){min-height:0}.datatable:not(.datatable-full):not(.datatable-compact){min-height:calc(var(--datatable-body-height, 520px))}.datatable-compact .datatable-scroll{max-height:none;height:auto;flex:none}.datatable-header{padding:10px 12px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:8px;flex-shrink:0;width:100%;max-width:100%;box-sizing:border-box}.datatable-heading{display:flex;flex-direction:column;gap:2px}.datatable-title{font-size:15px;font-weight:600;color:var(--text);margin:0;line-height:1.25}.datatable-subtitle{font-size:11px;color:var(--text-muted);margin:0;line-height:1.3}.datatable-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.datatable-toolbar-compact{justify-content:flex-end;padding:8px 12px;border-bottom:1px solid var(--border)}.datatable-toolbar-right-only{margin-inline-start:auto}.datatable-toolbar-left,.datatable-toolbar-right{display:flex;align-items:center;gap:6px}.datatable-chart-select{width:auto;min-width:140px;height:26px;padding-block:0;padding-inline:8px 28px;font-size:var(--font-size-base)}.datatable-toolbar .btn-sm{height:32px;padding:0 12px;font-size:12.5px;gap:6px}.datatable-toolbar .btn-icon.btn-sm{width:32px;height:32px;padding:0}.datatable-selection-count{font-size:11px;font-weight:600;color:var(--primary);padding:2px 8px;background:var(--primary-light);border-radius:var(--radius-sm)}.datatable-scroll{overflow:auto;overscroll-behavior:contain;flex:1 1 auto;min-height:0;min-width:0;max-width:100%;width:100%;height:var(--datatable-body-height,520px);max-height:var(--datatable-body-height,520px);-webkit-overflow-scrolling:touch}.datatable-scroll table{border-collapse:separate;border-spacing:0;table-layout:fixed}.datatable-scroll th,.datatable-scroll td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:0}.datatable-scroll th.td-actions,.datatable-scroll td.td-actions,.datatable-scroll .td-actions-wrap{overflow:visible;max-width:none;white-space:normal}.datatable-scroll th{position:sticky;font-size:var(--font-size-base);font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-secondary);padding:6px 10px;text-align:start;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface-2);z-index:2;box-shadow:0 1px 0 var(--border);vertical-align:middle}.datatable-scroll td{padding:5px 10px;font-size:var(--font-size-base);color:var(--text-secondary);border-bottom:1px solid var(--border);vertical-align:middle;line-height:1.35}.datatable-scroll .th-sort{font-size:var(--font-size-base);font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-secondary)}.datatable-scroll .th-sort:hover,.datatable-scroll .th-sort-active{color:var(--text)}.datatable-scroll .th-sort i{font-size:var(--icon-size-xs);opacity:.35}.datatable-scroll .th-sort:hover i,.datatable-scroll .th-sort-active i{opacity:.75}.datatable-scroll thead tr:first-child th{top:0;z-index:3;padding:6px 10px;padding-inline-end:10px}.datatable-scroll thead tr:first-child th .th-sort{padding-inline-end:2px}.datatable-scroll thead tr:first-child th.datatable-col-draggable,.datatable-scroll thead tr:first-child th.datatable-col-draggable .th-sort{cursor:pointer}.datatable-scroll thead tr:first-child th.is-col-dragging{opacity:.55}.datatable-scroll thead tr:first-child th.is-drop-before:before,.datatable-scroll thead tr:first-child th.is-drop-after:after{content:"";position:absolute;top:0;bottom:0;width:2px;background:var(--primary);z-index:5;pointer-events:none}.datatable-scroll thead tr:first-child th.is-drop-before:before{inset-inline-start:0}.datatable-scroll thead tr:first-child th.is-drop-after:after{inset-inline-end:0}body.datatable-col-dragging,body.datatable-col-dragging *{cursor:pointer!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.datatable-col-ghost{position:fixed;z-index:80;margin:0;pointer-events:none;box-sizing:border-box;display:flex;align-items:center;overflow:hidden;white-space:nowrap;background:var(--table-header-bg,var(--surface-2));color:var(--text-secondary);border:1px solid var(--primary);border-radius:var(--radius-sm);box-shadow:0 8px 20px #00000029;opacity:.96;font-size:var(--font-size-base);font-weight:500;text-transform:none;letter-spacing:0}.datatable-col-ghost .th-sort{text-transform:none;letter-spacing:0;font-size:var(--font-size-base);font-weight:500;color:var(--text-secondary)}.datatable-col-ghost .datatable-resizer{display:none}.datatable-scroll thead tr.filter-row th{top:31px;z-index:2;background:var(--surface);padding:3px 8px;font-weight:400;font-size:var(--font-size-base);box-shadow:0 1px 0 var(--border);overflow:visible;max-width:none;white-space:normal}.datatable-filter-field{position:relative;width:100%}.datatable-filter-field .datatable-filter-input{width:100%;height:26px;padding:0 6px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--font-size-base);background:var(--surface);color:var(--text);font-family:inherit;outline:none;transition:border-color var(--transition);line-height:1.2}.datatable-filter-field.has-value .datatable-filter-input{padding-inline-end:24px}.datatable-filter-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb14}.datatable-filter-input::-moz-placeholder{color:var(--text-muted);font-size:var(--font-size-base)}.datatable-filter-input::placeholder{color:var(--text-muted);font-size:var(--font-size-base)}.datatable-filter-clear{position:absolute;inset-inline-end:3px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);padding:0;font-family:inherit;transition:color var(--transition),background var(--transition)}.datatable-filter-clear:hover{color:var(--text);background:var(--surface-2)}.datatable-filter-clear i{font-size:var(--icon-size-xs);line-height:1}.datatable-scroll tbody tr:hover td{background:var(--surface-2)}.datatable-scroll tbody tr.datatable-row-clickable{cursor:pointer}.datatable-scroll tbody tr.datatable-row-clickable:hover td{background:var(--primary-light)}.datatable-scroll tbody tr:last-child td{border-bottom:none}.datatable-scroll .td-name{font-weight:600;color:var(--text);font-size:var(--font-size-base)}.datatable .status{font-size:12px;min-width:4.5rem;padding:1px 10px;line-height:1.35}.datatable .btn-icon.btn-sm{width:28px;height:28px;padding:0;font-size:var(--icon-size-sm)}.datatable-row-selected td{background:var(--primary-light)!important}.datatable-empty{text-align:center;padding:24px 12px!important;color:var(--text-muted);font-size:12px}.datatable-empty-state{flex:1;display:flex;align-items:center;justify-content:center;min-height:240px}.datatable-footer{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0;gap:8px;flex-wrap:wrap;position:relative;z-index:4;margin-top:auto;font-size:var(--font-size-base);width:100%;max-width:100%;box-sizing:border-box}.datatable-footer-left,.datatable-footer-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.datatable-page-size{display:flex;align-items:center;gap:6px;font-size:var(--font-size-base);color:var(--text-muted);white-space:nowrap}.datatable-page-select{width:auto!important;min-width:60px;height:26px!important;padding-block:0!important;padding-inline:6px 24px!important;font-size:var(--font-size-base)!important}.datatable-range{font-size:var(--font-size-base);color:var(--text-muted);white-space:nowrap;font-weight:500}.datatable-pagination{flex-shrink:0;gap:2px}.datatable-pagination .page-btn{width:28px;height:28px;font-size:var(--font-size-base)}.datatable-resizer{position:absolute;inset-inline-end:0;top:0;height:100%;width:4px;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;opacity:0;transition:opacity var(--transition);background:var(--primary)}.datatable-scroll th:hover .datatable-resizer,.datatable-resizer.is-resizing{opacity:.35}.datatable-resizer.is-resizing{opacity:.6}.datatable-full .datatable-subtitle{display:none}.datatable-checkbox{width:14px;height:14px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.datatable-columns-menu{min-width:200px;max-height:260px;overflow-y:auto}.datatable-column-check{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.datatable-column-check:hover{background:var(--surface-2)}.datatable-column-check input{accent-color:var(--primary);cursor:pointer}.datatable .td-num{text-align:end;font-variant-numeric:tabular-nums;font-size:var(--font-size-base)}.datatable th.td-num .th-sort{justify-content:flex-end}.datatable th.td-num .datatable-filter-input,.datatable .datatable-filter-input[type=number]{text-align:end}[data-tooltip]{position:relative}[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);inset-inline:0;width:-moz-max-content;width:max-content;margin-inline:auto;background:var(--surface,#fff);color:var(--primary);font-size:11.5px;font-weight:500;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);box-shadow:0 6px 18px #00000014;white-space:nowrap;pointer-events:none;z-index:300;animation:fadeIn .15s both}[data-tooltip].tooltip-lines:hover:after{white-space:pre-line;text-align:start;line-height:1.5;padding:8px 12px;background:var(--surface,#fff);color:var(--primary);font-size:12.5px;font-weight:400;border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);border-radius:var(--radius);box-shadow:0 6px 18px #00000014}[data-tooltip].tooltip-lines:hover:before{display:none}[data-tooltip]:hover:before{content:"";position:absolute;bottom:calc(100% + 2px);inset-inline:0;width:0;margin-inline:auto;border:4px solid transparent;border-top-color:var(--surface,#fff);pointer-events:none;z-index:300}[data-tooltip].tooltip-warning:hover:after{background:var(--surface,#fff);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 35%,var(--border));box-shadow:var(--shadow);font-weight:500;max-width:260px;white-space:normal;text-align:start;line-height:1.4;padding:8px 10px}[data-tooltip].tooltip-warning:hover:before{border-top-color:var(--surface,#fff)}.header-btn[data-tooltip]:hover:after{bottom:auto;top:calc(100% + 6px)}.header-btn[data-tooltip]:hover:before{bottom:auto;top:calc(100% + 2px);border-top-color:transparent;border-bottom-color:var(--surface,#fff)}.spinner{width:20px;height:20px;border:2.5px solid var(--border-strong);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.spinner-sm{width:14px;height:14px;border-width:2px}.spinner-lg{width:32px;height:32px;border-width:3px}.activity-item{display:flex;gap:12px;padding:10px 0}.activity-item+.activity-item{border-top:1px solid var(--border)}.activity-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.activity-info{flex:1;min-width:0}.activity-text{font-size:13px;color:var(--text-secondary);line-height:1.4}.activity-time{font-size:11.5px;color:var(--text-muted);margin-top:2px}.vehicle-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.vehicle-row:last-child{border-bottom:none;padding-bottom:0}.vehicle-icon{width:38px;height:38px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:20px}.flex{display:flex}.flex-center{display:flex;align-items:center}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.text-sm{font-size:12px}.text-xs{font-size:11px}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-muted{color:var(--text-muted)}.text-primary-c{color:var(--primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.full-width{width:100%}.section-title{font-size:16px;font-weight:700;color:var(--text);margin-bottom:16px}.divider{height:1px;background:var(--border);margin:20px 0}.empty-state{text-align:center;padding:40px 20px;color:var(--text-muted)}.empty-state>i{font-size:32px;margin-bottom:12px;display:block;opacity:.4}.empty-state p{font-size:13px;margin:0 0 16px}.empty-state .btn{margin-top:4px}.component-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:16px 0;border-bottom:1px solid var(--border)}.component-row:last-child{border-bottom:none}.component-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:12px;margin-top:20px}.component-section-title:first-child{margin-top:0}.page-section{display:none}.page-section.active{display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInEnd{0%{opacity:0;translate:var(--toast-enter) 0}to{opacity:1;translate:0 0}}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg);overflow:auto}.login-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}.login-header{padding:32px 32px 24px;text-align:center;border-bottom:1px solid var(--border)}.login-logo{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--primary);border-radius:var(--radius);color:#fff;font-size:18px;margin-bottom:16px;overflow:hidden}.login-logo.has-logo{width:min(240px,100%);height:auto;background:transparent;border-radius:0;overflow:visible}.login-logo.has-logo img{width:100%;height:auto;max-height:192px;-o-object-fit:contain;object-fit:contain}.login-title{font-size:20px;font-weight:700;color:var(--text);margin-bottom:4px}.login-subtitle{font-size:13px;color:var(--text-muted)}.login-body{padding:24px 32px 32px}.login-body .form-group{margin-bottom:16px}.login-options{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.login-footer{padding:16px 32px;background:var(--surface-2);border-top:1px solid var(--border);text-align:center;font-size:12px;color:var(--text-muted)}body.login-body-page{display:block;overflow:auto;height:auto;min-height:100vh}body.login-body-page #app{display:block;width:100%;min-height:100vh;height:auto;overflow:visible}@media(max-width:1100px){.grid-cols-4{grid-template-columns:repeat(2,1fr)}.form-row.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.grid-cols-3,.grid-cols-2,.form-row,.form-row.cols-3,.form-row.cols-4,.form-row.cols-auto,.form-row.cols-2-1-1,.form-row.cols-4-3-3,.address-place,.identity-person,.identity-org,.identity-fiscal,.customer-summary-grid{grid-template-columns:1fr}.col-span-2{grid-column:span 1}}@media(max-width:768px){.sidebar{inset-inline-start:calc(-1 * var(--sidebar-width));width:var(--sidebar-width)!important}.sidebar.mobile-open{inset-inline-start:0}.main{margin-inline-start:0!important}.grid-cols-4{grid-template-columns:1fr 1fr}.content{padding:12px}.content-flush{padding:0}.header{padding:0 12px;gap:8px}.profile-name,.profile-role{display:none}}.modal-sm{max-width:300px}.modal-md{max-width:720px}.modal-lg{max-width:960px}.modal-xl{max-width:1140px}.modal-xxl{max-width:1320px}.modal-subtitle{font-size:12px;color:var(--text-muted);margin-top:2px;font-weight:400;line-height:1.3}.form-section{margin-bottom:20px;padding-bottom:4px;border-bottom:1px solid var(--border)}.form-section:last-child{border-bottom:none;margin-bottom:0}.form-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:12px}.service-type-picker{display:flex;flex-direction:column;gap:12px}.service-type-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-type-option{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s}.service-type-option:hover{border-color:var(--primary);color:var(--primary)}.service-type-option.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.booking-hub-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;padding:16px 18px;margin-bottom:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.booking-hub-summary-item{display:flex;flex-direction:column;gap:4px;min-width:0}.booking-hub-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.booking-hub-summary-item strong{font-size:14px;color:var(--text)}.booking-services-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.booking-services-toolbar-meta{font-size:13px;color:var(--text-muted)}.booking-services-table-wrap{overflow:visible;border:1px solid var(--border);border-radius:var(--radius)}.booking-services-table{width:100%;border-collapse:collapse;font-size:13px}.booking-services-table th,.booking-services-table td{padding:10px 12px;text-align:start;border-bottom:1px solid var(--border);vertical-align:middle}.booking-services-table th.is-amount,.booking-services-table td.is-amount{text-align:end;font-variant-numeric:tabular-nums}.booking-services-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--surface-2)}.booking-services-row{cursor:pointer;transition:background .12s}.booking-services-row:hover{background:var(--surface-2)}.booking-services-row:last-child td{border-bottom:none}.booking-services-primary{font-weight:700;color:var(--primary);white-space:nowrap}.booking-services-route{max-width:260px}.booking-services-stops{display:block;font-size:11px;color:var(--text-muted);margin-top:2px}.booking-services-actions{width:50px;white-space:nowrap}.service-type-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary)}.booking-details-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer}.booking-details-toggle:hover{color:var(--text);background:var(--surface-2)}.booking-details-body{border-top:1px solid var(--border)}.booking-details-actions{display:flex;justify-content:flex-end;margin-top:16px}.booking-invoice-list{display:flex;flex-direction:column}.booking-invoice-item{display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid var(--border);color:inherit;text-decoration:none;transition:background .12s}.booking-invoice-item:last-child{border-bottom:none}.booking-invoice-item:hover{background:var(--surface-2)}.booking-invoice-amount{margin-inline-start:auto;font-weight:700}.booking-lock-banner{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px}.booking-services-lock-hint{color:var(--text-muted);font-size:12px}@media(max-width:768px){.booking-services-table-wrap{overflow-x:auto}.service-type-options{grid-template-columns:1fr}.booking-services-table th:nth-child(5),.booking-services-table td:nth-child(5),.booking-services-table th:nth-child(7),.booking-services-table td:nth-child(7){display:none}}@media(max-width:480px){.grid-cols-4{grid-template-columns:1fr}.header-search{max-width:140px}}.booking-picker{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.booking-picker-item{display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer}.pipeline-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pipeline-stat{padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);text-align:center}.pipeline-stat strong{display:block;font-size:20px;color:var(--text)}.pipeline-stat span{font-size:12px;color:var(--text-muted)}.planning-list{display:flex;flex-direction:column;gap:10px}.planning-item{display:grid;grid-template-columns:160px 1fr auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:inherit;text-decoration:none;transition:background .15s,border-color .15s}.planning-item:hover{background:var(--surface-2);border-color:var(--primary)}.planning-item-main{display:flex;flex-direction:column;gap:4px;font-size:13px}.planning-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:12px;color:var(--text-muted)}.planning-item-time{font-size:13px;font-weight:600;color:var(--primary)}@media(max-width:768px){.pipeline-stats{grid-template-columns:repeat(2,1fr)}.planning-item{grid-template-columns:1fr}.planning-item-meta{align-items:flex-start}}.two-factor-qr{display:flex;width:-moz-fit-content;width:fit-content;margin:12px auto;background:#fff;padding:12px;border-radius:var(--radius)}.two-factor-qr svg{width:192px;height:192px;display:block}.two-factor-secret{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.04em;word-break:break-all}.two-factor-codes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.two-factor-codes code{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.otp-code{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:4px}.otp-group{display:flex;gap:8px}.otp-box{width:42px;height:48px;padding:0;text-align:center;font-size:20px;font-weight:600;color:#1a1a1a;background:#fff;border:1.5px solid #a15c07;border-radius:10px;caret-color:#a15c07}.otp-box:focus{outline:none;border-color:#7c3f05;box-shadow:0 0 0 3px #a15c072e}.otp-code.has-error .otp-box{border-color:var(--danger)}.otp-dash{width:16px;height:2px;border-radius:1px;background:#c45c4c;flex:none}.otp-switch{display:block;margin:14px auto 0;padding:0;border:0;background:none;color:var(--primary);font-size:13px;cursor:pointer}.otp-switch:hover{text-decoration:underline}@media(max-width:420px){.otp-box{width:36px;height:42px;font-size:18px}.otp-group{gap:6px}.otp-code{gap:8px}}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;align-items:stretch}.module-card{height:100%;margin-bottom:0}.module-card .card-body{height:100%;display:flex;flex-direction:column;gap:8px;text-align:start}.module-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.module-card-title{font-size:14px;font-weight:600;line-height:1.3;color:var(--text)}.module-card-desc{margin:0;font-size:13px;line-height:1.45;color:var(--text-muted)}.module-card-meta{margin-top:auto;font-size:12px;line-height:1.45;color:var(--text)}@media(max-width:700px){.module-grid{grid-template-columns:1fr}}.quote-history{margin:0}.quote-history td{vertical-align:top}.quote-history-when{font-size:12.5px;line-height:1.4;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.quote-history-status{white-space:nowrap;width:1%}.quote-history th.quote-history-agent,.quote-history td.quote-history-agent{text-align:end;white-space:nowrap;font-weight:400;width:1%}.quote-history-title{font-size:13.5px;line-height:1.45;color:var(--text)}.quote-history-changes{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:8px}.quote-history-change{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}.quote-history-label,.quote-history-arrow{color:var(--text-muted);font-size:12px}.quote-history-price{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text)}.quote-history-price.is-old{font-weight:500;color:var(--text-muted);text-decoration:line-through}.quote-lines{width:100%}.quote-lines th{text-align:start;padding:8px 12px}.quote-lines th.num,.quote-lines td.num,.quote-lines td.quote-sum,.quote-lines td.quote-foot-label{text-align:end}.quote-lines td{vertical-align:middle;padding:8px 12px}.quote-lines .quote-col-label{width:auto}.quote-lines .quote-col-purchase,.quote-lines .quote-col-qty,.quote-lines .quote-col-pu,.quote-lines .quote-col-total,.quote-lines .quote-col-vat,.quote-lines .quote-line-grip-col,.quote-lines .quote-line-actions-col{width:1%;white-space:nowrap}.quote-amount-base{display:block;margin-top:2px;font-size:11px;font-weight:500;color:var(--text-muted);font-variant-numeric:tabular-nums}.quote-lines tbody tr:hover td{background:var(--surface-2)}.quote-lines tr.is-editing td{vertical-align:top;background:var(--surface)}.quote-lines tr.is-editing:hover td{background:var(--surface)}.quote-lines tr.is-editing td.quote-sum{vertical-align:middle}.quote-lines .num,.quote-lines td.quote-sum{font-variant-numeric:tabular-nums}.quote-lines .form-input.quote-qty,.quote-lines .form-input.num{text-align:end}.quote-lines td.quote-sum{font-weight:600;white-space:nowrap;color:var(--text)}.quote-lines tfoot td{background:var(--bg);border-top:1px solid var(--border);border-bottom:0;vertical-align:middle;font-weight:700;color:var(--text)}.quote-lines tfoot td.quote-sum{font-weight:700}.quote-lines .quote-line-grip-col{padding-inline:6px;text-align:center}.quote-lines .quote-line-actions-col{text-align:end;padding-inline:8px}.quote-lines .quote-line-actions{display:flex;justify-content:flex-end;align-items:center;gap:0}.quote-lines tr.is-editing .quote-line-actions{flex-direction:column;align-items:flex-end;justify-content:flex-start;width:100%}.quote-lines .quote-line-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer}.quote-lines .quote-line-icon:disabled{opacity:.55;cursor:not-allowed}.quote-lines .quote-line-icon--save{color:var(--success)}.quote-lines .quote-line-icon--save:hover{background:var(--success-bg);border-color:color-mix(in srgb,var(--success) 28%,transparent);color:var(--success)}.quote-lines .quote-line-actions .btn-ghost:hover{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 28%,transparent);color:var(--danger)}.quote-lines .quote-line-icon--edit,.quote-lines .quote-line-icon--delete{color:var(--text-secondary)}.quote-lines .quote-line-icon--edit:hover:not(:disabled){background:var(--primary-light);border-color:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--primary)}.quote-lines .quote-line-icon--delete:hover{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 28%,transparent);color:var(--danger)}.quote-lines .quote-line-grip{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:grab}.quote-lines .quote-line-grip:hover{background:var(--surface-2);color:var(--text)}.quote-lines .quote-line-grip:active{cursor:grabbing}.quote-lines .quote-line-label{font-weight:500;line-height:1.45}.quote-lines .html-editor{min-width:220px}.stack-form{display:flex;flex-direction:column;margin-bottom:10px}.kind-choice{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-bottom:12px}.kind-choice label{display:inline-flex;align-items:center;gap:8px;margin:0;cursor:pointer;font-size:14px;font-weight:600;color:var(--text)}.kind-choice input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin:0;border:2px solid var(--border-strong);border-radius:50%;background:var(--surface);display:grid;place-content:center;flex:none}.kind-choice input:checked{border-color:var(--success)}.kind-choice input:checked:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--success)}.kind-choice input:focus-visible{outline:2px solid var(--success);outline-offset:2px}.address-place{display:grid;grid-template-columns:8.5rem minmax(0,1fr) minmax(0,1.1fr);gap:12px;align-items:start}.identity-person{display:grid;grid-template-columns:7.5rem minmax(0,1fr) minmax(0,1fr) 7.5rem;gap:12px;align-items:start}.identity-org{display:grid;grid-template-columns:7.5rem minmax(0,1.2fr) minmax(0,1fr) 7.5rem;gap:12px;align-items:start}.identity-separator{display:flex;align-items:center;gap:12px;margin:16px 0 12px}.modal-body>.identity-separator:first-child{margin-top:0}.identity-separator span{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.identity-separator:after{content:"";flex:1;height:1px;background:var(--border)}.identity-fiscal{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:end;margin-top:0}.identity-fiscal-switch{margin:0;padding-bottom:8px;white-space:nowrap}.req-star{color:var(--danger);font-weight:700}.input-addon{display:flex;align-items:center;padding:0 10px;border:1px solid #d5d8de;border-inline-start:none;border-start-end-radius:6px;border-end-end-radius:6px;background:#e9eaee;color:#6b7280;font-size:12px;font-weight:600;white-space:nowrap}.line-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.line-panel{border-radius:10px;padding:14px 14px 8px;border:1px solid transparent}.line-panel h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.line-panel-client,.line-panel-supplier{background:var(--surface);border-color:var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.line-panel-client{display:flex;flex-direction:column}.line-total{display:flex;align-items:baseline;justify-content:flex-end;gap:16px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border);font-size:15px;font-weight:600}.line-total strong{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.line-rate{margin:6px 0 0;text-align:end;font-size:12px;font-weight:500;color:var(--text-muted)}.quote-totals{display:flex;flex-direction:column}.quote-totals .quote-line{margin-bottom:4px}.quote-totals .quote-line .line-field-label{color:var(--text-muted);font-weight:400}.quote-totals .line-total{margin-top:4px}.line-total.is-equivalent{margin-top:2px;padding-top:0;border-top:none}.line-panel-client h3,.line-panel-supplier h3{color:#274380}.line-panel-auto{background:#fdf4e3;border-color:#f3e6c8}.line-panel-auto h3{color:#633f25}.line-panel-totals{display:flex;flex-direction:column;background:#f0ebf7;border-color:#e3d9f0}.line-panel-totals h3{color:#502d70}.line-field{display:grid;grid-template-columns:minmax(0,1fr) minmax(168px,210px);align-items:center;gap:10px;margin-bottom:8px}.line-field-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#374151}.line-field-label.required:after{content:" *";color:var(--danger);font-weight:700}.line-field-error{grid-column:1 / -1;margin-top:-4px}.line-field-control{display:flex;align-items:center;gap:6px;min-width:0}.line-field-control .input-group,.line-field-control .form-select,.line-field-control .form-input{flex:1;min-width:0;width:100%}.line-money .form-input{text-align:start;font-variant-numeric:tabular-nums}.line-money .form-input.is-computed{background:#e9eaee;color:#1a1a1a;font-weight:700}.line-text-amount{display:block;flex:1;width:100%;text-align:end;font-weight:700;font-variant-numeric:tabular-nums;color:#1a1a1a}.line-info{display:inline-flex;align-items:center;color:#8b95a5;cursor:help;flex:none}.form-label .line-info{margin-inline-start:6px}.line-note{display:flex;align-items:flex-start;gap:8px;margin:4px 0 8px;padding:8px 10px;border-radius:8px;background:#ffffffb8;color:#4b5563;font-size:12px;line-height:1.45}.line-note p{margin:0}.quote-lines td.line-total{display:table-cell;margin:0;padding:8px 12px;border-width:0;border-style:solid;gap:0;font-size:inherit;text-align:end;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap;color:var(--text);vertical-align:middle}.quote-lines tfoot td.line-total{border-top:1px solid var(--border);font-weight:700}.quote-lines span.line-total{display:inline;margin:0;padding:0;border:0;gap:0;font-size:inherit;font-weight:600}.quote-lines .html-content,[data-theme=dark] .quote-lines .html-content{background:transparent;padding:0;color:inherit}@media(max-width:800px){.line-panels,.line-field{grid-template-columns:1fr}}.service-form-sections{display:flex;flex-direction:column;gap:12px}.service-form-section{border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px 10px;background:transparent}.service-form-section-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.service-form-section-icon{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px;background:transparent;border:1px solid currentColor}.service-form-section-titles{min-width:0}.service-form-section-title{margin:0;font-size:13px;font-weight:700;line-height:1.3}.service-form-section-subtitle{margin:2px 0 0;font-size:12px;color:var(--text-muted);line-height:1.35}.service-form-section-body{display:flex;flex-direction:column;gap:10px}.service-form-section-body>.form-group{margin-bottom:0}.service-form-section-body>.form-row{margin-bottom:0}.service-form-summary{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;padding-top:2px;font-size:12px;color:var(--text-muted)}.service-form-summary strong{color:var(--text);font-weight:600}.service-form-passengers{display:flex;flex-wrap:wrap;gap:8px}.service-form-section--detail .service-form-section-title,.service-form-section--detail .service-form-section-icon{color:var(--success)}.service-form-section--purchase .service-form-section-title,.service-form-section--purchase .service-form-section-icon{color:var(--info)}.service-form-section--sale .service-form-section-title,.service-form-section--sale .service-form-section-icon{color:var(--primary)}.service-form-section--passengers .service-form-section-title,.service-form-section--passengers .service-form-section-icon{color:var(--warning)}@media(max-width:900px){.service-form-section-body .form-row.cols-4{grid-template-columns:1fr 1fr}}
