*{box-sizing:border-box}body{margin:0;background:var(--color-bg-subtle, #f2f3f5);color:var(--color-text, #222)}:root{color-scheme:light;--color-bg: #fff;--color-bg-subtle: #f7f9fc;--color-bg-muted: #eef3f8;--color-bg-card: #fff;--color-bg-hover: #e8eef6;--color-bg-active: #fff;--color-bg-input: #fff;--color-bg-overlay: rgba(17, 24, 39, .36);--color-surface: var(--color-bg-subtle);--color-surface-hover: var(--color-bg-hover);--color-border: #cdd8e5;--color-border-light: #dde6f0;--color-border-input: #b8c6d8;--color-border-focus: #2a5d93;--color-border-form: #cbd5e0;--color-text: #1a202c;--color-text-secondary: #4f5f75;--color-text-muted: #718096;--color-text-heading: #1e3a5c;--color-text-link: #235db6;--color-text-on-primary: #fff;--color-text-subtle: #5f6470;--color-icon: #718096;--color-icon-danger: #e53e3e;--color-primary: #2a5d93;--color-primary-hover: #244f7d;--color-primary-light: #eef3ff;--color-success: #1f7a47;--color-success-bg: #ecfbf3;--color-success-border: #b7e5c8;--color-warning: #d69e2e;--color-warning-bg: #fff7ea;--color-warning-border: #f0cfab;--color-error: #c53030;--color-error-bg: #fff5f5;--color-error-border: #e8a4a4;--color-info: #2b6cb0;--color-info-bg: #ebf8ff;--color-chip-new-bg: #eef3ff;--color-chip-new-text: #2d4a7a;--color-chip-new-border: #cbd9ff;--color-chip-progress-bg: #ebf8ff;--color-chip-progress-text: #2c5282;--color-chip-progress-border: #f2d4a4;--color-chip-ready-bg: #ecfbf3;--color-chip-ready-text: #11633d;--color-chip-ready-border: #a6e3c2;--color-chip-completed-bg: #e6faf0;--color-chip-completed-text: #1f7a47;--color-chip-cancelled-bg: #fff5f5;--color-chip-cancelled-text: #912e2e;--color-printer-offline-bg: #fff3e9;--color-printer-offline-border: #f0cfab;--color-printer-offline-text: #965a1d;--color-printer-unknown-bg: #eef2f7;--color-printer-unknown-border: #ced9e8;--color-printer-unknown-text: #4b617f;--shadow-card: 0 16px 36px rgba(35, 53, 77, .12);--shadow-drawer: -8px 0 24px rgba(15, 23, 42, .15);--shadow-toast: 0 4px 16px rgba(15, 23, 42, .15);--color-focus-ring: rgba(42, 93, 147, .2);--color-accent: #3182ce;--color-skeleton-from: #e8eef6;--color-skeleton-via: #f0f4f9;--color-bar-fill-status: #4e79a7;--color-bar-fill-assignee: #59a14f;--color-timeline-done: #1f7a47;--color-timeline-active: #2a5d93;--color-danger: #c53030;--color-danger-bg: #fff5f5;--color-danger-hover: #912e2e;--color-photo-delete-bg: rgba(255, 255, 255, .85);--color-photo-delete-text: #8d2323;--color-thermal-bg: #fff;--color-thermal-border: #1e1e1e}[data-theme=dark]{color-scheme:dark;--color-bg: #1a1a2e;--color-bg-subtle: #16213e;--color-bg-muted: #1f2b47;--color-bg-card: #1e2d4a;--color-bg-hover: #253a5c;--color-bg-active: #1e2d4a;--color-bg-input: #162038;--color-bg-overlay: rgba(0, 0, 0, .55);--color-surface: #1f2b47;--color-surface-hover: #253a5c;--color-border: #2d4a7a;--color-border-light: #253a5c;--color-border-input: #3a5580;--color-border-focus: #4299e1;--color-border-form: #3a5580;--color-text: #e2e8f0;--color-text-secondary: #a0b0c0;--color-text-muted: #8899aa;--color-text-heading: #cbd9ff;--color-text-link: #6ea0d4;--color-text-on-primary: #fff;--color-text-subtle: #8899aa;--color-icon: #8899aa;--color-icon-danger: #fc8181;--color-primary: #4299e1;--color-primary-hover: #3182ce;--color-primary-light: #1e2d4a;--color-success: #86c07c;--color-success-bg: #1a2e25;--color-success-border: #2d5a3e;--color-warning: #ecc94b;--color-warning-bg: #2d2a1a;--color-warning-border: #5a4a1a;--color-error: #fc8181;--color-error-bg: #2e1a1a;--color-error-border: #6b2a2a;--color-info: #4299e1;--color-info-bg: #1a2540;--color-chip-new-bg: #1e2d4a;--color-chip-new-text: #6ea0d4;--color-chip-new-border: #2d4a7a;--color-chip-progress-bg: #1a2540;--color-chip-progress-text: #4299e1;--color-chip-progress-border: #2d4a7a;--color-chip-ready-bg: #1a2e25;--color-chip-ready-text: #86c07c;--color-chip-ready-border: #2d5a3e;--color-chip-completed-bg: #1a2e25;--color-chip-completed-text: #a6e3c2;--color-chip-cancelled-bg: #2e1a1a;--color-chip-cancelled-text: #fc8181;--color-printer-offline-bg: #2d2a1a;--color-printer-offline-border: #5a4a1a;--color-printer-offline-text: #ecc94b;--color-printer-unknown-bg: #1f2b47;--color-printer-unknown-border: #2d4a7a;--color-printer-unknown-text: #8899aa;--shadow-card: 0 16px 36px rgba(0, 0, 0, .3);--shadow-drawer: -8px 0 24px rgba(0, 0, 0, .4);--shadow-toast: 0 4px 16px rgba(0, 0, 0, .4);--color-focus-ring: rgba(66, 153, 225, .3);--color-accent: #4299e1;--color-skeleton-from: #1f2b47;--color-skeleton-via: #253a5c;--color-bar-fill-status: #4299e1;--color-bar-fill-assignee: #86c07c;--color-timeline-done: #86c07c;--color-timeline-active: #4299e1;--color-danger: #fc8181;--color-danger-bg: #2e1a1a;--color-danger-hover: #e53e3e;--color-photo-delete-bg: rgba(30, 45, 74, .85);--color-photo-delete-text: #fc8181;--color-thermal-bg: #fff;--color-thermal-border: #1e1e1e}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-bg: #1a1a2e;--color-bg-subtle: #16213e;--color-bg-muted: #1f2b47;--color-bg-card: #1e2d4a;--color-bg-hover: #253a5c;--color-bg-active: #1e2d4a;--color-bg-input: #162038;--color-bg-overlay: rgba(0, 0, 0, .55);--color-surface: #1f2b47;--color-surface-hover: #253a5c;--color-border: #2d4a7a;--color-border-light: #253a5c;--color-border-input: #3a5580;--color-border-focus: #4299e1;--color-border-form: #3a5580;--color-text: #e2e8f0;--color-text-secondary: #a0b0c0;--color-text-muted: #8899aa;--color-text-heading: #cbd9ff;--color-text-link: #6ea0d4;--color-text-on-primary: #fff;--color-text-subtle: #8899aa;--color-icon: #8899aa;--color-icon-danger: #fc8181;--color-primary: #4299e1;--color-primary-hover: #3182ce;--color-primary-light: #1e2d4a;--color-success: #86c07c;--color-success-bg: #1a2e25;--color-success-border: #2d5a3e;--color-warning: #ecc94b;--color-warning-bg: #2d2a1a;--color-warning-border: #5a4a1a;--color-error: #fc8181;--color-error-bg: #2e1a1a;--color-error-border: #6b2a2a;--color-info: #4299e1;--color-info-bg: #1a2540;--color-chip-new-bg: #1e2d4a;--color-chip-new-text: #6ea0d4;--color-chip-new-border: #2d4a7a;--color-chip-progress-bg: #1a2540;--color-chip-progress-text: #4299e1;--color-chip-progress-border: #2d4a7a;--color-chip-ready-bg: #1a2e25;--color-chip-ready-text: #86c07c;--color-chip-ready-border: #2d5a3e;--color-chip-completed-bg: #1a2e25;--color-chip-completed-text: #a6e3c2;--color-chip-cancelled-bg: #2e1a1a;--color-chip-cancelled-text: #fc8181;--color-printer-offline-bg: #2d2a1a;--color-printer-offline-border: #5a4a1a;--color-printer-offline-text: #ecc94b;--color-printer-unknown-bg: #1f2b47;--color-printer-unknown-border: #2d4a7a;--color-printer-unknown-text: #8899aa;--shadow-card: 0 16px 36px rgba(0, 0, 0, .3);--shadow-drawer: -8px 0 24px rgba(0, 0, 0, .4);--shadow-toast: 0 4px 16px rgba(0, 0, 0, .4);--color-focus-ring: rgba(66, 153, 225, .3);--color-accent: #4299e1;--color-skeleton-from: #1f2b47;--color-skeleton-via: #253a5c;--color-bar-fill-status: #4299e1;--color-bar-fill-assignee: #86c07c;--color-timeline-done: #86c07c;--color-timeline-active: #4299e1;--color-danger: #fc8181;--color-danger-bg: #2e1a1a;--color-danger-hover: #e53e3e;--color-photo-delete-bg: rgba(30, 45, 74, .85);--color-photo-delete-text: #fc8181;--color-thermal-bg: #fff;--color-thermal-border: #1e1e1e}}.container{width:100%;max-width:none;margin:0;padding:1rem 1.25rem;font-family:Arial,sans-serif}input,select,textarea,button{font-family:inherit;color:var(--color-text)}input,select,textarea{background:var(--color-bg-input);border-color:var(--color-border-input)}button{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);cursor:pointer}button:hover{background:var(--color-bg-hover)}.login-screen{min-height:100vh;display:grid;place-items:center;background:linear-gradient(180deg,var(--color-bg-muted) 0%,var(--color-bg-subtle) 100%)}.login-card{width:min(760px,100%);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:1.25rem}.login-card-header h1{margin:0 0 .25rem;font-size:1.9rem}.login-brand-logo{display:block;width:min(60%,400px);height:auto;margin:0 auto .7rem}.login-card-header p{margin:0 0 1rem;color:var(--color-text-secondary);font-weight:600}.login-field{display:block;margin:.85rem 0}.login-field>span{display:block;margin-bottom:.35rem;font-weight:600}.login-field input{width:100%;margin-top:0;padding:.65rem .75rem;font-size:1rem;border:1px solid var(--color-border-input);border-radius:8px;background:var(--color-bg-input)}.login-field input:focus{border-color:var(--color-border-focus);outline:2px solid var(--color-focus-ring);outline-offset:0}.login-submit{width:100%;margin-top:.65rem;padding:.75rem .9rem;border:1px solid var(--color-primary);border-radius:8px;background:var(--color-primary);color:var(--color-text-on-primary);font-weight:600}.login-submit:hover{background:var(--color-primary-hover)}.login-link-button{margin-top:.6rem;border:none;background:transparent;color:var(--color-text-link);font-weight:600;cursor:pointer;padding:0;text-align:left}.forgot-password-panel{margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--color-border-light)}.login-message{margin-top:.75rem;color:var(--color-error);font-weight:700}.header{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.header-brand{display:inline-flex;align-items:center;gap:.65rem}.header-brand-logo{width:100px;height:100px;border-radius:8px;object-fit:contain;display:block}.header-brand h1{margin:0}.header-user-block{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary)}.header-user-trigger{border:none;background:transparent;padding:0;margin:0;cursor:pointer}.header-user-trigger:hover .header-user-block{opacity:.85}.header-user-avatar{width:30px;height:30px;border-radius:999px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:var(--color-bg-muted);color:var(--color-text-muted)}.header-user-avatar img{width:100%;height:100%;object-fit:cover}.header-user-meta{text-align:right}.header-user-block p{margin:0;font-weight:600}.header-user-block small{display:block}.header-actions{display:flex;gap:0;flex-wrap:wrap;border-bottom:2px solid var(--color-border);padding-bottom:0}.header-actions>button{position:relative;padding:.55rem .9rem;margin:0;border:1px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;background:transparent;color:var(--color-text-secondary);font-size:.88rem;font-weight:500;cursor:pointer;transition:background .12s ease,color .12s ease;bottom:-2px}.header-actions>button:hover{background:var(--color-bg-hover);color:var(--color-text-heading)}.header-actions>button.active{background:var(--color-bg-active);color:var(--color-text-heading);font-weight:600;border-color:var(--color-border);border-bottom:2px solid var(--color-bg-active)}.account-drawer-overlay{position:fixed;inset:0;border:none;background:var(--color-bg-overlay);z-index:60;opacity:0;pointer-events:none;transition:opacity .18s ease}.account-drawer-overlay.open,.account-drawer-overlay.closing{pointer-events:auto}.account-drawer-overlay.open{opacity:1}.account-drawer{position:fixed;top:0;right:0;width:min(340px,92vw);height:100vh;background:var(--color-bg-card);border-left:1px solid var(--color-border-light);box-shadow:var(--shadow-drawer);padding:.85rem;z-index:61;display:flex;flex-direction:column;gap:.75rem;transform:translate(100%);transition:transform .22s ease}.account-drawer.open{transform:translate(0)}.account-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.account-drawer-actions{display:flex;flex-direction:column;gap:.45rem}.account-drawer-actions button{width:100%;justify-content:flex-start}.theme-toggle{display:flex;gap:0;border:1px solid var(--color-border);border-radius:6px;overflow:hidden;margin:.25rem 0}.theme-toggle button{flex:1;display:flex;align-items:center;justify-content:center;padding:.45rem .5rem;border:none;border-right:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;transition:background .15s,color .15s;min-width:0}.theme-toggle button:last-child{border-right:none}.theme-toggle button:hover{background:var(--color-surface-hover, var(--color-border))}.theme-toggle button.active{background:var(--color-primary);color:#fff}.header-printer-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem .75rem}.header-printer-label{display:flex;flex-direction:column;gap:.25rem;min-width:220px}.detail-printer-label{display:flex;flex-direction:column;gap:.25rem;max-width:320px}.mobile-menu-toggle{display:none;align-self:flex-end}.branding-logo-row{display:flex;align-items:center;gap:.75rem;margin-top:.3rem}.branding-logo-preview{width:48px;height:48px;object-fit:contain;border:1px solid var(--color-border-light);border-radius:6px;background:var(--color-bg-card)}.admin-tab-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.admin-tab-header h3{margin:0}.header-actions button,.search-bar button,.detail button,.admin-panels button{display:inline-flex;align-items:center;gap:.35rem}.header-actions>button.active{background:var(--color-bg-active);color:var(--color-text-heading);font-weight:600;border-color:var(--color-border);border-bottom-color:var(--color-bg-active)}.grid{display:grid;grid-template-columns:minmax(360px,var(--left-pane-width, 460px)) 8px minmax(0,1fr);gap:1rem;align-items:stretch}.admin-dashboard,.admin-tabs-container{margin-bottom:1rem}.admin-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.admin-tabs button.active{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}.admin-tab-content{border-top:1px solid var(--color-border-light);padding-top:.75rem}.add-repair-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:.6rem .8rem;margin-bottom:.75rem}.add-repair-grid label{display:flex;flex-direction:column;gap:.2rem;margin:0;font-size:.88rem}.add-repair-grid label.wide{grid-column:span 2}.add-repair-actions{display:flex;gap:.6rem;align-items:center;margin-top:.35rem}.add-repair-submit{margin-top:0}.add-repair-section{margin-bottom:1.1rem}.add-repair-grid label textarea{min-height:4.5rem;resize:vertical;font:inherit}.add-repair-actions{flex-wrap:wrap;align-items:center}.add-repair-actions .btn-primary{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary);font-weight:600}.add-repair-actions .btn-primary:hover:not(:disabled){filter:brightness(.95)}.add-repair-clear{margin-left:auto}.btn-quiet{background:transparent;border-color:transparent;color:var(--color-text-muted);text-decoration:underline;text-underline-offset:3px}.btn-quiet:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text)}.btn-quiet:disabled{opacity:.5;cursor:default;text-decoration:none}.add-repair-success{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.85rem 1rem;margin-bottom:1.1rem;border:1px solid var(--color-success);border-left-width:5px;border-radius:8px;background:var(--color-bg-subtle)}.add-repair-success-text{display:flex;align-items:center;gap:.6rem;color:var(--color-success)}.add-repair-success-text strong{color:var(--color-text-heading)}.add-repair-success-actions{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:1100px){.add-repair-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:640px){.add-repair-grid{grid-template-columns:1fr}.add-repair-grid label.wide{grid-column:auto}.add-repair-grid input,.add-repair-grid select,.add-repair-grid textarea{min-height:44px;font-size:1rem}.add-repair-actions button{flex:1 1 100%;min-height:44px}.add-repair-clear{margin-left:0}}.add-repair-section-title{margin:0 0 .5rem;font-size:.95rem;font-weight:600;color:var(--color-text-heading)}.add-repair-history{margin-top:.65rem}.add-repair-clear-link{grid-column:1 / -1}.clear-linked-customer-btn{padding:.35rem .65rem;font-size:.88rem;border:1px solid var(--color-border-input);border-radius:6px;background:var(--color-bg-subtle);color:var(--color-text-heading);cursor:pointer}.clear-linked-customer-btn:hover{background:var(--color-bg-hover);border-color:var(--color-border)}.intake-subsection-title{margin:1.1rem 0 .35rem;font-size:.82rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.intake-subsection-title:first-child{margin-top:0}.add-user-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:.6rem .8rem;margin-bottom:.4rem}.add-user-grid label{display:flex;flex-direction:column;gap:.2rem;margin:0;font-size:.88rem}.field-help{margin:.15rem 0 .55rem;color:var(--color-text-muted);font-size:.82rem}.field-help.inline-help{margin:0}.add-user-submit{margin-top:.2rem}.profile-page{margin-bottom:1rem}.profile-page-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.profile-page-header h2{margin:0}.profile-page-actions{display:inline-flex;align-items:center;gap:.5rem}.profile-layout{display:grid;grid-template-columns:220px minmax(0,1fr) minmax(320px,420px);gap:.8rem}.profile-avatar-panel,.profile-form-panel,.profile-password-panel{border:1px solid var(--color-border-light);border-radius:8px;padding:.75rem;background:var(--color-bg-subtle)}.profile-form-panel h3,.profile-password-panel h3{margin:0 0 .5rem;font-size:.95rem}.profile-password-panel{width:100%;max-width:420px;justify-self:stretch}.profile-avatar-preview,.profile-avatar-placeholder{width:108px;height:108px;border-radius:999px;margin-bottom:.6rem}.profile-avatar-preview{object-fit:cover;border:1px solid var(--color-border)}.profile-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:var(--color-bg-muted);color:var(--color-text-muted)}.profile-control{display:flex;flex-direction:column;gap:.2rem;margin:0}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem .75rem;margin-bottom:.6rem}.profile-password-grid{display:grid;grid-template-columns:1fr;gap:.55rem .75rem;margin-bottom:.6rem}.profile-password-grid label{display:flex;flex-direction:column;gap:.2rem;margin:0;font-size:.88rem}.profile-password-grid label.wide{grid-column:span 1}.password-field{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:center}.password-field button{margin:0;padding:.45rem .55rem}.profile-grid label{display:flex;flex-direction:column;gap:.2rem;margin:0;font-size:.88rem}.profile-grid label.wide{grid-column:span 2}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.metric-grid>div{border:1px solid var(--color-border-light);border-radius:6px;padding:.5rem;display:flex;justify-content:space-between}.metric-lists{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.function-hub-card h2{margin-bottom:.35rem}.function-hub-card{max-width:920px}.function-hub-actions{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.6rem}.function-hub-actions button{min-width:170px;min-height:44px;font-weight:600}.chart-card{border:1px solid var(--color-border-light);border-radius:6px;padding:.6rem;background:var(--color-bg-subtle)}.bar-chart{display:flex;flex-direction:column;gap:.45rem}.bar-row{display:grid;grid-template-columns:140px 1fr 42px;align-items:center;gap:.5rem}.bar-row.clickable{cursor:pointer;padding:4px 6px;border-radius:6px;transition:background .15s}.bar-row.clickable:hover{background:var(--color-bg-hover)}.bar-label{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{width:100%;height:12px;border-radius:999px;background:var(--color-bg-muted);overflow:hidden}.bar-fill{height:100%;border-radius:999px}.bar-fill.status{background:linear-gradient(90deg,var(--color-bar-fill-status),#6ea0d4)}.bar-fill.assignee{background:linear-gradient(90deg,var(--color-bar-fill-assignee),#86c07c)}.bar-value{text-align:right;font-size:.82rem;font-weight:600}.admin-panels{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.card{border:1px solid var(--color-border-light);border-radius:8px;padding:1rem;background:var(--color-bg-card)}.list{max-height:70vh;overflow:auto}.list:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.grid-resizer{width:8px;cursor:col-resize;border-radius:999px;background:var(--color-border-light);align-self:stretch}.grid-resizer:hover,.grid-resizer.active{background:var(--color-primary)}.search-bar{display:flex;gap:.4rem;margin-bottom:.75rem}.search-bar input{flex:1}.mobile-back-button{margin-bottom:.65rem}.repairs-table{width:100%;border-collapse:collapse;font-size:.9rem}.repairs-table th,.repairs-table td{border:1px solid var(--color-border-light);padding:.4rem;text-align:left}.repairs-table td button{margin-right:.4rem}.notified-toggle-cell{text-align:center!important;width:120px}.notified-toggle-cell input[type=checkbox]{width:16px;height:16px;cursor:pointer}.manage-user-action-button{width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center}.manage-user-action-button.danger{color:var(--color-danger)}.manage-user-action-button.danger:hover{background:var(--color-danger-bg);color:var(--color-error)}.status-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.15rem .5rem;font-size:.78rem;font-weight:600}.status-chip.new{background:var(--color-chip-new-bg);border-color:var(--color-chip-new-border);color:var(--color-chip-new-text)}.status-chip.progress{background:var(--color-chip-progress-bg);border-color:var(--color-chip-progress-border);color:var(--color-chip-progress-text)}.status-chip.ready{background:var(--color-chip-ready-bg);border-color:var(--color-success-border);color:var(--color-chip-ready-text)}.status-chip.completed{background:var(--color-chip-completed-bg);border-color:var(--color-chip-ready-border);color:var(--color-chip-completed-text)}.status-chip.cancelled{background:var(--color-chip-cancelled-bg);border-color:var(--color-error-border);color:var(--color-chip-cancelled-text)}.active-filter-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.45rem 0 .6rem}.role-pill-list{display:flex;flex-wrap:wrap;gap:.35rem .6rem}.role-pill-list label{display:inline-flex;align-items:center;gap:.25rem;font-size:.82rem}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable:hover{background:var(--color-bg-hover)}.repairs-table tbody tr{cursor:pointer}.repairs-table tbody tr:hover{background:var(--color-bg-hover)}.repairs-table tbody tr.selected{background:var(--color-primary-light)}.detail label{display:block;margin:.75rem 0}.detail-meta-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.35rem 0 .9rem}.detail-chip{background:var(--color-bg-subtle);border:1px solid var(--color-border-light);border-radius:6px;padding:.35rem .75rem;font-size:.8rem;color:var(--color-text-secondary)}.detail-chip strong{color:var(--color-text);font-weight:600}.repair-timeline{display:flex;align-items:flex-start;gap:0;padding:1.25rem 1.5rem .75rem;margin:.75rem 0;background:var(--color-bg-card);border:1px solid var(--color-border-light);border-radius:10px;box-shadow:0 1px 3px #0000000a;flex-wrap:wrap}.timeline-step{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;min-width:0}.timeline-dot{width:32px;height:32px;border-radius:50%;border:2px solid var(--color-border-light);background:var(--color-bg-card);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;color:var(--color-text-muted);position:relative;z-index:1;transition:all .2s}.timeline-step.done .timeline-dot{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-on-primary)}.timeline-step.active .timeline-dot{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-on-primary);box-shadow:0 0 0 4px var(--color-focus-ring)}.timeline-check{font-size:.85rem;line-height:1}.timeline-num{font-size:.75rem}.timeline-line{position:absolute;top:16px;left:calc(50% + 18px);right:calc(-50% + 18px);height:2px;background:var(--color-border-light);z-index:0}.timeline-line.done{background:var(--color-primary)}.timeline-label{margin-top:6px;font-size:.75rem;font-weight:500;color:var(--color-text-muted);text-align:center;white-space:nowrap}.timeline-step.done .timeline-label,.timeline-step.active .timeline-label{color:var(--color-text);font-weight:600}.timeline-substatus{display:inline-block;margin-left:auto;align-self:center;font-size:.72rem;font-weight:600;color:var(--color-warning);background:var(--color-warning-bg);border:1px solid var(--color-warning);padding:2px 10px;border-radius:4px;white-space:nowrap;flex-shrink:0}.timeline-substatus.cancelled{color:var(--color-error);background:var(--color-error-bg);border-color:var(--color-error-border)}.repair-timeline.cancelled .timeline-dot{border-color:var(--color-border-light);background:var(--color-bg-card);color:var(--color-text-muted)}.repair-timeline.cancelled .timeline-line{background:var(--color-border-light)}.customer-list-toolbar{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:center;margin-bottom:.75rem}.customer-list-toolbar input[type=search]{min-width:180px;max-width:280px}.customer-list-table{font-size:.9rem}.customer-merge-col{width:2rem;text-align:center}.customer-list-row.selected{background:var(--color-primary-light)}.customer-list-row.expanded{background:var(--color-bg-subtle)}.customer-expand-btn{background:none;border:none;padding:0;font:inherit;color:var(--color-text-heading);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.customer-expand-btn:hover{color:var(--color-text)}.customer-repairs-sublist{margin:.35rem 0 0;padding-left:1rem;font-size:.85rem;list-style:disc;color:var(--color-text-secondary)}.customer-repairs-sublist li{padding:.15rem 0}.pagination-row{display:flex;gap:.6rem;align-items:center;justify-content:center;margin-top:.8rem;font-size:.9rem}.customer-history-list,.repair-history-list{margin:.35rem 0 0;padding-left:1.1rem;display:grid;gap:.35rem}.customer-history-list{list-style:none;padding-left:0}.customer-history-row{width:100%;text-align:left;display:flex;flex-direction:column;gap:.2rem;padding:.45rem .55rem;border:1px solid var(--color-border-light);border-radius:6px;background:var(--color-bg-card);cursor:pointer;font:inherit;color:inherit}.customer-history-row:hover{background:var(--color-bg-hover);border-color:var(--color-border)}.customer-history-name{font-weight:600}.customer-history-meta{font-size:.88rem;color:var(--color-text-secondary)}.repair-history-list li{border-bottom:1px dashed var(--color-border-light);padding-bottom:.35rem}.detail-section{border:1px solid var(--color-border-light);border-radius:10px;padding:1.25rem 1.5rem;margin:1rem 0;background:var(--color-bg-card);box-shadow:0 1px 3px #0000000a}.detail-section h3{margin:0 0 .6rem;font-size:1.05rem;font-weight:700;color:var(--color-text);letter-spacing:-.01em}.section-header-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.25rem}.section-header-row h3{margin:0}.section-header-row button{font-size:.8rem;padding:5px 12px;border-radius:6px;border:1px solid var(--color-border-light);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:background .15s,border-color .15s}.section-header-row button:hover{background:var(--color-bg-hover);border-color:var(--color-border)}.section-hint{margin:0 0 .85rem;color:var(--color-text-muted);font-size:.78rem;font-style:italic;padding:5px 12px;background:var(--color-bg-subtle);border-radius:4px;border-left:3px solid var(--color-border-light)}.detail-grid{margin:0;display:grid;grid-template-columns:1fr;gap:0}.detail-grid>div{display:grid;grid-template-columns:160px 1fr;align-items:baseline;padding:.6rem 0;border-bottom:1px solid var(--color-border-light);margin:0}.detail-grid>div:last-child{border-bottom:none}.detail-grid>div.wide{grid-column:span 1}.detail-grid dt{color:var(--color-text-muted);font-size:.82rem;margin:0;font-weight:500;text-transform:none;letter-spacing:normal}.detail-grid dd{margin:0;font-size:.92rem;font-weight:500;line-height:1.4;word-break:break-word;color:var(--color-text)}.intake-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem}.intake-edit-grid label{display:flex;flex-direction:column;gap:.25rem;margin:0;font-size:.82rem;font-weight:600;color:var(--color-text-secondary)}.intake-edit-grid label input,.intake-edit-grid label select,.intake-edit-grid label textarea{font-weight:400;color:var(--color-text);padding:6px 10px;border:1px solid var(--color-border-light);border-radius:6px;font-size:.92rem;transition:border-color .15s,box-shadow .15s}.intake-edit-grid label input:focus,.intake-edit-grid label select:focus,.intake-edit-grid label textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px var(--color-focus-ring);outline:none}.intake-edit-grid label.wide,.intake-edit-grid .repair-work-actions{grid-column:span 2}.repair-outcome-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem}.repair-outcome-edit-grid label{display:flex;flex-direction:column;gap:.25rem;margin:0;font-size:.82rem;font-weight:600;color:var(--color-text-secondary)}.repair-outcome-edit-grid label.wide,.repair-outcome-edit-grid .repair-work-actions{grid-column:span 2}.repair-outcome-edit-grid label.checkbox-label,.intake-edit-grid label.checkbox-label{flex-direction:row;align-items:center;gap:.5rem;cursor:pointer;padding-top:1.4rem}.repair-outcome-edit-grid label.checkbox-label input[type=checkbox],.intake-edit-grid label.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent);cursor:pointer}.repair-outcome-edit-grid textarea,.repair-outcome-edit-grid select,.repair-outcome-edit-grid input{width:100%;font-weight:400;color:var(--color-text);padding:6px 10px;border:1px solid var(--color-border-light);border-radius:6px;font-size:.92rem;transition:border-color .15s,box-shadow .15s}.repair-outcome-edit-grid textarea:focus,.repair-outcome-edit-grid select:focus,.repair-outcome-edit-grid input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px var(--color-focus-ring);outline:none}.detail-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap}.detail-header-row h2{margin:0;white-space:nowrap}.detail-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.detail-assign-select{min-width:140px}.button-danger{background:var(--color-danger-bg);border:1px solid var(--color-error-border);color:var(--color-danger-hover)}.button-danger:hover{background:var(--color-error-bg)}.detail-tabbed{display:flex;flex-direction:column;overflow:hidden}.detail-sticky-header{position:sticky;top:0;z-index:5;background:var(--color-bg-card);padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light);margin:-.25rem -.25rem 0;padding:0 .25rem .65rem}.detail-header-info{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap;min-width:0}.detail-header-info h2{margin:0;white-space:nowrap;font-size:1.15rem}.detail-header-item{color:var(--color-text-secondary);font-size:.88rem;font-weight:500}.detail-header-sep{color:var(--color-text-muted);font-size:.85rem}.detail-header-customer{color:var(--color-text-secondary);font-size:.88rem}.repair-timeline.compact{margin:.35rem 0 0;padding:.6rem .5rem .35rem;border:none;box-shadow:none;background:transparent}.repair-timeline.compact .timeline-dot{width:26px;height:26px;font-size:.7rem}.repair-timeline.compact .timeline-line{top:13px;left:calc(50% + 15px);right:calc(-50% + 15px)}.repair-timeline.compact .timeline-label{font-size:.68rem;margin-top:4px}.repair-timeline.compact .timeline-substatus{margin:.35rem auto 0;width:auto;flex:none}.detail-tab-bar{display:flex;gap:0;border-bottom:2px solid var(--color-border-light);margin:0 -.25rem;padding:0 .25rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.detail-tab-bar::-webkit-scrollbar{display:none}.detail-tab{display:inline-flex;align-items:center;gap:.3rem;padding:.6rem .85rem;border:none;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--color-text-muted);font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;margin-bottom:-2px;transition:color .15s,border-color .15s}.detail-tab:hover{color:var(--color-text);background:transparent}.detail-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:transparent}.detail-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--color-bg-muted);color:var(--color-text-secondary);font-size:.7rem;font-weight:700;line-height:1}.detail-tab.active .detail-tab-badge{background:var(--color-primary);color:var(--color-text-on-primary)}.detail-tab-content{flex:1;overflow-y:auto;padding:1rem .25rem .5rem}.detail-tab-content>section{animation:tab-fade-in .2s ease}@keyframes tab-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.detail-action-bar{position:sticky;bottom:0;display:flex;gap:.5rem;padding:.75rem 0;margin-top:1rem;background:var(--color-bg-card);border-top:1px solid var(--color-border-light);z-index:4}.detail-action-bar button:first-child{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}.detail-action-bar button:first-child:hover{background:var(--color-primary-hover)}.customer-summary-card{background:var(--color-bg-subtle);border:1px solid var(--color-border-light);border-radius:8px;padding:.85rem 1rem;margin-bottom:1rem}.customer-summary-name{font-size:1rem;font-weight:700;color:var(--color-text);margin-bottom:.25rem}.customer-summary-row{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.85rem;color:var(--color-text-secondary);margin-top:.15rem}.customer-contact-link{color:var(--color-text-link);text-decoration:none;font-weight:500}.customer-contact-link:hover{text-decoration:underline}.inline-toggle-button{margin:0;padding:0;border:none;background:transparent;color:var(--color-text-link);font-size:.8rem;text-decoration:underline;cursor:pointer}.printer-readiness-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin:.3rem 0 .5rem}.usb-printer-panel{border:1px solid #e2e8f0;border-radius:8px;padding:.7rem .9rem;margin:.4rem 0 .7rem;display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}.printer-status-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.1rem .55rem;font-size:.78rem;font-weight:600}.printer-status-badge.online{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.printer-status-badge.offline{background:var(--color-printer-offline-bg);border-color:var(--color-printer-offline-border);color:var(--color-printer-offline-text)}.printer-status-badge.unknown{background:var(--color-printer-unknown-bg);border-color:var(--color-printer-unknown-border);color:var(--color-printer-unknown-text)}input,select,button{padding:.5rem;margin-top:.25rem}.message{font-weight:600}.message.success{color:var(--color-success)}.message.error{color:var(--color-error)}.message.info{color:var(--color-info)}.translation-inline{display:block;margin-top:.2rem;color:var(--color-text-subtle);font-size:.82rem}.photos-section{margin-top:1.25rem}.photos-section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.65rem}.photos-section-header h3{margin:0}.photo-upload-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .7rem;font-size:.85rem;border:1px solid var(--color-border-input);border-radius:6px;background:var(--color-bg-subtle);color:var(--color-text-heading);cursor:pointer;transition:background .12s ease}.photo-upload-btn:hover{background:var(--color-bg-hover);border-color:var(--color-border)}.photo-upload-group{display:inline-flex;align-items:center;gap:.4rem}.photo-info-tip{font-size:1rem;color:var(--color-text-muted);cursor:help;line-height:1}.photo-info-tip:hover{color:var(--color-text-secondary)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.photo-card{border:1px solid var(--color-border-light);border-radius:10px;background:var(--color-bg-card);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 4px #0f172a0f;transition:box-shadow .18s ease,transform .18s ease}.photo-card:hover{box-shadow:0 4px 14px #0f172a1f;transform:translateY(-1px)}.photo-card-image{position:relative}.photo-card-image img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:var(--color-bg-muted)}.photo-card-image a{display:block}.photo-delete-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--color-photo-delete-bg);color:var(--color-photo-delete-text);cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.photo-card:hover .photo-delete-btn{opacity:1}.photo-delete-btn:hover{background:var(--color-error-bg)}.photo-caption-input{border:none;border-top:1px solid var(--color-border-light);padding:.4rem .55rem;font-size:.82rem;color:var(--color-text-secondary);background:transparent;outline:none}.photo-caption-input:focus{background:var(--color-bg-subtle)}.photo-caption-input::placeholder{color:var(--color-text-muted)}.photo-loading{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4 / 3;background:var(--color-bg-muted);color:var(--color-text-muted);font-size:.8rem}.thermal-modal-overlay{position:fixed;inset:0;background:#11182773;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem}.thermal-modal{background:var(--color-bg-card);border-radius:10px;box-shadow:0 16px 48px #0f172a38;padding:1.25rem;max-height:92vh;overflow-y:auto;width:fit-content;max-width:96vw}.thermal-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.thermal-modal-header h3{margin:0}.thermal-modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;margin:0;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary);cursor:pointer}.thermal-modal-close:hover{background:var(--color-bg-muted);color:var(--color-text-heading)}.preview-note{margin:.25rem 0 .75rem;color:var(--color-text-muted)}.thermal-preview{width:80mm;max-width:100%;border:2px solid var(--color-thermal-border);background:var(--color-thermal-bg);margin-bottom:.75rem}.thermal-preview .row{display:grid}.thermal-preview .two-col{grid-template-columns:42% 58%;border-bottom:1px solid var(--color-thermal-border)}.thermal-preview .cell{padding:6px 8px;min-height:24px;display:flex;align-items:center}.thermal-preview .left{border-right:1px solid var(--color-thermal-border)}.thermal-preview .strong{font-weight:700}.thermal-preview .large{font-size:28px;font-weight:700;justify-content:center}.thermal-preview .top-row .cell{min-height:48px}.thermal-preview .qr-row .cell{min-height:130px}.thermal-preview .qr-cell{justify-content:center}.thermal-preview .qr-cell img{width:110px;height:110px;image-rendering:pixelated}.thermal-preview .full{font-size:12px;min-height:20px}.preview-actions{margin-bottom:1rem}.repair-work-editor{margin-top:1rem}.repair-work-editor textarea,.repair-work-editor select{width:100%}.repair-work-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem;border-top:1px solid var(--color-border-light);margin-top:.25rem}.repair-work-actions button{padding:6px 16px;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s}.repair-work-actions button:first-child{background:var(--color-info);color:var(--color-text-on-primary);border:1px solid var(--color-info);font-size:.95rem;font-weight:600;padding:8px 24px;box-shadow:0 2px 4px #2b6cb04d}.repair-work-actions button:first-child:hover{background:var(--color-primary-hover);box-shadow:0 3px 6px #2b6cb066}.repair-work-actions button:first-child:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.repair-work-actions button:not(:first-child){background:var(--color-bg-card);color:var(--color-text-secondary);border:1px solid var(--color-border-light)}.repair-work-actions button:not(:first-child):hover{background:var(--color-bg-hover)}.modal-overlay{position:fixed;inset:0;background:#11182773;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-dialog{background:var(--color-bg-card);border-radius:12px;box-shadow:0 16px 48px #0f172a38;padding:1.5rem;min-width:320px;max-width:480px;width:100%}.modal-dialog h3{margin:0 0 1rem;font-size:1.1rem}.modal-dialog p{margin:0 0 1rem;color:var(--color-text-secondary);font-size:.92rem}.csv-export-options{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.25rem}.csv-export-options label{display:flex;align-items:center;gap:.5rem;font-size:.92rem;cursor:pointer}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end}.modal-actions.three-option{justify-content:flex-start}.modal-actions button{padding:6px 16px;border-radius:6px;font-size:.88rem;font-weight:500;cursor:pointer;border:1px solid var(--color-border-light);background:var(--color-bg-card);color:var(--color-text-secondary);transition:background .15s}.modal-actions button:hover{background:var(--color-bg-hover)}.modal-actions .btn-primary{background:var(--color-info);color:var(--color-text-on-primary);border-color:var(--color-info)}.modal-actions .btn-primary:hover{background:var(--color-primary-hover)}.modal-actions .btn-danger{background:var(--color-danger);color:var(--color-text-on-primary);border-color:var(--color-danger)}.modal-actions .btn-danger:hover{background:var(--color-danger-hover)}.field-required{color:var(--color-error);font-weight:600}.field-error{border-color:var(--color-icon-danger)!important;box-shadow:0 0 0 2px #e53e3e26!important}.field-error-msg{font-size:.78rem;color:var(--color-error);margin-top:2px}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem}@media print{@page{size:80mm auto;margin:8mm 4mm 10mm}.header,.list,.message,body>*:not(.thermal-modal-overlay),.account-drawer-overlay,.account-drawer,.admin-tabs-container,.admin-tabs,.admin-tab-content,.admin-dashboard,.admin-panels,.grid-resizer,.preview-note,.preview-actions,.thermal-modal-header,.thermal-modal-close{display:none!important}.thermal-modal-overlay{position:static!important;background:none!important;padding:0!important}.thermal-modal{box-shadow:none!important;border-radius:0!important;padding:0!important;max-height:none!important;overflow:visible!important}.thermal-preview{margin:0}}@media(max-width:900px){.container{padding:.75rem}.login-card{padding:1rem;border-radius:12px}.login-card-header h1{font-size:1.7rem}.header-top h1{margin:0;font-size:2.15rem;line-height:.95}.header-user-block{font-size:.92rem}.account-drawer{width:min(360px,96vw)}.mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--color-border-input);border-radius:8px;background:var(--color-bg-card);margin-top:-.15rem}.header-actions.mobile-actions{display:none;width:100%;flex-direction:column;border:1px solid var(--color-border-light);border-radius:8px;background:var(--color-bg-card);padding:.5rem;border-bottom:none}.header-actions.mobile-actions.open{display:flex}.header-actions.mobile-actions>button{width:100%;justify-content:flex-start;border-radius:6px;bottom:0}.header-actions.mobile-actions>button.active{background:var(--color-bg-muted);border-color:transparent;border-bottom:none}.grid{grid-template-columns:1fr}.grid-resizer,.mobile-hidden{display:none}.metric-grid,.metric-lists,.admin-panels,.add-repair-grid{grid-template-columns:1fr}.add-repair-grid label.wide{grid-column:span 1}.add-user-grid,.profile-layout{grid-template-columns:1fr}.profile-password-panel{max-width:none;justify-self:stretch}.profile-grid,.profile-password-grid{grid-template-columns:1fr}.profile-grid label.wide{grid-column:span 1}.detail-grid>div{grid-template-columns:120px 1fr}.detail-section{padding:1rem}.detail-sticky-header{padding:0 .15rem .5rem}.detail-header-info h2{font-size:1rem}.detail-header-actions{display:none}.repair-timeline.compact .timeline-dot{width:22px;height:22px;font-size:.65rem}.repair-timeline.compact .timeline-line{top:11px;left:calc(50% + 13px);right:calc(-50% + 13px)}.repair-timeline.compact .timeline-label{font-size:.62rem}.detail-tab{padding:.5rem .65rem;font-size:.76rem}.detail-tab-badge{min-width:16px;height:16px;font-size:.65rem}.intake-edit-grid{grid-template-columns:1fr}.intake-edit-grid label.wide,.intake-edit-grid .repair-work-actions{grid-column:span 1}.repair-outcome-edit-grid{grid-template-columns:1fr}.repair-outcome-edit-grid label.wide,.repair-outcome-edit-grid .repair-work-actions{grid-column:span 1}.detail-control{min-width:100%}.detail-meta-chips{display:grid;grid-template-columns:1fr;gap:.45rem}.repair-timeline{padding:1rem .75rem .6rem}.timeline-dot{width:26px;height:26px}.timeline-line{top:13px;left:calc(50% + 15px);right:calc(-50% + 15px)}.timeline-label{font-size:.68rem}.timeline-substatus{position:static;margin:8px auto 0;width:fit-content;flex-basis:100%;text-align:center}.detail-chip{border-radius:10px;padding:.5rem .65rem;background:var(--color-bg-subtle);border-color:var(--color-border-light)}.mobile-back-button,.header-actions.mobile-actions>button{min-height:44px}}.materials-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-bottom:.75rem}.materials-table th,.materials-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--color-border-light)}.materials-table th{background:var(--color-bg-subtle);font-weight:600;font-size:.78rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em}.materials-table td:nth-child(2),.materials-table td:nth-child(3),.materials-table td:nth-child(4),.materials-table th:nth-child(2),.materials-table th:nth-child(3),.materials-table th:nth-child(4){text-align:right;white-space:nowrap}.materials-table td:nth-child(5),.materials-table th:nth-child(5){text-align:center}.materials-table .mat-notes{display:block;font-style:italic}.material-cost-summary{display:flex;gap:1.5rem;flex-wrap:wrap;padding:8px 0;font-size:.85rem;border-top:2px solid var(--color-border-light);margin-bottom:.75rem}.material-cost-summary .billed-pct{padding:2px 8px;border-radius:4px;background:var(--color-info-bg);color:var(--color-info);font-weight:600}.add-material-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:1px dashed var(--color-text-muted);border-radius:6px;background:transparent;color:var(--color-text-secondary);cursor:pointer;font-size:.85rem}.add-material-btn:hover{background:var(--color-bg-hover);border-color:var(--color-text-muted)}.material-add-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;padding:12px;background:var(--color-bg-subtle);border-radius:6px;border:1px solid var(--color-border-light);margin-top:8px}.material-add-form label{display:flex;flex-direction:column;gap:2px;font-size:.82rem;font-weight:500}.material-add-form input[type=text],.material-add-form input[type=number],.material-add-form select{padding:4px 6px;border:1px solid var(--color-border-form);border-radius:4px;font-size:.85rem}.material-add-form .checkbox-label{flex-direction:row;align-items:center;gap:6px;padding-top:20px}.receipt-actions{display:inline-flex;align-items:center;gap:4px}.receipt-actions a{color:var(--color-text-link)}.receipt-upload-label{cursor:pointer;color:var(--color-icon);display:inline-flex;align-items:center}.receipt-upload-label:hover{color:var(--color-text-link)}.hidden-input{display:none}.icon-btn{background:none;border:none;cursor:pointer;padding:2px;color:var(--color-icon);display:inline-flex;align-items:center}.icon-btn:hover{color:var(--color-icon-danger)}.inventory-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.inventory-toolbar input[type=text]{flex:1;min-width:180px;padding:6px 10px;border:1px solid var(--color-border-form);border-radius:6px;font-size:.85rem}.inventory-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-bottom:.75rem}.inventory-table th,.inventory-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--color-border-light)}.inventory-table th{background:var(--color-bg-subtle);font-weight:600;font-size:.78rem;color:var(--color-text-secondary);text-transform:uppercase}.inventory-table .inactive-row{opacity:.5}.inventory-table td button{background:none;border:none;cursor:pointer;padding:2px 4px;color:var(--color-icon)}.inventory-table td button:hover{color:var(--color-text)}.inline-edit-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;padding:14px;background:var(--color-bg-subtle);border-radius:8px;border:1px solid var(--color-border-light);margin-bottom:12px}.inline-edit-form label{display:flex;flex-direction:column;gap:3px;font-size:.82rem;font-weight:500}.inline-edit-form input,.inline-edit-form select,.inline-edit-form textarea{padding:5px 8px;border:1px solid var(--color-border-form);border-radius:4px;font-size:.85rem}.inline-edit-actions{grid-column:1 / -1;display:flex;gap:8px;padding-top:4px}.inline-edit-actions button{display:inline-flex;align-items:center;gap:4px}.user-guide{max-width:860px;margin:0 auto;padding:1.5rem}.user-guide-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-primary)}.user-guide-header h2{margin:0;font-size:1.5rem;color:var(--color-text)}.user-guide-header-actions{display:flex;gap:8px}.user-guide-header-actions button{padding:6px 14px;border:1px solid var(--color-border-form);border-radius:6px;cursor:pointer;font-size:.88rem}.user-guide-intro{color:var(--color-text-secondary);font-size:.95rem;margin-bottom:1.5rem}.user-guide-toc{background:var(--color-bg-subtle);border:1px solid var(--color-border-light);border-radius:8px;padding:1rem 1.5rem;margin-bottom:2rem}.user-guide-toc h3{margin:0 0 .5rem;font-size:1rem;color:var(--color-text-heading)}.user-guide-toc ol{margin:0;padding-left:1.2rem;columns:2;column-gap:2rem}.user-guide-toc li{margin-bottom:.3rem;font-size:.9rem;break-inside:avoid}.user-guide-toc a{color:var(--color-text-heading);text-decoration:none}.user-guide-toc a:hover{text-decoration:underline}.user-guide-body article{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border-light)}.user-guide-body article:last-child{border-bottom:none}.user-guide-body h3{color:var(--color-text-heading);font-size:1.15rem;margin:0 0 .6rem}.user-guide-body h4{color:var(--color-text-heading);font-size:.98rem;margin:1rem 0 .4rem}.user-guide-body p{font-size:.92rem;color:var(--color-text);line-height:1.6;margin:.4rem 0}.user-guide-body ul{padding-left:1.3rem;margin:.4rem 0}.user-guide-body li{font-size:.92rem;color:var(--color-text);line-height:1.55;margin-bottom:.25rem}.user-guide-dl{display:grid;grid-template-columns:minmax(140px,auto) 1fr;gap:0;margin:.6rem 0}.user-guide-dl>div{display:contents}.user-guide-dl dt{font-weight:600;font-size:.9rem;color:var(--color-text-heading);padding:.4rem .75rem .4rem 0;border-bottom:1px solid var(--color-border-light)}.user-guide-dl dd{font-size:.9rem;color:var(--color-text-secondary);padding:.4rem 0;margin:0;border-bottom:1px solid var(--color-border-light)}.user-guide-table{width:100%;border-collapse:collapse;margin:.75rem 0;font-size:.88rem}.user-guide-table thead tr{background:var(--color-primary);color:var(--color-text-on-primary)}.user-guide-table th,.user-guide-table td{padding:.45rem .6rem;text-align:center;border:1px solid var(--color-border)}.user-guide-table td:first-child{text-align:left;font-weight:600}.user-guide-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.user-guide-table tbody tr:hover{background:var(--color-bg-hover)}@media print{header,.header-actions,.user-guide-header-actions,.message{display:none!important}.user-guide{max-width:100%;padding:0}.user-guide-header{display:block!important;border-bottom:2px solid #000}.user-guide-body article{page-break-inside:avoid}.user-guide-body h3{page-break-after:avoid}.user-guide-table{page-break-inside:avoid}.user-guide-toc{page-break-after:always}}@media(max-width:600px){.user-guide-toc ol{columns:1}.user-guide-dl{grid-template-columns:1fr}.user-guide-dl dt{border-bottom:none;padding-bottom:0}}.feedback-board{max-width:800px;margin:0 auto}.feedback-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.feedback-header h2{margin:0;color:var(--color-text-heading)}.feedback-form{padding:1.25rem;margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.75rem}.feedback-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}.feedback-form textarea{resize:vertical;min-height:80px}.feedback-form-actions{display:flex;justify-content:flex-end}.feedback-filters{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.feedback-filter-group{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.feedback-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .65rem;border-radius:20px;font-size:.78rem;font-weight:500;border:1px solid var(--color-border);background:var(--color-bg-subtle);color:var(--color-text-secondary);cursor:pointer;transition:all .12s ease}.feedback-chip:hover{background:var(--color-bg-hover)}.feedback-chip.active{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}.feedback-status-filter,.feedback-sort{font-size:.8rem;padding:.3rem .5rem;border-radius:6px}.feedback-loading,.feedback-empty{text-align:center;padding:2rem;color:var(--color-text-muted);font-size:.9rem}.feedback-list{display:flex;flex-direction:column;gap:.75rem}.feedback-card{padding:0;overflow:hidden}.feedback-card-main{display:flex;align-items:stretch;gap:0}.feedback-vote-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.75rem .65rem;border:none;border-right:1px solid var(--color-border-light);background:var(--color-bg-subtle);color:var(--color-text-muted);cursor:pointer;font-size:.85rem;font-weight:700;min-width:52px;transition:all .12s ease}.feedback-vote-btn:hover,.feedback-vote-btn.voted{color:var(--color-primary);background:var(--color-primary-light)}.feedback-card-content{flex:1;min-width:0;padding:.85rem 1rem;cursor:pointer}.feedback-card-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.35rem}.feedback-card-title-row h3{margin:0;font-size:.95rem;color:var(--color-text)}.feedback-category-chip{display:inline-flex;align-items:center;gap:.2rem;font-size:.68rem;font-weight:600;padding:.15rem .5rem;border-radius:4px;white-space:nowrap}.feedback-category-chip.bug{background:var(--color-error-bg);color:var(--color-error)}.feedback-category-chip.feature{background:var(--color-info-bg);color:var(--color-info)}.feedback-category-chip.improvement{background:var(--color-warning-bg);color:var(--color-warning)}.feedback-category-chip.general{background:var(--color-bg-muted);color:var(--color-text-secondary)}.feedback-status-chip{font-size:.68rem;font-weight:600;padding:.15rem .5rem;border-radius:4px;white-space:nowrap}.feedback-status-chip.open{background:var(--color-chip-new-bg);color:var(--color-chip-new-text)}.feedback-status-chip.under-review{background:var(--color-chip-progress-bg);color:var(--color-chip-progress-text)}.feedback-status-chip.planned{background:var(--color-info-bg);color:var(--color-info)}.feedback-status-chip.done{background:var(--color-success-bg);color:var(--color-success)}.feedback-status-chip.closed{background:var(--color-bg-muted);color:var(--color-text-muted)}.feedback-card-body{margin:0 0 .4rem;font-size:.85rem;color:var(--color-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feedback-card.expanded .feedback-card-body{-webkit-line-clamp:unset;overflow:visible}.feedback-card-meta{display:flex;flex-wrap:wrap;gap:.35rem;font-size:.75rem;color:var(--color-text-muted);align-items:center}.feedback-card-meta svg{vertical-align:middle}.feedback-card-actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:.5rem}.feedback-admin-status{font-size:.72rem;padding:.2rem .3rem;border-radius:4px}.feedback-delete-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;border-radius:4px}.feedback-delete-btn:hover{color:var(--color-error);background:var(--color-error-bg)}.feedback-comments-section{border-top:1px solid var(--color-border-light);padding:.75rem 1rem 1rem;margin-left:52px}.feedback-comments-list{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.75rem}.feedback-comment{padding:.5rem .65rem;background:var(--color-bg-subtle);border-radius:6px;font-size:.83rem}.feedback-comment-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.2rem;font-size:.75rem;color:var(--color-text-muted)}.feedback-comment-header strong{color:var(--color-text)}.feedback-comment-delete{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.1rem;margin-left:auto}.feedback-comment-delete:hover{color:var(--color-error)}.feedback-comment p{margin:0;color:var(--color-text-secondary)}.feedback-comment-form{display:flex;gap:.5rem}.feedback-comment-form input{flex:1;font-size:.83rem;padding:.4rem .6rem}.feedback-comment-form button{padding:.4rem .65rem}.analytics-dashboard{max-width:960px;margin:0 auto}.analytics-dashboard h2{margin-bottom:1.25rem;color:var(--color-text-heading)}.analytics-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:1.5rem}.analytics-kpi-card{display:flex;flex-direction:column;align-items:center;padding:1.1rem .75rem;background:var(--color-bg-card);border:1px solid var(--color-border-light);border-radius:10px;box-shadow:0 1px 3px #0000000a;text-align:center}.kpi-icon{color:var(--color-primary);margin-bottom:.4rem}.kpi-value{font-size:1.6rem;font-weight:700;color:var(--color-text);line-height:1.2}.kpi-label{font-size:.75rem;color:var(--color-text-muted);margin-top:.2rem}.analytics-section{padding:1.25rem;margin-bottom:1rem}.analytics-section h3{margin:0 0 .75rem;font-size:.95rem;color:var(--color-text-heading)}.analytics-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.analytics-section-header h3{margin-bottom:0}.analytics-period-select{font-size:.8rem;padding:.25rem .5rem;border-radius:6px}.analytics-chart-legend{display:flex;gap:1rem;font-size:.78rem;color:var(--color-text-muted);margin-bottom:.75rem}.legend-item{display:flex;align-items:center;gap:.3rem}.legend-dot{width:10px;height:10px;border-radius:2px}.legend-dot.created{background:var(--color-bar-fill-status)}.legend-dot.completed{background:var(--color-bar-fill-assignee)}.analytics-bar-chart{display:flex;align-items:flex-end;gap:2px;height:140px;padding-top:.5rem}.chart-day{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.chart-bars{flex:1;display:flex;align-items:flex-end;gap:1px;width:100%}.chart-bar{flex:1;border-radius:2px 2px 0 0;min-height:1px;transition:height .3s ease}.chart-bar.created{background:var(--color-bar-fill-status)}.chart-bar.completed{background:var(--color-bar-fill-assignee)}.chart-label{font-size:.6rem;color:var(--color-text-muted);margin-top:.2rem;white-space:nowrap}.analytics-grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.analytics-breakdown-list{display:flex;flex-direction:column;gap:.5rem}.breakdown-row{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:.5rem}.breakdown-label{font-size:.82rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breakdown-bar-track{height:8px;background:var(--color-bg-muted);border-radius:4px;overflow:hidden}.breakdown-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.breakdown-bar-fill.status{background:var(--color-bar-fill-status)}.breakdown-bar-fill.assignee{background:var(--color-bar-fill-assignee)}.breakdown-bar-fill.outcome{background:var(--color-success)}.breakdown-bar-fill.article{background:var(--color-warning)}.breakdown-value{font-size:.78rem;color:var(--color-text-muted);white-space:nowrap;min-width:60px;text-align:right}@media(max-width:900px){.analytics-grid-2col{grid-template-columns:1fr}.analytics-kpi-grid{grid-template-columns:repeat(2,1fr)}.feedback-comments-section{margin-left:0}.feedback-card-actions{flex-direction:row}.breakdown-row{grid-template-columns:80px 1fr auto}}.skip-to-content{position:absolute;top:-100%;left:0;z-index:999;padding:.75rem 1.25rem;background:var(--color-text-heading);color:var(--color-text-on-primary);font-weight:600;text-decoration:none;border-radius:0 0 6px;transition:top .15s ease}.skip-to-content:focus{top:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spinner{display:inline-block;border:2.5px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}.spinner-inline{vertical-align:middle;margin-right:.4rem}@keyframes spin{to{transform:rotate(360deg)}}button .spinner{border-width:2px;border-color:#ffffff4d;border-top-color:var(--color-text-on-primary)}.spinner-page{display:flex;align-items:center;justify-content:center;padding:3rem;gap:.75rem;color:var(--color-text-muted)}.skeleton{background:linear-gradient(90deg,var(--color-skeleton-from) 25%,var(--color-skeleton-via) 50%,var(--color-skeleton-from) 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;border-radius:4px;margin-bottom:.5rem}.skeleton-heading{height:1.5em;width:60%;border-radius:4px;margin-bottom:.75rem}.skeleton-row{display:flex;gap:.75rem;margin-bottom:.5rem}.skeleton-row .skeleton{flex:1}.skeleton-table{display:flex;flex-direction:column;gap:.4rem}.toast{position:fixed;top:1rem;right:1rem;z-index:100;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;font-size:.92rem;font-weight:500;box-shadow:var(--shadow-toast);animation:toast-slide-in .25s ease;max-width:min(440px,calc(100vw - 2rem))}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.toast-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.toast-error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.toast-info{background:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-border-focus)}.toast-message{flex:1;line-height:1.4}.toast-dismiss{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border:none;background:transparent;color:inherit;opacity:.6;cursor:pointer;border-radius:4px}.toast-dismiss:hover{opacity:1;background:#0000000f}.form-field{display:flex;flex-direction:column;gap:.2rem;margin:0;font-size:.88rem}.form-field.wide{grid-column:span 2}.form-field-label{font-weight:600;color:var(--color-text-heading)}.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea{border-color:var(--color-error);outline:2px solid rgba(220,38,38,.15);outline-offset:0}.form-field-error{color:var(--color-error);font-size:.82rem;font-weight:500;margin-top:.15rem;display:flex;align-items:center;gap:.25rem}.form-field-error:before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--color-error);color:var(--color-text-on-primary);font-size:.7rem;font-weight:700;flex-shrink:0}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-border-focus);outline:2px solid var(--color-focus-ring);outline-offset:0}.repairs-table tbody tr:focus-visible,.customer-history-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.modal-overlay{animation:modal-fade-in .18s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-dialog{animation:modal-scale-in .2s ease}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-body{margin:.75rem 0}.list-loading-overlay{position:relative}.list-loading-overlay:after{content:"";position:absolute;inset:0;background:#fff9;z-index:5;pointer-events:none;opacity:0;transition:opacity .2s ease}.list-loading-overlay.is-loading:after{opacity:1;pointer-events:auto}.upload-progress{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;color:var(--color-text-muted);font-size:.88rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1.5rem;text-align:center;color:var(--color-text-muted)}.empty-state-icon{color:var(--color-border-input);margin-bottom:.75rem}.empty-state p{margin:.25rem 0}.nav-divider{width:1px;height:24px;background:var(--color-border-light);margin:0 .25rem;align-self:center}button:disabled{opacity:.55;cursor:not-allowed}button:disabled .spinner{border-top-color:currentColor}.btn-loading{display:inline-flex;align-items:center;gap:.4rem}.filter-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0}.filter-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .65rem;border:1px solid var(--color-border, #cdd8e5);border-radius:999px;background:var(--color-bg-card, #fff);color:var(--color-text-secondary, #4f5f75);font-size:.78rem;font-weight:500;cursor:pointer;transition:all .12s ease;white-space:nowrap}.filter-chip:hover{background:var(--color-bg-hover, #e8eef6);border-color:var(--color-primary, #2a5d93)}.filter-chip.active{background:var(--color-primary, #2a5d93);color:var(--color-text-on-primary, #fff);border-color:var(--color-primary, #2a5d93)}.filter-chip-clear{border-style:dashed;color:var(--color-text-muted, #718096)}.filter-chip-clear:hover{border-style:solid;color:var(--color-error, #c53030);border-color:var(--color-error, #c53030)}.admin-tab-content,.function-hub-card,.profile-page{animation:fade-slide-in .2s ease}@keyframes fade-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.function-hub-actions button{transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.function-hub-actions button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.function-hub-actions button:active{transform:translateY(0)}.status-chip{transition:background .2s ease,color .2s ease}.repairs-table tbody tr{transition:background .12s ease}.repairs-table tbody tr:hover{cursor:pointer}.empty-state{animation:fade-in .3s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.empty-state-title{font-size:1.05rem;font-weight:600;color:var(--color-text-secondary, #4f5f75);margin-bottom:.25rem}.empty-state-description{font-size:.88rem;color:var(--color-text-muted, #718096);max-width:320px;line-height:1.5}.detail-section{transition:opacity .2s ease}.detail-meta-chips{animation:fade-slide-in .2s ease}.photo-card{transition:transform .15s ease,box-shadow .15s ease}.photo-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.photo-card-image img{transition:opacity .2s ease}.bar-fill{transition:width .5s cubic-bezier(.4,0,.2,1)}.bar-row.clickable{transition:background .12s ease}.bar-row.clickable:hover{background:var(--color-bg-hover, #e8eef6);border-radius:4px}.metric-grid>div{transition:transform .15s ease,box-shadow .15s ease}.metric-grid>div:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}button:active:not(:disabled){transform:scale(.98)}.timeline-dot{transition:background .3s ease,border-color .3s ease,transform .3s ease}.timeline-step.done .timeline-dot{animation:timeline-pop .3s ease}@keyframes timeline-pop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.timeline-line{transition:background .5s ease}.onboarding-hint{position:relative;padding:.75rem 1rem;background:var(--color-primary-light, #eef3ff);border:1px solid var(--color-border, #cdd8e5);border-radius:8px;font-size:.88rem;color:var(--color-text-secondary, #4f5f75);margin-bottom:.75rem;display:flex;align-items:flex-start;gap:.5rem;animation:fade-slide-in .3s ease}.onboarding-hint-icon{flex-shrink:0;color:var(--color-primary, #2a5d93)}.onboarding-hint-dismiss{margin-left:auto;flex-shrink:0;border:none;background:transparent;color:var(--color-text-muted, #718096);cursor:pointer;padding:.15rem}.onboarding-hint-dismiss:hover{color:var(--color-text, #1a202c)}html{scroll-behavior:smooth}::selection{background:var(--color-primary, #2a5d93);color:var(--color-text-on-primary, #fff)}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;justify-content:space-around;align-items:center;background:var(--color-bg-card, #fff);border-top:1px solid var(--color-border, #cdd8e5);padding:.4rem 0 calc(.4rem + env(safe-area-inset-bottom,0px));box-shadow:0 -2px 8px #00000014}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.35rem .75rem;border:none;background:transparent;color:var(--color-text-muted, #718096);font-size:.68rem;font-weight:500;cursor:pointer;border-radius:8px;transition:color .12s ease,background .12s ease;min-width:56px}.mobile-nav-item:active{background:var(--color-bg-hover, #e8eef6)}.mobile-nav-item.active{color:var(--color-primary, #2a5d93);font-weight:600}.mobile-nav-item svg{width:22px;height:22px}.mobile-detail-actions{background:var(--color-bg-card, #fff);border-top:2px solid var(--color-primary, #2a5d93)}.mobile-detail-actions .mobile-nav-item.active{color:var(--color-success, #1f7a47);font-weight:700}@media(max-width:900px){.container{padding-bottom:calc(4rem + env(safe-area-inset-bottom,0px))}.repairs-table tbody td{padding:.7rem .5rem}.header-actions>button{padding:.65rem 1rem;font-size:.92rem}button,.btn-primary,.add-repair-submit{min-height:44px}input,select,textarea{font-size:16px;min-height:44px}.mobile-swipe-hint{text-align:center;padding:.5rem;color:var(--color-text-muted, #718096);font-size:.8rem}}
