:root{font-family:Inter,ui-sans-serif,system-ui,Arial,sans-serif;color:#e9ebef;background:#080a0e;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.app{min-height:100vh}.topbar{height:64px;border-bottom:1px solid #282b34;display:flex;align-items:center;justify-content:space-between;padding:0 26px;background:#101217}.brand{font-size:17px;font-weight:800}.brand span{color:#ffbf00}.userbar{display:flex;gap:14px;align-items:center;color:#c7cad3}.pill{border:1px solid #414651;border-radius:30px;padding:5px 10px;font-size:12px}.layout{display:flex;min-height:calc(100vh - 64px)}aside{width:230px;flex-shrink:0;background:#101217;border-right:1px solid #252830;padding:20px 12px}aside button{background:none;color:#b1b5bf;width:100%;border:0;text-align:left;padding:13px 15px;border-radius:9px;margin-bottom:6px}aside button.active,aside button:hover{background:#272b35;color:#fff}main{flex:1;min-width:0;padding:30px 34px}.title{font-size:24px;font-weight:760;margin:0 0 8px}.muted{color:#9298a5}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:22px 0}.toolbar input{max-width:330px}.field,input,select,textarea{background:#12151b;color:#f0f1f4;border:1px solid #3b3f49;border-radius:8px;padding:11px 12px;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:#b0b7c3}textarea{min-height:90px;resize:vertical}label{display:block;margin-bottom:7px;font-size:12px;color:#cbd0d7}select{max-width:260px}button.primary{background:#f2f3f5;border:1px solid #fff;color:#111217;border-radius:8px;padding:11px 16px;font-weight:650}button.secondary{background:#21252d;border:1px solid #424651;color:#f4f5f7;border-radius:8px;padding:10px 14px}button.danger{color:#ff7777;border:1px solid #893f49;background:#25151a;border-radius:8px;padding:9px 13px}.tabs{display:flex;background:#202229;border-radius:9px;padding:4px;gap:5px;margin-top:24px}.tabs button{flex:1;background:transparent;border:0;color:#a2a5af;padding:11px;border-radius:7px}.tabs button.active{background:#363941;color:white}.tablewrap{width:100%;overflow-x:auto;border:1px solid #242832;border-radius:10px}table{width:100%;border-collapse:collapse;min-width:850px}th,td{text-align:left;padding:15px 13px;border-bottom:1px solid #262931;font-size:12px;vertical-align:top}th{color:#a7acb6;font-weight:600}tr:hover td{background:#171a20}td strong{font-weight:650}.status{font-weight:650}.status.in_progress{color:#e2777c}.status.completed{color:#32af79}.status.cancelled{color:#a2a4ae}.empty{padding:50px;text-align:center;color:#9298a5}.actions{display:flex;gap:7px;flex-wrap:wrap}.actions button{padding:6px 9px;font-size:12px;border:1px solid #444958;border-radius:5px;background:#1c2029;color:#ddd}.modalShade{position:fixed;inset:0;background:#000c;z-index:10;display:flex;align-items:center;justify-content:center;padding:18px}.modal{background:#0d1015;border:1px solid #373b45;border-radius:13px;width:min(870px,100%);max-height:92vh;overflow-y:auto;padding:26px}.modal h2{margin:0 0 4px;font-size:19px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:17px}.formrow{margin:17px 0}.modalFooter{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}.error{background:#402024;color:#ffc6cd;border:1px solid #8f4450;padding:10px 12px;border-radius:8px;margin:12px 0}.success{background:#14382b;color:#b2efd1;border:1px solid #28674b;padding:10px 12px;border-radius:8px;margin:12px 0}.loginScreen{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 60% 0%,#1c2940,#090b10 54%)}.loginBox{background:#151921;padding:35px;width:min(420px,100%);border-radius:18px;border:1px solid #353b49}.loginBox h1{font-size:25px}.loginBox input{margin:7px 0 16px}.loginBox button{width:100%;margin-top:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.card{background:#171b22;border:1px solid #343841;border-radius:11px;padding:20px}.card b{font-size:28px;display:block;margin-top:7px}.notice{color:#a7adba;font-size:12px;margin-top:18px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.receipt{background:white;color:#111;padding:22px;max-width:360px;margin:auto;font-family:monospace}.receipt h2{text-align:center;border-bottom:1px dashed #000;padding-bottom:12px}.receipt p{border-bottom:1px dashed #aaa;padding-bottom:9px}.receipt small{display:block}.loading{padding:40px}.userline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}@media(max-width:850px){.layout{display:block}aside{width:auto;display:flex;overflow:auto;padding:8px}aside button{width:auto;white-space:nowrap}main{padding:20px 14px}.grid2{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.topbar{padding:0 12px}.modal{padding:17px}.toolbar input{max-width:none}}@media print{body *{visibility:hidden}.receipt,.receipt *{visibility:visible}.receipt{position:absolute;top:0;left:0;width:80mm;padding:5mm}.modalShade{background:white}}

/* v0.2 interface refinement */
:root{color-scheme:dark}button,aside button,.faultOption{transition:background-color .16s ease,border-color .16s ease}button:hover{filter:brightness(1.12)}.topbar{background:#10151f}.brand{letter-spacing:-.35px}.layout aside{background:#0f141d}.title{letter-spacing:-.6px}.tablewrap{background:#0c1017;box-shadow:0 6px 25px #0002}.tabs{background:#161c26}.tabs button.active{background:#303b4f}.modal{background:#121822;box-shadow:0 32px 90px #0009}.modal input:focus,.modal textarea:focus{box-shadow:0 0 0 3px #7899d42a}.faultPicker{border:1px solid #3b4555;border-radius:11px;padding:10px;background:#0d131d}.faultSelected{display:flex;flex-wrap:wrap;gap:6px;padding:8px 3px 12px;min-height:36px;color:#98a7be}.faultChip{background:#283b57;color:#e1edff;border:1px solid #486080;border-radius:20px;padding:5px 10px;font-size:12px}.faultPicker input[type=search]{margin-bottom:8px}.faultOptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;max-height:200px;overflow-y:auto}.faultOption{display:flex;align-items:center;gap:9px;padding:9px;border-radius:7px;margin:0;cursor:pointer;color:#e8eef8}.faultOption:hover{background:#253047}.faultOption:has(input:checked){background:#202f45}.faultOption input{width:16px;height:16px;accent-color:#ffcb42;flex-shrink:0}.faultOption[hidden]{display:none}.receipt{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;width:80mm;max-width:100%;padding:22px 18px;line-height:1.4;box-shadow:0 15px 35px #0004}.receiptMark{text-align:center;color:#111;font-size:24px}.receipt h2{letter-spacing:3px;border:0;padding:0;margin:0;text-align:center;font-size:25px}.receiptSubtitle{font-size:10px;letter-spacing:1.2px;text-align:center;margin-bottom:16px}.receiptDivider{border-top:1px dashed #555;margin:13px 0}.receiptSection{font-size:11px;font-weight:900;letter-spacing:.6px;margin:12px 0 8px}.receiptLine{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;font-size:11px;margin:5px 0}.receiptLine span:last-child,.receiptLine strong:last-child{text-align:right;overflow-wrap:anywhere;max-width:65%}.receiptFaults{border:1px solid #999;padding:8px;font-size:11px;margin-top:10px}.receiptTotal{font-size:17px}.receiptThanks{text-align:center;font-size:11px;font-weight:700;margin-top:18px}.receiptTiny{text-align:center;color:#555;font-size:9px;margin-top:6px}@media(max-width:700px){.faultOptions{grid-template-columns:1fr}}@media print{.receipt{box-shadow:none;width:80mm;max-width:80mm;margin:0;padding:5mm}.receipt *{color:#000!important}}

/* v0.3: readable repair details */
.detailHero{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #303e53;background:linear-gradient(110deg,#202d41,#151d2a);padding:20px;border-radius:12px;margin:0 0 18px}.detailTicket{font-size:23px;font-weight:780;letter-spacing:.15px;margin:6px 0;overflow-wrap:anywhere}.detailSub{font-size:12px;color:#9eafc5}.detailStatus{font-size:12px;font-weight:700;padding:8px 12px;border-radius:50px;white-space:nowrap;border:1px solid #576276;background:#202c3e}.detailStatus.in_progress{color:#ffa1a7;border-color:#77434c;background:#39252b}.detailStatus.completed{color:#78e2ae;border-color:#316752;background:#18392c}.detailStatus.cancelled{color:#c4c7d0}.detailSection{border:1px solid #2d3746;background:#161e2a;border-radius:12px;margin:14px 0;overflow:hidden}.detailSection h3{font-size:13px;letter-spacing:.25px;color:#eff4fd;margin:0;padding:14px 17px;background:#1d2838;border-bottom:1px solid #303e4f}.detailGrid{padding:15px 17px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detailItem{min-width:0}.detailLabel{color:#9baac1;font-size:11px;font-weight:650;letter-spacing:.4px;text-transform:uppercase;margin-bottom:7px}.detailValue{color:#f4f6fb;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.detailWide{grid-column:1/-1}.detailTags{display:flex;flex-wrap:wrap;gap:8px}.detailTag{background:#283c53;color:#dceaff;border:1px solid #476078;border-radius:6px;padding:7px 9px;font-size:12px}.detailFooter{display:flex;justify-content:flex-end;margin-top:19px}@media(max-width:600px){.detailGrid{grid-template-columns:1fr}.detailHero{align-items:flex-start;flex-direction:column}.detailTicket{font-size:18px}}

/* v0.4 - modal headers, readable detail tables, theme switching */
.modalHeader{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 18px;margin-bottom:20px;border-bottom:1px solid var(--line,#303b4d)}
.modalHeader h2{font-size:21px;margin:0}.modalClose{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;border:1px solid var(--line,#374153);border-radius:9px;background:var(--panel,#202939);color:inherit;font-size:18px;line-height:1}
.detailsTableLayout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.detailsTableSection{min-width:0;border:1px solid var(--line,#334052);border-radius:11px;overflow:hidden;background:var(--surface,#141e2b)}.detailsTableSection h3{background:var(--panel,#202b3b);padding:13px 16px;margin:0;font-size:13px;border-bottom:1px solid var(--line,#334052)}.detailsTable{min-width:0;table-layout:fixed;width:100%;border-collapse:collapse}.detailsTable th,.detailsTable td{font-size:13px;text-align:left;padding:13px 15px;vertical-align:top;line-height:1.5;overflow-wrap:anywhere;border-bottom:1px solid var(--line,#2f394a);background:none!important}.detailsTable tr:last-child th,.detailsTable tr:last-child td{border-bottom:0}.detailsTable th{width:39%;color:var(--muted,#a5b4c9);font-weight:600}.detailsTable td{font-weight:500;color:inherit;white-space:pre-wrap}.detailsTable .detailTags{white-space:normal}.detailHero{background:var(--hero,linear-gradient(110deg,#202d41,#151d2a));border-color:var(--line,#303e53)}
.appearancePanel{margin-top:28px;max-width:640px;border:1px solid var(--line,#333d4b);background:var(--surface,#161d29);border-radius:14px;padding:24px}.appearancePanel h2{margin:0 0 8px;font-size:18px}.themeOptions{display:flex;gap:8px;border-radius:12px;background:var(--panel,#222b39);padding:6px;margin-top:21px}.themeOption{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:9px;background:transparent;color:inherit;padding:13px 8px}.themeOption span{font-size:20px}.themeOption.selected{background:var(--selected,#394558);border-color:var(--line,#536176);font-weight:700}
@media(max-width:740px){.detailsTableLayout{grid-template-columns:1fr}.detailsTable th{width:42%}.themeOptions{flex-wrap:wrap}.themeOption{min-width:90px}}
:root[data-theme="light"]{color-scheme:light;--line:#dae1eb;--surface:#fff;--panel:#f1f5fa;--muted:#5c6778;--selected:#e2eaf5;--hero:linear-gradient(110deg,#eff5ff,#f8fbff);color:#1a2433;background:#f4f7fb}
:root[data-theme="light"] body,:root[data-theme="light"] .app{background:#f4f7fb;color:#1a2433}
:root[data-theme="light"] .topbar,:root[data-theme="light"] .layout aside{background:#fff;border-color:#dce3ed;color:#1a2433}
:root[data-theme="light"] .userbar,:root[data-theme="light"] .muted,:root[data-theme="light"] .notice{color:#617086}
:root[data-theme="light"] aside button{color:#4c596c}:root[data-theme="light"] aside button.active,:root[data-theme="light"] aside button:hover{color:#142033;background:#e7edf6}
:root[data-theme="light"] .pill,:root[data-theme="light"] .tablewrap,:root[data-theme="light"] .card,:root[data-theme="light"] .modal,:root[data-theme="light"] .loginBox{background:#fff;color:#1a2433;border-color:#dce3ed}
:root[data-theme="light"] .modalShade{background:#142033a8}:root[data-theme="light"] .loginScreen{background:radial-gradient(circle at 60% 0%,#e1edff,#f4f7fb 54%)}
:root[data-theme="light"] input,:root[data-theme="light"] select,:root[data-theme="light"] textarea,:root[data-theme="light"] .field{background:#fff;color:#1a2433;border-color:#cbd4e2}
:root[data-theme="light"] label,:root[data-theme="light"] th{color:#526077}:root[data-theme="light"] td{color:#172337;border-color:#e3e9f1}:root[data-theme="light"] tr:hover td{background:#f2f6fb}
:root[data-theme="light"] .tabs,:root[data-theme="light"] .themeOptions{background:#e9eef6}:root[data-theme="light"] .tabs button{color:#566478}:root[data-theme="light"] .tabs button.active{background:#fff;color:#1a2433}
:root[data-theme="light"] button.secondary,:root[data-theme="light"] .actions button{background:#eff3f8;color:#172337;border-color:#ccd6e4}:root[data-theme="light"] button.primary{background:#182a45;border-color:#182a45;color:#fff}
:root[data-theme="light"] .faultPicker{background:#f9fbfd;border-color:#d3dce9}:root[data-theme="light"] .faultOption{color:#172337}:root[data-theme="light"] .faultOption:hover,:root[data-theme="light"] .faultOption:has(input:checked){background:#e8f0fb}:root[data-theme="light"] .faultChip,:root[data-theme="light"] .detailTag{background:#e7f0fc;border-color:#cbd9ed;color:#243f60}
:root[data-theme="light"] .detailHero .detailLabel,:root[data-theme="light"] .detailSub{color:#556a84}:root[data-theme="light"] .detailTicket{color:#1a2433}:root[data-theme="light"] .detailStatus.completed{background:#e2f6eb;color:#177246}:root[data-theme="light"] .detailStatus.in_progress{background:#fff0f0;color:#a6303b}:root[data-theme="light"] .detailStatus.cancelled{color:#586273;background:#e9edf4}
:root[data-theme="light"] .receipt{background:#fff;color:#111}

/* v0.5.3: status tabs and clarity */
.tabs button{font-weight:650;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid transparent}
.tabs .tab-in_progress.active{background:#493823;color:#ffd48a;border-color:#815b32}
.tabs .tab-completed.active{background:#173d31;color:#a5f3cf;border-color:#2c6e52}
.tabs .tab-cancelled.active{background:#4b2931;color:#ffc2ca;border-color:#915262}
.tabs .tab-in_progress:not(.active){color:#d1ad73}.tabs .tab-completed:not(.active){color:#74c5a2}.tabs .tab-cancelled:not(.active){color:#df9da7}
:root[data-theme="light"] .tabs .tab-in_progress.active{background:#fff2dc;color:#805114;border-color:#ecc687}
:root[data-theme="light"] .tabs .tab-completed.active{background:#e0f7e9;color:#166644;border-color:#90d1aa}
:root[data-theme="light"] .tabs .tab-cancelled.active{background:#fff0f1;color:#983b4c;border-color:#f0b6c0}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #e9b332;outline-offset:1px}
.modalHeader{display:flex;justify-content:space-between;align-items:center}

/* Nexik v0.6 — readable forms, navigation and dashboards */
:root{font-size:16px}
body,button,input,select,textarea{font-size:15px;line-height:1.5}
input,select,textarea{min-height:44px;padding:10px 13px}
textarea{min-height:95px}
label,.formrow>label{font-size:14px;font-weight:600;line-height:1.5}
.title{font-size:27px;line-height:1.25;letter-spacing:-.025em}
.modal h2,.modalHeader h2{font-size:22px;line-height:1.35}
.formrow{gap:8px;margin-bottom:18px}
.formrow input,.formrow select,.formrow textarea{font-size:16px}
.modal{max-height:90vh;overflow-y:auto}
.modalFooter button{font-size:15px;min-height:43px}
.nexikSidebar{display:flex;flex-direction:column;justify-content:space-between;min-height:calc(100vh - 70px);gap:40px}
.nexikSidebar button{width:100%;display:flex;align-items:center;text-align:left;gap:8px;font-size:14px}
.sideHeading{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--muted,#8995a5);margin:14px 11px 8px}
.futureHeading{margin-top:26px}
.lockedModule{display:flex;align-items:center;gap:9px;padding:12px 11px;color:var(--muted,#8692a5);opacity:.68;font-size:14px;cursor:not-allowed}
.navIcon{display:inline-flex;align-items:center;justify-content:center;width:21px;min-width:21px;font-size:17px}
.lockIcon{margin-left:auto;font-size:12px;filter:grayscale(1)}
.sideBottom{padding-bottom:18px}
.dashIntro{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:23px}
.dashCards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}
.dashCard,.dashPanel{background:var(--panel,#141b27);border:1px solid var(--border,#30394b);border-radius:14px;padding:20px}
.dashCardTop{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--muted,#a0aabd);font-weight:600;font-size:13px}
.dashCard strong{display:block;font-size:31px;line-height:1.35;margin:12px 0 3px;letter-spacing:-.04em}
.dashCard small{font-size:12px;color:var(--muted,#9da8b8)}
.cardIcon{border-radius:10px;font-size:20px;min-width:39px;min-height:39px;display:grid;place-items:center}
.dashCard.amber .cardIcon{background:rgba(245,185,56,.15);color:#ebac3b}
.dashCard.blue .cardIcon{background:rgba(91,156,245,.15);color:#68a7f2}
.dashCard.green .cardIcon{background:rgba(42,185,121,.15);color:#43c68d}
.dashCard.purple .cardIcon{background:rgba(167,134,246,.15);color:#b29aff}
.dashSections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dashSections:has(>section:only-child){grid-template-columns:minmax(0,1fr)}
.dashPanel h2{font-size:18px;margin:0 0 6px}
.dashPanel .muted{font-size:13px}
.loadRow{margin:17px 0}
.loadRow>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:9px}
.loadRow span{color:var(--muted,#9ca8b9)}
.loadTrack{height:8px;background:var(--border,#293344);border-radius:8px;overflow:hidden}
.loadTrack>div{height:100%;background:#ebb83f;border-radius:8px}
.dashList{margin-top:12px}
.dashRepair{width:100%;background:transparent;border:0;border-bottom:1px solid var(--border,#303949);display:flex;align-items:center;justify-content:space-between;text-align:left;padding:13px 0;gap:12px;cursor:pointer;color:inherit}
.dashRepair b,.dashRepair small{display:block}
.dashRepair b{font-size:14px}
.dashRepair small,.daysLabel{font-size:12px;color:var(--muted,#a0acbc)}
.daysLabel{white-space:nowrap}
.viewAll{margin-top:16px}
.dashEmpty{padding:28px 5px;color:var(--muted,#94a2b7)}
.settingsPanel{max-width:690px;margin-top:22px}
.settingsPanel .appearancePanel{border:0;background:transparent;padding:0}
.repairTypeChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:7px}
.repairTypeChoice{position:relative;display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--border,#424b5d);border-radius:11px;cursor:pointer;font-size:14px}
.repairTypeChoice:has(input:checked){background:rgba(237,179,48,.085);border-color:#d4a52c;box-shadow:0 0 0 1px #d4a52c44}
.repairTypeChoice input{accent-color:#e2b33d;width:18px;min-height:18px;height:18px;flex:none;order:3;margin-left:auto}
.repairTypeIcon{font-size:22px;color:#d9ad40}
.repairTypeChoice b,.repairTypeChoice small{display:block}
.repairTypeChoice small{font-size:12px;color:var(--muted,#9caab9);font-weight:400}
.faultOption{font-size:14px;min-height:32px}
@media(max-width:1180px){.dashCards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.dashIntro{align-items:flex-start;flex-direction:column}.dashSections{grid-template-columns:1fr}.nexikSidebar{min-height:initial}.repairTypeChoices{grid-template-columns:1fr}}
@media(max-width:420px){.dashCards{gap:9px}.dashCard{padding:13px}.dashCard strong{font-size:26px}}

/* v0.6.2: give repair-type choices the full form width. */
.repairTypeRow{grid-column:1 / -1;min-width:0}
.repairTypeChoices{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.repairTypeChoice{min-width:0;padding:16px 20px;gap:14px}
.repairTypeChoice>span:not(.repairTypeIcon){min-width:0;flex:1}
.repairTypeChoice b{font-size:15px;white-space:nowrap}
.repairTypeChoice small{font-size:13px;line-height:1.4}
@media(max-width:560px){.repairTypeChoices{grid-template-columns:1fr}.repairTypeChoice b{white-space:normal}}

/* v0.6.3: consistent repairer filter across Chrome and Safari. */
.ownerFilter{position:relative;min-width:220px;width:260px;max-width:100%;font-size:15px;z-index:3}
.ownerFilter summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer;padding:10px 13px;border:1px solid var(--border,#3b3f49);border-radius:8px;background:var(--surface,#12151b);color:inherit;user-select:none}
.ownerFilter summary::-webkit-details-marker{display:none}
.ownerFilter summary:focus-visible{outline:2px solid #e9b332;outline-offset:2px}
.ownerFilter[open] summary{border-color:#e9b332}
.ownerChevron{font-size:20px;line-height:1;transition:transform .15s}
.ownerFilter[open] .ownerChevron{transform:rotate(180deg)}
.ownerOptions{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;max-height:300px;overflow:auto;padding:5px;border:1px solid var(--border,#3b3f49);background:var(--surface,#12151b);border-radius:10px;box-shadow:0 18px 35px #0006}
.ownerOptions button{display:block;text-align:left;width:100%;background:transparent;color:inherit;border:0;border-radius:6px;padding:11px 12px;min-height:42px;font-size:14px;line-height:1.3}
.ownerOptions button:hover,.ownerOptions button:focus-visible{background:var(--selected,#2a3547);outline:none}
.ownerOptions button.selected{font-weight:700;color:#e1ad2f}
@media(max-width:600px){.ownerFilter{width:100%}}

/* 0.6.4 repairer filter: explicit button/panel works in Safari and Chrome */
.ownerFilter .ownerTrigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;text-align:left;cursor:pointer;padding:10px 13px;border:1px solid var(--border,#3b3f49);border-radius:8px;background:var(--surface,#12151b);color:inherit;font-size:15px;font-weight:500}
.ownerFilter .ownerTrigger:focus-visible{outline:2px solid #e9b332;outline-offset:2px}
.ownerFilter.is-open .ownerTrigger{border-color:#e9b332}
.ownerFilter.is-open .ownerChevron{transform:rotate(180deg)}
.ownerFilter .ownerOptions[hidden]{display:none!important}
.ownerFilter.is-open{z-index:40}

.exportBar {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 18px;} .exportBar input{max-width:180px;} .exportBar label{font-size:14px;} .actions{flex-wrap:wrap;}

/* v0.7.1 export controls */
.exportBar select {background:var(--field-bg,#111827);color:inherit;border:1px solid #536174;border-radius:9px;padding:10px 12px;min-height:42px;font:inherit;cursor:pointer;}
.exportBar select:focus-visible {outline:2px solid #eabf35;outline-offset:2px;}
.exportBar button {min-height:42px;}

/* Stable custom reporting period controls */
.exportBar .periodControl{position:relative;min-width:156px;flex:0 0 156px;}
.exportBar .periodTrigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:43px;padding:10px 13px;background:var(--field-bg,#111827);color:inherit;border:1px solid #536174;border-radius:9px;font:inherit;cursor:pointer;text-align:left;}
.exportBar .periodTrigger:focus-visible{outline:2px solid #eabf35;outline-offset:2px;}
.exportBar .periodOptions{position:absolute;top:calc(100% + 5px);left:0;right:0;min-width:170px;max-height:280px;overflow:auto;z-index:100;background:var(--field-bg,#111827);border:1px solid #536174;border-radius:9px;padding:5px;box-shadow:0 14px 35px #0006;}
.exportBar .periodOptions[hidden]{display:none !important;}
.exportBar .periodOptions button{display:block;width:100%;text-align:left;border:0;background:transparent;color:inherit;border-radius:6px;padding:9px 11px;cursor:pointer;font:inherit;min-height:36px;}
.exportBar .periodOptions button:hover,.exportBar .periodOptions button.selected{background:rgba(234,191,53,.16);}

/* v0.8 work modules */
.dashPanel table td {vertical-align:top} .dashPanel table small {display:block;color:var(--muted,#9ca3af);margin-top:5px;line-height:1.45}.dashPanel table td p{margin:6px 0;font-size:14px}

/* v0.8.1 tasks */
.taskFilters{display:flex;gap:16px;flex-wrap:wrap;margin:18px 0}.taskFilters label{font-size:14px;font-weight:600;flex:1;min-width:220px}.taskFilters select{display:block;width:100%;max-width:none;margin-top:8px;min-height:44px}.taskTabs{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.taskTab{border:1px solid var(--border,#344053);border-radius:9px;background:var(--panel,#1c2635);color:inherit;padding:10px 13px;font-weight:600}.taskTab.selected{border-color:#e9b437;box-shadow:inset 0 0 0 1px #e9b437}.taskTab span{opacity:.7;margin-left:6px}.taskBadge{display:inline-block;border:1px solid currentColor;border-radius:20px;padding:4px 9px;text-transform:capitalize}.task-pending{color:#d59e27}.task-in_progress{color:#60a5fa}.task-submitted{color:#ad8bfb}.task-approved{color:#42be8a}.task-returned{color:#f27a7a}.taskDetailTable{border:1px solid var(--border,#374151);border-radius:10px;overflow:hidden;margin-top:22px}.taskDetailRow{display:grid;grid-template-columns:minmax(125px,32%) 1fr;border-bottom:1px solid var(--border,#374151);font-size:14px;line-height:1.5}.taskDetailRow:last-child{border-bottom:0}.taskDetailRow>*{padding:12px;white-space:pre-wrap;overflow-wrap:anywhere}.taskDetailRow strong{background:var(--panel,#1b2432)}.moduleOverview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.moduleOverviewCard{background:var(--panel,#1b2432);color:inherit;border:1px solid var(--border,#394153);text-align:left;border-radius:10px;padding:18px;display:grid;gap:6px}.moduleOverviewCard strong{font-size:28px;color:#e9b437}.moduleOverviewCard small{opacity:.7}@media(max-width:700px){.moduleOverview{grid-template-columns:1fr}.taskDetailRow{grid-template-columns:120px 1fr}}

/* v0.8.2: stable shop and employee filter menus, matching Computer Repairs. */
.taskFilters .taskFilterField{flex:1 1 245px;min-width:0;display:flex;flex-direction:column;gap:7px}
.taskFilters .taskFilterLabel{font-size:14px;font-weight:600}
.taskFilters .taskFilterMenu{width:100%;min-width:0;max-width:none}
.taskFilters .taskFilterMenu .ownerTrigger{min-height:44px}
.taskFilters .taskFilterMenu .ownerTrigger span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.taskFilters .taskFilterMenu .ownerOptions{max-height:260px}
@media(max-width:620px){.taskFilters .taskFilterField{flex-basis:100%}}

/* v0.8.3 employee role dashboards */
.employeeStore{font-size:13px;margin-top:8px;font-weight:600;opacity:.84}
.employeeStatButton{text-align:left;color:inherit;cursor:pointer;font:inherit;width:100%;border:1px solid var(--border,#394153)}
.employeeStatButton:hover,.employeeStatButton:focus-visible{border-color:#e9b437;outline-offset:2px}
.employeeDashboardSections{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:18px;margin-top:18px;align-items:start}
.employeeSidePanels{display:grid;gap:18px}
.employeeQueueRow{display:flex;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--border,#394153)}
.employeeQueueMain{min-width:0;flex:1}.employeeQueueMain b{overflow-wrap:anywhere;display:block}.employeeQueueMain small,.employeeQueueMeta small{display:block;color:var(--muted,#94a3b8);margin-top:6px;font-size:12px}
.employeeQueueMeta{text-align:right}.employeeCategory{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--border,#394153)}
.employeeCategory strong{font-size:22px;color:#e9b437}.employeeSidePanels .dashPanel .secondary{margin-top:14px}
@media(max-width:900px){.employeeDashboardSections{grid-template-columns:1fr}.employeeSidePanels{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.employeeSidePanels{grid-template-columns:1fr}.employeeQueueRow{flex-wrap:wrap}.employeeQueueMeta{text-align:left}.employeeQueueRow>.secondary{width:100%}}

/* Custom fault description is visible only when Other Fault is selected. */
#customFaultRow[hidden]{display:none!important}

/* v0.8.6 — compact repair actions, custom click menu (no native select) */
.repairActionMenu{position:relative;display:inline-block;min-width:108px}
.repairActionTrigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 12px;border:1px solid var(--border,#3b3f49);border-radius:8px;background:var(--surface,#161c26);color:inherit}
.repairActionMenu.is-open{z-index:70}
.repairActionOptions{position:absolute;right:0;top:calc(100% + 5px);width:170px;padding:5px;background:var(--surface,#141b27);color:inherit;border:1px solid var(--border,#384457);border-radius:10px;box-shadow:0 16px 42px #0007;z-index:80}
.repairActionOptions[hidden]{display:none!important}
.repairActionOptions button{display:block;width:100%;border:0;background:transparent;color:inherit;padding:10px 11px;text-align:left;border-radius:6px;white-space:nowrap}
.repairActionOptions button:hover,.repairActionOptions button:focus-visible{background:var(--selected,#283548)}
.repairActionOptions .dangerOption{color:#f17878;border-top:1px solid var(--border,#384457);border-radius:0}
.dangerButton{background:#b42332;color:white;border:1px solid #b42332;padding:11px 18px;border-radius:9px;font-weight:700}
.deleteWarning{padding:13px 15px;border:1px solid #ae3940;border-radius:10px;margin-bottom:14px;background:rgba(180,35,50,.08)}
.deleteWarning strong{color:#ed7279}.deleteWarning p{line-height:1.6;margin:6px 0 0}
/* Allow the menu to extend over subsequent table rows. */
.tablewrap:has(.repairActionMenu){overflow:visible}
.tablewrap:has(.repairActionMenu) table{width:100%}
@media(max-width:850px){.tablewrap:has(.repairActionMenu){overflow-x:auto}.repairActionOptions{position:fixed;right:16px;top:auto;bottom:20px}}

/* v0.9.1 — Cross-browser dropdown stability. Form-backed native selects are
 * visually replaced by explicit buttons; option popovers are portalled to body. */
.nexikSelectControl{position:relative;display:inline-block;width:100%;min-width:0;vertical-align:middle}
.nexikSelectControl>.nexikNativeSelect{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)}
.nexikSelectButton{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:10px 12px;border:1px solid var(--border,#3b3f49);border-radius:8px;background:var(--field-bg,#12151b);color:inherit;cursor:pointer;font:inherit}
.nexikSelectButton:hover,.nexikSelectButton.is-open{border-color:#e9b332}
.nexikSelectButton:focus-visible{outline:2px solid #e9b332;outline-offset:2px}
.nexikSelectButton:disabled{opacity:.5;cursor:not-allowed}
.nexikSelectLabel{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nexikSelectArrow{flex-shrink:0;font-size:20px;line-height:1}
.nexikSelectPopover{position:fixed;z-index:2147483000;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;background:var(--field-bg,#151b25);border:1px solid var(--border,#475469);border-radius:9px;box-shadow:0 20px 50px #0009;padding:5px;pointer-events:auto}
.nexikSelectOption{display:block;width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:10px 12px;border-radius:6px;min-height:38px;cursor:pointer;white-space:normal}
.nexikSelectOption:hover,.nexikSelectOption:focus-visible,.nexikSelectOption.selected{background:var(--selected,#2b3c54)}
.nexikSelectOption:disabled{opacity:.45;cursor:default}
.hrInline>.nexikSelectControl{flex:1;min-width:155px}
