:root{--accent:#2563eb;--bg:#f5f7fb;--panel:#fff;--text:#162033;--muted:#6b7280;--line:#e6e9ef;--soft:#eef4ff;--danger:#dc2626;--ok:#059669;--shadow:0 12px 40px rgba(19,35,65,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.hidden{display:none!important}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:#0f172a;color:#fff;padding:20px 14px;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;padding:6px 8px 22px}.brandMark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--accent),#7c3aed);display:grid;place-items:center;font-weight:800}.brand strong{display:block;font-size:15px}.brand span{display:block;font-size:11px;color:#9ca3af;margin-top:3px}.nav{display:flex;flex-direction:column;gap:5px}.navItem{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:10px;color:#cbd5e1;background:transparent;text-align:left;width:100%}.navItem:hover,.navItem.active{background:rgba(255,255,255,.09);color:#fff}.navIcon{width:20px;text-align:center}.sideBottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:8px}.sideBottom span{font-size:11px;color:#64748b}.ghost{background:transparent;color:#cbd5e1;border:1px solid #334155;padding:8px 10px;border-radius:8px}.main{margin-left:250px;min-height:100vh}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}.topbar h1{margin:0;font-size:23px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.topActions{display:flex;gap:9px}.primary,.secondary{padding:10px 14px;border-radius:9px}.primary{background:var(--accent);color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.25)}.secondary{background:#fff;border:1px solid var(--line);color:var(--text)}.content{padding:26px}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.kpi{padding:18px}.kpi .label{font-size:12px;color:var(--muted)}.kpi .value{font-size:28px;font-weight:800;margin-top:7px}.kpi .foot{font-size:11px;color:#94a3b8;margin-top:5px}.cols2{grid-template-columns:1.1fr .9fr}.section{padding:20px}.sectionHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sectionHead h3{margin:0;font-size:15px}.tableWrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px 10px;text-align:left;border-bottom:1px solid var(--line);font-size:12px;white-space:nowrap}.table th{color:var(--muted);font-weight:600;background:#fbfcfe}.badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:var(--soft);color:#3657a7;font-size:11px;font-weight:700}.badge.ok{background:#ecfdf5;color:#047857}.badge.warn{background:#fff7ed;color:#c2410c}.badge.danger{background:#fef2f2;color:#b91c1c}.toolbar{display:flex;gap:9px;flex-wrap:wrap;min-width:0}.toolbar>*{min-width:0}.input{width:100%;min-width:0;border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 11px;outline:none}.input:focus{border-color:#93b4ff;box-shadow:0 0 0 3px rgba(37,99,235,.08)}textarea.input{min-height:90px;resize:vertical}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;align-items:start}.field{min-width:0}.field .toolbar{min-width:0}.field .toolbar .input{min-width:0}.field input,.field select,.field textarea{max-width:100%;min-width:0}.field label{display:block;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:5px}.span2{grid-column:span 2}.rowActions{display:flex;gap:7px}.smallBtn{padding:7px 9px;border:1px solid var(--line);background:#fff;border-radius:7px;font-size:11px}.smallBtn.danger{color:var(--danger)}.empty{padding:32px;color:var(--muted);text-align:center}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.day{background:#fff;border:1px solid var(--line);border-radius:10px;min-height:140px;padding:9px}.day strong{font-size:12px}.appointment{display:block;margin-top:7px;padding:6px 7px;background:var(--soft);border-radius:7px;font-size:10px}.progress{height:8px;background:#eef1f5;border-radius:999px;overflow:hidden}.progress>div{height:100%;background:var(--accent)}.tabs{display:flex;gap:6px;margin-bottom:16px}.tab{padding:8px 11px;border-radius:8px;background:#eef2f7;font-size:12px}.tab.active{background:var(--accent);color:#fff}.modal{position:fixed;inset:0;background:rgba(15,23,42,.45);display:grid;place-items:center;padding:20px;z-index:20}.modalBox{width:min(920px,calc(100vw - 40px));background:#fff;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.24);max-height:88vh;overflow:auto}.modalHead,.modalFoot{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modalFoot{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end;gap:8px}.modalHead h3{margin:0}.icon{background:transparent;font-size:25px;color:#64748b}.modalBody{padding:20px;overflow:auto}.modalBody .formGrid{width:100%}.toast{position:fixed;right:20px;bottom:20px;background:#111827;color:#fff;padding:11px 14px;border-radius:10px;font-size:12px;z-index:30;box-shadow:var(--shadow)}.hero{padding:24px;border-radius:16px;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff}.hero h2{margin:0 0 6px;font-size:22px}.hero p{margin:0;color:#cbd5e1;font-size:13px}.settingsGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mono{font-family:Consolas,monospace}.drop{border:2px dashed #cbd5e1;border-radius:10px;padding:18px;text-align:center;color:#64748b}.notice{padding:12px 14px;border-radius:10px;background:#eff6ff;color:#1e40af;font-size:12px}.dangerBox{background:#fef2f2;color:#991b1b}.chat{height:420px;display:flex;flex-direction:column}.messages{flex:1;overflow:auto;padding:8px}.bubble{max-width:78%;padding:9px 11px;border-radius:12px;margin:7px 0;font-size:12px}.in{background:#f1f5f9}.out{background:#dbeafe;margin-left:auto}.chatInput{display:flex;gap:8px;border-top:1px solid var(--line);padding:10px}.chatInput input{flex:1}.muted{color:var(--muted)}@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.cols2,.settingsGrid{grid-template-columns:1fr}}@media(max-width:800px){.sidebar{width:78px}.navItem span:not(.navIcon),.sideBottom span,.sideBottom .ghost{display:none}.main{margin-left:78px}.topbar{padding:0 15px}.content{padding:15px}.formGrid{grid-template-columns:1fr}.span2{grid-column:auto}}

.appCopyright{padding:4px 26px 14px;text-align:right;font-size:9px;line-height:1.2;color:#9aa3b2;letter-spacing:.1px} .appCopyright strong{font-weight:600;color:#7f8999}@media(max-width:800px){.appCopyright{padding:4px 15px 12px;font-size:8px}}

/* 3.1.2 UI stability layer */
html{background:var(--bg)}
body{min-width:0;overflow-x:hidden}
.main{min-width:0}
.content{max-width:1680px;margin:0 auto;width:100%}
.section,.card{min-width:0}
.sectionHead{min-width:0;gap:12px;flex-wrap:wrap}
.sectionHead>div:first-child{min-width:0}
.sectionHead .toolbar{flex:1 1 280px}
.sectionHead .toolbar .input{max-width:420px}
.modal{align-items:center;overflow:auto}
.modalBox{display:flex;flex-direction:column;min-height:0}
.modalHead{flex:0 0 auto}
.modalBody{flex:1 1 auto;min-height:0}
.modalFoot{flex:0 0 auto}
.modalBody .field{width:100%}
.modalBody .span2{grid-column:1 / -1}
.modalBody .field>label{max-width:100%}
.modalBody textarea.input{min-height:96px}
@media(max-width:900px){.formGrid{grid-template-columns:1fr}.span2,.modalBody .span2{grid-column:auto}.cols2{grid-template-columns:1fr}.calendar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.modalBox{width:calc(100vw - 24px);max-height:94vh}.modalBody{padding:16px}.topbar{height:auto;min-height:76px;padding:14px}.topActions{display:none}.content{padding:14px}.section{padding:15px}.calendar{grid-template-columns:1fr}.kpis{grid-template-columns:1fr}.sidebar{width:68px}.main{margin-left:68px}}
@media(max-width:480px){.sidebar{width:0;padding:0;overflow:hidden}.main{margin-left:0}.topbar h1{font-size:19px}.content{padding:10px}.modal{padding:8px}.modalBox{width:100%;max-height:96vh;border-radius:12px}.modalFoot{padding:12px}.primary,.secondary{padding:9px 12px}}


/* 3.1.3 — unified form system */
:root{--field-h:44px;--radius:10px}
*{min-width:0}
button,input,select,textarea{max-width:100%}
.content{max-width:1700px}
.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.field{display:flex;flex-direction:column;min-width:0}
.field label{min-height:14px;line-height:14px}
.field .input{height:var(--field-h);min-height:var(--field-h);width:100%}
.field textarea.input{height:auto;min-height:104px;line-height:1.45}
.fieldCheck{justify-content:flex-start}
.fieldCheck .checkLine{min-height:var(--field-h);display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--text);font-size:12px;font-weight:500}
.fieldCheck .checkLine input{width:17px;height:17px;margin:0}
.inlineControl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}
.inlineControl .input{min-width:0}
.inlineControl .secondary{height:var(--field-h);white-space:nowrap}
.modal{padding:24px;align-items:center;justify-items:center;overflow:auto}
.modalBox{width:min(980px,calc(100vw - 48px));max-height:min(88vh,760px);overflow:hidden;border:1px solid #e5e7eb;border-radius:18px}
.modalHead{min-height:68px;padding:16px 22px;background:#fff}
.modalHead h3{font-size:18px;line-height:1.2}
.modalBody{display:block;padding:22px 24px 24px;overflow-y:auto;overflow-x:hidden;background:#fff}
.modalBody .formGrid{width:100%;margin:0}
.modalBody .field{width:100%}
.modalBody .span2{grid-column:1 / -1}
.modalBody .field>label{width:100%;overflow:hidden;text-overflow:ellipsis}
.modalFoot{min-height:68px;padding:14px 22px;background:#fbfcfe}
.modalFoot .secondary,.modalFoot .primary{min-width:92px;height:42px}
.modalBody + .modalFoot{position:relative}
@media(max-width:900px){.formGrid{grid-template-columns:1fr}.modalBox{width:min(720px,calc(100vw - 32px))}.modalBody .span2{grid-column:auto}}
@media(max-width:600px){.modal{padding:10px}.modalBox{width:calc(100vw - 20px);max-height:94vh;border-radius:14px}.modalHead{padding:14px 16px;min-height:60px}.modalBody{padding:18px 16px}.modalFoot{padding:12px 16px;min-height:62px}.formGrid{gap:14px}.field .input{height:42px;min-height:42px}.field textarea.input{min-height:96px}.inlineControl .secondary{height:42px}}

/* 3.1.4 — cadastro de múltiplos veículos por cliente */
.clientVehicles{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.clientVehiclesHead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.clientVehiclesHead h4{margin:0 0 4px;font-size:14px}
.clientVehiclesHead p{margin:0;font-size:11px}
.vehicleSlots{display:grid;grid-template-columns:1fr;gap:12px}
.vehicleSlot{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fbfcfe}
.vehicleSlotHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.vehicleSlotHead strong{font-size:12px}
.vehicleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.vehicleSlot .field label{font-size:10px}
@media(max-width:700px){.vehicleGrid{grid-template-columns:1fr}.clientVehiclesHead{align-items:flex-start}.clientVehiclesHead .badge{flex:0 0 auto}}


/* EsteticaPro 4.0.0 — camada de personalização completa */
html{font-size:16px}body{zoom:var(--font-scale,1)}
body{transition:background .18s ease,color .18s ease;}
body[data-motion="off"] *,body[data-motion="off"] *::before,body[data-motion="off"] *::after{animation:none!important;transition:none!important;}
body[data-sidebar="compact"] .sidebar{width:78px}
body[data-sidebar="compact"] .navItem span:not(.navIcon),body[data-sidebar="compact"] .sideBottom span,body[data-sidebar="compact"] .sideBottom .ghost{display:none}
body[data-sidebar="compact"] .main{margin-left:78px}
body[data-density="compact"] .content{padding:18px}
body[data-density="compact"] .section{padding:16px}
body[data-density="compact"] .table th,body[data-density="compact"] .table td{padding:8px 9px}
body[data-density="compact"] .formGrid{gap:12px 14px}
body[data-density="compact"] .field .input{height:40px;min-height:40px}
body[data-density="compact"] .kpi{padding:14px}
body[data-compact-tables="on"] .table th,body[data-compact-tables="on"] .table td{padding:7px 8px;font-size:11px}
.brandMark{border-radius:var(--radius);overflow:hidden}
.brandMark.hasLogo{background:#fff;border:1px solid rgba(255,255,255,.12)}
.brandMark.hasLogo img{width:100%;height:100%;object-fit:contain;padding:4px}
.card,.section,.day,.vehicleSlot,.input,.primary,.secondary,.smallBtn,.badge,.modalBox,.hero{border-radius:var(--radius)}
.primary{background:var(--accent)}
.hero{background:linear-gradient(135deg,#0f172a,var(--accent))}
.settingList{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.settingToggle{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);font-size:11px;color:var(--text)}
.settingToggle input{width:16px;height:16px}
.layoutEditor{display:flex;flex-direction:column;gap:7px}
.layoutRow{display:flex;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:grab;font-size:12px}
.layoutRow:active{cursor:grabbing}
.layoutRow .drag{color:var(--muted);font-size:17px}
.layoutRow .layoutCheck{margin-left:auto}
.layoutRow .layoutCheck input{width:16px;height:16px}
[data-theme="dark"]{--bg:#0b1120;--panel:#111827;--text:#e5e7eb;--muted:#9ca3af;--line:#273449;--soft:#172554;--shadow:0 12px 40px rgba(0,0,0,.28)}
[data-theme="dark"] .topbar{background:#0f172a;border-bottom-color:#273449}
[data-theme="dark"] .input,.data-theme-dark .input,[data-theme="dark"] .secondary,[data-theme="dark"] .smallBtn,[data-theme="dark"] .layoutRow,[data-theme="dark"] .settingToggle,[data-theme="dark"] .vehicleSlot{background:#0f172a;color:var(--text)}
[data-theme="dark"] .table th{background:#0f172a;color:#9ca3af}
[data-theme="dark"] .hero{background:linear-gradient(135deg,#020617,#172554)}
[data-theme="dark"] .fieldCheck .checkLine{background:#0f172a;border-color:var(--line);color:var(--text)}
[data-theme="dark"] .notice{background:#13233f;color:#bfdbfe}
[data-theme="dark"] .badge{background:#1e3a8a;color:#dbeafe}
[data-theme="dark"] .badge.ok{background:#064e3b;color:#a7f3d0}
[data-theme="dark"] .badge.warn{background:#7c2d12;color:#fed7aa}
[data-theme="dark"] .badge.danger{background:#7f1d1d;color:#fecaca}
@media (prefers-color-scheme:dark){body[data-theme="system"]{--bg:#0b1120;--panel:#111827;--text:#e5e7eb;--muted:#9ca3af;--line:#273449;--soft:#172554;--shadow:0 12px 40px rgba(0,0,0,.28)}body[data-theme="system"] .topbar{background:#0f172a;border-bottom-color:#273449}body[data-theme="system"] .input,body[data-theme="system"] .secondary,body[data-theme="system"] .smallBtn,body[data-theme="system"] .layoutRow,body[data-theme="system"] .settingToggle,body[data-theme="system"] .vehicleSlot{background:#0f172a;color:var(--text)}body[data-theme="system"] .table th{background:#0f172a;color:#9ca3af}}
@media(max-width:900px){.settingList{grid-template-columns:1fr}.settingsGrid{grid-template-columns:1fr}}

/* EsteticaPro 4.1.0 — financeiro e central WhatsApp */
.financeKpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.waLayout{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(280px,.7fr) minmax(420px,1.4fr);gap:16px;align-items:start}
.waConfig{grid-column:1 / -1}
.waConversations,.waChat{min-height:610px}
.waListHead,.waChatHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.waListHead .input{max-width:260px}
.waConversation{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:11px 2px}
.waConversation:hover,.waConversation.active{background:var(--soft);border-radius:9px}
.waAvatar{width:38px;height:38px;border-radius:50%;background:var(--soft);display:grid;place-items:center;font-weight:800;font-size:11px;color:var(--accent)}
.waConvText{min-width:0;display:flex;flex-direction:column;gap:3px}
.waConvText b,.waConvText span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.waConvText b{font-size:12px}.waConvText span{font-size:11px;color:var(--muted)}
.waConvMeta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.waConvMeta small{font-size:9px;color:var(--muted)}
.waMessages{min-height:480px;max-height:480px;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:10px;overflow:auto}
[data-theme="dark"] .waMessages{background:#0b1120}
.waMeta{font-size:9px;margin-top:4px;text-align:right}
.waAutomation{display:grid;grid-template-columns:1fr 280px auto;gap:12px;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
@media(max-width:1250px){.waLayout{grid-template-columns:1fr 1fr}.waConfig{grid-column:1 / -1}.waChat{grid-column:1 / -1}.waMessages{min-height:420px;max-height:420px}.financeKpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.waLayout{grid-template-columns:1fr}.waChat{grid-column:auto}.waAutomation{grid-template-columns:1fr}.waListHead,.waChatHead{flex-direction:column}.waListHead .input{max-width:none}.financeKpis{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.financeKpis{grid-template-columns:1fr}.waConfig .formGrid{grid-template-columns:1fr}.waConfig .span2{grid-column:auto}.waMessages{min-height:360px;max-height:360px}}
.lookupBar{grid-column:1 / -1;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.lookupBarTitle{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px}.lookupBarTitle strong{font-size:12px}.lookupBarTitle span{font-size:11px;color:var(--muted)}
.lookupBar .inlineControl{width:100%}.lookupBar .inlineControl .input{flex:1}.lookupHint{font-size:10px;margin-top:5px;color:var(--muted);min-height:13px}.lookupHint.ok{color:var(--ok)}.lookupHint.warn{color:#c2410c}
.documentVehiclePicker{font-size:11px;padding:8px 10px}


/* EsteticaPro 4.1.4 — agenda, impressão e personalização de OS */
.agendaKpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.dayHead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;text-transform:capitalize}
.appointmentCard{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--panel);margin-top:9px;box-shadow:0 2px 8px rgba(15,23,42,.03)}
.appointmentTop{display:flex;align-items:center;justify-content:space-between;gap:10px}
.appointmentTop strong{font-size:17px}.appointmentTop .muted{font-size:11px}
.appointmentMain{margin-top:8px;display:grid;gap:4px}.appointmentMain b{font-size:12px}.appointmentMain .muted{font-size:11px}
.appointmentMeta{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:9px;color:var(--muted);font-size:9px}
.appointmentActions{margin-top:10px;justify-content:flex-start}
.appointmentActions .danger{border-color:#fecaca}
.agendaEmpty{padding:12px 2px}
.legacyAgenda{margin-top:12px;padding-top:10px;border-top:1px dashed var(--line);display:grid;gap:7px}
.legacyItem{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px;border:1px solid var(--line);border-radius:9px;font-size:10px}
.osTabs{margin-top:8px}.osModalTools{display:flex;align-items:center;gap:10px;padding:14px 0 2px;margin-top:8px;border-top:1px solid var(--line)}
.osCustomizationGrid{align-items:start}.osLogoBox{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--soft);margin-bottom:14px}
.osLogoPreview{width:120px;height:86px;border:1px dashed var(--line);border-radius:10px;display:grid;place-items:center;background:var(--panel);overflow:hidden}.osLogoPreview img{width:100%;height:100%;object-fit:contain;padding:8px}
.osLogoBox .field{display:grid;gap:6px}.osLogoBox .field>span{font-size:10px;font-weight:700;color:var(--text)}
@media(max-width:1100px){.agendaKpis{grid-template-columns:repeat(2,minmax(0,1fr))}.osCustomizationGrid{grid-template-columns:1fr}.appointmentCard{padding:10px}}
@media(max-width:600px){.agendaKpis{grid-template-columns:1fr}.osLogoBox{grid-template-columns:1fr}.osLogoPreview{width:100%;height:110px}.appointmentTop{align-items:flex-start}.appointmentActions{display:flex;flex-wrap:wrap}.legacyItem{flex-direction:column;align-items:flex-start}}
/* Agenda 4.1.5: visualização diária ampliada */
.agendaShell{overflow:hidden}
.agendaDayStrip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:4px 0 18px;border-bottom:1px solid var(--line)}
.agendaDayButton{appearance:none;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:14px;padding:13px 10px;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:92px;transition:.15s;box-shadow:0 2px 8px rgba(15,23,42,.03)}
.agendaDayButton:hover{border-color:#93b4ff;transform:translateY(-1px)}
.agendaDayButton.active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(37,99,235,.10),0 5px 15px rgba(37,99,235,.10);background:var(--soft)}
.agendaDayButton span{font-size:11px;color:var(--muted);text-transform:capitalize}
.agendaDayButton strong{font-size:25px;line-height:1}
.agendaDayButton small{font-size:10px;color:var(--muted)}
.agendaSelectedHead{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 2px 10px}
.agendaSelectedHead h3{margin:0;font-size:18px}.agendaSelectedHead p{margin:5px 0 0}
.agendaList{display:grid;gap:14px}
.appointmentCard{padding:17px 18px;margin-top:0;border-radius:14px;box-shadow:0 3px 12px rgba(15,23,42,.05)}
.appointmentTop strong{font-size:21px}.appointmentMain{margin-top:11px;gap:6px}.appointmentMain b{font-size:15px}.appointmentMain .muted{font-size:12px}.appointmentMeta{font-size:10px;margin-top:11px}.appointmentActions{margin-top:13px}
.agendaEmptyLarge{min-height:220px;border:1px dashed #cbd5e1;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--muted);text-align:center}.agendaEmptyLarge .emptyIcon{font-size:30px;opacity:.55}
@media(max-width:900px){.agendaDayStrip{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.agendaDayStrip{grid-template-columns:repeat(2,minmax(0,1fr))}.agendaDayButton{min-height:82px}}

/* EsteticaPro 4.1.6 — agenda operacional lado a lado + migração CERA */
.agendaList{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:stretch}
.appointmentCard{height:100%;min-height:255px;display:flex;flex-direction:column;padding:18px;border-radius:16px;transition:transform .15s,box-shadow .15s,border-color .15s}
.appointmentCard:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(15,23,42,.07)}
.appointmentCard.readyToRelease{border-color:#86efac;cursor:default}
.appointmentCard.released{opacity:.82}
.appointmentTop{margin-bottom:2px}
.appointmentMain.clickable{cursor:pointer;padding:14px 12px;margin:10px 0 0;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.appointmentMain.clickable:hover{border-color:#86efac;box-shadow:inset 0 0 0 1px rgba(34,197,94,.12)}
.appointmentVehicle{display:flex;align-items:center;gap:10px}
.vehicleIcon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#fff;border:1px solid var(--line);font-size:20px}
.appointmentReleaseHint{margin-top:10px;padding:9px 11px;border-radius:10px;background:#ecfdf5;color:#166534;font-size:10px;font-weight:600}
.readyMsgOk{color:#047857;font-weight:700}
.appointmentActions{margin-top:auto;padding-top:14px}
.ceraImportResult{margin-top:12px;text-align:left}
.ceraResultHead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px}
.ceraStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-bottom:8px}
.ceraStats span{padding:9px 10px;border:1px solid var(--line);border-radius:9px;font-size:10px;color:var(--muted)}
.ceraStats b{display:block;color:var(--text);font-size:16px;margin-top:3px}
@media(max-width:1150px){.agendaList{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}
@media(max-width:700px){.agendaList{grid-template-columns:1fr}.appointmentCard{min-height:0}}


/* EsteticaPro 4.1.7 — agenda, pátio, estoque, financeiro e orçamento */
.badge.info{background:#dbeafe;color:#1d4ed8}
.agendaRangeSelect{width:210px;max-width:210px}
.appointmentDateTime{display:flex;align-items:flex-end;gap:10px}.appointmentDate{font-size:11px;color:var(--muted);text-transform:capitalize}.appointmentTime{font-size:24px;font-weight:850;line-height:1}
.agendaDayStrip{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));align-items:stretch;overflow:auto;padding-bottom:16px}
.patioKpis{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.patioShell{overflow:hidden}.patioSection{margin-top:20px}.patioSection:first-of-type{margin-top:0}.patioSectionHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.patioSectionHead h4{margin:0;font-size:14px}.patioGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px}.patioCard{min-height:235px;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:9px;background:var(--panel);box-shadow:0 5px 18px rgba(15,23,42,.05)}.patioCard.arrived{border-color:#93c5fd;background:linear-gradient(180deg,#eff6ff 0%,var(--panel) 42%)}.patioCard.finished{border-color:#86efac;background:linear-gradient(180deg,#ecfdf5 0%,var(--panel) 42%)}.patioCardTop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.patioTime{font-size:22px;font-weight:850;line-height:1}.patioDate{font-size:10px;color:var(--muted);margin-top:3px;text-transform:capitalize}.patioVehicle{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.68)}.patioService{font-size:12px;font-weight:700}.patioMeta{font-size:10px;color:var(--muted)}
.financeMonthSummary{margin-bottom:16px}.financeMonthTitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.financeMonthTitle h3{margin:0;font-size:17px;text-transform:capitalize}.financeMonthCards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.financeMonthCard{border:1px solid var(--line);border-radius:15px;padding:16px;display:flex;flex-direction:column;gap:6px;background:var(--panel)}.financeMonthCard span{font-size:11px;color:var(--muted);font-weight:700}.financeMonthCard strong{font-size:24px}.financeMonthCard small{font-size:10px;color:var(--muted)}.financeMonthCard.sales,.financeMonthCard.inflow{border-color:#86efac;background:#f0fdf4}.financeMonthCard.sales strong,.financeMonthCard.inflow strong,.financeGreen{color:#15803d}.financeMonthCard.outflow{border-color:#fecaca;background:#fef2f2}.financeMonthCard.outflow strong,.financeRed{color:#b91c1c}.financeMonthCard.balance strong{color:var(--accent)}.financeMonthlyTable td{font-size:12px}
@media(max-width:1100px){.financeMonthCards{grid-template-columns:repeat(2,minmax(0,1fr))}.patioKpis{grid-template-columns:1fr 1fr}.agendaRangeSelect{width:190px;max-width:190px}}
@media(max-width:700px){.financeMonthCards{grid-template-columns:1fr}.patioKpis{grid-template-columns:1fr}.patioGrid{grid-template-columns:1fr}.agendaRangeSelect{width:100%;max-width:none}.appointmentDateTime{align-items:flex-start;flex-direction:column;gap:3px}.appointmentTime{font-size:22px}}
[data-theme="dark"] .patioCard.arrived{background:#0f2b4a;border-color:#2563eb}[data-theme="dark"] .patioCard.finished{background:#0b2b1d;border-color:#059669}[data-theme="dark"] .financeMonthCard.sales,[data-theme="dark"] .financeMonthCard.inflow{background:#062b19}[data-theme="dark"] .financeMonthCard.outflow{background:#2b0b0b}[data-theme="dark"] .patioVehicle{background:rgba(15,23,42,.55)}

/* EsteticaPro 4.1.8 — agenda operacional, adiantamento, pátio e estoque */
.appointmentCard{min-height:280px}
.appointmentAdvance{margin-top:9px;padding:8px 10px;border-radius:9px;background:#eff6ff;color:#1d4ed8;font-size:11px;border:1px solid #bfdbfe}
.appointmentCard .appointmentActions{margin-top:auto;padding-top:13px;border-top:1px solid var(--line)}
.primaryBtn{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}
.patioActions .primaryBtn{box-shadow:0 4px 10px rgba(37,99,235,.14)}
#stockProductId{font-size:12px;min-height:118px;background:#fff}
#stockProductId option{padding:8px 9px}
#stockProductMeta{margin-top:8px}
@media(max-width:1100px){.appointmentCard{min-height:255px}}
[data-theme="dark"] #stockProductId{background:#0f172a;color:#e2e8f0}
[data-theme="dark"] .appointmentAdvance{background:#0f2b4a;color:#bfdbfe;border-color:#1d4ed8}

/* Histórico do cliente e pacotes */
.linkButton{border:0;background:transparent;padding:0;font:inherit;color:var(--accent);font-weight:700;cursor:pointer;text-align:left}.linkButton:hover{text-decoration:underline}.historyList{display:grid;gap:8px;margin-top:10px}.historyItem{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 12px;border:1px solid var(--border,#e5e7eb);border-radius:10px;background:var(--panel,#fff)}.clientHistory{margin-top:14px}.clientHistory h4{margin:0}.packageCard{border:1px solid var(--border,#e5e7eb);border-radius:12px;padding:12px}
/* EsteticaPro 4.2.0 — módulos avançados */
.vehicleKpis,.inventoryKpis{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}
.serviceEditorField{padding-top:4px}.serviceEditorHeader{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.serviceEditorHeader label{margin:0;font-size:12px;color:var(--text)}#serviceItemsEditor{display:grid;gap:12px}.serviceItemCard{border:1px solid var(--line);border-radius:14px;padding:14px;background:linear-gradient(180deg,#fbfdff,#fff);box-shadow:0 3px 12px rgba(15,23,42,.04)}.serviceItemHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.serviceItemHead strong{font-size:13px}.serviceStagesHead{display:flex;justify-content:space-between;align-items:center;gap:8px}.serviceStages{display:grid;gap:7px;margin-top:7px}.serviceStageRow{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:7px;align-items:center}.serviceStageRow .smallBtn{height:40px}.successBtn{background:#059669!important;color:#fff!important;border-color:#059669!important}.patioCard.technicalDone{border-color:#fbbf24;background:linear-gradient(180deg,#fffbeb 0%,var(--panel) 42%)}.checkMini{display:flex;gap:6px;flex-wrap:wrap;margin-top:3px}.assetPreview{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px;min-height:30px}.assetPreview img{width:84px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:#fff}.strategyGrid{display:grid;grid-template-columns:.85fr 1.35fr;gap:16px}.strategyIdentity .field{margin-bottom:12px}.strategyIdentity textarea{min-height:105px}.strategyIdentity button{margin-top:4px}.financeGreen{color:#15803d}.financeRed{color:#b91c1c}
[data-theme="dark"] .serviceItemCard{background:#111827}[data-theme="dark"] .patioCard.technicalDone{background:#2b2205}[data-theme="dark"] .assetPreview img{background:#0f172a}
@media(max-width:1100px){.vehicleKpis,.inventoryKpis{grid-template-columns:repeat(2,minmax(0,1fr))}.strategyGrid{grid-template-columns:1fr}.serviceStageRow{grid-template-columns:1fr 1fr}.serviceStageRow .stageName{grid-column:1/-1}}
@media(max-width:650px){.vehicleKpis,.inventoryKpis{grid-template-columns:1fr}.serviceEditorHeader{align-items:flex-start;flex-direction:column}.serviceStageRow{grid-template-columns:1fr}.serviceStageRow .stageName{grid-column:auto}.serviceStageRow .smallBtn{width:100%}}

/* EsteticaPro 4.2.1 — KPIs por serviço e relatórios executivos */
.ceoBlock{display:grid;gap:12px}.ceoKpis,.reportHeroKpis{grid-template-columns:repeat(4,minmax(0,1fr))}.ceoInsight{border:1px solid var(--line);border-radius:12px;padding:11px 13px;font-size:11px}.ceoInsight.goodInsight{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.ceoInsight.warnInsight{background:#fffbeb;border-color:#fde68a;color:#92400e}.ceoInsight.dangerInsight{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.serviceMetricGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.serviceMetricCard{border:1px solid var(--line);border-radius:15px;padding:14px;background:var(--panel);box-shadow:0 4px 14px rgba(15,23,42,.04)}.serviceMetricCard.good{border-color:#bbf7d0}.serviceMetricCard.warn{border-color:#fde68a}.serviceMetricCard.bad{border-color:#fecaca}.serviceMetricHead{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.serviceMetricHead h4{margin:3px 0 0;font-size:14px}.metricCategory{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.metricBadge{font-size:9px;font-weight:800;padding:4px 7px;border-radius:999px;white-space:nowrap}.metricBadge.good{background:#dcfce7;color:#166534}.metricBadge.warn{background:#fef3c7;color:#92400e}.metricBadge.bad{background:#fee2e2;color:#991b1b}.metricBadge.neutral{background:var(--soft);color:var(--muted)}.metricMain{font-size:27px;font-weight:850;margin:15px 0 13px}.metricMain span{display:block;font-size:9px;font-weight:600;color:var(--muted);margin-top:2px}.metricRows{display:grid;grid-template-columns:1fr 1fr;gap:7px}.metricRows>div{border-top:1px solid var(--line);padding-top:7px;display:flex;flex-direction:column;gap:2px}.metricRows span{font-size:9px;color:var(--muted)}.metricRows b{font-size:11px}.metricBad{color:#b91c1c}.metricGood{color:#15803d}
.reportGrid421{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px}.reportCard421{border:1px solid var(--line);border-radius:15px;padding:15px;display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:190px;background:var(--panel)}.reportCard421 h4{margin:8px 0 5px;font-size:14px}.reportCard421 p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.reportIcon421{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--soft);font-weight:850;color:var(--accent)}
[data-theme="dark"] .ceoInsight.goodInsight{background:#052e1c;color:#bbf7d0;border-color:#166534}[data-theme="dark"] .ceoInsight.warnInsight{background:#2b2205;color:#fde68a;border-color:#92400e}[data-theme="dark"] .ceoInsight.dangerInsight{background:#2b0b0b;color:#fecaca;border-color:#991b1b}[data-theme="dark"] .metricBadge.good{background:#052e1c;color:#bbf7d0}[data-theme="dark"] .metricBadge.warn{background:#2b2205;color:#fde68a}[data-theme="dark"] .metricBadge.bad{background:#2b0b0b;color:#fecaca}
@media(max-width:1050px){.ceoKpis,.reportHeroKpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.ceoKpis,.reportHeroKpis{grid-template-columns:1fr}.serviceMetricGrid,.reportGrid421{grid-template-columns:1fr}}
.waQuickGrid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,var(--soft),var(--panel))}.waQuickHero{display:flex;align-items:center;gap:13px}.waQuickIcon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#dcfce7;color:#047857;font-size:22px;font-weight:900}.waQuickHero b{font-size:15px}.waQuickHero p{margin:4px 0 0;color:var(--muted);font-size:11px}.waQuickActions{justify-content:flex-end}.waConnectionKpis{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.waAdvanced{border-top:1px solid var(--line);padding-top:12px}.waAdvanced summary{cursor:pointer;font-weight:800;font-size:12px;color:var(--text)}
@media(max-width:850px){.waQuickGrid{grid-template-columns:1fr}.waQuickActions{justify-content:flex-start}.waConnectionKpis{grid-template-columns:1fr}}
/* EsteticaPro 4.2.3 — diagnóstico de conexão WhatsApp */
.waDiag{margin-top:0}.waDiagList{display:grid;gap:8px;margin-top:10px}.waDiagRow{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start;padding:8px 0;border-top:1px solid var(--line)}.waDiagRow:first-child{border-top:0}.waDiagRow b{font-size:11px}.waDiagRow .muted{margin-top:2px;line-height:1.4}

/* EsteticaPro 4.2.4 — login, usuários e experiência mobile */
.login424{position:fixed;inset:0;z-index:100;background:linear-gradient(145deg,#0f172a,#172554);display:grid;place-items:center;padding:18px}.loginCard424{width:min(410px,100%);background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.loginLogo424{width:54px;height:54px;border-radius:16px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px}.loginCard424 h2{margin:16px 0 5px}.loginCard424 p{margin:0 0 22px;color:var(--muted);font-size:12px}.loginCard424>label{display:block;margin:12px 0 5px;font-size:11px;font-weight:800;color:var(--muted)}.loginButton424{width:100%;margin-top:10px;height:44px}.loginMsg424{min-height:18px;margin-top:8px;color:var(--danger);font-size:11px}.loginCard424 small{display:block;text-align:center;color:var(--muted);margin-top:18px}.loginBlur424{visibility:hidden}.userChip424{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;padding:0 6px}.userChip424 b{font-size:11px}.userChip424 span{font-size:9px;color:var(--muted)}.logout424{padding:8px 10px}.userRow424{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(240px,1.5fr) auto;gap:14px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--line)}.userRow424>div:first-child{display:flex;flex-direction:column;gap:3px}.userRow424>div:first-child span,.userModules424{font-size:10px;color:var(--muted)}.permissionGrid424{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.permissionGrid424 label{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:9px;background:var(--panel);font-size:11px;font-weight:600;color:var(--text)}
@media(max-width:760px){body{padding-bottom:72px}.sidebar{top:auto;bottom:0;left:0;right:0;width:100%!important;height:66px;padding:7px 8px;display:block;overflow-x:auto;overflow-y:hidden;z-index:50;border-top:1px solid #263247}.sidebar .brand,.sidebar .sideBottom{display:none}.sidebar nav{display:flex!important;flex-direction:row!important;gap:5px;min-width:max-content;height:52px}.navItem{width:64px!important;height:52px;padding:5px!important;display:flex!important;flex-direction:column;justify-content:center;gap:3px!important;text-align:center}.navItem span:not(.navIcon){display:block!important;font-size:8px;max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navIcon{font-size:17px}.main{margin-left:0!important}.topbar{position:sticky;top:0;min-height:70px;height:auto;padding:10px 12px;gap:8px}.topbar h1{font-size:18px}.topbar p{font-size:10px;max-width:180px}.topActions{display:none!important}.logout424{margin-left:auto;padding:7px 9px;font-size:10px}.content{padding:10px!important}.hero{padding:17px}.hero h2{font-size:18px}.kpis,.ceoKpis,.reportHeroKpis,.financeKpis,.patioKpis,.vehicleKpis,.inventoryKpis{grid-template-columns:1fr 1fr!important;gap:9px}.kpi{padding:12px}.kpi .value{font-size:20px}.section{padding:12px}.sectionHead{align-items:flex-start}.sectionHead .toolbar{width:100%;flex-basis:100%}.tableWrap{margin-left:-12px;margin-right:-12px;padding:0 12px}.table{min-width:680px}.modal{padding:0;align-items:end}.modalBox{width:100%!important;max-height:94vh!important;border-radius:18px 18px 0 0!important}.modalHead{min-height:58px;padding:13px 15px}.modalBody{padding:14px!important}.modalFoot{position:sticky;bottom:0;background:var(--panel);padding:10px 12px}.formGrid{grid-template-columns:1fr!important;gap:12px}.span2{grid-column:auto!important}.agendaDayStrip{display:flex;overflow-x:auto}.agendaDayButton{min-width:92px}.agendaList,.patioGrid,.serviceMetricGrid,.reportGrid421{grid-template-columns:1fr!important}.appointmentCard,.patioCard{min-height:0}.settingsGrid,.strategyGrid,.waLayout{grid-template-columns:1fr!important}.permissionGrid424{grid-template-columns:1fr 1fr}.userRow424{grid-template-columns:1fr;gap:7px}.userRow424 .rowActions{justify-content:flex-start}.appCopyright{padding-bottom:6px}.connectionStatus{bottom:76px!important}.loginCard424{padding:23px;border-radius:18px}}
@media(max-width:430px){.kpis,.ceoKpis,.reportHeroKpis,.financeKpis,.patioKpis,.vehicleKpis,.inventoryKpis{grid-template-columns:1fr!important}.permissionGrid424{grid-template-columns:1fr}.login424{padding:10px}.loginCard424{padding:20px}.toolbar>.primary,.toolbar>.secondary{flex:1 1 auto}}

/* Confiance Boutique 4.3.8 — tema premium estável */
:root{
  --accent:#d5aa52;--accent-2:#f2cf7b;--gold-dark:#74511c;
  --bg:#0b0b0c;--panel:#131416;--panel-2:#18191c;--text:#f4f1e9;
  --muted:#aaa294;--line:#30291e;--soft:#19150f;--danger:#ef4444;--ok:#22c55e;
  --shadow:0 12px 34px rgba(0,0,0,.26)
}
html,body{background:#0b0b0c;color:var(--text)}
body[data-theme="confiance"]{background:radial-gradient(circle at 75% -10%,rgba(213,170,82,.055),transparent 30%),#0b0b0c;color:var(--text)}
body[data-theme="confiance"] .sidebar{width:250px;background:linear-gradient(180deg,#070707,#0d0d0e 58%,#090909);border-right:1px solid rgba(213,170,82,.22);box-shadow:12px 0 28px rgba(0,0,0,.22)}
body[data-theme="confiance"] .main{margin-left:250px;background:transparent}
body[data-theme="confiance"] .brand{min-height:102px;padding:10px 8px 18px;border-bottom:1px solid rgba(213,170,82,.12);margin-bottom:8px}

body[data-theme="confiance"] .brandMark,body[data-theme="confiance"] .brandMark.hasLogo{width:208px;height:74px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
body[data-theme="confiance"] .brandMark.hasLogo img{width:100%;height:100%;padding:0;object-fit:contain;filter:drop-shadow(0 5px 12px rgba(213,170,82,.13))}
body[data-theme="confiance"] .navItem{min-height:42px;padding:10px 12px;border-radius:10px;color:#ddd6c8;border:1px solid transparent;transition:background .15s,border-color .15s,color .15s}
body[data-theme="confiance"] .navIcon{color:#d8ad56}
body[data-theme="confiance"] .navItem:hover{background:#151310;border-color:rgba(213,170,82,.14);color:#fff}
body[data-theme="confiance"] .navItem.active{background:linear-gradient(90deg,rgba(213,170,82,.16),rgba(213,170,82,.035));border-color:rgba(213,170,82,.42);color:#fff;box-shadow:inset 3px 0 0 #d9ad54}
body[data-theme="confiance"] .topbar{height:88px;padding:0 28px;background:rgba(14,14,15,.97);border-bottom:1px solid rgba(213,170,82,.19);box-shadow:0 7px 22px rgba(0,0,0,.18)}
body[data-theme="confiance"] .topbar h1{color:#fff7e8;font-size:23px}
body[data-theme="confiance"] .topbar p{color:#aaa294!important}
body[data-theme="confiance"] .content{padding:24px 26px;max-width:1680px;margin:0 auto;width:100%}
body[data-theme="confiance"] .card,body[data-theme="confiance"] .section,body[data-theme="confiance"] .kpi,body[data-theme="confiance"] .modalBox,body[data-theme="confiance"] .appointmentCard,body[data-theme="confiance"] .patioCard,body[data-theme="confiance"] .financeMonthCard,body[data-theme="confiance"] .reportCard421{background:linear-gradient(180deg,#151618,#111214);border:1px solid rgba(213,170,82,.16);box-shadow:var(--shadow)}
body[data-theme="confiance"] .hero{background:radial-gradient(circle at 88% 40%,rgba(213,170,82,.13),transparent 23%),linear-gradient(110deg,#151515,#111214 65%,#17130d);border:1px solid rgba(213,170,82,.24);box-shadow:inset 3px 0 0 rgba(213,170,82,.75),0 12px 28px rgba(0,0,0,.20)}
body[data-theme="confiance"] .hero h2{color:#fff7e8}
body[data-theme="confiance"] .hero p{color:#c8beaa}
body[data-theme="confiance"] .hero b{color:#e7bd65}
body[data-theme="confiance"] .primary{background:linear-gradient(180deg,#efcf82,#c39237);color:#161108;border:1px solid #d8aa4d;box-shadow:0 7px 18px rgba(196,145,48,.17);font-weight:800}
body[data-theme="confiance"] .primary:hover{filter:brightness(1.04)}
body[data-theme="confiance"] .secondary,body[data-theme="confiance"] .smallBtn,body[data-theme="confiance"] .ghost,body[data-theme="confiance"] .logout424{background:#121315;color:#eee8dd;border:1px solid rgba(213,170,82,.23);box-shadow:none}
body[data-theme="confiance"] .secondary:hover,body[data-theme="confiance"] .smallBtn:hover,body[data-theme="confiance"] .ghost:hover,body[data-theme="confiance"] .logout424:hover{background:#191815;border-color:rgba(213,170,82,.45)}
body[data-theme="confiance"] .tableWrap{border:1px solid rgba(213,170,82,.10);border-radius:10px;overflow:auto}
body[data-theme="confiance"] .table th{background:#181714;color:#dfb964;border-bottom:1px solid rgba(213,170,82,.17)}
body[data-theme="confiance"] .table td{background:#111214;color:#eee9df;border-bottom:1px solid rgba(255,255,255,.05)}
body[data-theme="confiance"] .table tr:hover td{background:#171612}
body[data-theme="confiance"] .input,body[data-theme="confiance"] select,body[data-theme="confiance"] textarea{background:#0e0f10!important;color:#f5efe4!important;border-color:rgba(213,170,82,.20)!important}
body[data-theme="confiance"] .input:focus,body[data-theme="confiance"] select:focus,body[data-theme="confiance"] textarea:focus{border-color:#d4a64b!important;box-shadow:0 0 0 3px rgba(213,170,82,.09)!important}
body[data-theme="confiance"] .sectionHead{border-bottom:1px solid rgba(213,170,82,.08);padding-bottom:10px}
body[data-theme="confiance"] .sectionHead h3{color:#fff3df}
body[data-theme="confiance"] .badge{background:#201b13;color:#eac874;border:1px solid rgba(213,170,82,.14)}
body[data-theme="confiance"] .badge.ok{background:#102218;color:#bbf7d0;border-color:rgba(34,197,94,.18)}
body[data-theme="confiance"] .badge.warn{background:#241b0e;color:#fed7aa;border-color:rgba(245,158,11,.18)}
body[data-theme="confiance"] .badge.danger{background:#251111;color:#fecaca;border-color:rgba(239,68,68,.18)}
body[data-theme="confiance"] .notice{background:#17140f;color:#eadab8;border-color:rgba(213,170,82,.16)}
body[data-theme="confiance"] .dangerBox{background:#261111;color:#fecaca;border-color:rgba(239,68,68,.18)}
body[data-theme="confiance"] .modal{background:rgba(0,0,0,.70)}
body[data-theme="confiance"] .modalBox{background:#121315;border-color:rgba(213,170,82,.18)}
body[data-theme="confiance"] .modalHead,body[data-theme="confiance"] .modalFoot{border-color:rgba(213,170,82,.10)}
body[data-theme="confiance"] .connectionStatus{background:#101112;color:#d5b56d;border:1px solid rgba(213,170,82,.17)}
body[data-theme="confiance"] .appCopyright{color:#877e70}
body[data-theme="confiance"] .userChip424 b{color:#efd083}
body[data-theme="confiance"] .kpi .value{color:#fff8e9}
body[data-theme="confiance"] .kpi .label,body[data-theme="confiance"] .kpi .foot,body[data-theme="confiance"] .muted{color:#aaa294!important}
body[data-theme="confiance"] .progress{background:#211c13}
body[data-theme="confiance"] .progress>div{background:linear-gradient(90deg,#9d7029,#e9bd5f)}
body[data-theme="confiance"] .login424{background:radial-gradient(circle at 50% 10%,rgba(213,170,82,.085),transparent 24%),repeating-linear-gradient(115deg,transparent 0 30px,rgba(213,170,82,.018) 30px 33px),#080808}
body[data-theme="confiance"] .premiumLogin424{background:linear-gradient(180deg,rgba(16,16,16,.98),rgba(9,9,9,.99));border-color:rgba(213,170,82,.22);box-shadow:0 30px 90px rgba(0,0,0,.55)}
body[data-theme="confiance"] .loginAccentLine424{background:linear-gradient(90deg,transparent,#d7aa50,transparent)}
.loginLogoStage424{height:118px!important;margin-bottom:8px!important}
.loginBrandImg424{display:block;max-width:330px!important;max-height:105px!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:drop-shadow(0 6px 16px rgba(213,170,82,.12))!important}
.loginLogoHalo424{width:250px!important;height:115px!important;background:radial-gradient(ellipse,rgba(213,170,82,.10),transparent 66%)!important}
.loginCard424 h2{color:#fff5e2}.loginCard424 p{color:#bdb29d}.loginCard424>label{color:#d9bd7b}.loginMsg424{color:#e5c271}.loginCard424 small{color:#8f8677}
body[data-theme="confiance"] .bubble.in{background:#151618;color:#f1ebdf;border:1px solid rgba(213,170,82,.08)}
body[data-theme="confiance"] .bubble.out{background:#201a11;color:#fff4dc;border:1px solid rgba(213,170,82,.14)}
@media(max-width:1100px){body[data-theme="confiance"] .content{padding:18px}body[data-theme="confiance"] .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){body[data-theme="confiance"] .sidebar{width:78px}body[data-theme="confiance"] .main{margin-left:78px}body[data-theme="confiance"] .brand{min-height:auto;padding:6px 4px 14px}body[data-theme="confiance"] .brandMark,body[data-theme="confiance"] .brandMark.hasLogo{width:52px;height:38px}body[data-theme="confiance"] .topbar{height:auto;min-height:70px;padding:10px 12px}body[data-theme="confiance"] .content{padding:12px}.loginBrandImg424{max-width:265px!important;max-height:92px!important}}
@media(max-width:430px){body[data-theme="confiance"] .kpis{grid-template-columns:1fr}.premiumLogin424{padding:24px 18px!important}}


/* Confiance Boutique 4.3.9 — Premium Claro */
body[data-theme="confiance-light"]{
  --bg:#e9e8e4;--panel:#f7f6f2;--panel-2:#efede7;--text:#1c1b19;
  --muted:#6f695f;--line:#d0c7b7;--soft:#eee8dc;--shadow:0 12px 30px rgba(39,31,18,.10);
  background:radial-gradient(circle at 76% -10%,rgba(194,145,48,.10),transparent 30%),#e9e8e4;color:var(--text)
}
body[data-theme="confiance-light"] .sidebar{width:250px;background:linear-gradient(180deg,#2a2a2b,#1d1d1f 62%,#232324);border-right:1px solid rgba(190,143,51,.48);box-shadow:12px 0 28px rgba(30,25,17,.16)}
body[data-theme="confiance-light"] .main{margin-left:250px;background:transparent}
body[data-theme="confiance-light"] .brand{min-height:102px;padding:10px 8px 18px;border-bottom:1px solid rgba(213,170,82,.22);margin-bottom:8px}

body[data-theme="confiance-light"] .brandMark,body[data-theme="confiance-light"] .brandMark.hasLogo{width:208px;height:74px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
body[data-theme="confiance-light"] .brandMark.hasLogo img{width:100%;height:100%;padding:0;object-fit:contain;filter:drop-shadow(0 5px 10px rgba(0,0,0,.18))}
body[data-theme="confiance-light"] .navItem{min-height:42px;padding:10px 12px;border-radius:10px;color:#eee9dd;border:1px solid transparent}
body[data-theme="confiance-light"] .navIcon{color:#edc66f}
body[data-theme="confiance-light"] .navItem:hover{background:rgba(255,255,255,.07);border-color:rgba(213,170,82,.24);color:#fff}
body[data-theme="confiance-light"] .navItem.active{background:linear-gradient(90deg,rgba(213,170,82,.23),rgba(213,170,82,.06));border-color:rgba(231,187,93,.56);color:#fff;box-shadow:inset 3px 0 0 #e2b65b}
body[data-theme="confiance-light"] .topbar{height:88px;padding:0 28px;background:rgba(247,246,242,.96);border-bottom:1px solid #d7c9ad;box-shadow:0 7px 20px rgba(47,39,25,.08)}
body[data-theme="confiance-light"] .topbar h1{color:#211f1a}body[data-theme="confiance-light"] .topbar p{color:#746c5e!important}
body[data-theme="confiance-light"] .content{padding:24px 26px;max-width:1680px;margin:0 auto;width:100%}
body[data-theme="confiance-light"] .card,body[data-theme="confiance-light"] .section,body[data-theme="confiance-light"] .kpi,body[data-theme="confiance-light"] .modalBox,body[data-theme="confiance-light"] .appointmentCard,body[data-theme="confiance-light"] .patioCard,body[data-theme="confiance-light"] .financeMonthCard,body[data-theme="confiance-light"] .reportCard421{background:linear-gradient(180deg,#fbfaf7,#f2f0ea);border:1px solid #d8cfbf;box-shadow:var(--shadow)}
body[data-theme="confiance-light"] .hero{background:radial-gradient(circle at 88% 40%,rgba(213,170,82,.17),transparent 24%),linear-gradient(110deg,#f6f4ef,#eee9df 68%,#e9dfc9);border:1px solid #d4bd8a;box-shadow:inset 3px 0 0 #c9983e,0 12px 28px rgba(55,43,23,.08);color:#211f1a}
body[data-theme="confiance-light"] .hero h2{color:#211f1a}body[data-theme="confiance-light"] .hero p{color:#665f54}body[data-theme="confiance-light"] .hero b{color:#9b6f21}
body[data-theme="confiance-light"] .primary{background:linear-gradient(180deg,#edce86,#c69237);color:#191309;border:1px solid #c7953a;box-shadow:0 7px 16px rgba(173,124,36,.17);font-weight:800}
body[data-theme="confiance-light"] .secondary,body[data-theme="confiance-light"] .smallBtn,body[data-theme="confiance-light"] .ghost,body[data-theme="confiance-light"] .logout424{background:#f5f3ed;color:#2b2822;border:1px solid #cfc2aa;box-shadow:none}
body[data-theme="confiance-light"] .secondary:hover,body[data-theme="confiance-light"] .smallBtn:hover,body[data-theme="confiance-light"] .ghost:hover,body[data-theme="confiance-light"] .logout424:hover{background:#ebe7de;border-color:#b8934d}
body[data-theme="confiance-light"] .tableWrap{border:1px solid #d7cdbc;border-radius:10px;overflow:auto}
body[data-theme="confiance-light"] .table th{background:#ebe5d9;color:#815d20;border-bottom:1px solid #d1c19f}
body[data-theme="confiance-light"] .table td{background:#f8f7f3;color:#25231f;border-bottom:1px solid #e3ddd1}
body[data-theme="confiance-light"] .table tr:hover td{background:#f0ebdf}
body[data-theme="confiance-light"] .input,body[data-theme="confiance-light"] select,body[data-theme="confiance-light"] textarea{background:#fffefa!important;color:#25231f!important;border-color:#cfc4b0!important}
body[data-theme="confiance-light"] .input:focus,body[data-theme="confiance-light"] select:focus,body[data-theme="confiance-light"] textarea:focus{border-color:#c5963c!important;box-shadow:0 0 0 3px rgba(197,150,60,.12)!important}
body[data-theme="confiance-light"] .sectionHead{border-bottom:1px solid #ddd5c6;padding-bottom:10px}body[data-theme="confiance-light"] .sectionHead h3{color:#29251e}
body[data-theme="confiance-light"] .badge{background:#eee4cf;color:#805d20;border:1px solid #dcc79d}
body[data-theme="confiance-light"] .badge.ok{background:#e7f6ec;color:#166534;border-color:#b8dfc4}
body[data-theme="confiance-light"] .badge.warn{background:#fff0d7;color:#92400e;border-color:#edcf9a}
body[data-theme="confiance-light"] .badge.danger{background:#fde5e5;color:#991b1b;border-color:#efb9b9}
body[data-theme="confiance-light"] .notice{background:#f2eadc;color:#664a1a;border-color:#d8c49c}
body[data-theme="confiance-light"] .dangerBox{background:#fde8e8;color:#991b1b;border-color:#efbaba}
body[data-theme="confiance-light"] .modal{background:rgba(32,28,22,.46)}body[data-theme="confiance-light"] .modalBox{background:#f8f7f3;border-color:#d5cbb9}
body[data-theme="confiance-light"] .modalHead,body[data-theme="confiance-light"] .modalFoot{border-color:#ddd5c7}
body[data-theme="confiance-light"] .connectionStatus{background:#f4f1e9;color:#7a5b24;border:1px solid #d6c59e}
body[data-theme="confiance-light"] .appCopyright{color:#7d766b}body[data-theme="confiance-light"] .userChip424 b{color:#8a6424}
body[data-theme="confiance-light"] .kpi .value{color:#211f1a}body[data-theme="confiance-light"] .kpi .label,body[data-theme="confiance-light"] .kpi .foot,body[data-theme="confiance-light"] .muted{color:#746e64!important}
body[data-theme="confiance-light"] .progress{background:#ddd6c8}body[data-theme="confiance-light"] .progress>div{background:linear-gradient(90deg,#956923,#d9ad54)}
body[data-theme="confiance-light"] .login424{background:radial-gradient(circle at 50% 8%,rgba(196,145,48,.16),transparent 25%),repeating-linear-gradient(115deg,transparent 0 30px,rgba(141,104,38,.025) 30px 33px),#e7e5df}
body[data-theme="confiance-light"] .premiumLogin424{background:linear-gradient(180deg,rgba(250,249,246,.98),rgba(239,236,228,.99));border-color:#d2bd91;box-shadow:0 28px 75px rgba(50,42,29,.18)}
body[data-theme="confiance-light"] .loginAccentLine424{background:linear-gradient(90deg,transparent,#c69438,transparent)}
body[data-theme="confiance-light"] .loginLogoHalo424{background:radial-gradient(ellipse,rgba(185,135,42,.11),transparent 66%)!important}
body[data-theme="confiance-light"] .loginCard424 h2{color:#27231d}body[data-theme="confiance-light"] .loginCard424 p{color:#70685a}body[data-theme="confiance-light"] .loginCard424>label{color:#865f1f}body[data-theme="confiance-light"] .loginMsg424{color:#8b6422}body[data-theme="confiance-light"] .loginCard424 small{color:#7c7467}
body[data-theme="confiance-light"] .bubble.in{background:#f2f0ea;color:#29251f;border:1px solid #ddd5c7}body[data-theme="confiance-light"] .bubble.out{background:#eee0c3;color:#3c2b0f;border:1px solid #d4bd8a}
body[data-theme="confiance-light"] .waMessages{background:#eeece6}
@media(max-width:800px){body[data-theme="confiance-light"] .sidebar{width:78px}body[data-theme="confiance-light"] .main{margin-left:78px}body[data-theme="confiance-light"] .brand{min-height:auto;padding:6px 4px 14px}body[data-theme="confiance-light"] .brandMark,body[data-theme="confiance-light"] .brandMark.hasLogo{width:52px;height:38px}body[data-theme="confiance-light"] .topbar{height:auto;min-height:70px;padding:10px 12px}body[data-theme="confiance-light"] .content{padding:12px}}

/* 4.3.10 — surfaces shared by both premium themes. */
body[data-theme="confiance"] { color-scheme:dark; --success-surface:#102218; --success-text:#bbf7d0; --error-surface:#251111; --error-text:#fecaca; --info-surface:#102438; --info-text:#bfdbfe; --warn-surface:#2a210e; --warn-text:#fde68a; }
body[data-theme="confiance-light"] { color-scheme:light; --success-surface:#e7f6ec; --success-text:#166534; --error-surface:#fde5e5; --error-text:#991b1b; --info-surface:#e6effa; --info-text:#1e40af; --warn-surface:#fff0d7; --warn-text:#92400e; }
body[data-theme^="confiance"] :is(.modalHead,.modalBody,.modalFoot,.serviceItemCard,.vehicleSlot,.fieldCheck .checkLine,.day,.agendaDayButton,.vehicleIcon,.patioVehicle,.waMessages) { background:var(--panel); color:var(--text); border-color:var(--line); }
body[data-theme^="confiance"] .modalHead h3 {color:var(--text)}
body[data-theme^="confiance"] :is(.serviceItemCard,.vehicleSlot) {background:var(--panel-2)}
body[data-theme^="confiance"] .agendaDayButton.active {background:var(--soft);border-color:var(--accent)}
body[data-theme^="confiance"] .tab {background:var(--panel-2);color:var(--text);border:1px solid var(--line)}
body[data-theme^="confiance"] .tab.active {background:var(--accent);color:#161108}
body[data-theme^="confiance"] .input::placeholder {color:var(--muted);opacity:1}
body[data-theme^="confiance"] .modalBody input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body[data-theme^="confiance"] .modalBody select,
body[data-theme^="confiance"] .modalBody textarea {max-width:100%;min-width:0;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:10px 11px}
body[data-theme^="confiance"] .formGrid>label {display:flex;flex-direction:column;gap:6px;min-width:0}
body[data-theme^="confiance"] .formGrid>label:has(input[type="checkbox"]) {flex-direction:row;align-items:center}
body[data-theme^="confiance"] :is(.financeMonthCard.sales,.financeMonthCard.inflow,.patioCard.finished) {background:var(--success-surface);border-color:var(--success-text)}
body[data-theme^="confiance"] :is(.financeMonthCard.sales strong,.financeMonthCard.inflow strong,.financeGreen,.metricGood) {color:var(--success-text)}
body[data-theme^="confiance"] .financeMonthCard.outflow {background:var(--error-surface);border-color:var(--error-text)}
body[data-theme^="confiance"] :is(.financeMonthCard.outflow strong,.financeRed,.metricBad,.smallBtn.danger) {color:var(--error-text)}
body[data-theme^="confiance"] .patioCard.arrived {background:var(--info-surface);border-color:var(--info-text)}
body[data-theme^="confiance"] .patioCard.technicalDone {background:var(--warn-surface);border-color:var(--warn-text)}
body[data-theme^="confiance"] .badge.info {background:var(--info-surface);color:var(--info-text)}
.modal {z-index:80}
body.modalOpen {overflow:hidden}
.modalBox {max-width:100%;isolation:isolate}
.modalBody {overscroll-behavior:contain}
.modalHead {gap:12px}
.modalHead h3 {min-width:0;overflow-wrap:anywhere}
.modalHead .icon {flex-shrink:0}
button:disabled {cursor:wait;opacity:.65}
.login424 {overflow-y:auto;grid-template-columns:minmax(0,1fr);align-content:safe center}
.loginBackdrop424 {position:absolute;inset:0;pointer-events:none}
.premiumLogin424 {position:relative;justify-self:center;min-width:0;margin:auto}
.loginAccentLine424 {height:2px;margin-bottom:12px}
.loginLogoStage424 {position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}
.loginLogoHalo424 {position:absolute;inset:0;margin:auto;max-width:100%;pointer-events:none;z-index:-1}
.loginBrandImg424 {position:relative;max-width:100%!important;flex-shrink:1}
.loginTitleBlock424 {position:relative;text-align:center}
.loginTitleBlock424 h2 {font-size:22px;line-height:1.25;margin:10px 0}
.loginEyebrow424 {font-size:11px;letter-spacing:.12em;color:var(--muted)}
.loginCard424 input {width:100%}
@media(min-width:761px) {
 .sidebar {overflow-y:auto;z-index:10}
 body[data-theme^="confiance"][data-sidebar="compact"] .sidebar {width:78px}
 body[data-theme^="confiance"][data-sidebar="compact"] .main {margin-left:78px}
 body[data-theme^="confiance"][data-sidebar="compact"] .brand {min-height:auto;padding:6px 4px 14px}
 body[data-theme^="confiance"][data-sidebar="compact"] .brandMark {width:48px;height:38px}
}
@media(max-width:760px) {
 .modal {padding:0;align-items:end}
 .modalBox {max-height:94dvh!important}
 body[data-theme^="confiance"] .sidebar {padding:7px 8px}
 .rowActions,.serviceItemHead,.sectionHead {flex-wrap:wrap;gap:8px}
 .login424 {padding:16px}
 .premiumLogin424 {padding:22px 18px!important}
}
@media(max-height:650px) { .login424 {align-content:start} }
/* Keep the authentication viewport independent of the dashboard text zoom. */
body:has(.login424:not(.hidden)) {zoom:1;padding-bottom:0}
.login424 .input {min-height:44px;font-size:16px}
.loginButton424 {min-height:44px}
.loginMsg424 {overflow-wrap:anywhere}
@media(max-width:480px) {.login424 {padding:12px}.loginCard424 {width:100%;max-width:410px}.loginTitleBlock424 h2 {font-size:20px}.loginLogoStage424 {height:104px!important}}

/* EsteticaPro - mobile login viewport stability, respects existing premium themes. */
@media (max-width: 600px) {
  .login424 {
    box-sizing: border-box;
    height: 100dvh;
    max-height: 100dvh;
    width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    display: flex;
    align-items: safe center;
    justify-content: center;
    padding: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));
  }
  .loginCard424, .premiumLogin424 {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 410px;
    flex: 0 1 auto;
    margin: auto;
  }
  .loginLogoStage424 {height: 94px!important;max-height:94px!important;}
  .loginBrandImg424 {
    max-height: 86px!important;
    max-width: min(290px, calc(100vw - 75px))!important;
  }
  .loginCard424 input, .loginButton424 {box-sizing:border-box;min-width:0;max-width:100%;}
}
@media (max-height: 570px) and (max-width: 600px) {
  .login424 {align-items: flex-start;justify-content: flex-start;}
  .loginCard424, .premiumLogin424 {margin:auto;}
  .loginLogoStage424 {height:68px!important;max-height:68px!important;}
  .loginBrandImg424 {max-height:64px!important;}
}

/* KL Experience premium top navigation and responsive layout */
#app{min-height:100vh}
.sidebar{position:sticky;inset:0 0 auto;z-index:20;width:100%;min-height:0;height:auto;padding:12px clamp(14px,3vw,32px) 10px;background:color-mix(in srgb,var(--panel) 94%,#d9e5f2);color:var(--text);border-bottom:1px solid var(--line);box-shadow:0 8px 28px rgba(19,35,65,.07);display:grid;grid-template-columns:minmax(320px,auto) 1fr auto;grid-template-rows:auto auto;align-items:center;gap:10px 24px}
.brand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0;min-height:60px}
.brandKls,.tenantBrand{display:flex;align-items:center;gap:12px}
.brandKls{min-width:190px}
.brandKls img{width:42px;height:48px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(15,23,42,.16))}
.brandKls strong{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--text)}
.brandKls span{color:var(--muted);font-size:11px}
.tenantBrand{min-width:210px;max-width:340px;padding:7px 13px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 4px 16px rgba(19,35,65,.05)}
.tenantBrand .brandMark{width:42px;height:42px;flex:none;overflow:hidden;border-radius:11px;background:var(--soft);color:var(--accent)}
.brandMark img{width:100%;height:100%;object-fit:contain;border-radius:inherit}
.tenantBrandText{min-width:0}
.tenantBrandText strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:245px}
.tenantBrandText span{color:var(--muted)}
#nav{grid-column:1/3;display:flex;flex-direction:row!important;align-items:center;gap:6px;min-width:0;overflow:hidden}
#nav .navItem{width:auto;min-width:66px;min-height:56px;flex:1 1 0;flex-direction:column;justify-content:center;gap:4px;padding:8px 9px;border:1px solid transparent;border-radius:13px;color:var(--muted);text-align:center;background:transparent;white-space:nowrap;font-size:11px}
#nav .navIcon{width:auto;font-size:17px;line-height:18px}
#nav .navItem:hover{background:var(--soft);color:var(--text)}
#nav .navItem.active{background:var(--panel);color:var(--accent);border-color:var(--line);box-shadow:0 4px 12px rgba(20,40,80,.07)}
.navMoreToggle{flex:0 0 auto!important;border-color:var(--line)!important;background:var(--panel)!important;color:var(--text)!important}
.navMoreMenu{position:absolute;top:calc(100% - 4px);right:clamp(14px,3vw,32px);z-index:30;width:min(300px,calc(100vw - 28px));max-height:min(65vh,480px);overflow:auto;padding:8px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:0 18px 48px rgba(15,23,42,.2)}
.navMoreItem{display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;border-radius:10px;text-align:left;background:transparent;color:var(--text)}
.navMoreItem:hover,.navMoreItem.active{background:var(--soft);color:var(--accent)}
.sideBottom{grid-column:3;grid-row:2;margin:0;justify-content:flex-end}
.sideBottom .ghost{color:var(--muted);border-color:var(--line)}
.sideBottom span{color:var(--muted)}
.main{margin-left:0;min-height:calc(100vh - 118px)}
.topbar{padding:12px clamp(16px,3vw,32px);height:auto;min-height:78px}
.content{padding:clamp(14px,2vw,26px)}
.suggestionPanel{position:relative;z-index:25;margin-top:5px;max-height:250px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 14px 34px rgba(15,23,42,.16)}
.lookupOption{display:flex;flex-direction:column;gap:3px;width:100%;padding:9px 10px;border-radius:8px;text-align:left;background:transparent;color:var(--text)}
.lookupOption:hover,.lookupOption:focus{outline:none;background:var(--soft)}
.lookupOption span{font-size:12px;color:var(--muted)}
.field{position:relative}
.permissionOverlay424{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:rgba(8,14,28,.58);backdrop-filter:blur(5px)}
.permissionDialog424{width:min(620px,100%);max-height:min(82vh,720px);overflow:auto;padding:20px;border-radius:20px;background:var(--panel);color:var(--text);box-shadow:0 24px 80px rgba(0,0,0,.3)}
.permissionDialog424 .modalHead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.permissionDialog424 .modalHead h3{margin:0}
.permissionDialog424 .modalHead p{margin:6px 0}
.permissionGrid424{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}
.permissionOption{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--bg)}
.permissionOption input{accent-color:var(--accent)}
.permissionDialog424 .modalFoot{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid var(--line)}
.userPermissionSummary424{margin-top:9px;color:var(--muted);font-size:12px;line-height:1.5}
.financeCompare424{margin-top:16px}
.financeCompare424 .tableWrap{overflow:auto}
.financeCompare424 table{min-width:980px}
.financeCompare424 thead th{text-align:center}
.financeCompare424 tfoot th{background:var(--soft)}
#loginBrandImg424{object-fit:contain}
@media(max-width:900px){
 .sidebar{padding:9px 14px;gap:8px}
 .brand{min-height:52px}
 #nav{grid-column:1/-1;grid-row:2;overflow-x:auto;scrollbar-width:none}
 #nav::-webkit-scrollbar{display:none}
 #nav .navItem{flex:0 0 auto;min-width:76px}
 .sideBottom{display:none}
 .main{min-height:calc(100vh - 112px)}
}
@media(max-width:600px){
 .sidebar{position:sticky;padding:8px 10px 7px;gap:6px}
 .brand{min-height:46px;gap:8px}
 .brandKls{min-width:0;gap:7px}
 .brandKls img{width:30px;height:36px}
 .brandKls strong{font-size:10px;letter-spacing:.1em}
 .brandKls span{font-size:9px;margin-top:1px}
 .tenantBrand{min-width:0;max-width:58vw;gap:7px;padding:5px 8px;border-radius:11px}
 .tenantBrand .brandMark{width:32px;height:32px}
 .tenantBrandText strong{font-size:12px;max-width:38vw}
 .tenantBrandText span{font-size:9px}
 #nav{gap:4px;margin-right:-10px;padding-right:10px}
 #nav .navItem{min-width:62px;padding:6px 7px;font-size:10px;border-radius:10px}
 #nav .navIcon{font-size:15px}
 .topbar{min-height:66px;flex-wrap:wrap;gap:7px;padding:10px 13px}
 .topbar h1{font-size:19px}
 .topbar p{font-size:11px}
 .topActions{width:100%;gap:7px}
 .topActions button{flex:1;padding:9px 8px}
 .content{padding:12px}
 .permissionGrid424{grid-template-columns:1fr}
 .permissionDialog424{padding:15px;border-radius:16px}
 .navMoreMenu{right:10px}
}

/* Mobile fixes: keep the brand visible and let the overflow menu float above content. */
@media(max-width:600px){
 .sidebar{overflow:visible!important;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;z-index:1000}
 .sidebar .brand{display:flex!important;grid-column:1/-1;grid-row:1;min-width:0}
 .brandKls{min-width:0;flex:0 0 auto}
 .tenantBrand{flex:0 1 auto}
 #nav{grid-column:1/-1;grid-row:2}
 .navMoreMenu{position:absolute;z-index:1001;top:calc(100% - 4px);right:10px}
}

/* Mobile header: compact current-page navigation with persistent dual branding. */
@media(max-width:600px){
 .sidebar{
  padding:9px 12px 10px;
  gap:8px;
  background:linear-gradient(155deg,color-mix(in srgb,var(--panel) 97%,#d9e5f2),var(--panel));
  box-shadow:0 8px 24px rgba(19,35,65,.12)
 }
 .sidebar .brand{
  min-height:50px;
  gap:8px;
  padding:0 0 8px;
  border-bottom:1px solid var(--line)
 }
 .brandKls{min-width:0;gap:6px;flex:0 1 auto}
 .brandKls img{width:30px;height:34px}
 .brandKls strong{font-size:9px;letter-spacing:.08em}
 .brandKls span{font-size:8px}
 .tenantBrand{min-width:0;max-width:60vw;flex:0 1 60vw;padding:5px 8px;border-radius:12px}
 .tenantBrand .brandMark{width:34px;height:34px;border-radius:9px}
 .tenantBrandText{min-width:0;overflow:hidden}
 .tenantBrandText strong{display:block;max-width:100%;font-size:12px;line-height:1.2}
 .tenantBrandText span{display:none}
 #nav{
  grid-column:1/-1;
  grid-row:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  margin:0;
  padding:3px;
  overflow:visible;
  border:1px solid var(--line);
  border-radius:16px;
  background:color-mix(in srgb,var(--soft) 72%,var(--panel))
 }
 #nav .navItem{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  min-width:0;
  min-height:42px;
  height:42px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:12px;
  font-size:12px;
  text-align:left
 }
 #nav .navItem:first-child{flex:1 1 auto}
 #nav .navItem:first-child>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #nav .navIcon{font-size:16px;line-height:1;flex:none}
 #nav .navItem.active{background:var(--panel);color:var(--accent);border-color:var(--line);box-shadow:0 3px 10px rgba(20,40,80,.08)}
 #nav .navMoreToggle{flex:0 0 auto!important;min-width:104px;justify-content:center;border-color:var(--line)!important;background:var(--panel)!important}
 .navMoreMenu{top:calc(100% - 3px);right:12px;width:min(360px,calc(100vw - 24px));max-height:min(68dvh,520px);border-radius:16px}
}

/* Approved compact dual-brand header for desktop and mobile. */
.sidebar{
 padding:6px clamp(12px,2.4vw,26px);
 gap:5px 18px
}
.brand{
 justify-content:flex-start;
 gap:10px;
 min-height:36px;
 padding:0 0 4px;
 border-bottom:1px solid var(--line)
}
.brandKls{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0}
.brandKls img{width:30px;height:30px;object-fit:contain}
.tenantBrand{
 display:flex;
 align-items:center;
 gap:7px;
 min-width:0;
 max-width:230px;
 padding:4px 8px;
 border-radius:12px;
 box-shadow:none
}
.tenantBrand .brandMark{width:26px;height:26px;border-radius:8px}
.tenantBrandText{min-width:0;overflow:hidden}
.tenantBrandText strong{display:block;max-width:180px;font-size:11px;line-height:1.2}
.tenantBrandText span{display:none}
#nav .navItem{min-height:38px;height:38px;padding:5px 8px;font-size:10px;border-radius:10px}
#nav .navIcon{font-size:14px;line-height:16px}
@media(min-width:601px){
 #nav{grid-column:1/3;overflow:visible}
 #nav .navItem{flex:1 1 0;min-width:0}
 #nav .navItem>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:900px) and (min-width:601px){
 .sidebar{padding:6px 12px;gap:5px 12px}
 #nav{grid-column:1/-1;overflow-x:auto}
 #nav .navItem{min-width:54px;flex:1 1 0}
}
@media(max-width:600px){
 .sidebar{
  padding:5px 10px 6px;
  gap:4px;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto;
  z-index:1000
 }
 .sidebar .brand{
  display:flex!important;
  grid-column:1/-1;
  grid-row:1;
  min-height:32px;
  gap:7px;
  padding:0 0 4px
 }
 .brandKls img{width:26px;height:26px}
 .tenantBrand{
  flex:0 1 auto;
  max-width:220px;
  gap:6px;
  padding:3px 7px;
  border-radius:11px
 }
 .tenantBrand .brandMark{width:23px;height:23px;border-radius:7px}
 .tenantBrandText strong{font-size:10px;max-width:155px}
 #nav{
  grid-column:1/-1;
  grid-row:2;
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:1px;
  margin:0;
  padding:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent
 }
 #nav .navItem{
  position:relative;
  display:flex;
  flex:1 1 20%;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-width:0;
  min-height:34px;
  height:34px;
  padding:2px 1px;
  border:0;
  border-radius:0;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--muted);
  font-size:8px;
  line-height:1.1;
  text-align:center
 }
 #nav .navItem>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #nav .navIcon{font-size:12px;line-height:13px}
 #nav .navItem.active{color:var(--accent);border:0}
 #nav .navItem.active:after{
  position:absolute;
  right:20%;
  bottom:0;
  left:20%;
  height:2px;
  border-radius:2px;
  background:var(--accent);
  content:""
 }
 #nav .navMoreToggle{min-width:0!important;flex:1 1 20%!important}
 .navMoreMenu{
  position:absolute;
  z-index:1001;
  top:calc(100% - 2px);
  right:10px;
  width:min(340px,calc(100vw - 20px));
  max-height:min(68dvh,500px);
  border-radius:14px
 }
}

/* Restore compact branding over legacy Confiance theme visibility rules. */
.sidebar .brand{display:flex!important}
.sidebar .brand .brandKls{display:flex!important;visibility:visible!important}
.sidebar .brand .tenantBrand{display:flex!important;visibility:visible!important}
.sidebar .brand .tenantBrand .brandMark{width:26px;height:26px;border:0;border-radius:8px;background:var(--soft);overflow:hidden}
@media(max-width:600px){
 .sidebar .brand .brandKls img{width:26px;height:26px}
 .sidebar .brand .tenantBrand .brandMark{width:23px;height:23px;border-radius:7px}
 .sidebar .brand .tenantBrand{max-width:220px}
}

/* Dashboard polish and fit fixes based on the approved mobile reference. */
.sidebar .brand .tenantBrandText{display:block!important;visibility:visible!important;min-width:0}
.sidebar .brand .tenantBrandText strong{display:block!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboardHero{
 box-sizing:border-box;
 width:100%;
 min-width:0;
 overflow:hidden;
 position:relative;
 padding:22px;
 border-radius:22px;
 border:1px solid rgba(213,170,82,.25);
 background:radial-gradient(ellipse at 92% 22%,rgba(213,170,82,.16),transparent 36%),linear-gradient(115deg,#171717,#111214 66%,#21190d);
 color:#fff7e8;
 box-shadow:inset 3px 0 0 rgba(213,170,82,.8),0 14px 32px rgba(17,17,17,.16)
}
.dashboardHeroHeader{display:flex;align-items:center;gap:14px;min-width:0}
.dashboardHeroMark{
 display:grid;
 place-items:center;
 flex:0 0 54px;
 width:54px;
 height:54px;
 overflow:hidden;
 border:1px solid rgba(231,189,101,.5);
 border-radius:15px;
 background:linear-gradient(145deg,#332a18,#161616);
 color:#e7bd65;
 font-weight:800;
 font-size:19px
}
.dashboardHeroMark img{display:block;width:100%;height:100%;padding:4px;object-fit:contain}
.dashboardHeroText{min-width:0;flex:1 1 auto}
.dashboardHeroText h2{margin:0 0 5px;color:#fff7e8;font-size:clamp(18px,2vw,24px);line-height:1.18;overflow-wrap:anywhere}
.dashboardHeroText p{margin:0;color:#c8beaa;font-size:13px;line-height:1.45;max-width:100%;overflow-wrap:anywhere}
.dashboardHeroText p b{color:#e7bd65}
.dashboardKpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.dashboardKpis .kpi{box-sizing:border-box;min-width:0;padding:14px;border-radius:17px;background:linear-gradient(150deg,var(--panel),color-mix(in srgb,var(--panel) 90%,#f2e6ca));}
.dashboardKpis .kpiHead{display:flex;align-items:center;gap:8px;min-width:0}
.dashboardKpis .kpiIcon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--accent) 16%,var(--panel));color:var(--accent);font-size:12px;font-weight:800}
.dashboardKpis .label{min-width:0;overflow-wrap:anywhere}
.dashboardKpis .value{font-size:clamp(18px,2.2vw,25px);overflow-wrap:anywhere}
.dashboardKpis .foot{overflow-wrap:anywhere}
@media(max-width:600px){
 #nav{width:100%!important;min-width:0!important;max-width:100%;overflow:hidden}
 #nav .navItem{width:auto!important;min-width:0!important}
 #nav .navItem>span:last-child{font-size:9px;letter-spacing:-.1px}
 .main,#content,.content,.topbar{box-sizing:border-box;width:100%;max-width:100%;min-width:0}
 .topbar{align-items:center}
 .topbar>div:first-child{flex:1 1 180px;min-width:0}
 .topbar h1,#pageTitle{max-width:100%;font-size:clamp(18px,5.5vw,22px);line-height:1.2;overflow-wrap:anywhere}
 .topbar p,#pageSub{max-width:100%;white-space:normal;line-height:1.35;overflow-wrap:anywhere}
 .dashboardHero{padding:15px;border-radius:18px}
 .dashboardHeroHeader{gap:10px}
 .dashboardHeroMark{flex-basis:42px;width:42px;height:42px;border-radius:12px;font-size:16px}
 .dashboardHeroText h2{font-size:clamp(17px,5vw,20px)}
 .dashboardHeroText p{font-size:12px;line-height:1.4}
 .dashboardKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
 .dashboardKpis .kpi{padding:11px;border-radius:15px}
 .dashboardKpis .kpiHead{align-items:flex-start;gap:6px}
 .dashboardKpis .kpiIcon{flex-basis:25px;width:25px;height:25px;font-size:10px}
 .dashboardKpis .label{font-size:11px;line-height:1.2}
 .dashboardKpis .value{font-size:clamp(16px,4.8vw,20px);line-height:1.2}
 .dashboardKpis .foot{font-size:10px}
 .dashboardKpis .kpi:last-child:nth-child(odd){grid-column:1/-1}
}
@media(max-width:339px){
 .dashboardKpis{grid-template-columns:minmax(0,1fr)!important}
 .dashboardKpis .kpi:last-child:nth-child(odd){grid-column:auto}
}


/* Header labels stay readable on narrow screens; avoid ellipsis clipping. */
.sidebar .brand .tenantBrand{box-sizing:border-box;max-width:min(320px,calc(100vw - 72px))}
.sidebar .brand .tenantBrandText{display:block!important;visibility:visible!important;flex:1 1 auto;min-width:0;overflow:visible}
.sidebar .brand .tenantBrandText strong{display:block!important;max-width:100%;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
#nav .navItem>span:last-child{min-width:0;max-width:100%;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.2}
.brandLockNote{display:block;margin-top:7px;line-height:1.4}
@media(min-width:601px){
 #nav .navItem{height:auto;min-height:38px}
 #nav .navItem>span:last-child{font-size:clamp(10px,.8vw,12px)}
}
@media(max-width:600px){
 .sidebar .brand{min-height:36px}
 .sidebar .brand .brandKls img{width:28px;height:28px}
 .sidebar .brand .tenantBrand{flex:0 1 auto;max-width:calc(100vw - 68px);padding:3px 7px}
 .sidebar .brand .tenantBrandText strong{font-size:clamp(9px,2.7vw,11px);max-width:100%;white-space:normal}
 #nav{overflow:visible!important;min-height:36px}
 #nav .navItem{height:auto;min-height:36px;flex:1 1 20%;padding:3px 1px;gap:3px}
 #nav .navItem>span:last-child{font-size:clamp(8px,2.4vw,10px);letter-spacing:0;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
 #nav .navIcon{flex:none}
}

/* Keep one sticky navigation layer; page headings scroll without colliding. */
.sidebar{z-index:40!important}
body[data-theme^="confiance"] .sidebar{width:100%!important;max-width:100%;overflow:visible!important;border-right:0}
body[data-theme^="confiance"] .main{margin-left:0!important}
body[data-theme^="confiance"] .sidebar .brand{min-height:36px;padding:0 0 4px;margin-bottom:0}
.main>.topbar{position:relative;top:auto;z-index:auto}
.toast{z-index:1200}
body.modalOpen #esteticapro-install-pwa,
body:has(.permissionOverlay424:not(.hidden)) #esteticapro-install-pwa{display:none!important}
.permissionDialog424{display:flex;flex-direction:column;overflow:hidden}
.permissionDialog424>.modalHead,.permissionDialog424>.modalFoot{flex:0 0 auto}
.permissionDialog424>.permissionGrid424{flex:1 1 auto;min-height:0;overflow:auto;align-content:start}


.svcSearchResults{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;padding:4px;background:var(--panel);overscroll-behavior:contain}
.svcSearchOption{display:flex!important;flex-direction:column;gap:4px;width:100%;min-height:52px;text-align:left;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.svcSearchOption:hover,.svcSearchOption:focus-visible{background:rgba(214,170,76,.14);outline:2px solid var(--accent);outline-offset:-2px}
.svcSearchOption span{font-size:12px;color:var(--muted)}


/* Compact operational/commercial lists: actions share the available desktop width. */
.documentList{width:100%;min-width:0}
.documentListHead,.documentListRow{display:grid;grid-template-columns:105px minmax(0,1fr) minmax(0,1.1fr) 110px 190px;gap:12px;align-items:start}
.documentListHead{padding:9px 10px;color:var(--muted);font-size:11px;border-bottom:1px solid var(--line)}
.documentListRow{padding:12px 10px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.4}
.documentListRow>div{min-width:0;overflow-wrap:anywhere}
.docListLine,.docListStatus{display:block;margin-top:4px}
.docListLine small{display:block;color:var(--muted);font-size:10px}
.docListStatus{font-size:11px;color:var(--muted)}
.docListActions{display:flex;flex-wrap:wrap;gap:5px;align-content:start}
.docListActions .smallBtn{min-width:0;min-height:30px;margin:0;padding:5px 8px;white-space:normal;font-size:11px}
@media(max-width:1000px){.documentListHead,.documentListRow{grid-template-columns:85px minmax(0,1fr) minmax(0,1fr) 95px 155px;gap:9px}}
@media(max-width:760px){.documentListHead{display:none}.documentListRow{grid-template-columns:1fr 1fr;gap:10px;padding:14px 0}.docListServices,.docListActions{grid-column:1/-1}.docListActions .smallBtn{min-height:40px;padding:8px 11px;font-size:12px}}

.releaseConfirmDialog{box-sizing:border-box;width:calc(100% - 32px);max-width:440px;max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:0;border:1px solid #aa8748;border-radius:20px;background:#171818;color:#f5efe2;box-shadow:0 24px 80px #0009}.releaseConfirmDialog::backdrop{background:#0009;backdrop-filter:blur(3px)}.releaseConfirmContent{padding:24px}.releaseConfirmContent h3{margin:0 0 12px;font-size:21px;line-height:1.3}.releaseConfirmContent p{margin:0 0 18px;line-height:1.55;overflow-wrap:anywhere}.releaseConfirmVehicle{font-weight:600;color:#edc66f}.releaseConfirmActions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.releaseConfirmActions button{min-height:44px;white-space:normal;flex:1 1 140px}

/* Bound catalog columns so long imported codes cannot displace every service. */
.table[data-table="servicos"]{table-layout:fixed;width:100%;min-width:0}
.table[data-table="servicos"] th,.table[data-table="servicos"] td{white-space:normal;overflow-wrap:anywhere;vertical-align:middle}
.table[data-table="servicos"] .serviceCellText{display:block;min-width:0;overflow-wrap:anywhere;line-height:1.45}
.table[data-table="servicos"] td:first-child .serviceCellText{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.table[data-table="servicos"] .rowActions{flex-wrap:wrap;gap:6px}
.table[data-table="servicos"] .smallBtn{white-space:normal;min-width:0}
.serviceCatalogHeading{margin:0 0 12px;font-size:15px}
[data-service-catalog]{max-width:100%;min-width:0}
@media(max-width:1100px){
 [data-service-catalog]{margin:0;padding:0;overflow:visible!important;border:0!important}
 .table[data-table="servicos"],.table[data-table="servicos"] tbody{display:block;width:100%;min-width:0}
 .table[data-table="servicos"] colgroup,.table[data-table="servicos"] thead{display:none}
 .table[data-table="servicos"] tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}
 .table[data-table="servicos"] td{display:block;min-width:0;width:auto;padding:10px!important;font-size:12px!important}
 .table[data-table="servicos"] td:before{content:attr(data-label);display:block;font-size:10px;font-weight:600;color:var(--muted);margin-bottom:4px}
 .table[data-table="servicos"] td:nth-child(2),.table[data-table="servicos"] td:last-child{grid-column:1/-1}
 .table[data-table="servicos"] td:nth-child(2){grid-row:1;font-size:15px!important;font-weight:600}
 .table[data-table="servicos"] td:last-child .rowActions{justify-content:flex-start}
 .table[data-table="servicos"] .smallBtn{min-height:40px;padding:8px 14px}
}

/* Theme-aware confirmations and mobile notifications. */
.releaseConfirmDialog{background:var(--panel);color:var(--text);border-color:var(--accent)}
.releaseConfirmVehicle{color:var(--accent)}
.releaseConfirmDialog .releaseConfirmContent h3{color:var(--text)}
.releaseConfirmActions .primary{background:var(--accent);color:#191308;box-shadow:none}
.releaseConfirmActions .secondary{background:var(--panel-2,var(--panel));color:var(--text);border:1px solid var(--line)}
.toast{position:fixed;inset:auto;top:max(16px,env(safe-area-inset-top));right:16px;bottom:auto;left:auto;transform:none;margin:0;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px;width:min(420px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);overflow:auto;box-sizing:border-box;padding:16px 12px 16px 18px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:16px;background:var(--panel);color:var(--text);box-shadow:0 18px 60px #0005;font-size:15px;line-height:1.5;z-index:1200;text-align:left}
.toastMessage{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}
.toast .toastClose{display:grid;place-items:center;width:44px;min-height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--panel-2,var(--panel));color:var(--accent);font-size:26px;line-height:1;cursor:pointer}
.toastClose:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:600px){.toast{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:calc(100vw - 32px);max-height:calc(100dvh - 64px);padding:18px 12px 18px 18px}.releaseConfirmContent{padding:20px}.releaseConfirmContent h3{font-size:20px}}

/* Two compact rounded surfaces; the shared sticky wrapper never clips menus. */
#app{display:flow-root}
body[data-theme^="confiance"] .sidebar,.sidebar{
 --header-surface:var(--panel);
 --header-label:var(--muted);
 top:max(8px,env(safe-area-inset-top));
 width:calc(100% - 12px)!important;
 max-width:calc(100% - 12px);
 margin:8px 6px 0;
 padding:0;
 border:0;
 border-radius:0;
 background:transparent;
 box-shadow:none;
 overflow:visible!important;
 grid-template-columns:minmax(0,1fr);
 gap:5px
}
body[data-theme="confiance"] .sidebar{--header-surface:linear-gradient(180deg,#070707,#101011);--header-label:#bcb6aa}
body[data-theme="confiance-light"] .sidebar{--header-surface:linear-gradient(180deg,#2a2a2b,#202022);--header-label:#c4bfb3}
body[data-theme^="confiance"] .sidebar>.brand,.sidebar>.brand,
.sidebar>#nav{
 grid-column:1/-1;
 width:100%;
 min-width:0;
 margin:0;
 border:1px solid var(--line);
 border-radius:16px;
 background:var(--header-surface);
 box-shadow:0 3px 12px rgba(0,0,0,.06);
 overflow:visible
}
body[data-theme^="confiance"] .sidebar>.brand,.sidebar>.brand{padding:6px 12px}
.sidebar>#nav{padding:5px 8px;overflow:visible!important}
.sidebar .sideBottom{display:none}
.sidebar .tenantBrand{min-width:0}
.sidebar #nav .navItem{min-width:0;height:auto;color:var(--header-label)}
.sidebar #nav .navItem.active{color:var(--accent)}
.sidebar>.navMoreMenu{top:calc(100% + 5px)}
.sidebar button[aria-busy="true"],button[aria-busy="true"]{opacity:.65;cursor:progress}
@media(max-width:600px){
 body[data-theme^="confiance"] .sidebar>.brand,.sidebar>.brand{padding:5px 8px;border-radius:14px}
 .sidebar>#nav{padding:4px 5px;border-radius:14px}
 .sidebar #nav .navMoreToggle{color:var(--header-label)!important}
 .sidebar .brand .tenantBrand{max-width:calc(100vw - 78px)}
}

/* Categorized navigation using existing theme colors. */
.sidebar>.navMoreMenu{display:block;right:0;width:min(420px,calc(100vw - 12px));max-width:100%;max-height:min(68dvh,calc(100dvh - 160px),600px);overflow:auto;padding:14px;border-radius:20px;background:var(--panel);overscroll-behavior:contain;scrollbar-width:thin}
.navMoreHeading{padding:2px 2px 8px}.navMoreHeading>strong{display:block;font-size:18px;line-height:1.3;color:var(--text)}.navMoreHeading>small{display:block;margin-top:4px;font-size:12px;color:var(--muted)}
.navMoreGroup{display:grid;gap:7px}.navMoreGroup h3{margin:12px 2px 2px;font-size:11px;line-height:1.4;text-transform:uppercase;color:var(--accent);font-weight:600}
.sidebar>.navMoreMenu .navMoreItem{display:flex;align-items:center;gap:10px;min-width:0;width:100%;min-height:64px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2,var(--soft));color:var(--text);text-align:left}
.sidebar>.navMoreMenu .navIcon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:var(--soft);color:var(--accent);font-size:20px}
.navMoreText{min-width:0;flex:1}.navMoreText strong{display:block;font-size:13px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}.navMoreText small{display:block;margin-top:3px;font-size:11px;line-height:1.35;color:var(--muted);overflow-wrap:anywhere}.navMoreArrow{flex:none;color:var(--muted);font-size:23px}
.sidebar>.navMoreMenu .navMoreItem:hover,.sidebar>.navMoreMenu .navMoreItem.active{border-color:var(--accent);background:var(--soft)}
.sidebar>.navMoreMenu .navMoreItem:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.sidebar #nav .navIcon{display:grid;place-items:center;width:20px;height:20px;font-size:19px;line-height:1}
.sidebar #nav .navItem{border-radius:13px}
button:is(.primary,.secondary,.smallBtn,.ghost){border-radius:13px}
button:is(.primary,.secondary,.smallBtn,.ghost):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#backupSection438{scroll-margin-top:160px}
@media(max-width:600px){
 .sidebar>.navMoreMenu{width:100%;padding:12px;border-radius:18px}
 .sidebar #nav .navItem.active{background:color-mix(in srgb,currentColor 10%,transparent)!important}
 .sidebar #nav .navItem.active:after{display:none}
 .sidebar #nav .navItem{padding:5px 2px;gap:4px;min-height:44px}
}

/* Account identity in the brand row, above the navigation tabs. */
.sidebar>.brand{flex-wrap:nowrap}
.sidebar .userChip424{display:block;position:relative;flex:0 0 auto;margin-left:auto;padding:0;align-self:center;min-width:0}
.userAccountToggle439{display:flex;align-items:center;gap:9px;min-height:42px;padding:2px 4px;border:0;border-radius:14px;background:transparent;color:var(--header-label,var(--text));text-align:left}
.userAvatar439{display:grid!important;place-items:center;flex:0 0 36px;width:36px;height:36px;margin:0!important;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--accent)!important;font-size:12px!important;font-weight:600;line-height:1}
.userAccountText439{display:block!important;min-width:0;margin:0!important;text-align:left}
.userAccountText439 strong{display:block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;color:var(--header-label,var(--text))}
.userAccountText439 small{display:block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;line-height:1.35;color:var(--header-label,var(--muted))}
.userAccountChevron439{flex:none;transition:transform .15s ease}
.userAccountToggle439[aria-expanded="true"] .userAccountChevron439{transform:rotate(180deg)}
.userAccountToggle439:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.userAccountMenu439{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:220px;max-width:calc(100vw - 32px);padding:7px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);box-shadow:var(--shadow)}
.userAccountSummary439{padding:8px 9px 10px;border-bottom:1px solid var(--line);margin-bottom:4px;overflow-wrap:anywhere}
.userAccountSummary439 strong{display:block;font-size:13px}.userAccountSummary439 small{display:block;margin-top:3px;font-size:11px;color:var(--muted)}
.userAccountMenu439 button{display:block;width:100%;min-height:42px;padding:9px;border-radius:9px;background:transparent;color:var(--text);text-align:left;font-size:12px}
.userAccountMenu439 button:hover,.userAccountMenu439 button:focus-visible{background:var(--soft);outline:1px solid var(--accent);outline-offset:-1px}
@media(max-width:760px){.sidebar .userAccountToggle439{gap:6px}.sidebar .userAccountText439 strong,.sidebar .userAccountText439 small{max-width:100px}.sidebar .userAvatar439{width:32px;height:32px;flex-basis:32px}}
@media(max-width:600px){
 .sidebar>.brand{display:grid!important;grid-template-columns:26px minmax(0,1fr) 118px;align-items:center;gap:6px;flex-wrap:nowrap}
 .sidebar .brand .brandKls img{width:26px;height:26px}
 .sidebar .brand .tenantBrand{width:100%;max-width:100%;min-width:0;padding:3px 5px;gap:5px}
 .sidebar .brand .tenantBrandText strong{font-size:10px;line-height:1.25}
 .sidebar .brand .tenantBrand .brandMark{width:22px;height:22px;flex:none}
 .sidebar .brand>#userChip424:not(.hidden){display:block;width:100%;min-width:0;margin:0;padding:0;border:0}
 .sidebar .userAccountToggle439{width:100%;min-width:0;min-height:44px;padding:2px 0;gap:4px}
 .sidebar .userAvatar439{width:26px;height:26px;flex-basis:26px;font-size:10px!important}
 .sidebar .userAccountText439{display:block!important;flex:1;min-width:0}
 .sidebar .userAccountText439 strong,.sidebar .userAccountText439 small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .sidebar .userAccountText439 strong{font-size:10px}
 .sidebar .userAccountText439 small{font-size:8px}
 .sidebar .userAccountChevron439{width:10px}
}
@media(max-width:359px){
 .sidebar>.brand{grid-template-columns:24px minmax(0,1fr) 104px;gap:5px}
 .sidebar .brand .tenantBrandText strong{font-size:9px}
 .sidebar .userAccountText439 strong{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.userAccountChevron439{transition:none}}

/* Account blocks must survive legacy compact-sidebar visibility selectors. */
.sidebar .brand>#userChip424:not(.hidden){display:block}
#userChip424 #userAccountMenu439:not(.hidden),#userChip424 .userAccountSummary439{display:block}


/* Refine tenant identity without changing the theme palette or header structure. */
.sidebar .brand .tenantBrand{
 border:1px solid var(--line);border-radius:14px;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
 align-items:center
}
.sidebar .brand .tenantBrand .brandMark{
 border:1px solid var(--line);background:var(--panel-2,var(--panel));border-radius:8px
}
.sidebar .brand .tenantBrand .brandMark img{padding:1px;object-fit:contain}
.sidebar .brand .tenantBrandText strong{font-weight:650;letter-spacing:-.015em}
@media(max-width:600px){
 .sidebar .brand .tenantBrand{border-radius:11px;min-height:36px}
 .sidebar .brand .tenantBrandText strong{line-height:1.3}
}

.purchaseBell440{position:relative;display:grid;place-items:center;flex:none;min-width:30px;min-height:40px;padding:2px;background:transparent;color:var(--header-label,var(--text));border-radius:10px;margin-left:auto}
.purchaseBellCount440{position:absolute;right:-3px;top:0;background:var(--accent);color:var(--panel);border-radius:20px;min-width:15px;padding:1px 3px;font-size:9px!important;line-height:1.3}
.purchaseRequestsPanel440{margin-bottom:16px;scroll-margin-top:160px}.purchaseRequestsPanel440 .sectionHead{flex-wrap:wrap;gap:10px}.purchaseRow440{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.purchaseRow440>div{min-width:0;overflow-wrap:anywhere}.purchaseRow440 .toolbar{align-content:start;flex-shrink:0}.purchaseRow440 p{margin:5px 0;font-size:12px}.purchaseRow440 small{font-size:11px}
@media(max-width:600px){.sidebar>.brand{grid-template-columns:26px minmax(0,1fr) 24px 104px;gap:5px}.sidebar .userChip424{margin-left:0}.purchaseBell440{min-width:24px;grid-column:3}.sidebar .brand>#userChip424:not(.hidden){grid-column:4}.purchaseRow440{flex-direction:column}.purchaseRow440 .toolbar{flex-shrink:1}}
@media(max-width:359px){.sidebar>.brand{grid-template-columns:24px minmax(0,1fr) 22px 96px;gap:4px}}

/* Yard cards: clearer hierarchy and feedback, preserving workflow controls. */
.patioGrid{align-items:stretch;gap:14px}
.patioCard{border-radius:18px;min-width:0;padding:16px;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease}
.patioCard:hover,.patioCard:focus-within{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.15)}
.patioCard .patioCardTop{align-items:center;gap:10px}
.patioCard .patioVehicle{gap:10px;align-items:center;margin:14px 0}
.patioCard .vehicleIcon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:var(--soft);color:var(--accent);font-size:26px}
.patioCard .patioVehicle>div:last-child{min-width:0;overflow-wrap:anywhere}
.patioCard .patioVehicle b{font-size:17px;line-height:1.3}
.patioCard .patioVehicle .muted{margin-top:4px;font-size:12px;line-height:1.4;white-space:normal}
.patioCard .patioService{padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.patioCard .patioMeta{font-size:11px;line-height:1.5;margin-top:7px;overflow-wrap:anywhere}
.patioCard .checkMini{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}
.patioCard .patioActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%}
.patioCard .patioActions .smallBtn{min-width:0;min-height:42px;white-space:normal;line-height:1.3;padding:9px 7px;border-radius:11px}
.patioCard .patioActions .primaryBtn,.patioCard .patioActions .successBtn{grid-column:1/-1;font-weight:600}
.patioCard button:active{transform:scale(.98)}
.patioCard button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(hover:none){.patioCard:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.patioCard{transition:none}.patioCard:hover,.patioCard:focus-within,.patioCard button:active{transform:none}}


/* Compact operational summary; theme tokens preserve both current palettes. */
.dashboardVehicles442{margin-top:16px;min-width:0}
.dashboardVehicles442 .sectionHead{gap:12px;align-items:center}
.dashboardVehicles442 .sectionHead h3{line-height:1.4;overflow-wrap:anywhere}
.dashboardVehicles442 .sectionHead>button{flex-shrink:0;color:var(--accent)}
.dashboardVehicleList442{display:grid;gap:10px}
.dashboardVehicle442{width:100%;min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--soft);color:var(--text);text-align:left}
.dashboardVehicleIcon442 svg{width:26px;height:26px;color:var(--muted)}
.dashboardVehicleInfo442{min-width:0;display:grid;gap:5px}
.dashboardVehicleInfo442 strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.dashboardVehicleInfo442 small{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.dashboardVehicleStatus442{display:inline-flex;align-items:center;gap:7px;font-size:12px;line-height:1.4}
.dashboardVehicleStatus442 i{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}
.dashboardVehicleStatus442.waiting{color:#bc8d2d}
.dashboardVehicleStatus442.running{color:#2581b5}.dashboardVehicleStatus442.ready{color:#16866c}
@media(max-width:420px){.dashboardVehicle442{gap:9px;padding:12px;grid-template-columns:24px minmax(0,1fr)}.dashboardVehicleStatus442{grid-column:2}.dashboardVehicleInfo442 strong{font-size:14px}}
/* Brief feedback only: no extra network work or artificial loading delay. */
.sidebar button,.primary,.secondary,.smallBtn,.ghost,.dashboardVehicle442{transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease}
.dashboardVehicle442:hover{border-color:var(--accent)}
.dashboardVehicle442:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.dashboardVehicle442:active,.primary:active,.secondary:active,.smallBtn:active{transform:scale(.985)}
.navMoreMenu:not(.hidden),#userAccountMenu439:not(.hidden),dialog[open]{animation:panelEnter442 180ms ease-out}
@keyframes panelEnter442{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.sidebar button,.primary,.secondary,.smallBtn,.ghost,.dashboardVehicle442{transition:none!important;transform:none!important}.navMoreMenu,#userAccountMenu439,dialog[open]{animation:none!important}}


/* Operational yard: scoped layout, existing theme colors. */
.patioBoardView [hidden]{display:none!important}.patioBoard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.patioLane{min-width:0;border:1px solid var(--border,#a78b5538);border-radius:18px;padding:14px;background:var(--panel,transparent)}.patioLane .patioCard{min-width:0;margin-bottom:12px;border-radius:16px;padding:16px;overflow-wrap:anywhere}.patioLane .patioVehicle b{font-size:17px}.patioLane .patioActions{display:flex;flex-wrap:wrap;gap:7px}.patioLane .patioActions button{white-space:normal;max-width:100%}.patioLane .patioSectionHead h3{font-size:15px}.patioBoardToolbar{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.patioBoardToolbar>.input{flex:1;min-width:180px}.patioBoardFilters{display:flex;flex-wrap:wrap;gap:6px}.patioBoardFilters [aria-pressed=true]{outline:1px solid #b99358;color:#b99358}.patioDelivered{margin-top:14px}.patioDelivered .patioLane{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.patioDelivered .patioSectionHead{grid-column:1/-1}.patioBoardView .patioKpis{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:900px){.patioBoard,.patioDelivered .patioLane{grid-template-columns:1fr}.patioBoardView .patioKpis{grid-template-columns:repeat(2,minmax(0,1fr))}.patioBoardToolbar{display:block}.patioBoardFilters{margin-top:10px}.patioBoardToolbar>.input{width:100%}.patioLane{padding:10px}}
