: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):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)}.sidebar.rail~.main{margin-inline-start:var(--sidebar-collapsed)}.sidebar.rail:not(.collapsed){box-shadow:var(--shadow-lg)}.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.dropdown-menu-compact{min-width:148px}.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;min-width:0;padding:12px;overflow-y:auto}.content-flush{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0;min-width:0}.content-flush>.section-nav{flex:0 0 auto}.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:12px}.section-nav{display:flex;align-items:stretch;justify-content:flex-start;gap:0;margin:0;padding:0;background:var(--surface);border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.section-nav-flush{margin:-12px -12px 0}.section-nav-link{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;margin:0;padding:10px 12px;background:transparent;border:0;border-radius:0;text-decoration:none;color:var(--text);font-weight:600;white-space:nowrap}.section-nav-link+.section-nav-link:before{content:"";position:absolute;inset-inline-start:0;top:12px;bottom:12px;width:1px;background:var(--border)}.section-nav-link.is-current+.section-nav-link:before{display:none}.section-nav-link:hover{background:var(--surface-2)}.section-nav-link.is-current{background:var(--primary-light);color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.section-nav-link.is-current:hover{background:var(--primary-light)}.section-nav-icon{font-size:16px;color:var(--primary)}.section-nav-label{font-size:14px;line-height:1.2}.client-list{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}.client-list .section-nav{flex:0 0 auto}.form-page-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0}.form-page-title-block{display:flex;flex-direction:column;gap:2px;min-width:0}.form-page-title-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.form-page-subtitle{margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;font-weight:400;color:var(--text-muted);line-height:1.4}.form-page-subtitle-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.form-page-subtitle-item .fa-solid,.form-page-subtitle-item .fa-regular{font-size:12px;width:14px;min-width:14px;opacity:.9}.form-page-title{font-size:22px;font-weight:700;color:var(--text);margin:0;line-height:1.25;letter-spacing:-.02em;overflow-wrap:anywhere}.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-icon-only{width:32px;padding-inline:0}.form-action-bar .btn-icon-only.btn-primary-soft,.form-action-bar .btn-icon-only.btn-primary-soft:hover{background:var(--surface)}.form-action-bar .btn-icon-only .btn-ico,.form-action-bar .btn-icon-only .fa-solid,.form-action-bar .btn-icon-only .fa-regular{font-size:16px!important;width:16px;min-width:16px;height:16px;line-height:16px}.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.primary-soft{background:var(--primary-light);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 28%,transparent)}.dropdown-item.primary-soft:hover{background:var(--primary-light-hover);border-color:color-mix(in srgb,var(--primary) 35%,transparent);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-header .btn-header-link{height:26px;margin-block:-5px;padding:0 8px;padding-inline-end:0;background:transparent;border-color:transparent;color:var(--primary);text-decoration:underline;box-shadow:none}.card-header .btn-header-link:hover{background:transparent;color:var(--primary);text-decoration:underline}.card-header .btn-header-action{height:26px;margin-block:-5px;padding:0 10px;text-decoration:none;gap:4px}.card-header .btn-header-action:hover{text-decoration:none}.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:12px}.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{display:flex;flex-wrap:nowrap;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;overflow-x:hidden;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-y}.kpi-strip--inset::-webkit-scrollbar{display:none}.kpi-strip--inset.is-scrollable{overflow-x:auto;touch-action:pan-x pan-y;cursor:grab}.kpi-strip--inset.is-dragging{cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;user-select:none}.kpi-strip--inset .kpi-strip-item{flex:1 0 auto;min-width:-moz-max-content;min-width:max-content}.kpi-strip--inset .kpi-strip-label,.kpi-strip--inset .kpi-strip-value{overflow:visible;text-overflow:clip}.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-after{display:flex;flex-direction:column;gap:1px;margin-top:3px;font-size:11px;font-weight:500;color:var(--text-muted);line-height:1.35;white-space:nowrap}.kpi-strip-after strong{font-weight:600;color:var(--text)}.kpi-strip-after .is-credit,.kpi-strip-after .is-credit strong{color:var(--danger)}.kpi-strip-after .is-rest{font-size:13px}.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:not(.kpi-strip--inset){grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-strip:not(.kpi-strip--inset) .kpi-strip-item:nth-child(2n){border-inline-end:none}.kpi-strip:not(.kpi-strip--inset) .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;min-width:0;max-width:100%}table{width:100%;border-collapse:collapse}th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:12px 8px;text-align:start;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface-2)}td{padding:12px 8px;font-size:var(--font-size-base);color:var(--text-secondary);border-bottom:1px solid var(--border);vertical-align:middle;transition:background var(--transition)}.invoice-lines th,.invoice-lines td{padding:8px}.invoice-file-grip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--text-muted);cursor:grab;flex-shrink:0;touch-action:none}.invoice-file-grip:hover{color:var(--text)}.invoice-file-grip:active{cursor:grabbing}.invoice-lines tr.is-file-dragging td{opacity:.45}.invoice-lines tr.is-drop-before td{box-shadow:inset 0 2px 0 var(--primary)}.invoice-lines tr.is-drop-after td{box-shadow:inset 0 -2px 0 var(--primary)}.money-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:6px 4px}.money-row-total{margin-top:2px;padding:9px 12px;border-radius:6px;background:#7878801a}.money-row-total>span{font-weight:600}.money-row-total>strong{font-size:15px}.money-line{padding:4px;font-style:italic}.money-line-main{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;white-space:nowrap}.money-line-amount{text-align:right}.money-line-fx{display:block}.money-line-remove{padding:0}.money-line-confirm{font-style:normal;font-size:12px}.badge-pending{font-style:normal;font-size:11px;font-weight:600;padding:2px 7px;border-radius:4px;background:#ca8a0426;color:var(--warning,#ca8a04)}.money-row-due{margin-top:4px;padding:11px 12px;border-radius:6px}.money-row-due>span{font-weight:700}.money-row-due>strong{font-size:17px}.money-row-due.is-open{background:#ea580c1a}.money-row-due.is-open>strong{color:#ea580c}.money-row-due.is-settled{background:#16a34a1f}.money-row-due.is-settled>strong{color:#16a34a}body.invoice-files-dragging,body.invoice-files-dragging *{cursor:grabbing!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}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}button.status{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit}.status-success{background:var(--success-bg);color:var(--success)}.status-warning{background:var(--warning-bg);color:var(--warning)}.status.status-bordered{border:1px solid color-mix(in srgb,currentColor 35%,transparent)}.status .btn-external{width:16px;height:16px;margin-inline-start:4px;background:transparent;color:inherit;border-radius:4px}.status .btn-external:hover{background:color-mix(in srgb,currentColor 12%,transparent);color:inherit}.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.money-line-remove{width:22px;height:22px;min-height:0;padding:0;color:var(--danger)}.btn.money-line-remove:hover{background:var(--danger-bg);color:var(--danger)}.btn-ghost.btn-soft-hover:hover{background:var(--primary-light);border-color:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--primary)}.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-label.is-optional:after,.form-label.is-optional.required:after{content:none}.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}.form-input[readonly]{background:var(--surface-2);cursor:default}.qty-stepper{display:inline-flex;align-items:stretch;height:36px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;vertical-align:middle}.form-group-inline>.qty-stepper{display:flex;width:100%}.form-group-inline>.qty-stepper .qty-stepper-value{flex:1}.qty-stepper.is-error{border-color:var(--danger)}.qty-stepper.is-disabled{opacity:.65}.qty-stepper-btn{width:36px;margin:0;padding:0;border:0;background:transparent;color:var(--text);font-size:18px;line-height:1;cursor:pointer}.qty-stepper-btn:hover:not(:disabled){background:var(--surface-2)}.qty-stepper-btn:disabled{color:var(--text-muted);cursor:not-allowed}.qty-stepper-value{min-width:36px;display:flex;align-items:center;justify-content:center;padding:0 8px;border-inline:1px solid var(--border);font-variant-numeric:tabular-nums;font-size:var(--font-size-base);color:var(--text)}[data-theme=dark] .qty-stepper{background:var(--bg)}[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>.input-group-addon{flex:0 0 auto;display:flex;align-items:center;padding:0 12px;background:var(--surface-2);color:var(--text-muted);font-size:13px;font-weight:500;white-space:nowrap}.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))}.form-row-6{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;align-items:center}.form-row-6>.span-2{grid-column:1 / -1}.form-group-inline{display:grid;grid-template-columns:152px minmax(0,1fr);-moz-column-gap:8px;column-gap:8px;row-gap:2px;align-items:start}.form-group-inline>.form-label{margin:0;min-height:36px;display:flex;align-items:center;font-size:12px;font-weight:500;line-height:1.2;white-space:nowrap;color:var(--text)}.form-group-inline>:not(.form-label){grid-column:2;min-width:0}@media(max-width:767px){.form-row-6{grid-template-columns:1fr}}@media(max-width:575px){.form-group-inline{grid-template-columns:1fr}.form-group-inline>.form-label{white-space:normal;min-height:0}.form-group-inline>:not(.form-label){grid-column:1}}.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){position:relative;z-index:5}.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:4000;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:-moz-max-content;width:max-content;max-width:280px;box-sizing:border-box;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;white-space:normal;overflow-wrap:anywhere;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:var(--tooltip-arrow-x, 50%);transform:translate(-50%);border:5px solid transparent;border-top-color:var(--surface,#fff)}.ui-tooltip.is-below .ui-tooltip-bubble{bottom:auto;top:calc(100% + 8px)}.ui-tooltip.is-below .ui-tooltip-bubble:after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:var(--surface,#fff)}.ui-tooltip--right .ui-tooltip-bubble{inset:50% auto auto;inset-inline-start:calc(100% + 8px);transform:translateY(calc(-50% + var(--tooltip-shift-y, 0px)))}.ui-tooltip--right .ui-tooltip-bubble:after{top:calc(50% - var(--tooltip-shift-y, 0px));left:auto;right:auto;inset-inline-start:auto;inset-inline-end:100%;transform:translateY(-50%);border:5px solid transparent;border-top-color:transparent;border-bottom-color:transparent;border-inline-end-color:var(--surface,#fff)}.ui-tooltip--right.is-flip-inline .ui-tooltip-bubble{inset-inline-start:auto;inset-inline-end:calc(100% + 8px)}.ui-tooltip--right.is-flip-inline .ui-tooltip-bubble:after{inset-inline-end:auto;inset-inline-start:100%;border-inline-end-color:transparent;border-inline-start-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-before.ui-tooltip{margin-inline-start:0;margin-inline-end:6px}.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}.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}.tooltip-kv>div{display:contents}.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:fixed;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:6px;z-index:1100;max-height:280px;overflow:auto;display:flex;flex-direction:column;gap:2px}.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-icao{flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--text-muted);font-variant-numeric:tabular-nums}.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;padding:16px}.modal-backdrop.modal-backdrop-front{z-index:560}.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:8px 16px;border-bottom:1px solid var(--border);flex-shrink:0;cursor:grab;touch-action:none}.modal-header button,.confirm-dialog-main button{cursor:pointer}.modal.is-dragging .modal-header,.modal.is-dragging .confirm-dialog-main{cursor:grabbing}.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>.form-group{gap:6px}.modal-body>.form-group+.form-group{margin-top:14px}.modal-body.modal-body-flush{padding:0;display:flex;flex-direction:column;overflow:hidden}.modal-body-flush .datatable{flex:1;min-height:300px;border-radius:0}.modal-body-flush .datatable .datatable-scroll{flex:1 1 auto;min-height:0;height:auto;max-height:none}.modal-body-flush .datatable .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;cursor:grab;touch-action:none}.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;margin-bottom:10px}.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;flex-wrap:nowrap;list-style:none;margin:0 0 12px;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:hidden;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-y}.steps::-webkit-scrollbar{display:none}.steps.is-scrollable{overflow-x:auto;touch-action:pan-x pan-y;cursor:grab}.steps.is-dragging{cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;user-select:none}.steps-item{position:relative;display:flex;align-items:center;gap:10px;flex:1 0 auto;min-width:-moz-max-content;min-width:max-content;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;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,.steps-item.is-current{background:var(--primary-light);color:var(--primary);border-color:color-mix(in srgb,var(--success) 28%,transparent)}.steps-item.is-done .steps-dot,.steps-item.is-current .steps-dot{background:var(--primary);border-color:var(--primary);color:#fff}.steps-item .btn-external{background:transparent;color:inherit}.steps-item .btn-external:hover{background:color-mix(in srgb,currentColor 12%,transparent);color:inherit}.steps-item .btn-external:focus-visible{box-shadow:0 0 0 2px var(--surface),0 0 0 4px currentColor}.steps-item.is-done:not(:last-child):after,.steps-item.is-current:not(:last-child):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:not(:last-child):after,[dir=rtl] .steps-item.is-current:not(:last-child):after{border-inline-start-color:color-mix(in srgb,var(--success) 28%,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:12px;font-size:13px;margin-bottom:12px!important}.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{position:sticky;top:0;z-index:3;background:var(--surface-2)}.datatable-scroll thead th{position:relative;top:auto}.datatable-scroll col.datatable-columns-col{width:28px!important}.datatable-scroll thead th.datatable-columns-header{position:sticky;inset-inline-end:0;z-index:6;width:28px!important;min-width:28px!important;max-width:28px!important;padding:0!important;text-align:center;overflow:visible;background:var(--surface-2);border-inline:0;box-shadow:none;box-sizing:border-box}.datatable-scroll thead tr:first-child th.datatable-columns-header{top:0}.datatable-scroll thead tr.filter-row th.datatable-columns-header{position:static;background:var(--surface)}.datatable-scroll td.datatable-columns-cell{position:static;width:28px!important;min-width:28px!important;max-width:28px!important;padding:0!important;background:var(--surface);border-inline:0;box-shadow:none;box-sizing:border-box}.datatable-columns-header .dropdown,.datatable-columns-header .dropdown>div{width:28px;color:var(--text-secondary)}.datatable-columns-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.datatable-columns-btn:hover{background:var(--primary-light);color:var(--primary)}.datatable-scroll thead tr:first-child th{top:auto;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:auto;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;white-space:normal}.datatable-filter-field{position:relative;width:100%;min-width:0}.datatable-filter-field .datatable-filter-input{width:100%;min-width:0;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 select.datatable-filter-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;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;background-position:var(--inline-end) 4px center;padding-inline-end:20px}.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 tfoot td{position:sticky;bottom:0;z-index:2;background:var(--surface-2);font-weight:700;color:var(--text);border-top:1px solid var(--border-strong);border-bottom:none;box-shadow:0 -1px 0 var(--border)}.datatable-sum-lines{display:flex;flex-direction:column;align-items:flex-end;line-height:1.3}.datatable-scroll tbody tr.datatable-sum-spacer td{padding:0;border:none;background:transparent;line-height:0;box-shadow:none}.datatable-scroll tbody tr:not(.datatable-sum-spacer):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);z-index:2}.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:none}}@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-scroll{overflow-x:auto}.quote-lines{width:-moz-max-content;width:max-content;min-width:100%}.quote-lines.quote-lines-fit{width:100%}.quote-lines th{text-align:start;padding:8px}.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}.quote-lines tr.service-adjustment-row td{padding:0 8px}.quote-lines .quote-col-label{width:auto;min-width:300px}.quote-lines .service-col-label{width:auto;white-space:normal}.quote-lines .service-col-supplier,.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(--surface-2);border-top:2px solid var(--border-strong);border-bottom:0;padding-top:12px;padding-bottom:12px;vertical-align:middle;color:var(--text)}.quote-lines.quote-lines-fit tfoot td{background:var(--surface-2);border-top:1px solid var(--border-strong);border-bottom:0;padding:11px 12px;font-size:13px;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--text)}.quote-lines.quote-lines-fit tfoot td.service-foot-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;text-align:end;padding-inline-end:16px}.quote-lines tfoot .quote-foot-label{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.quote-lines tfoot td.quote-sum{font-size:15px;font-weight:700}.quote-lines tfoot .quote-amount-base{font-weight:500}.quote-lines .quote-line-grip-col{text-align:center}.quote-lines .quote-line-actions-col{text-align:end}.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;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 tbody tr{transition:background-color .15s ease,opacity .15s ease}.quote-lines tbody tr.is-dragging{opacity:.4;background:var(--surface-2)}.quote-lines tbody tr.is-drop-before td{box-shadow:inset 0 3px 0 var(--primary)}.quote-lines tbody tr.is-drop-after td{box-shadow:inset 0 -3px 0 var(--primary)}.quote-line-ghost{position:fixed;z-index:500;display:flex;align-items:center;gap:8px;max-width:360px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 10px 28px #0f172a2e;pointer-events:none;transform:translate(-16px,-22px) rotate(-1deg);font-weight:600}body.quote-lines-dragging,body.quote-lines-dragging *{cursor:grabbing!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.quote-lines .quote-line-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}.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) minmax(0,1fr);gap:12px;align-items:end;margin-top:0}.identity-fiscal-switch{margin:0;padding-bottom:8px;white-space:nowrap}@media(max-width:900px){.address-place,.identity-person,.identity-org,.identity-fiscal{grid-template-columns:1fr}}@media(max-width:768px){.section-nav{flex-wrap:wrap;overflow-x:visible}}.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;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-sections>fieldset>.service-form-section+.service-form-section{margin-top:12px}.service-form-section{border:1px solid var(--border);border-radius:10px;padding:0;background:var(--surface)}.service-form-section-head{display:flex;align-items:center;gap:8px;margin:0;padding:8px 12px;min-width:0;background:var(--surface-2);border-bottom:1px solid var(--border);border-radius:9px 9px 0 0}.service-form-section-icon{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;border:0}.service-form-section-title{margin:0;font-size:13px;font-weight:700;line-height:1.2;white-space:nowrap}.service-form-section-subtitle{margin:0;font-size:12px;font-weight:400;color:var(--text-muted);line-height:1.2;min-width:0}.service-form-section-body{display:flex;flex-direction:column;gap:10px;padding:12px}.service-form-section-body>.form-group,.service-form-section-body>.form-row-6{margin-bottom:0}.cancel-file-switch{display:flex;align-items:center;margin-bottom:12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--danger) 28%,transparent);border-radius:10px;background:var(--danger-bg)}.cancel-file-switch .form-switch{margin:0}.cancel-file-switch .switch-label{color:var(--danger)}.cancel-file-switch .switch input:checked+.switch-track{background:var(--danger)}.cancel-service-card{margin-bottom:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.cancel-service-card-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:0;background:var(--surface-2);color:var(--text);font:inherit;text-align:start;cursor:pointer}.cancel-service-card-toggle:hover{background:color-mix(in srgb,var(--text) 4%,var(--surface-2))}.cancel-service-card.is-open .cancel-service-card-toggle{border-bottom:1px solid var(--border)}.cancel-service-card-title{font-size:13px;font-weight:700;min-width:0}.cancel-service-card-meta{margin-inline-start:auto;font-size:12px;color:var(--text-muted);white-space:nowrap}.cancel-service-card-body{padding:12px}.cancel-service-detail{margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.cancel-service-detail-label{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.cancel-service-detail-body{display:flex;gap:10px;align-items:flex-start;min-width:0}.cancel-service-detail-facts{display:flex;flex-wrap:wrap;gap:6px 22px;margin:8px 0 0;font-size:12px;color:var(--text-muted)}.cancel-service-detail-facts strong{font-weight:600;color:var(--text)}.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-description{display:flex;flex-direction:column;gap:2px;min-width:0}.service-description-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.service-description-name{font-weight:700}.service-description-lead{font-size:12px;line-height:1.35;color:var(--text);font-weight:400;white-space:pre-line}.service-description-text{font-size:12px;line-height:1.35;color:var(--text-secondary)}.service-description-label{font-weight:700}.service-description-fact{font-weight:700;color:var(--text);font-size:calc(1em + 1px)}.service-description-more{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;font-size:12px;font-weight:600;color:var(--primary);cursor:pointer}.service-description-more-label{text-decoration:underline}.service-description-more .fa-solid,.service-description-more .fa-regular{font-size:10px}.service-description-text .html-content{background:transparent;padding:0;color:inherit}.service-form-passengers{display:flex;flex-wrap:wrap;gap:8px}.ticket-sheet{display:flex;flex-direction:column;gap:12px}.ticket-sheet-id,.ticket-sheet-amounts{display:grid;gap:8px}.ticket-sheet-id{grid-template-columns:repeat(3,minmax(0,1fr))}.ticket-sheet-amounts{grid-template-columns:repeat(4,minmax(0,1fr))}.ticket-sheet-fact{min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.ticket-sheet-kicker{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.ticket-sheet-value{margin-top:2px;font-weight:600;line-height:1.3}.ticket-sheet-number{margin-top:2px;font-weight:700;font-size:15px;line-height:1.3;display:flex;align-items:center;gap:6px}.ticket-sheet-amounts .ticket-sheet-fact:last-child{background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.ticket-sheet-legs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ticket-leg{display:grid;grid-template-columns:minmax(96px,1.1fr) minmax(0,2.2fr) minmax(168px,1.8fr) minmax(64px,.7fr);gap:16px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.ticket-leg-flight,.ticket-leg-when,.ticket-leg-bag{display:flex;flex-direction:column;gap:2px;min-width:0}.ticket-leg-flight .status{align-self:flex-start;margin-top:2px}.ticket-leg-route{display:flex;align-items:center;gap:10px;min-width:0}.ticket-leg-place{display:flex;flex-direction:column;min-width:0}.ticket-leg-place span,.ticket-leg-when span{font-size:11px;color:var(--text-muted);line-height:1.3}.ticket-leg-when span{white-space:nowrap}.ticket-leg-arrow{color:var(--text-muted);flex:none}@media(max-width:720px){.ticket-sheet-id,.ticket-sheet-amounts,.ticket-leg{grid-template-columns:1fr 1fr}.ticket-leg-route{grid-column:1 / -1}}.attach-tickets{list-style:none;display:flex;flex-direction:column;gap:8px;max-height:320px;margin:0;padding:2px;overflow:auto}.attach-ticket{display:grid;grid-template-columns:minmax(0,1.5fr) auto minmax(148px,200px);gap:12px 16px;align-items:end;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.attach-ticket-who{min-width:0;display:flex;flex-direction:column;gap:2px;padding-bottom:6px}.attach-ticket-number{font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em}.attach-ticket-passenger{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attach-ticket-cost{display:flex;flex-direction:column;gap:2px;padding-bottom:6px;text-align:end;white-space:nowrap}.attach-ticket-kicker{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.attach-ticket-cost strong{font-variant-numeric:tabular-nums}.attach-ticket-sale{margin:0;min-width:0}.attach-tickets-total{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:4px 0 0}.attach-tickets-total>div{min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.attach-tickets-total dt{margin:0;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.attach-tickets-total dd{margin:2px 0 0;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.attach-tickets-total dd.is-negative{color:var(--danger)}.attach-tickets-total>div.is-sale{background:color-mix(in srgb,var(--primary) 8%,var(--surface))}@media(max-width:720px){.attach-ticket{grid-template-columns:1fr auto}.attach-ticket-sale{grid-column:1 / -1}.attach-tickets-total{grid-template-columns:1fr 1fr}.attach-tickets-total>div.is-sale{grid-column:1 / -1}}.service-form-section--detail .service-form-section-title,.service-form-section--detail .service-form-section-icon{color:var(--success)}.service-form-section--detail .service-form-section-icon{background:color-mix(in srgb,var(--success) 14%,var(--surface))}.service-form-section--purchase .service-form-section-title,.service-form-section--purchase .service-form-section-icon{color:var(--info)}.service-form-section--purchase .service-form-section-icon{background:color-mix(in srgb,var(--info) 14%,var(--surface))}.service-form-section--sale .service-form-section-title,.service-form-section--sale .service-form-section-icon{color:var(--primary)}.service-form-section--sale .service-form-section-icon{background:color-mix(in srgb,var(--primary) 14%,var(--surface))}.service-form-section--passengers .service-form-section-title,.service-form-section--passengers .service-form-section-icon{color:var(--warning)}.service-form-section--passengers .service-form-section-icon{background:color-mix(in srgb,var(--warning) 18%,var(--surface))}.service-form-passengers .checkbox-item{margin:0;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.service-form-flight,.service-form-hotel,.service-form-detail{display:flex;flex-direction:column;gap:12px}.service-form-boat .boat-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;align-items:start}.service-form-boat .boat-pair>.span-2{grid-column:1 / -1}.service-form-boat fieldset.boat-col{min-width:0;margin:0;padding:4px 10px 10px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.service-form-boat fieldset.boat-col>legend{width:auto;margin:0;padding:0 6px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary)}.service-form-boat fieldset.boat-col>.form-group+.form-group{margin-top:8px}.service-form-boat .service-form-leg{background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.service-form-boat .service-form-leg .form-group{margin-bottom:0}.service-form-boat .service-form-seat-grid th:last-child,.service-form-boat .service-form-seat-grid td:last-child{width:1%;min-width:0;padding:1px 4px;white-space:nowrap;text-align:center}.service-form-boat .service-form-seat-grid td .qty-stepper{display:flex;width:100%}.service-form-boat .service-form-seat-grid td .qty-stepper-value{flex:1;width:100%}.service-form-boat .service-form-actions{justify-content:flex-end}.service-form-boat .boat-row-remove{color:var(--danger)}.service-form-boat .boat-row-remove:hover{background:var(--danger-bg);color:var(--danger)}@media(max-width:767px){.service-form-boat .boat-pair{grid-template-columns:1fr}}.service-form-detail-group{border:1px solid var(--border);border-radius:8px;margin:0;padding:8px 12px 12px;min-width:0;background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.service-form-detail-group+.service-form-detail-group{margin-top:12px}.service-form-detail-legend{float:none;width:auto;padding:0 6px;margin:0 0 8px;font-size:12px;font-weight:700;color:var(--text)}.service-form-detail .form-row-6{align-items:stretch}.service-form-detail fieldset.service-form-detail-col{min-width:0;margin:0;padding:4px 10px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.service-form-detail fieldset.service-form-detail-col>legend{width:auto;margin:0;padding:0 6px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary)}.service-form-detail fieldset.service-form-detail-col>*+*{margin-top:8px}.service-form-hotel .form-row-6>div,.service-form-detail .form-row-6>div{display:flex;flex-direction:column;gap:8px;min-width:0}.service-form-hotel .form-row-6 .form-group,.service-form-detail .form-row-6 .form-group,.service-form-detail>.form-group{margin-bottom:0}.service-form-tax{display:flex;gap:8px;align-items:center}.service-form-tax .form-input{flex:1;min-width:0}.service-form-tax .form-select{width:6.5rem;flex:none}.service-form-ages{display:flex;flex-flow:row nowrap;align-items:center;gap:4px}.service-form-ages .form-select{width:3.25rem;min-width:3.25rem;flex:none;height:32px;padding-inline:4px 16px;font-size:12px;background-position:var(--inline-end) 1px center}.service-form-room-grid .combo{width:100%}.service-form-room-grid thead th:last-child,.service-form-room-grid tbody td:last-child{width:2.5rem;min-width:2.5rem;padding:4px}.service-form-room-grid thead th:nth-child(2),.service-form-room-grid thead th:nth-child(3),.service-form-room-grid tbody td:nth-child(2),.service-form-room-grid tbody td:nth-child(3){width:1%;min-width:0;white-space:nowrap;padding-inline:4px}.service-form-leg{display:flex;flex-direction:column;gap:8px;padding:8px 10px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.service-form-seat{display:flex;flex-direction:column;gap:8px}.service-form-seat-head{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.service-form-seat-hint{margin:0;font-size:11.5px;color:var(--text-muted);line-height:1.35}.service-form-seat-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface)}.service-form-seat-grid{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface)}.service-form-seat-grid th,.service-form-seat-grid td{border-inline-end:1px solid var(--border);border-bottom:1px solid var(--border);vertical-align:middle}.service-form-seat-grid tr>:last-child{border-inline-end:0}.service-form-seat-grid tbody tr:last-child>*{border-bottom:0}.service-form-seat-grid thead th{background:var(--surface-2);color:var(--text);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center;padding:8px 10px;border-bottom-color:var(--border-strong);min-width:7.5rem}.service-form-seat-grid thead th span{display:block;margin-top:2px;font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--text-muted)}.service-form-seat-grid thead .is-name,.service-form-seat-grid thead .is-label{background:var(--surface-2);min-width:0}.service-form-seat-grid tbody tr.is-passenger>th,.service-form-seat-grid tbody tr.is-passenger>td{border-top:2px solid var(--border-strong)}.service-form-seat-grid tbody tr.is-passenger:first-child>th,.service-form-seat-grid tbody tr.is-passenger:first-child>td{border-top:0}.service-form-seat-grid tbody .is-name{width:9.5rem;padding:8px 10px;background:var(--surface);text-align:start;font-size:13px;font-weight:700;line-height:1.3;letter-spacing:0;text-transform:none;color:var(--text);border-inline-start:3px solid var(--primary)}.service-form-seat-grid tbody .is-label{width:6.5rem;padding:0 10px;background:var(--surface);text-align:start;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--text-secondary);white-space:nowrap}.service-form-seat-grid tbody td{margin:0;padding:1px;background:var(--surface);text-align:start}.service-form-seat-grid .form-input{margin:0;width:100%;text-align:start}[data-theme=dark] .service-form-seat-grid tbody td{background:var(--bg)}.service-form-panel{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.service-form-panel-head{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.service-form-pills{display:flex;flex-wrap:wrap;gap:6px}.service-form-pill{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:999px;padding:4px 12px;font-size:12px;line-height:1.3;cursor:pointer}.service-form-pill.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.service-form-card{display:flex;flex-direction:column;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.service-form-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.service-form-add{align-self:flex-start}.service-form-seat-table{width:100%;border-collapse:separate;border-spacing:0}.service-form-seat-table th{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:start;color:var(--text-muted);padding:4px 6px}.service-form-seat-table td{padding:2px 4px;vertical-align:middle}.service-form-seat-table .form-input{height:32px;min-width:0;width:100%}.service-form-flight-type{width:auto;min-width:11rem;height:30px;flex:0 0 auto}.service-form-leg-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--primary)}.service-form-actions{display:flex;gap:6px}.service-form-seat-table th[colspan]{text-align:center}.service-form-seat-name{font-size:13px;font-weight:600;line-height:1.3}.service-form-price{display:flex;align-items:center;justify-content:space-between;gap:12px;align-self:center;width:100%;min-height:36px;padding:0 12px;border-radius:8px;background:var(--warning-bg);color:var(--text);font-size:13px}.timeline{list-style:none;margin:0;padding:4px 0}.timeline li{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0;padding:10px 16px 10px 32px;border-bottom:1px solid var(--border)}.timeline li:last-child{border-bottom:0}.timeline li:before{content:"";position:absolute;inset-inline-start:14px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.timeline-table{width:100%;table-layout:fixed}.timeline-table th,.timeline-table td{width:33.33%;vertical-align:middle}.timeline-table td{padding:4px 8px}.service-form-price strong{font-size:15px}.service-form-note{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0;font-size:12px;color:var(--text-muted)}.service-form-duration{display:block;margin-top:4px;font-size:11px;line-height:1.2;color:var(--text-muted)}@media(max-width:900px){.service-form-section-body .form-row.cols-4{grid-template-columns:1fr 1fr}}
