: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}.header-actions a,.secondary-action{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{border-color:#1f6f8b}.top-menu{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.top-menu button{color:#1f6f8b;cursor:pointer;background:#fff;border:1px solid #c8d3dc;border-radius:6px;padding:10px 14px;font-weight:800;line-height:1.2}.top-menu button.active,.top-menu button:hover{border-color:#1f6f8b;box-shadow:0 0 0 2px #1f6f8b29}.site-footer{color:#fff;background:#202833;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px clamp(20px,5vw,72px);display:flex}.site-footer div,.site-footer nav{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.site-footer span{color:#cbd5e1}.site-footer a{color:#fff;font-weight:800;text-decoration:none}.site-footer a:hover{text-decoration:underline}.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}.reimbursement-access-panel{grid-column:1/-1;max-width:720px}.inline-request-form{gap:14px;max-width:520px;margin-top:18px;display:grid}.date-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.month-picker{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.month-picker strong{color:#202833;font-size:1.2rem}.month-picker button{color:#1f6f8b;cursor:pointer;background:#fff;border:1px solid #c8d3dc;border-radius:6px;width:46px;height:42px;font-size:1.1rem;font-weight:900}.month-picker button:hover{border-color:#1f6f8b}.frequency-picker{border:1px solid #d7dee6;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px;padding:16px;display:grid}.frequency-picker legend{color:#384453;padding:0 6px;font-weight:800}.frequency-picker label{align-items:center;gap:8px;display:flex}.frequency-picker input{width:18px;height:18px}.frequency-picker .frequency-count{grid-column:1/-1;justify-content:flex-start}.frequency-picker .frequency-count input{width:100%;max-width:110px;height:auto}.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}.full-span-field{grid-column:1/-1}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}.sms-consent{color:#3a2604;background:#fff6df;border:2px solid #d99018;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:12px;margin-top:18px;padding:14px 16px;line-height:1.45;display:grid}.sms-consent input{width:28px;height:28px;margin:0}.sms-consent label{color:inherit;font-size:.95rem;font-weight:800;display:block}.sms-consent a{color:#551a8b;font-weight:900}.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:100%;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}.receipt-preview{object-fit:contain;border:1px solid #d7dee6;border-radius:8px;max-width:100%;max-height:360px;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}.link-action{justify-content:center;text-decoration:none;display:inline-flex}.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}.selected-meal-details{background:#f7f9fa;border:1px solid #d7dee6;border-radius:8px;margin-bottom:18px;padding:16px}.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-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;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) 70px auto;align-items:end;gap:10px;display:grid}.admin-filled-field input{width:22px;height:22px;margin:0}.bulk-date-row{background:#f8fafc;border:1px solid #d7dee6;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;padding:14px;display:grid}.admin-save{max-width:340px}.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}.schedule-table .text-action{white-space:nowrap}.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}.reminder-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.reminder-template-card{border:1px solid #d7dee6;border-radius:8px;gap:12px;padding:16px;display:grid}.reminder-template-card h3{color:#202833;margin:0}.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}.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,.frequency-picker,.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,.bulk-date-row,.reminder-template-grid,.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}}
