@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{--nx-bg: #f8f9fb;--nx-surface: #ffffff;--nx-surface-hover: #f1f3f7;--nx-text: #1a1d26;--nx-text-secondary: #6b7280;--nx-text-muted: #9ca3af;--nx-border: #e5e7eb;--nx-primary: #4f46e5;--nx-primary-light: rgba(79, 70, 229, .08);--nx-success: #10b981;--nx-success-light: rgba(16, 185, 129, .08);--nx-warning: #f59e0b;--nx-warning-light: rgba(245, 158, 11, .08);--nx-danger: #ef4444;--nx-danger-light: rgba(239, 68, 68, .08);--nx-info: #3b82f6;--nx-info-light: rgba(59, 130, 246, .08);--nx-radius: 16px;--nx-radius-sm: 10px;--nx-radius-xs: 6px;--nx-shadow-sm: 0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.06);--nx-shadow-md: 0 4px 12px rgba(0,0,0,.06), 0 2px 4px rgba(0,0,0,.04);--nx-shadow-lg: 0 8px 24px rgba(0,0,0,.08);--nx-bottom-nav-h: 72px;--nx-top-header-h: 56px;--nx-safe-bottom: env(safe-area-inset-bottom, 0px)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;width:100%;overflow:hidden;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--nx-bg);color:var(--nx-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports (padding: env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top)}}.nx-page-scroll{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--nx-bottom-nav-h) + var(--nx-safe-bottom) + 16px)}.nx-status-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap}.nx-status-chip--dispatched{background:var(--nx-info-light);color:var(--nx-info)}.nx-status-chip--enroute{background:var(--nx-warning-light);color:var(--nx-warning)}.nx-status-chip--onsite{background:var(--nx-primary-light);color:var(--nx-primary)}.nx-status-chip--diagnosing{background:#a855f714;color:#a855f7}.nx-status-chip--waiting{background:#ec489914;color:#ec4899}.nx-status-chip--complete{background:var(--nx-success-light);color:var(--nx-success)}.nx-status-chip--scheduled{background:var(--nx-info-light);color:var(--nx-info)}.nx-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.nx-priority-dot--high{background:var(--nx-danger);animation:nx-pulse 1.5s infinite}.nx-priority-dot--normal{background:var(--nx-warning)}.nx-priority-dot--low{background:var(--nx-success)}@keyframes nx-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.nx-page-enter{opacity:0;transform:translateY(8px)}.nx-page-enter-active{opacity:1;transform:translateY(0);transition:all .25s ease-out}.nx-touch-btn{min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--nx-radius-sm);font-family:inherit;font-weight:700;font-size:15px;cursor:pointer;transition:all .15s ease;padding:12px 24px;width:100%}.nx-touch-btn:active{transform:scale(.97)}.nx-touch-btn--primary{background:var(--nx-primary);color:#fff}.nx-touch-btn--primary:hover{background:#4338ca}.nx-touch-btn--success{background:var(--nx-success);color:#fff}.nx-touch-btn--success:hover{background:#059669}.nx-touch-btn--warning{background:var(--nx-warning);color:#fff}.nx-touch-btn--warning:hover{background:#d97706}.nx-touch-btn--danger{background:var(--nx-danger);color:#fff}.nx-touch-btn--outline{background:var(--nx-surface);color:var(--nx-text);border:1.5px solid var(--nx-border)}.nx-touch-btn--outline:hover{background:var(--nx-surface-hover)}.nx-hero-card{background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:var(--nx-radius);padding:20px;color:#fff;position:relative;overflow:hidden;box-shadow:0 8px 32px #4f46e540}.nx-hero-card:after{content:"";position:absolute;top:-30%;right:-20%;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%);border-radius:50%}.nx-job-card{background:var(--nx-surface);border-radius:var(--nx-radius-sm);padding:14px 16px;border:1px solid var(--nx-border);cursor:pointer;transition:all .15s ease;position:relative}.nx-job-card:active{transform:scale(.98);background:var(--nx-surface-hover)}.nx-job-card--active{border-left:4px solid var(--nx-primary)}.nx-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--nx-bottom-nav-h) + var(--nx-safe-bottom));padding-bottom:var(--nx-safe-bottom);background:var(--nx-surface);border-top:1px solid var(--nx-border);display:flex;align-items:center;justify-content:space-around;z-index:1000;box-shadow:0 -2px 12px #0000000a}.nx-bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 16px;border:none;background:none;cursor:pointer;color:var(--nx-text-muted);font-family:inherit;font-size:11px;font-weight:600;transition:color .15s;min-width:64px;position:relative}.nx-bottom-nav__item--active{color:var(--nx-primary)}.nx-bottom-nav__item--active:before{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--nx-primary);border-radius:0 0 3px 3px}.nx-bottom-nav__badge{position:absolute;top:2px;right:8px;width:18px;height:18px;border-radius:50%;background:var(--nx-danger);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center}.nx-top-header{height:var(--nx-top-header-h);display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--nx-surface);border-bottom:1px solid var(--nx-border);position:sticky;top:0;z-index:100}.nx-section-title{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--nx-text-muted);padding:16px 16px 8px}.nx-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;color:var(--nx-text-muted)}.nx-empty__icon{font-size:48px;opacity:.3;margin-bottom:12px}.nx-empty__text{font-size:14px;font-weight:500}.nx-filter-pills{display:flex;gap:8px;padding:12px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch}.nx-filter-pills::-webkit-scrollbar{display:none}.nx-filter-pill{padding:6px 16px;border-radius:20px;border:1.5px solid var(--nx-border);background:var(--nx-surface);font-family:inherit;font-size:13px;font-weight:600;color:var(--nx-text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s}.nx-filter-pill--active{background:var(--nx-primary);color:#fff;border-color:var(--nx-primary)}.nx-detail-header{background:linear-gradient(135deg,#1e1b4b,#312e81,#4f46e5);padding:20px 16px;color:#fff;position:relative;overflow:hidden}.nx-detail-header:after{content:"";position:absolute;bottom:-40px;right:-20px;width:160px;height:160px;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);border-radius:50%}.nx-workflow-step{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--nx-radius-sm);border:1.5px solid var(--nx-border);background:var(--nx-surface);cursor:pointer;transition:all .15s}.nx-workflow-step:active{transform:scale(.98)}.nx-workflow-step--active{border-color:var(--nx-primary);background:var(--nx-primary-light)}.nx-workflow-step--done{border-color:var(--nx-success);background:var(--nx-success-light)}.nx-workflow-step__dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.nx-upload-progress{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--nx-surface);border:1px solid var(--nx-border);border-radius:12px;font-size:12px;font-weight:600}.nx-upload-progress__bar{flex:1;height:4px;background:var(--nx-border);border-radius:4px;overflow:hidden}.nx-upload-progress__fill{height:100%;background:linear-gradient(90deg,var(--nx-primary),var(--nx-primary-light, #818cf8));border-radius:4px;transition:width .3s ease}
