.vertical-timeline *{box-sizing:border-box}.vertical-timeline{width:95%;max-width:1170px;margin:0 auto;padding:2em 0;position:relative}.vertical-timeline:after{content:"";clear:both;display:table}.vertical-timeline:before{content:"";background:var(--line-color);width:4px;height:100%;position:absolute;top:0;left:18px}.vertical-timeline.vertical-timeline--one-column-right:before{right:18px;left:unset}@media only screen and (width>=1170px){.vertical-timeline.vertical-timeline--two-columns{width:90%}.vertical-timeline.vertical-timeline--two-columns:before{margin-left:-2px;left:50%}}.vertical-timeline-element{margin:2em 0;position:relative}.vertical-timeline-element>div{min-height:1px}.vertical-timeline-element:after{content:"";clear:both;display:table}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}@media only screen and (width>=1170px){.vertical-timeline-element{margin:4em 0}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}}.vertical-timeline-element-icon{border-radius:50%;width:40px;height:40px;position:absolute;top:0;left:0}.vertical-timeline-element-icon.shadow-size-small{box-shadow:0 0 0 2px #fff,inset 0 1px #00000014,0 2px 0 4px #0000000d}.vertical-timeline-element-icon.shadow-size-medium{box-shadow:0 0 0 3px #fff,inset 0 2px #00000014,0 3px 0 5px #0000000d}.vertical-timeline-element-icon.shadow-size-large{box-shadow:0 0 0 4px #fff,inset 0 2px #00000014,0 4px 0 6px #0000000d}.vertical-timeline--one-column-right .vertical-timeline-element-icon{right:0;left:unset}.vertical-timeline-element-icon svg{width:24px;height:24px;margin-top:-12px;margin-left:-12px;display:block;position:relative;top:50%;left:50%}@media only screen and (width>=1170px){.vertical-timeline--two-columns .vertical-timeline-element-icon{width:60px;height:60px;margin-left:-30px;left:50%}}.vertical-timeline-element-icon{-webkit-backface-visibility:hidden;-webkit-transform:translateZ(0)}.vertical-timeline--animate .vertical-timeline-element-icon.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.bounce-in{visibility:visible;animation:.6s cd-bounce-1}@-webkit-keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2)}to{-webkit-transform:scale(1)}}@-moz-keyframes cd-bounce-1{0%{opacity:0;-moz-transform:scale(.5)}60%{opacity:1;-moz-transform:scale(1.2)}to{-moz-transform:scale(1)}}@keyframes cd-bounce-1{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.2)}to{transform:scale(1)}}.vertical-timeline-element-content{background:#fff;border-radius:.25em;margin-left:60px;padding:1em;position:relative;box-shadow:0 3px #ddd}.vertical-timeline--one-column-right .vertical-timeline-element-content{margin-right:60px;margin-left:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content{box-shadow:none;background:0 0}.vertical-timeline-element-content:after{content:"";clear:both;display:table}.vertical-timeline-element-content h2{color:#303e49}.vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline-element-content p{font-size:.8125rem;font-weight:500}.vertical-timeline-element-content .vertical-timeline-element-date{display:inline-block}.vertical-timeline-element-content p{margin:1em 0 0;line-height:1.6}.vertical-timeline-element-title,.vertical-timeline-element-subtitle{margin:0}.vertical-timeline-element-content .vertical-timeline-element-date{float:left;opacity:.7;padding:.8em 0}.vertical-timeline-element-content-arrow{content:"";border:7px solid #0000;border-right-color:#fff;width:0;height:0;position:absolute;top:16px;right:100%}.vertical-timeline--one-column-right .vertical-timeline-element-content-arrow{content:"";top:16px;right:unset;border:7px solid #0000;border-left-color:#fff;width:0;height:0;position:absolute;left:100%}.vertical-timeline--one-column-right .vertical-timeline-element-content:before{border-left:7px solid #fff;border-right:unset;left:100%}.vertical-timeline-element--no-children .vertical-timeline-element-content:before,.vertical-timeline-element--no-children .vertical-timeline-element-content-arrow{display:none}@media only screen and (width>=768px){.vertical-timeline-element-content h2{font-size:1.25rem}.vertical-timeline-element-content p{font-size:1rem}.vertical-timeline-element-content .vertical-timeline-element-date{font-size:.875rem}}@media only screen and (width>=1170px){.vertical-timeline--two-columns .vertical-timeline-element-content{width:44%;margin-left:0;padding:1.5em}.vertical-timeline--two-columns .vertical-timeline-element-content-arrow{top:24px;left:100%;transform:rotate(180deg)}.vertical-timeline--two-columns .vertical-timeline-element-content .vertical-timeline-element-date{width:100%;font-size:1rem;position:absolute;top:6px;left:124%}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content{float:right}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:auto;right:100%;transform:rotate(0)}.vertical-timeline--one-column-right .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--one-column-right .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:100%;right:auto;transform:rotate(0)}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content .vertical-timeline-element-date{text-align:right;left:auto;right:124%}}.vertical-timeline--animate .vertical-timeline-element-content.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;animation:.6s cd-bounce-2}@media only screen and (width>=1170px){.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content.bounce-in,.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content.bounce-in{animation:.6s cd-bounce-2-inverse}}@media only screen and (width<=1169px){.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;animation:.6s cd-bounce-2-inverse}}@-webkit-keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translate(-100px)}60%{opacity:1;-webkit-transform:translate(20px)}to{-webkit-transform:translate(0)}}@-moz-keyframes cd-bounce-2{0%{opacity:0;-moz-transform:translate(-100px)}60%{opacity:1;-moz-transform:translate(20px)}to{-moz-transform:translate(0)}}@keyframes cd-bounce-2{0%{opacity:0;transform:translate(-100px)}60%{opacity:1;transform:translate(20px)}to{transform:translate(0)}}@-webkit-keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translate(100px)}60%{opacity:1;-webkit-transform:translate(-20px)}to{-webkit-transform:translate(0)}}@-moz-keyframes cd-bounce-2-inverse{0%{opacity:0;-moz-transform:translate(100px)}60%{opacity:1;-moz-transform:translate(-20px)}to{-moz-transform:translate(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;transform:translate(100px)}60%{opacity:1;transform:translate(-20px)}to{transform:translate(0)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e5f1ff;background:#07111f;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:linear-gradient(135deg,#07111f 0%,#12253f 100%);min-height:100vh;margin:0}button,input,select,textarea{font:inherit}#root{min-height:100vh}.app-shell{gap:20px;max-width:1100px;margin:0 auto;padding:24px;display:grid}.hero-card,.panel{background:#0f172adb;border:1px solid #94a3b82e;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0208174d}.milestone-panel{overflow:hidden}.milestone-timeline-shell{margin-top:8px}.milestone-timeline-shell .vertical-timeline{padding:0}.milestone-timeline-shell .vertical-timeline:before{background:linear-gradient(#38bdf8e6,#94a3b847);width:3px}.milestone-timeline-shell .vertical-timeline-element{margin:0 0 22px}.milestone-timeline-shell .vertical-timeline-element-date{color:#cbd5e1;opacity:1;padding:.3rem 0;font-size:.86rem}.milestone-timeline-shell .vertical-timeline-element-content{border-radius:18px}.milestone-timeline-shell .vertical-timeline-element-content-arrow{border-right-color:#94a3b829}.milestone-timeline-shell .vertical-timeline-element-icon{place-items:center;display:grid}.milestone-timeline-icon{font-size:.84rem;font-weight:800}.milestone-card-content{gap:8px;display:grid}.milestone-card-content h3{font-size:1.05rem}.milestone-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.modal-backdrop{z-index:1000;background:#020817b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{background:#0f172afa;border:1px solid #94a3b82e;border-radius:24px;width:min(860px,100%);max-height:calc(100vh - 48px);padding:24px;overflow:auto;box-shadow:0 20px 60px #02081773}.modal-card-overflow-visible{overflow:visible}.modal-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.modal-actions{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.confirm-dialog-card{width:min(420px,100%)}.confirm-dialog-message{color:#cbd5e1;margin-bottom:16px}.confirm-dialog-actions{justify-content:flex-end;gap:10px;display:flex}.hero-card{justify-content:space-between;align-items:center;gap:16px;display:flex}.hero-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.title-user-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:inline-flex}.eyebrow{text-transform:uppercase;letter-spacing:.24em;color:#7dd3fc;justify-content:space-between;align-items:center;width:100%;margin:0 0 8px;font-size:.78rem;display:flex}.sync-bubble{letter-spacing:0;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.sync-bubble.status-clear{color:#052e16;background:#22c55e}.sync-bubble.status-alert{color:#450a0a;background:#ef4444}h1,h2,h3,p{margin:0}.text-nowrap{white-space:nowrap}.hero-copy{color:#cbd5e1;margin-top:8px}.user-chip{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;background:#0f172ab3;border:1px solid #94a3b84d;border-radius:999px;align-items:center;gap:8px;max-width:min(360px,100%);padding:8px 12px;font-size:.85rem;display:inline-flex;overflow:hidden}.alert-chip.no-alerts{color:#bbf7d0;background:#22c55e2e;border-color:#22c55e6b}.alert-chip.has-alerts{color:#fecaca;background:#ef44442e;border-color:#ef44446b}.user-chip-button{cursor:pointer;font:inherit;text-align:left}.user-chip-button:hover{border-color:#7dd3fc80}.user-chip-button:focus-visible{outline-offset:2px;outline:2px solid #7dd3fccc}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#0f172ae6;border:1px solid #94a3b838;border-radius:24px;gap:16px;width:min(680px,100%);padding:28px;display:grid;box-shadow:0 20px 70px #02081773}.auth-description{color:#cbd5e1}.auth-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.auth-provider-btn{color:#e2e8f0;cursor:pointer;background:#0f172acc;border:1px solid #94a3b840;border-radius:14px;padding:12px;transition:transform .12s,box-shadow .12s,border-color .12s}.auth-provider-btn:hover{transform:translateY(-1px)}.auth-provider-btn.google{border-color:#ea433573;box-shadow:inset 0 0 0 1px #ea433538}.auth-provider-btn.microsoft{border-color:#2563eb73;box-shadow:inset 0 0 0 1px #2563eb38}.auth-provider-btn.apple{border-color:#94a3b86b;box-shadow:inset 0 0 0 1px #94a3b833}.auth-unavailable{color:#fecaca;background:#f871711f;border:1px solid #f8717147;border-radius:14px;padding:12px 14px}.selected-car-banner{background:#38bdf81a;border:1px solid #94a3b833;border-radius:999px;align-items:center;gap:10px;margin-top:12px;padding:8px 10px;display:inline-flex}.selected-car-banner .secondary-btn{padding:6px 10px}.responsive-action-btn{flex-direction:row-reverse;justify-content:center;align-items:center;gap:8px;min-width:44px;min-height:36px;display:inline-flex}.action-btn-icon{justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.action-btn-icon svg{fill:currentColor;width:100%;height:100%}.sync-toast{z-index:1100;background:#0f172af5;border:1px solid #94a3b84d;border-radius:12px;max-width:min(420px,100vw - 40px);padding:10px 14px;font-size:.9rem;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 24px #02081773}.sync-toast-success{color:#bbf7d0;border-color:#22c55e59}.sync-toast-error{color:#fecaca;border-color:#f8717159}.selected-car-select{border-radius:10px;min-width:200px;max-width:320px;padding:6px 10px}.selected-car-dropdown{position:relative}.selected-car-dropdown-summary{color:#f8fafc;cursor:pointer;background:#0f172ae0;border:1px solid #94a3b840;border-radius:10px;padding:8px 10px;list-style:none}.selected-car-dropdown-summary-content{align-items:center;gap:8px;display:inline-flex}.selected-car-dropdown-summary::-webkit-details-marker{display:none}.selected-car-dropdown-menu{z-index:20;background:#0f172afa;border:1px solid #94a3b840;border-radius:12px;width:320px;max-height:320px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;overflow:auto;box-shadow:0 16px 32px #02081766}.selected-car-make-group{margin-top:8px}.selected-car-group-title,.selected-car-chassis-title{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin:6px 4px;font-size:.78rem}.selected-car-chassis-group{margin-left:6px}.selected-car-option{color:#f8fafc;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:6px 8px;display:flex}.selected-car-option:hover{background:#38bdf81f}.selected-car-option-thumb{object-fit:cover;background:#94a3b829;border:1px solid #94a3b833;border-radius:4px;width:20px;height:20px}.car-dropdown-full,.car-dropdown-full .selected-car-dropdown-summary,.car-dropdown-full .selected-car-dropdown-menu{width:100%}.selected-car-thumb{object-fit:cover;background:#0f172ae0;border:1px solid #94a3b833;border-radius:100px;width:60px;height:60px}.selected-car-thumb.placeholder{display:block}.hero-badge{color:#052e16;background:linear-gradient(135deg,#22c55e,#38bdf8);border-radius:999px;padding:12px 16px;font-weight:700}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-title{align-items:center;gap:10px;display:inline-flex}.icon-toggle-btn{color:#bae6fd;cursor:pointer;background:#38bdf829;border:1px solid #94a3b84d;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-weight:700;line-height:1;display:inline-flex}.pill,.badge{color:#bae6fd;background:#38bdf829;border-radius:999px;align-items:center;padding:6px 10px;font-size:.82rem;display:inline-flex}.badge.overdue{color:#fecaca;background:#f8717133}.badge.upcoming{color:#fde68a;background:#facc1533}.badge.ok{color:#bbf7d0;background:#22c55e2e}.reminder-card,.card,.form-card{background:#02081761;border:1px solid #94a3b829;border-radius:18px;padding:16px}.reminder-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.reminder-card.overdue{border-color:#f8717159}.reminder-card.upcoming,.reminder-card.missing{border-color:#facc1559}.reminder-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stack{gap:12px;display:grid}.card-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.muted{color:#94a3b8;margin-bottom:6px}.form-card{gap:12px;margin-bottom:16px;display:grid}.service-search-form{margin-bottom:12px}.ai-service-form{margin-bottom:0}.ai-service-textarea{min-height:260px}.ai-result-card{gap:8px;display:grid}.ai-list{color:#e2e8f0;margin:0;padding-left:18px}.search-results-summary{color:#cbd5e1;margin:10px 0 12px}.search-results-stack{max-height:52vh;padding-right:4px;overflow:auto}.service-search-result-link{color:#7dd3fc;cursor:pointer;font:inherit;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.service-search-result-link:hover{color:#bae6fd}.service-search-result-link:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #7dd3fc99}.service-card-focused{border-color:#7dd3fc94;box-shadow:inset 0 0 0 1px #7dd3fc52,0 0 0 2px #7dd3fc2e}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-span-full{grid-column:1/-1}label{color:#cbd5e1;gap:6px;display:grid}.required-label{align-items:center;gap:6px;display:inline-flex}.required-asterisk{color:#f87171;font-weight:700}input,select,textarea{color:#f8fafc;background:#0f172ae0;border:1px solid #94a3b840;border-radius:12px;width:100%;padding:10px 12px}textarea{resize:vertical}.service-notes-input{min-height:150px}.service-notes-display{white-space:pre-wrap;font-style:italic}.car-card{gap:8px}.car-card.selected{border-color:#38bdf866;box-shadow:inset 0 0 0 1px #38bdf840}.car-heading{align-items:center;gap:12px;display:flex}.car-label-link{color:#7dd3fc;cursor:pointer;text-align:left;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.car-label-link:hover{color:#bae6fd}.car-thumb{object-fit:cover;background:#94a3b829;border:1px solid #94a3b829;border-radius:8px;width:64px;height:64px}.car-thumb.placeholder{display:block}.car-summary{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-top:1px solid #94a3b829;gap:4px;margin-top:10px;padding-top:10px;display:grid}.image-upload-preview{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.car-image-preview{object-fit:cover;border:1px solid #94a3b829;border-radius:8px;width:96px;height:96px}.checkbox-list{background:#0f172ae0;border:1px solid #94a3b840;border-radius:12px;gap:8px;padding:10px 12px;display:grid}.checkbox-item{color:#f8fafc;align-items:center;gap:8px;display:flex}.checkbox-item input{width:auto}.primary-btn,.secondary-btn{cursor:pointer;border:0;border-radius:999px;padding:10px 14px}.primary-btn{color:#03111f;background:linear-gradient(135deg,#22c55e,#38bdf8);font-weight:700}.secondary-btn{color:#bae6fd;background:#38bdf829}.danger-btn{color:#fecaca;cursor:pointer;background:#f871712e;border:0;border-radius:999px;padding:10px 14px}.empty-state{color:#94a3b8;padding:8px 0}@media (width<=760px){.app-shell{padding:16px}.hero-card{flex-direction:column;align-items:flex-start}.hero-card .hero-actions,.title-user-row{width:100%}.user-chip{max-width:100%}.auth-provider-grid,.field-grid{grid-template-columns:1fr}.panel-heading,.card-top,.modal-header,.modal-actions{flex-direction:row;align-items:center}.reminder-card{flex-direction:column;align-items:flex-start}.panel-heading>:first-child,.card-top>:first-child,.modal-header>:first-child{flex:1;min-width:0}.panel-heading>.responsive-action-btn,.panel-heading>.hero-actions,.card-top>.responsive-action-btn,.modal-header>.responsive-action-btn{flex-shrink:0;margin-left:auto}.panel-heading>.hero-actions{flex-wrap:nowrap;width:auto}.modal-actions{justify-content:flex-end}.modal-backdrop{padding:12px}.modal-card{max-height:calc(100vh - 24px);padding:16px}}@media (width<=980px){.selected-car-banner{border-radius:16px;flex-wrap:wrap}.responsive-action-btn{border-radius:999px;width:36px;min-width:36px;height:36px;padding:0}.responsive-action-btn .action-btn-label{display:none}.responsive-action-btn .action-btn-icon{justify-content:center;align-items:center;display:inline-flex}}
