*{box-sizing:border-box}html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{width:100%;max-width:100%;overflow-x:hidden}
:root{--primary:#111827;--accent:#3563e9;--bg:#f5f7fa;--card:#fff;--text:#17202a;--muted:#6b7280;--border:#dfe4ea;--danger:#dc2626;--success:#16a34a}
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.hidden{display:none!important}
button{font:inherit;cursor:pointer}
label{display:block;font-size:13px;font-weight:700;margin:12px 0}
input,select,textarea{width:100%;max-width:100%;margin-top:6px;padding:11px 12px;border:1px solid #ccd2da;border-radius:9px;background:#fff;font:inherit;font-size:16px;line-height:1.25}
.primary{background:var(--accent);color:#fff;border:0;border-radius:10px;min-height:44px;padding:0 16px;font-weight:750}
.secondary{background:#fff;color:var(--text);border:1px solid var(--border);border-radius:10px;min-height:42px;padding:0 14px;font-weight:700}
.compact{min-width:42px;padding:0}
.wide{width:100%}

.login-screen{min-height:100vh;display:grid;place-items:center;padding:20px}
.login-box{width:min(92vw,410px);background:#fff;border:1px solid var(--border);border-radius:18px;padding:28px;box-shadow:0 18px 55px #00000014}
.login-box h1{margin:15px 0 4px}.login-box p{margin:0 0 20px;color:var(--muted)}.login-box small{display:block;margin-top:14px;color:var(--muted);text-align:center}

.brand-logo{width:150px;height:72px;border-radius:14px;background:#fff;border:1px solid var(--border);display:grid;place-items:center;overflow:hidden;color:var(--primary);font-weight:900}
.brand-logo.small{width:92px;height:54px;border:0}
.brand-logo img{width:100%;height:100%;object-fit:contain;display:block}
.brand-logo span{font-size:22px}

.sidebar{position:fixed;inset:0 auto 0 0;width:255px;background:var(--primary);color:#fff;padding:18px 14px;display:flex;flex-direction:column;z-index:20}
.side-brand{display:flex;align-items:center;gap:12px;padding:4px 5px 22px}
.side-brand-text{min-width:0}.side-brand-text strong{display:block;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-brand-text small{color:#aeb8c7}
nav{display:grid;gap:5px}
.nav-item{width:100%;display:grid;grid-template-columns:34px 1fr;align-items:center;column-gap:10px;border:0;background:transparent;color:#dbe2eb;text-align:left;padding:12px 14px;border-radius:10px;font-weight:700;font-size:15px}
.nav-item:hover,.nav-item.active{background:#ffffff18;color:#fff}
.nav-icon{width:34px;height:24px;display:flex;align-items:center;justify-content:center;font-size:17px;line-height:1;flex:0 0 34px}
.logout{margin-top:auto;border:1px solid #ffffff28;background:transparent;color:#dbe2eb;border-radius:10px;padding:11px}

.mobile-head{display:none}
.content{margin-left:255px;padding:26px;max-width:1320px}
.page-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.page-title h1{margin:0;font-size:26px}.page-title p{margin:4px 0 0;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px}
.metric-label{color:var(--muted);font-size:13px}.metric{font-size:28px;font-weight:850;margin-top:5px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.segmented{display:flex;background:#e9edf3;border-radius:10px;padding:3px;margin-left:auto}
.segmented button{border:0;background:transparent;border-radius:8px;padding:8px 15px;font-weight:800;color:#667085}
.segmented button.active{background:#fff;color:var(--text);box-shadow:0 1px 5px #0001}

.agenda{display:grid;gap:8px}
.slot{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.slot-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px}
.slot-head.clickable{cursor:pointer}.slot-head.clickable:hover{background:#f9fafb}
.slot-count{font-size:12px;color:var(--muted)}
.booking{border-top:1px solid #edf0f3;padding:11px 14px;display:flex;gap:10px;align-items:center}
.booking.cancelled{opacity:.43}.booking-main{flex:1;min-width:0}.booking-name{font-weight:800}.booking-meta{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.booking-status{font-size:21px}.actions{display:flex;gap:6px;flex-wrap:wrap}
.mini{background:#fff;border:1px solid var(--border);border-radius:8px;padding:7px 9px;font-size:12px}.green{color:var(--success)}.red{color:var(--danger)}
.empty{padding:28px;text-align:center;color:var(--muted);background:#fff;border:1px dashed #cbd2da;border-radius:12px}

.week-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:10px;overflow-x:auto;padding-bottom:5px}
.week-day{background:#fff;border:1px solid var(--border);border-radius:13px;min-height:230px;padding:12px;cursor:pointer}
.week-day:hover{border-color:#bfc8d4}.week-day.today{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent)}
.week-day-head{border-bottom:1px solid #edf0f3;padding-bottom:9px;margin-bottom:9px}.week-day-name{font-size:12px;text-transform:uppercase;color:var(--muted);font-weight:800}.week-day-date{font-size:20px;font-weight:850;margin-top:2px}
.week-item{padding:7px 0;border-bottom:1px solid #f0f2f5}.week-item:last-child{border-bottom:0}.week-time{font-size:11px;color:var(--accent);font-weight:850}.week-client{font-size:13px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-more{margin-top:8px;color:var(--muted);font-size:12px;font-weight:700}

.table-wrap{overflow:auto;background:#fff;border:1px solid var(--border);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:560px}th,td{text-align:left;padding:12px;border-bottom:1px solid #edf0f3;font-size:13px}th{color:var(--muted);font-size:12px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{grid-column:1/-1}
.theme-row{display:flex;gap:10px;flex-wrap:wrap}.theme{width:110px;height:65px;border:3px solid transparent;border-radius:10px}.theme.selected{border-color:var(--accent)}.theme.blue{background:linear-gradient(135deg,#111827 50%,#3563e9 50%)}.theme.green{background:linear-gradient(135deg,#12301f 50%,#16a34a 50%)}.theme.orange{background:linear-gradient(135deg,#24180e 50%,#ea580c 50%)}

.calendar-dialog{border:0;border-radius:16px;padding:0;width:min(94vw,420px);box-shadow:0 20px 60px #0004}.calendar-dialog::backdrop{background:#0007}.calendar-box{padding:18px}
.calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:13px}.calendar-head strong{text-align:center;text-transform:capitalize}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{text-align:center;font-size:10px;color:var(--muted);font-weight:800}
.cal-day{aspect-ratio:1;border:0;background:#f4f6f8;border-radius:9px;font-weight:750;color:var(--text)}.cal-day.other{opacity:.35}.cal-day.selected{background:var(--accent);color:#fff}.cal-day.today:not(.selected){outline:2px solid var(--accent);background:#fff}

.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#111827;color:#fff;padding:10px 15px;border-radius:9px;opacity:0;transition:.2s;z-index:60}.toast.show{opacity:1}

@media(max-width:700px){
  .sidebar{transform:translateX(-100%);transition:.2s;width:min(84vw,310px)}
  .sidebar.open{transform:translateX(0)}
  .content{margin-left:0;padding:70px 12px 20px}
  .mobile-head{display:flex;position:fixed;top:0;left:0;right:0;height:56px;background:var(--primary);color:#fff;z-index:15;align-items:center;gap:12px;padding:0 13px}
  .mobile-head button{border:0;background:transparent;color:#fff;font-size:22px}
  .grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}
  .page-title h1{font-size:22px}
  .segmented{margin-left:0}
  .week-grid{grid-template-columns:repeat(7,180px)}
  .side-brand .brand-logo.small{width:110px;height:58px}
}

/* Ajustes mobile/iPhone */
.content,.card,.agenda,.slot,.booking,.toolbar,.page-title{min-width:0}
.field-help{display:block;margin-top:5px;color:var(--muted);font-size:11px;font-weight:500}
@media(max-width:700px){
  html,body,.app{width:100%;max-width:100%;overflow-x:hidden}
  .content{width:100%;max-width:100%;padding-left:10px;padding-right:10px;overflow-x:hidden}
  .sidebar{width:min(82vw,300px);max-width:300px}
  input,select,textarea{font-size:16px!important}
  .grid,.form-grid,.card,.agenda,.slot,.booking,.page-title,.toolbar{width:100%;max-width:100%}
  .week-grid{max-width:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
}

.autocomplete{position:relative}
.suggestions{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:50;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 14px 34px #00000020;max-height:240px;overflow:auto}
.suggestions.hidden{display:none!important}
.suggestion-item{width:100%;border:0;background:#fff;text-align:left;padding:10px 12px;border-bottom:1px solid #edf0f3}
.suggestion-item:last-child{border-bottom:0}.suggestion-item:hover,.suggestion-item:active{background:#f6f8fb}
.suggestion-item strong{display:block;font-size:14px;color:var(--text)}.suggestion-item small{display:block;margin-top:2px;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payment-dialog{border:0;border-radius:16px;padding:0;width:min(92vw,430px);box-shadow:0 22px 70px #0005}.payment-dialog::backdrop{background:#0007}.payment-box{padding:20px}
.payment-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:14px}.payment-head h2{margin:0;font-size:20px}.payment-head p{margin:5px 0 0;color:var(--muted);font-size:13px}
.close-btn{border:0;background:transparent;font-size:26px;line-height:1;color:var(--text)}.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.payment-option{min-height:58px;border:1px solid var(--border);background:#fff;border-radius:12px;font-weight:800;font-size:15px}.payment-option:hover,.payment-option:active{border-color:var(--accent);background:#f8faff}
.account-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.account-mini{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px}.account-mini .label{font-size:12px;color:var(--muted);font-weight:700}.account-mini .value{font-size:20px;font-weight:850;margin-top:4px}
.service-ranking{display:grid;gap:8px}.rank-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0f3}.rank-row:last-child{border-bottom:0}.rank-name{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-meta{font-size:12px;color:var(--muted);margin-top:2px}.rank-total{font-weight:850}
@media(max-width:700px){.account-grid{grid-template-columns:1fr 1fr}}


/* V2 Revisada 3 */
.danger-btn{background:#fff;color:var(--danger);border:1px solid #fecaca;border-radius:9px;min-height:42px;padding:0 14px;font-weight:750}
.form-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.form-actions .primary{flex:1;min-width:180px}
.entity-list{display:grid;gap:8px}
.entity-row{background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:10px}
.entity-main{flex:1;min-width:0}.entity-title{font-weight:800}.entity-meta{font-size:12px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.entity-actions{display:flex;gap:6px;flex-wrap:wrap}
.workers-dialog{border:0;border-radius:16px;padding:0;width:min(92vw,460px);box-shadow:0 22px 70px #0005}
.workers-dialog::backdrop{background:#0007}.workers-box{padding:20px}.workers-checklist{display:grid;gap:8px;max-height:55vh;overflow:auto}
.worker-choice{display:flex;align-items:center;gap:11px;border:1px solid var(--border);border-radius:11px;padding:11px 12px;background:#fff}
.worker-choice input{width:20px;height:20px;margin:0;flex:0 0 auto}.worker-choice-main{flex:1}.worker-choice-main strong{display:block}.worker-choice-main small{color:var(--muted)}
.day-workers{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px 12px;margin-bottom:10px}
.day-workers .worker-tags{display:flex;gap:5px;flex-wrap:wrap;flex:1}.worker-tag{font-size:11px;background:#eef2f7;border-radius:999px;padding:5px 8px;font-weight:700;color:#4b5563}
.account-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.finance-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px}.finance-card .label{font-size:12px;color:var(--muted);font-weight:700}.finance-card .big{font-size:21px;font-weight:850;margin-top:4px}.finance-card .sub{font-size:11px;color:var(--muted);margin-top:4px}
.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px}.section-title h3{margin:0}
.negative{color:var(--danger)}.positive{color:var(--success)}
.notice{font-size:12px;color:var(--muted);background:#f8fafc;border:1px solid var(--border);padding:10px 12px;border-radius:10px;margin-top:10px}
@media(max-width:900px){.account-summary{grid-template-columns:1fr 1fr}}
@media(max-width:700px){
  .entity-row{align-items:flex-start;flex-direction:column}.entity-actions{width:100%}.entity-actions .mini{flex:1}
  .account-summary{grid-template-columns:1fr 1fr}
}

/* V4 - refinamentos */
.menu-close{display:none;position:absolute;right:10px;top:10px;width:38px;height:38px;border:0;background:transparent;color:#fff;font-size:30px;line-height:1;z-index:2}
.menu-backdrop{display:none}
.home-page{max-width:980px;margin:0 auto;text-align:center}.home-heading h1{margin:0;font-size:28px}.home-heading p{margin:6px 0 20px;color:var(--muted)}.home-logo{width:min(72vw,420px);height:130px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center}.home-logo img{max-width:100%;max-height:100%;object-fit:contain}.home-grid .card{text-align:left}
.settings-logo-preview{width:min(100%,420px);height:120px;border:1px dashed var(--border);border-radius:12px;display:flex;align-items:center;justify-content:center;margin:8px 0 18px;color:var(--muted);overflow:hidden;background:#fafbfc}.settings-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}
.theme.wine{background:linear-gradient(135deg,#2a1419 50%,#a9485d 50%)}.theme.gold{background:linear-gradient(135deg,#262015 50%,#b08a35 50%)}.theme.graphite{background:linear-gradient(135deg,#181a1d 50%,#69707a 50%)}
.vehicle-choices,.freight-options{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.vehicle-choice,.freight-option{border:1px solid var(--border);background:#fff;border-radius:9px;padding:7px 10px;font-size:12px;font-weight:750}.vehicle-choice.selected,.freight-option.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);color:var(--accent)}.field-label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.freight-wrap{padding:10px 0 2px}
.client-vehicles{display:grid;gap:8px}.client-vehicle-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.client-vehicle-row input[name="vehicleName"]{margin:0}.primary-vehicle{display:flex;align-items:center;gap:5px;margin:0;white-space:nowrap}.primary-vehicle input{width:18px;height:18px;margin:0}
.account-period{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px 12px;margin-bottom:14px}.account-period strong{flex:1;min-width:180px;text-align:center;text-transform:capitalize}.account-period input{width:auto;min-width:145px;margin:0}
.secondary.active{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
@media(max-width:700px){
  .menu-close{display:block}.menu-backdrop{display:block;position:fixed;inset:0;background:#0006;opacity:0;pointer-events:none;transition:.2s;z-index:19}.menu-backdrop.show{opacity:1;pointer-events:auto}
  .sidebar{padding-top:18px}.side-brand{padding-right:38px}.home-page{padding-top:4px}.home-heading h1{font-size:25px}.home-grid .card{text-align:center}.home-logo{height:110px}
  .client-vehicle-row{grid-template-columns:1fr}.primary-vehicle{justify-content:flex-start}.account-period strong{order:-1;flex-basis:100%}.account-period input{width:100%}
}


/* V5 - ajustes solicitados */
.login-box > .brand-logo{
  margin-left:auto;
  margin-right:auto;
  border:0;
  background:transparent;
  border-radius:0;
}
.login-box > .brand-logo img{object-fit:contain}

.account-period.compact-period{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 46px;
  gap:8px;
  align-items:center;
  padding:10px 12px;
}
.account-period.compact-period input{
  width:100%;
  min-width:0;
  margin:0;
  text-align:center;
}

.booking-name-button{
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  color:var(--text);
  font-weight:800;
  text-align:left;
}
.booking-name-button:hover,.booking-name-button:active{text-decoration:underline}
.multi-service-booking{box-shadow:inset 3px 0 0 var(--accent)}
.multi-service-badge{
  display:inline-block;
  padding:2px 6px;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 12%,white);
  color:var(--accent);
  font-size:10px;
  font-weight:850;
  vertical-align:1px;
}

.services-editor{margin-top:4px}
#bookingServices{display:grid;gap:10px}
.booking-service-row{
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(110px,.65fr) auto;
  gap:9px;
  align-items:end;
  padding:10px;
  border:1px solid var(--border);
  border-radius:11px;
  background:#fafbfc;
}
.booking-service-row label{margin:0}
.booking-service-row .remove-service-row{margin-bottom:1px}
.booking-service-total{text-align:right;margin-top:10px;font-size:13px;color:var(--muted)}
.booking-service-total strong{color:var(--text);font-size:16px}

.booking-detail-dialog{
  border:0;border-radius:16px;padding:0;width:min(94vw,520px);
  box-shadow:0 24px 70px #0005;
}
.booking-detail-dialog::backdrop{background:#0007}
.booking-detail-box{padding:20px}
.detail-services-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850;margin-bottom:7px}
.detail-services{display:grid;gap:7px}
.detail-service{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;padding:11px 12px;background:#fafbfc}
.detail-service span{font-weight:850}
.detail-total{display:flex;align-items:center;justify-content:space-between;padding:9px 2px;border-bottom:1px solid #edf0f3}
.detail-total.grand{font-size:18px;border-bottom:0;padding-top:12px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.detail-grid>div,.detail-note{border:1px solid var(--border);border-radius:10px;padding:10px 11px;background:#fff}
.detail-grid span,.detail-note span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}
.detail-grid strong{display:block;font-size:13px;word-break:break-word}
.detail-note p{margin:3px 0 0;font-size:13px}

@media(max-width:700px){
  .account-period.compact-period{grid-template-columns:46px minmax(0,1fr) 46px}
  .account-period.compact-period input{width:100%;order:initial}
  .booking-service-row{grid-template-columns:1fr}
  .booking-service-row .remove-service-row{width:100%}
  .detail-grid{grid-template-columns:1fr}
}


/* V6 — refinamentos mobile e compactação visual */

/* Evita o estouro dos controles nativos do Safari/iPhone. */
input[type="date"],
input[type="time"],
input[type="month"]{
  display:block;
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  min-width:0;
  inline-size:100%;
  max-inline-size:100%;
  min-inline-size:0;
  overflow:hidden;
}
label,
.form-grid > *,
.card form > *{
  min-width:0;
  max-width:100%;
}

/* Contabilidade: setas e data/mês sempre dentro da mesma linha. */
.account-period.compact-period{
  width:100%;
  max-width:100%;
  grid-template-columns:44px minmax(0,1fr) 44px;
  gap:10px;
  overflow:hidden;
}
.account-period.compact-period .compact{
  width:44px;
  min-width:44px;
  max-width:44px;
  padding:0;
}
.account-period.compact-period input[type="date"],
.account-period.compact-period input[type="month"]{
  width:100%;
  min-width:0;
  max-width:100%;
  padding-left:8px;
  padding-right:8px;
  text-align:center;
}

/* Custos fixos já salvos: leitura em grade, sem linha de texto comprida. */
.fixed-cost-values{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 14px;
  margin-top:8px;
}
.fixed-cost-values > div{
  min-width:0;
  padding:7px 9px;
  border-radius:8px;
  background:#f7f9fb;
}
.fixed-cost-values span{
  display:block;
  color:var(--muted);
  font-size:11px;
  margin-bottom:2px;
}
.fixed-cost-values strong{
  display:block;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Agendamento com serviços extras: destaque perceptível, mas suave. */
.multi-service-booking{
  box-shadow:none;
  background:linear-gradient(
    90deg,
    color-mix(in srgb,var(--accent) 17%,white) 0%,
    color-mix(in srgb,var(--accent) 8%,white) 34%,
    rgba(255,255,255,.98) 72%
  );
}
.multi-service-badge{
  padding:3px 7px;
  background:color-mix(in srgb,var(--accent) 15%,white);
  border:1px solid color-mix(in srgb,var(--accent) 32%,white);
}

/* Edição de agendamento: ação principal separada; ações destrutiva/voltar lado a lado. */
.booking-form-actions{
  display:grid;
  grid-template-columns:1fr;
  width:100%;
}
.edit-booking-bottom-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:8px;
  width:100%;
}
.edit-booking-bottom-actions > button{
  width:100%;
  min-width:0;
  margin:0;
  position:relative;
  z-index:1;
}

/* Menos espaço morto nos formulários, sem reduzir os alvos de toque. */
.content .card form .form-grid{
  row-gap:7px;
}
.content .card form label{
  margin-top:6px;
  margin-bottom:6px;
}
.content .card form .field-help{
  margin-top:3px;
}
.content .card form .section-title{
  margin-bottom:7px;
}
.content .card form .form-actions{
  margin-top:10px;
}
.content .card form .services-editor{
  margin-top:0;
}

/* Mantém agenda principal confortável para toque; compactação acima é só de formulários. */

@media(max-width:700px){
  input[type="date"],
  input[type="time"],
  input[type="month"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
  }

  .account-period.compact-period{
    grid-template-columns:42px minmax(0,1fr) 42px;
    gap:7px;
    padding:8px 9px;
  }
  .account-period.compact-period .compact{
    width:42px;
    min-width:42px;
    max-width:42px;
  }
  .account-period.compact-period input[type="date"],
  .account-period.compact-period input[type="month"]{
    font-size:16px!important;
    padding-left:4px;
    padding-right:4px;
  }

  .content .card form .form-grid{
    gap:6px;
  }
  .content .card form label{
    margin-top:4px;
    margin-bottom:4px;
  }

  .fixed-cost-values{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }

  .edit-booking-bottom-actions{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .edit-booking-bottom-actions button{
    padding-left:8px;
    padding-right:8px;
    font-size:13px;
    min-height:48px;
  }
}

@media(max-width:360px){
  .fixed-cost-values{
    grid-template-columns:1fr;
  }
  .edit-booking-bottom-actions{
    grid-template-columns:1fr 1fr;
  }
}


/* Alpha 1.0 */

/* Menu mais compacto em desktop e mobile */
.sidebar nav{gap:2px}
.nav-item{padding-top:8px;padding-bottom:8px;min-height:38px}
.nav-system-fixed{margin-top:auto}
.sidebar nav{display:flex;flex-direction:column;min-height:0}
.sidebar .logout{margin-top:8px}
@media(max-width:700px){
  .nav-item{padding-top:9px;padding-bottom:9px;min-height:40px}
}

/* Agenda desktop compacta: horário na coluna esquerda, agendamento na mesma linha */
@media(min-width:701px){
  .desktop-compact-agenda .agenda-slot-row{
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    align-items:stretch;
    min-height:58px;
  }
  .desktop-compact-agenda .agenda-slot-row .slot-head{
    border-right:1px solid var(--border);
    border-bottom:0;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:8px 6px;
    min-height:100%;
    background:#f8fafc;
  }
  .desktop-compact-agenda .agenda-slot-row .slot-head b{font-size:15px}
  .desktop-compact-agenda .agenda-slot-row .slot-count{font-size:10px;text-align:center;margin-top:3px}
  .desktop-compact-agenda .slot-bookings{min-width:0}
  .desktop-compact-agenda .slot-bookings .booking:first-child{border-top:0}
  .desktop-compact-agenda .booking{padding-top:8px;padding-bottom:8px}
  .empty-slot-action{width:100%;height:100%;min-height:56px;border:0;background:#fff;color:var(--muted);font-weight:700;text-align:left;padding:0 14px}
}

/* Títulos clicáveis para visualização */
.entity-title-button{border:0;background:transparent;padding:0;margin:0;color:var(--text);font:inherit;font-weight:800;text-align:left}
.entity-title-button:hover,.entity-title-button:active{text-decoration:underline}

/* Modal genérico */
.entity-dialog{border:0;border-radius:16px;padding:0;width:min(94vw,540px);box-shadow:0 24px 70px #0005}
.entity-dialog::backdrop{background:#0007}
.entity-dialog-box{padding:20px}
.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.view-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.view-row{border:1px solid var(--border);border-radius:10px;padding:10px 11px}
.view-row span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.view-row strong{display:block;font-size:13px}
.view-section{margin-top:14px}.view-section h3{margin:0 0 8px}
.view-list-row{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:9px;margin-top:6px}.view-list-row span{font-size:11px;color:var(--accent);font-weight:800}
.menu-order-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:8px 4px;border-bottom:1px solid #edf0f3}.menu-order-row>div{display:flex;gap:5px}
.settings-extra-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.settings-extra-row span{display:block;color:var(--muted);font-size:12px;margin-top:3px}
@media(max-width:700px){.view-grid{grid-template-columns:1fr}.modal-actions>*{flex:1}.settings-extra-row{align-items:flex-start;flex-direction:column}.settings-extra-row button{width:100%}}

/* Tema vermelho */
.theme.red{background:linear-gradient(135deg,#1f1111 50%,#c63d3d 50%)}

/* Custos fixos: quatro valores em uma linha no desktop, 2x2 no mobile */
@media(min-width:701px){.fixed-cost-values{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.fixed-cost-values{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Página Sistema */
.system-page{max-width:720px;margin:0 auto;padding-top:10px}.system-card{text-align:center}.platform-logo-placeholder{width:170px;height:74px;margin:0 auto 14px;display:grid;place-items:center;border:1px dashed var(--border);border-radius:12px;color:var(--muted);font-weight:900;letter-spacing:.08em}.system-card h1{margin:0}.system-version{margin:5px 0 20px;color:var(--accent);font-weight:850}.system-info{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;text-align:left}.system-info>div{border:1px solid var(--border);border-radius:10px;padding:10px}.system-info span{display:block;font-size:11px;color:var(--muted);margin-bottom:3px}.system-contact{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin-top:18px;min-width:220px}.system-note{color:var(--muted);font-size:12px;margin-top:14px}
@media(max-width:700px){.system-info{grid-template-columns:1fr}}

/* Evita rolagem lateral no menu com muitos itens */
.sidebar nav{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}


/* Alpha 1.1 — identidade MinhaHub */
.platform-login-logo{
  width:100%;
  max-width:300px;
  height:90px;
  margin:0 auto 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:0;
}
.platform-login-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.platform-system-logo{
  width:min(100%,360px);
  height:120px;
  margin:0 auto 12px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.platform-system-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.system-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:18px;
}
.system-actions .system-contact{margin-top:0}
.version-notes{display:grid;gap:9px}
.version-note-item{
  border:1px solid var(--border);
  border-radius:10px;
  padding:11px 12px;
  background:#fafbfc;
}
.version-note-item strong{display:block;margin-bottom:4px}
.version-note-item span{display:block;color:var(--muted);font-size:12px;line-height:1.45}
@media(max-width:700px){
  .platform-login-logo{max-width:260px;height:82px}
  .platform-system-logo{height:100px}
  .system-actions{flex-direction:column}
  .system-actions>*{width:100%}
}


/* =========================================================
   MinhaHub — Alpha 1.2
   ========================================================= */

/* Login: BG enviado pelo projeto; o card de login continua branco. */
.login-screen{
  background-image:url("assets/login-bg.jpg");
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  background-attachment:fixed;
}
.login-box{
  background:#fff;
}

/* Agenda: Dia/Semana no cabeçalho, economizando uma linha. */
.agenda-page-title{
  align-items:flex-end;
}
.agenda-page-title .agenda-view-switch{
  margin-left:auto;
  flex:0 0 auto;
}
.agenda-date-toolbar{
  margin-top:-4px;
}

/* Colaboradores da agenda mais compactos. */
.compact-workers{
  display:block;
  padding:8px 10px;
}
.compact-workers #manageWorkers{
  min-height:38px;
  padding:0 12px;
}
.compact-workers .worker-tags{
  display:flex;
  gap:5px;
  flex-wrap:wrap;
  margin-top:6px;
}
.compact-workers .worker-tag{
  padding:4px 7px;
}

/* Horário vazio: botão Agendar ao lado do horário, sem segunda linha. */
.empty-slot-head{
  width:100%;
}
.slot-time-actions{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.empty-slot-action{
  width:auto;
  height:auto;
  min-height:36px;
  border:1px solid var(--border);
  background:#f3f4f6;
  color:var(--text);
  border-radius:8px;
  padding:0 12px;
  font-weight:750;
  text-align:center;
}
.empty-slot-action:hover{
  background:#e9edf2;
}
@media(min-width:701px){
  .desktop-compact-agenda .agenda-slot-row.empty-slot{
    display:block;
    min-height:auto;
  }
  .desktop-compact-agenda .agenda-slot-row.empty-slot .slot-head{
    border-right:0;
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    min-height:54px;
    padding:8px 14px;
  }
  .desktop-compact-agenda .agenda-slot-row.empty-slot .slot-count{
    margin:0;
  }
}

/* Veículo = modelo + cor + placa */
.vehicle-triplet{
  display:grid;
  grid-template-columns:2fr 1fr 1.1fr;
  gap:8px;
}
.vehicle-triplet label{
  min-width:0;
}
.client-vehicle-row{
  grid-template-columns:minmax(140px,1.5fr) minmax(100px,1fr) minmax(115px,1fr) auto auto;
  align-items:center;
}
.client-vehicle-row input[name="vehicleName"],
.client-vehicle-row input[name="vehicleColor"],
.client-vehicle-row input[name="vehiclePlate"]{
  margin:0;
  min-width:0;
}

/* Preferências */
.preferences-field{
  min-width:0;
}
.preference-picker-button{
  min-height:42px;
}
.preference-summary{
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
}
.preferences-options{
  display:grid;
  gap:8px;
  margin-top:12px;
}
.preferences-options label{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  border:1px solid var(--border);
  border-radius:10px;
  padding:11px 12px;
  font-weight:750;
}
.preferences-options input{
  width:20px;
  height:20px;
  margin:0;
}
.preference-alert{
  color:#c47b00;
  font-size:15px;
  vertical-align:middle;
}
.booking-preferences-detail,
.client-preferences-alert{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:10px 0;
  padding:10px 12px;
  border:1px solid #f0cc83;
  background:#fff9e8;
  border-radius:10px;
}
.booking-preferences-detail strong,
.client-preferences-alert strong{
  color:#9a6500;
}
.booking-preferences-detail span,
.client-preferences-alert span{
  font-size:12px;
  color:#6b5a38;
}

/* Clientes: filtro por última lavagem. */
.client-wash-filter{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin:-4px 0 12px;
  padding:8px 10px;
  border:1px solid var(--border);
  border-radius:11px;
  background:#fff;
}
.client-wash-filter>span{
  color:var(--muted);
  font-size:12px;
  font-weight:750;
  margin-right:2px;
}
.client-wash-filter button{
  min-height:34px;
  padding:0 10px;
  font-size:12px;
}
.client-detail-vehicle{
  margin-top:7px;
}
.vehicle-last-wash{
  padding:5px 9px 0;
  font-size:11px;
  color:var(--muted);
}

/* Sistema */
.system-card .platform-system-logo{
  margin-bottom:2px;
}
.system-card .system-version{
  margin-top:4px;
}
.system-info{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

/* Safari/iPhone: inputs de data nunca podem extrapolar o card. */
@media(max-width:700px){
  .login-screen{
    background-position:right center;
    background-size:cover;
    background-attachment:scroll;
  }

  .agenda-page-title{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:8px;
    margin-bottom:12px;
  }
  .agenda-page-title h1{font-size:25px}
  .agenda-page-title p{
    font-size:15px;
    white-space:normal;
  }
  .agenda-view-switch{
    align-self:end;
  }
  .agenda-view-switch button{
    padding:7px 10px;
    font-size:13px;
  }

  .compact-workers{
    padding:7px 8px;
  }
  .compact-workers #manageWorkers{
    width:auto;
    min-height:36px;
  }

  .empty-slot-head{
    padding:9px 12px;
  }
  .slot-time-actions{
    gap:8px;
  }
  .empty-slot-action{
    min-height:34px;
    padding:0 10px;
    border-radius:7px;
    font-size:13px;
  }

  .vehicle-triplet{
    grid-template-columns:1fr;
    gap:3px;
  }
  .client-vehicle-row{
    grid-template-columns:1fr;
  }

  /* O wrapper e o label limitam o componente nativo do Safari. */
  .form-grid,
  .form-grid>label,
  .form-grid>.full,
  .card form,
  .card{
    min-width:0;
    max-width:100%;
  }
  .form-grid>label{
    overflow:hidden;
  }
  input[type="date"],
  input[type="month"],
  input[type="time"]{
    display:block!important;
    box-sizing:border-box!important;
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    overflow:hidden!important;
  }
  #newBooking input[type="date"],
  #productForm input[type="date"],
  #fixedCostForm input[type="month"]{
    width:calc(100% - 1px)!important;
  }

  .client-wash-filter{
    align-items:flex-start;
  }
  .client-wash-filter>span{
    flex-basis:100%;
  }

  .system-info{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   MinhaHub — Alpha 1.3
   ========================================================= */

.company-data-card{
  max-width:980px;
  margin:0 auto 16px;
  text-align:left;
}
.company-data-card .section-title p{
  margin:3px 0 0;
}
.company-data-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.company-data-grid>div{
  border:1px solid var(--border);
  border-radius:10px;
  padding:10px;
  min-width:0;
}
.company-data-grid span{
  display:block;
  color:var(--muted);
  font-size:11px;
  margin-bottom:3px;
}
.company-data-grid strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
}

.bookkeeping-period-card{
  display:flex;
  align-items:end;
  gap:18px;
  margin-bottom:16px;
}
.bookkeeping-period-card>div:first-child{
  width:min(260px,100%);
}
.bookkeeping-period-card input[type="month"]{
  margin-top:6px;
}
.bookkeeping-company-summary{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.bookkeeping-company-summary span{
  color:var(--muted);
  font-size:12px;
}
.bookkeeping-title{
  margin-top:6px;
}
.bookkeeping-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.bookkeeping-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.bookkeeping-card{
  text-align:left;
  cursor:pointer;
  width:100%;
  color:var(--text);
  font:inherit;
}
.bookkeeping-card:hover{
  border-color:color-mix(in srgb,var(--accent) 45%,var(--border));
}
.documentation-card{
  margin-top:14px;
}
.documentation-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
.documentation-grid>div{
  border:1px solid var(--border);
  border-radius:10px;
  padding:12px;
}
.documentation-grid strong{
  display:block;
  font-size:24px;
}
.documentation-grid span{
  display:block;
  color:var(--muted);
  font-size:12px;
}
.accounting-guidance{
  margin-top:14px;
  font-size:13px;
}
.accounting-guidance span{
  display:block;
  color:var(--muted);
  margin-top:4px;
}
.accounting-entry-list{
  display:grid;
  gap:8px;
}
.accounting-entry-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  border:1px solid var(--border);
  border-radius:10px;
  padding:10px 11px;
}
.accounting-entry-row>div:first-child{
  min-width:0;
}
.accounting-entry-row strong,
.accounting-entry-row span,
.accounting-entry-row small{
  display:block;
}
.accounting-entry-row span{
  color:var(--muted);
  font-size:11px;
  margin-top:3px;
}
.accounting-entry-row small{
  margin-top:4px;
  font-size:10px;
  color:#8a6500;
}
.accounting-entry-row>div:last-child{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
  white-space:nowrap;
}
.checkbox-line{
  display:flex;
  align-items:center;
  gap:8px;
}
.checkbox-line input{
  width:20px;
  height:20px;
  margin:0;
}
#entityDialog textarea{
  min-height:90px;
  resize:vertical;
}

@media(max-width:900px){
  .bookkeeping-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  .company-data-card .section-title{
    align-items:flex-start;
  }
  .company-data-card .section-title button{
    flex:0 0 auto;
  }
  .company-data-grid{
    grid-template-columns:1fr 1fr;
  }
  .bookkeeping-period-card{
    display:block;
  }
  .bookkeeping-company-summary{
    margin-top:10px;
  }
  .bookkeeping-title{
    align-items:flex-start;
    flex-direction:column;
  }
  .bookkeeping-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  .bookkeeping-actions button{
    width:100%;
  }
  .bookkeeping-grid{
    grid-template-columns:1fr 1fr;
  }
  .bookkeeping-card .big{
    font-size:18px;
  }
  .documentation-grid{
    grid-template-columns:1fr;
  }
  .accounting-entry-row{
    flex-direction:column;
  }
  .accounting-entry-row>div:last-child{
    align-items:flex-start;
  }
}

@media(max-width:390px){
  .company-data-grid,
  .bookkeeping-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   MinhaHub — Alpha 1.4
   ========================================================= */

.whatsapp-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:6px;
  padding:4px 8px;
  border-radius:7px;
  background:#e9f8ef;
  color:#128c4b;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.whatsapp-link:hover{filter:brightness(.97)}

.week-grid-expanded{
  align-items:stretch;
  min-height:calc(100vh - 280px);
}
.week-grid-expanded .week-day{
  display:flex;
  flex-direction:column;
  min-height:calc(100vh - 300px);
  max-height:calc(100vh - 235px);
  overflow:hidden;
}
.week-grid-expanded .week-day-head{
  flex:0 0 auto;
}
.week-day-scroll{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

.preference-config-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  margin-bottom:8px;
  align-items:center;
}
.preference-config-row input{margin:0}
.custom-preference-wrap{
  margin-top:12px;
}
.custom-preference-wrap label{
  display:block;
  font-weight:700;
}
.custom-preference-wrap input{
  margin-top:6px;
  width:100%;
}

.split-payment-rows{
  display:grid;
  gap:8px;
  margin:12px 0;
}
.split-payment-row{
  display:grid;
  grid-template-columns:1.2fr 1fr auto;
  gap:8px;
  align-items:center;
}
.split-payment-row select,
.split-payment-row input{
  margin:0;
  min-width:0;
}
.payment-total-check{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:12px 0;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
}
.payment-total-check span{
  color:var(--muted);
  font-size:12px;
}

@media(max-width:700px){
  .week-grid-expanded{
    min-height:calc(100dvh - 275px);
  }
  .week-grid-expanded .week-day{
    min-height:calc(100dvh - 300px);
    max-height:calc(100dvh - 215px - env(safe-area-inset-bottom));
  }
  .split-payment-row{
    grid-template-columns:1fr 1fr;
  }
  .split-payment-row .remove-payment-row{
    grid-column:1/-1;
  }
}

/* Alpha 1.4 complemento — ícones e clientes */
.automotive-icon-wrap{display:inline-flex;align-items:center;justify-content:center;color:var(--accent);vertical-align:middle;flex:0 0 auto}.automotive-icon{width:22px;height:22px;display:block}.automotive-icon-wrap.restriction .restriction-slash{stroke:#d14343;stroke-width:2.6}.icon-picker-button{display:flex;align-items:center;gap:8px;width:min(100%,360px);justify-content:flex-start}.picker-current{width:24px;height:24px}.icon-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:58vh;overflow-y:auto;padding:2px}.icon-library-grid.compact{grid-template-columns:repeat(5,minmax(0,1fr));max-height:42vh}.icon-library-item{min-height:92px;border:1px solid var(--border);background:#fff;border-radius:10px;padding:9px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--accent);cursor:pointer}.icon-library-item:hover{border-color:var(--accent)}.icon-library-item .library-icon{width:32px;height:32px}.icon-library-item small{color:var(--text);font-size:10px;line-height:1.2;text-align:center}.icon-library-item.no-icon>span{font-size:28px;color:var(--muted)}.service-title-with-icon{display:inline-flex;align-items:center;gap:7px}.service-list-icon{width:23px;height:23px}.service-detail-icon{display:flex;justify-content:center;margin:4px 0 14px}.detail-service-icon{width:48px;height:48px}.detail-service-name{display:flex;align-items:center;gap:7px}.detail-booking-service-icon{width:24px;height:24px}.booking-service-icons,.booking-restriction-icons{display:inline-flex;align-items:center;gap:3px;vertical-align:middle;margin:0 3px}.booking-service-icon,.booking-restriction-icon{width:19px;height:19px}.preference-option-icon{width:21px;height:21px}.client-pref-icon{width:18px;height:18px;margin-right:3px}.preference-config-row{grid-template-columns:minmax(130px,1.5fr) minmax(150px,1fr) auto}.preference-config-icon-btn{display:flex;align-items:center;gap:6px;min-width:0}.preference-config-icon-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preference-config-preview{width:22px;height:22px}.preference-inline-icon-picker{margin:10px 0;padding:10px;border:1px solid var(--border);border-radius:10px;background:#f9fafb}.inline-icon-title{font-size:12px;margin-bottom:8px;color:var(--muted)}.client-search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:5px 10px;margin-bottom:10px}.client-search-box:focus-within{border-color:var(--accent)}.client-search-icon{font-size:21px;color:var(--muted)}.client-search-box input{border:0!important;box-shadow:none!important;margin:0!important;padding:8px 2px!important;min-height:38px!important;width:100%}.client-history-list{display:grid;gap:7px;margin-bottom:9px}.client-history-item{border:1px solid var(--border);border-radius:10px;padding:9px 10px}.client-history-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:5px}.client-history-head span{font-weight:800}.client-history-body{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;color:var(--muted)}
@media(max-width:700px){.icon-library-grid,.icon-library-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.icon-library-item{min-height:82px}.preference-config-row{grid-template-columns:1fr auto}.preference-config-icon-btn{grid-column:1/-1;width:100%}.booking-service-icon,.booking-restriction-icon{width:18px;height:18px}}


/* Alpha 1.5 — links externos de cliente */
.maps-link{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;padding:4px 8px;border-radius:7px;background:color-mix(in srgb,var(--accent) 10%,white);color:var(--accent);font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}.maps-link:hover{filter:brightness(.97)}
