@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Roboto+Mono:wght@400;500;700&family=Barlow+Condensed:wght@700&display=swap";.dashboard-layout{min-height:100vh;display:flex;flex-direction:column;background:#121212}.accent-bar{background:#03d8f3;color:#121212;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:36px;position:fixed;top:0;left:0;right:0;z-index:1001}.accent-brand{font-family:var(--font-mono);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:2px}.accent-right{display:flex;align-items:center;gap:.75rem}.role-badge{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;background:#12121226;padding:2px 8px}.logout-btn{background:none;border:1px solid rgba(18,18,18,.3);color:#121212;font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:3px 10px;cursor:pointer;transition:background .2s,border-color .2s}.logout-btn:hover{background:#12121226;border-color:#12121280}.main-nav-bar{background:#1e1e1ef2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:60px;position:fixed;top:36px;left:0;right:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.08)}.nav-bar-left{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.nav-logo{height:48px;width:auto;object-fit:contain}.nav-tagline{font-family:var(--font-mono);font-size:8px;color:var(--color-primary);text-transform:uppercase;letter-spacing:.3em;white-space:nowrap}.nav-links-desktop{display:flex;align-items:center;gap:0;height:100%}.nav-link{background:none;border:none;border-right:1px solid rgba(255,255,255,.05);color:#ffffffb3;font-family:var(--font-heading);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;padding:0 1rem;height:100%;display:flex;align-items:center;cursor:pointer;transition:color .2s,background .2s;position:relative;white-space:nowrap}.nav-link:after{content:"";position:absolute;bottom:0;left:.875rem;right:.875rem;height:2px;background:#03d8f3;transform:scaleX(0);transition:transform .2s}.nav-link:hover{color:#fff;background:#ffffff0d}.nav-link.active{color:#03d8f3;font-weight:700;background:#03d8f314}.nav-link.active:after{transform:scaleX(1)}.mobile-hamburger{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;line-height:1}.mobile-overlay{position:fixed;inset:96px 0 0;background:#00000080;z-index:998}.mobile-dropdown{position:fixed;top:96px;left:0;right:0;background:#1e1e1efa;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:999;display:flex;flex-direction:column;padding:.5rem 0;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .25s ease,transform .25s ease;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-dropdown.open{opacity:1;transform:translateY(0);pointer-events:auto}.mobile-dropdown .nav-link{height:auto;padding:.875rem 1.5rem;font-size:14px;font-weight:700;letter-spacing:2px;justify-content:flex-start;border-right:none}.mobile-dropdown .nav-link:after{display:none}.mobile-dropdown .nav-link.active{background:#03d8f31a}.app-main{flex:1;padding-top:96px}@media(max-width:1024px){.nav-links-desktop,.nav-tagline{display:none}.mobile-hamburger{display:flex;align-items:center;justify-content:center}}.stat-card{background:var(--color-surface);padding:1.5rem;transition:all .2s ease;border:1px solid var(--color-border);border-left:3px solid transparent}.stat-card:hover{background:var(--color-surface-hover)}.stat-card-clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.stat-card-clickable:hover{border-color:#ffffff26}.stat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.stat-title{font-size:.65rem;font-weight:700;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.15em;margin:0;font-family:var(--font-mono)}.stat-trend{font-size:.7rem;font-weight:700;padding:.15rem .5rem;background:#06d6a026;color:var(--color-success);font-family:var(--font-mono)}.stat-value{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;line-height:1;font-family:var(--font-heading)}.stat-subtitle{font-size:.7rem;color:var(--color-text-lighter);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.stat-card-primary{border-left-color:var(--color-primary)}.stat-card-primary .stat-value{color:var(--color-primary)}.stat-card-success{border-left-color:var(--color-success)}.stat-card-success .stat-value{color:var(--color-success)}.stat-card-warning{border-left-color:var(--color-warning)}.stat-card-warning .stat-value{color:var(--color-warning)}.stat-card-secondary{border-left-color:var(--color-primary)}.stat-card-secondary .stat-value{color:var(--color-primary)}@media(max-width:768px){.stat-card{padding:1.25rem}.stat-value{font-size:2rem}.stat-title{font-size:.6rem}}.jobs-map-container{background:#1e1e1e;border-radius:0;box-shadow:0 2px 8px #0000004d;margin-bottom:24px;overflow:hidden}.jobs-map-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.jobs-map-header h2{font-size:1.1rem;color:#fff;margin:0}.jobs-map-header-right{display:flex;align-items:center;gap:12px}.jobs-map-filters{display:flex;gap:4px}.map-filter-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#a1a1a1;padding:4px 12px;border-radius:3px;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s ease}.map-filter-btn:hover{background:#ffffff1a;color:#fff}.map-filter-btn.active{background:#03d8f31f;border-color:#03d8f3;color:#03d8f3;font-weight:600}.jobs-map-count{font-size:.82rem;color:#666;background:#ffffff0f;padding:3px 10px;border-radius:3px}.jobs-map-wrapper{height:400px;width:100%}.jobs-map-placeholder{height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#666;text-align:center;padding:20px}.jobs-map-placeholder-icon{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#444;background:#ffffff0f;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:12px}.jobs-map-placeholder p{margin:4px 0}.jobs-map-placeholder-hint{font-size:.8rem;color:#555}.jobs-map-infowindow{padding:4px;min-width:200px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.infowindow-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.infowindow-header strong{font-size:.95rem;color:#1a1a1a}.infowindow-urgent{background:#ef5350;color:#fff;font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:3px;letter-spacing:.5px}.infowindow-customer{font-weight:600;color:#333;font-size:.9rem;margin-bottom:2px}.infowindow-address{font-size:.8rem;color:#666;margin-bottom:8px;line-height:1.4}.infowindow-details{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.infowindow-status{display:inline-block;padding:2px 8px;border-radius:3px;font-size:.72rem;font-weight:700;color:#121212}.infowindow-system{font-size:.8rem;color:#555}.infowindow-view-btn{display:block;width:100%;padding:6px 0;background:#03d8f3;color:#121212;border:none;border-radius:3px;font-weight:600;font-size:.82rem;cursor:pointer;text-align:center}.infowindow-view-btn:hover{background:#02b8cf}.infowindow-retailer{font-size:.78rem;color:#888;margin-bottom:4px}.infowindow-days{font-size:.75rem;color:#999;margin-bottom:8px}.hover-popup{animation:infoFadeIn .15s ease-out}@keyframes infoFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.jobs-map-legend{display:flex;flex-wrap:wrap;gap:12px;padding:10px 20px 14px;border-top:1px solid rgba(255,255,255,.06)}.legend-item{display:flex;align-items:center;gap:5px}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-label{font-size:.75rem;color:#a1a1a1}.legend-count{font-size:.72rem;color:#666;font-weight:600}@media(max-width:768px){.jobs-map-wrapper{height:300px}.jobs-map-legend{gap:8px;padding:8px 14px 10px}.legend-label{font-size:.7rem}}.dashboard-page{animation:fadeIn .3s ease-out}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:40px}.section-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-bottom:40px}.card{background:var(--color-surface);border-radius:0;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden;animation:slideInUp .4s ease-out backwards;animation-delay:.3s}.card-header{padding:24px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.card-title{font-family:var(--font-heading);font-size:20px;font-weight:700;color:var(--color-text)}.card-actions{display:flex;gap:8px}.btn{padding:8px 16px;border-radius:0;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:transparent;color:var(--color-text-light);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-hover);color:var(--color-text)}.btn-ghost{background:transparent;color:var(--color-text-light)}.btn-ghost:hover{background:var(--color-surface-hover);color:var(--color-text)}.filters-bar{display:flex;gap:12px;padding:16px 24px;background:var(--color-bg);border-bottom:1px solid var(--color-border);overflow-x:auto}.filter-chip{padding:8px 16px;border-radius:0;background:var(--color-surface);border:1px solid var(--color-border);font-size:13px;font-weight:500;color:var(--color-text);cursor:pointer;transition:all .2s;white-space:nowrap}.filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background:var(--color-bg)}th{text-align:left;padding:12px 16px;font-size:12px;font-weight:700;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}td{padding:16px;border-bottom:1px solid var(--color-border);font-size:14px}tr:hover td{background:var(--color-surface-hover)}.job-id{font-family:var(--font-mono);font-weight:600;color:var(--color-secondary)}.customer-info{display:flex;align-items:center;gap:12px}.customer-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent-alt));display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:14px}.customer-details{display:flex;flex-direction:column}.customer-name{font-weight:600;color:var(--color-text)}.customer-address{font-size:12px;color:var(--color-text-light)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:0;font-size:12px;font-weight:600;text-transform:capitalize}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-in-progress{background:#f57f1726;color:#ffb74d}.priority-badge{padding:2px 8px;border-radius:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.priority-urgent{background:var(--color-danger);color:#fff}.priority-high{background:var(--color-warning);color:var(--color-text)}.priority-normal{background:var(--color-border);color:var(--color-text-light)}.actions-btn{width:32px;height:32px;border-radius:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-light);transition:all .2s}.actions-btn:hover{background:var(--color-surface-hover);color:var(--color-text)}.card-footer{padding:16px 24px;text-align:center;border-top:1px solid var(--color-border)}.activity-list{display:flex;flex-direction:column}.activity-item{padding:16px;border-bottom:1px solid var(--color-border);display:flex;gap:16px;transition:background .2s}.activity-item:hover{background:var(--color-surface-hover)}.activity-item:last-child{border-bottom:none}.activity-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.activity-icon.success{background:#05966933;color:var(--color-success)}.activity-icon.warning{background:#d9770633;color:var(--color-warning)}.activity-icon.info{background:#1e40af33;color:var(--color-secondary)}.activity-icon.danger{background:#c5303033;color:var(--color-danger)}.activity-content{flex:1}.activity-title{font-weight:600;color:var(--color-text);margin-bottom:4px;font-size:14px}.activity-description{font-size:13px;color:var(--color-text-light);margin-bottom:6px}.activity-time{font-size:12px;color:var(--color-text-lighter)}@media(max-width:1024px){.section-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.stats-grid{grid-template-columns:1fr}.dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem}.header-actions{width:100%;flex-direction:column}.header-actions button{width:100%}.section-header{flex-direction:column;align-items:flex-start}.filter-controls{width:100%;flex-direction:column;align-items:flex-start}.retailer-filter-dropdown{width:100%}.kanban-column{min-width:240px;max-width:240px;flex:1 0 240px}.kanban-column-body{max-height:50vh}}.dashboard{padding:2rem}.dashboard-section{margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.section-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#fff;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em}.filter-controls{display:flex;align-items:center;gap:.75rem}.filter-controls label{font-size:.65rem;font-weight:700;color:var(--color-text-light);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.retailer-filter-dropdown{padding:.5rem 1rem;border:1px solid var(--color-border);font-size:.85rem;font-weight:500;color:#fff;background:var(--color-surface);cursor:pointer;transition:all .2s;min-width:200px;font-family:var(--font-body)}.retailer-filter-dropdown:hover{border-color:#fff3}.retailer-filter-dropdown:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.jobs-table thead{background:#2a2a2a;border-bottom:2px solid rgba(255,255,255,.1)}.jobs-table th{text-align:left;padding:1rem;font-size:.875rem;font-weight:600;color:#a1a1a1;text-transform:uppercase;letter-spacing:.05em}.jobs-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}.jobs-table tbody tr:last-child td{border-bottom:none}.customer-cell{display:flex;align-items:center;gap:.75rem}.system-size{font-weight:600;color:#fff}.system-type{font-size:.875rem;color:#666}.refresh-button,.retry-button{background:none;color:var(--color-text-light);border:1px solid var(--color-border);padding:.5rem 1rem;cursor:pointer;font-weight:700;font-family:var(--font-heading);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;transition:all .2s}.refresh-button:hover,.retry-button:hover{background:#ffffff0d;color:#fff;border-color:#fff3}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-top:1rem}.dashboard-header h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:#fff;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em}.dashboard-header .subtitle{margin:0;color:#666;font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.error-message{color:#ef476f;font-size:.9rem}.job-row-clickable{transition:all .2s}.job-row-clickable:hover{background:#2a2a2a;transform:scale(1.01)}.header-actions{display:flex;gap:.75rem}.new-job-button{background:var(--color-primary);color:var(--color-bg);border:none;padding:.75rem 1.5rem;cursor:pointer;font-size:.8rem;font-weight:700;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.1em;transition:all .2s}.new-job-button:hover{filter:brightness(1.1)}.kanban-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:1rem;min-height:400px}.kanban-board::-webkit-scrollbar{height:8px}.kanban-board::-webkit-scrollbar-track{background:#1a1a1a;border-radius:0}.kanban-board::-webkit-scrollbar-thumb{background:#333;border-radius:0}.kanban-board::-webkit-scrollbar-thumb:hover{background:#444}.kanban-column{min-width:260px;max-width:280px;flex:1 0 260px;background:#1a1a1a;border-radius:0;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.06)}.kanban-column-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:3px solid;background:var(--color-surface);flex-shrink:0}.kanban-column-icon{font-size:1rem}.kanban-column-title{font-size:.82rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.04em;flex:1;font-family:var(--font-heading)}.kanban-column-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 6px;border-radius:0;font-size:.75rem;font-weight:700;color:#121212}.kanban-column-body{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;max-height:65vh}.kanban-column-body::-webkit-scrollbar{width:4px}.kanban-column-body::-webkit-scrollbar-track{background:transparent}.kanban-column-body::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.kanban-empty{text-align:center;padding:2rem 1rem;color:#444;font-size:.85rem;font-style:italic}.kanban-card{background:#1e1e1e;border:1px solid rgba(255,255,255,.08);border-radius:0;padding:12px;cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.kanban-card:hover{border-color:#03d8f366;background:#232323;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.kanban-card-urgent{border-left:3px solid #EF4444}.kanban-card-urgent-strip{position:absolute;top:0;right:0;width:0;height:0;border-top:20px solid #EF4444;border-left:20px solid transparent}.kanban-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.kanban-card-id{font-family:var(--font-mono);font-weight:700;font-size:.85rem;color:#03d8f3}.kanban-urgent-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#ef4444;color:#fff;border-radius:50%;font-size:.7rem;font-weight:700;animation:pulse-urgent 2s infinite}@keyframes pulse-urgent{0%,to{transform:scale(1);box-shadow:0 0 #ef444466}50%{transform:scale(1.05);box-shadow:0 0 0 6px #ef444400}}.kanban-card-customer{display:flex;align-items:center;gap:8px;margin-bottom:8px}.kanban-card-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#03d8f3,#0294a6);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:.65rem;flex-shrink:0}.kanban-card-customer span{font-size:.85rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-card-details{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.kanban-card-location{font-size:.78rem;color:#666}.kanban-card-system{font-size:.78rem;color:#a1a1a1;background:#2a2a2a;display:inline-block;padding:2px 6px;border-radius:0;width:fit-content}.kanban-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}.kanban-card-retailer{font-size:.72rem;color:#666;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-card-days{font-size:.72rem;font-weight:600;color:#a1a1a1;background:#2a2a2a;padding:2px 6px;border-radius:0}.urgent-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#c53030;color:#fff;border-radius:50%;font-weight:700;font-size:1rem}.import-error-toast{position:fixed;top:20px;right:20px;z-index:9998;background:#c5303026;border:1px solid rgba(197,48,48,.4);color:#ef9a9a;padding:12px 20px;border-radius:0;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #0006;animation:importSlideIn .3s ease}.import-error-toast button{background:none;border:1px solid rgba(197,48,48,.4);color:#ef9a9a;padding:4px 10px;border-radius:0;cursor:pointer;font-size:.8rem;white-space:nowrap}@keyframes importSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.import-modal-close:hover{background:#333}.import-modal-error{margin:16px 24px;padding:12px 16px;background:#c5303026;border:1px solid rgba(197,48,48,.4);border-radius:0;color:#ef9a9a}.import-summary-approved{background:#05966933;color:#81c784;padding:3px 10px;border-radius:0;font-size:.85rem;font-weight:600}.import-summary-denied{background:#c5303033;color:#ef9a9a;padding:3px 10px;border-radius:0;font-size:.85rem;font-weight:600}.import-summary-duplicates{background:#d9770633;color:#ffd54f;padding:3px 10px;border-radius:0;font-size:.85rem;font-weight:600}.import-bulk-btn.approve{background:#05966933;color:#81c784}.import-bulk-btn.approve:hover{background:#05966959}.import-bulk-btn.deny{background:#c5303033;color:#ef9a9a}.import-bulk-btn.deny:hover{background:#c5303059}.import-job-card.denied{opacity:.5;background:#c530301a;border-color:#c530304d}.import-job-type{background:#7b1fa233;color:#ce93d8;padding:1px 8px;border-radius:0;font-weight:600;font-size:.78rem}.import-action-btn.approve:not(.active):hover{background:#05966933;border-color:#05966966;color:#81c784}.import-action-btn.deny:not(.active):hover{background:#c5303026;border-color:#c5303066;color:#ef9a9a}.import-duplicates-section{border-top:2px solid rgba(217,119,6,.3);background:#d9770614}.import-duplicates-header h3{margin:0 0 4px;font-size:1rem;color:#ffd54f}.import-duplicates-header p{margin:0;font-size:.85rem;color:#ffb74d}.import-duplicate-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#2a2a2a;border:1px solid rgba(217,119,6,.3);border-radius:0}.import-duplicate-badge{background:#d9770633;color:#ffd54f;padding:1px 8px;border-radius:0;font-size:.75rem;font-weight:700;text-transform:uppercase}.import-duplicate-reason-text{font-size:.8rem;color:#ffb74d}.import-modal-footer{display:flex;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.import-retailer-select{display:flex;align-items:center;gap:8px;margin-right:auto}.import-retailer-select label{font-size:.85rem;font-weight:600;color:#a1a1a1;white-space:nowrap}.import-retailer-select select{padding:8px 12px;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:.88rem;font-weight:500;color:#fff;background:#1e1e1e;cursor:pointer;min-width:200px;transition:all .2s}.import-retailer-select select:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.import-cancel-btn:hover{background:#333}.import-result-success h4{color:#81c784;margin:0 0 10px;font-size:.95rem}.import-result-errors h4{color:#ef9a9a;margin:0 0 10px;font-size:.95rem}.import-error-row{background:#c530301a}@media(max-width:768px){.import-modal{max-width:100%;max-height:100vh;border-radius:0}.import-modal-backdrop{padding:0}.import-job-card{flex-direction:column;align-items:flex-start}.import-job-actions{width:100%}.import-action-btn{flex:1;text-align:center}.import-job-edit-grid{grid-template-columns:1fr}.import-modal-summary{flex-direction:column;align-items:flex-start}.import-bulk-actions{margin-left:0;width:100%}.import-bulk-btn{flex:1;text-align:center}.import-modal-footer{flex-direction:column;align-items:stretch}.import-retailer-select{margin-right:0;flex-direction:column;align-items:stretch}.import-retailer-select select{width:100%;min-width:unset}}.jobs-page{padding:2rem;max-width:1400px;margin:0 auto}.jobs-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-left{display:flex;flex-direction:column;gap:.5rem}.jobs-header h1{margin:0;font-size:2rem;color:#fff}.jobs-header .subtitle{margin:0;color:#666;font-size:.95rem}.back-button{background:none;border:none;color:#03d8f3;cursor:pointer;font-size:.95rem;padding:.5rem 0;margin-bottom:.5rem}.back-button:hover{text-decoration:underline}.import-button{background:#1e1e1e;color:#03d8f3;border:1px solid #03D8F3;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s}.import-button:hover{background:#03d8f31a}.new-job-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:600;transition:background .2s}.new-job-button:hover{background:#02b8cf}.jobs-filters{display:flex;gap:1rem;margin-bottom:1.5rem}.search-input{flex:1;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff}.search-input:focus{outline:none;border-color:#03d8f3}.status-filter{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff;cursor:pointer;min-width:200px}.status-filter:focus{outline:none;border-color:#03d8f3}.retailer-filter{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff;cursor:pointer;min-width:200px}.retailer-filter:focus{outline:none;border-color:#03d8f3}.system-type-filter{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff;cursor:pointer;min-width:180px}.system-type-filter:focus{outline:none;border-color:#03d8f3}.location-filter{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff;cursor:pointer;min-width:150px}.location-filter:focus{outline:none;border-color:#03d8f3}.jobs-table-container{background:#1e1e1e;border-radius:0;box-shadow:0 2px 8px #0000004d;overflow:hidden}.jobs-table thead{background:#2a2a2a}.jobs-table th{padding:1rem;text-align:left;font-weight:600;color:#a1a1a1;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(255,255,255,.1)}.jobs-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.95rem;color:#fff}.jobs-table tbody tr{transition:background .2s}.jobs-table tbody tr.clickable-row{cursor:pointer}.jobs-table tbody tr.clickable-row:hover{background:#2a2a2a}.job-number{font-weight:600;color:#03d8f3;display:flex;align-items:center;gap:.5rem}.urgent-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#dc3545;color:#fff;border-radius:50%;font-size:.75rem;font-weight:700;flex-shrink:0}.urgent-row{background:#c530301a!important}.urgent-row:hover{background:#c5303033!important}.urgent-section{background:#c5303026;border:2px solid #FC8181;border-radius:0;padding:1.5rem;margin-bottom:1.5rem}.urgent-section-header{margin-bottom:1rem}.urgent-section-header h2{margin:0;color:#fc8181;font-size:1.25rem;display:flex;align-items:center;gap:.5rem}.urgent-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#c53030;color:#fff;border-radius:50%;font-weight:700;font-size:1rem;animation:pulse-urgent 2s infinite}@keyframes pulse-urgent{0%,to{transform:scale(1);box-shadow:0 0 #c5303066}50%{transform:scale(1.05);box-shadow:0 0 0 8px #c5303000}}.urgent-table{background:#1e1e1e}.urgent-table thead{background:#c530304d}.urgent-table th{color:#fc8181}.urgent-section .urgent-row{background:#c530301a}.urgent-section .urgent-row:hover{background:#c5303033!important}.urgent-section .urgent-row td{border-bottom-color:#c530304d}.no-data{text-align:center;padding:3rem;color:#666;font-style:italic}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top:4px solid #03D8F3;border-radius:50%;animation:spin 1s linear infinite}.retry-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:600;margin-top:1rem}.status-badge{padding:.35rem .75rem;border-radius:0;font-size:.8rem;font-weight:600;white-space:nowrap;display:inline-block}.status-intake{background:#1976d226;color:#64b5f6}.status-review{background:#f57c0026;color:#ffb74d}.status-permitting{background:#c2185b26;color:#f48fb1}.status-ordered{background:#7b1fa226;color:#ce93d8}.status-ready{background:#388e3c26;color:#81c784}.status-scheduled{background:#00796b26;color:#4db6ac}.status-progress{background:#f57f1726;color:#ffb74d}.status-inspection{background:#512da826;color:#b39ddb}.status-corrections{background:#c6282826;color:#ef9a9a}.status-pto{background:#0277bd26;color:#4fc3f7}.status-invoice{background:#558b2f26;color:#aed581}.status-invoiced{background:#33691e26;color:#a5d6a7}.status-completed{background:#2e7d3226;color:#81c784}.status-cancelled{background:#61616126;color:#bdbdbd}.status-hold{background:#f9a82526;color:#ffd54f}.status-default{background:#75757526;color:#bdbdbd}@media(max-width:768px){.jobs-page{padding:1rem}.jobs-header{flex-direction:column;gap:1rem}.jobs-filters{flex-direction:column}.jobs-table-container{overflow-x:auto}.jobs-table{min-width:800px}}.job-details{padding:2rem;max-width:1400px;margin:0 auto}.job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.header-left h1{margin:0;font-size:2rem;color:#fff;font-family:var(--font-heading)}.header-badges{display:flex;align-items:center;gap:.75rem}.urgent-toggle-button{background:#2a2a2a;color:#666;border:1px solid rgba(255,255,255,.1);padding:.35rem .75rem;border-radius:0;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s}.urgent-toggle-button:hover{background:#dc354526;border-color:#dc3545;color:#dc3545}.urgent-toggle-button.is-urgent{background:#dc3545;color:#121212;border-color:#dc3545}.urgent-toggle-button.is-urgent:hover{background:#c82333}.urgent-toggle-button:disabled{opacity:.6;cursor:not-allowed}.header-right{display:flex;gap:.75rem}.edit-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;transition:all .2s}.edit-button:hover{background:#02b8cf;transform:translateY(-2px)}.save-button{background:#06d6a0;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;transition:all .2s}.save-button:hover:not(:disabled){background:#05c090;transform:translateY(-2px)}.save-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{background:#2a2a2a;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;transition:all .2s}.delete-job-button{background:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;transition:all .2s}.delete-job-button:hover:not(:disabled){background:#c82333;transform:translateY(-2px)}.delete-job-button:disabled{opacity:.6;cursor:not-allowed}.status-actions{background:#03d8f31a;border:2px solid #03D8F3;border-radius:0;padding:1.5rem;margin-bottom:2rem}.status-actions h3{margin:0 0 1rem;color:#fff;font-size:1.1rem}.status-dropdown-container{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.status-dropdown{flex:1;min-width:250px;padding:.75rem 1rem;border:2px solid #03D8F3;border-radius:0;font-size:1rem;font-weight:500;color:#fff;background:#1e1e1e;cursor:pointer;transition:all .2s}.status-dropdown:focus{outline:none;border-color:#02b8cf;box-shadow:0 0 0 3px #03d8f326}.status-dropdown:disabled{opacity:.5;cursor:not-allowed}.status-update-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;white-space:nowrap}.status-update-button:hover:not(:disabled){background:#02b8cf;transform:translateY(-2px);box-shadow:0 4px 12px #03d8f34d}.status-update-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.job-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.job-column{display:flex;flex-direction:column;gap:1.5rem}.detail-section{background:#1e1e1e;border-radius:0;padding:1.5rem;box-shadow:0 2px 8px #0000004d}.detail-section h2{margin:0 0 1.5rem;font-size:1.3rem;color:#fff;display:flex;align-items:center;gap:.5rem;border-bottom:2px solid rgba(255,255,255,.1);padding-bottom:.75rem}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.detail-item label{font-size:.85rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.detail-item .value{font-size:1rem;color:#fff;font-weight:500}.edit-input{padding:.5rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;transition:all .2s;background:#1e1e1e;color:#fff}.edit-input:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}select.edit-input{cursor:pointer}.history-timeline{display:flex;flex-direction:column;gap:1rem;position:relative;padding-left:2rem}.history-timeline:before{content:"";position:absolute;left:6px;top:10px;bottom:10px;width:2px;background:#ffffff1a}.history-item{position:relative;display:flex;gap:1rem}.history-dot{position:absolute;left:-1.875rem;top:6px;width:14px;height:14px;border-radius:50%;background:#03d8f3;border:3px solid #1E1E1E;box-shadow:0 0 0 2px #ffffff1a;z-index:1}.history-content{flex:1;background:#2a2a2a;padding:.75rem 1rem;border-radius:0}.history-status{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;flex-wrap:wrap}.old-status{color:#666;font-size:.9rem}.arrow{color:#666;font-weight:700}.new-status{color:#03d8f3;font-weight:600;font-size:.95rem}.history-date{font-size:.8rem;color:#a1a1a1;margin-bottom:.5rem}.history-notes{font-size:.9rem;color:#a1a1a1;font-style:italic;margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1)}.notes-textarea{width:100%;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;font-family:inherit;resize:vertical;transition:all .2s;background:#1e1e1e;color:#fff}.notes-display{padding:1rem;background:#2a2a2a;border-radius:0;min-height:100px;color:#a1a1a1;white-space:pre-wrap}.no-data{color:#666;font-style:italic;text-align:center;padding:2rem}.status-badge{padding:.4rem .9rem;border-radius:0;font-size:.85rem;font-weight:600;text-transform:capitalize}.status-intake,.status-plans_review{background:#03d8f326;color:#03d8f3}.status-permitting{background:#ff980026;color:#ff9800}.status-equipment_ordered{background:#4caf5026;color:#4caf50}.status-ready_to_schedule{background:#2196f326;color:#2196f3}.status-scheduled{background:#00bcd426;color:#00bcd4}.status-in_progress{background:#fcee0c26;color:#fcee0c}.status-inspection_pending{background:#9c27b026;color:#ce93d8}.status-corrections{background:#f4433626;color:#f44336}.status-pto_pending{background:#ff980026;color:#ff9800}.status-completed{background:#4caf5026;color:#4caf50}.status-cancelled{background:#9e9e9e26;color:#9e9e9e}.status-on_hold{background:#f57f1726;color:#f57f17}@media(max-width:1024px){.job-content,.detail-grid{grid-template-columns:1fr}}@media(max-width:768px){.job-details{padding:1rem}.job-header{flex-direction:column;gap:1rem}.header-left h1{font-size:1.5rem}.status-dropdown-container{flex-direction:column;align-items:stretch}.status-dropdown,.status-update-button{width:100%}}.document-upload{background:#2a2a2a;padding:1.5rem;border-radius:0;margin-bottom:1.5rem}.document-upload h3{margin:0 0 1rem;font-size:1rem;color:#a1a1a1}.upload-form{display:flex;flex-direction:column;gap:1rem}.doc-drop-zone{border:2px dashed rgba(255,255,255,.2);border-radius:0;padding:2.5rem 2rem;text-align:center;background:#1e1e1e;transition:all .2s;cursor:pointer}.doc-drop-zone.active{border-color:#03d8f3;background:#03d8f31a}.doc-drop-zone.has-file{border-color:#06d6a0;background:#06d6a01a;border-style:solid;padding:1.5rem 2rem}.doc-drop-icon{font-size:2.5rem;margin-bottom:.75rem}.doc-drop-zone p{margin:.5rem 0;color:#a1a1a1;font-size:.95rem}.doc-drop-zone>span{color:#666;font-size:.85rem}.doc-browse-btn{display:inline-block;background:#03d8f3;color:#121212;padding:.6rem 1.25rem;border-radius:0;font-weight:500;cursor:pointer;margin-top:.5rem;transition:background .2s;font-size:.9rem}.doc-browse-btn:hover{background:#02b8cf}.doc-file-info{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.doc-file-name{font-weight:600;color:#fff;word-break:break-word}.doc-file-size{color:#666;font-size:.9rem}.doc-remove-btn{background:none;border:1px solid #EF4444;color:#ef4444;padding:.35rem .75rem;border-radius:0;cursor:pointer;font-size:.85rem;transition:all .2s}.doc-remove-btn:hover{background:#ef444426}.description-input{padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:.9rem;font-family:inherit;background:#1e1e1e;color:#fff}.upload-button{background:#06d6a0;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;align-self:flex-start}.upload-button:hover:not(:disabled){background:#05b383;transform:translateY(-2px)}.upload-button:disabled{opacity:.5;cursor:not-allowed}.documents-list{display:flex;flex-direction:column;gap:1rem}.document-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#2a2a2a;border-radius:0;border:1px solid rgba(255,255,255,.1);transition:all .2s}.document-item:hover{background:#333;box-shadow:0 2px 8px #0000004d}.document-actions{display:flex;gap:.5rem;flex-shrink:0}.download-button,.delete-doc-button{padding:.5rem 1rem;border:none;border-radius:0;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.download-button{background:#03d8f3;color:#121212}.download-button:hover{background:#02b8cf;transform:translateY(-2px)}.delete-doc-button{background:#dc354526;color:#dc3545}.delete-doc-button:hover{background:#dc354540;transform:translateY(-2px)}@media(max-width:768px){.document-item{flex-direction:column;align-items:flex-start}.document-actions{width:100%}.download-button,.delete-doc-button{flex:1}}.not-scheduled{color:#666;font-style:italic}.panel-install-checkbox{grid-column:1 / -1;background:#2a2a2a;padding:1rem;border-radius:0;border:1px solid rgba(255,255,255,.1)}.checkbox-wrapper{display:flex;align-items:center;gap:1rem;margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#10B981}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.checkbox-text{font-size:1rem;color:#a1a1a1}.checkbox-text.completed{color:#059669;font-weight:600}.completed-badge{background:#06d6a026;color:#06d6a0;font-size:.8rem;font-weight:600;padding:.25rem .75rem;border-radius:0}.checkbox-help{font-size:.85rem;color:#666;margin:.75rem 0 0;line-height:1.4}.autocomplete-wrapper{position:relative;width:100%}.autocomplete-input{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;transition:all .2s;box-sizing:border-box;background:#1e1e1e;color:#fff}.autocomplete-input:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.autocomplete-input:disabled{background:#2a2a2a;cursor:not-allowed;color:#666}.autocomplete-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:0;box-shadow:0 4px 12px #0006;z-index:1000;max-height:320px;overflow:hidden;display:flex;flex-direction:column}.autocomplete-dropdown-header{padding:.5rem .75rem;background:#2a2a2a;border-bottom:1px solid rgba(255,255,255,.1);font-size:.8rem;color:#666;font-weight:600}.autocomplete-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.autocomplete-item{padding:.75rem 1rem;cursor:pointer;transition:background .15s;font-size:.95rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover,.autocomplete-item.highlighted{background:#03d8f326;color:#03d8f3}.autocomplete-more{padding:.75rem 1rem;font-size:.85rem;color:#666;font-style:italic;text-align:center;background:#2a2a2a;border-top:1px solid rgba(255,255,255,.1)}.autocomplete-no-results{padding:1rem;text-align:center;color:#a1a1a1;font-style:italic;font-size:.9rem}.autocomplete-list::-webkit-scrollbar{width:8px}.autocomplete-list::-webkit-scrollbar-track{background:#2a2a2a;border-radius:0}.autocomplete-list::-webkit-scrollbar-thumb{background:#555;border-radius:0}.autocomplete-list::-webkit-scrollbar-thumb:hover{background:#777}@media(max-width:768px){.autocomplete-dropdown{max-height:240px}.autocomplete-item{padding:.6rem .75rem;font-size:.9rem}.autocomplete-dropdown-header{font-size:.75rem}}.address-input{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;transition:all .2s;box-sizing:border-box;background:#1e1e1e;color:#fff}.address-input:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.address-input:disabled{background:#2a2a2a;cursor:not-allowed;color:#666}.address-autocomplete-error{position:relative}.address-autocomplete-error .error-text{display:block;color:#dc3545;font-size:.75rem;margin-top:.25rem;font-style:italic}.pac-container{border-radius:0;box-shadow:0 4px 12px #0006;margin-top:4px;font-family:inherit;z-index:9999;background:#1e1e1e}.pac-item{padding:.75rem 1rem;cursor:pointer;font-size:.95rem;border-top:1px solid rgba(255,255,255,.05);color:#a1a1a1}.pac-item:first-child{border-top:none}.pac-item:hover,.pac-item-selected{background:#2a2a2a}.pac-icon{margin-right:.5rem}.pac-item-query{font-weight:600;color:#fff}.pac-matched{font-weight:700;color:#03d8f3}.add-job{padding:2rem;max-width:1200px;margin:0 auto}.add-job-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.add-job-header h1{margin:0;font-size:2rem;color:#fff;font-family:var(--font-heading)}.error-banner{background:#ffc10726;border:2px solid #FFC107;border-radius:0;padding:1.5rem;margin-bottom:2rem}.error-banner h3{color:#fcee0c;margin:0 0 .75rem}.error-banner pre{color:#fcee0c;white-space:pre-wrap;font-family:inherit;margin:0}.add-job-form{display:flex;flex-direction:column;gap:2rem}.form-section{background:#1e1e1e;border-radius:0;padding:2rem;box-shadow:0 2px 8px #0000004d}.form-section h2{margin:0 0 1.5rem;font-size:1.4rem;color:#fff;display:flex;align-items:center;gap:.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.1)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:.9rem;font-weight:600;color:#a1a1a1}.form-field input,.form-field select,.form-field textarea{padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;transition:all .2s;background:#1e1e1e;color:#fff}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.form-field textarea{resize:vertical;min-height:80px}.customer-toggle{margin-bottom:1.5rem;padding:1rem;background:#2a2a2a;border-radius:0}.toggle-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:500;color:#fff}.toggle-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:1rem;background:#2a2a2a;border-radius:0;transition:all .2s}.checkbox-label:hover{background:#333}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label span{font-size:1rem;font-weight:500;color:#fff}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:2px solid rgba(255,255,255,.1);margin-top:1rem}.submit-button{background:linear-gradient(135deg,#06d6a0,#05b383);color:#fff;border:none;padding:1rem 2.5rem;border-radius:0;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #06d6a04d}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #06d6a066}.cancel-button{background:#2a2a2a;color:#fff;border:none;padding:1rem 2rem;border-radius:0;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button:hover:not(:disabled){background:#333}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.subsection-title{font-size:1.1rem;color:#a1a1a1;margin:.5rem 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.disabled-input{background:#2a2a2a;color:#666;cursor:not-allowed}.mode-toggle-section{background:#03d8f31a;border:2px solid #03D8F3;border-radius:0;padding:1rem 1.5rem;margin-bottom:2rem}.mode-toggle{display:flex;align-items:center;gap:1rem;cursor:pointer}.mode-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.toggle-text{font-size:1rem;font-weight:500;color:#03d8f3}.import-section{display:flex;flex-direction:column;gap:2rem}.section-desc{color:#a1a1a1;font-size:.9rem;margin:0 0 1rem}.retailer-select{width:100%;max-width:400px;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;background:#1e1e1e;color:#fff}.retailer-select:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.drop-zone{border:2px dashed rgba(255,255,255,.2);border-radius:0;padding:3rem 2rem;text-align:center;background:#1e1e1e;transition:all .2s}.drop-zone.active{border-color:#03d8f3;background:#03d8f31a}.drop-zone.has-file{border-color:#06d6a0;background:#06d6a01a;border-style:solid}.drop-icon{font-size:3rem;margin-bottom:1rem}.drop-zone p{margin:.5rem 0;color:#a1a1a1}.drop-zone span{color:#666;font-size:.9rem}.browse-btn{display:inline-block;background:#03d8f3;color:#121212;padding:.75rem 1.5rem;border-radius:0;font-weight:500;cursor:pointer;margin-top:.5rem;transition:background .2s}.browse-btn:hover{background:#02b8cf}.file-hint{font-size:.85rem;color:#666;margin-top:1rem}.file-info{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.file-name{font-weight:600;color:#fff}.file-size{color:#a1a1a1}.remove-btn{background:none;border:1px solid #EF4444;color:#ef4444;padding:.4rem .8rem;border-radius:0;cursor:pointer;font-size:.9rem}.remove-btn:hover{background:#ef444426}.loading-indicator{text-align:center;padding:2rem}.loading-indicator .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#03d8f3;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.preview-section{background:#1e1e1e}.preview-card{background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:0;margin-bottom:1rem;overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#2a2a2a;border-bottom:1px solid rgba(255,255,255,.1)}.preview-header h3{margin:0;font-size:1rem;color:#fff}.badge{background:#03d8f326;color:#03d8f3;padding:.25rem .75rem;border-radius:0;font-size:.85rem;font-weight:500}.preview-table-wrapper{overflow-x:auto}.preview-table{width:100%;border-collapse:collapse;font-size:.9rem}.preview-table th,.preview-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}.preview-table th{background:#2a2a2a;font-weight:600;color:#a1a1a1}.preview-note{padding:.75rem 1rem;font-size:.85rem;color:#a1a1a1;font-style:italic;background:#2a2a2a;margin:0}.import-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.import-result-card{background:#1e1e1e;border-radius:0;padding:2rem;box-shadow:0 2px 8px #0000004d}.result-header{text-align:center;margin-bottom:2rem}.result-header h2{margin:0;color:#06d6a0}.result-summary{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.summary-item{text-align:center;padding:1.5rem 2rem;border-radius:0;min-width:120px}.summary-item.success{background:#06d6a026}.summary-item.error{background:#dc354526}.summary-item .count{display:block;font-size:2.5rem;font-weight:700;color:#fff}.summary-item.success .count{color:#06d6a0}.summary-item.error .count{color:#dc3545}.summary-item .label{font-size:.9rem;color:#a1a1a1}.result-table-section{margin-bottom:1.5rem}.result-table-section h3{margin:0 0 1rem;font-size:1.1rem;color:#fff}.result-table-wrapper{border:1px solid rgba(255,255,255,.1);border-radius:0;overflow:hidden}.result-table{width:100%;border-collapse:collapse;font-size:.9rem}.result-table th,.result-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}.result-table th{background:#2a2a2a;font-weight:600;color:#a1a1a1}.result-table tr:last-child td{border-bottom:none}.error-text{color:#dc3545;font-size:.85rem}.view-btn{background:#03d8f3;color:#121212;border:none;padding:.4rem .8rem;border-radius:0;cursor:pointer;font-size:.85rem}.result-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.secondary-btn{background:#2a2a2a;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;font-weight:500;cursor:pointer}.secondary-btn:hover{background:#333}.primary-btn{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;font-weight:500;cursor:pointer}.primary-btn:hover{background:#02b8cf}@media(max-width:768px){.add-job{padding:1rem}.form-grid{grid-template-columns:1fr}.form-section{padding:1.5rem}.form-actions,.import-actions,.result-actions{flex-direction:column-reverse}.submit-button,.cancel-button,.primary-btn,.secondary-btn{width:100%}.result-summary{flex-direction:column;gap:1rem}.summary-item{min-width:auto}}.scheduling{padding:2rem;max-width:1600px;margin:0 auto}.scheduling-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.scheduling-header h1{margin:0;font-size:2rem;color:#fff;font-family:var(--font-heading)}.back-button{background:#2a2a2a;color:#fff;border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.9rem;transition:all .2s}.urgent-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#dc3545;color:#fff;border-radius:50%;font-size:.85rem;font-weight:700;margin-right:.5rem;animation:pulse-urgent 2s infinite}@keyframes pulse-urgent{0%,to{transform:scale(1);box-shadow:0 0 #dc354566}50%{transform:scale(1.05);box-shadow:0 0 0 6px #dc354500}}.job-number{font-weight:700;color:#03d8f3;font-size:1.1rem}.crew-name{font-weight:500;color:#fff}.crew-role{font-size:.85rem;color:#a1a1a1;background:#2a2a2a;padding:.2rem .6rem;border-radius:0}.crew-role.lead{background:#fcee0c26;color:#fcee0c}.no-crew,.loading-crew{color:#666;font-style:italic;text-align:center;padding:.5rem;margin:0}.modal-content{background:#1e1e1e;border-radius:0;width:90%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.1)}.schedule-modal .modal-body{overflow-y:auto}.modal-header h2{margin:0;color:#fff;font-family:var(--font-heading)}.job-info-box{background:#2a2a2a;padding:1.5rem;border-radius:0;margin-bottom:1.5rem;border-left:4px solid #03D8F3}.job-info-box h3{margin:0 0 1rem;color:#03d8f3;font-family:var(--font-heading)}.job-info-box p{margin:.5rem 0;color:#a1a1a1}.form-field{margin-bottom:1.5rem}.form-field label{display:block;font-size:.9rem;font-weight:600;color:#a1a1a1;margin-bottom:.5rem}.form-field input,.form-field select{width:100%;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;transition:all .2s;background:#2a2a2a;color:#fff}.crew-selection{margin-top:1.5rem}.crew-selection h4{margin:0 0 .5rem;color:#fff;font-family:var(--font-heading)}.crew-hint{font-size:.85rem;color:#666;margin:0 0 1rem}.crew-section{margin-bottom:1.5rem}.crew-section h5{margin:0 0 .75rem;color:#a1a1a1;font-size:.95rem}.crew-members-list{display:flex;flex-direction:column;gap:.5rem;max-height:150px;overflow-y:auto;padding:.5rem;background:#2a2a2a;border-radius:0}.crew-member-option{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:0;cursor:pointer;transition:all .2s}.crew-member-option:hover{background:#333}.crew-member-option input[type=checkbox]{width:18px;height:18px;cursor:pointer}.crew-member-option span{flex:1;font-size:.95rem;color:#fff}.member-role{font-size:.85rem!important;color:#666!important;flex:none!important}.no-members{color:#666;font-style:italic;text-align:center;padding:1rem}.crew-summary{background:#03d8f31a;padding:.75rem 1rem;border-radius:0;color:#03d8f3;margin-top:1rem;border:1px solid rgba(3,216,243,.2)}.cancel-button{background:#2a2a2a;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #06d6a066}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner{width:40px;height:40px;border:4px solid #2A2A2A;border-top-color:#03d8f3;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:768px){.scheduling{padding:1rem}.modal-content{width:95%}.modal-header,.modal-body,.modal-footer{padding:1rem}.panel-install-booking-card{flex-direction:column;align-items:flex-start}.booking-card-actions{width:100%}.panel-date-input{flex:1}}.edit-crew-modal .modal-body{overflow-y:auto}.current-crew-section{margin-bottom:1.5rem}.current-crew-section h4{margin:0 0 1rem;color:#a1a1a1;font-family:var(--font-heading)}.edit-crew-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.edit-crew-member{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#2a2a2a;border-radius:0;border:1px solid rgba(255,255,255,.1)}.crew-info{display:flex;align-items:center;gap:1rem}.remove-crew-button{background:#c5303033;color:#fc8181;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.remove-crew-button:hover{background:#fc81814d;color:#fff}.add-member-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.add-member-button{background:#48bb78;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;width:100%}.add-member-button:hover{background:#38a169}.add-member-form h4{margin:0 0 1rem;color:#a1a1a1;font-family:var(--font-heading)}.available-employees{display:flex;flex-direction:column;gap:.5rem;max-height:250px;overflow-y:auto;margin-bottom:1rem}.employee-option{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#2a2a2a;border:2px solid rgba(255,255,255,.1);border-radius:0;cursor:pointer;transition:all .2s;text-align:left}.employee-option:hover{border-color:#48bb78;background:#48bb781a}.emp-name{font-weight:500;color:#fff}.emp-role{font-size:.85rem;color:#a1a1a1;background:#333;padding:.2rem .6rem;border-radius:0}.no-available{text-align:center;color:#666;padding:1rem;font-style:italic}.cancel-add-button{background:#2a2a2a;color:#a1a1a1;border:none;padding:.6rem 1.25rem;border-radius:0;cursor:pointer;font-size:.95rem;transition:all .2s}.cancel-add-button:hover{background:#333}.done-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 2rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.done-button:hover{background:#02b8cf}.edit-date-section{margin-bottom:1.5rem;padding:1rem;background:#48bb781a;border-radius:0;border:1px solid rgba(72,187,120,.3)}.edit-date-section h4{margin:0 0 .75rem;color:#48bb78}.date-edit-row{display:flex;gap:.75rem;align-items:center}.date-input{flex:1;padding:.6rem .75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;background:#2a2a2a;color:#fff}.date-input:focus{outline:none;border-color:#48bb78}.update-date-button{background:#48bb78;color:#fff;border:none;padding:.6rem 1.25rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s;white-space:nowrap}.update-date-button:hover:not(:disabled){background:#38a169}.update-date-button:disabled{opacity:.5;cursor:not-allowed}.scheduling-tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:2px solid rgba(255,255,255,.1)}.scheduling-tab{padding:1rem 2rem;background:transparent;border:none;cursor:pointer;font-size:1rem;font-weight:600;color:#666;position:relative;transition:color .2s;display:flex;align-items:center;gap:.5rem}.scheduling-tab:hover{color:#fff}.scheduling-tab.active{color:#03d8f3}.scheduling-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:#03d8f3;border-radius:2px 2px 0 0}.sched-kanban-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:1rem;margin-bottom:1.5rem;min-height:300px}.sched-kanban-board::-webkit-scrollbar{height:8px}.sched-kanban-board::-webkit-scrollbar-track{background:#1a1a1a;border-radius:0}.sched-kanban-board::-webkit-scrollbar-thumb{background:#333;border-radius:0}.sched-kanban-column{min-width:300px;max-width:380px;flex:1 0 300px;background:#1a1a1a;border-radius:0;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.06)}.sched-kanban-column-wide{min-width:380px;max-width:50%;flex:1 1 380px}.sched-kanban-column-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:3px solid;border-radius:8px 8px 0 0;background:#1e1e1e;flex-shrink:0}.sched-kanban-column-icon{font-size:1.1rem}.sched-kanban-column-title{font-size:.85rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.04em;flex:1;font-family:var(--font-heading)}.sched-kanban-column-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 6px;border-radius:12px;font-size:.75rem;font-weight:700;color:#121212}.sched-kanban-column-body{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;max-height:50vh}.sched-kanban-column-body::-webkit-scrollbar{width:4px}.sched-kanban-column-body::-webkit-scrollbar-track{background:transparent}.sched-kanban-column-body::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.sched-kanban-empty{text-align:center;padding:2rem 1rem;color:#444;font-size:.85rem;font-style:italic}.sched-kanban-card{background:#1e1e1e;border:1px solid rgba(255,255,255,.08);border-radius:0;padding:0;transition:all .2s;position:relative;overflow:hidden}.sched-kanban-card:hover{border-color:#03d8f34d;background:#232323;box-shadow:0 4px 12px #0000004d}.sched-kanban-card[draggable=true]{cursor:grab}.sched-kanban-card[draggable=true]:active{cursor:grabbing}.sched-kanban-card-urgent{border-left:3px solid #EF4444}.sched-kanban-urgent-strip{position:absolute;top:0;right:0;width:0;height:0;border-top:18px solid #EF4444;border-left:18px solid transparent}.sched-kanban-card-top{padding:12px 12px 8px}.sched-kanban-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.sched-drag-handle{color:#333;font-size:1rem;line-height:1;-webkit-user-select:none;user-select:none;transition:color .2s;flex-shrink:0}.sched-kanban-card:hover .sched-drag-handle{color:#666}.sched-kanban-card-id{font-family:var(--font-mono);font-weight:700;font-size:.9rem;color:#03d8f3;display:flex;align-items:center;gap:6px}.sched-kanban-urgent-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#ef4444;color:#fff;border-radius:50%;font-size:.7rem;font-weight:700;animation:pulse-urgent 2s infinite}.sched-kanban-type-badge{font-size:.72rem;padding:2px 8px;background:#fcee0c26;color:#fcee0c;border-radius:0;font-weight:600;margin-left:auto}.sched-kanban-card-customer{font-size:.88rem;font-weight:500;color:#fff;margin-bottom:4px}.sched-kanban-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.78rem;color:#666;margin-bottom:4px}.sched-kanban-panel-date{font-size:.78rem;color:#fcee0c;background:#fcee0c1a;padding:3px 8px;border-radius:0;margin-top:4px;display:inline-block}.sched-kanban-battery-date{font-size:.78rem;color:#48bb78;background:#48bb781a;padding:3px 8px;border-radius:0;margin-top:4px;display:inline-block}.sched-kanban-card-actions{padding:8px 12px 10px;border-top:1px solid rgba(255,255,255,.06);display:flex;gap:6px;flex-wrap:wrap}.sched-kanban-btn{padding:5px 12px;border-radius:0;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s;white-space:nowrap}.sched-kanban-btn.primary{background:#03d8f333;color:#03d8f3;border-color:#03d8f34d}.sched-kanban-btn.primary:hover:not(:disabled){background:#03d8f34d}.sched-kanban-btn.primary:disabled{opacity:.4;cursor:not-allowed}.sched-kanban-btn.secondary{background:#2a2a2a;color:#a1a1a1;border-color:#ffffff1a}.sched-kanban-btn.secondary:hover{background:#333;color:#fff}.sched-kanban-btn.danger{background:#ef44441a;color:#ef9a9a;border-color:#ef444433}.sched-kanban-btn.danger:hover{background:#ef444433}.sched-kanban-booking-row{display:flex;gap:6px;width:100%;align-items:center}.sched-kanban-date-input{flex:1;padding:5px 8px;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.82rem;color:#fff;background:#2a2a2a;min-width:0}.sched-kanban-date-input:focus{outline:none;border-color:#fcee0c;box-shadow:0 0 0 2px #fcee0c26}.sched-kanban-booked-actions{display:flex;gap:6px;width:100%}.sched-kanban-booked-actions .sched-kanban-btn{flex:1;text-align:center}.send-back-button{padding:.4rem .75rem;background:#fcee0c1a;color:#fcee0c;border:1px solid rgba(252,238,12,.2);border-radius:0;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s}.send-back-button:hover{background:#fcee0c33}@media(max-width:768px){.sched-kanban-column{min-width:260px;flex:1 0 260px}.sched-kanban-column-wide{min-width:280px;max-width:100%;flex:1 0 280px}.sched-kanban-column-body{max-height:40vh}}.team-schedule-container{background:#1e1e1e;border-radius:0;padding:1.5rem;box-shadow:0 2px 8px #0000004d;border:1px solid rgba(255,255,255,.1)}.month-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.month-display{display:flex;align-items:center;gap:1rem}.month-display h2{margin:0;font-size:1.5rem;color:#fff;font-family:var(--font-heading)}.month-nav-btn{background:#2a2a2a;color:#a1a1a1;border:none;padding:.6rem 1.25rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s}.month-nav-btn:hover{background:#333;color:#fff}.today-btn{background:#03d8f3;color:#121212;border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s}.today-btn:hover{background:#02b8cf}.team-schedule-wrapper{overflow-x:auto;margin-bottom:1rem}.team-schedule-table{width:100%;border-collapse:collapse;min-width:1200px}.team-schedule-table th{padding:.5rem .25rem;text-align:center;font-size:.75rem;font-weight:600;color:#a1a1a1;border-bottom:2px solid rgba(255,255,255,.1);background:#1e1e1e;position:sticky;top:0;z-index:10}.employee-header{text-align:left!important;padding-left:1rem!important;min-width:180px;position:sticky;left:0;background:#1e1e1e!important;z-index:11!important}.day-header{min-width:50px;max-width:70px}.day-header .day-name{color:#666;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.day-header .day-number{font-size:.9rem;font-weight:700;margin-top:2px;color:#a1a1a1}.day-header.weekend{background:#1a1a1a}.day-header.weekend .day-name,.day-header.weekend .day-number{color:#dc2626}.day-header.today{background:#03d8f31a}.day-header.today .day-name{color:#03d8f3}.day-header.today .day-number{color:#03d8f3;background:#03d8f3;color:#121212;border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;margin-top:2px}.team-schedule-table td{padding:.4rem .25rem;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:middle;height:60px}.employee-cell{padding-left:1rem!important;position:sticky;left:0;background:#1e1e1e;z-index:5;border-right:2px solid rgba(255,255,255,.1)}.employee-info{display:flex;flex-direction:column;gap:2px}.employee-name{font-weight:600;color:#fff;font-size:.9rem;white-space:nowrap}.employee-role{font-size:.75rem;color:#666}.schedule-cell{text-align:center;min-width:50px;max-width:70px}.schedule-cell.weekend{background:#1a1a1a}.schedule-cell.today{background:#03d8f30d}.schedule-cell.has-work{background:#48bb781a}.schedule-cell.weekend.has-work{background:#fcee0c1a}.no-employees{text-align:center;color:#666;font-style:italic;padding:3rem!important}.panel-install-booking-card[draggable=true]{cursor:grab}.panel-install-booking-card[draggable=true]:active{cursor:grabbing}.panel-install-booking-card.dragging{opacity:.4;border-style:dashed}.drag-handle{color:#333;font-size:1.1rem;line-height:1;-webkit-user-select:none;user-select:none;transition:color .2s;flex-shrink:0}.panel-install-booking-card:hover .drag-handle{color:#666}.schedule-cell.droppable{transition:background .15s}.schedule-cell.drop-target{background:#03d8f326!important;outline:2px dashed #03D8F3;outline-offset:-2px}.assignments-container{display:flex;flex-direction:column;gap:2px;align-items:center}.assignment-chip{display:flex;flex-direction:column;align-items:center;background:#48bb78;color:#fff;padding:.2rem .4rem;border-radius:0;font-size:.65rem;cursor:pointer;transition:all .2s;max-width:65px;overflow:hidden}.assignment-chip:hover{transform:scale(1.05);box-shadow:0 2px 8px #48bb7866}.assignment-chip.lead{background:#805ad5}.assignment-chip.lead:hover{box-shadow:0 2px 8px #805ad566}.assignment-chip .job-ref{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.assignment-chip .lead-badge{font-size:.55rem;background:#ffffff4d;padding:0 .3rem;border-radius:2px;margin-top:1px}.schedule-legend{display:flex;justify-content:center;gap:2rem;padding:1rem;background:#2a2a2a;border-radius:0;margin-top:1rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#a1a1a1}.legend-color{width:16px;height:16px;border-radius:0}.today-marker{background:#03d8f3}.weekend-marker{background:#1a1a1a;border:1px solid #DC2626}.assigned-marker{background:#48bb78}.lead-marker{background:#805ad5}@media(max-width:1024px){.month-navigation{flex-wrap:wrap;gap:1rem}.month-display{order:-1;width:100%;justify-content:center}.schedule-legend{flex-wrap:wrap;gap:1rem}}@media(max-width:768px){.scheduling-tabs{overflow-x:auto}.scheduling-tab{padding:.75rem 1.25rem;font-size:.9rem;white-space:nowrap}.team-schedule-container{padding:1rem}.month-display h2{font-size:1.25rem}}.subcontractor-schedule-container{background:#1e1e1e;border-radius:0;padding:1.5rem;box-shadow:0 2px 8px #0000004d;border:1px solid rgba(255,255,255,.1)}.subcontractor-info-banner{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;background:#fcee0c14;border-radius:0;margin-bottom:1.5rem;border-left:4px solid #FCEE0C}.banner-icon{font-size:2rem;line-height:1}.banner-content strong{display:block;font-size:1.1rem;color:#fff;margin-bottom:.25rem}.banner-content p{margin:0;font-size:.9rem;color:#a1a1a1}.needs-panel-install-section{background:#1e1e1e;border-radius:0;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000004d;border:1px solid rgba(255,255,255,.1)}.needs-panel-install-section h3{margin:0 0 1rem;font-size:1.1rem;color:#fff;font-family:var(--font-heading)}.needs-panel-install-list{display:flex;flex-direction:column;gap:.75rem}.panel-install-booking-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:#fcee0c0d;border:1px solid rgba(252,238,12,.2);border-radius:0;transition:box-shadow .2s}.panel-install-booking-card:hover{box-shadow:0 2px 8px #0000004d}.panel-install-booking-card.urgent{border-left:4px solid #EF4444}.booking-card-info{flex:1;min-width:0}.booking-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.4rem}.booking-card-header .job-number{font-weight:700;color:#fff;font-size:.95rem}.system-type-badge{font-size:.75rem;padding:.15rem .5rem;background:#fcee0c33;color:#fcee0c;border-radius:0;font-weight:600}.booking-card-details{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.85rem;color:#a1a1a1}.booking-card-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.panel-date-input{padding:.5rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.9rem;color:#fff;background:#2a2a2a}.panel-date-input:focus{outline:none;border-color:#fcee0c;box-shadow:0 0 0 3px #fcee0c26}.book-panel-button{padding:.5rem 1rem;background:#fcee0c33;color:#fcee0c;border:1px solid rgba(252,238,12,.3);border-radius:0;font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}.book-panel-button:hover:not(:disabled){background:#fcee0c4d}.book-panel-button:disabled{opacity:.5;cursor:not-allowed}.subcontractor-calendar{margin-bottom:2rem}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px}.calendar-day-header{padding:.75rem .5rem;text-align:center;font-weight:600;font-size:.85rem;color:#a1a1a1;background:#2a2a2a;border-radius:4px 4px 0 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;background:#ffffff0d;border-radius:0 0 4px 4px;padding:2px}.calendar-cell{min-height:100px;background:#1e1e1e;padding:.5rem;position:relative;transition:all .2s}.calendar-cell.empty,.calendar-cell.weekend{background:#1a1a1a}.calendar-cell.today{background:#03d8f314;box-shadow:inset 0 0 0 2px #03d8f3}.calendar-cell.has-installs{background:#48bb7814}.calendar-cell.weekend.has-installs{background:#fcee0c14}.cell-date{font-weight:600;font-size:.9rem;color:#fff;margin-bottom:.5rem}.calendar-cell.weekend .cell-date{color:#dc2626}.calendar-cell.today .cell-date{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#03d8f3;color:#121212;border-radius:50%}.cell-installs{display:flex;flex-direction:column;gap:4px}.panel-install-chip{display:flex;flex-direction:column;background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;padding:.35rem .5rem;border-radius:0;cursor:pointer;transition:all .2s;font-size:.75rem}.panel-install-chip:hover{transform:scale(1.03);box-shadow:0 2px 8px #03d8f366}.install-job-number{font-weight:700;font-size:.7rem}.install-customer{font-size:.65rem;opacity:.9}.upcoming-installs-section{margin-top:2rem}.upcoming-installs-section h3{margin:0 0 1rem;font-size:1.2rem;color:#fff;padding-bottom:.75rem;border-bottom:2px solid rgba(255,255,255,.1);font-family:var(--font-heading)}.no-upcoming{text-align:center;padding:2rem;color:#666;background:#2a2a2a;border-radius:0}.no-upcoming p{margin:0}.upcoming-installs-list{display:flex;flex-direction:column;gap:.75rem}.upcoming-install-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#2a2a2a;border-radius:0;cursor:pointer;transition:all .2s;border:2px solid transparent}.upcoming-install-card:hover{background:#333;border-color:#03d8f3;box-shadow:0 4px 12px #03d8f326;transform:translate(5px)}.install-date-badge{min-width:60px;text-align:center;padding:.75rem .5rem;background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;border-radius:0;font-weight:700;font-size:.85rem}.install-details{flex:1}.install-job{font-weight:700;color:#03d8f3;font-size:1rem;margin-bottom:.25rem}.install-customer-name{font-weight:500;color:#fff;font-size:.95rem}.install-location{font-size:.85rem;color:#666;margin-top:.25rem}.install-system{font-size:.8rem;color:#a1a1a1;margin-top:.25rem;background:#333;display:inline-block;padding:.15rem .5rem;border-radius:0}.install-arrow{font-size:1.25rem;color:#333;transition:all .2s}.upcoming-install-card:hover .install-arrow{color:#03d8f3;transform:translate(5px)}.unschedule-panel-button{background:none;border:1px solid rgba(255,255,255,.1);border-radius:0;color:#666;font-size:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0}.unschedule-panel-button:hover{background:#dc262626;border-color:#dc26264d;color:#dc2626}.install-section{margin-bottom:1.5rem;padding:1.25rem;border-radius:0;border:2px solid rgba(255,255,255,.1)}.panel-install-section{background:#fcee0c0d;border-color:#fcee0c4d}.battery-install-section{background:#10b98114;border-color:#10b9814d}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.section-icon{font-size:1.5rem}.section-header h4{margin:0;font-size:1.1rem;color:#fff;font-family:var(--font-heading)}.section-info{margin-bottom:1rem}.section-info p{margin:0;font-size:.85rem;color:#a1a1a1}.edit-date-section.panel-date-section{background:#fcee0c0d;border:2px solid rgba(252,238,12,.3);border-radius:0;padding:1rem;margin-bottom:1rem}.edit-date-section.battery-date-section{background:#10b98114;border:2px solid rgba(16,185,129,.3);border-radius:0;padding:1rem;margin-bottom:1rem}.edit-date-section .section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.edit-date-section .section-header h4{margin:0;font-size:1rem;color:#fff}.edit-date-section .section-icon{font-size:1.25rem}.optional-badge{display:inline-block;font-size:.7rem;font-weight:500;color:#666;background:#2a2a2a;padding:.15rem .5rem;border-radius:0;margin-left:.5rem;vertical-align:middle}.install-section.optional-section{opacity:.7;border-style:dashed}.install-section.optional-section:hover{opacity:1}.install-section.disabled-section{opacity:.6;background:#1a1a1a}.section-locked-message{display:flex;align-items:center;gap:12px;padding:16px;background:#fcee0c14;border-radius:0;margin-top:12px;border:1px solid rgba(252,238,12,.2)}.section-locked-message .lock-icon{font-size:24px}.section-locked-message p{margin:0;color:#fcee0c;font-size:.95rem}.order-note{color:#03d8f3;font-size:.9rem;margin-top:8px;padding:8px 12px;background:#03d8f314;border-radius:0;border:1px solid rgba(3,216,243,.2)}.field-hint{font-size:.85rem;color:#666;margin-top:6px;font-style:italic}@media(max-width:1024px){.calendar-cell{min-height:80px}.panel-install-chip{padding:.25rem .4rem}}@media(max-width:768px){.subcontractor-schedule-container{padding:1rem}.calendar-cell{min-height:60px;padding:.25rem}.cell-date{font-size:.8rem}.panel-install-chip{font-size:.65rem;padding:.2rem .3rem}.install-job-number{font-size:.6rem}.install-customer{display:none}.upcoming-install-card{flex-wrap:wrap}.install-date-badge{min-width:50px;padding:.5rem;font-size:.75rem}}.header-actions{display:flex;gap:1rem;align-items:center}.auto-schedule-button{background:linear-gradient(135deg,#9333ea,#7c3aed);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #9333ea4d}.auto-schedule-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #9333ea66}.auto-schedule-modal{max-width:900px;max-height:90vh}.auto-schedule-modal .modal-body{overflow-y:auto;max-height:60vh}.auto-schedule-status{background:#03d8f314;border:1px solid rgba(3,216,243,.2);border-radius:0;padding:1.5rem;margin-bottom:1.5rem}.auto-schedule-status h3{margin:0 0 1rem;color:#03d8f3;font-size:1.1rem;font-family:var(--font-heading)}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.status-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#2a2a2a;border-radius:0;box-shadow:0 1px 3px #0000004d}.status-value{font-size:2rem;font-weight:700;color:#03d8f3}.status-label{font-size:.85rem;color:#666;text-align:center}.auto-schedule-info{background:#fcee0c14;border:1px solid rgba(252,238,12,.2);border-radius:0;padding:1.5rem;margin-bottom:1.5rem}.auto-schedule-info h3{margin:0 0 1rem;color:#fcee0c;font-size:1.1rem;font-family:var(--font-heading)}.rules-list{display:flex;flex-direction:column;gap:.75rem}.rule-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;color:#a1a1a1}.rule-icon{font-size:1.2rem;flex-shrink:0}.auto-schedule-preview{background:#2a2a2a;border:1px solid rgba(255,255,255,.1);border-radius:0;padding:1.5rem}.auto-schedule-preview h3{margin:0 0 .5rem;color:#fff;font-size:1.1rem;font-family:var(--font-heading)}.preview-note{font-size:.85rem;color:#666;margin:0 0 1.5rem}.preview-section{margin-bottom:1.5rem}.preview-section:last-child{margin-bottom:0}.preview-section h4{margin:0 0 1rem;color:#a1a1a1;font-size:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.preview-list{display:flex;flex-direction:column;gap:.75rem;max-height:200px;overflow-y:auto}.preview-item{background:#333;border:1px solid rgba(255,255,255,.1);border-radius:0;padding:.75rem 1rem}.preview-item.urgent{background:#ef44441a;border-color:#ef44444d}.preview-item.pending{background:#fcee0c0d;border-color:#fcee0c33;opacity:.8}.preview-job{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.preview-job strong{color:#fff}.urgent-badge{background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;padding:.15rem .4rem;border-radius:0;text-transform:uppercase}.preview-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.preview-location{font-size:.85rem;color:#666}.preview-date{font-size:.85rem;font-weight:600;color:#48bb78;background:#48bb7826;padding:.2rem .5rem;border-radius:0}.preview-pending{font-size:.85rem;font-weight:600;color:#fcee0c;background:#fcee0c1a;padding:.2rem .5rem;border-radius:0}.preview-reason{font-size:.8rem;color:#666;font-style:italic}.no-items{color:#666;font-style:italic;text-align:center;padding:1rem}.lock-schedules-button{background:#fcee0c33;color:#fcee0c;border:1px solid rgba(252,238,12,.3);padding:.75rem 1.25rem;border-radius:0;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s}.lock-schedules-button:hover{background:#fcee0c4d}.run-scheduler-button{background:linear-gradient(135deg,#9333ea,#7c3aed);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #9333ea4d}.run-scheduler-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #9333ea66}.run-scheduler-button:disabled{opacity:.6;cursor:not-allowed}.auto-schedule-modal .modal-footer{display:flex;justify-content:space-between;gap:1rem}.auto-schedule-modal .modal-footer .cancel-button{margin-left:auto}@media(max-width:768px){.status-grid{grid-template-columns:1fr}.auto-schedule-modal .modal-footer{flex-direction:column}.auto-schedule-modal .modal-footer .cancel-button{margin-left:0}}.install-date-badge{font-size:.85rem;font-weight:600;padding:.35rem .75rem;border-radius:0}.install-date-badge.panel{background:#fcee0c26;color:#fcee0c}.install-date-badge.battery{background:#48bb7826;color:#48bb78}.crew-info{font-size:.9rem;color:#666;margin:.5rem 0;font-style:italic}.panel-booked-info{font-size:.85rem;color:#fcee0c;background:#fcee0c1a;padding:.25rem .5rem;border-radius:0;margin-top:.25rem;font-weight:500}.view-controls{display:flex;gap:.25rem;margin-top:.5rem;align-items:center}.view-btn{background:#2a2a2a;color:#aaa;border:1px solid #3a3a3a;padding:.35rem .75rem;border-radius:0;cursor:pointer;font-size:.85rem;transition:all .2s}.view-btn:hover{background:#333;color:#fff}.view-btn.active{background:#03d8f3;color:#121212;border-color:#03d8f3;font-weight:600}.employee-filter{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;padding:.75rem 0;margin-bottom:.5rem}.filter-label{color:#999;font-size:.85rem;margin-right:.5rem}.filter-chip{background:#2a2a2a;color:#aaa;border:1px solid #3a3a3a;padding:.3rem .65rem;border-radius:20px;cursor:pointer;font-size:.8rem;transition:all .2s}.filter-chip:hover{background:#333;color:#fff}.filter-chip.active{background:#03d8f326;color:#03d8f3;border-color:#03d8f3}.schedule-cell.unavailable-leave{background:#ef9a9a1f!important}.schedule-cell.unavailable-sick{background:#ff98001f!important}.schedule-cell.unavailable-training{background:#64b5f61f!important}.availability-label{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.5px;color:#999;text-align:center;margin-bottom:2px}.unavailable-leave-marker{background:#ef9a9a80!important}.unavailable-sick-marker{background:#ff980080!important}.unavailable-training-marker{background:#64b5f680!important}.schedule-cell.overbooked{border:2px solid #DC3545!important;position:relative}.overbooked-indicator{position:absolute;top:2px;right:4px;width:16px;height:16px;background:#dc3545;color:#fff;border-radius:50%;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:2}.overbooked-marker{background:#dc3545!important}.assignment-chip,.sched-kanban-card{border-left:3px solid transparent}.material-check{padding:.75rem;border-radius:0;margin-bottom:1rem;font-size:.9rem}.material-check.loading{background:#ffffff0d;color:#999;font-style:italic}.material-check.ok{background:#48bb781a;border:1px solid rgba(72,187,120,.3)}.material-check.warning{background:#dc35451a;border:1px solid rgba(220,53,69,.3)}.material-check h4{margin:0 0 .5rem;font-size:.95rem;color:#fff}.material-item{display:flex;justify-content:space-between;align-items:center;padding:.3rem 0}.material-item.sufficient span:first-child{color:#48bb78}.material-item.insufficient span:first-child{color:#ef9a9a}.material-warning{color:#dc3545;font-weight:600;font-size:.85rem}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.preview-actions{display:flex;gap:.5rem;align-items:center}.select-all-btn{background:#2a2a2a;color:#ccc;border:1px solid #3a3a3a;padding:.3rem .6rem;border-radius:0;cursor:pointer;font-size:.8rem;transition:all .2s}.select-all-btn:hover{background:#333;color:#fff}.selected-count{color:#03d8f3;font-size:.85rem;font-weight:500}.preview-checkbox{margin-right:.5rem;accent-color:#03D8F3;width:16px;height:16px;cursor:pointer}.preview-item{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem;padding:.5rem;border-radius:0;margin-bottom:.25rem;background:#ffffff08;transition:background .15s}.preview-item.selected{background:#03d8f314;border-left:3px solid #03D8F3}.preview-item.material-warning{border-right:3px solid #DC3545}.duration-badge{background:#ffffff1a;color:#ccc;padding:.15rem .4rem;border-radius:3px;font-size:.75rem;margin-left:.25rem}.material-warning-badge{background:#dc354533;color:#dc3545;padding:.15rem .4rem;border-radius:3px;font-size:.75rem;font-weight:600;margin-left:.25rem}.last-run{color:#888;font-size:.8rem;margin-top:.5rem}@media(max-width:768px){.view-controls{flex-wrap:wrap}.employee-filter{gap:.25rem}.filter-chip{font-size:.75rem;padding:.2rem .5rem}.month-navigation{flex-direction:column;gap:.5rem}.month-display{text-align:center}.preview-header{flex-direction:column;gap:.5rem}.schedule-legend{flex-wrap:wrap;gap:.5rem}}.employees{padding:2rem;max-width:1600px;margin:0 auto}.employees-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.employees-header h1{margin:0;font-size:2rem;color:#fff;font-family:var(--font-heading)}.employees-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.employees-section{background:#1e1e1e;border-radius:0;padding:2rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;margin-bottom:2rem}.employees-section h2{margin:0 0 1.5rem;font-size:1.4rem;color:#fff;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.1)}.employees-table-container{overflow-x:auto}.employees-table{width:100%;border-collapse:collapse}.employees-table thead{background:#2a2a2a}.employees-table th{padding:1rem;text-align:left;font-weight:600;color:#a1a1a1;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid rgba(255,255,255,.1)}.employees-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:middle;color:#fff}.employees-table tbody tr{transition:background .2s}.employees-table tbody tr:hover{background:#2a2a2a}.employee-name{display:flex;align-items:center;gap:.5rem}.employee-name strong{font-size:1rem;color:#fff}.lead-badge{background:#85640433;color:#ffd54f;padding:.2rem .6rem;border-radius:0;font-size:.75rem;font-weight:600}.role-badge{display:inline-block;padding:.4rem .8rem;border-radius:0;font-size:.85rem;font-weight:600}.role-badge.electrician{background:#e6510026;color:#ffb74d}.role-badge.installer,.role-badge.lead-installer{background:#1565c026;color:#64b5f6}.role-badge.project-manager{background:#6a1b9a26;color:#ce93d8}.role-badge.admin{background:#2e7d3226;color:#81c784}.certifications{display:flex;flex-wrap:wrap;gap:.5rem}.cert-badge{background:#0f513233;color:#81c784;padding:.25rem .6rem;border-radius:0;font-size:.75rem;font-weight:600}.status-badge{display:inline-block;padding:.4rem .8rem;border-radius:0;font-size:.85rem;font-weight:600}.status-badge.active{background:#0f513233;color:#81c784}.status-badge.on-leave{background:#85640433;color:#ffd54f}.status-badge.terminated{background:#721c2433;color:#ef9a9a}.inactive-section{background:#2a2a2a}.inactive-list{display:flex;flex-wrap:wrap;gap:1rem}.inactive-employee{background:#1e1e1e;padding:1rem;border-radius:0;display:flex;flex-direction:column;gap:.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 1px 3px #0000004d}.inactive-role{font-size:.85rem;color:#666}.modal-content{background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:0;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column}.employee-modal .modal-body{overflow-y:auto}.form-section.account-section{background:#03d8f31a;padding:1.5rem;border-radius:0;border:2px dashed rgba(3,216,243,.3)}.form-section.account-section h3{color:#03d8f3}.form-section.electrician-section{background:#f59e0b1a;padding:1.5rem;border-radius:0;border:2px solid #F59E0B}.form-section.electrician-section h3{color:#f59e0b}.section-description{font-size:.85rem;color:#666;margin:-.5rem 0 1rem;font-style:italic}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel],.form-field input[type=number],.form-field input[type=date],.form-field input[type=password],.form-field select{width:100%;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;transition:all .2s;background:#2a2a2a;color:#fff}.form-field input[type=checkbox]{width:18px;height:18px;margin-right:.5rem;cursor:pointer}.form-field label:has(input[type=checkbox]){flex-direction:row;align-items:center;font-weight:400}.account-info{display:flex;flex-direction:column;gap:.3rem}.account-badge{display:inline-block;padding:.3rem .7rem;border-radius:0;font-size:.8rem;font-weight:600;text-align:center;white-space:nowrap}.account-badge.admin{background:#2e7d3226;color:#81c784}.account-badge.manager{background:#1565c026;color:#64b5f6}.account-badge.employee{background:#e6510026;color:#ffb74d}.account-email{font-size:.8rem;color:#a1a1a1;font-family:Courier New,monospace}.no-account{color:#666;font-size:.85rem;font-style:italic}@media(max-width:1024px){.employees-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.employees{padding:1rem}.employees-stats,.form-row{grid-template-columns:1fr}.modal-content{width:95%}.modal-header,.modal-body,.modal-footer{padding:1rem}.action-buttons{flex-direction:column}}.retailers{padding:2rem;max-width:1600px;margin:0 auto}.retailers-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.retailers-header h1{margin:0;font-size:2rem;color:#fff;font-family:var(--font-heading)}.header-left{display:flex;align-items:center;gap:1rem}.back-button{background:#2a2a2a;color:#fff;border:1px solid rgba(255,255,255,.1);padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.9rem;transition:all .2s}.back-button:hover{background:#333;transform:translate(-3px)}.refresh-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.refresh-button:hover{background:#02b8cf;transform:translateY(-2px)}.add-button{background:linear-gradient(135deg,#06d6a0,#05b383);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #06d6a04d}.add-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #06d6a066}.add-button-large{background:linear-gradient(135deg,#06d6a0,#05b383);color:#fff;border:none;padding:1rem 2rem;border-radius:0;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1rem;transition:all .2s}.add-button-large:hover{transform:translateY(-2px);box-shadow:0 4px 12px #06d6a066}.retailers-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.stat-box{background:#1e1e1e;border-radius:0;padding:1.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;gap:1rem;transition:transform .2s}.stat-box:hover{transform:translateY(-2px)}.stat-icon{font-size:2.5rem}.stat-content{flex:1}.stat-value{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.25rem}.stat-label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.retailers-section{background:#1e1e1e;border-radius:0;padding:2rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;margin-bottom:2rem}.retailers-section h2{margin:0 0 1.5rem;font-size:1.4rem;color:#fff;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.1)}.retailers-table-container{overflow-x:auto}.retailers-table{width:100%;border-collapse:collapse}.retailers-table thead{background:#2a2a2a}.retailers-table th{padding:1rem;text-align:left;font-weight:600;color:#a1a1a1;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid rgba(255,255,255,.1)}.retailers-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:middle;color:#fff}.retailers-table tbody tr{transition:background .2s}.retailers-table tbody tr:hover{background:#2a2a2a}.company-name{display:flex;align-items:center;gap:.5rem}.company-name strong{font-size:1rem;color:#fff}.website-link{font-size:.9rem;text-decoration:none;color:#03d8f3;opacity:.7;transition:opacity .2s}.website-link:hover{opacity:1}.contact-info{font-size:.9rem;color:#a1a1a1}.contact-info div{margin:.25rem 0}.not-provided{color:#666;font-style:italic;font-size:.85rem}.stat-number{font-weight:600;color:#03d8f3;font-size:1.1rem}.revenue-amount{font-weight:600;color:#06d6a0;font-size:1.1rem}.action-buttons{display:flex;gap:.5rem}.edit-btn,.delete-btn{border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.edit-btn{background:#03d8f3;color:#121212}.edit-btn:hover{background:#02b8cf;transform:translateY(-2px)}.delete-btn{background:#721c2433;color:#ef9a9a}.delete-btn:hover{background:#721c2459;transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:0;width:90%;max-width:700px;max-height:90vh;display:flex;flex-direction:column}.retailer-modal .modal-body{overflow-y:auto}.modal-header{padding:1.5rem 2rem;border-bottom:2px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;color:#fff}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-button:hover{background:#2a2a2a;color:#fff}.modal-body{padding:2rem;flex:1}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1)}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{margin:0 0 1rem;font-size:1.1rem;color:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-field{display:flex;flex-direction:column}.form-field.full-width{grid-column:1 / -1}.form-field label{font-size:.9rem;font-weight:600;color:#a1a1a1;margin-bottom:.5rem}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel],.form-field input[type=url],.form-field select{width:100%;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;transition:all .2s;background:#2a2a2a;color:#fff}.form-field input:focus,.form-field select:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.notes-textarea{width:100%;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;transition:all .2s;resize:vertical;background:#2a2a2a;color:#fff}.notes-textarea:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.cancel-button{background:#2a2a2a;color:#fff;border:1px solid rgba(255,255,255,.1);padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.cancel-button:hover{background:#333}.submit-button{background:linear-gradient(135deg,#06d6a0,#05b383);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #06d6a04d}.submit-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #06d6a066}.empty-state{text-align:center;padding:3rem 1rem;color:#666}.empty-state p{margin:.5rem 0;font-size:1.1rem}.empty-subtitle{font-size:.95rem!important;color:#666}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top-color:#03d8f3;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.retailers-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.retailers{padding:1rem}.retailers-stats,.form-row{grid-template-columns:1fr}.modal-content{width:95%}.modal-header,.modal-body,.modal-footer{padding:1rem}.action-buttons{flex-direction:column}}.login-section{background:#03d8f31a;padding:1.5rem;border-radius:0;margin-top:1rem;border:1px solid rgba(3,216,243,.3)}.login-section h3{color:#03d8f3}.section-description{font-size:.9rem;color:#666;margin:0 0 1rem}.form-field input[type=password]{width:100%;padding:.75rem;border:2px solid rgba(255,255,255,.1);border-radius:0;font-size:1rem;font-family:inherit;transition:all .2s;background:#2a2a2a;color:#fff}.form-field input[type=password]:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.on-hold-row{background:#ff98001a!important}.on-hold-row:hover{background:#ff98002e!important}.hold-badge{display:inline-block;background:#e6510026;color:#ffb74d;font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:0;margin-left:.5rem;text-transform:uppercase;letter-spacing:.5px}.hold-reason{font-size:.8rem;color:#ffb74d;margin-top:.25rem;font-style:italic}.hold-btn,.unhold-btn{border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.hold-btn{background:#e6510026;color:#ffb74d}.hold-btn:hover{background:#e6510040;transform:translateY(-2px)}.unhold-btn{background:#2e7d3226;color:#81c784}.unhold-btn:hover{background:#2e7d3240;transform:translateY(-2px)}.hold-modal{max-width:500px}.hold-warning{background:#e651001a;border:1px solid rgba(255,183,77,.3);border-radius:0;padding:1rem;margin-bottom:1.5rem}.hold-warning p{margin:.5rem 0;color:#ffb74d;font-size:.95rem}.hold-warning p:first-child{margin-top:0}.hold-warning p:last-child{margin-bottom:0}.hold-confirm-button{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #ff98004d}.hold-confirm-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff980066}.inventory-page{padding:2rem;max-width:1800px;margin:0 auto}.inventory-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-left h1{margin:0;font-size:2rem;color:#fff}.header-left .subtitle{margin:.5rem 0 0;color:#666;font-size:.95rem}.header-actions{display:flex;gap:1rem}.add-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:500;transition:background .2s}.add-button:hover{background:#02b8cf}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:#1e1e1e;border-radius:0;padding:1.5rem;box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;gap:1rem;transition:transform .2s,box-shadow .2s}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0006}.summary-card.warning{border-left:4px solid #ff9800}.summary-card.critical{border-left:4px solid #f44336}.card-icon{font-size:2.5rem;line-height:1}.card-content{flex:1}.card-value{font-size:2rem;font-weight:700;color:#fff;line-height:1}.card-label{font-size:.85rem;color:#666;margin-top:.25rem;font-weight:500}.inventory-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-input{flex:1;min-width:300px;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff}.search-input:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.filter-select{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff;cursor:pointer;min-width:180px}.filter-select:focus{outline:none;border-color:#03d8f3}.inventory-table-container{background:#1e1e1e;border-radius:0;box-shadow:0 2px 8px #0000004d;overflow:hidden;margin-bottom:1rem}.inventory-table{width:100%;border-collapse:collapse}.inventory-table thead{background:#2a2a2a}.inventory-table th{padding:1rem;text-align:left;font-weight:600;color:#a1a1a1;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(255,255,255,.1)}.inventory-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.95rem;color:#fff}.inventory-table tbody tr{transition:background .2s}.inventory-table tbody tr:hover{background:#2a2a2a}.category-badge{display:inline-block;padding:.35rem .75rem;background:#03d8f326;color:#03d8f3;border-radius:0;font-size:.85rem;font-weight:600}.manufacturer-cell{font-weight:600;color:#fff}.model-cell{font-family:Courier New,monospace;color:#a1a1a1}.sku-cell{color:#666;font-size:.9rem}.retailer-cell{color:#03d8f3;font-weight:500}.quantity-cell{text-align:center;font-weight:600;color:#a1a1a1}.quantity-cell.available{color:#81c784;font-weight:700}.stock-status{display:inline-block;padding:.35rem .75rem;border-radius:0;font-size:.85rem;font-weight:600;white-space:nowrap}.status-in-stock{background:#2e7d3233;color:#81c784}.status-low-stock{background:#f57c0033;color:#ffb74d}.status-out-of-stock{background:#c6282833;color:#ef5350}.no-data{text-align:center;padding:3rem;color:#a1a1a1;font-style:italic}.results-count{text-align:center;padding:1rem;color:#666;font-size:.9rem}.spinner{width:50px;height:50px;border:4px solid #333333;border-top:4px solid #03D8F3;border-radius:50%;animation:spin 1s linear infinite}.error-state h2{color:#ef5350;margin:0}.retry-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;margin-top:1rem}.retry-button:hover{background:#02b8cf}@media(max-width:1024px){.inventory-page{padding:1rem}.inventory-header{flex-direction:column;gap:1rem}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.inventory-filters{flex-direction:column}.search-input{width:100%;min-width:auto}.filter-select{width:100%}.inventory-table-container{overflow-x:auto}.inventory-table{min-width:1000px}}@media(max-width:768px){.summary-cards{grid-template-columns:1fr}.card-value{font-size:1.75rem}}.inventory-dashboard{padding:2rem;max-width:1800px;margin:0 auto}.inventory-dashboard .dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.inventory-dashboard .header-left h1{margin:0;font-size:2rem;color:#fff;font-family:var(--font-heading)}.inventory-dashboard .header-left .subtitle{margin:.5rem 0 0;color:#666;font-size:.95rem}.inventory-dashboard .header-actions{display:flex;gap:.75rem}.inventory-dashboard .refresh-btn{background:#333;color:#a1a1a1;border:1px solid rgba(255,255,255,.1);padding:.75rem 1.25rem;border-radius:0;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.inventory-dashboard .refresh-btn:hover{background:#2a2a2a;color:#fff}.inventory-dashboard .add-btn{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:600;transition:background .2s}.inventory-dashboard .add-btn:hover{background:#02b8cf}.inventory-dashboard .summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.inventory-dashboard .summary-card{background:#1e1e1e;border-radius:0;padding:1.5rem;box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;gap:1rem;transition:transform .2s,box-shadow .2s;border-left:4px solid transparent}.inventory-dashboard .summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0006}.inventory-dashboard .summary-card.warehouse{border-left-color:#03d8f3}.inventory-dashboard .summary-card.pending{border-left-color:#ffb627}.inventory-dashboard .summary-card.ready{border-left-color:#06d6a0}.inventory-dashboard .summary-card.total{border-left-color:#9c27b0}.inventory-dashboard .card-icon{font-size:2.5rem;line-height:1}.inventory-dashboard .card-content{flex:1}.inventory-dashboard .card-value{font-size:2rem;font-weight:700;color:#fff;line-height:1;font-family:IBM Plex Mono,monospace}.inventory-dashboard .card-label{font-size:.9rem;color:#a1a1a1;margin-top:.25rem;font-weight:600}.inventory-dashboard .card-breakdown{font-size:.8rem;color:#666;margin-top:.35rem}.inventory-dashboard .tabs{display:flex;gap:0;margin-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.inventory-dashboard .tab{padding:1rem 1.5rem;background:transparent;border:none;cursor:pointer;font-size:.95rem;font-weight:600;color:#666;position:relative;transition:color .2s}.inventory-dashboard .tab:hover{color:#a1a1a1}.inventory-dashboard .tab.active{color:#03d8f3}.inventory-dashboard .tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:#03d8f3;border-radius:2px 2px 0 0}.inventory-dashboard .filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.inventory-dashboard .search-input{flex:1;min-width:280px;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;transition:border-color .2s,box-shadow .2s;background:#1e1e1e;color:#fff}.inventory-dashboard .search-input:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.inventory-dashboard .filter-select{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;background:#1e1e1e;color:#fff;cursor:pointer;min-width:160px}.inventory-dashboard .filter-select:focus{outline:none;border-color:#03d8f3}.inventory-dashboard .table-container{background:#1e1e1e;border-radius:0;box-shadow:0 2px 8px #0000004d;overflow:hidden;margin-bottom:1rem}.inventory-dashboard .data-table{width:100%;border-collapse:collapse}.inventory-dashboard .data-table thead{background:#2a2a2a}.inventory-dashboard .data-table th{padding:1rem;text-align:left;font-weight:600;color:#a1a1a1;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(255,255,255,.1);white-space:nowrap}.inventory-dashboard .data-table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.95rem;vertical-align:middle;color:#fff}.inventory-dashboard .data-table tbody tr{transition:background .2s}.inventory-dashboard .data-table tbody tr:hover{background:#2a2a2a}.inventory-dashboard .data-table tbody tr.delivered-row{background:#2e7d321a}.inventory-dashboard .data-table tbody tr.delivered-row:hover{background:#2e7d3226}.inventory-dashboard .category-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;background:#03d8f326;color:#03d8f3;border-radius:0;font-size:.85rem;font-weight:600;white-space:nowrap}.inventory-dashboard .manufacturer-cell{font-weight:600;color:#fff}.inventory-dashboard .model-cell{font-family:IBM Plex Mono,monospace;color:#a1a1a1;font-size:.9rem}.inventory-dashboard .sku-cell{color:#666;font-size:.9rem}.inventory-dashboard .retailer-cell{color:#03d8f3;font-weight:500}.inventory-dashboard .customer-cell{color:#a1a1a1}.inventory-dashboard .quantity-cell{text-align:center;font-weight:600;color:#a1a1a1;font-family:IBM Plex Mono,monospace}.inventory-dashboard .quantity-cell.available{color:#81c784;font-weight:700}.inventory-dashboard .equipment-cell{max-width:200px}.inventory-dashboard .equipment-details{display:flex;flex-direction:column;gap:.2rem}.inventory-dashboard .equipment-details strong{color:#fff;font-size:.9rem}.inventory-dashboard .equipment-details .model{color:#666;font-size:.85rem;font-family:IBM Plex Mono,monospace}.inventory-dashboard .equipment-details .spec{color:#a1a1a1;font-size:.8rem;background:#333;padding:.15rem .4rem;border-radius:0;display:inline-block;margin-right:.25rem}.inventory-dashboard .delivery-cell{display:flex;flex-direction:column;gap:.3rem}.inventory-dashboard .tracking-number{font-size:.75rem;color:#666;font-family:IBM Plex Mono,monospace}.inventory-dashboard .expected-date{font-size:.75rem;color:#666}.inventory-dashboard .delivery-badge{display:inline-block;padding:.3rem .6rem;border-radius:0;font-size:.75rem;font-weight:600;color:#fff;white-space:nowrap}.inventory-dashboard .stock-status{display:inline-block;padding:.35rem .75rem;border-radius:0;font-size:.85rem;font-weight:600;white-space:nowrap}.inventory-dashboard .status-in-stock{background:#2e7d3233;color:#81c784}.inventory-dashboard .status-low-stock{background:#f57c0033;color:#ffb74d}.inventory-dashboard .status-out-of-stock{background:#c6282833;color:#ef5350}.inventory-dashboard .job-status-badge{display:inline-block;padding:.3rem .6rem;border-radius:0;font-size:.75rem;font-weight:600;white-space:nowrap}.inventory-dashboard .status-intake{background:#03d8f326;color:#03d8f3}.inventory-dashboard .status-review{background:#f57c0033;color:#ffb74d}.inventory-dashboard .status-permitting{background:#c2185b33;color:#f48fb1}.inventory-dashboard .status-ordered{background:#5e35b133;color:#b39ddb}.inventory-dashboard .status-ready{background:#388e3c33;color:#81c784}.inventory-dashboard .status-scheduled{background:#00897b33;color:#80cbc4}.inventory-dashboard .status-progress{background:#ff8f0033;color:#ffb74d}.inventory-dashboard .status-default{background:#333;color:#a1a1a1}.inventory-dashboard .job-number-link{color:#03d8f3;font-weight:600;cursor:pointer;text-decoration:none}.inventory-dashboard .job-number-link:hover{text-decoration:underline}.inventory-dashboard .update-btn{background:#03d8f3;color:#121212;border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:500;transition:background .2s}.inventory-dashboard .update-btn:hover{background:#02b8cf}.inventory-dashboard .no-data{text-align:center;padding:3rem;color:#a1a1a1}.inventory-dashboard .no-data p{margin-bottom:1rem}.inventory-dashboard .add-btn-secondary{background:transparent;color:#03d8f3;border:2px solid #03D8F3;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s}.inventory-dashboard .add-btn-secondary:hover{background:#03d8f3;color:#121212}.inventory-dashboard .results-count{text-align:center;padding:1rem;color:#666;font-size:.9rem}.inventory-dashboard .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.inventory-dashboard .spinner{width:50px;height:50px;border:4px solid #333333;border-top:4px solid #03D8F3;border-radius:50%;animation:spin 1s linear infinite}.inventory-dashboard .loading-state p{color:#666;font-size:1.1rem}.inventory-dashboard .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem;text-align:center}.inventory-dashboard .error-state h2{color:#ef5350;margin:0}.inventory-dashboard .error-state p{color:#666;max-width:500px}.inventory-dashboard .retry-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;margin-top:1rem}.inventory-dashboard .retry-button:hover{background:#02b8cf}.inventory-dashboard .modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.inventory-dashboard .modal{background:#1e1e1e;border-radius:0;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #00000080;border:1px solid rgba(255,255,255,.1)}.inventory-dashboard .modal.delivery-modal{max-width:550px}.inventory-dashboard .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.inventory-dashboard .modal-header h2{margin:0;font-size:1.25rem;color:#fff}.inventory-dashboard .close-modal{background:none;border:none;font-size:1.5rem;color:#a1a1a1;cursor:pointer;padding:0;line-height:1}.inventory-dashboard .close-modal:hover{color:#fff}.inventory-dashboard .modal-body{padding:1.5rem}.inventory-dashboard .equipment-summary{background:#2a2a2a;padding:1rem;border-radius:0;margin-bottom:1.5rem}.inventory-dashboard .equipment-summary p{margin:.35rem 0;font-size:.9rem;color:#a1a1a1}.inventory-dashboard .form-group{margin-bottom:1.25rem}.inventory-dashboard .form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#a1a1a1;font-size:.9rem}.inventory-dashboard .form-group input,.inventory-dashboard .form-group select,.inventory-dashboard .form-group textarea{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.95rem;transition:border-color .2s;background:#2a2a2a;color:#fff}.inventory-dashboard .form-group input:focus,.inventory-dashboard .form-group select:focus,.inventory-dashboard .form-group textarea:focus{outline:none;border-color:#03d8f3}.inventory-dashboard .form-group textarea{resize:vertical}.inventory-dashboard .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.inventory-dashboard .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.inventory-dashboard .cancel-btn{background:#333;color:#a1a1a1;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:500}.inventory-dashboard .cancel-btn:hover{background:#2a2a2a;color:#fff}.inventory-dashboard .submit-btn{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:600}.inventory-dashboard .submit-btn:hover{background:#02b8cf}.inventory-dashboard .submit-btn:disabled{background:#333;color:#666;cursor:not-allowed}@media(max-width:1024px){.inventory-dashboard{padding:1rem}.inventory-dashboard .dashboard-header{flex-direction:column;gap:1rem}.inventory-dashboard .summary-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.inventory-dashboard .filters{flex-direction:column}.inventory-dashboard .search-input{width:100%;min-width:auto}.inventory-dashboard .filter-select{width:100%}.inventory-dashboard .table-container{overflow-x:auto}.inventory-dashboard .data-table{min-width:900px}.inventory-dashboard .job-equipment-table{min-width:1100px}}@media(max-width:768px){.inventory-dashboard .summary-grid{grid-template-columns:1fr}.inventory-dashboard .card-value{font-size:1.75rem}.inventory-dashboard .tabs{overflow-x:auto}.inventory-dashboard .tab{padding:.75rem 1rem;font-size:.9rem}.inventory-dashboard .form-row{grid-template-columns:1fr}}.employee-schedule{padding:2rem;max-width:1800px;margin:0 auto}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.schedule-header h1{font-size:2rem;color:#fff;margin:0;font-family:var(--font-heading)}.week-navigation{display:flex;gap:.75rem}.nav-button,.today-button{padding:.75rem 1.5rem;border:none;border-radius:0;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.nav-button{background:#1e1e1e;color:#03d8f3;border:2px solid #03D8F3}.nav-button:hover{background:#03d8f3;color:#121212}.today-button{background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212}.today-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #03d8f34d}.week-display{text-align:center;margin-bottom:2rem}.week-display h2{font-size:1.5rem;color:#a1a1a1;font-weight:600;margin:0;font-family:var(--font-heading)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1rem;margin-top:1.5rem}.calendar-day{background:#1e1e1e;border-radius:0;padding:0;box-shadow:0 2px 8px #0000004d;min-height:250px;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.day-header{text-align:center;padding:1rem;border-bottom:2px solid rgba(255,255,255,.1);background:#2a2a2a}.day-name{font-weight:700;color:#fff;font-size:.9rem;letter-spacing:.5px;margin-bottom:.25rem}.day-date{color:#666;font-size:.85rem}.calendar-day.today .day-header{background:linear-gradient(135deg,#03d8f3,#02b8cf);border-bottom:none}.calendar-day.today .day-name,.calendar-day.today .day-date{color:#121212}.day-content{padding:1rem;flex:1;overflow-y:auto}.job-card-compact{background:#2a2a2a;border-radius:0;padding:.75rem;margin-bottom:.75rem;border-left:4px solid #03D8F3;cursor:pointer;transition:all .2s}.job-card-compact:hover{transform:translateY(-2px);box-shadow:0 4px 12px #03d8f333;border-left-width:6px}.job-time{font-size:.75rem;color:#666;font-weight:600;margin-bottom:.5rem;display:flex;align-items:center;gap:.25rem}.job-number{font-weight:700;color:#03d8f3;font-size:.9rem;margin-bottom:.35rem}.job-customer{font-size:.85rem;color:#fff;font-weight:600;margin-bottom:.25rem}.job-system{font-size:.75rem;color:#a1a1a1;margin-bottom:.25rem}.job-location{font-size:.75rem;color:#666;margin-bottom:.5rem}.job-role-badge{display:inline-block;padding:.25rem .5rem;background:#03d8f3;color:#121212;border-radius:0;font-size:.7rem;font-weight:600;margin-top:.25rem}.no-jobs{text-align:center;padding:2rem 1rem;color:#666;font-size:.9rem}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#1e1e1e;border-radius:0;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid rgba(255,255,255,.1)}.modal-header h2{margin:0;font-size:1.5rem;color:#fff;font-family:var(--font-heading)}.close-button{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:.25rem .5rem;line-height:1;transition:all .2s}.close-button:hover{color:#ef476f;transform:scale(1.1)}.modal-body{padding:2rem;overflow-y:auto;flex:1}.details-section{margin-bottom:2rem}.details-section:last-child{margin-bottom:0}.details-section h3{font-size:1.1rem;color:#fff;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid rgba(255,255,255,.1);font-family:var(--font-heading)}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item.full-width{grid-column:1 / -1}.detail-label{font-size:.85rem;color:#666;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1rem;color:#fff;font-weight:500}.detail-value.role-badge{display:inline-block;padding:.5rem 1rem;background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;border-radius:0;font-weight:600;width:fit-content}.crew-list{display:flex;flex-direction:column;gap:.75rem}.crew-member{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#2a2a2a;border-radius:0;border-left:3px solid #03D8F3}.crew-name{font-weight:600;color:#fff;font-size:.95rem}.crew-role{font-size:.85rem;color:#a1a1a1;background:#333;padding:.25rem .75rem;border-radius:0;border:1px solid rgba(255,255,255,.1)}.notes-box{background:#fcee0c14;border-left:4px solid #FCEE0C;padding:1rem;border-radius:0;color:#a1a1a1;font-size:.95rem;line-height:1.6}.modal-footer{padding:1.5rem 2rem;border-top:2px solid rgba(255,255,255,.1);display:flex;justify-content:flex-end;gap:1rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:0;font-weight:600;cursor:pointer;font-size:.95rem;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #03d8f34d}.btn-secondary{background:#2a2a2a;color:#a1a1a1;border:2px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:#333;border-color:#fff3}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:50px;height:50px;border:4px solid #2A2A2A;border-top:4px solid #03D8F3;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state p{color:#666;font-size:1.1rem}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem;text-align:center}.error-state h2{color:#ef476f;margin:0}.error-state p{color:#666;max-width:500px}@media(max-width:1400px){.calendar-grid{grid-template-columns:repeat(5,1fr)}.calendar-day:nth-child(6),.calendar-day:nth-child(7){display:none}}@media(max-width:1024px){.calendar-grid{grid-template-columns:repeat(3,1fr)}.calendar-day:nth-child(n+4){display:none}.details-grid{grid-template-columns:1fr}}@media(max-width:768px){.employee-schedule{padding:1rem}.schedule-header{flex-direction:column;gap:1rem;align-items:stretch}.week-navigation{justify-content:space-between}.nav-button,.today-button{padding:.6rem 1rem;font-size:.85rem}.calendar-grid{grid-template-columns:1fr}.calendar-day{min-height:auto}.calendar-day:nth-child(n){display:flex}.modal-content{width:95%;max-height:95vh}.modal-body{padding:1.5rem}.modal-header,.modal-footer{padding:1rem 1.5rem}}@media(max-width:480px){.schedule-header h1{font-size:1.5rem}.week-display h2{font-size:1.2rem}.job-card-compact{padding:.6rem}.nav-button,.today-button{padding:.5rem .75rem;font-size:.8rem}}.document-upload-section{background:#03d8f30d;border:2px dashed rgba(3,216,243,.3);border-radius:0;padding:1.5rem;margin-bottom:1.5rem}.document-upload-section h4{margin:0 0 1rem;color:#fff;font-size:1rem;font-family:var(--font-heading)}.upload-form{display:flex;flex-direction:column;gap:.75rem}.file-input-wrapper{position:relative}.file-input{display:none}.file-input-label{display:inline-block;padding:.75rem 1.5rem;background:#2a2a2a;border:2px solid #03D8F3;border-radius:0;color:#03d8f3;font-weight:600;cursor:pointer;transition:all .2s;text-align:center;width:100%;box-sizing:border-box}.file-input-label:hover{background:#03d8f3;color:#121212;transform:translateY(-1px)}.description-input{padding:.75rem;border:2px solid rgba(3,216,243,.2);border-radius:0;font-size:.95rem;width:100%;box-sizing:border-box;background:#2a2a2a;color:#fff}.description-input:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 3px #03d8f326}.upload-button{padding:.75rem 1.5rem;background:#03d8f3;color:#121212;border:none;border-radius:0;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.upload-button:hover:not(:disabled){background:#02b8cf;transform:translateY(-1px);box-shadow:0 4px 12px #03d8f34d}.upload-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.no-documents{color:#666;font-style:italic;margin:1rem 0;text-align:center}.document-item-employee{display:flex;align-items:center;gap:1rem;padding:1rem;background:#2a2a2a;border-radius:0;border:1px solid rgba(255,255,255,.1);margin-bottom:.75rem;transition:all .2s}.document-item-employee:hover{background:#333;box-shadow:0 2px 8px #0000004d}.document-icon{font-size:2rem;flex-shrink:0}.document-info{flex:1;min-width:0}.document-name{font-weight:600;color:#fff;margin-bottom:.25rem;word-break:break-word}.document-meta{font-size:.8rem;color:#666;margin-bottom:.25rem}.document-description{font-size:.85rem;color:#a1a1a1;font-style:italic;margin-top:.5rem}.download-button-small{padding:.5rem 1rem;border:none;border-radius:0;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;background:#03d8f3;color:#121212;flex-shrink:0}.download-button-small:hover{background:#02b8cf;transform:translateY(-2px)}.add-note-section{background:#fcee0c0d;border:2px dashed rgba(252,238,12,.3);border-radius:0;padding:1.5rem;margin-bottom:1.5rem}.note-input{width:100%;padding:.75rem;border:2px solid rgba(252,238,12,.2);border-radius:0;font-size:.95rem;font-family:inherit;resize:vertical;margin-bottom:.75rem;box-sizing:border-box;background:#2a2a2a;color:#fff}.note-input:focus{outline:none;border-color:#fcee0c;box-shadow:0 0 0 3px #fcee0c1a}.note-input::placeholder{color:#666}.add-note-button{padding:.75rem 1.5rem;background:#fcee0c33;color:#fcee0c;border:1px solid rgba(252,238,12,.3);border-radius:0;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem;width:100%}.add-note-button:hover:not(:disabled){background:#fcee0c4d;transform:translateY(-1px);box-shadow:0 4px 12px #fcee0c26}.add-note-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.no-notes{color:#666;font-style:italic;margin:1rem 0;text-align:center}.notes-list{display:flex;flex-direction:column;gap:1rem}.note-item{background:#2a2a2a;border-left:4px solid #FCEE0C;border-radius:0;padding:1rem;transition:all .2s}.note-item:hover{background:#333;box-shadow:0 2px 8px #0000004d}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:1rem}.note-author{font-weight:600;color:#fff;font-size:.9rem}.note-time{font-size:.8rem;color:#666;white-space:nowrap}.note-content{color:#a1a1a1;font-size:.95rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}@media(max-width:768px){.document-upload-section{padding:1rem}.document-item-employee{flex-direction:column;align-items:flex-start}.download-button-small{width:100%}}.retailer-page-nav{display:flex;gap:0;margin-bottom:24px;border-bottom:2px solid rgba(255,255,255,.1)}.retailer-page-nav-tab{padding:12px 24px;background:transparent;border:none;cursor:pointer;font-size:.95rem;font-weight:600;color:#666;position:relative;transition:color .2s}.retailer-page-nav-tab:hover{color:#a1a1a1}.retailer-page-nav-tab.active{color:#03d8f3}.retailer-page-nav-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:#03d8f3;border-radius:2px 2px 0 0}.retailer-dashboard{padding:20px;max-width:1400px;margin:0 auto;min-height:calc(100vh - 80px);position:relative}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.header-info h1{font-size:1.8rem;color:#fff;margin:0 0 5px}.header-info p{color:#666;margin:0}.add-job-btn{background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;border:none;padding:12px 24px;border-radius:0;font-weight:600;cursor:pointer;transition:all .2s}.add-job-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #03d8f34d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#1e1e1e;border-radius:0;padding:24px;box-shadow:0 2px 8px #0000004d;text-align:center;border-left:4px solid #03D8F3}.stat-card.pending{border-left-color:#ffb627}.stat-card.in-progress{border-left-color:#03d8f3}.stat-card.completed{border-left-color:#06d6a0}.stat-number{font-size:2.5rem;font-weight:700;color:#fff}.stat-label{color:#666;font-size:.95rem;margin-top:5px}.error-message{background:#ef476f26;border:1px solid rgba(239,71,111,.4);color:#ef5350;padding:12px 16px;border-radius:0;margin-bottom:20px}.jobs-section{background:#1e1e1e;border-radius:0;padding:24px;box-shadow:0 2px 8px #0000004d}.jobs-section h2{font-size:1.3rem;color:#fff;margin:0 0 20px}.no-jobs{text-align:center;padding:40px 20px;color:#666}.no-jobs p{margin-bottom:20px}.jobs-table-container{overflow-x:auto}.jobs-table{width:100%;border-collapse:collapse}.jobs-table th,.jobs-table td{padding:12px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.jobs-table th{background:#2a2a2a;color:#a1a1a1;font-weight:600;font-size:.85rem;text-transform:uppercase}.jobs-table td{color:#fff}.jobs-table tr:hover{background:#2a2a2a}.job-id{font-weight:600;color:#03d8f3}.address{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-badge{display:inline-block;padding:4px 12px;border-radius:0;font-size:.8rem;font-weight:600}.status-review{background:#ffb62733;color:#ffb627}.status-ordered{background:#c2185b33;color:#f48fb1}.status-ready{background:#06d6a033;color:#06d6a0}.status-scheduled{background:#03d8f326;color:#03d8f3}.status-delayed{background:#f57c0033;color:#ffb74d}.status-invoiced{background:#9575cd33;color:#b39ddb}.status-overdue{background:#ef535033;color:#ef5350}.status-completed{background:#06d6a033;color:#06d6a0}.status-default{background:#333;color:#a1a1a1}.urgent-section{border-left:4px solid #EF5350;margin-bottom:20px}.urgent-section h2{display:flex;align-items:center;gap:8px;color:#ef5350}.urgent-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ef5350;color:#fff;border-radius:50%;font-size:.85rem;font-weight:700}.urgent-table{border:1px solid rgba(239,83,80,.3)}.urgent-row{background:#ef53501a}.urgent-row:hover{background:#ef535026!important}.urgent-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#ef5350;color:#fff;border-radius:50%;font-size:.7rem;font-weight:700;margin-right:6px}.view-btn{background:#03d8f3;color:#121212;border:none;padding:6px 16px;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s}.view-btn:hover{background:#02b8cf}.loading{text-align:center;padding:60px 20px;color:#666;font-size:1.1rem}.import-drag-overlay{position:fixed;inset:0;z-index:9999;background:#03d8f3d9;display:flex;align-items:center;justify-content:center;pointer-events:none}.import-drag-content{text-align:center;color:#121212}.import-drag-icon{font-size:4rem;margin-bottom:1rem}.import-drag-content h2{font-size:1.8rem;margin:0 0 .5rem;color:#121212}.import-drag-content p{font-size:1.1rem;margin:.25rem 0;opacity:.9}.import-drag-hint{font-size:.9rem!important;opacity:.7!important;margin-top:.75rem!important}.import-error-toast{position:fixed;top:20px;right:20px;z-index:9998;background:#ef535026;border:1px solid rgba(239,83,80,.4);color:#ef5350;padding:12px 20px;border-radius:0;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #0006;animation:slideIn .3s ease}.import-error-toast button{background:none;border:1px solid rgba(239,83,80,.4);color:#ef5350;padding:4px 10px;border-radius:0;cursor:pointer;font-size:.8rem;white-space:nowrap}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.import-modal-backdrop{position:fixed;inset:0;z-index:1000;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:20px}.import-modal{background:#1e1e1e;border-radius:0;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1)}.import-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.import-modal-header h2{margin:0;font-size:1.3rem;color:#fff}.import-modal-close{background:#2a2a2a;border:1px solid rgba(255,255,255,.1);color:#a1a1a1;padding:6px 16px;border-radius:0;cursor:pointer;font-size:.9rem;transition:all .2s}.import-modal-close:hover{background:#333;color:#fff}.import-modal-loading{padding:60px 24px;text-align:center;color:#666;font-size:1.1rem}.import-modal-error{margin:16px 24px;padding:12px 16px;background:#ef535026;border:1px solid rgba(239,83,80,.4);border-radius:0;color:#ef5350}.import-modal-summary{display:flex;align-items:center;gap:16px;padding:14px 24px;background:#2a2a2a;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap;flex-shrink:0}.import-summary-total{font-weight:600;color:#fff}.import-summary-approved{background:#06d6a033;color:#06d6a0;padding:3px 10px;border-radius:0;font-size:.85rem;font-weight:600}.import-summary-denied{background:#ef535033;color:#ef5350;padding:3px 10px;border-radius:0;font-size:.85rem;font-weight:600}.import-bulk-actions{margin-left:auto;display:flex;gap:8px}.import-bulk-btn{padding:5px 12px;border-radius:0;font-size:.8rem;font-weight:600;cursor:pointer;border:none;transition:all .2s}.import-bulk-btn.approve{background:#06d6a033;color:#06d6a0}.import-bulk-btn.approve:hover{background:#06d6a04d}.import-bulk-btn.deny{background:#ef535033;color:#ef5350}.import-bulk-btn.deny:hover{background:#ef53504d}.import-jobs-list{overflow-y:auto;flex:1;padding:16px 24px;display:flex;flex-direction:column;gap:10px}.import-job-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#2a2a2a;border:1px solid rgba(255,255,255,.1);border-radius:0;transition:all .2s}.import-job-card.denied{opacity:.5;background:#ef53501a;border-color:#ef53504d}.import-job-row-num{font-size:.75rem;color:#666;font-weight:600;min-width:44px;text-align:center}.import-job-main{flex:1;min-width:0}.import-job-summary{display:flex;flex-direction:column;gap:4px}.import-job-name{font-weight:600;color:#fff;font-size:.95rem}.import-job-details{display:flex;gap:12px;flex-wrap:wrap;font-size:.82rem;color:#666}.import-job-type{background:#9575cd33;color:#b39ddb;padding:1px 8px;border-radius:0;font-weight:600;font-size:.78rem}.import-job-actions{display:flex;gap:6px;flex-shrink:0}.import-action-btn{padding:5px 12px;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.8rem;font-weight:600;cursor:pointer;background:#1e1e1e;color:#a1a1a1;transition:all .15s}.import-action-btn.approve.active{background:#065f46;color:#fff;border-color:#065f46}.import-action-btn.approve:not(.active):hover{background:#06d6a033;border-color:#06d6a04d;color:#06d6a0}.import-action-btn.edit{color:#03d8f3;border-color:#03d8f34d}.import-action-btn.edit:hover{background:#03d8f31a}.import-action-btn.deny.active{background:#991b1b;color:#fff;border-color:#991b1b}.import-action-btn.deny:not(.active):hover{background:#ef535026;border-color:#ef53504d;color:#ef5350}.import-job-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:4px 0}.import-job-edit-grid label{display:flex;flex-direction:column;gap:3px;font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase}.import-job-edit-grid input,.import-job-edit-grid select{padding:7px 10px;border:1px solid rgba(255,255,255,.1);border-radius:0;font-size:.88rem;font-family:inherit;color:#fff;background:#1e1e1e}.import-job-edit-grid input:focus,.import-job-edit-grid select:focus{outline:none;border-color:#03d8f3;box-shadow:0 0 0 2px #03d8f326}.import-edit-done{grid-column:1 / -1;display:flex;justify-content:flex-end;margin-top:4px}.import-edit-done button{background:#03d8f3;color:#121212;border:none;padding:6px 16px;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:600}.import-edit-done button:hover{background:#02b8cf}.import-summary-duplicates{background:#ffb62733;color:#ffb627;padding:3px 10px;border-radius:0;font-size:.85rem;font-weight:600}.import-duplicates-section{border-top:2px solid rgba(255,182,39,.3);background:#ffb6270d}.import-duplicates-header{padding:14px 24px 0}.import-duplicates-header h3{margin:0 0 4px;font-size:1rem;color:#ffb627}.import-duplicates-header p{margin:0;font-size:.85rem;color:#a1a1a1}.import-duplicates-list{padding:12px 24px 16px;display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto}.import-duplicate-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#2a2a2a;border:1px solid rgba(255,182,39,.3);border-radius:0}.import-duplicate-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.import-duplicate-name{font-weight:600;color:#fff;font-size:.95rem}.import-duplicate-reason{display:flex;align-items:center;gap:8px;margin-top:2px}.import-duplicate-badge{background:#ffb62733;color:#ffb627;padding:1px 8px;border-radius:0;font-size:.75rem;font-weight:700;text-transform:uppercase}.import-duplicate-reason-text{font-size:.8rem;color:#a1a1a1}.import-duplicate-existing{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.import-duplicate-view-btn{background:none;border:1px solid rgba(255,255,255,.1);color:#03d8f3;padding:5px 12px;border-radius:0;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.import-duplicate-view-btn:hover{background:#03d8f31a;border-color:#03d8f34d}.import-duplicate-status{font-size:.75rem;color:#666;text-transform:capitalize}.import-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.import-cancel-btn{background:#2a2a2a;border:1px solid rgba(255,255,255,.1);color:#a1a1a1;padding:10px 20px;border-radius:0;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.import-cancel-btn:hover{background:#333;color:#fff}.import-submit-btn{background:linear-gradient(135deg,#065f46,#059669);color:#fff;border:none;padding:10px 24px;border-radius:0;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.import-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0596694d}.import-submit-btn:disabled{opacity:.5;cursor:not-allowed}.import-modal-result{padding:20px 24px;overflow-y:auto}.import-modal-result h3{margin:0 0 16px;font-size:1.1rem;color:#fff}.import-result-success{margin-bottom:20px}.import-result-success h4{color:#06d6a0;margin:0 0 10px;font-size:.95rem}.import-result-errors h4{color:#ef5350;margin:0 0 10px;font-size:.95rem}.import-result-table{width:100%;border-collapse:collapse;font-size:.88rem}.import-result-table th,.import-result-table td{padding:8px 12px;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.import-result-table th{background:#2a2a2a;font-weight:600;color:#a1a1a1;font-size:.8rem;text-transform:uppercase}.import-result-table td{color:#fff}.import-result-link{background:none;border:none;color:#03d8f3;font-weight:600;cursor:pointer;font-size:.88rem;padding:0;text-decoration:underline}.import-result-link:hover{color:#02b8cf}.import-error-row{background:#ef53501a}.header-actions{display:flex;gap:12px;align-items:center}.pylon-import-btn{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3);padding:12px 24px;border-radius:0;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem}.pylon-import-btn:hover{background:#8b5cf640;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf633}.pylon-modal{max-width:1000px}.pylon-projects-list{gap:0!important;padding:0!important}.pylon-project-card{border-bottom:1px solid rgba(255,255,255,.08)}.pylon-project-card.already-imported{opacity:.5}.pylon-project-header{display:flex;align-items:center;gap:12px;padding:14px 24px;cursor:pointer;transition:background .15s}.pylon-project-header:hover{background:#ffffff08}.pylon-project-expand{color:#666;font-size:.75rem;width:16px;flex-shrink:0}.pylon-project-main{flex:1;min-width:0}.pylon-project-name{font-weight:600;color:#fff;font-size:.95rem;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pylon-ref{font-size:.78rem;font-weight:400;color:#666;background:#ffffff0d;padding:1px 8px;border-radius:3px}.pylon-project-actions{flex-shrink:0}.pylon-imported-badge{display:inline-block;background:#ffb62726;color:#ffb627;padding:4px 10px;border-radius:0;font-size:.78rem;font-weight:600}.pylon-designs-section{background:#0003;border-top:1px solid rgba(255,255,255,.05)}.pylon-designs-list{display:flex;flex-direction:column}.pylon-design-row{display:flex;align-items:center;gap:12px;padding:10px 24px 10px 52px;border-bottom:1px solid rgba(255,255,255,.04)}.pylon-design-row:last-child{border-bottom:none}.pylon-design-info{flex:1;min-width:0}.pylon-design-label{font-weight:600;color:#fff;font-size:.9rem;display:flex;align-items:center;gap:8px}.pylon-primary-badge{background:#03d8f326;color:#03d8f3;padding:1px 6px;border-radius:3px;font-size:.7rem;font-weight:700;text-transform:uppercase}.pylon-load-more{display:block;width:100%;padding:14px;background:#ffffff0d;border:none;color:#03d8f3;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.pylon-load-more:hover:not(:disabled){background:#ffffff14}.pylon-load-more:disabled{color:#666;cursor:not-allowed}@media(max-width:768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{flex-direction:column;width:100%}.pylon-import-btn,.header-actions .add-job-btn{width:100%;text-align:center}.header-info h1{font-size:1.4rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-number{font-size:2rem}.jobs-table th,.jobs-table td{padding:10px 12px;font-size:.9rem}.import-modal{max-width:100%;max-height:100vh;border-radius:0}.import-modal-backdrop{padding:0}.import-job-card{flex-direction:column;align-items:flex-start}.import-job-actions{width:100%}.import-action-btn{flex:1;text-align:center}.import-job-edit-grid{grid-template-columns:1fr}.import-modal-summary{flex-direction:column;align-items:flex-start}.import-bulk-actions{margin-left:0;width:100%}.import-bulk-btn{flex:1;text-align:center}}.retailer-schedule-view{padding:2rem;max-width:1600px;margin:0 auto}.rsv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.rsv-header h1{margin:0;font-size:2rem;color:#fff}.rsv-header-left{display:flex;align-items:center;gap:1rem}.rsv-back-button{background:#333;color:#a1a1a1;border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.9rem;transition:all .2s}.rsv-back-button:hover{background:#2a2a2a;color:#fff;transform:translate(-3px)}.rsv-refresh-button{background:#03d8f3;color:#121212;border:none;padding:.75rem 1.5rem;border-radius:0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.rsv-refresh-button:hover{background:#02b8cf;transform:translateY(-2px)}.rsv-readonly-banner{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;background:#03d8f31a;border-radius:0;margin-bottom:1.5rem;border-left:4px solid #03D8F3}.rsv-banner-icon{font-size:1.5rem;line-height:1}.rsv-banner-content strong{display:block;font-size:1.05rem;color:#fff;margin-bottom:.25rem}.rsv-banner-content p{margin:0;font-size:.9rem;color:#a1a1a1}.rsv-tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:2px solid rgba(255,255,255,.1)}.rsv-tab{padding:1rem 2rem;background:transparent;border:none;cursor:pointer;font-size:1rem;font-weight:600;color:#666;position:relative;transition:color .2s}.rsv-tab:hover{color:#a1a1a1}.rsv-tab.active{color:#03d8f3}.rsv-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:#03d8f3;border-radius:2px 2px 0 0}.rsv-schedule-container{background:#1e1e1e;border-radius:0;padding:1.5rem;box-shadow:0 2px 8px #0000004d}.rsv-month-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.rsv-month-display{display:flex;align-items:center;gap:1rem}.rsv-month-display h2{margin:0;font-size:1.5rem;color:#fff}.rsv-month-nav-btn{background:#333;color:#a1a1a1;border:none;padding:.6rem 1.25rem;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s}.rsv-month-nav-btn:hover{background:#2a2a2a;color:#fff}.rsv-today-btn{background:#03d8f3;color:#121212;border:none;padding:.5rem 1rem;border-radius:0;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s}.rsv-today-btn:hover{background:#02b8cf}.rsv-info-banner{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;background:#2a2a2a;border-radius:0;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.1)}.rsv-info-content strong{display:block;font-size:1rem;color:#fff;margin-bottom:.25rem}.rsv-info-content p{margin:0;font-size:.85rem;color:#666}.rsv-team-schedule-wrapper{overflow-x:auto;margin-bottom:1rem}.rsv-team-schedule-table{width:100%;border-collapse:collapse;min-width:1200px}.rsv-team-schedule-table th{padding:.5rem .25rem;text-align:center;font-size:.75rem;font-weight:600;color:#a1a1a1;border-bottom:2px solid rgba(255,255,255,.1);background:#2a2a2a;position:sticky;top:0;z-index:10}.rsv-employee-header{text-align:left!important;padding-left:1rem!important;min-width:180px;position:sticky;left:0;background:#2a2a2a!important;z-index:11!important}.rsv-day-header{min-width:50px;max-width:70px}.rsv-day-header .rsv-day-name{color:#666;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.rsv-day-header .rsv-day-number{font-size:.9rem;font-weight:700;margin-top:2px}.rsv-day-header.weekend{background:#dc26261a}.rsv-day-header.weekend .rsv-day-name,.rsv-day-header.weekend .rsv-day-number{color:#ef5350}.rsv-day-header.today{background:#03d8f31a}.rsv-day-header.today .rsv-day-number{color:#121212;background:#03d8f3;border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;margin-top:2px}.rsv-team-schedule-table td{padding:.4rem .25rem;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:middle;height:60px}.rsv-employee-cell{padding-left:1rem!important;position:sticky;left:0;background:#1e1e1e;z-index:5;border-right:2px solid rgba(255,255,255,.1)}.rsv-employee-info{display:flex;flex-direction:column;gap:2px}.rsv-employee-name{font-weight:600;color:#fff;font-size:.9rem;white-space:nowrap}.rsv-employee-role{font-size:.75rem;color:#666}.rsv-schedule-cell{text-align:center;min-width:50px;max-width:70px}.rsv-schedule-cell.weekend{background:#dc26260d}.rsv-schedule-cell.today{background:#03d8f314}.rsv-schedule-cell.has-work{background:#06d6a01a}.rsv-schedule-cell.weekend.has-work{background:#ffb62726}.rsv-no-employees{text-align:center;color:#666;font-style:italic;padding:3rem!important}.rsv-assignments-container{display:flex;flex-direction:column;gap:2px;align-items:center}.rsv-assignment-chip{display:flex;flex-direction:column;align-items:center;background:#555;color:#fff;padding:.2rem .4rem;border-radius:0;font-size:.65rem;max-width:65px;overflow:hidden}.rsv-assignment-chip.own-job{background:#03d8f3;color:#121212;cursor:pointer;transition:all .2s}.rsv-assignment-chip.own-job:hover{transform:scale(1.05);box-shadow:0 2px 8px #03d8f366}.rsv-assignment-chip.lead{background:#666}.rsv-assignment-chip.lead.own-job{background:#02b8cf}.rsv-assignment-chip .rsv-job-ref{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.rsv-schedule-legend{display:flex;justify-content:center;gap:2rem;padding:1rem;background:#2a2a2a;border-radius:0;margin-top:1rem}.rsv-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#a1a1a1}.rsv-legend-color{width:16px;height:16px;border-radius:0}.rsv-today-marker{background:#03d8f3}.rsv-weekend-marker{background:#dc26261a;border:1px solid #EF5350}.rsv-booked-marker{background:#555}.rsv-own-job-marker{background:#03d8f3}.rsv-panel-booked-marker{background:linear-gradient(135deg,#555,#666)}.rsv-subcontractor-calendar{margin-bottom:2rem}.rsv-calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px}.rsv-calendar-day-header{padding:.75rem .5rem;text-align:center;font-weight:600;font-size:.85rem;color:#a1a1a1;background:#2a2a2a;border-radius:4px 4px 0 0}.rsv-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;background:#ffffff1a;border-radius:0 0 4px 4px;padding:2px}.rsv-calendar-cell{min-height:100px;background:#1e1e1e;padding:.5rem;position:relative}.rsv-calendar-cell.empty{background:#2a2a2a}.rsv-calendar-cell.weekend{background:#dc26260d}.rsv-calendar-cell.today{background:#03d8f314;box-shadow:inset 0 0 0 2px #03d8f3}.rsv-calendar-cell.has-installs{background:#06d6a01a}.rsv-calendar-cell.weekend.has-installs{background:#ffb62726}.rsv-cell-date{font-weight:600;font-size:.9rem;color:#fff;margin-bottom:.5rem}.rsv-calendar-cell.weekend .rsv-cell-date{color:#ef5350}.rsv-calendar-cell.today .rsv-cell-date{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#03d8f3;color:#121212;border-radius:50%}.rsv-cell-installs{display:flex;flex-direction:column;gap:4px}.rsv-panel-install-chip{display:flex;flex-direction:column;background:#555;color:#fff;padding:.35rem .5rem;border-radius:0;font-size:.75rem}.rsv-panel-install-chip.own-job{background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;cursor:pointer;transition:all .2s}.rsv-panel-install-chip.own-job:hover{transform:scale(1.03);box-shadow:0 2px 8px #03d8f366}.rsv-install-chip-label{font-weight:700;font-size:.7rem}.rsv-install-chip-customer{font-size:.65rem;opacity:.9}.rsv-upcoming-section{margin-top:2rem}.rsv-upcoming-section h3{margin:0 0 1rem;font-size:1.2rem;color:#fff;padding-bottom:.75rem;border-bottom:2px solid rgba(255,255,255,.1)}.rsv-no-upcoming{text-align:center;padding:2rem;color:#666;background:#2a2a2a;border-radius:0}.rsv-no-upcoming p{margin:0}.rsv-upcoming-list{display:flex;flex-direction:column;gap:.75rem}.rsv-upcoming-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#2a2a2a;border-radius:0;cursor:pointer;transition:all .2s;border:2px solid transparent}.rsv-upcoming-card:hover{background:#1e1e1e;border-color:#03d8f3;box-shadow:0 4px 12px #03d8f326;transform:translate(5px)}.rsv-install-date-badge{min-width:60px;text-align:center;padding:.75rem .5rem;background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;border-radius:0;font-weight:700;font-size:.85rem}.rsv-install-date-badge.pending{background:linear-gradient(135deg,#ffb627,#fcee0c);color:#121212}.rsv-install-details{flex:1}.rsv-install-job{font-weight:700;color:#03d8f3;font-size:1rem;margin-bottom:.25rem}.rsv-install-customer{font-weight:500;color:#fff;font-size:.95rem}.rsv-install-location{font-size:.85rem;color:#666;margin-top:.25rem}.rsv-install-meta{display:flex;gap:.75rem;margin-top:.25rem;align-items:center}.rsv-install-system{font-size:.8rem;color:#a1a1a1;background:#333;display:inline-block;padding:.15rem .5rem;border-radius:0}.rsv-status-badge{font-size:.75rem;font-weight:600;padding:.15rem .5rem;border-radius:0;text-transform:capitalize}.rsv-status-badge.scheduled{background:#06d6a033;color:#06d6a0}.rsv-status-badge.ready_to_schedule{background:#ffb62733;color:#ffb627}.rsv-status-badge.delayed{background:#ef535033;color:#ef5350}.rsv-loading-state,.rsv-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.rsv-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top-color:#03d8f3;border-radius:50%;animation:rsv-spin 1s linear infinite}@keyframes rsv-spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.rsv-month-navigation{flex-wrap:wrap;gap:1rem}.rsv-month-display{order:-1;width:100%;justify-content:center}.rsv-schedule-legend{flex-wrap:wrap;gap:1rem}}@media(max-width:768px){.retailer-schedule-view{padding:1rem}.rsv-header{flex-direction:column;gap:1rem;align-items:flex-start}.rsv-tabs{overflow-x:auto}.rsv-tab{padding:.75rem 1.25rem;font-size:.9rem;white-space:nowrap}.rsv-schedule-container{padding:1rem}.rsv-month-display h2{font-size:1.25rem}.rsv-calendar-cell{min-height:60px;padding:.25rem}.rsv-cell-date{font-size:.8rem}.rsv-panel-install-chip{font-size:.65rem;padding:.2rem .3rem}.rsv-install-chip-label{font-size:.6rem}.rsv-install-chip-customer{display:none}.rsv-upcoming-card{flex-wrap:wrap}.rsv-install-date-badge{min-width:50px;padding:.5rem;font-size:.75rem}.rsv-readonly-banner{flex-direction:column;gap:.5rem}}.retailer-settings{padding:20px;max-width:1000px;margin:0 auto;min-height:calc(100vh - 80px)}.retailer-settings .settings-header{margin-bottom:24px}.retailer-settings .settings-header h1{font-size:1.8rem;color:#fff;margin:0 0 5px}.retailer-settings .settings-header p{color:#666;margin:0}.settings-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:2px solid rgba(255,255,255,.1)}.settings-tab{padding:12px 24px;background:transparent;border:none;cursor:pointer;font-size:.95rem;font-weight:600;color:#666;position:relative;transition:color .2s}.settings-tab:hover{color:#a1a1a1}.settings-tab.active{color:#03d8f3}.settings-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:#03d8f3;border-radius:2px 2px 0 0}.settings-card{background:#1e1e1e;border:1px solid rgba(255,255,255,.08);border-radius:0;padding:24px;margin-bottom:20px}.settings-card h2{font-size:1.1rem;color:#fff;margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.settings-card h3{font-size:.95rem;color:#fff;margin:0 0 16px}.settings-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-form-grid.three-col{grid-template-columns:1fr 1fr 1fr}.settings-form-group{display:flex;flex-direction:column;gap:6px}.settings-form-group.full-width{grid-column:1 / -1}.settings-form-group label{font-size:.8rem;font-weight:600;color:#a1a1a1;text-transform:uppercase;letter-spacing:.5px}.settings-form-group input,.settings-form-group select,.settings-form-group textarea{background:#121212;border:1px solid rgba(255,255,255,.12);border-radius:0;padding:10px 12px;color:#fff;font-size:.9rem;font-family:inherit;transition:border-color .2s}.settings-form-group input:focus,.settings-form-group select:focus,.settings-form-group textarea:focus{outline:none;border-color:#03d8f3}.settings-form-group input:disabled{opacity:.5;cursor:not-allowed}.settings-form-group textarea{min-height:80px;resize:vertical}.settings-actions{display:flex;gap:12px;margin-top:20px}.settings-btn-primary{background:linear-gradient(135deg,#03d8f3,#02b8cf);color:#121212;border:none;padding:10px 24px;border-radius:0;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.settings-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #03d8f34d}.settings-btn-primary:disabled{opacity:.5;cursor:not-allowed}.settings-btn-secondary{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.15);padding:10px 24px;border-radius:0;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.settings-btn-secondary:hover{background:#ffffff1f}.settings-btn-danger{background:#ef476f26;color:#ef476f;border:1px solid rgba(239,71,111,.3);padding:8px 16px;border-radius:0;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s}.settings-btn-danger:hover{background:#ef476f40}.settings-btn-small{padding:6px 14px;font-size:.8rem}.settings-success{background:#06d6a01f;border:1px solid rgba(6,214,160,.3);color:#06d6a0;padding:12px 16px;border-radius:0;margin-bottom:16px;font-size:.9rem}.settings-error{background:#ef476f1f;border:1px solid rgba(239,71,111,.3);color:#ef476f;padding:12px 16px;border-radius:0;margin-bottom:16px;font-size:.9rem}.settings-loading{text-align:center;color:#a1a1a1;padding:40px;font-size:.95rem}.users-table-wrapper{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{text-align:left;font-size:.75rem;font-weight:600;color:#a1a1a1;text-transform:uppercase;letter-spacing:.5px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.1)}.users-table td{padding:12px;font-size:.9rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle}.users-table tr:hover td{background:#ffffff08}.user-badge{display:inline-block;padding:3px 10px;border-radius:3px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.user-badge.admin{background:#03d8f326;color:#03d8f3}.user-badge.user{background:#ffb62726;color:#ffb627}.user-badge.owner{background:#06d6a026;color:#06d6a0}.user-status{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.user-status.active{background:#06d6a0}.user-status.inactive{background:#ef476f}.user-actions{display:flex;gap:8px}.user-action-btn{background:#ffffff14;color:#a1a1a1;border:1px solid rgba(255,255,255,.1);padding:5px 12px;border-radius:3px;font-size:.8rem;cursor:pointer;transition:all .2s}.user-action-btn:hover{background:#ffffff1f;color:#fff}.user-action-btn.danger{color:#ef476f;border-color:#ef476f33}.user-action-btn.danger:hover{background:#ef476f26}.users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.users-header h2{margin:0;padding:0;border:none}.settings-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000}.settings-modal{background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:0;padding:28px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.settings-modal h3{font-size:1.1rem;color:#fff;margin:0 0 20px}.password-section{margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.pylon-status-row{display:flex;align-items:center;gap:12px}.pylon-status-badge{display:inline-block;padding:4px 12px;border-radius:0;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.pylon-status-badge.connected{background:#06d6a026;color:#06d6a0}.pylon-status-badge.disconnected{background:#ffffff14;color:#a1a1a1}.pylon-connect-form .settings-form-group{margin-bottom:0}@media(max-width:768px){.retailer-settings{padding:16px}.settings-form-grid,.settings-form-grid.three-col{grid-template-columns:1fr}.settings-tabs{overflow-x:auto}.settings-tab{padding:10px 16px;font-size:.85rem;white-space:nowrap}.settings-modal{width:95%;padding:20px}.users-header{flex-direction:column;gap:12px;align-items:flex-start}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:2rem}.login-container{background:var(--color-surface);box-shadow:0 20px 60px #00000080;padding:3rem;width:100%;max-width:450px;border:1px solid var(--color-border)}.login-header{text-align:center;margin-bottom:2rem}.login-logo{max-height:180px;margin-bottom:1.5rem;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}.login-header h1{font-size:1.5rem;color:#fff;margin:0 0 .5rem;font-weight:700;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.1em}.login-header p{color:var(--color-text-lighter);font-size:.75rem;margin:0;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em}.login-form{display:flex;flex-direction:column;gap:1.5rem}.error-message{background:#ef476f26;border:1px solid rgba(239,71,111,.4);border-left:3px solid var(--color-danger);color:var(--color-danger);padding:1rem;font-size:.85rem;font-family:var(--font-mono)}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:700;color:#fff;font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.form-group input{padding:.75rem 1rem;border:1px solid var(--color-border);font-size:.95rem;transition:all .2s;background:var(--color-surface-hover);color:#fff;font-family:var(--font-body)}.form-group input::placeholder{color:var(--color-text-lighter)}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #03d8f326}.remember-me{display:flex;align-items:center}.remember-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.8rem;color:var(--color-text-light);-webkit-user-select:none;user-select:none;font-family:var(--font-body)}.remember-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.login-button{padding:1rem;background:var(--color-primary);color:var(--color-bg);border:none;font-weight:700;font-size:.85rem;cursor:pointer;transition:all .2s;margin-top:.5rem;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.15em}.login-button:hover:not(:disabled){filter:brightness(1.1)}.login-button:disabled{opacity:.6;cursor:not-allowed}.demo-info{background:var(--color-surface-hover);border:1px solid var(--color-border);padding:1.25rem;margin-top:.5rem}.demo-title{font-weight:700;color:#fff;margin:0 0 1rem;text-align:center;font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em}.account-option{background:var(--color-surface-elevated);border:1px solid var(--color-border);padding:.75rem;margin-bottom:.75rem}.account-option:last-child{margin-bottom:0}.account-option strong{display:block;color:#fff;font-size:.85rem;margin-bottom:.5rem;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em}.account-option p{margin:.15rem 0;font-size:.75rem;color:var(--color-text-light);font-family:var(--font-mono)}.account-desc{font-size:.7rem!important;color:var(--color-text-lighter)!important;font-style:italic;margin-top:.25rem!important;font-family:var(--font-body)!important}@media(max-width:480px){.login-page{padding:1rem}.login-container{padding:2rem 1.5rem}.login-header h1{font-size:1.25rem}}:root{--color-primary: #03D8F3;--color-primary-dark: #02b8cf;--color-secondary: #1E1E1E;--color-accent-alt: #FCEE0C;--color-success: #06D6A0;--color-warning: #FFB627;--color-danger: #EF476F;--color-bg: #121212;--color-surface: #1E1E1E;--color-surface-hover: #2A2A2A;--color-surface-elevated: #333333;--color-border: rgba(255, 255, 255, .1);--color-text: #ffffff;--color-text-light: #A1A1A1;--color-text-lighter: #666666;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4);--radius-sm: 0;--radius-md: 2px;--radius-lg: 2px;--font-heading: "Barlow Condensed", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "Roboto Mono", monospace}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.data-point,.mono{font-family:var(--font-mono)}.blueprint-grid{background-image:linear-gradient(to right,rgba(3,216,243,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(3,216,243,.05) 1px,transparent 1px);background-size:40px 40px}::selection{background:var(--color-primary);color:var(--color-bg)}.app{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.main-content{overflow-y:auto;height:100vh}.content{padding:40px}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-slide-up{animation:slideInUp .4s ease-out backwards}.animate-fade-in{animation:fadeIn .3s ease-out}@media(max-width:1024px){.app{grid-template-columns:1fr}.content{padding:20px}}
