:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f5f0ff;background:#050508;color-scheme:dark;--ink: #f5f0ff;--muted: #aaa1b8;--subtle: #7d728c;--surface: rgba(17, 16, 24, .9);--surface-strong: rgba(25, 22, 34, .98);--surface-soft: rgba(14, 12, 20, .78);--line: rgba(168, 85, 247, .28);--line-strong: rgba(217, 70, 239, .58);--primary: #a855f7;--primary-hover: #c084fc;--secondary: #d946ef;--secondary-hover: #f0abfc;--nav: #050507;--nav-active: rgba(168, 85, 247, .18);--success: #34d399;--warning: #fbbf24;--danger: #fb7185;--glow: 0 0 0 1px rgba(168, 85, 247, .24), 0 20px 52px rgba(0, 0, 0, .46), 0 0 42px rgba(217, 70, 239, .11);--app-bg: #050508;--card: rgba(255, 255, 255, .05);--card-border: rgba(255, 255, 255, .12);--text: #f5f0ff;--muted2: #9b8fc0;--pos: #34d399;--neg: #f87171;--warn: #fbbf24;--accent2: #7c5cff}[data-theme=light]{color:#111;color-scheme:light;--ink: #111111;--muted: #4b5563;--subtle: #6b7280;--surface: #ffffff;--surface-strong: #ffffff;--surface-soft: #f7f7f8;--line: #e5e7eb;--line-strong: #d1d5db;--nav: #ffffff;--nav-active: rgba(168, 85, 247, .14);--glow: 0 1px 2px rgba(0, 0, 0, .05), 0 10px 28px rgba(0, 0, 0, .06);--app-bg: #ffffff;--card: #ffffff;--card-border: #e5e7eb;--text: #111111;--muted2: #555555;--pos: #111111;--neg: #111111;--warn: #111111;--success: #111111;--warning: #111111;--danger: #111111;--primary: #a855f7;--primary-hover: #9333ea;--secondary: #a855f7;--secondary-hover: #7c3aed;--accent2: #a855f7}[data-theme=light] body{background:#fff}[data-theme=light] aside{background:#fff;border-right:1px solid #e5e7eb;box-shadow:4px 0 24px #0000000d;color:#111}[data-theme=light] aside .brand{color:var(--primary)}[data-theme=light] .user-box span{color:#555}[data-theme=light] button:not(.primary){background:#fff;border-color:#d1d5db;color:#111}[data-theme=light] button:not(.primary):hover{background:#f3f4f6;border-color:var(--primary)}[data-theme=light] .user-box button{background:#fff;color:#111}[data-theme=light] nav button{color:#374151}[data-theme=light] nav button:hover,[data-theme=light] nav button.active{color:#6b21a8}[data-theme=light] input,[data-theme=light] select,[data-theme=light] textarea{background:#fff;border-color:#d1d5db;color:#111}[data-theme=light] label,[data-theme=light] .label-text{color:#374151}[data-theme=light] .row-button,[data-theme=light] .wo-row,[data-theme=light] .inventory-row,[data-theme=light] .field-card{background:#fff}[data-theme=light] .row-button:hover,[data-theme=light] .row-button.selected,[data-theme=light] .wo-row.selected,[data-theme=light] .field-card:hover,[data-theme=light] .field-card.selected{background:#a855f71a}[data-theme=light] .field-card span,[data-theme=light] .field-summary p,[data-theme=light] .dispatch-card span{color:#374151}[data-theme=light] .facts span,[data-theme=light] .mini-row span,[data-theme=light] .module-points span,[data-theme=light] .status-pill,[data-theme=light] .module-icon{color:#6b21a8}[data-theme=light] .metric.warning,[data-theme=light] .metric.success{border-top-color:#111}[data-theme=light] .error,[data-theme=light] .success-note{background:#f3f4f6;border-color:#d1d5db;color:#111}[data-theme=light] .danger{background:#fff;border-color:#d1d5db;color:#111}[data-theme=light] .danger:hover{background:#f3f4f6;border-color:#9ca3af}[data-theme=light] .crm-assets-panel,[data-theme=light] .crm-assets-picker,[data-theme=light] .crm-assets-card,[data-theme=light] .crm-assets-form-card{background:#fff!important;border-color:#e5e7eb!important;color:#111!important}[data-theme=light] .crm-assets-panel input,[data-theme=light] .crm-assets-panel select,[data-theme=light] .crm-assets-panel textarea,[data-theme=light] .crm-assets-picker select,[data-theme=light] .crm-assets-form input,[data-theme=light] .crm-assets-form select,[data-theme=light] .crm-assets-form textarea{background:#fff!important;border-color:#d1d5db!important;color:#111!important}[data-theme=light] .fieldflow-estimate-message,[data-theme=light] .dispatch-message,[data-theme=light] .settings-message,[data-theme=light] .technician-roster-message,[data-theme=light] .timecards-message,[data-theme=light] .fieldflow-po-message,[data-theme=light] .crm-assets-message{background:#f3f4f6!important;border-color:#d1d5db!important;color:#111!important}[data-theme=light] .fieldflow-estimate-message.error,[data-theme=light] .dispatch-message.error,[data-theme=light] .settings-message.error,[data-theme=light] .technician-roster-message.error,[data-theme=light] .timecards-message.error,[data-theme=light] .fieldflow-po-message.error,[data-theme=light] .crm-assets-message.error,[data-theme=light] .crm-assets-error{background:#f3f4f6!important;border-color:#9ca3af!important;color:#111!important}[data-theme=light] .fieldflow-estimate-pill,[data-theme=light] .fieldflow-po-pill,[data-theme=light] .settings-pill,[data-theme=light] .technician-roster-pill,[data-theme=light] .timecards-pill,[data-theme=light] .crm-assets-facts span{color:#6b21a8!important}[data-theme=light] .fieldflow-estimates-icon,[data-theme=light] .timecards-shortcut-icon,[data-theme=light] .purchase-orders-shortcut-icon,[data-theme=light] .settings-shortcut-icon{background:var(--primary)!important;color:#fff!important;box-shadow:none!important}[data-theme=colorblind]{--success: #56b4e9;--warning: #f0e442;--danger: #e69f00;--pos: #56b4e9;--neg: #e69f00;--warn: #f0e442;--primary: #56b4e9;--primary-hover: #8fd3f4;--accent2: #56b4e9;--nav-active: rgba(86, 180, 233, .18)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(135deg,rgba(168,85,247,.14) 0%,transparent 30%),linear-gradient(315deg,rgba(217,70,239,.12) 0%,transparent 34%),repeating-linear-gradient(90deg,rgba(192,132,252,.045) 0 1px,transparent 1px 96px),repeating-linear-gradient(0deg,rgba(217,70,239,.035) 0 1px,transparent 1px 96px),#050508}button,input,select,textarea{font:inherit}button{border:1px solid rgba(192,132,252,.24);border-radius:8px;padding:9px 12px;background:#1f1c2af0;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;box-shadow:inset 0 1px #ffffff0b;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}button:hover{background:#302943fa;border-color:#c084fc80;box-shadow:0 0 18px #a855f72e,inset 0 1px #ffffff12}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(168,85,247,.28);outline-offset:1px}button:disabled{cursor:not-allowed;opacity:.55}.primary{background:linear-gradient(135deg,#a855f7fa,#d946efe6);border-color:#d8b4fee0;color:#09050f;box-shadow:0 0 26px #a855f74d}.primary:hover{background:linear-gradient(135deg,var(--primary-hover),var(--secondary-hover));border-color:#f3e8fff2;color:#09050f}.danger{background:#4c1625eb;border-color:#fb71856b;color:#fecdd3}.danger:hover{background:#6f1f31f5;border-color:#fb7185a8}.icon-button{width:38px;height:38px;padding:0}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(168,85,247,.16),transparent 35%),repeating-linear-gradient(90deg,rgba(192,132,252,.05) 0 1px,transparent 1px 82px),#050508}.auth-card,.panel,.empty,.table,.metric,.lane{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--glow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-card{width:min(460px,100%);padding:26px}.auth-card.wide{width:min(760px,100%)}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:900;color:var(--primary-hover);text-shadow:0 0 18px rgba(168,85,247,.42)}.brand svg{width:26px;height:26px;filter:drop-shadow(0 0 9px rgba(168,85,247,.52))}.stack{display:flex;flex-direction:column;gap:16px}.grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.wide-field{grid-column:1 / -1}label,.label-text{display:flex;flex-direction:column;gap:6px;color:#b9aec9;font-weight:750;font-size:13px}input,select,textarea{border:1px solid rgba(192,132,252,.28);border-radius:8px;padding:11px;background:#08070cdb;color:var(--ink);width:100%;box-shadow:inset 0 1px #ffffff09}input:focus,select:focus,textarea:focus{border-color:var(--secondary)}textarea{min-height:86px;resize:vertical}.error{background:#4c1625eb;border:1px solid rgba(251,113,133,.48);color:#fecdd3;padding:12px;border-radius:8px;grid-column:1 / -1}.success-note{background:#064e3bb3;border:1px solid rgba(52,211,153,.46);color:#bbf7d0;padding:12px;border-radius:8px}.muted{color:var(--muted)}.app-shell{height:100vh;overflow:hidden;display:grid;grid-template-columns:248px 1fr}aside{background:linear-gradient(180deg,#0f0d16fc,#050507fc),var(--nav);color:#fbf8ff;padding:18px;display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh;border-right:1px solid rgba(168,85,247,.28);box-shadow:12px 0 34px #00000061}aside .brand{color:var(--primary-hover)}nav{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:4px;scrollbar-width:none;-ms-overflow-style:none}nav::-webkit-scrollbar{width:0;height:0;display:none}nav>div{display:flex;flex-direction:column;gap:4px}nav button{width:100%;justify-content:flex-start;background:transparent;border-color:transparent;color:#cfc4dc}nav button>svg,nav button>span:first-child:not(:only-child),nav button>img:first-child{flex:0 0 20px;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center}nav button:hover,nav button.active{background:var(--nav-active);border-color:#a855f76b;color:#fbf8ff}nav button.active{box-shadow:inset 3px 0 0 var(--primary),0 0 18px #a855f729}.user-box{margin-top:auto;border-top:1px solid rgba(192,132,252,.2);padding-top:16px;display:flex;flex-direction:column;gap:8px}.user-box span{color:#b9aec9;font-size:13px}.user-box button{background:#1f1c2af0;color:#fbf8ff}.content{padding:24px;width:100%;height:100vh;overflow-y:auto}.content>*{max-width:1360px;margin-left:auto;margin-right:auto}h1,h2,h3,p{margin-top:0}h1{font-size:28px;color:var(--ink);text-shadow:0 0 24px rgba(168,85,247,.24)}h2{font-size:20px;color:var(--ink)}[data-theme=light] h1,[data-theme=light] h2{text-shadow:none}h3{font-size:16px;margin-bottom:6px;color:var(--ink)}.page-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{display:flex;flex-direction:column;gap:8px;padding:16px;border-top:3px solid rgba(168,85,247,.78)}.metric span{color:var(--muted)}.metric strong{font-size:28px;color:var(--ink)}.metric.warning{border-top-color:#fbbf24db}.metric.warning strong{color:var(--warning)}.metric.success{border-top-color:#34d399db}.metric.success strong{color:var(--success)}.module-panel{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}.module-icon{width:58px;height:58px;border-radius:8px;background:#a855f729;color:var(--primary-hover);display:grid;place-items:center;border:1px solid rgba(168,85,247,.32);box-shadow:inset 0 0 22px #a855f71a}.module-points{display:flex;flex-wrap:wrap;gap:8px}.module-points span{border-radius:999px;background:#a855f71f;color:#e9d5ff;border:1px solid rgba(168,85,247,.24);font-size:12px;font-weight:800;padding:6px 9px}.panel{padding:16px}.empty{text-align:center;color:var(--muted);padding:34px 18px}.split{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(360px,1.05fr);gap:16px;align-items:start}.table-panel,.detail-panel{min-width:0}.table{overflow:hidden}.row-button,.wo-row,.inventory-row{width:100%;display:grid;grid-template-columns:1.3fr .7fr .5fr;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid rgba(192,132,252,.14);background:#0a090fbd;color:var(--ink);text-align:left;border-radius:0}.row-button:hover,.row-button.selected,.wo-row.selected{background:#581c8733}.row-button.selected,.wo-row.selected{box-shadow:inset 3px 0 0 var(--primary),inset 0 0 28px #a855f714}.row-button span,.inventory-row span{min-width:0}.row-button strong,.wo-row strong,.inventory-row strong{display:block;color:var(--ink)}small{display:block;color:var(--muted);margin-top:4px}.wo-row{grid-template-columns:1.4fr 190px 44px}.wo-row>button:first-child{display:block;text-align:left;justify-content:flex-start;background:transparent;border-color:transparent;padding:0;box-shadow:none}.inventory-row{grid-template-columns:1.2fr .5fr .5fr 44px}.detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.facts{display:flex;flex-wrap:wrap;gap:8px}.facts span,.mini-row span{background:#a855f721;border:1px solid rgba(168,85,247,.24);border-radius:8px;padding:5px 8px;color:#e9d5ff;font-size:12px}.mini-row{display:flex;justify-content:space-between;gap:10px;border-top:1px solid rgba(192,132,252,.14);padding:10px 0;color:var(--ink);text-decoration:none}.nested-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-top:1px solid rgba(192,132,252,.14);padding-top:14px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.check{flex-direction:row;align-items:center;background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:8px}.check input{width:auto}.button-row{display:flex;flex-wrap:wrap;gap:8px}.dispatch-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;align-items:start}.lane{padding:14px;min-height:160px;border-top:3px solid rgba(168,85,247,.8)}.dispatch-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:8px;padding:12px;margin-top:10px;background:var(--surface-soft)}.dispatch-card span{color:var(--muted)}.tech-list{display:grid;gap:10px}.field-card{width:100%;align-items:stretch;background:#0a090fbd;border:1px solid var(--line);color:var(--ink);flex-direction:column;text-align:left;justify-content:flex-start;padding:14px}.field-card:hover,.field-card.selected{background:#581c8733;border-color:#a855f78f}.field-card span{color:#cfc4dc}.field-summary{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:12px}.field-summary p{margin:8px 0 0;color:#cfc4dc}.status-pill{background:#a855f729;color:var(--primary-hover);border:1px solid rgba(168,85,247,.34);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}a{color:var(--secondary-hover)}::selection{background:#a855f75c;color:#fbf8ff}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.three-col,.module-panel{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{grid-template-columns:1fr;height:auto;overflow:visible}aside{position:relative;height:auto}nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.content{padding:14px;height:auto;overflow:visible}.cards,.grid-form,.nested-form,.check-grid,.row-button,.wo-row,.inventory-row{grid-template-columns:1fr}.page-head,.detail-head{align-items:stretch;flex-direction:column}.auth-card{padding:20px}}
