:root{color:#202833;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#eef3f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}#root,main{min-height:100vh}.site-header{background:#f7f4ee;border-bottom:1px solid #ded7cc;grid-template-columns:260px minmax(0,1fr);align-items:center;gap:32px;padding:48px clamp(20px,5vw,72px);display:grid}.site-header img{background:#fff;border:1px solid #ddd3c4;border-radius:8px;width:220px;padding:18px;box-shadow:0 16px 42px #2a241b1a}.eyebrow{color:#8c4f27;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:800}h1,h2{color:#202833;margin:0;line-height:1.05}h1{max-width:880px;font-size:clamp(2.4rem,5vw,4.75rem)}h2{font-size:clamp(1.35rem,2vw,2rem)}.intro{color:#465362;max-width:890px;margin-top:20px;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.65}.header-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.top-menu{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.header-actions a,.secondary-action,.top-menu button,.view-toggle button{color:#1f6f8b;cursor:pointer;background:#fff;border:1px solid #c8d3dc;border-radius:6px;padding:10px 14px;font-weight:800;line-height:1.2;text-decoration:none}.header-actions a:hover,.secondary-action:hover,.top-menu button:hover,.view-toggle button:hover,.top-menu button.active,.view-toggle button.active{border-color:#1f6f8b;box-shadow:inset 0 0 0 1px #1f6f8b}.section-band{padding:34px clamp(20px,5vw,72px) 42px}.section-heading{margin-bottom:20px}.section-heading p:not(.eyebrow){color:#5a6573;max-width:760px;margin:10px 0 0;line-height:1.55}.location-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}button{font:inherit}.location-card,.date-card{color:inherit;cursor:pointer;text-align:left;background:#fff;border:1px solid #d7dee6;border-radius:8px;transition:border-color .18s,box-shadow .18s,transform .18s}.location-card{flex-direction:column;min-height:218px;padding:22px;display:flex}.location-card:hover,.date-card:hover:not(:disabled){border-color:#678b9f;transform:translateY(-1px);box-shadow:0 12px 28px #23374617}.location-card.selected,.date-card.selected{border-color:#1f6f8b;box-shadow:inset 0 0 0 2px #1f6f8b}.location-card span{color:#1f6f8b;background:#eaf2f4;border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:.78rem;font-weight:800}.location-card strong{color:#202833;margin-top:18px;font-size:1.2rem}.location-card small,.date-card small{color:#697583}.location-card p{color:#536171;margin:14px 0;line-height:1.45}.location-card b{color:#8c4f27;margin-top:auto}.signup-layout,.reimbursement-layout{background:#eef3f4;border-top:1px solid #d5e0e4;grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:22px;padding:34px clamp(20px,5vw,72px) 54px;display:grid}.panel,.summary{background:#fff;border:1px solid #d7dee6;border-radius:8px;padding:26px}.panel{grid-column:1}.summary{grid-area:1/2/span 2;position:sticky;top:20px}.reimbursement-summary{grid-row:1/span 2}.date-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.date-card{min-height:126px;padding:18px}.date-card span{color:#8c4f27;text-transform:uppercase;margin-bottom:10px;font-size:.82rem;font-weight:800;display:block}.date-card strong{color:#202833;margin-bottom:8px;font-size:1.12rem;display:block}.date-card small+small{margin-top:6px;display:block}.date-card:disabled{color:#89929d;cursor:not-allowed;opacity:.72;background:#f3f4f5}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-editor>.field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}label{color:#384453;gap:8px;font-size:.92rem;font-weight:750;display:grid}input,select,textarea{color:#202833;font:inherit;background:#fbfcfd;border:1px solid #cbd5df;border-radius:6px;padding:12px 13px}textarea{resize:vertical;margin-top:16px}input:focus,select:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:3px solid #1f6f8b38}.check-row{align-items:center;gap:10px;margin-top:18px;display:flex}.check-row input{width:18px;height:18px}.receipt-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.receipt-list{gap:16px;display:grid}.receipt-card{border:1px solid #d7dee6;border-radius:8px;padding:18px}.receipt-card-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.receipt-card-header strong{color:#202833}.text-action{color:#8c4f27;cursor:pointer;background:0 0;border:0;padding:4px;font-weight:800}.camera-upload-label{align-content:start}.camera-upload-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.camera-upload-button{color:#fff;cursor:pointer;text-align:center;background:#1f6f8b;border-radius:6px;justify-content:center;align-items:center;width:min(100%,340px);min-height:46px;padding:12px 14px;font-weight:800;display:inline-flex}.camera-upload-label:focus-within .camera-upload-button,.camera-upload-button:hover{outline-offset:2px;background:#185a70;outline:3px solid #1f6f8b2e}.selected-file-name{color:#697583;overflow-wrap:anywhere;font-weight:650}.readonly-file-row{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.readonly-file-row span{color:#697583;overflow-wrap:anywhere;font-weight:650}.file-link{color:#1f6f8b;font-weight:800}.vehicle-match-alert{color:#202833;background:#fff8e8;border:1px solid #e5c76d;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.vehicle-match-alert p{margin:4px 0 0}.vehicle-match-actions{flex-wrap:wrap;gap:10px;display:flex}.repair-date-line{color:#697583;font-size:.92rem;font-weight:750}.inline-upload-label{color:#8c4f27;cursor:pointer;font-weight:800;display:inline-flex}.receipt-preview{object-fit:contain;border:1px solid #d7dee6;border-radius:8px;max-width:100%;max-height:360px;margin-top:14px;display:block}.invoice-pdf-preview{border:1px solid #d7dee6;border-radius:8px;width:100%;height:520px;margin-top:14px;display:block}dl{gap:16px;margin:0;display:grid}dt{color:#697583;text-transform:uppercase;font-size:.78rem;font-weight:800}dd{color:#202833;margin:3px 0 0;line-height:1.45}.primary-action{color:#fff;cursor:pointer;background:#1f6f8b;border:0;border-radius:6px;width:100%;min-height:50px;margin-top:24px;padding:13px 18px;font-weight:800}.primary-action:hover{background:#185a70}.primary-action:disabled{cursor:wait;background:#8ba6b1}.success-message{color:#23612d;background:#edf7ed;border:1px solid #b7d9bc;border-radius:6px;margin:16px 0 0;padding:12px;line-height:1.45}.error-message{color:#8c2f1f;background:#fff3f0;border:1px solid #e2b5aa;border-radius:6px;margin:16px 0 0;padding:12px;line-height:1.45}.empty-note{color:#5a6573;margin:16px 0 0;line-height:1.5}.admin-shell{background:#eef3f4;border-top:1px solid #d5e0e4;gap:22px;padding:34px clamp(20px,5vw,72px) 54px;display:grid}.single-panel{grid-template-columns:minmax(0,520px);justify-content:center}.admin-login-panel{gap:18px;display:grid}.admin-heading-row,.receipt-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.admin-location-list{gap:18px;display:grid}.admin-location-card{border:1px solid #d7dee6;border-radius:8px;gap:16px;padding:18px;display:grid}.admin-location-title,.date-editor-header,.regular-admin-row{justify-content:space-between;align-items:center;display:flex}.admin-location-title strong,.date-editor-header strong{color:#202833}.admin-date-list{gap:10px;display:grid}.admin-date-row{grid-template-columns:minmax(0,150px) minmax(0,130px) minmax(0,130px) minmax(0,1fr) minmax(0,130px) auto;align-items:end;gap:10px;display:grid}.admin-save{max-width:340px}.form-action-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.form-action-row .secondary-action{color:#6f3514;text-align:center;background:#f7e8d8;border-color:#b96a31;width:min(100%,340px);min-height:50px}.form-action-row .primary-action{margin-top:0}.schedule-filters{grid-template-columns:minmax(0,260px) minmax(0,220px);gap:16px;margin-bottom:18px;display:grid}.schedule-table{border-collapse:collapse;width:100%}.schedule-table th,.schedule-table td{text-align:left;vertical-align:top;border-bottom:1px solid #d7dee6;padding:10px 8px}.schedule-table th{color:#697583;text-transform:uppercase;font-size:.78rem}.regular-admins{border-top:1px solid #d7dee6;margin-top:24px;padding-top:22px}.regular-admins h2{margin-bottom:16px;font-size:1.2rem}.regular-admins .secondary-action{align-self:end;min-height:46px}.regular-admin-list{gap:10px;margin-top:16px;display:grid}.regular-admin-row{background:#f7f9fa;border:1px solid #d7dee6;border-radius:8px;padding:12px}.admin-message{margin:0}.change-log{gap:12px;display:grid}.log-row{border-top:1px solid #d7dee6;padding-top:12px}.log-row strong{color:#202833;display:block}.log-row span{color:#697583;margin-top:3px;font-size:.86rem;display:block}.log-row p{color:#465362;margin-top:6px;line-height:1.45}.drivewise-shell{grid-template-columns:minmax(0,1fr)}.drivewise-invoice-editor,.drivewise-repair-list{gap:14px;display:grid}.drivewise-invoice-card{border:1px solid #d7dee6;border-radius:8px;padding:16px}.statement-print-list{border:1px solid #d7dee6;border-radius:8px;margin-bottom:20px;padding:18px}.view-toggle{flex-wrap:wrap;gap:10px;display:flex}.repair-group{gap:10px;display:grid}.repair-group h3{color:#202833;margin:8px 0 0}.drivewise-table input[type=checkbox]{width:18px;height:18px}.drivewise-repair-row{gap:16px}.drivewise-repair-row div{gap:8px;display:flex}@media (width<=1000px){.location-grid,.signup-layout,.reimbursement-layout{grid-template-columns:1fr}.summary,.panel{grid-area:auto}.summary{position:static}}@media (width<=680px){.site-header{grid-template-columns:1fr;padding-top:28px}.site-header img{width:100%;max-width:260px}.date-grid,.field-grid,.admin-editor>.field-grid{grid-template-columns:1fr}.panel,.summary{padding:20px}.receipt-heading,.receipt-card-header,.admin-heading-row,.admin-location-title,.date-editor-header,.regular-admin-row{flex-direction:column;align-items:stretch}.admin-date-row,.schedule-filters{grid-template-columns:1fr}}@media print{body{background:#fff}.site-header,.admin-editor,.admin-account-panel,.change-log,.admin-message,.no-print{display:none!important}.admin-shell,.panel{background:#fff;border:0;padding:0}.schedule-table th,.schedule-table td{color:#000;border-bottom:1px solid #999}}
