:root{--ink:#14221e;--muted:#62736d;--line:#d9e2dd;--paper:#fffdf8;--bg:#f4f7f3;--free:#22a86d;--reserved:#f4c318;--occupied:#e34a50;--pink:#e6007e;--teal:#09af99;--gold:#d8b900;--purple:#9b6bc4}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:24px max(24px,calc((100% - 1380px)/2));background:#fff;border-bottom:1px solid var(--line)}h1,h2,p{margin:0}h1{font-size:clamp(1.35rem,3vw,2rem);letter-spacing:-.04em}.eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.13em;color:var(--muted)}.access{display:flex;gap:9px;align-items:center;font-size:.9rem;font-weight:700}.online-dot{height:9px;width:9px;border-radius:50%;background:var(--free)}.text-button{background:none;border:0;color:#0f766e;text-decoration:underline;padding:5px}main{max-width:1380px;margin:auto;padding:28px 24px 44px}.intro{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:18px}.intro h2{font-size:1.4rem;letter-spacing:-.03em}.intro p{color:var(--muted);margin-top:5px}.legend{display:flex;gap:15px;align-items:center;flex-wrap:wrap;font-size:.84rem}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:11px;height:11px;border-radius:50%}.free{background:var(--free)!important}.reserved{background:var(--reserved)!important}.occupied{background:var(--occupied)!important}.sync-mode{display:none;margin:12px 0 16px;padding:5px 9px;border-radius:999px;background:#eef2ef;color:#4d5e57;font-size:.72rem;font-weight:800}.sync-mode[data-mode="server"]{background:#e6f5ed;color:#176b4a}.sync-mode[data-mode="error"]{background:#fde8e8;color:#a52222}
.quick-access{background:#fff;border:1px solid var(--line);border-radius:12px;margin:8px 0 2px;overflow:hidden}.quick-access summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;font-weight:800;cursor:pointer}.quick-access summary::-webkit-details-marker{display:none}.quick-access summary:after{content:'⌄';font-size:1.1rem}.quick-access[open] summary:after{content:'⌃'}.quick-access summary small{margin-left:auto;color:var(--muted);font-weight:600}.quick-body{border-top:1px solid var(--line);padding:8px}.quick-item{width:100%;display:grid;grid-template-columns:75px 1fr 20px;align-items:center;text-align:left;gap:10px;background:#fff;border:0;border-radius:8px;padding:9px 10px}.quick-item:hover{background:#f2f7f4}.quick-date{font-weight:900;font-size:.82rem}.quick-main{display:grid;gap:2px}.quick-main strong{font-size:.84rem}.quick-main small{color:var(--muted);font-size:.72rem}.quick-arrow{font-size:1.4rem;color:#0f766e}.quick-empty{padding:12px;color:var(--muted);font-size:.84rem}.quick-close{margin:6px 2px 2px;border:0;background:none;color:#0f766e;font-weight:800;font-size:.78rem}
.calendars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.month{background:var(--paper);border:1px solid #c7d2cc;box-shadow:0 4px 14px #24342d0b}.month[data-kind="Desmontagens"]{grid-column:1/-1;max-width:620px;width:100%;justify-self:center}.month h2{text-align:center;padding:18px 8px;font-size:1.2rem;font-weight:800;letter-spacing:.04em}.month:nth-child(1) h2{background:var(--pink);color:#fff}.month:nth-child(2) h2{background:var(--teal)}.month:nth-child(3) h2{background:var(--gold)}.month:nth-child(4) h2{background:var(--purple);color:#fff}.weekday,.days{display:grid;grid-template-columns:repeat(7,1fr)}.weekday{border-bottom:1px solid var(--line);font-size:.62rem;color:var(--muted);text-align:center;font-weight:800}.weekday span{padding:8px 1px}.day{position:relative;min-height:82px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:7px;text-align:left;transition:.16s}.day:nth-child(7n){border-right:0}.day.empty{background:#f8faf8;pointer-events:none}.day:not(.empty):hover{background:#f0faf5}.day-number{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;font-size:.8rem;font-weight:800;color:#102019}.day[data-status="free"] .day-number{background:var(--free);color:#fff}.day[data-status="reserved"] .day-number{background:var(--reserved)}.day[data-status="occupied"] .day-number{background:var(--occupied);color:#fff}.day-count{position:absolute;right:7px;top:9px;font-size:.65rem;font-weight:800;color:#66746f}.day-mark{position:absolute;left:7px;bottom:7px;font-size:.6rem;font-weight:800;color:#8f1e24}.summary{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.summary div{padding:12px 18px;border-right:1px solid var(--line);display:flex;gap:9px;align-items:baseline}.summary div:last-child{border-right:0}.summary strong{font-size:1.3rem}.summary span{font-size:.78rem;color:var(--muted)}
dialog{border:0;border-radius:16px;padding:0;width:min(820px,calc(100% - 28px));max-height:calc(100vh - 28px);box-shadow:0 24px 80px #10251c55}dialog::backdrop{background:#12231d99}dialog form{max-height:calc(100vh - 28px);overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}.modal-head h2{font-size:clamp(1.55rem,4vw,2.3rem);line-height:1.05;letter-spacing:-.04em;text-transform:capitalize;margin-top:5px}.day-state{margin-top:7px;color:var(--muted);font-weight:800;font-size:.88rem}.icon-button{border:0;background:#edf1ee;border-radius:50%;width:34px;height:34px;font-size:1.4rem;line-height:1}.blocked-message{margin:16px 24px 0;padding:11px 13px;border-radius:8px;background:#fde8e8;color:#9b1c1c;font-size:.85rem;font-weight:700}.installations-list{display:grid;gap:12px;padding:16px 24px 0}.installation-card{border:1px solid #cdd9d2;border-radius:12px;padding:15px;background:#fbfdfb}.tone-1{background:#f6eddc}.tone-2{background:#e6f3eb}.tone-3{background:#f0e7f7}.card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-title h3{font-size:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{display:grid;gap:6px;font-size:.78rem;font-weight:800;color:#40524b}.form-grid .full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #c5d1ca;border-radius:8px;padding:10px;color:var(--ink);background:#fff}textarea{min-height:78px;resize:vertical}.periods-box{border:1px dashed #b9c9c0;border-radius:8px;padding:9px;background:#ffffff80}.field-caption{font-size:.76rem;font-weight:800;color:#40524b;margin-bottom:7px}.period-checks{display:flex;gap:12px;flex-wrap:wrap}.period-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:5px!important;font-size:.76rem!important;font-weight:700!important}.period-check input{width:auto}.periods-box small{display:block;color:var(--muted);font-size:.68rem;margin-top:6px}.closed-periods-section{margin:16px 24px 0;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8faf8}.section-title{display:flex;gap:10px;align-items:baseline}.section-title span{color:var(--muted);font-size:.72rem}.closed-periods{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.closed-period{display:flex;align-items:center;gap:6px;border:1px solid #c9d5cf;border-radius:999px;padding:7px 10px;background:#fff;font-size:.75rem;font-weight:800}.closed-period input{width:auto}.add-button{margin:14px 24px 0;border:1px dashed #729a87;color:#0f766e;background:#f0faf5;border-radius:8px;padding:10px 13px;font-weight:800}.sabrina-controls{margin:14px 24px 0;padding:12px;border-radius:9px;background:#f4f7f5;display:grid;gap:5px}.sabrina-controls label{font-weight:800}.sabrina-controls small{color:var(--muted)}.form-note{min-height:19px;padding:10px 24px 0;color:#b42318;font-size:.8rem}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px 24px}.primary-button,.secondary-button,.danger-button{border-radius:8px;padding:10px 14px;border:1px solid transparent;font-weight:800;font-size:.86rem}.primary-button{background:#0f766e;color:#fff}.secondary-button{border-color:#c5d1ca;background:#fff}.danger-button{background:transparent;color:#b42318}.hidden{display:none!important}
@media(max-width:900px){.calendars{grid-template-columns:1fr}.month{max-width:620px;width:100%;margin:auto}.month[data-kind="Desmontagens"]{grid-column:auto}.day{min-height:68px}}
@media(max-width:560px){.topbar,.intro{align-items:flex-start;flex-direction:column}.topbar{padding:18px}.access{width:100%;justify-content:space-between}main{padding:18px 10px 28px}.intro{margin-bottom:12px}.intro h2{font-size:1.15rem}.legend{font-size:.72rem;gap:10px}.quick-access summary{padding:11px 12px}.quick-access summary small{font-size:.68rem}.quick-item{grid-template-columns:66px 1fr 16px;padding:9px 7px}.calendars{gap:12px}.day{min-height:56px;padding:5px}.day-number{width:25px;height:25px;font-size:.72rem}.day-count{right:5px;top:7px;font-size:.58rem}.day-mark{left:5px;bottom:5px;font-size:.5rem}.summary{grid-template-columns:1fr}.summary div{border-right:0;border-bottom:1px solid var(--line)}.summary div:last-child{border-bottom:0}.modal-head{padding:16px 15px 13px}.modal-head h2{font-size:1.28rem;line-height:1.12}.installations-list{padding:12px 15px 0}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.closed-periods-section{margin:12px 15px 0}.add-button,.sabrina-controls{margin-left:15px;margin-right:15px}.modal-actions{padding:14px 15px 18px;flex-wrap:wrap}.primary-button{margin-left:auto}.blocked-message{margin:12px 15px 0}.form-note{padding:8px 15px 0}.period-checks{gap:8px}}


/* Ajustes finais de produção */
.form-grid label,.field-caption,.section-title{font-weight:600}
.form-grid input,.form-grid textarea,.form-grid select{font-weight:400!important}
.form-grid textarea{min-height:140px}
.phone-link{display:block;align-self:end;margin-top:-2px;color:#0f766e;font-size:.78rem;font-weight:600;text-decoration:none}.phone-link:hover{text-decoration:underline}
.quick-access{margin-bottom:28px!important}.quick-access summary{font-weight:600}
.quick-main strong{font-weight:600}
.month:nth-child(2) h2{background:#00B7C2!important}
.month:nth-child(3) h2{background:#A69453!important}
.password-wrap{position:relative;display:block}.password-wrap input{width:100%;padding-right:46px!important;font-weight:400!important}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;padding:5px;border:0;background:transparent;color:#40524b;display:grid;place-items:center;cursor:pointer}.eye-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.eye-icon .eye-slash{display:block}.password-toggle.is-visible .eye-icon .eye-slash{display:none}
.reference-preview{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.reference-item{display:flex;flex-direction:column;gap:5px;max-width:180px}.reference-item img{width:180px;height:180px;object-fit:cover;border-radius:8px}.reference-item button{min-height:36px;font-weight:600}
@media(max-width:768px){.quick-access{margin-bottom:24px!important}.quick-access summary{font-size:1rem;min-height:48px}.quick-item{min-height:48px}}
