:root{--surface-page:#fff;--surface-card:#fff;--surface-sidebar:#fff;--surface-header:#fff;--surface-utility:#f8fafc;--surface-inverse:#0f172a;--border-universal:#e2e8f0;--border-divider:#f1f5f9;--color-primary:#3573b3;--color-primary-hover:#2a5c93;--color-primary-focus-ring:#3573b3;--color-primary-tint:#eaf1f8;--color-primary-on-tint:#2a5c93;--color-primary-border:#c9d7e6;--color-primary-wash:#fafcfe;--color-destructive:#ad4d3f;--color-destructive-hover:#8f3d32;--color-destructive-tint:#fdf2f0;--color-destructive-border:#f0d4cf;--status-success-text:#166534;--status-success-bg:#f0fdf4;--status-success-border:#bbf7d0;--status-warning-text:#854d0e;--status-warning-bg:#fefce8;--status-warning-border:#fef08a;--status-danger-text:#991b1b;--status-danger-bg:#fef2f2;--status-danger-border:#fecaca;--status-processing-text:#1d4ed8;--status-processing-bg:#eff6ff;--status-processing-border:#bfdbfe;--status-neutral-text:#475569;--status-neutral-bg:#f8fafc;--status-neutral-border:#cbd5e1;--text-strong:#0f172a;--text-default:#334155;--text-quiet:#475569;--text-muted:#64748b;--text-faint:#cbd5e1;--text-on-primary:#fff;--chart-series-1:var(--color-primary);--chart-series-2:#eb6834;--chart-grid:var(--border-divider);--chart-baseline:var(--border-universal);--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Roboto Mono", ui-monospace, monospace;--text-h1-size:18px;--text-h1-weight:700;--text-h1-line:24px;--text-h1-color:var(--text-strong);--text-h2-size:15px;--text-h2-weight:600;--text-h2-line:20px;--text-h2-color:var(--text-strong);--text-body-size:13px;--text-body-weight:400;--text-body-line:18px;--text-body-color:var(--text-strong);--text-table-header-size:11px;--text-table-header-weight:600;--text-table-header-color:var(--text-muted);--text-table-header-tracking:.05em;--text-micro-size:12px;--text-micro-weight:500;--text-micro-line:16px;--radius-button:4px;--radius-input:4px;--radius-badge:4px;--radius-card:6px;--radius-table:6px;--radius-modal:6px;--radius-drawer:6px;--shadow-flyout:0 4px 12px #00000014;--shadow-none:none;--sidebar-width:260px;--header-height:64px;--page-padding:24px;--section-spacing:20px;--card-padding:16px;--table-row-height:38px;--z-sidebar:30;--z-header:40;--z-sticky-table-header:20;--z-dropdown:60;--z-modal-overlay:100;--z-modal:110;--z-critical-modal:120}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--surface-page);color:var(--text-body-color);font-family:var(--font-sans);font-size:var(--text-body-size);font-weight:var(--text-body-weight);line-height:var(--text-body-line);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--color-primary-focus-ring);outline-offset:1px;border-radius:var(--radius-input)}::selection{background:var(--color-primary-tint);color:var(--color-primary-on-tint)}.mono,.data-table td,.billing-row span,.billing-total-row span,.receipt__row span{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.app-shell{min-height:100vh;display:flex}.app-sidebar{width:var(--sidebar-width);background:var(--surface-sidebar);border-right:1px solid var(--border-universal);height:100vh;z-index:var(--z-sidebar);flex-direction:column;display:flex;position:fixed;top:0;left:0}.app-header{top:0;left:var(--sidebar-width);height:var(--header-height);background:var(--surface-header);border-bottom:1px solid var(--border-universal);z-index:var(--z-header);padding:0 var(--page-padding);align-items:center;gap:16px;display:flex;position:fixed;right:0}.app-main{margin-left:var(--sidebar-width);margin-top:var(--header-height);padding:var(--page-padding);width:calc(100% - var(--sidebar-width));gap:var(--section-spacing);flex-direction:column;display:flex}@media (width<=1280px){.app-main{padding:20px}}.auth-page{background:var(--surface-page);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{border:1px solid var(--border-universal);border-radius:var(--radius-card);flex-direction:column;gap:20px;width:100%;max-width:380px;padding:32px 28px;display:flex}.auth-card__brand{text-align:center}.auth-card__brand-name{color:var(--text-strong);letter-spacing:-.01em;font-size:20px;font-weight:700}.auth-card__brand-sub{color:var(--text-muted);margin-top:2px;font-size:12.5px}.auth-card__form{flex-direction:column;gap:14px;display:flex}.auth-card__error{color:var(--color-destructive);background:var(--color-destructive-tint);border:1px solid var(--status-danger-border);border-radius:var(--radius-input);padding:9px 12px;font-size:12.5px}.auth-card__hint{color:var(--text-muted);text-align:center;font-size:12px;line-height:1.5}.role-choice-list{flex-direction:column;gap:8px;display:flex}.role-choice{border:1px solid var(--border-universal);border-radius:var(--radius-input);color:var(--text-strong);background:var(--surface-card);cursor:pointer;text-align:left;padding:10px 12px;font-size:13px;font-weight:500}.role-choice:hover{background:var(--surface-utility);border-color:var(--color-primary)}.role-choice:focus-visible{outline:2px solid var(--color-primary-focus-ring);outline-offset:1px}.sidebar-brand{border-bottom:1px solid var(--border-universal);padding:20px 20px 16px}.sidebar-brand__name{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line);color:var(--text-h1-color)}.sidebar-brand__sub{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:500}.sidebar-brand__system{color:var(--text-muted);margin-top:6px;font-size:12px}.sidebar-nav{flex:1;padding:8px 0 16px;overflow-y:auto}.sidebar-nav__group+.sidebar-nav__group{margin-top:14px}.sidebar-nav__group-title{letter-spacing:var(--text-table-header-tracking);text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;padding:0 20px;font-size:11px;font-weight:600}.sidebar-nav__item[hidden]{display:none}.sidebar-nav__item{color:var(--text-default);border-left:3px solid #0000;align-items:center;gap:10px;padding:8px 20px 8px 17px;font-size:13px;font-weight:500;text-decoration:none;display:flex}.sidebar-nav__item:hover{background:var(--surface-utility)}.sidebar-nav__item.is-active{background:var(--color-primary-tint);border-left-color:var(--color-primary);color:var(--color-primary-on-tint);font-weight:600}.sidebar-nav__item.is-disabled{opacity:.45;cursor:not-allowed}.sidebar-nav__item.is-disabled:hover{background:0 0}.sidebar-nav__item svg{flex-shrink:0;width:16px;height:16px}.header-search{flex:1;max-width:480px;position:relative}.header-search input{border:1px solid var(--border-universal);border-radius:var(--radius-input);background:var(--surface-utility);width:100%;color:var(--text-strong);padding:8px 12px 8px 34px;font-size:13px}.header-search input::placeholder{color:var(--text-muted)}.header-search__icon{width:15px;height:15px;color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.header-search__shortcut{color:var(--text-muted);border:1px solid var(--border-universal);background:var(--surface-card);border-radius:8px;padding:1px 5px;font-size:12px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.header-search__results{background:var(--surface-card);border:1px solid var(--border-universal);border-radius:var(--radius-card);box-shadow:var(--shadow-flyout);z-index:var(--z-dropdown);max-height:320px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.header-search__group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 8px 2px;font-size:11px;font-weight:600}.header-search__result{border-radius:8px;flex-direction:column;gap:2px;padding:7px 8px;display:flex}.header-search__result:hover,.header-search__result:focus-visible{background:var(--surface-utility)}.header-search__result-title{color:var(--text-strong);font-size:12.5px;font-weight:500}.header-search__result-meta{color:var(--text-muted);font-size:12px;font-family:var(--font-mono)}.header-search__empty{color:var(--text-muted);text-align:center;padding:14px 8px;font-size:12px}.header-spacer{flex:1}.header-right{align-items:center;gap:12px;display:flex}.header-user{flex-direction:column;line-height:1.2;display:flex}.header-user__name{color:var(--text-strong);font-size:12.5px;font-weight:600}.header-user__role{color:var(--text-muted);font-size:12px}.icon-button{border-radius:var(--radius-button);width:34px;height:34px;color:var(--text-quiet);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex;position:relative}.icon-button:hover{background:var(--surface-utility);border-color:var(--border-universal)}.icon-button svg{width:18px;height:18px}.icon-button__dot{background:var(--status-danger-text);border:1.5px solid var(--surface-card);border-radius:50%;width:8px;height:8px;position:absolute;top:5px;right:5px}.status-badge{font-size:var(--text-micro-size);font-weight:var(--text-micro-weight);line-height:var(--text-micro-line);border-radius:var(--radius-badge);white-space:nowrap;border:1px solid;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.status-badge__dot{font-size:8px;line-height:1}.status-badge--success{color:var(--status-success-text);background:var(--status-success-bg);border-color:var(--status-success-border)}.status-badge--warning{color:var(--status-warning-text);background:var(--status-warning-bg);border-color:var(--status-warning-border)}.status-badge--danger{color:var(--status-danger-text);background:var(--status-danger-bg);border-color:var(--status-danger-border)}.status-badge--processing{color:var(--status-processing-text);background:var(--status-processing-bg);border-color:var(--status-processing-border)}.status-badge--neutral{color:var(--status-neutral-text);background:var(--status-neutral-bg);border-color:var(--status-neutral-border)}.btn{border-radius:var(--radius-button);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;height:32px;padding:0 14px;font-size:12.5px;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--color-primary);color:var(--text-on-primary)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn--secondary{background:var(--surface-card);color:var(--text-default);border-color:var(--border-universal)}.btn--secondary:hover:not(:disabled){background:var(--surface-utility)}.btn--destructive{background:var(--surface-card);color:var(--color-destructive);border-color:var(--color-destructive-border)}.btn--destructive:hover:not(:disabled){background:var(--color-destructive-tint);border-color:var(--color-destructive-hover);color:var(--color-destructive-hover)}.btn--sm{height:26px;padding:0 10px;font-size:12px}.btn--loading{position:relative;color:#0000!important}.btn--loading:after{content:"";border:2px solid #ffffff80;border-top-color:var(--text-on-primary);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite btn-spin;position:absolute}.btn--secondary.btn--loading:after{border:2px solid #33415540;border-top-color:var(--text-default)}@keyframes btn-spin{to{transform:rotate(360deg)}}@keyframes btn-breathe{0%{opacity:1}to{opacity:.35}}@media (prefers-reduced-motion:reduce){.btn--loading:after{border-color:var(--text-on-primary);animation:.9s ease-in-out infinite alternate btn-breathe}.btn--secondary.btn--loading:after{border-color:var(--text-default)}}.link{color:var(--color-primary);background:0 0;border:none;padding:0;font-size:12.5px;font-weight:500;text-decoration:none}.link:hover{text-decoration:underline}.card{background:var(--surface-card);border:1px solid var(--border-universal);border-radius:var(--radius-card)}.card__header{padding:14px var(--card-padding);border-bottom:1px solid var(--border-universal);justify-content:space-between;align-items:center;gap:12px;display:flex}.card__title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line);color:var(--text-h2-color)}.card__title-meta{color:var(--text-muted);margin-top:1px;font-size:12px;font-weight:400}.card__body{padding:var(--card-padding)}.page-title-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.page-title{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line);color:var(--text-h1-color)}.page-subtitle{color:var(--text-muted);margin-top:2px;font-size:12.5px}.toolbar{padding:10px var(--card-padding);background:var(--surface-utility);border-bottom:1px solid var(--border-universal);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar__field{align-items:center;gap:6px;display:flex}.toolbar__field label{color:var(--text-muted);font-size:12px;font-weight:500}.select-field,.text-field{border:1px solid var(--border-universal);border-radius:var(--radius-input);background:var(--surface-card);height:30px;color:var(--text-strong);padding:0 10px;font-size:12.5px}.select-field:focus,.text-field:focus{border-color:var(--color-primary)}.toolbar__spacer{flex:1}.toolbar__count{color:var(--text-muted);font-size:12px}.table-scroll{border-radius:0 0 var(--radius-table) var(--radius-table);overflow-x:auto}.data-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:760px}.data-table--fluid{table-layout:auto}.data-table--fluid td.mono{white-space:nowrap}.data-table thead th{z-index:var(--z-sticky-table-header);background:var(--surface-utility);border-bottom:1px solid var(--border-universal);text-align:left;font-size:var(--text-table-header-size);font-weight:var(--text-table-header-weight);letter-spacing:var(--text-table-header-tracking);text-transform:uppercase;color:var(--text-table-header-color);overflow-wrap:normal;padding:9px 12px;position:sticky;top:0}.data-table th.is-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.is-sortable:hover{color:var(--text-default)}.data-table th .sort-caret{opacity:.4;margin-left:4px;font-size:9px;display:inline-block}.data-table th.is-sorted-desc .sort-caret{transform:rotate(180deg)}.sort-button{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;text-align:inherit;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.data-table th.is-sorted-asc .sort-caret,.data-table th.is-sorted-desc .sort-caret{opacity:1;color:var(--color-primary)}.data-table--fluid .cell-actions{white-space:normal;flex-wrap:wrap}.data-table.is-own-only .col-technician{display:none}.data-table tbody td{height:var(--table-row-height);border-bottom:1px solid var(--border-divider);font-size:var(--text-body-size);color:var(--text-strong);vertical-align:middle;padding:8px 12px}.data-table tbody tr:hover td{background:var(--border-divider)}.data-table__row-action{cursor:pointer}.data-table__row-action:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.data-table__row-action:focus-visible td{background:var(--border-divider)}.data-table tbody tr:last-child td{border-bottom:none}.mono{font-family:var(--font-mono);letter-spacing:-.01em;font-size:12px}.cell-primary{font-weight:600}.cell-muted{color:var(--text-muted)}.cell-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.sla-timer{font-family:var(--font-mono);color:var(--text-strong);font-size:12px;font-weight:600}.sla-timer.is-risk{color:var(--status-warning-text)}.sla-timer.is-overdue{color:var(--status-danger-text)}.table-skeleton-row td{padding:10px 12px}.skeleton-bar{background:linear-gradient(90deg, var(--border-divider) 25%, var(--border-universal) 37%, var(--border-divider) 63%);background-size:400% 100%;border-radius:8px;height:12px;animation:1.4s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@keyframes skeleton-fade{0%{opacity:1}to{opacity:.5}}@media (prefers-reduced-motion:reduce){.skeleton-bar{background:var(--border-universal);animation:1.2s ease-in-out infinite alternate skeleton-fade}}.table-state{text-align:center;padding:48px 24px}.table-state__icon{width:32px;height:32px;color:var(--text-faint);margin:0 auto 10px}.table-state__title{color:var(--text-default);font-size:13px;font-weight:600}.table-state__desc{color:var(--text-muted);margin-top:4px;font-size:12px}.table-state--error .table-state__icon{color:var(--status-danger-text)}.table-state__action{margin-top:12px}.pagination{padding:10px var(--card-padding);border-top:1px solid var(--border-universal);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pagination__rows{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.pagination__nav{color:var(--text-default);align-items:center;gap:10px;font-size:12.5px;display:flex}.pagination__nav-btn{border:1px solid var(--border-universal);border-radius:var(--radius-button);background:var(--surface-card);height:28px;color:var(--text-default);padding:0 10px;font-size:12px;font-weight:500}.pagination__nav-btn:disabled{opacity:.4;cursor:not-allowed}.pagination__nav-btn:hover:not(:disabled){background:var(--surface-utility)}.workload-row{border-bottom:1px solid var(--border-divider);align-items:center;gap:12px;padding:10px 0;display:flex}.workload-row:last-child{border-bottom:none}.workload-row__info{flex-shrink:0;width:240px}.workload-row__name{color:var(--text-strong);font-size:12.5px;font-weight:600}.workload-row__meta{color:var(--text-muted);margin-top:1px;font-size:12px}.workload-row__bar-track{background:var(--border-divider);border-radius:8px;flex:1;height:8px;overflow:hidden}.workload-row__bar-fill{background:var(--color-primary);border-radius:8px;height:100%}.workload-row__bar-fill.is-overload{background:var(--status-danger-text)}.workload-row__pct{text-align:right;width:38px;color:var(--text-default);flex-shrink:0;font-size:12px;font-weight:600}.workload-row__status{flex-shrink:0}.modal-overlay{z-index:var(--z-modal-overlay);background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-overlay[hidden]{display:none}.modal{z-index:var(--z-modal);background:var(--surface-card);border-radius:var(--radius-modal);width:100%;max-width:640px;max-height:calc(100vh - 48px);box-shadow:var(--shadow-flyout);flex-direction:column;display:flex;position:relative}.modal--critical{z-index:var(--z-critical-modal);max-width:460px}.modal__header{border-bottom:1px solid var(--border-universal);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.modal__title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-h2-color)}.modal__subtitle{color:var(--text-muted);margin-top:3px;font-size:12px}.modal__close{border-radius:var(--radius-button);width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal__close:hover{background:var(--surface-utility)}.modal__body{padding:20px;overflow-y:auto}.modal__footer{border-top:1px solid var(--border-universal);justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.modal__footer--split{justify-content:space-between}.candidate-list{flex-direction:column;gap:8px;display:flex}.candidate{border:1px solid var(--border-universal);border-radius:var(--radius-card);cursor:pointer;align-items:center;gap:12px;padding:12px;display:flex}.candidate:hover{border-color:var(--color-primary-border);background:var(--color-primary-wash)}.candidate.is-selected{border-color:var(--color-primary);background:var(--color-primary-tint)}.candidate__radio{width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0}.candidate__main{flex:1;min-width:0}.candidate__name-row{align-items:center;gap:8px;display:flex}.candidate__name{color:var(--text-strong);font-size:13px;font-weight:600}.candidate__factors{flex-wrap:wrap;gap:6px 14px;margin-top:6px;display:flex}.candidate__factor{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;display:flex}.candidate__factor strong{color:var(--text-default);font-weight:600}.candidate__factor svg{flex-shrink:0;width:12px;height:12px}.tooltip-wrap{display:inline-flex;position:relative}.tooltip-wrap:after{content:attr(data-tooltip);background:var(--surface-inverse);color:var(--text-on-primary);white-space:nowrap;opacity:0;pointer-events:none;z-index:var(--z-dropdown);border-radius:8px;padding:5px 8px;font-size:12px;font-weight:500;transition:opacity .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip-wrap:hover:after,.tooltip-wrap:focus-within:after{opacity:1}.toast-stack{z-index:var(--z-critical-modal);flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--surface-card);border:1px solid var(--border-universal);border-radius:var(--radius-card);min-width:280px;max-width:360px;box-shadow:var(--shadow-flyout);color:var(--text-strong);align-items:flex-start;gap:8px;padding:12px 14px;font-size:12.5px;display:flex}.toast svg{flex-shrink:0;width:16px;height:16px;margin-top:1px}.toast--success svg{color:var(--status-success-text)}.toast--error svg{color:var(--status-danger-text)}.queue-list{flex-direction:column;display:flex}.queue-item{padding:12px var(--card-padding);border-bottom:1px solid var(--border-divider);cursor:pointer;background:var(--surface-card);border-left:3px solid #0000;flex-direction:column;gap:6px;display:flex}button.queue-item{text-align:left;width:100%;font:inherit;color:inherit;border-top:0;border-right:0}.queue-item:last-child{border-bottom:none}.queue-item:hover{background:var(--surface-utility)}.queue-item.is-selected{background:var(--color-primary-tint);border-left-color:var(--color-primary)}.queue-item__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.queue-item__device{color:var(--text-default);font-size:12.5px}.queue-item__symptom{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;display:grid}.detail-grid__item .kv-key{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:3px;font-size:11px;font-weight:600;display:block}.detail-grid__item span{color:var(--text-strong);font-size:13px}.temp-password{border:1px dashed var(--border-universal);border-radius:var(--radius-card);background:var(--surface-utility);text-align:center;letter-spacing:.08em;color:var(--text-strong);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;padding:14px 16px;font-size:22px}.temp-password .mono{font-size:inherit}.drawer-actions{flex-wrap:wrap;gap:8px;display:flex}.section-divider{border:none;border-top:1px solid var(--border-universal);margin:16px 0}.checklist{border:1px solid var(--border-universal);border-radius:var(--radius-card);flex-direction:column;gap:1px;display:flex;overflow:hidden}.checklist-item{background:var(--surface-card);border-bottom:1px solid var(--border-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.checklist-item:last-child{border-bottom:none}.checklist-item__label{color:var(--text-strong);font-size:12.5px;font-weight:500}.result-toggle{border:1px solid var(--border-universal);border-radius:var(--radius-button);display:inline-flex;overflow:hidden}.result-toggle__btn{background:var(--surface-card);color:var(--text-muted);border:none;border-right:1px solid var(--border-universal);padding:5px 10px;font-size:12px;font-weight:600}.result-toggle__btn:last-child{border-right:none}.result-toggle__btn:hover{background:var(--surface-utility)}.result-toggle__btn.is-active--PASS{background:var(--status-success-bg);color:var(--status-success-text)}.result-toggle__btn.is-active--FAIL{background:var(--status-danger-bg);color:var(--status-danger-text)}.result-toggle__btn.is-active--NA{background:var(--status-neutral-bg);color:var(--status-neutral-text)}.result-toggle__btn.is-active{background:var(--color-primary-tint);color:var(--color-primary-on-tint)}.form-page{gap:var(--section-spacing);flex-direction:column;max-width:860px;display:flex}.checkbox-row{align-items:flex-start;gap:8px;padding:12px 14px;display:flex}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0;margin-top:1px}.checkbox-row label{color:var(--text-default);font-size:12.5px}.action-bar{justify-content:flex-end;align-items:center;gap:10px;display:flex}.success-banner{background:var(--status-success-bg);border:1px solid var(--status-success-border);border-radius:var(--radius-card);color:var(--status-success-text);align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:500;display:flex}.receipt{border:1px solid var(--border-universal);border-radius:var(--radius-card);padding:20px}.receipt__brand{text-align:center;margin-bottom:14px}.receipt__brand-name{color:var(--text-strong);letter-spacing:.02em;font-size:15px;font-weight:700}.receipt__brand-doc{color:var(--text-muted);margin-top:2px;font-size:12px}.receipt__row{border-bottom:1px dashed var(--border-divider);justify-content:space-between;gap:16px;padding:7px 0;font-size:12.5px;display:flex}.receipt__row:last-child{border-bottom:none}.receipt__row .kv-key{color:var(--text-muted);flex-shrink:0}.receipt__row span{color:var(--text-strong);text-align:right;font-weight:500}.billing-row{border-bottom:1px solid var(--border-divider);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;font-size:13px;display:flex}.billing-row:last-of-type{border-bottom:none}.billing-row .kv-key{color:var(--text-quiet)}.billing-row span{color:var(--text-strong);font-weight:500}.billing-row--discount span{color:var(--status-success-text)}.billing-total-row{border-top:2px solid var(--border-universal);justify-content:space-between;align-items:baseline;margin-top:10px;padding-top:12px;display:flex}.billing-total-row label{color:var(--text-strong);font-size:13px;font-weight:600}.billing-total-row span{color:var(--color-primary);font-size:18px;font-weight:700}.payment-summary-note{color:var(--text-muted);margin-top:6px;font-size:12px}.signature-box{border:1px dashed var(--border-universal);border-radius:var(--radius-card);background:var(--surface-utility);cursor:pointer;height:140px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12.5px;display:flex}.signature-box.has-signature{background:var(--surface-card);cursor:default}.signature-box svg{width:140px;height:50px;color:var(--color-primary)}.signature-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.portal-header{height:var(--header-height);background:var(--surface-card);border-bottom:1px solid var(--border-universal);align-items:center;padding:0 24px;display:flex}.portal-header__brand-name{color:var(--text-strong);font-size:15px;font-weight:700}.portal-header__brand-sub{color:var(--text-muted);font-size:12px}.portal-main{gap:var(--section-spacing);flex-direction:column;max-width:640px;margin:0 auto;padding:32px 20px 60px;display:flex}.progress-stepper{align-items:flex-start;display:flex}.progress-step{text-align:center;flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.progress-step__track{align-items:center;width:100%;display:flex}.progress-step__line{background:var(--border-universal);flex:1;height:2px}.progress-step:first-child .progress-step__line--left,.progress-step:last-child .progress-step__line--right{visibility:hidden}.progress-step__circle{border:2px solid var(--border-universal);background:var(--surface-card);width:26px;height:26px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.progress-step.is-done .progress-step__circle{background:var(--status-success-text);border-color:var(--status-success-text);color:var(--text-on-primary)}.progress-step.is-done .progress-step__line{background:var(--status-success-text)}.progress-step.is-current .progress-step__circle{border-color:var(--color-primary);color:var(--color-primary-on-tint);background:var(--color-primary-tint)}.progress-step__label{color:var(--text-default);max-width:84px;font-size:12px;font-weight:600}.progress-step__state{color:var(--text-muted);font-size:12px}.progress-step.is-done .progress-step__state{color:var(--status-success-text)}.progress-step.is-current .progress-step__state{color:var(--color-primary)}@media (width<=480px){.portal-main{padding:20px 16px 40px}.portal-header{padding:0 16px}.portal-main .form-row{grid-template-columns:1fr}.portal-main .btn--primary{width:100%}.auth-page{padding:16px}.auth-card{padding:28px 20px}.auth-card .form-field input,.portal-main .form-field input,.portal-main .form-field select,.portal-main .form-field textarea{min-height:44px;font-size:16px}.auth-card .btn,.portal-main .btn{min-height:44px}.portal-main .card__header{flex-direction:column;align-items:stretch}.portal-main .card__header .btn{width:100%}.auth-card .checkbox-row{align-items:center}.auth-card .checkbox-row input[type=checkbox]{width:20px;height:20px;margin-top:0}.auth-card .checkbox-row label{padding:12px 0;font-size:14px}}@media print{body>:not(.print-area){display:none!important}.print-area{margin:0;padding:0;position:absolute;inset:0}}.qc-stepper{border:1px solid var(--border-universal);border-radius:var(--radius-card);flex-direction:column;gap:1px;display:flex;overflow:hidden}.qc-step{background:var(--surface-card);border-bottom:1px solid var(--border-divider);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;display:flex}.qc-step:last-child{border-bottom:none}.qc-step__index{background:var(--surface-utility);border:1px solid var(--border-universal);width:22px;height:22px;color:var(--text-quiet);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.qc-step__label{min-width:160px;color:var(--text-strong);flex:1;font-size:12.5px;font-weight:500}.qc-summary-banner{border-radius:var(--radius-card);align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;font-weight:500;display:flex}.qc-summary-banner--warning{background:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.drawer-overlay{z-index:var(--z-modal-overlay);background:#0f172a59;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-overlay[hidden]{display:none}.drawer{background:var(--surface-card);width:440px;max-width:100%;height:100%;box-shadow:var(--shadow-flyout);z-index:var(--z-modal);flex-direction:column;display:flex}.drawer__header{border-bottom:1px solid var(--border-universal);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.drawer__title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-h2-color)}.drawer__subtitle{color:var(--text-muted);margin-top:3px;font-size:12px}.drawer__body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.drawer__footer{border-top:1px solid var(--border-universal);justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.form-field{flex-direction:column;gap:5px;display:flex}.form-field label{color:var(--text-default);font-size:12px;font-weight:600}.form-field label .required-mark{color:var(--color-destructive);margin-left:2px}.form-field select,.form-field input,.form-field textarea{border:1px solid var(--border-universal);border-radius:var(--radius-input);height:34px;color:var(--text-strong);background:var(--surface-card);padding:0 10px;font-size:12.5px}.form-field textarea{resize:vertical;height:auto;min-height:64px;padding:8px 10px}.form-field select:focus,.form-field input:focus,.form-field textarea:focus{border-color:var(--color-primary)}.form-field.has-error select,.form-field.has-error input,.form-field.has-error textarea{border-color:var(--color-destructive)}.form-field__error{color:var(--color-destructive);font-size:12px}.form-field input[readonly],.form-field textarea[readonly]{background:var(--surface-utility);color:var(--text-quiet)}.choice-group{flex-wrap:wrap;gap:6px;display:flex}.choice-group__btn{border:1px solid var(--border-universal);border-radius:var(--radius-button);background:var(--surface-card);color:var(--text-default);cursor:pointer;padding:6px 12px;font-size:12.5px;font-weight:500}.choice-group__btn:hover:not(:disabled){background:var(--surface-utility)}.choice-group__btn.is-active{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary-on-tint);font-weight:600}.choice-group__btn:disabled{cursor:not-allowed;opacity:.55}.choice-group__btn.is-active:disabled{opacity:1}.choice-group__empty{color:var(--text-muted);padding:6px 0;font-size:12px}.form-field.has-error .choice-group__btn{border-color:var(--color-destructive)}.product-picker{flex-direction:column;gap:8px;display:flex}.request-filter{padding:12px var(--card-padding);border-bottom:1px solid var(--border-divider);color:var(--text-default);align-items:center;gap:10px;font-size:12px;font-weight:600;display:flex}.form-field__helper{color:var(--text-muted);font-size:12px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.part-picker-info{background:var(--surface-utility);border:1px solid var(--border-universal);border-radius:var(--radius-card);gap:16px;padding:10px 12px;font-size:12px;display:flex}.part-picker-info b{color:var(--text-strong);font-size:13px;display:block}.empty-selection-hint{text-align:center;color:var(--text-muted);padding:32px 16px;font-size:12.5px}.request-list{flex-direction:column;display:flex}.request-row{padding:12px var(--card-padding);border-bottom:1px solid var(--border-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.request-row:last-child{border-bottom:none}.request-row__main{flex-direction:column;gap:3px;min-width:220px;display:flex}.request-row__title{color:var(--text-strong);font-size:13px;font-weight:600}.request-row__meta{color:var(--text-muted);font-size:12px}.request-row__right{align-items:center;gap:12px;display:flex}.drawer-table{border-collapse:collapse;border:1px solid var(--border-universal);border-radius:var(--radius-table);width:100%;overflow:hidden}.drawer-table th{background:var(--surface-utility);font-size:var(--text-table-header-size);font-weight:var(--text-table-header-weight);text-transform:uppercase;letter-spacing:var(--text-table-header-tracking);color:var(--text-table-header-color);text-align:left;border-bottom:1px solid var(--border-universal);padding:7px 10px}.drawer-table td{border-bottom:1px solid var(--border-divider);color:var(--text-strong);padding:7px 10px;font-size:12.5px}.drawer-table tr:last-child td{border-bottom:none}.drawer-table td.mono{white-space:nowrap}.drawer-table--inputs td>input,.drawer-table--inputs td>select{width:100%;min-width:0}.item-row{grid-template-columns:minmax(0,1.4fr) 70px minmax(0,1fr) 28px;align-items:center;gap:8px;margin-top:8px;display:grid}.item-row.item-row--3col{grid-template-columns:minmax(0,1.4fr) 70px 28px}.item-row select,.item-row input{border:1px solid var(--border-universal);border-radius:var(--radius-input);height:32px;color:var(--text-strong);width:100%;padding:0 8px;font-size:12px}.item-row select:focus,.item-row input:focus{border-color:var(--color-primary)}.item-row__remove{border:1px solid var(--border-universal);border-radius:var(--radius-button);background:var(--surface-card);width:28px;height:28px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.item-row__remove:hover{background:var(--color-destructive-tint);border-color:var(--color-destructive-hover);color:var(--color-destructive-hover)}.inline-error-banner{border-radius:var(--radius-card);background:var(--status-danger-bg);color:var(--status-danger-text);border:1px solid var(--status-danger-border);padding:9px 12px;font-size:12px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stack{flex-direction:column;gap:14px;display:flex}.stack--loose{gap:var(--section-spacing)}.inline-group{gap:8px;display:flex}.inline-group>input{flex:1;min-width:0}.inline-group--offset{margin-top:8px}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.card__title--sm{font-size:var(--text-body-size)}.card__title--spaced{margin-bottom:8px}.toolbar__field--search{flex:1;max-width:260px}.toolbar__field--search .text-field{width:100%}.notification-popover{width:300px;top:56px;left:auto;right:24px}.detail-grid__item--wide{grid-column:1/-1}.action-bar--start{justify-content:flex-start}.cell-muted--sm{font-size:var(--text-micro-size)}.metric-figure{color:var(--text-strong);font-variant-numeric:tabular-nums;margin-top:6px;font-size:20px;font-weight:700;line-height:28px}.report-body{padding:var(--card-padding);gap:var(--section-spacing);flex-direction:column;transition:opacity .12s;display:flex}.report-body.is-refreshing{opacity:.5}.stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stat-tile{border:1px solid var(--border-universal);border-radius:var(--radius-card);padding:12px var(--card-padding);min-width:0}.stat-tile__label{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-muted);font-weight:500}.stat-tile__value{color:var(--text-strong);font-variant-numeric:proportional-nums;margin-top:4px;font-size:20px;font-weight:700;line-height:28px}.stat-tile__meta{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-muted)}.report-grid{gap:var(--section-spacing);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.report-panel{border:1px solid var(--border-universal);border-radius:var(--radius-card);padding:var(--card-padding);min-width:0}.report-panel--wide{grid-column:1/-1}.report-panel__title{font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-strong);font-weight:600}.report-panel__meta{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-muted);margin-bottom:14px}.report-panel .empty-selection-hint{padding:24px 0}[data-chart-mark]{outline-offset:2px;cursor:default}[data-chart-mark]:focus-visible{outline:2px solid var(--color-primary-focus-ring)}.chart-columns{grid-template-rows:200px auto;grid-template-columns:56px minmax(0,1fr);padding-top:20px;display:grid}.chart-columns__plot{border-bottom:1px solid var(--chart-baseline);grid-column:2;position:relative}.chart-columns__grid{border-top:1px solid var(--chart-grid);height:0;position:absolute;left:0;right:0}.chart-columns__grid:first-child{border-top-color:#0000}.chart-columns__tick{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;position:absolute;top:0;right:calc(100% + 8px);transform:translateY(-50%)}.chart-columns__slots,.chart-columns__labels{grid-template-columns:repeat(var(--count), minmax(0, 1fr));gap:2px;display:grid}.chart-columns__slots{position:absolute;inset:0}.chart-columns__slot{justify-content:center;align-items:flex-end;display:flex;position:relative}.chart-columns__bar{background:var(--chart-series-1);border-radius:8px 8px 0 0;width:min(24px,70%);position:relative}.chart-columns__slot:hover .chart-columns__bar,.chart-columns__slot:focus-visible .chart-columns__bar{background:var(--color-primary-hover)}.chart-columns__value{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-strong);white-space:nowrap;font-weight:600;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.chart-columns__labels{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums;grid-column:2;padding-top:6px}.chart-columns__labels span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chart-bars{flex-direction:column;display:flex}.chart-bars__row{border-radius:var(--radius-button);grid-template-columns:minmax(120px,38%) minmax(0,1fr);align-items:center;min-height:32px;display:grid}.chart-bars__row:hover{background:var(--surface-utility)}.chart-bars__label{font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-default);text-overflow:ellipsis;white-space:nowrap;padding:0 12px 0 8px;overflow:hidden}.chart-bars__track{border-left:1px solid var(--chart-baseline);align-self:stretch;align-items:center;gap:8px;min-width:0;display:flex}.chart-bars__bar{width:calc((100% - 104px) * var(--p));background:var(--chart-series-1);border-radius:0 8px 8px 0;flex:none;min-width:2px;height:16px}.chart-bars__row:hover .chart-bars__bar,.chart-bars__row:focus-visible .chart-bars__bar{background:var(--color-primary-hover)}.chart-bars__value{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-strong);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.chart-split__bar{gap:2px;height:24px;display:flex}.chart-split__segment{flex-basis:0;min-width:4px}.chart-split__segment:last-child{border-radius:0 8px 8px 0}.chart-split__segment--1,.chart-legend__key--1{background:var(--chart-series-1)}.chart-split__segment--2,.chart-legend__key--2{background:var(--chart-series-2)}.chart-split__segment:hover,.chart-split__segment:focus-visible{filter:brightness(.9)}.chart-legend{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.chart-legend__item{font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-default);align-items:center;gap:8px;display:flex}.chart-legend__key{border-radius:8px;flex:none;width:12px;height:12px}.chart-legend__value{color:var(--text-strong);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.chart-data{margin-top:12px}.chart-data summary{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--color-primary-hover);cursor:pointer;font-weight:500;display:inline-block}.chart-data[open] summary{margin-bottom:8px}.chart-tooltip{z-index:var(--z-dropdown);background:var(--surface-card);border:1px solid var(--border-universal);border-radius:var(--radius-button);box-shadow:var(--shadow-flyout);pointer-events:none;white-space:nowrap;padding:6px 10px;position:fixed;transform:translate(-50%)}.chart-tooltip__value{font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-strong);font-variant-numeric:tabular-nums;font-weight:600}.chart-tooltip__label{font-size:var(--text-micro-size);line-height:var(--text-micro-line);color:var(--text-muted);align-items:center;gap:6px;display:flex}.chart-tooltip__label[data-series="1"]:before,.chart-tooltip__label[data-series="2"]:before{content:"";border-radius:8px;width:12px;height:2px}.chart-tooltip__label[data-series="1"]:before{background:var(--chart-series-1)}.chart-tooltip__label[data-series="2"]:before{background:var(--chart-series-2)}@media (forced-colors:active){.chart-columns__bar,.chart-bars__bar,.chart-split__segment,.chart-legend__key{forced-color-adjust:none;background:canvastext}.chart-split__segment--2,.chart-legend__key--2{background:repeating-linear-gradient(45deg,canvastext 0 2px,canvas 2px 5px)}}.master-detail{grid-template-columns:340px minmax(0,1fr);align-items:start;gap:20px;display:grid}.assign-fields{grid-template-columns:200px minmax(0,1fr);gap:12px;margin-top:14px;display:grid}.inline-lookup{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-lookup .text-field{width:210px;max-width:100%}.skip-link{z-index:var(--z-critical-modal);border-radius:var(--radius-button);background:var(--color-primary);color:var(--text-on-primary);padding:10px 14px;font-weight:600;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus-visible{transform:none}.app-main:focus{outline:none}.app-menu-toggle,.app-sidebar-backdrop{display:none}:root{--surface-page:#f8f7f2;--surface-utility:#f8f7f2;--surface-inverse:#29354a;--border-universal:#d9e3db;--border-divider:#eaefe9;--color-primary:#244c43;--color-primary-hover:#1b3c35;--color-primary-focus-ring:#244c43;--color-primary-tint:#ddefe4;--color-primary-on-tint:#244c43;--color-primary-border:#b9d5c3;--color-primary-wash:#f4faf6;--color-destructive:#8b4248;--color-destructive-hover:#6f3439;--color-destructive-tint:#fbe7e8;--color-destructive-border:#f2c5bf;--status-success-text:#244c43;--status-success-bg:#ddefe4;--status-success-border:#c3e2cf;--status-warning-text:#795b18;--status-warning-bg:#fff1ce;--status-warning-border:#f3d58a;--status-danger-text:#8b4248;--status-danger-bg:#fbe7e8;--status-danger-border:#f2c5bf;--status-processing-text:#29354a;--status-processing-bg:#dcd8ed;--status-processing-border:#c9c3e2;--status-neutral-text:#62716c;--status-neutral-bg:#f8f7f2;--status-neutral-border:#d9e3db;--text-strong:#29354a;--text-default:#364257;--text-quiet:#4a5853;--text-muted:#62716c;--text-faint:#b8c4bc;--chart-series-2:#efb952;--radius-button:8px;--radius-input:8px;--radius-badge:8px;--radius-card:10px;--radius-table:10px;--radius-modal:10px;--radius-drawer:10px;--shadow-flyout:0 6px 16px #29354a1a}.sidebar-brand__logo{align-items:center;gap:10px;display:flex}.sidebar-brand__logo .brand-mark{width:36px;height:36px}.sidebar-brand__logo .brand-wordmark{width:auto;height:22px}.status-badge__icon{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:12px;height:12px}@media (width<=1599px){.data-table--fluid thead th,.data-table--fluid tbody td{padding-left:8px;padding-right:8px}}@media (width>=768px) and (width<=1439px){.data-table--fluid .col-category{display:none}}@media (width>=768px) and (width<=1365px){.data-table--fluid thead th,.data-table--fluid tbody td{padding-left:6px;padding-right:6px}}@media (width<=1279px){:root{--sidebar-width:224px}}@media (width<=1023px){:root{--page-padding:20px}.app-sidebar{width:min(300px,86vw);z-index:var(--z-dropdown);box-shadow:var(--shadow-flyout);visibility:hidden;transition:transform .22s cubic-bezier(.16,1,.3,1),visibility 0s linear .22s;overflow-y:auto;transform:translate(-100%)}.is-nav-open .app-sidebar{visibility:visible;transition:transform .22s cubic-bezier(.16,1,.3,1);transform:none}.app-sidebar-backdrop{z-index:calc(var(--z-dropdown) - 1);background:#29354a66;display:block;position:fixed;inset:0}.app-menu-toggle{flex-shrink:0;display:flex}.app-header{gap:12px;left:0}.header-search{max-width:none}.header-spacer,.header-search__shortcut{display:none}.app-main{width:100%;margin-left:0}.master-detail{grid-template-columns:minmax(0,1fr)}.master-detail>*{scroll-margin-top:calc(var(--header-height) + 12px)}.report-grid{grid-template-columns:minmax(0,1fr)}.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-popover{right:12px}}@media (width<=1023px) and (prefers-reduced-motion:reduce){.app-sidebar,.is-nav-open .app-sidebar{transition:none}}@media (width<=767px){:root{--header-height:108px;--page-padding:12px;--section-spacing:16px;--card-padding:14px;--text-body-size:14px;--text-body-line:20px}.app-header{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"menu spacer right""search search search";align-items:center;gap:8px;padding:8px 12px;display:grid}.app-menu-toggle{grid-area:menu}.header-spacer{grid-area:spacer;display:block}.header-right{grid-area:right;gap:4px;min-width:0}.header-search{grid-area:search;max-width:none}.app-header>.status-badge{display:none}.header-user{min-width:0;max-width:34vw;margin-left:4px}.header-user__name,.header-user__role{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notification-popover{top:calc(var(--header-height) + 4px);width:auto;position:fixed;left:12px;right:12px}.header-search__results{max-height:calc(100vh - var(--header-height) - 24px);overflow-y:auto}.page-title-row,.card__header,.section-head{flex-wrap:wrap}.toolbar{padding:10px var(--card-padding)}.toolbar__field,.toolbar__field--search{flex:100%;max-width:none}.toolbar__field .select-field,.toolbar__field .text-field{flex:1;min-width:0}.toolbar__spacer{display:none}.form-page{max-width:none}.form-row,.detail-grid,.assign-fields{grid-template-columns:minmax(0,1fr)}.inline-lookup{width:100%}.inline-lookup .text-field{flex:160px;width:auto}.action-bar{flex-wrap:wrap}.action-bar .btn{flex:auto}.workload-row{flex-wrap:wrap}.workload-row__info{width:100%}.pagination{flex-wrap:wrap;row-gap:8px}.modal-overlay{align-items:flex-end;padding:0}.modal,.modal--critical{border-radius:var(--radius-modal) var(--radius-modal) 0 0;max-width:none;max-height:92vh}.modal__header,.drawer__header{padding:14px 16px}.modal__body,.drawer__body{padding:16px}.modal__footer,.drawer__footer{padding:12px 16px max(12px, env(safe-area-inset-bottom));flex-wrap:wrap}.modal__footer .btn,.drawer__footer .btn{flex:auto}.drawer{width:100%!important}.toast-stack{left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom))}.toast{min-width:0;max-width:none}.app-main input:not([type=checkbox]):not([type=radio]),.app-main select,.app-main textarea,.modal input:not([type=checkbox]):not([type=radio]),.modal select,.modal textarea,.drawer input:not([type=checkbox]):not([type=radio]),.drawer select,.drawer textarea,.header-search input{font-size:16px}.table-scroll{overflow-x:visible}.data-table{min-width:0}.data-table,.data-table tbody,.data-table tr,.data-table td{width:100%;display:block}.data-table thead{border-bottom:1px solid var(--border-universal);display:block}.data-table thead tr{flex-wrap:wrap;gap:6px;padding:10px 12px;display:flex}.data-table thead th{display:none}.data-table thead th.is-sortable{border:1px solid var(--border-universal);border-radius:var(--radius-badge);background:var(--surface-card);padding:0;display:block;position:static}.data-table thead th.is-sortable .sort-button{min-height:32px;padding:0 12px}.data-table thead:not(:has(th.is-sortable)){display:none}.data-table tbody tr{border-bottom:1px solid var(--border-universal);padding:6px 14px}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody td{overflow-wrap:anywhere;border-bottom:none;height:auto;padding:6px 0}.data-table tbody td[data-label]{grid-template-columns:minmax(96px,38%) minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.data-table tbody td[data-label]:before{content:attr(data-label);font-family:var(--font-sans);letter-spacing:normal;color:var(--text-muted);font-size:12px;font-weight:600}.data-table tbody td[data-label]>*{grid-column:2;justify-self:start}.data-table tbody tr:hover td{background:0 0}.data-table tbody tr:hover{background:var(--border-divider)}.data-table .cell-actions,.data-table td[data-label]>.cell-actions{white-space:normal;flex-wrap:wrap}.drawer .table-scroll{overflow-x:auto}}@media (pointer:coarse){.btn,.icon-button,.select-field,.text-field,.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.choice-group__btn,.result-toggle__btn,.pagination__nav-btn,.header-search input{min-height:44px}.btn--sm{min-height:36px}.icon-button,.pagination__nav-btn{min-width:44px}.sidebar-nav__item{min-height:44px}.modal__close{width:44px;height:44px}.checkbox-row input[type=checkbox]{width:20px;height:20px}.drawer-table--inputs input,.drawer-table--inputs select,.item-row input,.item-row select,.item-row__remove{min-height:44px}}.kh-app{--kh-forest:var(--color-primary);--kh-forest-hover:var(--color-primary-hover);--kh-navy:var(--text-strong);--kh-quiet:var(--text-quiet);--kh-cream:var(--surface-page);--kh-mint-soft:var(--color-primary-tint);--kh-lilac:var(--status-processing-bg);--kh-honey:var(--chart-series-2);--kh-peach:var(--color-destructive-border);--kh-muted:var(--text-muted);--kh-border:var(--border-universal);--kh-divider:var(--border-divider);--kh-faint:#8a968f;--kh-warn-text:var(--status-warning-text);--kh-warn-bg:var(--status-warning-bg);--kh-bad-text:var(--status-danger-text);--kh-bad-bg:var(--status-danger-bg);--kh-ease:cubic-bezier(.16, 1, .3, 1);background:var(--kh-cream);min-height:100vh;color:var(--kh-navy);flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;display:flex}:where(.kh-app) :where(h1,h2,h3,h4,h5,p,ul,ol,figure){margin:0}:where(.kh-app) a{color:inherit;text-decoration:none}.kh-app :focus-visible{outline:2px solid var(--kh-forest);outline-offset:2px;border-radius:8px}.kh-app ::selection{background:var(--kh-mint-soft);color:var(--kh-forest)}.kh-app input,.kh-app textarea{caret-color:var(--kh-forest)}.kh-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:16px;height:16px}.kh-auth{color:var(--kh-navy);flex-direction:row;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.auth-banner{background:linear-gradient(160deg, #2e5d52 0%, var(--kh-forest) 45%, var(--kh-forest-hover) 100%);color:#fff;flex-direction:column;justify-content:space-between;gap:32px;width:46%;padding:40px 48px;display:flex;position:relative;overflow:hidden}.auth-banner:before{content:"";pointer-events:none;background:radial-gradient(circle,#efb95229 0%,#0000 70%);width:400px;height:400px;position:absolute;top:-100px;left:-100px}.banner-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.banner-logo{color:#fff;align-items:center;gap:12px;display:flex}.brand-mark{flex-shrink:0;width:44px;height:44px}.brand-wordmark{width:auto;height:26px;display:block}.banner-home-link{color:#fff;white-space:nowrap;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:background .2s;display:flex}.banner-home-link:hover{background:#ffffff38}.banner-ticket{width:min(100%,360px);color:var(--kh-navy);background:#fff;border-radius:10px;align-self:center;padding:20px 22px;position:relative;box-shadow:0 25px 50px -12px #10211d8c}.banner-ticket-head{border-bottom:1px solid var(--kh-divider);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;padding-bottom:14px;display:flex}.banner-ticket-code{color:var(--kh-muted);font-size:12.5px;font-weight:500}.banner-ticket-device{font-size:15px;font-weight:800;line-height:1.3}.banner-steps{flex-direction:column;gap:9px;padding:0;list-style:none;display:flex}.banner-steps li{color:var(--kh-faint);align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.banner-steps li:before{content:"";border:2px solid var(--kh-border);border-radius:50%;flex-shrink:0;width:10px;height:10px}.banner-steps li.is-done{color:var(--kh-navy)}.banner-steps li.is-done:before{background:var(--kh-forest);border-color:var(--kh-forest)}.banner-steps li.is-current{color:var(--kh-forest)}.banner-steps li.is-current:before{border-color:var(--kh-honey);background:var(--kh-honey);box-shadow:0 0 0 4px #efb9524d}.process-card{background:#ffffff14;border:1px solid #ffffff26;border-radius:10px;padding:24px;position:relative}.process-card-header{margin-bottom:18px;font-size:15px;font-weight:700}.process-steps{flex-direction:column;gap:16px;padding:0;list-style:none;display:flex}.process-step-item{align-items:flex-start;gap:14px;display:flex}.step-number{background:#ffffff26;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.step-text h4{margin-bottom:2px;font-size:14px;font-weight:700}.step-text p{color:#ffffffc7;font-size:12.5px;line-height:1.45}.banner-footer{position:relative}.banner-heading{text-wrap:balance;margin-bottom:10px;font-size:28px;font-weight:800;line-height:1.3}.banner-subheading{color:#fffc;max-width:52ch;font-size:14px;line-height:1.6}.auth-form-panel{background:#fff;flex-direction:column;justify-content:space-between;gap:32px;width:54%;padding:40px 60px;display:flex}.tab-switcher-wrapper{justify-content:flex-end;display:flex}.tab-switcher{background:var(--kh-divider);border-radius:10px;padding:4px;display:inline-flex}.tab-btn{color:var(--kh-quiet);border-radius:8px;padding:8px 20px;font-size:13px;font-weight:600;transition:background .2s,color .2s}.tab-btn:hover{color:var(--kh-navy)}.tab-btn.active{color:var(--kh-navy);background:#fff;box-shadow:0 2px 4px #0000000f}.form-content{width:100%;max-width:440px;margin:0 auto}.form-header{margin-bottom:24px}.form-header h1{color:var(--kh-navy);letter-spacing:-.02em;margin-bottom:6px;font-size:26px;font-weight:800}.form-header p{color:var(--kh-muted);font-size:14px}.form-group{margin-bottom:16px}.form-group>label{color:var(--kh-navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:11.5px;font-weight:700;display:block}.input-wrapper{align-items:center;gap:8px;display:flex;position:relative}.input-icon{color:var(--kh-faint);pointer-events:none;display:flex;position:absolute;left:14px}.form-input{border:1px solid var(--kh-muted);width:100%;min-height:44px;color:var(--kh-navy);background:#fff;border-radius:8px;padding:11px 14px 11px 40px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-input::placeholder,.regular-input::placeholder,.search-box-wrap input::placeholder{color:var(--kh-muted)}.form-input:focus{border-color:var(--kh-forest);outline:none;box-shadow:0 0 0 3px #244c4326}.form-input[aria-invalid=true],.regular-input[aria-invalid=true]{border-color:var(--kh-bad-text)}.form-input--with-eye{padding-right:44px}.eye-btn{width:34px;height:34px;color:var(--kh-muted);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;right:6px}.eye-btn:hover{color:var(--kh-navy);background:var(--kh-divider)}.input-subnote{color:var(--kh-muted);margin-top:5px;font-size:12px;line-height:1.45}.field-error{color:var(--kh-bad-text);margin-top:5px;font-size:12px;font-weight:500}.btn-otp{border:1px solid var(--kh-forest);background:var(--kh-mint-soft);min-height:44px;color:var(--kh-forest-hover);white-space:nowrap;border-radius:8px;flex-shrink:0;padding:0 16px;font-size:13px;font-weight:700;transition:background .2s}.btn-otp:hover:not(:disabled){background:var(--kh-mint-soft)}.btn-otp:disabled{border-color:var(--kh-border);background:var(--kh-divider);color:var(--kh-muted);cursor:not-allowed}.form-meta{justify-content:space-between;align-items:center;margin-bottom:20px;font-size:13px;display:flex}.forgot-link{color:var(--kh-forest);font-size:13px;font-weight:600}.forgot-link:hover{text-decoration:underline}.link-button{font:inherit;color:var(--kh-forest);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.link-button:hover{text-decoration:underline}.checkbox-label{color:var(--kh-muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--kh-forest)}.btn-submit{background:var(--kh-forest);color:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:46px;padding:12px 20px;font-size:14px;font-weight:700;transition:background .2s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #244c4340}.btn-submit:hover:not(:disabled){background:var(--kh-forest-hover);box-shadow:0 6px 16px #244c4359}.btn-submit:disabled{opacity:.7;cursor:progress}.form-switch-text{text-align:center;color:var(--kh-muted);margin-top:18px;font-size:13px}.form-switch-text a{color:var(--kh-forest-hover);font-weight:700}.form-switch-text a:hover{text-underline-offset:3px;text-decoration:underline}.form-footer-note{text-align:center;color:var(--kh-muted);font-size:12px;line-height:1.5}.validation-summary-errors,.validation-summary-success{border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.validation-summary-errors{background:var(--kh-bad-bg);border:1px solid var(--kh-peach);color:var(--kh-bad-text)}.validation-summary-success{background:var(--kh-mint-soft);color:var(--kh-forest);border:1px solid #c3e2cf}.kh-auth .role-choice-list{flex-direction:column;gap:10px;display:flex}.kh-auth .role-choice{border:1px solid var(--kh-border);min-height:46px;color:var(--kh-navy);text-align:left;background:#fff;border-radius:8px;padding:0 16px;font-size:14px;font-weight:700;transition:border-color .2s,background .2s}.kh-auth .role-choice:hover{border-color:var(--kh-forest);background:var(--kh-mint-soft)}.kh-auth{min-height:100dvh}@media (width>=768px){.kh-auth{height:100dvh}.auth-banner>*,.auth-form-panel>*{zoom:var(--auth-scale,1)}.auth-banner{gap:clamp(16px,3.5vh,32px);padding:clamp(24px,5vh,40px) clamp(28px,3.4vw,48px)}.auth-form-panel{gap:clamp(12px,3vh,32px);padding:clamp(20px,4.5vh,40px) clamp(28px,4.2vw,60px);overflow-y:auto}.form-header{margin-bottom:clamp(14px,2.6vh,24px)}.form-group{margin-bottom:clamp(10px,1.8vh,16px)}.form-group>label{margin-bottom:clamp(4px,.7vh,6px)}.form-switch-text{margin-top:clamp(10px,2vh,18px)}.process-card{padding:clamp(16px,2.8vh,24px)}.process-steps{gap:clamp(10px,1.8vh,16px)}.banner-heading{font-size:clamp(22px,3.4vh,28px)}}@media (width>=768px) and (height<=800px){.form-input{min-height:40px;padding-top:9px;padding-bottom:9px}.btn-submit{min-height:44px}}@media (width>=1024px) and (orientation:landscape){.kh-auth--wide .auth-banner{width:38%}.kh-auth--wide .auth-form-panel{width:62%}.kh-auth--wide .form-content{max-width:600px}.kh-auth--wide form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;display:grid}.kh-auth--wide form>:not(.form-group){grid-column:1/-1}}@media (width>=768px) and (orientation:portrait){.auth-banner{width:40%}.auth-form-panel{width:60%}}@media (width<=767px){.kh-auth{flex-direction:column}.auth-banner,.auth-form-panel{width:100%;padding:28px 20px}.auth-form-panel{flex:1}.banner-ticket,.process-card{display:none}.banner-heading{font-size:22px}}.navbar-header{z-index:100;background:#fffffffa;border-bottom:1px solid #d9e3dbe6;position:sticky;top:0;box-shadow:0 2px 10px #00000008}.nav-container{justify-content:space-between;align-items:center;gap:24px;max-width:1280px;min-height:72px;margin:0 auto;padding:0 24px;display:flex}.nav-brand{align-items:center;gap:12px;display:flex}.nav-menu{align-items:center;gap:28px;padding:0;list-style:none;display:flex}.nav-link{color:var(--kh-navy);white-space:nowrap;font-size:14px;font-weight:500;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--kh-forest)}.nav-link.active{font-weight:700}.nav-right-actions{align-items:center;gap:12px;display:flex}.btn-primary-teal,.btn-secondary-white{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:background .2s,box-shadow .2s,border-color .2s,transform .2s;display:inline-flex}.btn-primary-teal{background:var(--kh-forest);color:#fff;border:none;box-shadow:0 4px 14px #244c434d}.btn-primary-teal:hover:not(:disabled){background:var(--kh-forest-hover);transform:translateY(-1px);box-shadow:0 6px 20px #244c4366}.btn-primary-teal:disabled,.btn-secondary-white:disabled{opacity:.65;cursor:progress;transform:none}.btn-secondary-white{color:var(--kh-navy);border:1px solid var(--kh-border);background:#fff}.btn-secondary-white:hover:not(:disabled){border-color:var(--kh-forest);color:var(--kh-forest-hover)}.btn-danger-outline{color:var(--kh-bad-text);border-color:var(--kh-peach)}.btn-danger-outline:hover:not(:disabled){color:#6f3439;border-color:var(--kh-bad-text)}.btn-sm{border-radius:8px;min-height:34px;padding:0 14px;font-size:12.5px}.user-profile-menu{position:relative}.user-profile-trigger{background:var(--kh-cream);border:1px solid var(--kh-border);min-height:42px;color:var(--kh-muted);border-radius:10px;align-items:center;gap:10px;padding:4px 14px 4px 5px;transition:background .2s,border-color .2s,box-shadow .2s;display:inline-flex}.user-profile-trigger:hover,.user-profile-trigger[aria-expanded=true]{border-color:var(--kh-forest);background:#fff;box-shadow:0 4px 12px #244c4326}.user-avatar-circle{background:var(--kh-forest);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.user-name-text{color:var(--kh-navy);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:13px;font-weight:600;overflow:hidden}.profile-dropdown-content{border:1px solid var(--kh-border);z-index:110;width:248px;animation:kh-drop .25s var(--kh-ease);background:#fff;border-radius:10px;padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 15px 35px #29354a2e,0 5px 15px #00000014}@keyframes kh-drop{0%{opacity:0;transform:translateY(8px)}}.profile-dropdown-header{border-bottom:1px solid var(--kh-divider);align-items:center;gap:12px;margin-bottom:8px;padding-bottom:10px;display:flex}.dropdown-user-name{font-size:14px;font-weight:700;line-height:1.25}.dropdown-user-role{color:var(--kh-forest-hover);font-size:12px;font-weight:600}.profile-dropdown-item{color:var(--kh-navy);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:13px;font-weight:600;transition:background .2s,color .2s;display:flex}.profile-dropdown-item:hover,.profile-dropdown-item.active-drop{background:var(--kh-divider);color:var(--kh-forest-hover)}.profile-dropdown-item.logout-item{border-top:1px solid var(--kh-divider);border-radius:0 0 8px 8px;margin-top:6px;padding-top:12px}.profile-dropdown-item.logout-item:hover{background:var(--kh-bad-bg);color:var(--kh-bad-text)}.kh-main{flex:1}.hero-section{background:linear-gradient(180deg, var(--kh-mint-soft) 0%, var(--kh-cream) 100%);padding:56px 24px 72px;position:relative;overflow:hidden}.hero-bg-glow{pointer-events:none;background:radial-gradient(circle,#dcd8edb3 0%,#dcd8ed33 45%,#fff0 70%);width:600px;height:600px;position:absolute;top:-100px;right:-100px}.hero-grid-container{grid-template-columns:1fr 1.1fr;align-items:center;gap:50px;max-width:1280px;margin:0 auto;display:grid;position:relative}.hero-left-content{flex-direction:column;align-items:flex-start;display:flex}.hero-headline{color:var(--kh-navy);letter-spacing:-.02em;text-wrap:balance;margin-bottom:18px;font-size:44px;font-weight:800;line-height:1.15}.hero-description{color:var(--kh-navy);max-width:540px;margin-bottom:30px;font-size:16px;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-actions .btn-primary-teal,.hero-actions .btn-secondary-white{min-height:48px;padding:0 26px;font-size:15px}.hero-dashboard-card{background:#fff;border:1px solid #d9e3dbe6;border-radius:10px;padding:22px;box-shadow:0 25px 50px -12px #29354a26}.dash-stats-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;display:grid}.dash-stat-box{background:var(--kh-cream);border:1px solid var(--kh-divider);border-radius:10px;padding:12px 14px;transition:border-color .2s}a.dash-stat-box:hover{border-color:var(--kh-forest)}.dash-stat-label{color:var(--kh-muted);margin-bottom:2px;font-size:12px;font-weight:500}.dash-stat-val{color:var(--kh-navy);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.dispatch-section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.dispatch-title{font-size:14px;font-weight:700}.dispatch-link{color:var(--kh-forest-hover);white-space:nowrap;font-size:12.5px;font-weight:600}.dispatch-link:hover{text-underline-offset:3px;text-decoration:underline}.dispatch-ticket-list{flex-direction:column;gap:8px;display:flex}.ticket-item-row{background:var(--kh-cream);border:1px solid var(--kh-divider);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;transition:background .2s,border-color .2s;display:flex}a.ticket-item-row:hover{border-color:var(--kh-border);background:#fff}.ticket-info-left{align-items:center;gap:10px;min-width:0;display:flex}.ticket-type-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.type-qr{background:var(--kh-lilac);color:var(--kh-navy)}.type-sr{background:var(--kh-warn-bg);color:var(--kh-warn-text)}.type-ok{background:var(--kh-mint-soft);color:var(--kh-forest)}.ticket-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.ticket-meta{color:var(--kh-muted);font-size:12px}.badge{white-space:nowrap;border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge-processing{background:var(--kh-lilac);color:var(--kh-navy)}.badge-waiting{background:var(--kh-warn-bg);color:var(--kh-warn-text)}.badge-completed{background:var(--kh-mint-soft);color:var(--kh-forest)}.badge-received{background:var(--kh-cream);color:var(--kh-muted);border-color:var(--kh-border)}.badge-danger{background:var(--kh-bad-bg);color:var(--kh-bad-text)}.badge.has-icon:before{content:none}.badge .kh-icon{width:14px;height:14px}.page-container{max-width:1200px;margin:40px auto 80px;padding:0 24px}.kh-page-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.kh-page-title{letter-spacing:-.02em;font-size:28px;font-weight:800;line-height:1.2}.kh-page-subtitle{color:var(--kh-muted);margin-top:4px;font-size:14px}.breadcrumb-text{color:var(--kh-muted);margin-bottom:24px;font-size:13px}.breadcrumb-text a{color:var(--kh-forest-hover);font-weight:600}.breadcrumb-text a:hover{text-underline-offset:3px;text-decoration:underline}.kh-alert{border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:14px 18px;font-size:14px;font-weight:600;display:flex}.kh-alert--success{background:var(--kh-mint-soft);color:var(--kh-forest);border:1px solid #c3e2cf}.kh-alert--error{background:var(--kh-bad-bg);color:var(--kh-bad-text);border:1px solid var(--kh-peach)}.kh-alert--warning{background:var(--kh-warn-bg);color:var(--kh-warn-text);border:1px solid #f3d58a}.kh-alert--success,.kh-alert--warning,.kh-alert--error{padding-left:48px;position:relative}.kh-alert--success:before,.kh-alert--warning:before,.kh-alert--error:before{content:"";width:18px;height:18px;-webkit-mask:var(--kh-alert-icon) center / contain no-repeat;-webkit-mask:var(--kh-alert-icon) center / contain no-repeat;mask:var(--kh-alert-icon) center / contain no-repeat;background:currentColor;position:absolute;top:16px;left:18px}.kh-alert--success:before{--kh-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m8.5 12 2.5 2.5 4.5-5'/%3E%3C/svg%3E")}.kh-alert--warning:before{--kh-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E")}.kh-alert--error:before{--kh-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m15 9-6 6M9 9l6 6'/%3E%3C/svg%3E")}.profile-layout-grid{grid-template-columns:300px 1fr;align-items:start;gap:30px;display:grid}.user-sidebar-card{border:1px solid var(--kh-border);text-align:center;background:#fff;border-radius:10px;padding:30px 22px 22px;position:sticky;top:96px;box-shadow:0 4px 20px #0000000a}.user-big-avatar{background:linear-gradient(135deg, var(--kh-forest) 0%, var(--kh-navy) 100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;margin:0 auto 16px;font-size:32px;font-weight:800;display:flex;box-shadow:0 8px 20px #244c434d}.user-card-fullname{margin-bottom:4px;font-size:20px;font-weight:800}.user-card-phone{color:var(--kh-muted);align-items:center;gap:6px;margin-bottom:14px;font-size:13px;display:inline-flex}.user-badge-role{background:var(--kh-mint-soft);color:var(--kh-forest-hover);text-transform:uppercase;letter-spacing:.03em;border-radius:10px;align-items:center;gap:6px;padding:4px 14px;font-size:11px;font-weight:700;display:inline-flex}.sidebar-stats-row{border-top:1px solid var(--kh-divider);border-bottom:1px solid var(--kh-divider);grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;padding:16px 0;display:grid}.stat-box-num{color:var(--kh-forest);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.stat-box-label{color:var(--kh-muted);text-transform:uppercase;font-size:11px;font-weight:700}.sidebar-nav-links{text-align:left;flex-direction:column;gap:4px;display:flex}.sidebar-nav-btn{color:var(--kh-navy);border-radius:10px;align-items:center;gap:12px;padding:11px 14px;font-size:14px;font-weight:700;transition:background .2s,color .2s;display:flex}.sidebar-nav-btn:hover,.sidebar-nav-btn.active{background:var(--kh-mint-soft);color:var(--kh-forest-hover)}.content-stack{flex-direction:column;gap:24px;min-width:0;display:flex}.content-panel-card{border:1px solid var(--kh-border);background:#fff;border-radius:10px;padding:30px;box-shadow:0 4px 20px #0000000a}.panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.card-heading-title{margin-bottom:4px;font-size:20px;font-weight:800}.card-heading-desc{color:var(--kh-muted);font-size:13.5px}.panel-head+form,.card-heading-desc+form{margin-top:4px}.form-row-group{margin-bottom:18px}.two-inputs-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.two-inputs-grid>.form-row-group{margin-bottom:0}.two-inputs-grid.form-row-group>div{min-width:0}.form-row-group label,.two-inputs-grid label{color:var(--kh-navy);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px;font-size:12px;font-weight:800;display:block}.regular-input{border:1px solid var(--kh-muted);width:100%;min-height:44px;color:var(--kh-navy);background:#fff;border-radius:8px;padding:10px 14px;font-size:14px;transition:border-color .2s,box-shadow .2s}textarea.regular-input{resize:vertical;min-height:96px;line-height:1.5}.regular-input:focus{border-color:var(--kh-forest);outline:none;box-shadow:0 0 0 3px #244c4326}.regular-input:read-only{background:var(--kh-divider);color:var(--kh-navy);cursor:not-allowed}.regular-input:read-only:focus{border-color:var(--kh-muted);box-shadow:none}.form-actions{border-top:1px solid var(--kh-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}.form-actions-end{gap:12px;margin-left:auto;display:flex}.tip-box{background:var(--kh-lilac);color:var(--kh-navy);border:none;border-radius:10px;margin:8px 0 0;padding:16px;font-size:13px}.tip-box strong{color:var(--kh-navy);margin-bottom:6px;display:block}.tip-box ul{padding-left:18px;line-height:1.6;list-style:outside}.devices-list-grid{gap:14px;display:grid}.device-item-card{border:1px solid var(--kh-border);background:var(--kh-cream);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;transition:background .2s,border-color .2s,box-shadow .2s;display:flex}.device-item-card:hover{border-color:var(--kh-border);background:#fff;box-shadow:0 4px 12px #0000000d}.device-info-col{align-items:center;gap:16px;min-width:0;display:flex}.device-avatar-box{background:var(--kh-lilac);width:48px;height:48px;color:var(--kh-navy);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.device-avatar-box .kh-icon{width:22px;height:22px}.device-title-name{margin-bottom:4px;font-size:15px;font-weight:800}.device-serial-pill{background:var(--kh-divider);color:var(--kh-navy);border-radius:8px;padding:2px 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.device-sub{color:var(--kh-muted);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12.5px;display:flex}.device-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.history-stats-grid{grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:28px;display:grid}.history-stat{border:1px solid var(--kh-border);background:#fff;border-radius:10px;padding:18px 20px;box-shadow:0 2px 8px #00000008}.history-stat-label{text-transform:uppercase;color:var(--kh-muted);font-size:12px;font-weight:700}.history-stat-num{font-variant-numeric:tabular-nums;margin-top:2px;font-size:28px;font-weight:800}.history-filters-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.filter-pills-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-pill{border:1px solid var(--kh-border);color:var(--kh-muted);background:#fff;border-radius:10px;padding:8px 16px;font-size:13px;font-weight:700;transition:background .2s,color .2s,border-color .2s}.filter-pill:hover{border-color:var(--kh-forest);color:var(--kh-forest-hover)}.filter-pill[aria-pressed=true]{background:var(--kh-forest);color:#fff;border-color:var(--kh-forest);box-shadow:0 2px 8px #244c4340}.search-box-wrap{width:300px;position:relative}.search-box-wrap input{border:1px solid var(--kh-muted);background:#fff;border-radius:10px;width:100%;min-height:40px;padding:9px 14px 9px 38px;font-size:13px}.search-box-wrap input:focus{border-color:var(--kh-forest);outline:none;box-shadow:0 0 0 3px #244c4326}.search-box-wrap .kh-icon{color:var(--kh-faint);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.ticket-cards-grid{flex-direction:column;gap:16px;display:flex}.ticket-card-box{border:1px solid var(--kh-border);background:#fff;border-radius:10px;padding:22px 24px;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 4px 15px #00000008}.ticket-card-box:hover{border-color:var(--kh-border);transform:translateY(-2px);box-shadow:0 10px 25px #29354a14}.ticket-card-header{border-bottom:1px solid var(--kh-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin-bottom:14px;padding-bottom:14px;display:flex}.ticket-code-tag{color:var(--kh-navy);font-family:JetBrains Mono,ui-monospace,monospace;font-size:15px;font-weight:600}.ticket-date-info{color:var(--kh-muted);font-size:12.5px}.ticket-card-body{grid-template-columns:1.4fr 1fr;align-items:center;gap:20px;display:grid}.ticket-device-title{margin-bottom:6px;font-size:17px;font-weight:800}.ticket-meta-list{color:var(--kh-muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.ticket-meta-item{align-items:center;gap:8px;display:flex}.ticket-meta-item strong{color:var(--kh-navy)}.ticket-card-footer{border-top:1px solid var(--kh-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;display:flex}.mini-steps{gap:4px;padding:0;list-style:none;display:flex}.mini-steps li{background:var(--kh-border);border-radius:8px;width:28px;height:6px}.mini-steps li.is-done{background:var(--kh-forest)}.mini-steps li.is-current{background:var(--kh-honey)}.empty-state{border:1px dashed var(--kh-border);text-align:center;background:#fff;border-radius:10px;padding:48px 24px}.empty-state .kh-icon{width:40px;height:40px;color:var(--kh-faint);stroke-width:1.5px;margin-bottom:12px}.empty-state h3{margin-bottom:6px;font-size:18px;font-weight:800}.empty-state p{color:var(--kh-muted);max-width:480px;margin:0 auto 20px;font-size:13.5px}.section-gap{margin-top:40px}.section-heading{margin-bottom:16px;font-size:20px;font-weight:800}.ticket-hero-card{background:linear-gradient(135deg, var(--kh-navy) 0%, #34415a 100%);color:#fff;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:30px 32px;display:flex;box-shadow:0 10px 30px #29354a2e}.ticket-hero-card h1{margin-bottom:8px;font-size:28px;font-weight:800;line-height:1.2}.ticket-hero-meta{color:var(--kh-border);flex-wrap:wrap;gap:4px 16px;font-size:14px;display:flex}.ticket-hero-meta strong{color:#fff;font-weight:600}.ticket-hero-card .badge{padding:7px 16px;font-size:13px}.detail-grid-2>*,.hero-grid-container>*,.register-main-container>*,.profile-layout-grid>*{min-width:0}.detail-grid-2{grid-template-columns:1.5fr 1fr;align-items:start;gap:24px;display:grid}.timeline-stepper{margin-top:20px;padding:0 0 0 36px;list-style:none;position:relative}.timeline-stepper:before{content:"";background:var(--kh-border);width:2px;position:absolute;top:12px;bottom:12px;left:11px}.timeline-node-item{padding-bottom:22px;position:relative}.timeline-node-item:last-child{padding-bottom:0}.timeline-dot{border:2px solid var(--kh-border);width:24px;height:24px;color:var(--kh-muted);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;position:absolute;top:0;left:-36px}.timeline-dot .kh-icon{stroke-width:3px;width:12px;height:12px}.timeline-node-item.is-done .timeline-dot{background:var(--kh-forest);border-color:var(--kh-forest);color:#fff}.timeline-node-item.active .timeline-dot{background:var(--kh-forest);border-color:var(--kh-forest);color:#fff;box-shadow:0 0 0 4px #efb95273}.timeline-title{font-size:14px;font-weight:800}.timeline-node-item:not(.is-done):not(.active) .timeline-title{color:var(--kh-muted);font-weight:600}.timeline-desc{color:var(--kh-muted);font-size:13px}.timeline-node-item.active .timeline-desc{color:var(--kh-forest-hover);font-weight:600}.kv-list{flex-direction:column;font-size:13.5px;display:flex}.kv-row{border-bottom:1px solid var(--kh-divider);justify-content:space-between;gap:16px;padding:9px 0;display:flex}.kv-row:last-child{border-bottom:none}.kv-row>span:first-child{color:var(--kh-muted)}.kv-row>:last-child{text-align:right;font-variant-numeric:tabular-nums}.kv-row.is-total{padding-top:12px;font-size:15px;font-weight:800}.kv-row.is-total>:last-child{color:var(--kh-forest)}.note-list{flex-direction:column;gap:12px;padding:0;list-style:none;display:flex}.note-list li{background:var(--kh-cream);border-radius:10px;padding:12px 14px;font-size:13.5px}.note-list time{color:var(--kh-muted);margin-bottom:2px;font-size:12px;display:block}.quote-card{background:#fffbef;border-color:#f3d58a}.quote-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.decline-box{margin-top:16px}.warranty-hero-banner{background:linear-gradient(135deg, var(--kh-navy) 0%, var(--kh-forest) 100%);color:#fff;text-align:center;padding:44px 24px 76px}.warranty-hero-banner .breadcrumb-text{color:var(--kh-border);margin-bottom:12px}.warranty-hero-banner .breadcrumb-text a{color:var(--kh-honey)}.warranty-title{letter-spacing:-.02em;text-wrap:balance;margin-bottom:12px;font-size:36px;font-weight:800;line-height:1.2}.warranty-subtitle{color:var(--kh-border);max-width:640px;margin:0 auto;font-size:15px;line-height:1.6}.method-cards-section{grid-template-columns:repeat(2,1fr);gap:20px;max-width:1200px;margin:-44px auto 36px;padding:0 24px;display:grid;position:relative}.method-card{border:1px solid var(--kh-border);background:#fff;border-radius:10px;align-items:flex-start;gap:16px;padding:22px 24px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 10px 25px #29354a14}a.method-card:hover{border-color:var(--kh-forest);transform:translateY(-3px)}.method-card.active-method{border:2px solid var(--kh-forest);box-shadow:0 10px 30px #244c4326}.method-icon-box{background:var(--kh-mint-soft);width:44px;height:44px;color:var(--kh-forest);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.method-icon-box .kh-icon{width:22px;height:22px}.method-icon-box.is-amber{background:var(--kh-warn-bg);color:var(--kh-warn-text)}.method-card-title{margin-bottom:4px;font-size:17px;font-weight:800}.method-card-desc{color:var(--kh-muted);font-size:13.5px;line-height:1.5}.register-main-container{grid-template-columns:2fr 1fr;align-items:start;gap:30px;max-width:1200px;margin:0 auto 64px;padding:0 24px;display:grid}.form-card-panel{border:1px solid var(--kh-border);background:#fff;border-radius:10px;padding:32px;box-shadow:0 4px 15px #00000008}.form-section-title{align-items:center;gap:10px;margin:0 0 16px;font-size:15px;font-weight:800;display:flex}.form-section-title:not(:first-child){margin-top:28px}.form-section-num{background:var(--kh-forest);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:flex}.owner-summary{background:var(--kh-cream);border:1px solid var(--kh-border);border-radius:10px;grid-template-columns:1fr 1fr;gap:4px 18px;padding:14px 16px;font-size:13.5px;display:grid}.owner-summary span{color:var(--kh-muted)}.sidebar-benefits-card{background:var(--kh-lilac);border:1px solid var(--kh-border);border-radius:10px;padding:26px}.sidebar-title{margin-bottom:18px;font-size:17px;font-weight:800}.benefit-item-row{gap:14px;margin-bottom:18px;display:flex}.benefit-icon-box{border:1px solid var(--kh-border);width:36px;height:36px;color:var(--kh-forest);background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.benefit-text h5{margin-bottom:2px;font-size:13.5px;font-weight:800}.benefit-text p{color:var(--kh-muted);font-size:12.5px;line-height:1.45}.support-box-white{border:1px solid var(--kh-border);background:#fff;border-radius:10px;margin-top:6px;padding:16px 18px;font-size:13px}.support-box-white h5{margin-bottom:8px;font-size:13px;font-weight:800}.station-list{flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.station-list strong{color:var(--kh-navy);display:block}.station-list span{color:var(--kh-muted);font-size:12.5px}.footer-main{background:var(--kh-navy);color:#c9d1dc;padding:56px 24px 28px}.footer-container{border-bottom:1px solid #ffffff14;grid-template-columns:2fr 1fr 1fr;gap:40px;max-width:1280px;margin:0 auto;padding-bottom:40px;display:grid}.footer-brand{align-items:center;gap:12px;margin-bottom:14px;display:flex}.footer-desc{max-width:340px;margin-bottom:14px;font-size:13px}.footer-contact-info{flex-direction:column;gap:8px;padding:0;font-size:12.5px;list-style:none;display:flex}.footer-contact-info li{gap:8px;display:flex}.footer-col-title{color:#fff;letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;font-size:13px;font-weight:800}.footer-links-ul{flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.footer-links-ul a{font-size:13px;transition:color .2s}.footer-links-ul a:hover{color:var(--kh-honey);text-underline-offset:3px;text-decoration:underline}.footer-bottom-strip{color:#aeb8c6;max-width:1280px;margin:24px auto 0;font-size:12px}.kh-skeleton{background:linear-gradient(90deg, var(--kh-divider) 0%, #e3e9e4 50%, var(--kh-divider) 100%);background-size:200% 100%;border-radius:10px;animation:1.4s ease-in-out infinite kh-shimmer}@keyframes kh-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.kh-skeleton,.profile-dropdown-content{animation:none}.btn-primary-teal:hover:not(:disabled),.ticket-card-box:hover,a.method-card:hover{transform:none}}@media (width<=1024px){.hero-grid-container,.detail-grid-2,.register-main-container,.profile-layout-grid{grid-template-columns:1fr}.user-sidebar-card{position:static}.history-stats-grid{grid-template-columns:repeat(2,1fr)}.history-stats-grid>.history-stat:first-child{grid-column:1/-1}}@media (width<=860px){.nav-container{flex-wrap:wrap;gap:10px;padding:10px 16px 0}.nav-menu{flex-wrap:wrap;order:3;gap:6px 18px;width:100%;padding:6px 0 12px}.nav-menu .nav-link{padding:4px 0;font-size:13px;display:inline-block}.ticket-item-row{flex-wrap:wrap}.nav-right-actions .btn-primary-teal,.user-name-text{display:none}.page-container{margin:28px auto 56px;padding:0 16px}.hero-section{padding:36px 16px 48px}.hero-headline{font-size:32px}.content-panel-card,.form-card-panel{padding:22px 18px}.two-inputs-grid,.owner-summary,.method-cards-section,.ticket-card-body{grid-template-columns:1fr}.method-cards-section{padding:0 16px}.search-box-wrap{width:100%}.device-item-card{flex-direction:column;align-items:stretch}.device-actions{flex-direction:row;justify-content:space-between;align-items:center}.footer-container{grid-template-columns:1fr;gap:28px}.warranty-title{font-size:28px}}@media (width<=520px){.dash-stats-grid{grid-template-columns:1fr 1fr 1fr;gap:8px}.dash-stat-box{padding:10px}.dash-stat-val{font-size:18px}.history-stats-grid{grid-template-columns:1fr 1fr;gap:10px}}.lookup-hero{padding:56px 24px 64px}.lookup-hero .warranty-subtitle{margin-bottom:28px}.lookup-form{text-align:left;grid-template-columns:1.2fr 1fr auto;align-items:start;gap:12px;max-width:760px;margin:0 auto;display:grid}.lookup-form .form-row-group{margin-bottom:0}.lookup-form label{color:var(--kh-border)}.lookup-form .regular-input{border:none;min-height:50px;font-size:15px}.lookup-form .btn-primary-teal{border-radius:10px;min-height:50px;margin-top:25px;padding:0 28px;font-size:15px}.lookup-form .form-field__error{color:var(--kh-peach)}.lookup-body{flex-direction:column;gap:24px;display:flex}.lookup-body>.kh-alert{margin-bottom:0}.lookup-cta{background:var(--kh-cream);border:1px solid var(--kh-border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 26px;display:flex}.kh-app .form-field__error{color:var(--kh-bad-text);margin-top:5px;font-size:12px;font-weight:500;display:block}.kh-app .has-error .regular-input{border-color:var(--kh-bad-text)}.kh-app .required-mark{color:var(--kh-bad-text);margin-left:3px}@media (width<=860px){.lookup-form{grid-template-columns:1fr}.lookup-form .btn-primary-teal{margin-top:4px}}.ticket-meta .mono,.ticket-meta .dispatch-link{white-space:nowrap}.kh-home{--kh-display:"Plus Jakarta Sans", "Inter", system-ui, sans-serif;--kh-on-dark:#ffffffdb;--kh-on-dark-line:#ffffff1f}.kh-home .hero-headline,.kh-home .section-title,.kh-home .cta-heading{font-family:var(--kh-display);letter-spacing:-.02em;text-wrap:balance;font-weight:800}.kh-home .hero-section{padding:60px 24px 80px}.kh-home .hero-grid-container{grid-template-columns:1fr 1fr}.kh-home .hero-badge-tag{background:var(--surface-card);color:var(--kh-forest);letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--kh-border);border-radius:8px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.kh-home .hero-stats-row{border-top:1px solid var(--kh-border);flex-wrap:wrap;align-self:stretch;gap:16px 36px;margin:36px 0 0;padding-top:24px;display:flex}.kh-home .hero-stat-item{flex-direction:column-reverse;display:flex}.kh-home .hero-stat-item dd{font-family:var(--kh-display);color:var(--kh-navy);font-variant-numeric:tabular-nums;margin:0;font-size:28px;font-weight:800}.kh-home .hero-stat-item dt{color:var(--kh-quiet);font-size:13px;font-weight:500}.kh-home .hero-dashboard-card{box-shadow:none;padding:20px}.kh-home .card-top-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.kh-home .sla-pill-badge{border:1px solid var(--status-success-border);background:var(--kh-mint-soft);color:var(--kh-forest);border-radius:8px;flex-shrink:0;padding:3px 8px;font-size:12px;font-weight:700}.kh-home .sla-pill-badge.is-sample{border-color:var(--status-processing-border);background:var(--kh-lilac);color:var(--kh-navy)}.kh-home .dash-stats-grid{margin:0 0 16px}.kh-home .dash-stat-box dd{margin:0}.kh-home .dispatch-ticket-list{margin-bottom:16px}.kh-home .qr-scan-spark-card{background:var(--kh-mint-soft);border:1px solid var(--status-success-border);color:var(--kh-forest);border-radius:10px;align-items:center;gap:12px;padding:12px;transition:border-color .12s;display:flex}.kh-home .qr-scan-spark-card>span:nth-child(2){flex:1;min-width:0}.kh-home .qr-scan-spark-card:hover{border-color:var(--kh-forest)}.kh-home .qr-scan-spark-card .card-icon-circle{background:var(--surface-card);width:36px;height:36px;margin:0}.kh-home .qr-spark-title{font-size:12px;font-weight:600;display:block}.kh-home .qr-spark-val{color:var(--kh-navy);font-size:14px;font-weight:800;display:block}.kh-home .brands-ribbon-section{text-align:center;background:var(--surface-card);border-top:1px solid var(--kh-divider);border-bottom:1px solid var(--kh-divider);padding:40px 24px}.kh-home .brands-header-text{color:var(--kh-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:20px;font-size:12px;font-weight:700}.kh-home .brands-flex-container{flex-wrap:wrap;justify-content:center;gap:12px;max-width:1200px;margin:0 auto;padding:0;list-style:none;display:flex}.kh-home .brand-pill{background:var(--kh-cream);border:1px solid var(--kh-border);color:var(--kh-navy);border-radius:8px;padding:10px 18px;font-size:13px;font-weight:700}.kh-home .management-section,.kh-home .extend-features-section,.kh-home .faq-accordion-section{background:var(--kh-cream);padding:80px 24px;scroll-margin-top:80px}.kh-home .features-main-section,.kh-home .process-steps-section{background:var(--surface-card);padding:80px 24px;scroll-margin-top:80px}.kh-home .section-container{max-width:1280px;margin:0 auto}.kh-home .section-title{color:var(--kh-navy);margin-bottom:10px;font-size:32px;line-height:1.2}.kh-home .section-subtitle{color:var(--kh-muted);max-width:650px;margin-bottom:40px;font-size:15px}.kh-home .center-header{text-align:center;margin-bottom:48px}.kh-home .center-header .section-subtitle{margin:0 auto}.kh-home .management-grid{grid-template-columns:1fr 1fr;align-items:center;gap:36px;display:grid}.kh-home .management-left-cards{flex-direction:column;gap:20px;display:flex}.kh-home .management-cta{align-self:flex-start;margin-top:8px}.kh-home .feature-info-card,.kh-home .main-feature-card,.kh-home .step-process-card{background:var(--surface-card);border:1px solid var(--kh-border);border-radius:10px;transition:border-color .12s}.kh-home .feature-info-card{padding:24px}.kh-home .card-icon-circle,.kh-home .main-feature-icon,.kh-home .step-icon-bg{background:var(--kh-mint-soft);color:var(--kh-forest);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.kh-home .card-icon-circle{width:44px;height:44px;margin-bottom:16px}.kh-home .main-feature-icon{width:48px;height:48px;margin-bottom:20px}.kh-home .step-icon-bg{width:36px;height:36px}.kh-home .card-icon-circle .kh-icon,.kh-home .main-feature-icon .kh-icon{width:20px;height:20px}.kh-home .feature-card-heading{color:var(--kh-navy);margin-bottom:8px;font-size:18px;font-weight:700}.kh-home .feature-card-body{color:var(--kh-muted);margin-bottom:14px;font-size:14px}.kh-home .card-tags-flex{color:var(--kh-forest);flex-wrap:wrap;gap:8px 16px;font-size:13px;font-weight:700;display:flex}.kh-home .dark-monitoring-panel{background:var(--surface-inverse);color:#fff;border-radius:10px;padding:28px}.kh-home .dark-panel-header{margin-bottom:20px}.kh-home .dark-panel-tag{color:var(--kh-honey);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:700}.kh-home .dark-panel-title{margin-top:4px;font-size:20px;font-weight:800}.kh-home .sla-progress-box,.kh-home .repair-breakdown-box,.kh-home .dark-metric-card{border:1px solid var(--kh-on-dark-line);background:#ffffff0f;border-radius:10px;padding:16px}.kh-home .sla-progress-box,.kh-home .repair-breakdown-box{margin-bottom:16px}.kh-home .sla-progress-label{color:var(--kh-on-dark);justify-content:space-between;gap:12px;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.kh-home .sla-progress-value{color:var(--kh-mint-soft);font-variant-numeric:tabular-nums;font-weight:800}.kh-home .progress-track{background:var(--kh-on-dark-line);border-radius:8px;height:8px;overflow:hidden}.kh-home .progress-fill{background:var(--kh-mint-soft);height:100%}.kh-home .dark-metrics-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.kh-home .dark-metric-title{color:var(--kh-on-dark);margin-bottom:2px;font-size:13px}.kh-home .dark-metric-num{font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.kh-home .dark-metric-sub{color:var(--kh-honey);font-size:12px;font-weight:600}.kh-home .breakdown-title{color:var(--kh-on-dark);letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:700}.kh-home .multi-color-bar{background:var(--kh-on-dark-line);border-radius:8px;height:24px;margin-bottom:10px;font-size:12px;font-weight:800;display:flex;overflow:hidden}.kh-home .multi-color-bar>div{min-width:36px;color:var(--kh-navy);justify-content:center;align-items:center;display:flex}.kh-home .bar-seg-processing,.kh-home .legend-processing{background:var(--kh-lilac)}.kh-home .bar-seg-waiting,.kh-home .legend-waiting{background:var(--kh-honey)}.kh-home .bar-seg-ready,.kh-home .legend-ready{background:var(--kh-mint-soft)}.kh-home .bar-seg-completed,.kh-home .legend-completed{background:var(--kh-cream)}.kh-home .breakdown-legend{color:var(--kh-on-dark);flex-wrap:wrap;justify-content:space-between;gap:6px 12px;padding:0;font-size:12px;list-style:none;display:flex}.kh-home .breakdown-legend li{align-items:center;gap:6px;display:inline-flex}.kh-home .breakdown-legend i{border-radius:50%;width:8px;height:8px}.kh-home .dark-panel-footer{color:var(--kh-on-dark);border-top:1px solid var(--kh-on-dark-line);padding-top:12px;font-size:12px}.kh-home .three-cols-grid,.kh-home .steps-four-grid{max-width:1280px;margin:0 auto;padding:0;list-style:none;display:grid}.kh-home .three-cols-grid{grid-template-columns:repeat(3,1fr);gap:24px}.kh-home .steps-four-grid{grid-template-columns:repeat(4,1fr);gap:20px}.kh-home .main-feature-card{flex-direction:column;padding:28px;display:flex}.kh-home .features-main-section .main-feature-card,.kh-home .step-process-card{background:var(--kh-cream)}.kh-home .main-feature-card:hover,.kh-home .step-process-card:hover,.kh-home .feature-info-card:hover{border-color:var(--color-primary-border)}.kh-home .feature-title-h3{color:var(--kh-navy);margin-bottom:10px;font-size:18px;font-weight:700;line-height:1.35}.kh-home .feature-desc-p{color:var(--kh-muted);margin-bottom:18px;font-size:14px}.kh-home .checklist-ul{margin-bottom:20px;padding:0;list-style:none}.kh-home .checklist-ul li{color:var(--kh-navy);align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:500;display:flex}.kh-home .check-mark{color:var(--kh-forest);font-weight:800}.kh-home .card-action-link{color:var(--kh-forest);align-self:flex-start;margin-top:auto;font-size:14px;font-weight:700}.kh-home .card-action-link:hover{text-underline-offset:3px;text-decoration:underline}.kh-home .station-card{flex-direction:row;align-items:flex-start;gap:16px}.kh-home .station-card .main-feature-icon,.kh-home .station-card .feature-desc-p{margin-bottom:0}.kh-home .station-card .feature-title-h3{margin-bottom:4px}.kh-home .step-process-card{flex-direction:column;justify-content:space-between;padding:24px;display:flex}.kh-home .step-top-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.kh-home .step-num-big{font-family:var(--kh-display);color:var(--kh-forest);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.kh-home .step-card-title{color:var(--kh-navy);margin-bottom:8px;font-size:16px;font-weight:700}.kh-home .step-card-desc{color:var(--kh-muted);margin-bottom:18px;font-size:14px}.kh-home .step-time-tag{color:var(--kh-forest);font-size:13px;font-weight:700}.kh-home .faq-max-width{flex-direction:column;gap:12px;max-width:800px;margin:0 auto;display:flex}.kh-home .faq-item-card{background:var(--surface-card);border:1px solid var(--kh-border);border-radius:10px;transition:border-color .12s}.kh-home .faq-item-card.active{border-color:var(--kh-forest)}.kh-home .faq-question-btn{text-align:left;width:100%;min-height:56px;font:inherit;color:var(--kh-navy);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;font-size:15px;font-weight:700;display:flex}.kh-home .faq-question-btn .kh-icon{width:18px;height:18px;color:var(--kh-muted);transition:transform .2s var(--kh-ease)}.kh-home .faq-item-card.active .faq-question-btn .kh-icon{color:var(--kh-forest);transform:rotate(180deg)}.kh-home .faq-answer-body{color:var(--kh-muted);padding:0 20px 18px;font-size:14px}.kh-home .cta-banner-section{background:var(--surface-card);padding:60px 24px 80px}.kh-home .cta-dark-card{background:var(--surface-inverse);text-align:center;color:#fff;border-radius:10px;max-width:1280px;margin:0 auto;padding:56px 40px}.kh-home .cta-tag-pill{color:var(--kh-honey);letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--kh-on-dark-line);border-radius:8px;align-items:center;gap:6px;margin-bottom:18px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.kh-home .cta-heading{margin-bottom:14px;font-size:34px;line-height:1.2}.kh-home .cta-subtitle{color:var(--kh-on-dark);max-width:600px;margin:0 auto 32px;font-size:16px}.kh-home .cta-buttons-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.kh-home .cta-buttons-row>a{min-height:48px;padding:0 24px;font-size:15px}.kh-home .btn-secondary-glass{color:#fff;background:0 0;border:1px solid #fff6;border-radius:8px;align-items:center;gap:8px;font-weight:600;transition:background .12s;display:inline-flex}.kh-home .btn-secondary-glass:hover{background:var(--kh-on-dark-line)}@media (pointer:coarse){.kh-home .dispatch-link,.kh-home .card-action-link,.kh-home .management-cta{align-items:center;min-height:44px;display:inline-flex}}@media (prefers-reduced-motion:reduce){.kh-home .faq-question-btn .kh-icon{transition:none}}@media (width<=1024px){.kh-home .hero-grid-container,.kh-home .management-grid{grid-template-columns:1fr}.kh-home .three-cols-grid,.kh-home .steps-four-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=860px){.kh-home .hero-section{padding:36px 16px 48px}.kh-home .management-section,.kh-home .extend-features-section,.kh-home .faq-accordion-section,.kh-home .features-main-section,.kh-home .process-steps-section{padding:52px 16px}.kh-home .brands-ribbon-section{padding:32px 16px}.kh-home .cta-banner-section{padding:40px 16px 56px}}@media (width<=640px){.kh-home .three-cols-grid,.kh-home .steps-four-grid,.kh-home .dark-metrics-grid{grid-template-columns:1fr}.kh-home .hero-headline{font-size:32px}.kh-home .section-title{font-size:26px}.kh-home .hero-stat-item dd{font-size:24px}.kh-home .dark-monitoring-panel{padding:20px}.kh-home .cta-dark-card{padding:40px 20px}.kh-home .cta-heading{font-size:26px}.kh-home .card-top-bar{align-items:flex-start}.kh-home .ticket-item-row{flex-wrap:wrap;gap:8px}.kh-home .ticket-info-left{flex:100%}.kh-home .ticket-item-row .badge{margin-left:44px}.kh-home .ticket-title{white-space:normal}.kh-home .dispatch-section-header{flex-wrap:wrap}}.live-chat-root{z-index:200;pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:28px;right:28px}.live-chat-root>*{pointer-events:auto}.chat-bubble-fab{background:linear-gradient(135deg, var(--kh-forest,#15803d) 0%, #1a6b8a 100%);color:#fff;cursor:pointer;border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:0 4px 20px #15803d66,0 2px 8px #00000026}.chat-bubble-fab:hover{transform:scale(1.08);box-shadow:0 8px 26px #15803d80,0 4px 12px #0000002e}.chat-bubble-fab:focus-visible{outline:3px solid var(--kh-forest,#15803d);outline-offset:3px}.chat-fab-icon{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;z-index:1;width:28px;height:28px;position:relative}.chat-fab-badge{color:#fff;text-align:center;background:#e53e3e;border:2px solid #fff;border-radius:10px;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;line-height:20px;animation:.3s cubic-bezier(.16,1,.3,1) chat-badge-pop;position:absolute;top:-2px;right:-2px;box-shadow:0 1px 4px #0003}@keyframes chat-badge-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.chat-fab-pulse{pointer-events:none;background:#15803d59;border-radius:50%;animation:2.2s ease-out infinite chat-pulse;position:absolute;inset:0}@keyframes chat-pulse{0%{opacity:.7;transform:scale(1)}70%{opacity:0;transform:scale(1.65)}to{opacity:0;transform:scale(1.65)}}.chat-minimized-bar{background:linear-gradient(135deg, var(--kh-forest,#15803d) 0%, #1a6b8a 100%);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:24px;align-items:center;gap:10px;padding:10px 16px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 20px #15803d66}.chat-minimized-bar:hover{transform:translateY(-2px);box-shadow:0 8px 28px #15803d80}.chat-minimized-bar .kh-icon{width:18px;height:18px}.chat-minimized-expand{opacity:.8;margin-left:4px;font-size:10px}.chat-window{background:#fff;border-radius:20px;flex-direction:column;width:360px;max-height:520px;animation:.28s cubic-bezier(.16,1,.3,1) chat-window-in;display:flex;overflow:hidden;box-shadow:0 20px 60px #0f172a2e,0 8px 24px #15803d1f,0 0 0 1px #e2e8f099}@keyframes chat-window-in{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-window-header{color:#fff;background:linear-gradient(135deg,#15803d 0%,#1e3a5f 100%);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.chat-header-info{align-items:center;gap:12px;display:flex}.chat-avatar-wrap{flex-shrink:0;position:relative}.chat-avatar-circle{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.03em;background:#fff3;border:2px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:flex}.chat-online-dot{background:#22c55e;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;bottom:0;right:0}.chat-header-text{flex-direction:column;display:flex}.chat-header-title{font-size:14.5px;font-weight:700;line-height:1.25}.chat-header-sub{opacity:.85;font-size:12px}.chat-header-actions{align-items:center;gap:4px;display:flex}.chat-icon-btn{color:#fff;cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:opacity .15s,background .15s;display:flex}.chat-icon-btn:hover{opacity:1;background:#ffffff26}.chat-icon-btn .kh-icon{width:16px;height:16px}.chat-messages{background:#f8fafc;flex-direction:column;flex:1;gap:12px;min-height:220px;max-height:340px;padding:16px 14px;display:flex;overflow-y:auto}.chat-system-msg{text-align:center;margin:4px 0}.chat-system-msg span{color:#64748b;background:#e2e8f0;border-radius:12px;max-width:90%;padding:4px 10px;font-size:11.5px;line-height:1.4;display:inline-block}.chat-msg-row{align-items:flex-end;gap:8px;display:flex}.chat-msg-row--me{flex-direction:row-reverse}.chat-msg-avatar{color:#fff;background:#15803d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:700;display:flex}.chat-bubble-wrap{flex-direction:column;max-width:78%;display:flex}.chat-msg-row--me .chat-bubble-wrap{align-items:flex-end}.chat-bubble-msg{word-break:break-word;border-radius:16px;padding:9px 13px;font-size:13.5px;line-height:1.45}.chat-bubble-msg--them{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-bottom-left-radius:4px;box-shadow:0 1px 4px #0000000f}.chat-bubble-msg--me{background:var(--kh-forest,#15803d);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px #15803d40}.chat-msg-time{color:#94a3b8;margin-top:3px;padding:0 4px;font-size:10.5px}.chat-msg-time--me{text-align:right}.chat-typing-bubble{background:#fff;border:1px solid #e2e8f0;border-radius:16px 16px 16px 4px;align-items:center;gap:4px;padding:10px 14px;display:flex;box-shadow:0 1px 4px #0000000f}.chat-typing-bubble span,.chat-typing-dots span{background:#94a3b8;border-radius:50%;width:6px;height:6px;animation:1.3s ease-in-out infinite chat-typing-bounce;display:inline-block}.chat-typing-bubble span:first-child,.chat-typing-dots span:first-child{animation-delay:0s}.chat-typing-bubble span:nth-child(2),.chat-typing-dots span:nth-child(2){animation-delay:.2s}.chat-typing-bubble span:nth-child(3),.chat-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes chat-typing-bounce{0%,80%,to{transform:translateY(0)}40%{background:#15803d;transform:translateY(-5px)}}.chat-typing-label{align-items:center;gap:5px;display:inline-flex}.chat-typing-dots{gap:3px;display:inline-flex}.chat-input-area{background:#fff;border-top:1px solid #e2e8f0;align-items:center;gap:8px;padding:10px 12px;display:flex}.chat-input-field{resize:none;color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:20px;outline:none;flex:1;max-height:80px;padding:8px 14px;font-family:inherit;font-size:13.5px;line-height:1.4;transition:border-color .15s,background .15s}.chat-input-field:focus{border-color:var(--kh-forest,#15803d);background:#fff;box-shadow:0 0 0 3px #15803d1f}.chat-send-btn{color:#94a3b8;cursor:not-allowed;background:#e2e8f0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,color .15s,transform .15s;display:flex}.chat-send-btn--active{background:var(--kh-forest,#15803d);color:#fff;cursor:pointer}.chat-send-btn--active:hover{background:#166534;transform:scale(1.08)}.chat-send-btn .kh-icon{width:16px;height:16px}.chat-input-hint{color:#94a3b8;text-align:center;background:#fff;padding-bottom:6px;font-size:10px}@media (width<=480px){.live-chat-root{bottom:16px;right:16px}.chat-window{border-radius:16px;width:calc(100vw - 32px);max-height:70vh}.chat-bubble-fab{width:54px;height:54px}.chat-fab-icon{width:24px;height:24px}}.payment-section-wrapper{border-top:1px dashed #e2e8f0;margin-top:14px;padding-top:14px}.payment-cta-box{flex-direction:column;gap:8px;display:flex}.pay-cta-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 50%,#1e40af 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 18px;font-size:14.5px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 14px #2563eb59}.pay-cta-btn:hover{background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb73}.pay-cta-btn:active{transform:translateY(0)}.paid-badge-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.paid-badge-status{color:#166534;align-items:center;gap:6px;font-size:13.5px;font-weight:600;display:inline-flex}.paid-receipt-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.paid-receipt-btn:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8}.payment-overlay{-webkit-backdrop-filter:blur(4px);z-index:210;background:#0f172aa6;justify-content:center;align-items:center;padding:16px;animation:.2s cubic-bezier(.16,1,.3,1) paymentFadeIn;display:flex;position:fixed;inset:0}@keyframes paymentFadeIn{0%{opacity:0}to{opacity:1}}.payment-modal{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:460px;max-height:90vh;animation:.25s cubic-bezier(.16,1,.3,1) paymentSlideUp;display:flex;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d}@keyframes paymentSlideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.payment-modal-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.payment-modal-title{color:#0f172a;align-items:center;gap:8px;font-size:16.5px;font-weight:700;display:flex}.payment-modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.payment-modal-close:hover{color:#0f172a;background:#e2e8f0}.payment-modal-body{flex-direction:column;gap:16px;padding:20px;display:flex}.payment-summary-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.payment-summary-row{color:#64748b;justify-content:space-between;align-items:center;font-size:13.5px;display:flex}.payment-summary-row strong{color:#1e293b}.payment-summary-row.is-total{color:#0f172a;border-top:1px dashed #cbd5e1;margin-top:4px;padding-top:8px;font-size:15px;font-weight:700}.payment-summary-row.is-total .amount{color:#2563eb;font-size:18px;font-weight:800}.payment-section-subtitle{color:#475569;text-transform:uppercase;letter-spacing:.5px;margin-bottom:-6px;font-size:13.5px;font-weight:600}.payment-method-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.payment-method-card{font:inherit;color:var(--kh-navy);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:14px 12px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.payment-demo-notice{border:1px solid var(--kh-border);border-radius:var(--radius-input);background:var(--kh-cream);color:var(--kh-navy);margin:0;padding:12px;font-size:14px;line-height:1.5}.payment-method-card:hover{background:#f8fafc;border-color:#93c5fd;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.payment-method-card.is-selected{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.payment-method-card.full-width{text-align:left;flex-direction:row;grid-column:span 2;justify-content:flex-start;gap:14px;padding:12px 16px}.payment-method-icon-box{background:#f1f5f9;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.payment-method-card.is-selected .payment-method-icon-box{background:#dbeafe}.payment-method-name{color:#1e293b;font-size:13.5px;font-weight:600}.payment-method-desc{color:#64748b;font-size:11.5px}.payment-view-container{flex-direction:column;gap:16px;display:flex}.payment-qr-wrap{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:16px;display:flex}.payment-qr-canvas-box{background:#fff;border-radius:12px;justify-content:center;align-items:center;padding:12px;display:flex;box-shadow:0 2px 8px #0000000f}.payment-qr-canvas-box canvas{display:block;width:170px!important;height:170px!important}.payment-countdown-badge{color:#92400e;background:#fef3c7;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.payment-bank-details{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;width:100%;padding:12px 14px;display:flex}.payment-bank-row{color:#64748b;justify-content:space-between;align-items:center;font-size:13px;display:flex}.payment-bank-row strong{color:#0f172a;font-family:inherit}.payment-copy-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;margin-left:6px;font-size:11.5px;text-decoration:underline}.payment-card-form{flex-direction:column;gap:12px;display:flex}.payment-form-group{flex-direction:column;gap:5px;display:flex}.payment-form-label{color:#334155;font-size:12.5px;font-weight:600}.payment-form-input{border:1.5px solid #cbd5e1;border-radius:10px;outline:none;padding:10px 12px;font-family:inherit;font-size:14px;transition:all .15s}.payment-form-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.payment-card-grid-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.payment-security-notice{color:#64748b;justify-content:center;align-items:center;gap:6px;margin-top:4px;font-size:11.5px;display:flex}.payment-processing-wrap{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.payment-spinner{border:4px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;width:52px;height:52px;animation:.8s linear infinite paymentSpin}@keyframes paymentSpin{to{transform:rotate(360deg)}}.payment-processing-title{color:#0f172a;font-size:17px;font-weight:700}.payment-processing-desc{color:#64748b;max-width:320px;font-size:13px}.payment-progress-bar-bg{background:#e2e8f0;border-radius:3px;width:100%;height:6px;margin-top:8px;overflow:hidden}.payment-progress-bar-fill{background:linear-gradient(90deg,#a855f7,#ec4899);height:100%;animation:6s linear forwards paymentProgress}@keyframes paymentProgress{0%{width:0%}to{width:100%}}.payment-success-badge-icon{color:#15803d;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto;font-size:32px;animation:.4s cubic-bezier(.16,1,.3,1) paymentPopIn;display:flex;box-shadow:0 0 0 8px #f0fdf4}@keyframes paymentPopIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.payment-receipt-wrap{flex-direction:column;gap:14px;display:flex}.payment-receipt{background:#fafaf9;border:1.5px dashed #cbd5e1;border-radius:14px;flex-direction:column;gap:12px;padding:18px 20px;display:flex;position:relative;box-shadow:0 2px 6px #00000005}.payment-receipt-header{text-align:center;border-bottom:1px dashed #cbd5e1;padding-bottom:12px}.payment-receipt-logo{color:var(--kh-forest,#15803d);text-transform:uppercase;letter-spacing:1px;font-size:15px;font-weight:800}.payment-receipt-title{color:#1e293b;margin-top:2px;font-size:13.5px;font-weight:700}.payment-receipt-meta{color:#64748b;flex-direction:column;gap:6px;font-size:12.5px;display:flex}.payment-receipt-meta-row{justify-content:space-between;display:flex}.payment-receipt-meta-row strong{color:#0f172a}.payment-receipt-divider{border-top:1px dashed #cbd5e1;margin:4px 0}.payment-receipt-items{flex-direction:column;gap:6px;font-size:12.5px;display:flex}.payment-receipt-item-row{color:#475569;justify-content:space-between;display:flex}.payment-receipt-total-row{color:#0f172a;border-top:2px solid #0f172a;justify-content:space-between;align-items:center;padding-top:6px;font-size:15px;font-weight:800;display:flex}.payment-receipt-total-row .total-val{color:#15803d;font-size:17px}.payment-receipt-footer-note{text-align:center;color:#94a3b8;margin-top:4px;font-size:11px;font-style:italic}.payment-modal-footer{border-top:1px solid #f1f5f9;gap:10px;padding:14px 20px 18px;display:flex}.payment-modal-footer .btn-back{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;flex:1;padding:10px 16px;font-size:13.5px;font-weight:600;transition:all .15s}.payment-modal-footer .btn-back:hover{color:#0f172a;background:#f1f5f9}.payment-modal-footer .btn-submit{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;flex:2;padding:10px 16px;font-size:13.5px;font-weight:600;transition:all .15s;box-shadow:0 2px 8px #2563eb4d}.payment-modal-footer .btn-submit:hover{background:#1d4ed8}.payment-modal-footer .btn-print{color:#fff;cursor:pointer;background:#0f172a;border:1px solid #0f172a;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13.5px;font-weight:600;transition:all .15s;display:flex}.payment-modal-footer .btn-print:hover{background:#334155}.payment-error-wrap{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:30px 16px;display:flex}.payment-error-icon{color:#dc2626;background:#fee2e2;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;display:flex;box-shadow:0 0 0 6px #fef2f2}@media print{body *{visibility:hidden}.payment-overlay{background:0 0;padding:0;position:static}.payment-modal{box-shadow:none;width:100%;max-width:100%}.payment-modal-header,.payment-modal-footer,.payment-modal-close,.live-chat-root{display:none!important}.payment-receipt-wrap,.payment-receipt-wrap *{visibility:visible}.payment-receipt-wrap{width:100%;padding:20px;position:absolute;top:0;left:0}.payment-receipt{background:#fff;border:1px solid #000}}.customer-rating-card{background:linear-gradient(#fffdf0 0%,#fff 100%);border:1.5px solid #fde047;position:relative;overflow:hidden}.customer-rating-card:before{content:"";background:#eab308;width:5px;height:100%;position:absolute;top:0;left:0}.rating-pill-badge{letter-spacing:.01em;border-radius:9999px;align-items:center;gap:4px;padding:3px 9px;font-size:11.5px;font-weight:700;transition:all .2s;display:inline-flex}.rating-pill-badge.rated{color:#854d0e;background:#fef08a;border:1px solid #facc15}.rating-pill-badge.unrated{color:#475569;background:#f1f5f9;border:1px dashed #cbd5e1}.rated-view-box{background:#fff;border:1px solid #fef08a;border-radius:12px;margin-top:10px;padding:16px 20px;box-shadow:0 2px 6px #eab30814}.rated-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.rated-stars-wrap{align-items:center;gap:4px;display:flex}.star-glyph{color:#e2e8f0;font-size:22px;line-height:1}.star-glyph.is-filled{color:#eab308;filter:drop-shadow(0 1px 2px #eab30859)}.rated-score-text{color:#854d0e;margin-left:8px;font-size:15px;font-weight:700}.rated-feedback-label{color:#475569;font-size:13.5px;line-height:1.5}.rating-form-wrap{flex-direction:column;gap:16px;margin-top:8px;display:flex}.star-picker-container{background:#fff;border:1px solid #fef08a;border-radius:12px;flex-wrap:wrap;align-items:center;gap:20px;padding:14px 18px;display:flex}.star-picker-row{align-items:center;gap:6px;display:flex}.star-picker-btn{color:#cbd5e1;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;padding:2px 4px;font-size:32px;line-height:1;transition:transform .15s cubic-bezier(.34,1.56,.64,1),color .15s}.star-picker-btn:hover{transform:scale(1.22)}.star-picker-btn.is-active{color:#eab308;filter:drop-shadow(0 2px 4px #eab30866)}.star-picker-label-box{align-items:center;gap:10px;min-width:220px;display:flex}.star-rating-emoji{font-size:26px;line-height:1}.star-rating-title{color:#854d0e;font-size:14.5px;font-weight:700;display:block}.star-rating-subtitle{color:#64748b;font-size:12px;line-height:1.3}.rating-section-caption{color:var(--kh-navy);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.rating-quick-tags-section{flex-direction:column;display:flex}.quick-tags-wrap{flex-wrap:wrap;gap:8px;display:flex}.quick-tag-chip{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:9999px;padding:6px 14px;font-size:12.5px;font-weight:600;transition:all .18s}.quick-tag-chip:hover{border-color:var(--kh-teal);color:var(--kh-teal);background:#f0fdf4}.quick-tag-chip.is-selected{color:#fff;background:#0d9488;border-color:#0d9488;box-shadow:0 2px 6px #0d948840}.rating-comment-box textarea{resize:vertical;width:100%;min-height:80px}.rating-actions-bar{justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;display:flex}@media (width<=640px){.star-picker-container{flex-direction:column;align-items:flex-start;gap:12px}.star-picker-btn{font-size:28px}}.quote-confirm-modal{max-width:580px}.quote-modal-header{background:linear-gradient(#f8fafc,#fff);border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;padding:20px 24px;display:flex}.quote-modal-title-wrap{align-items:center;gap:12px;display:flex}.quote-modal-icon-badge{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.quote-modal-title{color:#0f172a;margin:0;font-size:18px;font-weight:800}.quote-modal-subtitle{color:#64748b;margin-top:2px;font-size:13px}.quote-modal-body{flex-direction:column;gap:18px;max-height:calc(85vh - 140px);padding:20px 24px;display:flex;overflow-y:auto}.quote-breakdown-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:16px}.quote-breakdown-title{text-transform:uppercase;letter-spacing:.5px;color:#475569;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:13px;font-weight:700;display:flex}.quote-breakdown-table{border-collapse:collapse;width:100%;font-size:13.5px}.quote-breakdown-table th{text-align:left;color:#64748b;border-bottom:1px solid #e2e8f0;padding-bottom:8px;font-size:12px;font-weight:600}.quote-breakdown-table th.num-col,.quote-breakdown-table td.num-col{text-align:right}.quote-breakdown-table td{color:#1e293b;border-bottom:1px solid #f1f5f9;padding:10px 0}.quote-breakdown-table tr:last-child td{border-bottom:none}.quote-breakdown-summary-list{border-top:1px dashed #cbd5e1;flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.quote-summary-line{color:#64748b;justify-content:space-between;align-items:center;font-size:13px;display:flex}.quote-summary-line.is-grand-total{color:#0f766e;border-top:1px solid #e2e8f0;margin-top:6px;padding-top:10px;font-size:16px;font-weight:800}.quote-grand-amount{color:#0d9488;font-size:20px;font-weight:900;font-family:var(--kh-font-mono,monospace)}.quote-commit-card{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.quote-commit-card-title{color:#166534;align-items:center;gap:6px;font-size:13.5px;font-weight:700;display:flex}.quote-commit-list{color:#15803d;flex-direction:column;gap:8px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}.quote-commit-list li{align-items:flex-start;gap:8px;line-height:1.45;display:flex}.quote-commit-icon{margin-top:1px;font-size:14px;line-height:1}.quote-agreement-box{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px solid #0d9488;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;transition:all .15s;display:flex}.quote-agreement-box:hover{background:#f0fdfa}.quote-agreement-box input[type=checkbox]{accent-color:#0d9488;cursor:pointer;width:18px;height:18px;margin-top:2px}.quote-agreement-text{color:#134e4a;font-size:13px;font-weight:600;line-height:1.45}.quote-agreement-sub{color:#64748b;margin-top:3px;font-size:11.5px;font-weight:400}.step-quote-tag{color:#b45309;vertical-align:middle;background:#fef3c7;border:1px solid #fde68a;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:11px;font-weight:700;animation:2s infinite quotePulse;display:inline-block}@keyframes quotePulse{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.timeline-node-item.awaiting-quote .timeline-dot{box-shadow:0 0 0 4px #f59e0b40;color:#fff!important;background:#f59e0b!important;border-color:#d97706!important}
