@layer theme{:root,:host{--spacing:.25rem;--default-font-family:Arial, Helvetica, sans-serif;--default-mono-font-family:"Courier New", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.table-row{display:table-row}}:root{--background:#eef2f6;--surface:#fff;--surface-soft:#f6f8fb;--ink:#101828;--muted:#667085;--line:#d8dee8;--navy:#09284a;--navy-2:#0e3b66;--green:#16803c;--green-soft:#e8f5ed;--gold:#d79518;--red:#c9453d;--shadow:0 20px 55px #0f234121}*{box-sizing:border-box}html{background:var(--background)}body{background:linear-gradient(180deg, #09284a14, transparent 330px), var(--background);min-height:100vh;color:var(--ink);letter-spacing:0;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.62}.login-shell{background:linear-gradient(135deg, #09284a1f, transparent 42%), var(--background);place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{border:1px solid var(--line);width:min(100%,520px);box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:20px;padding:24px;display:grid}.login-brand{text-align:center;justify-items:center;gap:14px;display:grid}.login-brand h1{font-size:30px}.login-tabs{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;display:grid}.login-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:6px;font-weight:850}.login-tabs button.active{background:var(--navy);color:#fff}.login-form{gap:14px;display:grid}.app-shell{min-height:100vh;padding:24px}.workspace{border:1px solid var(--line);background:var(--surface);width:min(1440px,100%);min-height:calc(100vh - 48px);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:280px minmax(0,1fr);margin:0 auto;display:grid;overflow:hidden}.sidebar{background:linear-gradient(180deg, #ffffff14, transparent 38%), var(--navy);color:#fff;flex-direction:column;gap:24px;padding:22px;display:flex}.logout-button{color:#fff;background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;min-height:44px;margin-top:auto;font-weight:850}.sidebar-profile-card{background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;margin-top:auto;padding:12px;display:grid}.sidebar-profile-card span,.sidebar-profile-card strong,.sidebar-profile-card small{display:block}.sidebar-profile-card span{color:#b9cce0;text-transform:uppercase;font-size:11px;font-weight:850}.sidebar-profile-card strong{color:#fff;margin-top:3px}.sidebar-profile-card small{color:#dbe8f5;margin-top:2px}.sidebar-profile-avatar{width:58px;height:58px}.sidebar-profile-card+.logout-button{margin-top:0}.brand-card{align-items:center;gap:12px;min-width:0;display:flex}.brand-card p,.brand-card strong{margin:0;display:block}.brand-card p{letter-spacing:0;font-size:12px;font-weight:800}.brand-card strong{margin-top:3px;font-size:20px;line-height:1.1}.brand-logo{object-fit:contain;background:#fff;border:1px solid #09284a1f;border-radius:8px;display:block}.login-logo{width:min(100%,330px);height:134px}.sidebar-logo{flex:0 0 92px;width:92px;height:48px;box-shadow:0 12px 26px #0000002e}.nav-list{gap:8px;display:grid}.nav-list button{color:#dbe8f5;text-align:left;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 12px;display:flex}.nav-list button.active{color:var(--navy);background:#fff}.nav-list small{color:currentColor;opacity:.7;margin-top:2px;display:block}.nav-dot{background:#ffffff1a;border-radius:999px;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid}.nav-dot:before{content:"";border:2px solid;border-radius:3px;width:12px;height:12px}.main-panel{background:var(--surface-soft);flex-direction:column;gap:18px;min-width:0;padding:26px;display:flex;position:relative}.topbar{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.eyebrow,.field span,.muted{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}h1,h2,p{margin-top:0}h1{max-width:760px;color:var(--navy);margin-bottom:0;font-size:34px;font-weight:850;line-height:1.05}h2{color:var(--ink);margin-bottom:0;font-size:22px;line-height:1.15}.status-pill,.total-badge{background:var(--green-soft);color:var(--green);border-radius:999px;flex:none;padding:9px 12px;font-size:13px;font-weight:850}.toast{z-index:10;background:var(--navy);color:#fff;box-shadow:var(--shadow);border-radius:8px;padding:12px 14px;position:fixed;top:18px;right:18px}.grid-area{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.summary-panel,.work-card{border:1px solid var(--line);background:#fff;border-radius:8px;box-shadow:0 10px 28px #1018280f}.summary-panel{gap:8px;padding:18px;display:grid}.summary-panel h2{font-size:34px}.summary-panel span{color:var(--muted)}.primary-panel{background:linear-gradient(135deg, var(--navy), var(--navy-2))}.primary-panel h2,.primary-panel .eyebrow{color:#fff}.primary-panel span{color:#d7e8f7}.progress-line{background:#ffffff2e;border-radius:999px;height:8px;overflow:hidden}.progress-line span{border-radius:inherit;background:#82d994;height:100%;display:block}.wide{grid-column:span 2}.work-card{padding:18px}.card-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.ghost-button,.primary-button,.secondary-button,.icon-action{border-radius:8px;min-height:42px;font-weight:850}.ghost-button{border:1px solid var(--line);color:var(--navy);background:#fff;padding:0 14px}.primary-button{background:var(--navy);color:#fff;border:0;width:100%;margin-top:18px}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{opacity:.58}.secondary-button{border:1px solid var(--line);width:100%;color:var(--navy);background:#fff;margin-top:18px}.icon-action{width:38px;min-height:38px;color:var(--red);text-transform:uppercase;background:#fff5f4;border:1px solid #f0c8c5}.table-like{gap:8px;display:grid}.table-row{border:1px solid var(--line);background:var(--surface-soft);min-height:48px;color:var(--muted);border-radius:8px;grid-template-columns:110px 1.2fr 1fr 70px;align-items:center;gap:12px;padding:10px 12px;display:grid}.table-row.with-action{grid-template-columns:110px 1.2fr 1fr 42px}.table-row.readonly-row{grid-template-columns:110px 1.2fr 1fr}.table-row strong{color:var(--ink)}.table-row small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.table-row b{color:var(--green);text-align:right}.expense-list{gap:10px;display:grid}.expense-item{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:10px;display:grid}.expense-item.with-action{grid-template-columns:54px minmax(0,1fr) auto 42px}.expense-item strong,.expense-item span{display:block}.expense-item span{color:var(--muted);font-size:13px}.expense-item b{color:var(--green)}.fuel-history-item{grid-template-columns:72px minmax(0,1fr) auto}.fuel-history-item.with-action{grid-template-columns:72px minmax(0,1fr) auto 42px}.fuel-history-item .receipt-preview,.fuel-history-item .receipt-placeholder{width:66px;height:66px}.form-layout{grid-template-columns:minmax(0,900px);align-items:start;gap:16px;display:grid}.form-card{width:100%}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.single-field-grid{grid-template-columns:1fr}.field{gap:7px;display:grid}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fff;border-radius:8px;outline:none;padding:10px 12px}.field input:disabled{color:var(--muted);background:#eef2f6}.field textarea{resize:vertical;min-height:96px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy-2);box-shadow:0 0 0 3px #0e3b661f}.vat-box{border:1px solid var(--line);background:var(--green-soft);color:var(--green);border-radius:8px;align-content:end;gap:8px;padding:12px;font-weight:850;display:grid}.fuel-cost-box{align-content:center}.fuel-cost-box span{color:var(--muted);text-transform:uppercase;font-size:12px}.fuel-cost-box strong{color:var(--green);font-size:20px}.upload-box{min-height:138px;color:var(--navy);cursor:pointer;background:#fff;border:1px dashed #aab6c7;border-radius:8px;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:14px;padding:12px;font-weight:850;display:grid;position:relative}.upload-box>span{gap:5px;display:grid}.upload-box>span small{color:var(--muted);font-size:12px;font-weight:750}.fuel-upload-box{grid-column:1/-1;grid-template-columns:120px minmax(0,1fr);min-height:148px}.fuel-upload-box .receipt-preview,.fuel-upload-box .receipt-placeholder{width:108px;height:108px}.technician-upload-box{grid-column:1/-1;grid-template-columns:64px minmax(0,1fr);min-height:96px}.technician-upload-box .technician-avatar{width:58px;height:58px}.compact-upload{grid-column:auto;min-height:72px}.upload-box input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.receipt-preview,.receipt-placeholder{border:1px solid var(--line);object-fit:cover;background:#fff;border-radius:6px;width:54px;height:54px}.receipt-placeholder{align-content:center;gap:5px;padding:10px;display:grid}.receipt-placeholder span{background:#b9c2ce;border-radius:99px;height:4px}.technician-avatar{border:1px solid var(--line);object-fit:cover;background:#fff;border-radius:50%;flex:0 0 54px;width:54px;height:54px}.technician-avatar-placeholder{background:linear-gradient(135deg, var(--navy), var(--navy-2));color:#fff;place-items:center;font-weight:900;display:grid}.proof-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.monthly-layout{gap:16px;display:grid}.monthly-layout .card-heading .field{width:min(100%,260px)}.month-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.month-card{border:1px solid var(--line);background:var(--surface-soft);min-height:132px;color:var(--ink);text-align:left;border-radius:8px;gap:6px;padding:12px;display:grid}.month-card.active{border-color:var(--navy);background:#eef6ff;box-shadow:inset 0 0 0 1px #09284a14}.month-card span,.month-card small{color:var(--muted)}.month-card span{text-transform:capitalize;font-size:13px;font-weight:850}.month-card strong{color:var(--navy);font-size:24px;line-height:1.1}.month-card small{font-size:12px}.monthly-technicians{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.monthly-technician{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:12px;display:grid}.monthly-technician span,.monthly-technician small{color:var(--muted)}.monthly-technician strong{color:var(--green);font-size:20px}.monthly-money-box{margin-top:10px}.section-label{color:var(--muted);text-transform:uppercase;margin:16px 0 8px;font-size:12px;font-weight:850}.monthly-hour-list{gap:10px;margin-top:14px;display:grid}.monthly-hour-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.fuel-month-row{grid-template-columns:minmax(0,1fr) auto auto auto auto}.monthly-hour-row strong,.monthly-hour-row span{display:block}.monthly-hour-row span{color:var(--muted);font-size:13px}.monthly-hour-row b{color:var(--green)}.monthly-expense-list{gap:10px;margin-top:14px;display:grid}.monthly-expense-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:54px minmax(0,1fr) auto auto auto;align-items:center;gap:10px;min-height:68px;padding:10px;display:grid}.monthly-expense-row strong,.monthly-expense-row span{display:block}.monthly-expense-row span{color:var(--muted);font-size:13px}.monthly-expense-row b{color:var(--green)}.empty-state{color:var(--muted);background:#fff;border:1px dashed #b8c2d0;border-radius:8px;margin:0;padding:14px}.proof-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:8px;min-width:0;padding:12px;display:grid}.proof-card .receipt-preview,.proof-card .receipt-placeholder{width:100%;height:150px}.proof-card span{color:var(--muted);font-size:13px}.proof-card b{color:var(--green);font-size:13px}.export-card{gap:18px;display:grid}.export-summary{flex-wrap:wrap;gap:10px;display:flex}.export-summary span{background:var(--surface-soft);color:var(--navy);border-radius:8px;padding:10px 12px;font-weight:850}.export-actions{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.export-actions .primary-button,.export-actions .secondary-button{margin-top:0}.report-box{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;padding:14px;display:grid}.report-box div{gap:4px;display:grid}.report-box span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.report-box strong{color:var(--green);font-size:20px}.weekly-hour-box{margin-bottom:14px}.admin-layout{grid-template-columns:minmax(0,470px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.admin-vehicle-card{grid-column:1/-1}.technician-list{gap:10px;display:grid}.vehicle-list{gap:10px;margin-top:16px;display:grid}.agency-admin-list{gap:10px;display:grid}.vehicle-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(150px,1fr) minmax(180px,1fr) 100px 120px;align-items:center;gap:10px;padding:12px;display:grid}.vehicle-row strong,.vehicle-row span{display:block}.vehicle-row span{color:var(--muted);font-size:13px}.agency-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(180px,1fr) 100px;align-items:center;gap:10px;padding:12px;display:grid}.agency-admin-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(160px,1fr) 100px 120px 150px 130px;align-items:center;gap:10px;padding:12px;display:grid}.agency-row strong,.agency-row span,.agency-admin-row strong,.agency-admin-row span{display:block}.agency-row span,.agency-admin-row span{color:var(--muted);font-size:13px}.technician-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(180px,1fr) 100px 120px 150px 130px;align-items:center;gap:10px;padding:12px;display:grid}.technician-identity{align-items:center;gap:10px;min-width:0;display:flex}.technician-row strong,.technician-row span,.technician-row small{display:block}.technician-row span,.technician-row small{color:var(--muted);font-size:13px}.technician-profile-editor{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:minmax(180px,1fr) minmax(260px,1.35fr) 170px;align-items:end;gap:10px;padding-top:10px;display:grid}.state-pill{background:#f7e6e4;border-radius:999px;width:fit-content;padding:7px 9px;font-weight:850;color:var(--red)!important}.state-pill.active{background:var(--green-soft);color:var(--green)!important}.compact-button{min-height:38px;margin-top:0}.code-input{border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);background:#fff;border-radius:8px;outline:none;padding:8px 10px}@media (max-width:980px){.app-shell{padding:0}.workspace{border:0;border-radius:0;grid-template-columns:1fr;min-height:100vh}.sidebar{gap:14px;padding:16px}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.login-tabs{grid-template-columns:1fr}.nav-list button{width:100%}.main-panel{padding:18px}.topbar{display:grid}h1{font-size:28px}.grid-area,.form-grid,.proof-grid,.month-card-grid,.monthly-technicians,.admin-layout{grid-template-columns:1fr}.wide{grid-column:auto}.table-row,.table-row.with-action,.table-row.readonly-row,.expense-item.with-action,.export-actions,.monthly-hour-row,.fuel-month-row,.monthly-expense-row,.report-box,.technician-row,.technician-profile-editor,.vehicle-row,.agency-row,.agency-admin-row{grid-template-columns:1fr}.table-row b{text-align:left}.icon-action{width:100%}}
