:root{--black:#0f0f0f;--dark:#1a1a1a;--panel:#222;--border:#2e2e2e;--muted:#888;--light:#ccc;--white:#f2f2f2;--orange:#e85d04;--orange-dim:#7a3000;--green:#2d9e6b;--red:#c0392b;--blue:#2980b9}*{box-sizing:border-box;margin:0;padding:0}body{background:#0f0f0f;background:var(--black);color:#f2f2f2;color:var(--white);font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;min-height:100vh}header{background:#1a1a1a;background:var(--dark);border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);height:56px;justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.logo,header{align-items:center;display:flex}.logo{flex-shrink:1;gap:10px;min-width:0}.logo span{color:#e85d04;color:var(--orange)}.logo small{color:#888;color:var(--muted);font-size:12px;font-weight:400;letter-spacing:0;margin-left:10px;text-transform:none}.logo-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logo-product{color:#e85d04;color:var(--orange);font-size:13px;font-weight:800;letter-spacing:.08em}.app-logo-img{display:block;flex-shrink:0;height:32px;max-width:148px;object-fit:contain}.logo-divider{background:#2e2e2e;background:var(--border);flex-shrink:0;height:28px;width:1px}.rebound-logo-img{display:block;flex-shrink:1;height:34px;min-width:92px;object-fit:contain;object-position:left center;width:152px}nav{display:flex;gap:4px}nav a,nav button.nav-btn{align-items:center;background:none;border:none;border-radius:4px;color:#888;color:var(--muted);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;padding:6px 14px;text-decoration:none;transition:color .15s,background .15s}nav a:hover,nav button.nav-btn:hover{background:#222;background:var(--panel);color:#f2f2f2;color:var(--white)}nav a.active,nav button.nav-btn.active{background:#e85d04;background:var(--orange);color:#f2f2f2;color:var(--white)}main{margin:0 auto;max-width:1100px;padding:28px 24px}.page-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.page-title{color:#f2f2f2;color:var(--white);font-size:20px;font-weight:800}.page-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.section-head{align-items:flex-start;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px}.section-head.compact{align-items:center;margin-bottom:10px}.section-meta{align-items:center;color:#888;color:var(--muted);display:inline-flex;font-size:12px;gap:6px;white-space:nowrap}.action-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.muted-empty{border:1px dashed #2e2e2e;border:1px dashed var(--border);border-radius:6px;color:#888;color:var(--muted);font-size:12px;padding:12px}.card{background:#1a1a1a;background:var(--dark);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:20px}.card.compact-card{padding:14px 16px}.card-title{color:#888;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.07em;margin-bottom:14px;text-transform:uppercase}.grid-2{grid-gap:16px;grid-template-columns:1fr 1fr}.grid-2,.grid-3{display:grid;gap:16px}.grid-3{grid-gap:16px;grid-template-columns:1fr 1fr 1fr}.grid-4{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}label{color:#888;color:var(--muted);display:block;font-size:11px;font-weight:600;letter-spacing:.06em;margin-bottom:5px;text-transform:uppercase}input,select,textarea{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#f2f2f2;color:var(--white);font-family:inherit;font-size:13px;outline:none;padding:9px 12px;transition:border-color .15s;width:100%}input:focus,select:focus,textarea:focus{border-color:#e85d04;border-color:var(--orange)}input:read-only{cursor:default}textarea{min-height:70px;resize:vertical}.field{margin-bottom:14px}select option{background:#222;background:var(--panel)}.field-hint{color:#888;color:var(--muted);font-size:11px;line-height:1.4;margin-top:6px}.workshop-logo-field{grid-gap:8px;align-items:stretch;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.workshop-logo-upload{align-items:center;justify-content:center;min-width:112px;white-space:nowrap}.workshop-logo-upload.disabled{opacity:.45;pointer-events:none}.workshop-logo-upload input{display:none}.workshop-logo-preview{align-items:center;background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;display:inline-flex;gap:12px;margin:-2px 0 14px;padding:10px 12px}.workshop-logo-preview img{display:block;max-height:58px;max-width:180px;object-fit:contain}.workshop-logo-preview span{color:#888;color:var(--muted);font-size:12px}.btn{align-items:center;border:none;border-radius:5px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;font-weight:600;gap:6px;padding:9px 18px;transition:opacity .15s}.btn:hover{opacity:.82}.btn:disabled{cursor:not-allowed;opacity:.4}.btn-primary{background:#e85d04;background:var(--orange);color:#fff}.btn-ghost{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);color:#ccc;color:var(--light)}.btn-green{background:#2d9e6b;background:var(--green);color:#fff}.btn-red{background:#c0392b;background:var(--red);color:#fff}.btn-sm{font-size:12px;padding:5px 12px}.btn-full{justify-content:center;width:100%}.badge{border-radius:3px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.07em;padding:2px 8px;text-transform:uppercase}.badge-fox{background:#7a3000;background:var(--orange-dim);color:#e85d04;color:var(--orange)}.badge-rockshox{background:#1a2a1a;color:#2d9e6b;color:var(--green)}.badge-ohlins{background:#2a2a1a;color:#cfcf60}.badge-sram{background:#1a2a1a;color:#2d9e6b;color:var(--green)}.badge-shimano{background:#1f2630;color:#87b7ff}.badge-other{background:#1a1a2a;color:#7a9fcf}.badge-fork{background:#1f1f2e;color:#9b9bef}.badge-shock{background:#1f2e1f;color:#7fcf9b}.badge-dropper{background:#2e1f1f;color:#cf9b7f}.badge-brake{background:#2d2418;color:#ffb35c}.badge-drivetrain{background:#172529;color:#7bd8e8}table{border-collapse:collapse;width:100%}th{color:#888;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em;padding:8px 12px;text-align:left;text-transform:uppercase}td,th{border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border)}td{color:#ccc;color:var(--light);font-size:13px;padding:11px 12px;vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:#ffffff05}.stat{background:#1a1a1a;background:var(--dark);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;padding:18px;text-align:center}.stat-val{color:#f2f2f2;color:var(--white);display:block;font-size:28px;font-weight:700}.stat-label{color:#888;color:var(--muted);display:block;font-size:11px;font-weight:600;letter-spacing:.06em;margin-top:4px;text-transform:uppercase}.payment-summary-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.payment-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.payment-tab-count{font-size:11px;opacity:.78}.payment-summary-text{line-height:1.35;margin:4px 0 7px;overflow-wrap:anywhere}.payment-actions{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr}.payment-actions .btn{justify-content:center;padding-left:8px;padding-right:8px}.payment-table td{overflow-wrap:anywhere}.modal-overlay{align-items:center;background:#000000c7;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:200}.modal{background:#1a1a1a;background:var(--dark);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:10px;max-height:92vh;max-width:700px;overflow-y:auto;padding:28px;width:100%}.modal-wide{max-width:860px}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.modal-title{font-size:17px;font-weight:700}.close-btn{background:none;border:none;color:#888;color:var(--muted);cursor:pointer;font-size:22px;line-height:1;padding:2px 6px}.close-btn:hover{color:#f2f2f2;color:var(--white)}.modal-action-bar{background:linear-gradient(180deg,#1a1a1aeb,#1a1a1a 30%);background:linear-gradient(180deg,#1a1a1aeb,var(--dark) 30%);border-top:1px solid #2e2e2e;border-top:1px solid var(--border);bottom:-28px;margin:22px -28px -28px;padding:14px 28px;position:-webkit-sticky;position:sticky;z-index:5}.modal-action-bar-inner{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.sec{color:#e85d04;color:var(--orange);font-size:11px;font-weight:700;letter-spacing:.08em;margin:20px 0 12px;text-transform:uppercase}hr{border:none;border-top:1px solid #2e2e2e;border-top:1px solid var(--border);margin:20px 0}.checklist{display:flex;flex-direction:column;gap:9px}.check-item{align-items:center;color:#ccc;color:var(--light);cursor:pointer;display:flex;font-size:13px;gap:10px;-webkit-user-select:none;user-select:none}.check-item input[type=checkbox],.check-item input[type=radio]{accent-color:#e85d04;accent-color:var(--orange);cursor:pointer;flex-shrink:0;height:16px;width:16px}.intake-details{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;margin:0 0 14px;padding:10px 12px}.intake-details summary{color:#e85d04;color:var(--orange);cursor:pointer;font-size:12px;font-weight:800}.alert{border-radius:6px;font-size:13px;margin-bottom:14px;padding:11px 14px}.alert-error{background:#c0392b26;border:1px solid #c0392b;border:1px solid var(--red);color:#e57373}.alert-success{background:#2d9e6b26;border:1px solid #2d9e6b;border:1px solid var(--green);color:#6fcfa4}.alert-info{background:#2980b926;border:1px solid #2980b9;border:1px solid var(--blue);color:#7ab8e0}.spinner{animation:spin .7s linear infinite;border:2px solid #2e2e2e;border-top-color:#e85d04;border:2px solid var(--border);border-radius:50%;border-top-color:var(--orange);display:inline-block;height:14px;vertical-align:middle;width:14px}@keyframes spin{to{transform:rotate(1turn)}}.comp-card{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;margin-bottom:10px;padding:14px 16px}.comp-card-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.comp-name{color:#f2f2f2;color:var(--white);font-size:14px;font-weight:700}.comp-meta{font-family:monospace;margin-top:3px}.comp-desc,.comp-meta{color:#888;color:var(--muted);font-size:12px}.comp-desc{line-height:1.5;margin-top:6px}.comp-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:7px}.job-row{align-items:center;border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:9px 0}.job-row:last-child{border-bottom:none}.job-customer-name{color:#f2f2f2;color:var(--white);font-size:14px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.dashboard-ops-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:1fr 1fr}.dashboard-lower-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:.85fr 1.2fr .95fr}.booking-history-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.dashboard-filter-tabs{display:flex;flex-wrap:wrap;gap:6px}.dashboard-toggle-chip{align-items:center;background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:4px;color:#888;color:var(--muted);display:inline-flex;font-size:10px;font-weight:800;justify-content:center;letter-spacing:.04em;line-height:1.3;min-width:46px;padding:3px 7px;text-transform:uppercase;white-space:nowrap}.dashboard-toggle-show{background:#2d9e6b1f;border-color:#2d9e6b8c;color:#2d9e6b;color:var(--green)}.dashboard-toggle-hide{background:#2980b91f;border-color:#2980b98c;color:#7ab8e0}.focus-summary-strip{grid-gap:0;background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;display:grid;gap:0;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px;overflow:hidden}.focus-summary-item{grid-gap:5px 8px;align-items:center;border-right:1px solid #2e2e2e;border-right:1px solid var(--border);display:grid;gap:5px 8px;grid-template-columns:auto 1fr;min-width:0;padding:10px 12px}.focus-summary-item:last-child{border-right:none}.focus-summary-item strong{color:#f2f2f2;color:var(--white);font-size:17px;line-height:1.1;overflow-wrap:anywhere;text-align:right}.focus-summary-item>span:last-child{color:#888;color:var(--muted);font-size:11px;grid-column:1/-1}.focus-queue{align-self:start;border-top:1px solid #2e2e2e;border-top:1px solid var(--border);min-width:0;padding-top:12px}.focus-job-row{align-items:flex-start;gap:12px}.focus-job-main{flex:1 1;min-width:0}.focus-job-title{color:#f2f2f2;color:var(--white);font-weight:800;line-height:1.3}.focus-job-meta,.focus-job-title{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focus-job-meta{color:#888;color:var(--muted);line-height:1.35;margin-top:2px}.focus-job-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.focus-job-badges .job-status-chip{max-width:100%}.focus-job-actions{grid-gap:6px;align-items:center;display:grid;flex-shrink:0;gap:6px;grid-template-columns:minmax(58px,auto) auto auto;justify-content:end}.focus-job-actions .btn{justify-content:center;padding-left:9px;padding-right:9px}.focus-job-date{color:#888;color:var(--muted);font-size:11px;line-height:1.35}.focus-due-date,.focus-job-date{text-align:right;white-space:nowrap}.focus-due-date{font-size:12px;font-weight:800;line-height:1.25}.focus-reminder-note{font-size:11px;line-height:1.35;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focus-reminder-row .focus-job-actions{grid-template-columns:minmax(84px,auto) auto}.dashboard-filter-tabs button{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#888;color:var(--muted);cursor:pointer;font:inherit;font-size:11px;font-weight:800;letter-spacing:.04em;padding:6px 10px;text-transform:uppercase}.dashboard-filter-tabs button.active,.dashboard-filter-tabs button:hover{background:#e85d041f;border-color:#e85d04;border-color:var(--orange);color:#f2f2f2;color:var(--white)}.calendar-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:9px;min-height:138px;min-width:0;padding:10px}.calendar-day.today{border-color:#e85d04;border-color:var(--orange);box-shadow:inset 0 0 0 1px #e85d0459}.calendar-day-head{align-items:baseline;color:#888;color:var(--muted);display:flex;font-size:11px;gap:8px;justify-content:space-between;letter-spacing:.06em;text-transform:uppercase}.calendar-day-head strong{color:#f2f2f2;color:var(--white);font-size:12px;letter-spacing:0;text-transform:none}.calendar-summary{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;max-width:620px}.calendar-summary span{align-items:center;background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#888;color:var(--muted);display:inline-flex;font-size:11px;gap:5px;padding:4px 8px;white-space:nowrap}.calendar-summary strong{color:#f2f2f2;color:var(--white)}.calendar-jobs{display:flex;flex-direction:column;gap:6px;min-width:0}.calendar-job-card{border-radius:5px;position:relative}.calendar-job{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#ccc;color:var(--light);cursor:pointer;font-family:inherit;padding:7px;position:relative;text-align:left;width:100%}.calendar-job:hover{border-color:#e85d04;border-color:var(--orange)}.calendar-job-orange .calendar-job{border-left:3px solid #e85d04;border-left:3px solid var(--orange)}.calendar-job-green .calendar-job{border-left:3px solid #2d9e6b;border-left:3px solid var(--green)}.calendar-job-blue .calendar-job{border-left:3px solid #2980b9;border-left:3px solid var(--blue)}.calendar-job-muted .calendar-job{border-left:3px solid #888;border-left:3px solid var(--muted)}.calendar-job-topline{align-items:flex-start;color:#f2f2f2;color:var(--white);display:flex!important;gap:6px}.calendar-job-topline>span{color:#f2f2f2;color:var(--white);display:block;flex:1 1;font-size:12px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-job-topline em{color:#e85d04;color:var(--orange);flex-shrink:0;font-size:9px;font-style:normal;font-weight:800;letter-spacing:.04em;line-height:1.2;max-width:84px;text-align:right;text-transform:uppercase}.calendar-job span{color:#f2f2f2;color:var(--white);font-size:12px;font-weight:700}.calendar-job small,.calendar-job span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-job small{color:#888;color:var(--muted);font-size:11px;margin-top:2px}.calendar-empty{color:#888;color:var(--muted);font-size:12px;padding-top:4px}.calendar-more{color:#e85d04;color:var(--orange);font-size:11px;font-weight:700}.calendar-job-actions{display:flex;flex-wrap:wrap;gap:4px;max-height:0;opacity:0;overflow:hidden;transform:translateY(-2px);transition:max-height .14s ease,opacity .14s ease,transform .14s ease}.calendar-job-card:focus-within .calendar-job-actions,.calendar-job-card:hover .calendar-job-actions{margin-top:5px;max-height:56px;opacity:1;transform:translateY(0)}.calendar-job-actions .btn{font-size:10px;line-height:1.2;padding:3px 7px}.calendar-job-popover{background:#111;border:1px solid #e85d04;border:1px solid var(--orange);border-radius:6px;bottom:calc(100% + 8px);box-shadow:0 12px 30px #00000073;left:0;opacity:0;padding:10px 12px;pointer-events:none;position:absolute;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;width:min(280px,72vw);z-index:30}.calendar-job:focus-visible .calendar-job-popover,.calendar-job:hover .calendar-job-popover{opacity:1;transform:translateY(0)}.calendar-job-popover span{color:#ccc;color:var(--light);display:block;font-size:12px;line-height:1.45;overflow:visible;text-overflow:clip;white-space:normal}.calendar-job-popover .calendar-pop-title{color:#f2f2f2;color:var(--white);font-weight:800;margin-bottom:5px}.job-status-chip{align-items:center;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:4px;display:inline-flex;font-size:10px;font-weight:800;justify-content:center;letter-spacing:.04em;line-height:1.3;padding:2px 6px;text-transform:uppercase;white-space:nowrap}.job-status-orange{background:#e85d041c;border-color:#e85d048c;color:#e85d04;color:var(--orange)}.job-status-green{background:#2d9e6b1f;border-color:#2d9e6b8c;color:#2d9e6b;color:var(--green)}.job-status-blue{background:#2980b91f;border-color:#2980b98c;color:#7ab8e0}.job-status-muted{background:#222;background:var(--panel);color:#888;color:var(--muted)}.booking-request-row{align-items:flex-start;border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);display:flex;gap:16px;justify-content:space-between;padding:12px 0}.booking-request-row:last-child{border-bottom:none}.job-modal-summary{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.job-modal-summary-item{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;min-width:0;padding:10px 12px}.job-modal-summary-item span{color:#888;color:var(--muted);display:block;font-size:10px;font-weight:800;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}.job-modal-summary-item strong{color:#f2f2f2;color:var(--white);display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-modal-summary-item.green strong{color:#2d9e6b;color:var(--green)}.job-modal-callout{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;margin-bottom:16px;padding:14px}.job-modal-callout-title{color:#e85d04;color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.07em;margin-bottom:12px;text-transform:uppercase}.customer-card-head{align-items:flex-start;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px}.customer-list{grid-gap:8px;display:grid;gap:8px}.customer-list-item{background:#1a1a1a;background:var(--dark);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;overflow:hidden}.customer-list-item.is-open{border-color:#e85d048c}.customer-list-row{grid-gap:12px;align-items:center;background:#0000;border:0;color:inherit;cursor:pointer;display:grid;font:inherit;gap:12px;grid-template-columns:minmax(220px,1.25fr) minmax(360px,1.7fr) auto;padding:12px 14px;text-align:left;width:100%}.customer-list-row:hover{background:hsla(0,0%,100%,.025)}.customer-list-main,.customer-list-metrics{min-width:0}.customer-list-main{grid-gap:3px;display:grid;gap:3px}.customer-list-name{color:#f2f2f2;color:var(--white);font-size:14px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-list-activity,.customer-list-contact{color:#888;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-list-metrics{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.customer-list-metrics>span:not(.job-status-chip){align-items:center;color:#888;color:var(--muted);display:inline-flex;font-size:11px;gap:4px;white-space:nowrap}.customer-list-metrics strong{color:#f2f2f2;color:var(--white)}.customer-list-toggle{color:#e85d04;color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.customer-detail-panel{border-top:1px solid #2e2e2e;border-top:1px solid var(--border);padding:14px}.customer-summary{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.customer-summary-chip{align-items:center;background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#888;color:var(--muted);display:inline-flex;font-size:11px;gap:5px;padding:4px 8px}.customer-summary-chip strong{color:#f2f2f2;color:var(--white)}.customer-bike-selector{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:auto minmax(220px,340px);margin-top:8px}.customer-bike-selector label{color:#e85d04;color:var(--orange);font-size:12px;font-weight:700}.customer-bike-selector select{min-height:34px;padding:6px 10px}.customer-bike-panel{align-items:center;background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;display:flex;gap:12px;justify-content:space-between;margin:0 0 12px;padding:12px 14px}.settings-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.service-group-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.booking-page{align-items:flex-start;background:#0f0f0f;background:var(--black);color:#f2f2f2;color:var(--white);min-height:100vh;padding:24px}.booking-page,.booking-page-embed{display:flex;justify-content:center}.booking-page-embed{background:#0000;min-height:auto;padding:22px 16px 26px}.booking-shell{background:#1a1a1a;background:var(--dark);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;max-width:720px;padding:28px;width:100%}.booking-page-embed .booking-shell{border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:10px;box-shadow:0 14px 34px #00000047;margin:0 auto;max-width:620px;padding:18px}.booking-brand{font-size:18px;font-weight:800;letter-spacing:.06em;margin-bottom:22px;text-transform:uppercase}.booking-brand span{color:#e85d04;color:var(--orange)}.booking-brand-with-logo{align-items:center;display:flex;gap:13px}.booking-brand-with-logo img{display:block;flex-shrink:0;max-height:54px;max-width:190px;object-fit:contain}.booking-page-embed .booking-brand{font-size:16px;margin-bottom:16px}.booking-page-embed .booking-brand-with-logo img{max-height:46px;max-width:160px}.booking-widget-progress{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.booking-widget-progress button{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#888;color:var(--muted);cursor:pointer;font-family:inherit;font-size:10px;font-weight:800;letter-spacing:.04em;min-width:0;padding:7px 5px;text-transform:uppercase}.booking-widget-progress button span{align-items:center;background:#0f0f0f;background:var(--black);border-radius:50%;color:#888;color:var(--muted);display:inline-flex;font-size:10px;height:16px;justify-content:center;margin-right:4px;width:16px}.booking-widget-progress button.active{border-color:#e85d04;border-color:var(--orange);color:#f2f2f2;color:var(--white)}.booking-widget-progress button.active span{background:#e85d04;background:var(--orange);color:#fff}.booking-widget-progress button.done{color:#2d9e6b;color:var(--green)}.booking-widget-selected{align-items:center;background:#2d9e6b1a;border:1px solid #2d9e6b73;border-radius:6px;color:#ccc;color:var(--light);display:flex;font-size:12px;gap:10px;justify-content:space-between;margin-bottom:12px;padding:8px 10px}.booking-widget-selected span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-widget-selected strong{color:#2d9e6b;color:var(--green);white-space:nowrap}.booking-widget-title{color:#f2f2f2;color:var(--white);font-size:14px;font-weight:800;margin-bottom:10px}.booking-step-hidden{display:none}.booking-widget-nav{display:flex;gap:10px;justify-content:space-between;margin-top:12px}.booking-widget-nav .btn{flex:1 1;justify-content:center}.booking-page-embed .field{margin-bottom:10px}.booking-page-embed input,.booking-page-embed select,.booking-page-embed textarea{padding:9px 10px}.booking-page-embed textarea{min-height:54px}.booking-page-embed .grid-2,.booking-page-embed .grid-3{gap:12px}.booking-days{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin:-4px 0 16px}.booking-day{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#ccc;color:var(--light);cursor:pointer;font-family:inherit;padding:9px 8px;text-align:left}.booking-day span{color:#f2f2f2;color:var(--white);display:block;font-size:12px;font-weight:700}.booking-day small{color:#888;color:var(--muted);display:block;font-size:11px;margin-top:2px}.booking-day.active{border-color:#e85d04;border-color:var(--orange);box-shadow:inset 0 0 0 1px #e85d04;box-shadow:inset 0 0 0 1px var(--orange)}.booking-day:disabled{cursor:not-allowed;opacity:.45}.booking-slot-panel{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;margin:-4px 0 16px;padding:12px}.booking-slot-title{color:#888;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}.booking-date-status{color:#2d9e6b;color:var(--green);font-size:12px;margin-top:6px}.booking-date-status.full{color:#e85d04;color:var(--orange)}.booking-services{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;margin-bottom:16px;padding:14px}.booking-page-embed .booking-services{margin-bottom:12px;max-height:300px;overflow-y:auto;padding:12px}.booking-service-group{color:#e85d04;color:var(--orange);font-size:11px;font-weight:700;letter-spacing:.06em;margin-bottom:8px;text-transform:uppercase}.booking-service{grid-gap:10px;align-items:start;border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);cursor:pointer;display:grid;gap:10px;grid-template-columns:18px 1fr auto;padding:9px 0}.booking-page-embed .booking-service{grid-template-columns:18px minmax(0,1fr) auto;padding:7px 0}.booking-page-embed .booking-service strong{font-size:12px}.booking-page-embed .booking-service small{font-size:11px}.booking-service:last-child{border-bottom:none}.booking-service input{accent-color:#e85d04;accent-color:var(--orange);height:16px;margin-top:2px;width:16px}.booking-service strong{color:#f2f2f2;color:var(--white);display:block;font-size:13px}.booking-service small{color:#888;color:var(--muted);display:block;font-size:12px;margin-top:2px}.booking-service em{color:#2d9e6b;color:var(--green);font-size:12px;font-style:normal;font-weight:700;white-space:nowrap}.booking-service-total{border-top:1px solid #2e2e2e;border-top:1px solid var(--border);color:#888;color:var(--muted);display:flex;font-size:13px;gap:12px;justify-content:space-between;margin-top:12px;padding-top:12px}.booking-service-total strong{color:#2d9e6b;color:var(--green)}.booking-confirm{background:#2d9e6b1f;border:1px solid #2d9e6b;border:1px solid var(--green);border-radius:8px;padding:22px}.booking-confirm-title{color:#2d9e6b;color:var(--green);font-size:18px;font-weight:800;margin-bottom:8px}.detail-row{border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);display:flex;gap:12px;padding:7px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#888;color:var(--muted);font-size:12px;min-width:200px}.detail-val{color:#ccc;color:var(--light);font-size:13px}.search-wrap{margin-bottom:18px;position:relative}.search-wrap input{padding:10px 40px 10px 38px}.search-icon{font-size:15px;left:12px;pointer-events:none}.search-clear,.search-icon{color:#888;color:var(--muted);position:absolute;top:50%;transform:translateY(-50%)}.search-clear{background:none;border:none;cursor:pointer;font-size:18px;line-height:1;padding:2px 4px;right:10px}.search-clear:hover{color:#f2f2f2;color:var(--white)}.result-count{color:#888;color:var(--muted);font-size:12px;margin-bottom:12px}.legacy-import-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);margin-bottom:16px}.legacy-import-note{background:#e85d0414;border:1px solid #e85d0459;border-radius:6px;color:#ccc;color:var(--light);font-size:12px;line-height:1.45;margin-bottom:14px;padding:10px 12px}.legacy-import-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr;margin-bottom:12px}.legacy-import-stats span{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;color:#888;color:var(--muted);display:flex;font-size:12px;gap:10px;justify-content:space-between;padding:9px 10px}.legacy-import-stats strong{color:#f2f2f2;color:var(--white)}.legacy-preview-card{margin-bottom:16px}.legacy-preview-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:14px}.legacy-preview-table{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr}.legacy-preview-row{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;padding:10px 12px}.legacy-preview-error{border-color:#e85d048c}.legacy-preview-row-main,.legacy-preview-row-meta,.legacy-preview-row-warnings{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.legacy-preview-row-main{color:#ccc;color:var(--light);font-size:12px}.legacy-preview-row-main strong{color:#f2f2f2;color:var(--white);font-size:13px}.legacy-preview-row-meta{color:#888;color:var(--muted);font-size:11px;margin-top:6px}.legacy-preview-row-meta span,.legacy-preview-row-warnings span{background:#ffffff08;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:999px;padding:3px 7px}.legacy-preview-row-warnings{color:#e85d04;color:var(--orange);font-size:11px;margin-top:7px}.legacy-history-list{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr}.legacy-history-list.compact{margin-top:10px}.legacy-history-row{align-items:flex-start;background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;display:flex;gap:14px;justify-content:space-between;padding:11px 12px}.legacy-history-row.compact{background:hsla(0,0%,100%,.025);padding:9px 10px}.legacy-history-meta,.legacy-history-title{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.legacy-history-title{color:#ccc;color:var(--light);font-size:12px}.legacy-history-title strong{color:#f2f2f2;color:var(--white);font-size:13px}.legacy-history-meta{color:#888;color:var(--muted);font-size:11px;margin-top:4px}.legacy-history-copy{color:#888;color:var(--muted);font-size:12px;line-height:1.4;margin-top:5px}.legacy-history-amount{color:#2d9e6b;color:var(--green);font-size:12px;font-weight:700;white-space:nowrap}.legacy-customer-history{background:hsla(0,0%,100%,.025);border:1px solid #ffffff14;border-radius:6px;margin-bottom:12px;padding:12px}.legacy-history-section-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.lookup-result{background:#0f0f0f;background:var(--black);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;margin-top:12px;padding:14px}.lookup-result-name{color:#f2f2f2;color:var(--white);font-size:15px;font-weight:700;margin-bottom:4px}.lookup-result-meta{color:#888;color:var(--muted);font-size:12px}.lookup-result-desc{color:#ccc;color:var(--light);font-size:12px;line-height:1.5;margin-top:6px}.empty{color:#888;color:var(--muted);padding:48px 24px;text-align:center}.empty-icon{font-size:36px;margin-bottom:10px}.duration-display{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;font-size:13px;margin-bottom:16px;padding:10px 14px}.auth-wrap{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:24px}.auth-card{background:#1a1a1a;background:var(--dark);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:10px;max-width:420px;padding:36px;width:100%}.auth-logo{font-size:20px;font-weight:800;letter-spacing:.06em;margin-bottom:28px;text-align:center;text-transform:uppercase}.auth-logo span{color:#e85d04;color:var(--orange)}.auth-tabs{display:flex;gap:2px;margin-bottom:24px}.auth-tab{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:4px;color:#888;color:var(--muted);cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px;text-align:center}.auth-tab.active{background:#e85d04;background:var(--orange);border-color:#e85d04;border-color:var(--orange);color:#fff}.mono{font-family:monospace}.mt4{margin-top:4px}.mt12{margin-top:12px}.mt16{margin-top:16px}.text-green{color:#2d9e6b;color:var(--green)}.text-orange{color:#e85d04;color:var(--orange)}.text-muted{color:#888;color:var(--muted)}.text-white{color:#f2f2f2;color:var(--white)}.fw7{font-weight:700}.fs12{font-size:12px}.fs11{font-size:11px}.highlight{background:#e85d0440;border-radius:2px;color:#f2f2f2;color:var(--white);padding:0 1px}.legal-body{color:#ccc;color:var(--light);font-size:14px;line-height:1.7}.legal-body h1{font-size:24px;font-weight:800;margin-bottom:6px}.legal-body h1,.legal-body h2{color:#f2f2f2;color:var(--white)}.legal-body h2{border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);font-size:15px;font-weight:700;margin-bottom:8px;margin-top:28px;padding-bottom:4px}.legal-body p{margin-bottom:12px}.legal-body ul{color:#ccc;color:var(--light);margin:0 0 14px 18px}.legal-body li{margin-bottom:6px}.legal-body a{color:#e85d04;color:var(--orange);text-decoration:none}.legal-body a:hover{text-decoration:underline}.legal-body .meta{color:#888;color:var(--muted);font-size:12px;margin-bottom:28px}.legal-footer{color:#888;color:var(--muted);font-size:11px;margin-top:20px;text-align:center}.legal-footer a{color:#888;color:var(--muted);cursor:pointer;text-decoration:underline}.legal-footer a:hover{color:#ccc;color:var(--light)}.rider-portal{background:radial-gradient(circle at top right,#e85d0414,#0000 32rem),#0f0f0f;background:radial-gradient(circle at top right,#e85d0414,#0000 32rem),var(--black);min-height:100vh;min-height:100dvh}.rider-header{position:-webkit-sticky;position:sticky;top:0}.rider-main{margin:0 auto;max-width:1080px;padding:26px 20px 42px;width:100%}.rider-nav{align-items:center;display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.portal-summary-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.portal-due,.portal-stat{color:#f2f2f2;color:var(--white);font-size:24px;font-weight:800;line-height:1.15}.portal-due{color:#2d9e6b;color:var(--green)}.portal-bike-grid,.portal-component-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-bike-card{background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;color:#f2f2f2;color:var(--white);display:flex;gap:14px;justify-content:space-between;min-height:132px;padding:16px;text-decoration:none}.portal-bike-card:hover{border-color:#e85d04;border-color:var(--orange)}.portal-bike-card h3,.portal-component-card h3{font-size:17px;line-height:1.25;margin:9px 0 5px}.portal-bike-card p{color:#888;color:var(--muted);font-size:12px}.portal-bike-card>span:last-child{align-self:flex-end;color:#e85d04;color:var(--orange);font-size:12px;font-weight:700;white-space:nowrap}.portal-pill{align-items:center;background:#ffffff08;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:999px;color:#ccc;color:var(--light);display:inline-flex;font-size:11px;font-weight:700;padding:3px 8px;text-transform:capitalize;width:-webkit-fit-content;width:fit-content}.portal-action-list{grid-gap:8px;display:grid;gap:8px}.portal-action-list a,.portal-action-list span{align-items:center;background:#222;background:var(--panel);border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;color:#ccc;color:var(--light);display:flex;justify-content:space-between;min-height:42px;padding:10px 12px;text-decoration:none}.portal-action-list a:hover{border-color:#e85d04;border-color:var(--orange);color:#f2f2f2;color:var(--white)}.portal-context-grid,.portal-detail-grid,.portal-mini-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.portal-context-grid>div,.portal-detail,.portal-mini-grid>div{background:#111;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;padding:10px 12px}.portal-context-grid span,.portal-detail span,.portal-mini-grid span{color:#888;color:var(--muted);display:block;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.portal-context-grid strong,.portal-detail strong,.portal-mini-grid strong{color:#f2f2f2;color:var(--white);display:block;font-size:13px;margin-top:4px;overflow-wrap:anywhere}.portal-component-card{background:#111;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;padding:14px}.portal-card-title-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.portal-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-report-row{align-items:center;border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);color:#f2f2f2;color:var(--white);display:flex;gap:16px;justify-content:space-between;padding:13px 0;text-decoration:none}.portal-report-row:last-child{border-bottom:none}.portal-report-row:hover span{color:#ccc;color:var(--light)}.portal-report-row strong{color:#f2f2f2;color:var(--white);display:block;font-size:13px}.portal-report-row span{color:#888;color:var(--muted);display:block;font-size:12px;margin-top:3px}.portal-report-row>div:last-child{flex-shrink:0;text-align:right}.portal-service-picker{background:#111;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:8px;margin:12px 0 16px;padding:14px}.portal-service-option{grid-gap:12px;align-items:flex-start;border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:12px 0}.portal-service-option:last-child{border-bottom:none}.portal-service-option input{height:16px;margin-top:4px;width:16px}.portal-service-option em,.portal-service-option small,.portal-service-option strong{display:block}.portal-service-option strong{color:#f2f2f2;color:var(--white);font-size:13px}.portal-service-option small{color:#e85d04;color:var(--orange);font-size:11px;font-weight:700;letter-spacing:.04em;margin-top:3px;text-transform:uppercase}.portal-service-option em{color:#888;color:var(--muted);font-size:12px;font-style:normal;line-height:1.45;margin-top:4px}.portal-service-option b{color:#2d9e6b;color:var(--green);font-size:12px;white-space:nowrap}.portal-symptom-grid{grid-gap:8px 12px;display:grid;gap:8px 12px;grid-template-columns:repeat(3,minmax(0,1fr))}.portal-symptom-grid .check-item{margin-bottom:0}.portal-recommendation{background:#2ecc710f;border:1px solid #2ecc7157;border-radius:8px;margin-top:16px;padding:14px}.recommendation-block{background:#111;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:6px;padding:12px}.recommendation-block p{color:#ccc;color:var(--light);font-size:13px;line-height:1.5;margin:8px 0 0}.recommendation-block ul{color:#ccc;color:var(--light);font-size:13px;line-height:1.55;margin:8px 0 0 18px}@media (max-width:640px){header{gap:8px;padding:0 12px}.logo small{display:none}.app-logo-img{height:28px;max-width:104px}.logo-divider{height:24px}.rebound-logo-img{height:28px;width:118px}nav{gap:2px}nav a,nav button.nav-btn{font-size:12px;padding:6px 8px}main{padding:16px 12px}.page-head{align-items:flex-start;flex-direction:column}.page-actions{justify-content:stretch;width:100%}.page-actions .btn{flex:1 1;justify-content:center}.section-head{align-items:flex-start;flex-direction:column}.section-meta{white-space:normal}.booking-history-grid,.dashboard-lower-grid,.dashboard-ops-grid,.grid-2,.grid-3,.grid-4,.job-modal-summary,.payment-summary-grid{grid-template-columns:1fr}.focus-summary-strip{grid-template-columns:1fr 1fr}.focus-summary-item:nth-child(2n){border-right:none}.focus-summary-item:nth-child(-n+2){border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border)}.workshop-logo-field{grid-template-columns:1fr}.workshop-logo-upload{width:100%}.focus-job-meta,.focus-job-title,.focus-reminder-note{white-space:normal}.focus-job-actions{grid-template-columns:minmax(0,1fr) auto auto;justify-content:stretch;width:100%}.focus-due-date,.focus-job-date{text-align:left}.focus-reminder-row .focus-job-actions{grid-template-columns:minmax(0,1fr) auto}.customer-card-head{flex-direction:column}.customer-summary{width:100%}.customer-list-row{gap:8px}.customer-list-row,.legacy-import-grid{grid-template-columns:1fr}.legacy-history-row{flex-direction:column}.legacy-history-amount{white-space:normal}.customer-list-toggle{justify-self:flex-start}.customer-bike-selector{grid-template-columns:1fr}.customer-bike-panel{align-items:flex-start;flex-direction:column}.card{padding:14px}.modal-overlay{align-items:flex-end;padding:0}.modal,.modal-wide{border-radius:12px 12px 0 0;max-height:96vh;max-width:100%;padding:20px 16px}.modal-action-bar{bottom:-20px;margin:18px -16px -20px;padding:12px 16px}.modal-action-bar-inner>div{width:100%}.modal-action-bar-inner .btn{flex:1 1;justify-content:center}.detail-row{flex-direction:column;gap:2px}.detail-label{font-size:11px;min-width:0;min-width:auto}.job-row{align-items:flex-start;flex-direction:column;gap:8px}.calendar-grid{grid-template-columns:1fr 1fr}.calendar-day{min-height:118px}.calendar-summary{justify-content:flex-start;max-width:none}.calendar-job-actions{margin-top:5px;max-height:none;opacity:1;transform:none}.booking-request-row{flex-direction:column;gap:10px}.booking-request-row>div:last-child{width:100%}.booking-request-row .btn{flex:1 1;justify-content:center}.booking-page{padding:12px}.booking-shell{padding:18px 14px}.booking-page-embed{padding:0}.booking-page-embed .booking-shell{padding:16px 12px}.booking-widget-progress{grid-template-columns:1fr 1fr}.booking-widget-selected{align-items:flex-start;flex-direction:column}.booking-days{grid-template-columns:1fr 1fr}.booking-service{grid-template-columns:18px 1fr}.booking-service em{grid-column:2}.comp-card-top{flex-direction:column;gap:8px}.comp-actions{flex-wrap:wrap;width:100%}.comp-actions .btn{flex:1 1;justify-content:center;min-width:80px}.grid-4{grid-template-columns:1fr 1fr}.modal hr+div,.modal hr~div:last-child{flex-wrap:wrap}.modal hr+div .btn,.modal hr~div:last-child .btn{flex:1 1;justify-content:center;min-width:100px}.modal input[type=email]{min-width:0;width:100%}table{display:block;overflow-x:auto;white-space:nowrap}.search-wrap{margin-bottom:12px}.rider-header{align-items:flex-start;flex-direction:column;height:auto;min-height:56px;padding-bottom:10px;padding-top:10px}.rider-main{padding:16px 12px 32px}.rider-nav{justify-content:flex-start;width:100%}.rider-nav a,.rider-nav button.nav-btn{flex:1 1 auto;font-size:12px;justify-content:center;padding:7px 9px}.portal-bike-grid,.portal-component-grid,.portal-context-grid,.portal-detail-grid,.portal-mini-grid,.portal-summary-grid,.portal-symptom-grid{grid-template-columns:1fr}.portal-bike-card,.portal-card-title-row,.portal-report-row,.portal-service-option{align-items:flex-start;flex-direction:column}.portal-service-option{display:flex}.portal-report-row>div:last-child{text-align:left}.rider-portal{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.rider-header{align-items:center;flex-direction:row;gap:10px;min-height:54px;padding:9px 12px;position:-webkit-sticky;position:sticky;top:0;z-index:120}.rider-header .logo{flex:1 1 auto;min-width:0}.rider-header .app-logo-img{height:28px;max-width:92px}.rider-header .logo-text{min-width:0}.rider-header .logo-text span{display:block;max-width:58vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rider-main{padding:18px 12px}.rider-main .page-head{gap:13px;margin-bottom:14px}.rider-main .page-title{font-size:26px;line-height:1.08;overflow-wrap:anywhere}.rider-main .page-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr;width:100%}.rider-main .page-actions .btn,.rider-main form.card>.btn,.rider-main>.btn{justify-content:center;min-height:44px;width:100%}.rider-nav{grid-gap:4px;background:#1a1a1af7;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:14px;bottom:calc(10px + env(safe-area-inset-bottom));box-shadow:0 14px 34px #00000085;display:grid;gap:4px;grid-template-columns:repeat(5,minmax(0,1fr));left:10px;padding:6px;position:fixed;right:10px;width:auto;z-index:160}.rider-nav a,.rider-nav button.nav-btn{border-radius:10px;font-size:11px;justify-content:center;line-height:1.1;min-height:42px;min-width:0;padding:8px 4px;text-align:center;white-space:normal}.rider-nav button.nav-btn{font-size:0}.rider-nav button.nav-btn:after{content:"Out";font-size:11px}.rider-portal .card{border-radius:12px;margin-bottom:12px;padding:16px}.rider-portal .card.compact-card{padding:14px}.rider-portal .section-head,.rider-portal .section-head.compact{align-items:flex-start;gap:10px}.rider-portal .section-head .btn{justify-content:center;width:100%}.portal-summary-grid{gap:10px;margin-bottom:12px}.portal-due,.portal-stat{font-size:30px;line-height:1.05}.portal-bike-grid,.portal-component-grid{gap:10px}.portal-bike-card,.portal-component-card{border-radius:12px;min-width:0;padding:16px}.portal-bike-card{gap:12px;min-height:auto}.portal-bike-card h3,.portal-component-card h3{font-size:20px;line-height:1.15;overflow-wrap:anywhere}.portal-bike-card>span:last-child{align-self:stretch;white-space:normal}.portal-card-title-row{gap:10px;width:100%}.portal-pill{text-align:center;white-space:normal}.portal-context-grid,.portal-detail-grid,.portal-mini-grid{gap:8px}.portal-context-grid>div,.portal-detail,.portal-mini-grid>div{border-radius:10px;padding:12px}.portal-report-row{gap:9px;padding:14px 0}.portal-report-row strong{font-size:14px}.portal-report-row>div:last-child{text-align:left;width:100%}.portal-action-list a,.portal-action-list span{border-radius:10px;min-height:48px}.portal-service-picker{border-radius:12px;padding:12px}.portal-service-option{grid-gap:10px;display:grid;gap:10px;grid-template-columns:28px minmax(0,1fr);padding:13px 0}.portal-service-option input{height:20px;width:20px}.portal-service-option b{grid-column:2;white-space:normal}.portal-symptom-grid{gap:8px}.portal-symptom-grid .check-item{align-items:center;min-height:44px}.portal-recommendation,.recommendation-block{border-radius:12px;padding:14px}.portal-component-card .action-row{align-items:stretch;justify-content:stretch;width:100%}.portal-component-card .action-row>span{width:100%}.portal-bike-card .btn,.portal-component-card .action-row .btn{justify-content:center;width:100%}.rider-portal .alert{border-radius:12px}}@media (max-width:420px){.rider-main{padding-left:10px;padding-right:10px}.rider-header .app-logo-img{max-width:78px}.rider-header .logo-text span{max-width:50vw}.rider-nav{border-radius:12px;bottom:calc(7px + env(safe-area-inset-bottom));left:7px;right:7px}.rider-nav a,.rider-nav button.nav-btn:after{font-size:10px}.rider-main .page-title{font-size:24px}}.nav-hamburger{background:none;border:1px solid #2e2e2e;border:1px solid var(--border);border-radius:5px;color:#f2f2f2;color:var(--white);cursor:pointer;display:none;font-size:18px;line-height:1;padding:6px 10px}.nav-desktop{display:flex;gap:4px}.nav-mobile-menu{background:#1a1a1a;background:var(--dark);border-bottom:1px solid #2e2e2e;border-bottom:1px solid var(--border);display:none;flex-direction:column;gap:4px;left:0;padding:8px;position:fixed;right:0;top:56px;z-index:99}.nav-mobile-menu a,.nav-mobile-menu button{background:none;border:none;border-radius:5px;color:#888;color:var(--muted);cursor:pointer;display:block;font-family:inherit;font-size:14px;font-weight:500;padding:12px 16px;text-align:left;text-decoration:none;width:100%}.nav-mobile-menu a:hover,.nav-mobile-menu button:hover{background:#222;background:var(--panel);color:#f2f2f2;color:var(--white)}.nav-mobile-menu a.active{background:#e85d04;background:var(--orange);color:#fff}@media (max-width:640px){.nav-desktop{display:none}.nav-hamburger{display:block}.nav-mobile-menu{display:flex}.job-row>div:last-child{flex-wrap:wrap;width:100%}.job-row>div:last-child .btn{flex:1 1;justify-content:center;min-width:70px}}
/*# sourceMappingURL=main.5c0dbaf5.css.map*/