:root{--pm-primary:#ff5a00;--pm-secondary:#111111;}
*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:#171717;font-family:Inter,Arial,sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#111;color:#fff;padding:28px 18px;display:flex;flex-direction:column}.brand{font-weight:900;font-size:21px;letter-spacing:-.5px}.brand span{display:block;color:var(--pm-primary);font-size:13px;letter-spacing:.4px;text-transform:uppercase;margin-top:3px}.brand.big{font-size:28px}.sidebar nav{display:grid;gap:4px;margin-top:28px}.sidebar nav a,.sidefoot a{color:#d9d9d9;text-decoration:none;padding:10px 12px;border-radius:9px}.sidebar nav a:hover{background:#242424;color:#fff}.sidefoot{margin-top:auto;display:grid;gap:8px;padding:12px}.main{margin-left:250px;padding:30px;max-width:1500px}.public-main{max-width:940px;margin:0 auto;padding:42px 20px}.pagehead{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.pagehead h1{font-size:30px;margin:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.card,.auth-card,.booking-card{background:#fff;border:1px solid #e5e6e8;border-radius:18px;padding:22px;box-shadow:0 8px 25px rgba(0,0,0,.035)}.kpi span{color:#777;font-size:13px;font-weight:700}.kpi strong{font-size:30px;display:block;margin-top:8px}.grid2{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(500px,1.5fr);gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stack{display:grid;gap:14px}.span2{grid-column:1/-1}label{font-size:13px;font-weight:800;display:grid;gap:6px}input,select,textarea{width:100%;border:1px solid #d8dadd;border-radius:10px;padding:11px 12px;background:#fff;font:inherit}textarea{min-height:90px}.btn{display:inline-block;border:0;border-radius:10px;background:var(--pm-primary);color:#fff;font-weight:900;padding:12px 17px;text-decoration:none;cursor:pointer}.btn.small{padding:8px 11px;font-size:13px}.section-title{display:flex;justify-content:space-between;align-items:center}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #eee;font-size:14px}th{font-size:12px;text-transform:uppercase;color:#777}.pill{display:inline-block;padding:5px 8px;border-radius:999px;background:#f0f1f3;font-size:12px}.notice{padding:12px 14px;border-radius:10px;background:#eef2ff;margin-bottom:14px}.notice.ok{background:#eaf8ee;color:#1e6b36}.notice.bad{background:#fff0f0;color:#9f2929}.muted{color:#717171}.narrow{max-width:760px}.auth-card{max-width:450px;margin:70px auto}.setup{min-height:100vh;display:grid;place-items:center;padding:25px}.booking-card{max-width:720px;margin:0 auto}.booking-intro{text-align:center;margin-bottom:20px}.booking-intro p{color:#666}.public-main .pagehead{text-align:center;display:block}.public-main .pagehead h1{font-size:36px}@media(max-width:980px){.sidebar{position:static;width:auto}.main{margin-left:0;padding:18px}.cards{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}}@media(max-width:640px){.cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.pagehead h1{font-size:26px}}

.hero-dash{background:#111;color:#fff;border-radius:22px;padding:28px 30px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-dash h2{font-size:30px;margin:4px 0 8px}.hero-dash p{color:#bbb;margin:0}.eyebrow{color:var(--pm-primary);font-size:11px;font-weight:900;letter-spacing:1.4px}.compact strong{font-size:22px}.compact a{display:block;margin-top:10px;color:var(--pm-primary);text-decoration:none;font-size:13px;font-weight:800}.pill.danger,.text-danger{color:#b42318;background:#fee4e2}.text-danger{background:none}.review{padding:15px 0;border-bottom:1px solid #eee}.review:first-of-type{padding-top:0}.review div{display:flex;justify-content:space-between;gap:14px}.review p{margin:8px 0;color:#444}.stars{color:#ff9a00;letter-spacing:1px}.flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0}.flow span{background:#f5f6f8;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800}.check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px}.check input{width:auto}.sidebar{overflow-y:auto}.sidebar nav{padding-bottom:20px}@media(max-width:640px){.hero-dash{align-items:flex-start;flex-direction:column}}
.btn.ghost{background:#fff;color:#171717;border:1px solid #d8dadd}.btn.ghost:hover{border-color:var(--pm-primary);color:var(--pm-primary)}.section-title h2{margin:0}.section-title{gap:12px;margin-bottom:14px}.table-wrap td:last-child,.table-wrap th:last-child{white-space:nowrap}
.settings-card{max-width:980px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:8px}.section-head h2{margin:0 0 4px}.section-head p{margin:0}.schedule-table{border:1px solid #e5e6e8;border-radius:14px;overflow:hidden}.schedule-row{display:grid;grid-template-columns:150px 130px 1fr 1fr;gap:14px;align-items:end;padding:14px 16px;border-bottom:1px solid #eee}.schedule-row:last-child{border-bottom:0}.schedule-day{align-self:center}.toggle-line{display:flex;align-items:center;gap:8px;min-height:42px}.toggle-line input{width:auto}.special-row{display:grid;grid-template-columns:160px 170px 130px 130px minmax(180px,1fr) auto;gap:10px;align-items:end;padding:14px 0;border-bottom:1px solid #eee}.special-row:first-child{padding-top:0}.special-note{min-width:0}.special-row .btn{margin-bottom:1px}.day-time:disabled,.special-time:disabled{background:#f1f2f4;color:#999}.special-row select{min-width:0}@media(max-width:900px){.schedule-row{grid-template-columns:120px 110px 1fr 1fr}.special-row{grid-template-columns:1fr 1fr}.special-note{grid-column:1/-1}}@media(max-width:640px){.schedule-row{grid-template-columns:1fr 1fr}.schedule-day{grid-column:1/-1}.special-row{grid-template-columns:1fr}.special-note{grid-column:auto}.section-head{align-items:flex-start;flex-direction:column}}
/* v0.7 refined business hours */
.modern-settings{max-width:1040px;padding:28px}.settings-title{padding-top:4px}.settings-title h2{margin:4px 0 6px}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--pm-primary)}.schedule-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.day-card{border:1px solid #e4e6ea;border-radius:16px;background:#fff;overflow:hidden;transition:.2s ease}.day-card.is-closed{background:#fafafa}.day-card-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #eef0f2}.day-card-head>div{display:flex;align-items:center;gap:10px}.day-card-head strong{font-size:16px}.day-status{font-size:12px;font-weight:700;padding:4px 8px;border-radius:999px;background:#edf8f0;color:#24723a}.is-closed .day-status{background:#f0f1f2;color:#74777c}.day-card-body{padding:16px 18px}.shift-row{display:grid;grid-template-columns:105px 1fr 1fr;gap:10px;align-items:end}.shift-label{font-size:12px;font-weight:800;color:#6e7177;align-self:center}.shift-row label{font-size:12px}.shift-row input{min-height:42px}.split-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 0;padding-top:12px;border-top:1px dashed #e1e3e6}.split-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;font-size:13px!important;font-weight:700!important}.split-check input{width:auto!important}.split-help{font-size:11px;color:#8a8d92}.second-shift{margin-top:12px;padding-top:12px;border-top:1px dashed #e1e3e6}.switch{position:relative;width:44px;height:24px;display:inline-block!important}.switch input{opacity:0;width:0!important;height:0}.slider{position:absolute;inset:0;background:#c9ccd1;border-radius:999px;cursor:pointer;transition:.2s}.slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:.2s}.switch input:checked+.slider{background:var(--pm-primary)}.switch input:checked+.slider:before{transform:translateX(20px)}.save-settings{margin-top:10px}.day-card.is-closed .day-card-body{opacity:.55}.day-card.is-closed .split-controls{pointer-events:none}.special-row{background:#fafafa;border:1px solid #e7e8eb;border-radius:14px;padding:14px;margin-bottom:10px}
@media(max-width:900px){.schedule-cards{grid-template-columns:1fr}.shift-row{grid-template-columns:95px 1fr 1fr}}
@media(max-width:640px){.modern-settings{padding:18px}.shift-row{grid-template-columns:1fr 1fr}.shift-label{grid-column:1/-1}.split-controls{align-items:flex-start;flex-direction:column}.day-card-head{padding:14px}.day-card-body{padding:14px}}

.hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.ghost-dark{background:transparent;border:1px solid #555;color:#fff}.ghost-dark:hover{border-color:var(--pm-primary);color:var(--pm-primary)}.pill.source{background:#fff4ea;color:#a54500}.booking-business{font-size:30px;font-weight:900;letter-spacing:-.6px}.booking-subbrand{font-size:17px;font-weight:800;color:var(--pm-primary);margin-top:4px}.powered-by{text-align:center;margin-top:18px;color:#888;font-size:12px;font-weight:700}.hero-dash{gap:24px}.hero-dash>div:first-child{min-width:0}@media(max-width:760px){.hero-actions{justify-content:flex-start;width:100%}.hero-actions .btn{width:100%;text-align:center}}


/* v0.9 clean weekly schedule */
.modern-settings{max-width:1180px}
.weekly-schedule{border:1px solid #e3e5e8;border-radius:18px;overflow:hidden;background:#fff}
.weekly-head{display:grid;grid-template-columns:150px 150px minmax(300px,1fr) minmax(280px,1fr);gap:20px;padding:12px 20px;background:#f7f8fa;border-bottom:1px solid #e8eaed;color:#777;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.weekly-row{display:grid!important;grid-template-columns:150px 150px minmax(300px,1fr) minmax(280px,1fr)!important;gap:20px!important;align-items:center!important;padding:18px 20px!important;border:0!important;border-bottom:1px solid #eceef1!important;background:#fff!important}
.weekly-row:last-child{border-bottom:0!important}
.weekly-row.is-closed{background:#fbfbfc!important}
.weekly-day strong{font-size:16px;letter-spacing:-.15px}
.weekly-status{display:flex;align-items:center;gap:10px}
.weekly-status .day-status{min-width:62px;text-align:center}
.time-pair{display:grid;grid-template-columns:minmax(115px,1fr) 18px minmax(115px,1fr);gap:8px;align-items:end}
.time-pair label{gap:5px}
.time-pair label>span{font-size:11px;color:#777;font-weight:800}
.time-pair input{height:42px;padding:8px 10px}
.time-separator{align-self:center;text-align:center;color:#aaa;font-size:12px;margin-top:16px}
.weekly-secondary{min-width:0}
.split-action{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px;cursor:pointer;font-size:12px!important;color:var(--pm-primary);font-weight:900!important;width:max-content}
.split-action input{width:auto!important}
.split-action-text{white-space:nowrap}
.weekly-secondary .second-shift{margin:10px 0 0;padding:0;border:0}
.compact-pair{grid-template-columns:minmax(105px,1fr) 18px minmax(105px,1fr)}
.weekly-row.is-closed .weekly-primary,.weekly-row.is-closed .weekly-secondary{opacity:.42}
.weekly-row.is-closed .split-action{pointer-events:none}
.schedule-heading{margin-top:8px}
.schedule-heading h2{font-size:26px}
@media(max-width:1050px){
  .weekly-head{display:none}
  .weekly-row{grid-template-columns:140px 140px 1fr!important}
  .weekly-secondary{grid-column:3}
}
@media(max-width:760px){
  .weekly-row{grid-template-columns:1fr!important;gap:14px!important;padding:16px!important}
  .weekly-day{display:flex;align-items:center;justify-content:space-between}
  .weekly-status,.weekly-primary,.weekly-secondary{grid-column:auto}
  .time-pair,.compact-pair{grid-template-columns:1fr 18px 1fr}
  .weekly-secondary .second-shift{margin-top:12px}
  .split-action-text{white-space:normal}
}

/* v1.0 simplified business-hours editor */
.hours-panel{border:1px solid #e2e5e9;border-radius:18px;overflow:hidden;background:#fff}
.hours-day{display:grid!important;grid-template-columns:190px 1fr!important;gap:24px!important;align-items:start!important;padding:20px 22px!important;border:0!important;border-bottom:1px solid #eceef1!important;background:#fff!important}
.hours-day:last-child{border-bottom:0!important}.hours-day.is-closed{background:#fafbfc!important}
.hours-day-main{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px}
.hours-day-name{display:flex;align-items:center;gap:10px}.hours-day-name strong{font-size:17px}.hours-day-name .day-status{min-width:62px;text-align:center}
.hours-open{flex:0 0 auto}.hours-blocks{display:grid;gap:10px;min-width:0}
.hours-block{display:grid;grid-template-columns:110px minmax(130px,190px) 26px minmax(130px,190px) auto;gap:10px;align-items:end}
.hours-block label{font-size:11px;color:#6e7177}.hours-block input{height:44px;font-size:14px;font-weight:700;color:#111}
.hours-label{align-self:center;font-size:12px;font-weight:800;color:#6e7177}.hours-arrow{align-self:center;text-align:center;color:#9a9da2;font-weight:900;margin-bottom:12px}
.add-shift{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px;width:max-content;color:var(--pm-primary);font-size:12px!important;font-weight:900!important;cursor:pointer;margin-left:110px}
.add-shift input{width:auto!important}.second-shift{margin:0!important;padding:0!important;border:0!important}.remove-shift{align-self:end;height:40px;border:0;background:transparent;color:#b42318;font-weight:800;cursor:pointer;padding:0 4px}
.hours-day.is-closed .hours-blocks{opacity:.45}.hours-day.is-closed .add-shift{pointer-events:none}.hours-day.is-closed .day-status{background:#f0f1f2;color:#74777c}
@media(max-width:900px){.hours-day{grid-template-columns:1fr!important;gap:12px!important}.hours-day-main{justify-content:flex-start}.hours-day-main .hours-open{margin-left:auto}.add-shift{margin-left:0}}
@media(max-width:640px){.hours-day{padding:16px!important}.hours-block{grid-template-columns:1fr 22px 1fr}.hours-label{grid-column:1/-1}.hours-block label{min-width:0}.remove-shift{grid-column:1/-1;justify-self:start;height:auto}.hours-arrow{margin-bottom:12px}.add-shift{margin-top:2px}}

/* v1.1 Smart Booking interface matching demo */
.smartbooking-demo .pagehead{display:none}
.smartbooking-demo{padding-top:6px}
.sb-lang{display:flex;justify-content:flex-end;gap:10px;margin-bottom:14px}
.sb-lang-btn{border:1px solid #d8dadd;background:#fff;border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer}
.sb-lang-btn.active{background:#111;color:#fff;border-color:#111}
.sb-shell{max-width:980px;margin:0 auto;background:#fff;border:1px solid #e4e6ea;border-radius:24px;padding:28px 28px 32px;box-shadow:0 10px 28px rgba(0,0,0,.04)}
.sb-brand{text-align:center;font-weight:900;font-size:18px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.sb-stepsbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:22px}
.sb-stepsbar span{display:inline-flex;align-items:center;gap:8px;background:#f6f7f9;border:1px solid #eceef2;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800;color:#555}
.sb-stepsbar b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#111;color:#fff;font-size:12px}
.sb-step{padding:18px 0;border-top:1px solid #eeeff2}
.sb-step:first-of-type{border-top:0;padding-top:4px}
.sb-step-kicker{font-size:12px;font-weight:900;color:var(--pm-primary);letter-spacing:.08em;margin-bottom:4px}
.sb-step h2{margin:0 0 16px;font-size:30px;letter-spacing:-.03em}
.sb-cards{display:grid;gap:14px}
.sb-service-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.sb-pro-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.sb-card{border:1px solid #e3e5e9;background:#fff;border-radius:18px;padding:16px 18px;text-align:left;cursor:pointer;transition:.18s ease;display:grid;gap:5px}
.sb-card strong{font-size:16px}
.sb-card span{color:var(--pm-primary);font-weight:800}
.sb-card small{color:#7a7d82;font-weight:700}
.sb-card:hover,.sb-card.active{border-color:var(--pm-primary);box-shadow:0 0 0 2px rgba(255,107,0,.1);transform:translateY(-1px)}
.sb-card.pro-card span{color:#676b72}
.sb-calendar-head{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:14px}.sb-nav{width:40px;height:40px;border:1px solid #dfe2e7;background:#fff;border-radius:12px;font-size:22px;cursor:pointer}.sb-month{min-width:220px;text-align:center;font-size:18px;font-weight:900;text-transform:capitalize}
.sb-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:10px;color:#777;font-size:12px;font-weight:900;text-align:center;text-transform:uppercase}
.sb-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.sb-day{height:52px;border:1px solid #e3e5e9;background:#fff;border-radius:14px;font-weight:800;cursor:pointer}.sb-day.blank{background:transparent;border-color:transparent}.sb-day.disabled{opacity:.38;cursor:not-allowed}.sb-day.active{background:#111;color:#fff;border-color:#111}.sb-day:not(.disabled):hover{border-color:var(--pm-primary)}
.sb-slots-wrap{margin-top:22px}.sb-slots-title{font-size:20px;font-weight:900;margin-bottom:8px}.sb-slots-help{color:#6f737a;margin-bottom:12px}.sb-slots{display:flex;flex-wrap:wrap;gap:10px}.sb-slot{border:1px solid #dfe2e7;background:#fff;border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer}.sb-slot.active,.sb-slot:hover{background:var(--pm-primary);color:#fff;border-color:var(--pm-primary)}
.sb-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sb-data-grid label{font-size:13px;font-weight:800;display:grid;gap:6px}.sb-data-grid input{height:48px}
.sb-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:14px}.sb-summary div{background:#f8f9fb;border:1px solid #eceef2;border-radius:16px;padding:14px}.sb-summary span{display:block;color:#777;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:6px}.sb-summary strong{font-size:15px}
.sb-question{font-weight:800;font-size:18px;margin:10px 0 14px}.sb-request-actions{display:flex;flex-wrap:wrap;gap:12px}.sb-request-actions .btn{padding:14px 18px;font-size:15px}
.sb-footnote{color:#6f737a;font-size:14px;line-height:1.55;margin:16px 0 0}.sb-success strong{display:block;margin-bottom:10px}.sb-success-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sb-success-grid div{background:#fff;border:1px solid #d9ebde;border-radius:14px;padding:12px}.sb-success-grid span{display:block;color:#5f6b63;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:4px}
@media(max-width:760px){.sb-shell{padding:18px 16px 24px}.sb-step h2{font-size:24px}.sb-data-grid,.sb-summary,.sb-success-grid{grid-template-columns:1fr}.sb-request-actions .btn{width:100%}.sb-stepsbar{justify-content:flex-start}.sb-month{min-width:0;width:100%}.sb-calendar-head{justify-content:space-between}.sb-weekdays,.sb-calendar{gap:6px}.sb-day{height:44px}.sb-lang{justify-content:flex-start}}

/* v1.2 editable services + service photography */
.services-layout{grid-template-columns:minmax(360px,.75fr) minmax(620px,1.6fr)}
.service-editor-card{align-self:start}.service-photo-field small{font-weight:500;color:#777}.current-service-photo{display:flex;align-items:center;gap:14px;background:#f8f9fb;border:1px solid #eceef2;border-radius:14px;padding:12px}.current-service-photo img{width:110px;height:82px;object-fit:cover;border-radius:12px}.current-service-photo p{margin:4px 0 9px}
.service-admin-list{display:grid}.service-admin-row{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #eee}.service-admin-row:last-child{border-bottom:0}.service-admin-row.inactive{opacity:.55}.service-admin-thumb{width:92px;height:72px;background:#f2f3f5;border-radius:12px;overflow:hidden;display:grid;place-items:center;color:#999;font-size:11px;font-weight:800}.service-admin-thumb img{width:100%;height:100%;object-fit:cover}.service-admin-info{display:grid;gap:4px;min-width:0}.service-admin-info strong{font-size:15px}.service-admin-info small{color:#777}.service-admin-info div{font-size:13px;color:#555}
.sb-card.service-card{padding:0;overflow:hidden;display:block}.sb-service-image{display:block;width:100%;height:150px;object-fit:cover;background:#f1f2f4}.sb-service-image.placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#f7f7f8,#eceef1);color:#b5b7bb;font-size:38px;font-weight:900}.sb-service-copy{padding:15px 17px;display:grid;gap:5px}.sb-service-copy strong{font-size:16px}.sb-service-copy span{color:var(--pm-primary);font-weight:800}.sb-service-copy small{color:#7a7d82;font-weight:700}
@media(max-width:1000px){.services-layout{grid-template-columns:1fr}}@media(max-width:640px){.service-admin-row{grid-template-columns:72px minmax(0,1fr)}.service-admin-thumb{width:72px;height:64px}.service-admin-row>.btn{grid-column:1/-1;width:100%;text-align:center}.current-service-photo{align-items:flex-start;flex-direction:column}}

/* v1.4 professionals module */
.team-admin-list{display:grid;gap:14px}.team-admin-row{display:grid;grid-template-columns:82px 1fr auto;gap:14px;align-items:center;border:1px solid #eceef2;border-radius:16px;padding:14px}.team-admin-row.inactive{opacity:.72}.team-avatar{width:82px;height:82px;border-radius:18px;background:#f4f5f7;display:grid;place-items:center;overflow:hidden}.team-avatar img{width:100%;height:100%;object-fit:cover}.team-avatar span{font-size:28px;font-weight:900;color:#666}.team-admin-info strong{display:block;font-size:18px;margin-bottom:4px}.team-admin-info small{color:#6f737a}.assign-box{display:grid;gap:10px;padding:14px;border:1px solid #eceef2;border-radius:16px;background:#fafbfc}.service-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e2e5e9;border-radius:14px;background:#fff;font-size:13px!important;font-weight:700!important}.service-check input{width:auto!important;margin-top:3px}.service-check span{display:grid;gap:3px}.service-check small{color:#7b8088}.service-check.inactive{opacity:.6}.simple-hours-list{display:grid;gap:10px}.simple-hour-row{display:grid;grid-template-columns:170px 1fr 1fr;gap:10px;align-items:end;padding:12px;border:1px solid #e2e5e9;border-radius:14px;background:#fff}.simple-hour-row.closed{opacity:.72;background:#f8f9fa}.simple-hour-day{display:grid;gap:8px}.mini{font-size:12px!important}.mini input{width:auto!important}.pro-photo-field small{color:#757a81}.professionals-layout .card{align-self:start}
@media(max-width:800px){.service-check-grid{grid-template-columns:1fr}.simple-hour-row{grid-template-columns:1fr}.team-admin-row{grid-template-columns:1fr}.team-avatar{width:74px;height:74px}.team-admin-row .btn{justify-self:start}}

/* v1.5 public booking wizard */
.smartbooking-wizard{max-width:980px;margin:0 auto}.smartbooking-wizard~*{}
.sbw-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.sbw-brand{font-size:16px;font-weight:900;letter-spacing:.08em}.sbw-shell{background:#fff;border:1px solid #e3e5e9;border-radius:24px;box-shadow:0 12px 35px rgba(0,0,0,.05);overflow:hidden}.sbw-progress{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #eceef2;background:#fafbfc}.sbw-progress-item{border:0;background:transparent;padding:15px 8px;display:flex;align-items:center;justify-content:center;gap:7px;color:#7b7f86;font-weight:800;cursor:default}.sbw-progress-item b{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e9ebef;color:#666;font-size:12px}.sbw-progress-item.active{color:#111;background:#fff}.sbw-progress-item.active b,.sbw-progress-item.done b{background:#111;color:#fff}.sbw-progress-item.done{cursor:pointer;color:#555}.sbw-step{display:none;padding:30px}.sbw-step.active{display:block;animation:sbFade .18s ease}@keyframes sbFade{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}.sbw-step h2{font-size:32px;line-height:1.05;margin:4px 0 8px;letter-spacing:-.03em}.sbw-help{margin:0 0 20px;color:#71757c}.sbw-back{border:0;background:transparent;padding:0;margin:0 0 14px;color:#777;font-weight:800;cursor:pointer}.sbw-back:hover{color:var(--pm-primary)}
.sbw-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sbw-service-card{border:1px solid #e2e5e9;border-radius:18px;overflow:hidden;background:#fff;padding:0;text-align:left;cursor:pointer;transition:.18s}.sbw-service-card:hover{transform:translateY(-2px);border-color:var(--pm-primary);box-shadow:0 8px 22px rgba(0,0,0,.06)}.sbw-service-photo{height:150px;background:#f1f2f4;overflow:hidden}.sbw-service-photo img{width:100%;height:100%;display:block;object-fit:cover}.sbw-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#f3f4f6,#e9ebef);font-size:34px;font-weight:900;color:#a0a4aa}.sbw-service-info{padding:14px 16px;display:grid;gap:4px}.sbw-service-info strong{font-size:16px}.sbw-service-info span{font-weight:900;color:var(--pm-primary)}.sbw-service-info small{color:#73777e}
.sbw-pro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sbw-pro-card{border:1px solid #e2e5e9;border-radius:18px;background:#fff;padding:18px;display:flex;align-items:center;gap:14px;text-align:left;cursor:pointer;transition:.18s}.sbw-pro-card:hover{border-color:var(--pm-primary);transform:translateY(-1px)}.sbw-pro-photo{width:72px;height:72px;border-radius:50%;overflow:hidden;flex:0 0 72px;background:#f1f2f4}.sbw-pro-photo img{width:100%;height:100%;object-fit:cover;display:block}.sbw-placeholder.round{border-radius:50%;font-size:24px}.sbw-pro-card strong{display:block;font-size:17px;margin-bottom:4px}.sbw-pro-card span{display:block;color:#73777e;font-weight:700}
.sbw-review-btn{margin-top:18px;min-width:180px}.sbw-step .sb-calendar-head{margin-top:18px}.sbw-step .sb-slots{min-height:44px}.public-main>.pagehead{display:none}.public-main{padding-top:28px}
@media(max-width:850px){.sbw-service-grid,.sbw-pro-grid{grid-template-columns:repeat(2,1fr)}.sbw-progress-item span{display:none}.sbw-progress-item{padding:12px 4px}.sbw-step{padding:24px 20px}}
@media(max-width:560px){.sbw-topbar{align-items:flex-start;flex-direction:column}.sbw-brand{font-size:14px}.sb-lang{margin:0}.sbw-service-grid,.sbw-pro-grid{grid-template-columns:1fr}.sbw-service-photo{height:180px}.sbw-step h2{font-size:27px}.sbw-step{padding:22px 16px}.sbw-pro-card{padding:14px}.sbw-review-btn{width:100%}}

/* v1.8 calendar availability */
.sb-day.unavailable,.sb-day:disabled.unavailable{background:#f1f2f4!important;color:#b7bac0!important;border-color:#e5e7ea!important;cursor:not-allowed!important;box-shadow:none!important;text-decoration:line-through;text-decoration-thickness:1px}
.sb-day.unavailable:hover{border-color:#e5e7ea!important;transform:none!important}
.sb-day.calendar-loading{opacity:.42;cursor:wait}
.appointment-actions{display:flex;gap:8px;flex-wrap:wrap}

/* v2.1 email marketing */
.email-sender-box{display:grid;gap:3px;background:#f8f9fb;border:1px solid #e7e9ed;border-radius:14px;padding:14px 16px;margin-bottom:16px}.email-sender-box span{font-size:11px;font-weight:900;text-transform:uppercase;color:#777}.email-sender-box strong{font-size:16px}.email-sender-box small{color:#666}.email-sender-box a{color:var(--pm-primary);font-size:12px;font-weight:800;text-decoration:none;margin-top:4px}.campaign-actions{display:flex;gap:10px;flex-wrap:wrap}.campaign-actions .btn[disabled]{opacity:.45;cursor:not-allowed}.marketing-layout .card{align-self:start}

/* v2.2 professional email marketing */
.marketing-pro-layout{display:grid;grid-template-columns:minmax(440px,.9fr) minmax(420px,1.1fr);gap:18px;align-items:start}.marketing-editor,.email-preview-card{align-self:start}.marketing-current-image{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #e4e6e9;border-radius:14px}.marketing-current-image img{width:120px;height:72px;object-fit:cover;border-radius:10px}.email-preview-stage{background:#eef0f3;border-radius:18px;padding:24px}.email-preview{max-width:640px;margin:0 auto;background:#fff;border:1px solid #e1e4e8;border-radius:18px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.05)}.preview-hero{width:100%;height:240px;object-fit:cover;display:block}.preview-image-placeholder{height:210px;background:linear-gradient(135deg,#eceff3,#f8f9fb);display:grid;place-items:center;color:#9398a0;font-weight:800}.preview-body{padding:28px}.preview-brand{font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.preview-body h1{font-size:30px;line-height:1.12;margin:0 0 16px}.preview-body #preview-message{font-size:16px;line-height:1.65;color:#333}.preview-cta{display:inline-block;margin-top:24px;padding:14px 20px;border-radius:10px;color:#fff!important;text-decoration:none;font-weight:900}.preview-footer{margin-top:30px;padding-top:18px;border-top:1px solid #eee;color:#777;font-size:12px;line-height:1.55}.marketing-history{margin-top:18px}.email-sender-box{margin-bottom:16px}.campaign-actions{display:flex;gap:10px;flex-wrap:wrap}.campaign-actions .btn[disabled]{opacity:.45;cursor:not-allowed}@media(max-width:1050px){.marketing-pro-layout{grid-template-columns:1fr}}@media(max-width:640px){.email-preview-stage{padding:10px}.preview-body{padding:20px}.preview-body h1{font-size:25px}.campaign-actions .btn{width:100%}}

/* v2.3 email preview device switch + instant image preview */
.preview-device-switch{display:flex;gap:6px;background:#f2f3f5;border-radius:999px;padding:4px}.preview-device-btn{border:0;background:transparent;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;color:#666;cursor:pointer}.preview-device-btn.active{background:#111;color:#fff}.email-preview-stage{display:flex;justify-content:center;transition:.2s ease}.email-preview{width:100%;transition:max-width .2s ease,border-radius .2s ease}.email-preview.mobile-preview{max-width:390px}.email-preview-stage.mobile-stage{padding-left:14px;padding-right:14px}.email-preview.mobile-preview .preview-hero{height:180px}.email-preview.mobile-preview .preview-body{padding:20px}.email-preview.mobile-preview .preview-body h1{font-size:25px}.email-preview.mobile-preview .preview-cta{display:block;text-align:center;width:100%}.preview-hero{background:#eef0f3}.marketing-current-image img{background:#eef0f3}
@media(max-width:640px){.preview-device-switch{width:100%;justify-content:stretch}.preview-device-btn{flex:1}.email-preview.mobile-preview{max-width:100%}}

/* v2.5 campaign list actions */
.campaign-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.inline-delete-form{display:inline;margin:0}.btn.danger{background:#fff;color:#b42318;border:1px solid #f1b7b2}.btn.danger:hover{background:#fff1f0;border-color:#e58b84}.marketing-history td:last-child{min-width:235px}
@media(max-width:700px){.campaign-row-actions{align-items:stretch;flex-direction:column}.campaign-row-actions .btn,.inline-delete-form .btn{width:100%;text-align:center}.inline-delete-form{width:100%}}

/* v2.6 premium email campaign design */
.premium-email-preview{max-width:680px;border-radius:24px;background:#fff;border:1px solid #e4e6ea;box-shadow:0 10px 28px rgba(0,0,0,.06)}
.premium-email-header{text-align:center;padding:24px 28px 18px;background:#fff}.premium-email-brand{font-size:20px;font-weight:900;letter-spacing:-.02em}.premium-accent-line{display:block;width:44px;height:3px;border-radius:3px;margin:11px auto 0}.premium-hero{margin:0 24px;width:calc(100% - 48px);height:270px;border-radius:20px;object-fit:cover}.premium-placeholder{margin:0 24px;width:calc(100% - 48px);height:240px;border-radius:20px}.premium-preview-body{padding:34px 40px 32px}.premium-kicker{font-size:11px!important;letter-spacing:.13em!important;margin-bottom:10px!important}.premium-preview-body h1{font-size:34px;line-height:1.08;letter-spacing:-.025em;margin-bottom:18px}.premium-preview-body #preview-message{font-size:17px;line-height:1.72;color:#333}.premium-cta{margin-top:28px;padding:15px 26px;border-radius:12px;font-size:16px}.premium-footer{margin-top:30px;padding-top:20px}.premium-footer strong{color:#333;font-size:13px}
.email-preview.mobile-preview.premium-email-preview{max-width:390px}.email-preview.mobile-preview .premium-email-header{padding:20px 20px 16px}.email-preview.mobile-preview .premium-hero,.email-preview.mobile-preview .premium-placeholder{margin:0 16px;width:calc(100% - 32px);height:190px;border-radius:16px}.email-preview.mobile-preview .premium-preview-body{padding:26px 22px}.email-preview.mobile-preview .premium-preview-body h1{font-size:27px}.email-preview.mobile-preview .premium-preview-body #preview-message{font-size:16px;line-height:1.62}

/* v2.7 genuinely redesigned beauty campaign */
.luxe-email-preview{max-width:680px;border-radius:26px;background:#fff;border:1px solid #dfe2e6;box-shadow:0 16px 38px rgba(20,22,26,.10);overflow:hidden}
.luxe-header{background:#151515;color:#fff;text-align:center;padding:24px 30px 22px}.luxe-eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;color:#bfc2c6;margin-bottom:7px}.luxe-brand{font-size:23px;font-weight:900;letter-spacing:-.025em}.luxe-hero{display:block;width:100%;height:300px;object-fit:cover;background:#eceff2}.luxe-placeholder{height:280px;border-radius:0;margin:0;width:100%;background:linear-gradient(135deg,#e8eaed,#f6f7f8);display:grid;place-items:center;color:#90959c;font-weight:800}.luxe-offer-wrap{text-align:center;margin-top:-17px;position:relative;z-index:1}.luxe-offer{display:inline-block;color:#fff;border-radius:999px;padding:9px 16px;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 8px 18px rgba(0,0,0,.12)}.luxe-preview-body{padding:28px 42px 30px;text-align:center}.luxe-preview-body h1{font-size:38px;line-height:1.04;letter-spacing:-.04em;margin:0 0 17px}.luxe-preview-body #preview-message{font-size:17px;line-height:1.72;color:#404040}.luxe-cta{display:block!important;width:100%;text-align:center;margin-top:27px;padding:16px 24px;border-radius:14px;font-size:16px}.luxe-location{margin-top:24px;padding:18px 22px;background:#f6f7f8;border-radius:18px;color:#74787e;font-size:12px;line-height:1.6}.luxe-location strong{display:block;color:#222;font-size:14px;margin-bottom:3px}.luxe-footer{background:#151515;color:#aeb2b7;text-align:center;padding:19px 24px;font-size:11px;line-height:1.6}
.email-preview.mobile-preview.luxe-email-preview{max-width:390px}.email-preview.mobile-preview .luxe-header{padding:20px 18px}.email-preview.mobile-preview .luxe-brand{font-size:20px}.email-preview.mobile-preview .luxe-hero,.email-preview.mobile-preview .luxe-placeholder{height:190px}.email-preview.mobile-preview .luxe-preview-body{padding:25px 22px}.email-preview.mobile-preview .luxe-preview-body h1{font-size:29px}.email-preview.mobile-preview .luxe-preview-body #preview-message{font-size:15px;line-height:1.62}.email-preview.mobile-preview .luxe-location{padding:15px 16px}

/* v3.0 creative email builder */
.mk3-layout{display:grid;grid-template-columns:minmax(520px,.95fr) minmax(480px,1.05fr);gap:18px;align-items:start}.mk3-editor,.mk3-preview-card{align-self:start}.mk3-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0;background:#f3f4f6;border-radius:12px;padding:5px}.mk3-tab{border:0;background:transparent;padding:9px 12px;border-radius:9px;font-weight:800;cursor:pointer;color:#666}.mk3-tab.active{background:#111;color:#fff}.mk3-panel{display:none}.mk3-panel.active{display:block}.mk3-template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.mk3-template{display:flex!important;gap:9px;align-items:flex-start;padding:13px;border:1px solid #e1e4e8;border-radius:14px;background:#fff;cursor:pointer}.mk3-template.selected{border-color:var(--pm-primary);box-shadow:0 0 0 2px rgba(255,107,0,.09)}.mk3-template input{width:auto!important;margin-top:3px}.mk3-template span{display:grid;gap:3px}.mk3-template small{color:#777}.mk3-color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mk3-color-grid input[type=color]{height:46px;padding:3px}.mk3-style-box{margin-top:14px;padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:#fafbfc}.mk3-style-box h3{margin:0 0 10px;font-size:15px}.mk3-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mk3-media-card{border:1px solid #e3e6ea;border-radius:14px;padding:12px;background:#fafbfc;display:grid;gap:8px}.mk3-media-card img{width:100%;height:105px;object-fit:cover;border-radius:10px}.mk3-preview-stage{background:#eef0f3;border-radius:18px;padding:24px;display:flex;justify-content:center}.mk3-preview{width:100%;max-width:680px;background:#fff;border:1px solid #e8ebef;border-radius:28px;overflow:hidden;box-shadow:0 16px 40px rgba(17,24,39,.08);transition:max-width .2s}.mk3-preview.mobile{max-width:390px}.mk3-header{text-align:center;padding:28px 28px;background:#171717;color:#fff}.mk3-header strong{font-size:28px;letter-spacing:-.02em}.mk3-logo{display:block;width:auto;max-width:100%;height:auto;max-height:140px;margin:0 auto 12px;object-fit:contain}.mk3-hero{display:block;width:100%;height:320px;object-fit:cover;padding:18px 20px 0;box-sizing:border-box;border-radius:34px}.mk3-placeholder{height:260px;background:linear-gradient(135deg,#e7e9ed,#f7f8fa);display:grid;place-items:center;color:#92969e;font-weight:800;margin:18px 20px 0;border-radius:24px}.mk3-body{padding:32px 44px;text-align:left}.mk3-kicker{font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;color:#b67a45}.mk3-body h1{font-size:48px;line-height:.98;margin:0 0 18px;color:#0f172a}.mk3-body #pv-message{font-size:17px;line-height:1.8;color:#374151}.mk3-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.mk3-gallery:empty{display:none}.mk3-gallery img{width:100%;height:138px;object-fit:cover;border-radius:16px}.mk3-gallery .pv-gallery-card{background:#fff;border:1px solid #eceef2;border-radius:18px;overflow:hidden;box-shadow:0 6px 20px rgba(17,24,39,.05)}.mk3-gallery .pv-gallery-meta{padding:12px 12px 14px}.mk3-gallery .pv-gallery-title{font-size:15px;font-weight:800;color:#111827;margin-bottom:6px}.mk3-gallery .pv-gallery-text{font-size:13px;line-height:1.55;color:#4b5563}.mk3-gallery .pv-gallery-btn{display:inline-block;margin-top:10px;padding:10px 14px;border-radius:999px;background:var(--pm-primary);color:#fff;text-decoration:none;font-weight:800;font-size:13px}.mk3-video{margin-top:22px;position:relative}.mk3-video img{width:100%;height:240px;object-fit:cover;border-radius:18px;display:block}.mk3-video .play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:999px;background:rgba(17,24,39,.78);color:#fff;display:grid;place-items:center;font-size:30px;box-shadow:0 10px 24px rgba(0,0,0,.25)}.mk3-video .video-caption{display:block;margin-top:10px;font-weight:800;text-align:center;font-size:13px;letter-spacing:.02em}.mk3-actions{display:flex;justify-content:flex-start;gap:10px;flex-wrap:wrap;margin-top:28px}.mk3-actions a{display:inline-block;background:var(--pm-primary);color:#fff;text-decoration:none;font-weight:900;padding:16px 24px;border-radius:999px}.mk3-actions a.secondary{background:#fff;border:2px solid var(--pm-primary);color:var(--pm-primary)}.mk3-footer{text-align:center;background:#fff;color:#6b7280;padding:24px;font-size:12px;line-height:1.7;border-top:1px solid #edf0f3}.mk3-footer strong{font-size:14px;color:#111827}.mk3-preview.luxury_spa{background:#fffaf5}.mk3-preview.luxury_spa .mk3-header{background:#fffaf5;color:#231b17}.mk3-preview.luxury_spa .mk3-header strong{font-size:30px}.mk3-preview.luxury_spa .mk3-body h1{font-family:Georgia,serif;font-weight:500}.mk3-preview.luxury_spa .mk3-body #pv-message{color:#5b4b3d}.mk3-preview.dark_barber{background:#151515;border-color:#2a2a2a}.mk3-preview.dark_barber .mk3-header{background:#111;color:#fff}.mk3-preview.dark_barber .mk3-body{background:#151515;color:#fff}.mk3-preview.dark_barber .mk3-body h1{font-size:46px;text-transform:uppercase;color:#fff}.mk3-preview.dark_barber #pv-message{color:#d1d5db}.mk3-preview.dark_barber .mk3-footer{background:#0f0f10;color:#c8c2b8;border-top-color:rgba(255,255,255,.08)}.mk3-preview.dark_barber .mk3-footer strong{color:#fff}.mk3-preview.mobile .mk3-hero{height:210px;padding:16px 16px 0}.mk3-preview.mobile .mk3-body{padding:24px 26px}.mk3-preview.mobile .mk3-body h1{font-size:34px}.mk3-preview.mobile .mk3-gallery{grid-template-columns:1fr!important;gap:16px;margin-top:22px}.mk3-preview.mobile .pv-gallery-card{width:100%;max-width:100%;box-sizing:border-box}.mk3-preview.mobile .pv-gallery-meta{padding:16px 16px 18px}.mk3-preview.mobile .pv-gallery-title,.mk3-preview.mobile .pv-gallery-text{overflow-wrap:anywhere;word-break:break-word}.mk3-preview.mobile .pv-gallery-btn{display:block!important;width:100%;box-sizing:border-box;text-align:center;padding:13px 16px;margin-top:14px}.mk3-preview.mobile #pv-message,.mk3-preview.mobile #pv-gallery-bottom-text,.mk3-preview.mobile #pv-buttons-bottom-text{overflow-wrap:anywhere;word-break:break-word;max-width:100%}.mk3-preview.mobile .mk3-gallery img{height:220px;object-fit:cover}.mk3-preview.mobile .mk3-video img{height:190px}.mk3-preview.mobile .mk3-video .play-badge{width:58px;height:58px;font-size:24px}
@media(max-width:1100px){.mk3-layout{grid-template-columns:1fr}.mk3-preview-card{order:-1}}@media(max-width:700px){.mk3-template-grid,.mk3-color-grid,.mk3-media-grid{grid-template-columns:1fr}.mk3-preview-stage{padding:10px}.mk3-body{padding:24px 22px}.mk3-body h1{font-size:28px}.mk3-gallery .pv-gallery-title,.mk3-gallery .pv-gallery-text,#pv-message{overflow-wrap:anywhere;word-break:break-word}.mk3-gallery .pv-gallery-btn{display:block;width:100%;text-align:center;box-sizing:border-box}}

/* v5.1 email builder usability */
.campaign-savebar{position:sticky;bottom:10px;z-index:20;margin-top:18px;padding:14px;border:1px solid #dfe3e8;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(0,0,0,.10);display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:12px;align-items:end;backdrop-filter:blur(8px)}
.campaign-savebar label{margin:0}.campaign-save-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.mk3-style-box input[type=color]{height:46px;min-height:46px;padding:4px;cursor:pointer}.mk3-style-box textarea{min-height:80px}
@media(max-width:760px){.campaign-savebar{grid-template-columns:1fr}.campaign-save-actions{justify-content:stretch}.campaign-save-actions .btn{flex:1 1 100%}}

.mk3-header.compact-header{padding-bottom:8px}.mk3-header.compact-header .mk3-logo{margin-bottom:0}.mk3-header.compact-header + #pv-hero-wrap .mk3-hero{padding-top:6px}.mk3-header.compact-header + #pv-hero-wrap .mk3-placeholder{margin-top:6px}

.mk3-preview.mobile #pv-logo-wrap{width:100%;overflow:hidden}.mk3-preview.mobile .mk3-logo{max-width:100%!important;width:auto!important;height:auto!important}.mk3-preview.mobile .mk3-header{overflow:hidden}

.mk3-gallery.single-column-image img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:16px}
.mk3-preview.mobile .mk3-gallery.single-column-image img{height:auto!important;max-height:none!important;object-fit:contain!important}

/* v6.13: galería de una columna conserva la proporción original */
.mk3-gallery.single-column-image .pv-gallery-card{overflow:visible!important}
.mk3-gallery.single-column-image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  border-radius:16px 16px 0 0!important;
}

/* v6.14: todas las columnas de galería respetan la proporción original */
.mk3-gallery img,
.mk3-preview.mobile .mk3-gallery img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
}
@media(max-width:700px){
  .mk3-gallery img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
}

/* v6.15: desktop respeta columnas configuradas; mobile siempre 1 columna */
.mk3-preview:not(.mobile) .mk3-gallery{
  gap:10px!important;
}
.mk3-preview.mobile .mk3-gallery{
  grid-template-columns:1fr!important;
  gap:16px!important;
}
.mk3-gallery img,
.mk3-preview.mobile .mk3-gallery img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
}


/* v6.17: vista previa fija mientras se edita en desktop */
@media (min-width:1101px){
  .mk3-preview-card{
    position:sticky!important;
    top:14px!important;
    align-self:start!important;
  }
  .mk3-preview-stage{
    max-height:calc(100vh - 110px)!important;
    overflow:auto!important;
    scrollbar-gutter:stable;
  }
}

/* En pantallas pequeñas vuelve al flujo normal */
@media (max-width:1100px){
  .mk3-preview-card{
    position:static!important;
    top:auto!important;
  }
  .mk3-preview-stage{
    max-height:none!important;
    overflow:visible!important;
  }
}


/* v6.18: preview fija + scroll interno real */
@media (min-width:1101px){
  .mk3-preview-card{
    position:sticky!important;
    top:14px!important;
    align-self:start!important;
    height:calc(100vh - 28px)!important;
    max-height:calc(100vh - 28px)!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .mk3-preview-card > .section-title{
    flex:0 0 auto!important;
  }

  .mk3-preview-stage{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-gutter:stable;
  }
}

@media (max-width:1100px){
  .mk3-preview-card{
    height:auto!important;
    max-height:none!important;
    display:block!important;
    overflow:visible!important;
  }

  .mk3-preview-stage{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}


/* v6.19: el email dentro de Vista previa tiene su PROPIO scroll */
@media (min-width:1101px){
  .mk3-preview-card{
    position:sticky!important;
    top:14px!important;
    height:calc(100vh - 28px)!important;
    max-height:calc(100vh - 28px)!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  .mk3-preview-stage{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    display:flex!important;
    justify-content:center!important;
    align-items:flex-start!important;
  }

  .mk3-preview{
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-gutter:stable;
  }

  .mk3-preview::-webkit-scrollbar{
    width:10px;
  }

  .mk3-preview::-webkit-scrollbar-thumb{
    background:rgba(0,0,0,.25);
    border-radius:999px;
  }

  .mk3-preview::-webkit-scrollbar-track{
    background:rgba(0,0,0,.05);
  }
}

@media (max-width:1100px){
  .mk3-preview{
    max-height:none!important;
    overflow:visible!important;
  }
}


/* v6.20: aire superior del logo + footer configurable */
.mk3-header{
  padding-top:34px!important;
}
.mk3-header.compact-header{
  padding-top:42px!important;
  padding-bottom:10px!important;
}
.mk3-footer{
  background-clip:padding-box!important;
}


/* =========================================================
   v6.24 — PubliMerk Premium UI
   ========================================================= */
:root{
  --pm-orange:var(--pm-primary);
  --pm-orange-soft:#fff2e9;
  --pm-ink:#141414;
  --pm-muted:#71717a;
  --pm-line:#e8e8ea;
  --pm-bg:#f4f4f5;
  --pm-panel:#ffffff;
}
body{background:var(--pm-bg);color:var(--pm-ink)}
.pm-sidebar{
  width:238px!important;
  background:#fff!important;
  color:#171717!important;
  border-right:1px solid var(--pm-line);
  padding:18px 14px 14px!important;
  z-index:60;
}
.pm-brand{display:flex;align-items:center;gap:10px;padding:2px 8px 14px}
.pm-brand-mark{width:38px;height:38px;border-radius:12px;background:var(--pm-orange);color:#fff;display:grid;place-items:center;font-weight:1000;font-size:24px}
.pm-brand strong{font-size:21px;letter-spacing:-.8px;color:#111}.pm-brand strong span{color:var(--pm-orange)}
.pm-brand small{display:block;color:#8b8b93;font-size:10px;text-transform:uppercase;letter-spacing:1.1px;margin-top:1px}
.pm-sidebar-scroll{overflow:auto;min-height:0;flex:1}
.pm-nav{margin-top:8px!important;display:block!important}
.pm-nav-group{margin-bottom:16px}.pm-nav-label{font-size:10px;color:#a1a1aa;font-weight:900;letter-spacing:1.2px;text-transform:uppercase;padding:0 10px 6px}
.pm-nav-item{display:flex!important;align-items:center;gap:10px;color:#6f6f76!important;padding:9px 10px!important;border-radius:11px!important;margin:2px 0;text-decoration:none;font-size:13px;font-weight:750}
.pm-nav-item:hover{background:#f7f7f8!important;color:#111!important}
.pm-nav-item.active{background:var(--pm-orange-soft)!important;color:var(--pm-orange)!important}
.pm-nav-icon{width:26px;height:26px;border:1px solid #ececef;border-radius:8px;display:grid;place-items:center;background:#fff;color:inherit;font-weight:900;flex:none}
.pm-nav-item.active .pm-nav-icon{border-color:#ffd4bc;background:#fff8f4}
.pm-sidefoot{margin-top:auto!important;display:grid!important;grid-template-columns:36px 1fr 28px;align-items:center;gap:9px;padding:12px 8px!important;border-top:1px solid var(--pm-line)}
.pm-avatar,.pm-top-avatar{width:36px;height:36px;border-radius:999px;background:var(--pm-orange);color:#fff;display:grid;place-items:center;font-weight:900}
.pm-user{display:grid;gap:1px;min-width:0}.pm-user strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-user span{font-size:10px;color:#9a9aa1}
.pm-logout{color:#888;text-decoration:none;font-size:18px;text-align:center}
.pm-main-shell{margin-left:238px!important;padding:0!important;max-width:none!important;min-height:100vh}
.pm-topbar{height:64px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--pm-line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:40;backdrop-filter:blur(12px)}
.pm-search{width:min(420px,45vw);height:40px;border:1px solid #dedee2;background:#fafafa;border-radius:12px;display:flex;align-items:center;gap:9px;padding:0 12px}
.pm-search span{color:#777;font-size:20px}.pm-search input{border:0!important;background:transparent!important;padding:0!important;outline:none;box-shadow:none;font-size:13px}
.pm-top-actions{display:flex;align-items:center;gap:9px}.pm-top-icon{width:36px;height:36px;border:1px solid var(--pm-line);border-radius:10px;display:grid;place-items:center;text-decoration:none;color:#444;background:#fff}
.pm-top-avatar{width:34px;height:34px;font-size:12px}
.pm-content{padding:26px 30px 40px;max-width:1600px;margin:0 auto}
.pm-pagehead{margin-bottom:18px!important}.pm-pagehead h1{font-size:25px!important;letter-spacing:-.8px}
.pm-dashboard{display:grid;gap:18px}.pm-welcome{display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;padding:4px 2px 8px}
.pm-welcome-kicker,.pm-eyebrow{color:var(--pm-orange);font-size:10px;font-weight:950;letter-spacing:1.2px}
.pm-welcome h2{font-size:30px;margin:5px 0 7px;letter-spacing:-1px}.pm-welcome p{margin:0;color:#707079;font-size:14px}
.pm-welcome-meta{display:flex;align-items:center;gap:10px}.pm-time-chip,.pm-date-chip{background:#fff;border:1px solid var(--pm-line);border-radius:14px;padding:12px 16px;box-shadow:0 5px 18px rgba(0,0,0,.025)}
.pm-time-chip{display:flex;align-items:baseline;gap:5px}.pm-time-chip span{font-size:21px;font-weight:900}.pm-time-chip small{font-size:10px;color:#777;font-weight:800}.pm-date-chip{font-size:13px;font-weight:800}
.pm-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.pm-kpi-card{background:#fff;border:1px solid var(--pm-line);border-radius:18px;padding:18px;display:flex;gap:13px;align-items:flex-start;text-decoration:none;color:#111;box-shadow:0 7px 22px rgba(0,0,0,.028);transition:.18s ease}
.pm-kpi-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.055)}
.pm-kpi-icon{width:40px;height:40px;border-radius:12px;background:var(--pm-orange-soft);color:var(--pm-orange);display:grid;place-items:center;font-size:19px;font-weight:900}
.pm-kpi-card div{display:grid}.pm-kpi-card small{font-size:11px;color:#818189;font-weight:800}.pm-kpi-card strong{font-size:22px;margin:4px 0 2px}.pm-kpi-card em{font-style:normal;font-size:10px;color:var(--pm-orange);font-weight:800}
.pm-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px}
.pm-dashboard-lower{grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr)}
.pm-panel{background:#fff;border:1px solid var(--pm-line);border-radius:20px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.028)}
.pm-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:13px}.pm-panel-head h3{font-size:16px;margin:3px 0 0}.pm-panel-head>a{font-size:11px;color:var(--pm-orange);text-decoration:none;font-weight:850}.pm-panel-head>strong{font-size:12px;background:#f5f5f6;border-radius:999px;padding:6px 9px}
.pm-progress{height:5px;background:#eeeef0;border-radius:999px;overflow:hidden;margin-bottom:12px}.pm-progress span{display:block;height:100%;background:var(--pm-orange);border-radius:999px}
.pm-checklist{display:grid}.pm-check-item{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:9px;padding:9px 3px;border-bottom:1px solid #f0f0f2;text-decoration:none;color:#242428;font-size:12px}.pm-check-item:last-child{border-bottom:0}.pm-check-circle{width:19px;height:19px;border:1.5px solid #d8d8dc;border-radius:999px;display:grid;place-items:center;color:#fff;font-size:10px}.pm-check-item.done .pm-check-circle{background:var(--pm-orange);border-color:var(--pm-orange)}.pm-check-item em{font-style:normal;color:var(--pm-orange);font-size:10px;font-weight:850}.pm-check-item.done em{color:#999}
.pm-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pm-quick-grid a{border:1px solid var(--pm-line);border-radius:16px;padding:15px;text-decoration:none;color:#111;display:grid;gap:3px;background:#fcfcfc}.pm-quick-grid a:hover{border-color:#ffc8aa;background:#fff8f4}.pm-quick-grid a>span{width:36px;height:36px;border-radius:11px;background:var(--pm-orange-soft);color:var(--pm-orange);display:grid;place-items:center;font-size:18px;margin-bottom:6px}.pm-quick-grid strong{font-size:12px}.pm-quick-grid small{font-size:10px;color:#8a8a91}
.pm-appointment-list{display:grid}.pm-appointment-row{display:grid;grid-template-columns:48px 1fr auto auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f0f0f2}.pm-appointment-row:last-child{border-bottom:0}.pm-appt-date{width:44px;height:44px;border-radius:12px;background:#f7f7f8;display:grid;place-items:center;align-content:center}.pm-appt-date strong{font-size:15px;line-height:1}.pm-appt-date span{font-size:8px;color:#888;font-weight:900;margin-top:3px}.pm-appt-main{display:grid;gap:2px}.pm-appt-main strong{font-size:12px}.pm-appt-main span,.pm-appt-time{font-size:10px;color:#7b7b82}.pm-appt-time{font-weight:800}
.pm-status-list{display:grid}.pm-status-list a{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #f0f0f2;text-decoration:none;color:#242428}.pm-status-list a:last-child{border-bottom:0}.pm-status-list span{font-size:11px;color:#6f6f76}.pm-status-list strong{font-size:12px}.pm-status-list em{font-style:normal;color:var(--pm-orange);font-size:10px;font-weight:800}.pm-empty{padding:28px;text-align:center;color:#999;font-size:12px}
.card,.auth-card,.booking-card{border-color:var(--pm-line);box-shadow:0 8px 24px rgba(0,0,0,.025)}
.btn{background:var(--pm-orange);border-radius:11px}.btn.ghost,.btn.ghost-dark{background:#fff!important;color:#222!important;border:1px solid #ddd!important}
input,select,textarea{border-color:#dddde1;border-radius:11px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pm-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--pm-primary) 8%, transparent)}
table th{color:#8a8a92;font-weight:850}table td{color:#2c2c30}
@media(max-width:1180px){.pm-kpi-grid{grid-template-columns:1fr 1fr}.pm-dashboard-grid,.pm-dashboard-lower{grid-template-columns:1fr}}
@media(max-width:980px){.pm-sidebar{position:static!important;width:auto!important;border-right:0;border-bottom:1px solid var(--pm-line)}.pm-sidebar-scroll{max-height:none}.pm-main-shell{margin-left:0!important}.pm-topbar{position:static}.pm-nav{display:grid!important;grid-template-columns:1fr 1fr}.pm-sidefoot{margin-top:12px!important}.pm-content{padding:20px}.pm-search{width:60vw}}
@media(max-width:640px){.pm-topbar{padding:0 14px}.pm-content{padding:16px}.pm-search{width:100%;max-width:260px}.pm-top-icon{display:none}.pm-welcome{align-items:flex-start;flex-direction:column}.pm-welcome-meta{width:100%}.pm-kpi-grid{grid-template-columns:1fr}.pm-quick-grid{grid-template-columns:1fr 1fr}.pm-appointment-row{grid-template-columns:44px 1fr auto}.pm-appointment-row .pill{display:none}.pm-nav{grid-template-columns:1fr}.pm-dashboard{gap:14px}}


/* =========================================================
   v6.26 — PubliMerk Fluid App UI
   ========================================================= */
:root{
  --pm-sidebar:226px;
  --pm-orange:var(--pm-primary);
  --pm-bg:#f6f6f7;
  --pm-panel:#fff;
  --pm-line:#e9e9ec;
  --pm-text:#17171a;
  --pm-muted:#7b7b84;
}

/* Base app shell */
html{scroll-behavior:smooth}
body{
  background:var(--pm-bg)!important;
  color:var(--pm-text);
  overflow-x:hidden;
}
.pm-sidebar{
  width:var(--pm-sidebar)!important;
  padding:14px 12px 12px!important;
  border-right:1px solid var(--pm-line)!important;
  box-shadow:none!important;
}
.pm-main-shell{
  margin-left:var(--pm-sidebar)!important;
  min-height:100vh;
  background:var(--pm-bg);
}

/* Brand */
.pm-brand{
  padding:4px 8px 16px!important;
  min-height:56px;
}
.pm-brand-mark{
  width:36px!important;
  height:36px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.pm-brand strong{font-size:19px!important}
.pm-brand small{font-size:9px!important;letter-spacing:.9px!important}

/* Navigation */
.pm-nav-group{margin-bottom:14px!important}
.pm-nav-label{
  padding:0 9px 5px!important;
  font-size:9px!important;
  letter-spacing:1px!important;
}
.pm-nav-item{
  min-height:39px;
  padding:7px 9px!important;
  border-radius:10px!important;
  font-size:12.5px!important;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.pm-nav-item:hover{
  transform:translateX(2px);
  background:#f7f7f8!important;
}
.pm-nav-item.active{
  background:#fff2ea!important;
  color:var(--pm-orange)!important;
}
.pm-nav-icon{
  width:24px!important;
  height:24px!important;
  border-radius:7px!important;
  border:0!important;
  background:transparent!important;
}

/* Top bar */
.pm-topbar{
  height:58px!important;
  padding:0 24px!important;
  border-bottom:1px solid var(--pm-line)!important;
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:blur(16px);
}
.pm-search{
  height:36px!important;
  max-width:390px;
  border-radius:10px!important;
  background:#f8f8f9!important;
  border:1px solid #e5e5e7!important;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.pm-search:focus-within{
  border-color:#cfcfd4!important;
  box-shadow:0 0 0 3px rgba(0,0,0,.025);
}
.pm-top-icon{
  width:34px!important;
  height:34px!important;
  border:0!important;
  background:transparent!important;
}
.pm-top-icon:hover{background:#f3f3f4!important}
.pm-top-avatar{width:32px!important;height:32px!important}

/* Content */
.pm-content{
  max-width:1480px!important;
  padding:24px 28px 44px!important;
}
.pm-pagehead{
  margin-bottom:16px!important;
}
.pm-pagehead h1{
  font-size:24px!important;
  font-weight:800!important;
  letter-spacing:-.65px!important;
}

/* Panels/cards */
.card,.pm-panel{
  border:1px solid var(--pm-line)!important;
  border-radius:16px!important;
  box-shadow:none!important;
  background:#fff!important;
}
.card{
  padding:20px!important;
}
.pm-panel{
  padding:18px!important;
}
.card:hover,.pm-panel:hover{
  border-color:#dfdfe3!important;
}
.section-title h2,.pm-panel-head h3{
  letter-spacing:-.35px!important;
}
.section-title{
  margin-bottom:14px!important;
}

/* Forms */
label{
  font-size:12px!important;
  font-weight:700!important;
  color:#303036!important;
}
input,select,textarea{
  min-height:40px!important;
  border-radius:9px!important;
  border:1px solid #dedee2!important;
  background:#fff!important;
  transition:border-color .14s ease,box-shadow .14s ease,background .14s ease;
}
textarea{min-height:88px!important}
input:hover,select:hover,textarea:hover{
  border-color:#cfcfd4!important;
}
input:focus,select:focus,textarea:focus{
  border-color:#bcbcc2!important;
  box-shadow:0 0 0 3px rgba(0,0,0,.035)!important;
}

/* Buttons */
.btn{
  min-height:38px;
  border-radius:9px!important;
  padding:9px 15px!important;
  font-weight:800!important;
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease;
}
.btn:hover{
  transform:translateY(-1px);
  filter:brightness(.98);
}
.btn.ghost,.btn.ghost-dark{
  background:#fff!important;
  border:1px solid #dedee2!important;
}
.btn.small{min-height:32px!important;padding:6px 11px!important}

/* Tables */
.table-wrap{
  border:1px solid #efeff1;
  border-radius:12px;
  overflow:hidden;
}
table{
  border-collapse:separate!important;
  border-spacing:0!important;
}
table th{
  background:#fafafa;
  font-size:10px!important;
  letter-spacing:.45px;
  text-transform:uppercase;
  padding:11px 12px!important;
  border-bottom:1px solid #ececef!important;
}
table td{
  padding:12px!important;
  border-bottom:1px solid #f0f0f2!important;
}
table tr:last-child td{border-bottom:0!important}
table tr:hover td{background:#fcfcfd}

/* Dashboard smoother hierarchy */
.pm-welcome{
  padding:2px 0 6px!important;
}
.pm-welcome h2{
  font-size:28px!important;
  margin-bottom:5px!important;
}
.pm-welcome p{
  font-size:13px!important;
}
.pm-kpi-grid{gap:12px!important}
.pm-kpi-card{
  border-radius:15px!important;
  padding:16px!important;
  box-shadow:none!important;
}
.pm-kpi-card:hover{
  box-shadow:0 8px 20px rgba(0,0,0,.035)!important;
}
.pm-dashboard-grid,.pm-dashboard-lower{gap:12px!important}

/* Keep the app responsive */
@media(max-width:980px){
  .pm-sidebar{
    width:auto!important;
  }
  .pm-main-shell{
    margin-left:0!important;
  }
}
@media(max-width:700px){
  .pm-content{padding:16px!important}
  .pm-topbar{padding:0 14px!important}
}

/* subtle animation */
@keyframes pmFadeIn{
  from{opacity:0;transform:translateY(4px)}
  to{opacity:1;transform:none}
}
.pm-content{animation:pmFadeIn .18s ease-out}


/* =========================================================
   v6.27 — Dashboard simplificado
   ========================================================= */
.pm-dashboard-simple{
  display:grid;
  gap:16px;
}
.pm-hero-simple{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding:2px 0 6px;
}
.pm-hero-simple h2{
  margin:4px 0 3px;
  font-size:30px;
  letter-spacing:-1px;
}
.pm-hero-simple p{
  margin:0;
  color:#777780;
  font-size:13px;
}
.pm-simple-eyebrow{
  font-size:10px;
  font-weight:900;
  letter-spacing:1.1px;
  color:var(--pm-primary);
}
.pm-simple-date{
  font-size:12px;
  font-weight:800;
  color:#66666f;
  background:#fff;
  border:1px solid #e8e8eb;
  border-radius:11px;
  padding:10px 13px;
}
.pm-simple-kpis{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.pm-simple-kpis>a{
  display:flex;
  align-items:center;
  gap:13px;
  background:#fff;
  border:1px solid #e8e8eb;
  border-radius:15px;
  padding:16px;
  text-decoration:none;
  color:#17171a;
}
.pm-simple-kpis>a:hover{
  border-color:#dcdce0;
}
.pm-simple-kpi-icon{
  width:38px;
  height:38px;
  border-radius:11px;
  background:#fff2ea;
  color:var(--pm-primary);
  display:grid;
  place-items:center;
  font-size:18px;
  flex:none;
}
.pm-simple-kpis small{
  display:block;
  color:#777780;
  font-size:10px;
  font-weight:800;
  margin-bottom:3px;
}
.pm-simple-kpis strong{
  font-size:21px;
  line-height:1;
}
.pm-simple-main{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);
  gap:14px;
}
.pm-simple-side{
  display:grid;
  gap:14px;
  align-content:start;
}
.pm-simple-panel{
  background:#fff;
  border:1px solid #e8e8eb;
  border-radius:17px;
  padding:18px;
}
.pm-simple-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.pm-simple-panel-head h3{
  margin:3px 0 0;
  font-size:16px;
  letter-spacing:-.35px;
}
.pm-simple-panel-head>a{
  color:var(--pm-primary);
  font-size:10px;
  font-weight:850;
  text-decoration:none;
}
.pm-simple-appts{
  display:grid;
}
.pm-simple-appt{
  display:grid;
  grid-template-columns:46px 1fr auto;
  gap:12px;
  align-items:center;
  padding:11px 0;
  border-bottom:1px solid #f0f0f2;
}
.pm-simple-appt:last-child{
  border-bottom:0;
}
.pm-simple-datebox{
  width:42px;
  height:42px;
  border-radius:11px;
  background:#f7f7f8;
  display:grid;
  align-content:center;
  justify-items:center;
}
.pm-simple-datebox strong{
  font-size:14px;
  line-height:1;
}
.pm-simple-datebox span{
  font-size:8px;
  font-weight:900;
  color:#888891;
  margin-top:3px;
}
.pm-simple-appt-info{
  display:grid;
  gap:3px;
}
.pm-simple-appt-info strong{
  font-size:12px;
}
.pm-simple-appt-info span{
  font-size:10px;
  color:#7b7b84;
}
.pm-simple-time{
  font-size:10px;
  font-weight:800;
  color:#55555d;
}
.pm-simple-empty{
  min-height:250px;
  display:grid;
  place-items:center;
  align-content:center;
  text-align:center;
  gap:6px;
  color:#85858d;
}
.pm-simple-empty>span{
  width:42px;
  height:42px;
  border-radius:999px;
  background:#fff2ea;
  color:var(--pm-primary);
  display:grid;
  place-items:center;
  font-size:19px;
}
.pm-simple-empty strong{
  color:#29292d;
  font-size:13px;
}
.pm-simple-empty small{
  font-size:10px;
  margin-bottom:6px;
}
.pm-simple-actions{
  display:grid;
  gap:8px;
}
.pm-simple-actions>a{
  display:grid;
  grid-template-columns:36px 1fr;
  align-items:center;
  gap:10px;
  border:1px solid #eeeeef;
  border-radius:12px;
  padding:11px;
  text-decoration:none;
  color:#17171a;
}
.pm-simple-actions>a:hover{
  background:#fafafa;
  border-color:#e2e2e4;
}
.pm-simple-actions>a>span{
  width:34px;
  height:34px;
  border-radius:10px;
  background:#fff2ea;
  color:var(--pm-primary);
  display:grid;
  place-items:center;
}
.pm-simple-actions div{
  display:grid;
  gap:2px;
}
.pm-simple-actions strong{
  font-size:11px;
}
.pm-simple-actions small{
  font-size:9px;
  color:#85858d;
}
.pm-simple-status{
  display:grid;
}
.pm-simple-status a{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:10px;
  padding:11px 0;
  border-bottom:1px solid #f0f0f2;
  text-decoration:none;
  color:#242428;
}
.pm-simple-status a:last-child{
  border-bottom:0;
}
.pm-simple-status span{
  font-size:10px;
  color:#707079;
}
.pm-simple-status strong{
  font-size:11px;
}
.pm-simple-status strong.ok{
  color:#16803a;
}
.pm-simple-status strong.warn{
  color:#d97706;
}
@media(max-width:1150px){
  .pm-simple-kpis{grid-template-columns:1fr 1fr}
  .pm-simple-main{grid-template-columns:1fr}
}
@media(max-width:650px){
  .pm-hero-simple{align-items:flex-start;flex-direction:column}
  .pm-simple-kpis{grid-template-columns:1fr}
  .pm-simple-appt{grid-template-columns:42px 1fr}
  .pm-simple-time{grid-column:2}
}


/* v6.31 — Tipografía grande + selector bilingüe visible */
.pm-nav-label{font-size:12px!important}
.pm-nav-item{font-size:16px!important;min-height:48px!important;font-weight:800!important}
.pm-nav-icon{width:30px!important;height:30px!important;font-size:15px!important}
.pm-brand strong{font-size:25px!important}
.pm-brand small{font-size:11px!important}
.pm-user strong{font-size:14px!important}
.pm-user span{font-size:12px!important}
.pm-search{height:42px!important;max-width:460px!important}
.pm-search input{font-size:16px!important}
.pm-pagehead h1{font-size:32px!important}

.pm-top-actions{display:flex!important;align-items:center!important;gap:10px!important}
.pm-lang-switch{display:flex!important;align-items:center;gap:4px;background:#fff;border:1px solid #dddde2;border-radius:12px;padding:4px}
.pm-lang-btn{display:grid;place-items:center;min-width:44px;height:34px;padding:0 10px;border-radius:9px;text-decoration:none;color:#555;font-size:14px;font-weight:900}
.pm-lang-btn.active{background:#111;color:#fff}
.pm-top-action{display:inline-flex!important;align-items:center;gap:7px;height:40px;padding:0 13px;background:#fff;border:1px solid #dddde2;border-radius:11px;color:#222;text-decoration:none;font-size:14px;font-weight:850}
.pm-top-action:hover{border-color:#ffb58d;background:#fff8f4}
.pm-top-avatar{width:38px!important;height:38px!important;font-size:14px!important}

.pm-hero-simple h2{font-size:42px!important;line-height:1.05!important}
.pm-hero-simple p{font-size:17px!important}
.pm-simple-eyebrow{font-size:12px!important}
.pm-simple-date{font-size:15px!important;padding:12px 16px!important}
.pm-simple-kpis small{font-size:14px!important}
.pm-simple-kpis strong{font-size:34px!important}
.pm-simple-kpi-icon{width:48px!important;height:48px!important;font-size:22px!important}
.pm-simple-panel-head h3{font-size:24px!important}
.pm-simple-panel-head>a{font-size:14px!important}
.pm-simple-appt-info strong{font-size:16px!important}
.pm-simple-appt-info span,.pm-simple-time{font-size:13px!important}
.pm-simple-empty strong{font-size:18px!important}
.pm-simple-empty small{font-size:13px!important}
.pm-simple-actions strong{font-size:16px!important}
.pm-simple-actions small{font-size:13px!important}
.pm-simple-actions>a{padding:14px!important;grid-template-columns:42px 1fr!important}
.pm-simple-actions>a>span{width:40px!important;height:40px!important;font-size:19px!important}
.pm-simple-status span{font-size:14px!important}
.pm-simple-status strong{font-size:14px!important}

label{font-size:14px!important}
input,select,textarea{font-size:16px!important}
.btn{font-size:15px!important}
.btn.small{font-size:14px!important}
table th{font-size:12px!important}
table td{font-size:15px!important}

@media(max-width:980px){
  .pm-topbar{height:auto!important;min-height:64px!important;flex-wrap:wrap!important;gap:10px!important;padding:10px 14px!important}
  .pm-search{width:100%!important;max-width:none!important}
  .pm-top-actions{width:100%!important;justify-content:flex-end!important;flex-wrap:wrap!important}
}
@media(max-width:640px){
  .pm-top-action span{display:none}
  .pm-top-action{width:40px;padding:0;justify-content:center}
  .pm-hero-simple h2{font-size:34px!important}
  .pm-simple-kpis strong{font-size:28px!important}
}

/* =========================================================
   PubliMerk v6.48 — Tipografía / legibilidad global
   Inspirada en una interfaz SaaS limpia: Segoe UI / system
   ========================================================= */
html{font-size:16px}
body{
  font-family:"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:16px!important;
  line-height:1.45!important;
  letter-spacing:0!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.main{max-width:none!important}
.pagehead h1{
  font-size:30px!important;
  line-height:1.15!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}
h1,h2,h3{
  font-family:"Segoe UI",Arial,Helvetica,sans-serif!important;
  letter-spacing:-.02em;
}
h2{font-size:24px!important;line-height:1.2!important;font-weight:700!important}
h3{font-size:19px!important;line-height:1.25!important;font-weight:700!important}

.sidebar nav a,.sidefoot a{
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:500!important;
  padding:11px 12px!important;
}
.brand{font-size:22px!important}
.brand span{font-size:12px!important}

.card,.auth-card,.booking-card{
  font-size:15px!important;
}
label{
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:600!important;
  gap:7px!important;
}
input,select,textarea{
  min-height:44px!important;
  padding:10px 12px!important;
  font-family:"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.35!important;
}
textarea{min-height:100px!important}
input::placeholder,textarea::placeholder{font-size:15px!important;color:#8a8f98!important}
select option{font-size:15px!important}

.btn{
  font-family:"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.2!important;
  padding:11px 16px!important;
}
.btn.small{font-size:14px!important;padding:9px 12px!important}

th{
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:700!important;
}
td{
  font-size:15px!important;
  line-height:1.4!important;
}
th,td{padding:13px 12px!important}

.muted{
  font-size:14px!important;
  line-height:1.45!important;
}
.pill,.tax-pill{
  font-size:13px!important;
}
.notice{
  font-size:15px!important;
  line-height:1.4!important;
}
.eyebrow{
  font-size:12px!important;
  line-height:1.2!important;
}

.section-title h2{font-size:24px!important}
.section-title p{font-size:14px!important}

.kpi span{font-size:14px!important}
.kpi strong{font-size:32px!important}

@media(max-width:980px){
  body{font-size:16px!important}
  .pagehead h1{font-size:28px!important}
}
@media(max-width:640px){
  .pagehead h1{font-size:26px!important}
  h2{font-size:22px!important}
  label,input,select,textarea,.btn,td{font-size:15px!important}
}

/* =========================================================
   v1.7 — Menú lateral por módulos (acordeón)
   ========================================================= */
.pm-nav-group{margin-bottom:8px!important}
.pm-nav-label.pm-nav-toggle{
  width:100%;display:flex!important;align-items:center;justify-content:space-between;gap:10px;
  border:0;background:transparent;color:#8a8f98;cursor:pointer;text-align:left;
  padding:10px 10px!important;border-radius:10px;font:inherit;font-size:12px!important;font-weight:950!important;
  letter-spacing:.08em!important;text-transform:uppercase;line-height:1.2;
}
.pm-nav-label.pm-nav-toggle:hover{background:#f7f7f8;color:#36383d}
.pm-nav-chevron{font-size:16px;line-height:1;transition:transform .18s ease;transform:rotate(-90deg)}
.pm-nav-group.is-open .pm-nav-chevron{transform:rotate(0deg)}
.pm-nav-items{display:none}
.pm-nav-group.is-open .pm-nav-items{display:block}
.pm-nav-items .pm-nav-item{margin-left:4px!important}
@media(max-width:980px){
  .pm-nav{display:block!important;grid-template-columns:none!important}
  .pm-nav-label.pm-nav-toggle{font-size:13px!important;min-height:44px}
}

/* v1.7 global binary controls: green responsive switches */
input[type="checkbox"]:not(.pm-native-checkbox){
  -webkit-appearance:none;appearance:none;width:44px;height:24px;min-width:44px;min-height:24px;margin:0 8px 0 0;border:1px solid #cfd5dc;border-radius:999px;vertical-align:middle;cursor:pointer;
  background:radial-gradient(circle at 12px 50%,#fff 0 8px,transparent 9px),#d7dce1;box-shadow:none;transition:background .18s,border-color .18s;
}
input[type="checkbox"]:not(.pm-native-checkbox):checked{background:radial-gradient(circle at calc(100% - 12px) 50%,#fff 0 8px,transparent 9px),#22a447;border-color:#22a447}
input[type="checkbox"]:not(.pm-native-checkbox):focus-visible{outline:none;box-shadow:0 0 0 4px rgba(34,164,71,.16)}
input[type="checkbox"]:not(.pm-native-checkbox):disabled{cursor:not-allowed;opacity:.5}
label.check,label.ap-check,.tax-toggle,.bk-break-toggle{align-items:center!important}

/* v9.2: explicit enable switch, insulated from generic form styles. */
input.pm-green-enable[type="checkbox"]{appearance:none!important;-webkit-appearance:none!important;display:inline-block!important;position:relative!important;opacity:1!important;pointer-events:auto!important;width:48px!important;min-width:48px!important;max-width:48px!important;height:28px!important;min-height:28px!important;padding:0!important;margin:8px 10px 8px 0!important;border:1px solid #cbd2d9!important;border-radius:999px!important;background:radial-gradient(circle at 13px 50%,#fff 0 9px,transparent 10px),#d7dce1!important;box-shadow:none!important;vertical-align:middle!important;flex:0 0 48px!important;cursor:pointer!important}
input.pm-green-enable[type="checkbox"]:checked{background:radial-gradient(circle at calc(100% - 13px) 50%,#fff 0 9px,transparent 10px),#22a447!important;border-color:#22a447!important}
input.pm-green-enable[type="checkbox"]:focus-visible{outline:3px solid #157637!important;outline-offset:3px!important}
input.pm-green-enable[type="checkbox"]:disabled{opacity:.55!important;cursor:not-allowed!important}
label:has(>input.pm-green-enable){min-width:0;min-height:44px;overflow-wrap:anywhere}
@media(max-width:700px){.pm-radio-grid{grid-template-columns:minmax(0,1fr)!important}.mod-grid{grid-template-columns:minmax(0,1fr)!important}input[type="file"]{max-width:100%;min-width:0;width:100%}.pm-radio,.mod-card{min-width:0;white-space:normal}}
/* Invoice lines: all controls stay inside the editor, matching Estimates. */
.invoice-item{grid-template-columns:minmax(180px,1fr) 64px 90px 132px minmax(100px,130px) 120px 96px!important}
.invoice-item>*{min-width:0!important}.invoice-item input,.invoice-item select{min-width:0!important;width:100%}.invoice-item .remove-line{white-space:nowrap;min-height:44px}
@media(max-width:1250px){.invoice-item{grid-template-columns:repeat(3,minmax(0,1fr))!important}.invoice-item .item-desc{grid-column:1/-1}.invoice-item .remove-line{justify-self:end;width:96px!important}}
@media(max-width:600px){.invoice-item{grid-template-columns:repeat(2,minmax(0,1fr))!important}.invoice-item .item-desc{grid-column:1/-1}}

.pm-green-enable + .mk-switch-track{display:none!important}input.pm-green-enable[type="checkbox"]::before,input.pm-green-enable[type="checkbox"]::after{content:none!important}
