*{box-sizing:border-box}body{margin:0;background:#f4f7f5;color:#172c26;font:15px/1.5 "Inter",system-ui,sans-serif;--brand:#007e70}h1,h2,h3,p{margin:0 0 .7rem}h1{font-size:clamp(1.9rem,4vw,2.7rem);letter-spacing:-.06em}h2{font-size:1.25rem}a{color:var(--brand)}header{background:#102924;color:#fff;padding:1.1rem max(1rem,calc((100% - 1160px)/2));display:flex;justify-content:space-between;align-items:center;gap:1rem}header small{color:#a5c9be}header img,.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:8px;background:#fff}header div{display:flex;align-items:center;gap:.7rem}nav{background:white;border-bottom:1px solid #dce7e1;display:flex;gap:.45rem;overflow:auto;padding:.6rem max(1rem,calc((100% - 1160px)/2))}nav button{white-space:nowrap;background:transparent;color:#344f46}nav button.active{background:#dff3ec;color:#07574c}main{width:min(1160px,calc(100% - 2rem));margin:2rem auto}.auth{width:min(460px,calc(100% - 2rem));margin:8vh auto}.card,.metric{background:#fff;border:1px solid #dce7e1;border-radius:16px;padding:1.2rem;margin:0 0 1rem;box-shadow:0 3px 10px #163e3110}.metrics,.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1rem}.metric strong{display:block;font-size:1.8rem;letter-spacing:-.05em}.muted{color:#526a60}label{display:grid;gap:.3rem;font-weight:650}form{display:grid;gap:.8rem;margin:.65rem 0}input,select,textarea,button,.button{font:inherit;border-radius:8px}input,select,textarea{width:100%;min-width:0;background:white;color:inherit;border:1px solid #c7d8d0;padding:.65rem}textarea{min-height:90px}button,.button{border:0;background:var(--brand);color:white;padding:.6rem .9rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}button:disabled{opacity:.45;cursor:default}button.secondary,.button.secondary{background:#e8f0ed;color:#23463a}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #37ac97;outline-offset:2px}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.record{padding:.85rem 0;border-top:1px solid #e4ebe7}.record p{margin:.25rem 0}.chip{border-radius:30px;background:#e8f4ee;color:#225a49;padding:.25rem .6rem;font-size:.85rem}.wide{max-width:680px}.empty{padding:.8rem 0;color:#526a60}#toast{position:fixed;bottom:1rem;right:1rem;max-width:calc(100% - 2rem);background:#102924;color:white;border-radius:10px;padding:.8rem 1rem;z-index:3}#toast:empty{display:none}@media(max-width:550px){header{align-items:flex-start}header div{flex-wrap:wrap}main{margin:1.2rem auto}.card{padding:1rem}}@media print{header,nav,#toast,.no-print{display:none!important}body{background:white}main{margin:0;width:100%}.card{box-shadow:none;border:0}}

body{--brand:#b84b00;background:#f5f4f2;color:#242424}header{background:#191919}nav button.active{background:#fff0df;color:#873800}.auth>.brand-logo{width:150px;height:150px}.theme-toggle{position:fixed;right:12px;bottom:12px;z-index:2;background:#b84b00}#toast{bottom:65px}[data-theme=dark] body{background:#151515;color:#eee}[data-theme=dark] .card,[data-theme=dark] .metric,[data-theme=dark] nav{background:#242424;border-color:#484848}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#303030;color:#fff;border-color:#666}[data-theme=dark] .muted,[data-theme=dark] .empty{color:#c7c7c7}[data-theme=dark] nav button{color:#ddd}[data-theme=dark] nav button.active{color:#fff;background:#924200}[data-theme=dark] a{color:#ffae67}[data-theme=dark] .record{border-color:#484848}

.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:15px}.calendar-day{min-height:85px;border:1px solid #8886;padding:6px;border-radius:7px}.calendar-day p{font-size:12px;overflow-wrap:anywhere;background:#b84b0022;margin:5px 0;padding:3px}@media(max-width:600px){.calendar-grid{gap:2px}.calendar-day{padding:3px;min-height:65px}.calendar-day p{font-size:10px}}
.remember{display:flex;align-items:center;gap:10px;font-weight:500}.remember input{width:20px;height:20px;flex:none}
.top-controls{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px;background:inherit}.top-controls button{font-size:13px}button,.button{transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}button:hover,.button:hover{filter:brightness(1.1)}button:active,.button:active{transform:scale(.97)}#toast:not(:empty){animation:feedback-in .2s ease-out}@keyframes feedback-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){button,.button{transition:none}button:active,.button:active{transform:none}#toast:not(:empty){animation:none}}
.agenda-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.agenda-toolbar strong{text-transform:capitalize;flex:1}.month-picker{max-width:210px;margin:12px 0}.agenda-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;margin:16px 0}.agenda-legend span{display:flex;gap:5px;align-items:center}.agenda-legend i,.day-dots i{display:inline-block;width:9px;height:9px;border-radius:50%}.waiting{--event:#df9200}.washing{--event:#3787e5}.done{--event:#27a575}.cancelled{--event:#dd6177}.agenda-legend i,.day-dots i{background:var(--event)}.calendar-day{position:relative;color:inherit;background:#f5f5f7;border:1px solid #8883;text-align:left;min-height:80px;padding:10px;border-radius:12px}.calendar-day:hover{background:#fff0dd}.calendar-day.selected{outline:3px solid #df7c20;outline-offset:-3px;background:#fff0dd}.calendar-day.today .day-number{background:#b84b00;color:white;border-radius:50%;padding:3px 6px}.day-count{float:right;color:#71552a;font-size:12px}.day-dots{display:flex;gap:4px;margin-top:12px}.weekday{font-size:12px;text-align:center;color:#737373}.agenda-details{margin-top:24px}.agenda-event{display:flex;gap:16px;padding:14px;margin:10px 0;border-radius:12px;border-left:5px solid var(--event);background:#f6f6f7}.agenda-event p{margin:3px 0}.agenda-event span{font-size:12px}.agenda-event>strong{min-width:50px}[data-theme=dark] .calendar-day,[data-theme=dark] .agenda-event{background:#303033;color:#eee}[data-theme=dark] .calendar-day.selected{background:#483522}[data-theme=dark] .day-count{color:#ffb970}[data-theme=dark] .weekday{color:#ccc}@media(max-width:600px){.calendar-day{min-height:64px;padding:6px}.day-count{font-size:10px}.day-dots{gap:2px}.day-dots i{width:6px;height:6px}.agenda-event{gap:10px;font-size:13px}.calendar-grid{gap:5px}}

.share-agenda{padding:20px;border-radius:16px;background:linear-gradient(120deg,#fff0dc,#fff8ef);color:#382719}.share-agenda h3{font-size:23px}.share-agenda .row{margin-top:12px;gap:10px}.share-agenda input{background:white;color:#222}details{margin-top:18px}summary{cursor:pointer;font-weight:bold;padding:10px 0}.public-copy{white-space:pre-wrap;overflow-wrap:anywhere}[data-theme=dark] .share-agenda{background:#403023;color:#ffe7cf}
.device-indicator{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:23px;border-radius:10px;background:#8882;flex:none}
.password-wrap{position:relative;display:block}.password-wrap input{padding-right:52px}.password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:transparent;color:inherit;padding:8px;display:flex;align-items:center;justify-content:center;min-width:42px;min-height:42px}.password-toggle:active{transform:translateY(-50%) scale(.95)}.password-toggle[aria-pressed=true]{background:#df7c2025}
body{min-height:100dvh;display:flex;flex-direction:column}#app{flex:1}.site-footer{padding:22px 16px;text-align:center;font-size:12px;color:#665e57;border-top:1px solid #8883;margin-top:24px}[data-theme=dark] .site-footer{color:#bdb5ae}@media print{.site-footer{display:none}}
.field-error{color:#b52b36;font-size:13px;display:block}.field-error:empty{display:none}input[aria-invalid=true]{border:2px solid #b52b36}[data-theme=dark] .field-error{color:#ffadb4}
.booking-celebration{position:relative;height:120px;overflow:hidden;border-radius:16px;background:linear-gradient(120deg,#ffad4725,#47cfaa25);margin:14px 0}.booking-car{position:absolute;font-size:55px;bottom:12px;left:12%;animation:car-arrive 1.3s cubic-bezier(.16,1,.3,1) both}.booking-check{position:absolute;right:18%;top:20px;background:#16866a;color:white;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-size:30px;animation:check-pop .5s .4s both}@keyframes car-arrive{from{transform:translateX(-200px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes check-pop{from{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.booking-car,.booking-check{animation:none}}
.booking-car{width:175px;max-width:52%;height:auto;bottom:12px;left:7%;object-fit:contain}
fieldset[data-hours-day]{border:1px solid #8885;border-radius:12px;padding:14px}fieldset[data-hours-day] legend{font-weight:700}.hours-range{margin:8px 0 12px;align-items:end}.hours-range label{flex:1;min-width:120px}.hours-ranges:empty:before{content:"Fechado";display:block;color:#a34e32;padding:8px 0}
.dashboard-layout{display:grid;grid-template-columns:240px minmax(0,1fr);max-width:1440px;width:100%;margin:auto;align-items:start}.sidebar{position:sticky;top:0;min-height:65vh;padding:20px 12px;border-right:1px solid #8883}.sidebar nav{display:flex;flex-direction:column;gap:6px;overflow:visible;border:0;background:transparent;padding:0}.sidebar nav button{text-align:left;white-space:normal;width:100%;padding:12px;border-radius:10px}.dashboard-main{width:calc(100% - 48px);min-width:0;margin:26px auto}.sidebar details{margin:0}.mobile-navigation>summary{display:none}.company-settings>summary{list-style-position:inside;font-size:14px;line-height:1.4;border-radius:10px;padding:12px;background:#8881}.settings-links{padding:8px 0 4px 12px;border-left:2px solid #df7c2055;margin-left:10px}.settings-links button{font-size:13px}.sidebar .active{font-weight:800}@media(max-width:760px){.dashboard-layout{display:block}.sidebar{position:static;min-height:0;padding:10px 16px;border-right:0;border-bottom:1px solid #8883}.mobile-navigation>summary{display:block;padding:10px;cursor:pointer}.mobile-navigation:not([open])>nav{display:none}.dashboard-main{width:calc(100% - 28px);margin:18px auto}}@media print{.sidebar{display:none}.dashboard-layout{display:block}.dashboard-main{width:100%}}

#pickup-address[hidden]{display:none}#pickup-address{border:1px solid #8885;border-radius:12px;padding:14px}#pickup-address label{margin-bottom:10px}.pickup-note{padding:12px;background:#df7c2018;border-left:3px solid #df7c20;border-radius:6px}#booking-total{font-weight:750;font-size:17px}