/* GradoBeauty 0.28.0 — capa funcional consolidada. */
/* El núcleo común se carga después y es el único propietario de estructura global. */

/* Migrado desde gradobeauty.css. */
:root{--gb-blue:#3659d9;--gb-violet:#8548d8;--gb-ink:#172033;--gb-soft:#f3f5ff;--gb-border:#e2e6f3;--gb-green:#20a66a}.gb-wrap{max-width:1180px;color:var(--gb-ink)}.gb-hero{padding:34px;border-radius:22px;background:linear-gradient(125deg,#fff 0%,#eef2ff 55%,#f4eaff 100%);margin:22px 0}.gb-hero h1,.gb-heading h1{font-size:36px;line-height:1.1;margin:5px 0}.gb-hero p,.gb-heading p{font-size:16px;color:#667085}.gb-kicker{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--gb-violet)}.gb-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:18px 0}.gb-card,.gb-panel{background:#fff;border:1px solid var(--gb-border);border-radius:18px;padding:22px;box-shadow:0 7px 22px rgba(42,50,90,.05)}.gb-card strong{display:block;font-size:32px;color:var(--gb-blue)}.gb-card span{color:#667085}.gb-heading{display:flex;justify-content:space-between;align-items:end;margin:28px 0 16px}.gb-grid{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(420px,1.2fr);gap:18px}.gb-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.gb-fields label,.gb-public label{font-weight:650;display:flex;flex-direction:column;gap:7px}.gb-fields input,.gb-fields select,.gb-public input,.gb-public select,.gb-public textarea{box-sizing:border-box;width:100%;max-width:none;border:1px solid #cfd5e6;border-radius:10px;padding:10px 12px;background:#fff}.gb-check{flex-direction:row;align-items:center}.gb-check input,.gb-legal input{width:auto}.gb-list{display:flex;flex-direction:column;gap:10px}.gb-service{display:flex;justify-content:space-between;align-items:center;padding:14px;border:1px solid var(--gb-border);border-radius:12px}.gb-service span{display:block;color:#687086;margin-top:4px}.gb-service.is-off{opacity:.52}.gb-empty{padding:30px;text-align:center;background:var(--gb-soft);border-radius:12px;color:#687086}.gb-pill{display:inline-block;padding:5px 10px;border-radius:999px;background:#e8f8f1;color:#11764b}.gb-public{max-width:680px;margin:36px auto;padding:30px;border:1px solid var(--gb-border);border-radius:24px;background:linear-gradient(145deg,#fff,#f7f6ff);box-shadow:0 18px 50px rgba(42,50,90,.1);color:var(--gb-ink)}.gb-public h2{font-size:32px;margin:5px 0 24px}.gb-public form{display:flex;flex-direction:column;gap:16px}.gb-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gb-public button{border:0;border-radius:12px;padding:14px 20px;background:linear-gradient(90deg,var(--gb-blue),var(--gb-violet));color:#fff;font-size:16px;font-weight:750;cursor:pointer}.gb-legal{flex-direction:row;align-items:flex-start;font-size:13px;color:#5f687b}.gb-success{border-left:5px solid var(--gb-green)}.gb-auth-tabs{display:flex;gap:8px;margin-bottom:20px}.gb-tab{flex:1;background:#eef1fb;color:#5e6678}.gb-tab.is-active{background:linear-gradient(90deg,var(--gb-blue),var(--gb-violet));color:#fff}.gb-auth{display:none}.gb-auth.is-active{display:flex}.gb-notice,.gb-error,.gb-current{padding:16px;border-radius:12px;margin:0 0 18px}.gb-notice{background:#f0efff;color:#4d3c88}.gb-error{background:#fff0f1;color:#9c2f3c}.gb-current{background:linear-gradient(130deg,#eff4ff,#f5edff)}.gb-current h3{font-size:22px;margin:6px 0}.gb-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.gb-slot{display:block;text-align:center}.gb-slot input{position:absolute;opacity:0;width:1px}.gb-slot span,.gb-slot.is-busy{display:block;padding:11px 6px;border:1px solid #cfd5e6;border-radius:10px}.gb-slot input:checked+span{background:var(--gb-blue);border-color:var(--gb-blue);color:#fff}.gb-slot.is-busy{background:#e4e6eb;color:#959aa6;text-decoration:line-through;cursor:not-allowed}.gb-logout{display:block;text-align:center;margin-top:20px}.gb-actions{display:flex;gap:6px;flex-wrap:wrap}@media(max-width:800px){.gb-cards,.gb-grid,.gb-fields,.gb-two{grid-template-columns:1fr}.gb-public{margin:15px;padding:20px}.gb-hero h1,.gb-heading h1,.gb-public h2{font-size:28px}.gb-slots{grid-template-columns:repeat(3,1fr)}.gb-service{align-items:flex-start;gap:10px;flex-direction:column}}


/* Migrado desde gradobeauty-extra.css. */
.gb-preview-button{display:inline-block;padding:12px 18px;border-radius:10px;background:linear-gradient(90deg,#3659d9,#8548d8);color:#fff;text-decoration:none;font-weight:700}.gb-calendar{margin-bottom:18px}.gb-calendar-title h2{text-transform:capitalize;font-size:24px}.gb-weekdays,.gb-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.gb-weekdays span{text-align:center;font-weight:700;color:#757d91;padding:8px}.gb-day{min-height:72px;padding:10px;border:1px solid #e2e6f3;border-radius:12px;text-decoration:none;background:#fafbff;color:#172033;transition:.2s}.gb-day:hover{transform:translateY(-2px);border-color:#3659d9;box-shadow:0 7px 18px rgba(54,89,217,.12)}.gb-day strong{font-size:17px}.gb-day span{display:block;margin-top:8px;font-size:11px;color:#8548d8;font-weight:700}.gb-day.is-empty{border:0;background:transparent}.gb-day.is-today{box-shadow:inset 0 0 0 2px #3659d9}.gb-day.is-selected{background:linear-gradient(135deg,#3659d9,#8548d8);color:#fff}.gb-day.is-selected span{color:#fff}.gb-all-bookings{margin-top:18px}.gb-table-scroll{overflow:auto}@media(max-width:800px){.gb-weekdays,.gb-month-grid{gap:4px}.gb-day{min-height:48px;padding:6px}.gb-day span{font-size:9px}}
.gb-wide{grid-column:1/-1}.gb-danger{color:#a52b45}.gb-hours{display:grid;gap:10px;margin:12px 0 24px}.gb-hour-row{display:grid;grid-template-columns:110px 1fr 1fr;align-items:center;gap:14px;padding:12px;border:1px solid #e8eaf3;border-radius:12px}.gb-hour-row label{display:flex;align-items:center;gap:7px;margin:0}.gb-hour-row input{max-width:115px}.gb-inline{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.gb-inline label{display:grid;gap:5px}.gb-actions{display:flex;gap:6px;flex-wrap:wrap}#gb-deposit-info{margin:12px 0}@media(max-width:800px){.gb-hour-row{grid-template-columns:1fr}.gb-hour-row label{flex-wrap:wrap}}


/* Migrado desde booking-ui.css. */
.gb-public{max-width:1100px;padding:42px}.gb-calendar-head h3{font-size:38px;margin:12px 0}.gb-calendar-head p{font-size:20px;line-height:1.45}.gb-public fieldset{border:0;padding:0;margin:28px 0}.gb-public legend{display:block;width:100%;font-size:28px;font-weight:800;margin-bottom:16px;color:#172033}.gb-service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gb-service-card{display:block;cursor:pointer}.gb-service-card input{position:absolute;opacity:0;width:1px;height:1px}.gb-service-card span{display:flex;min-height:92px;box-sizing:border-box;flex-direction:column;justify-content:center;padding:18px;border:2px solid #e1e5f0;border-radius:16px;background:#fff;transition:.18s}.gb-service-card strong{font-size:19px;line-height:1.2}.gb-service-card small{font-size:15px;margin-top:8px;color:#697286}.gb-service-card em{display:inline-block;margin-top:8px;font-size:13px;font-style:normal;font-weight:800;color:#7841cf}.gb-service-card input:checked+span{border-color:#6a50db;background:linear-gradient(145deg,#f3f5ff,#f9efff);box-shadow:0 9px 24px rgba(91,73,200,.16)}.gb-client-calendar{border:1px solid #dde2ef;border-radius:22px;padding:22px;background:#fff}.gb-client-calendar-nav{display:grid;grid-template-columns:60px 1fr 60px;align-items:center;gap:12px;margin-bottom:20px}.gb-client-calendar-nav strong{text-align:center;text-transform:capitalize;font-size:27px}.gb-client-calendar-nav button{padding:8px;height:52px;font-size:34px}.gb-client-week,.gb-client-days{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.gb-client-week span{text-align:center;font-size:17px;font-weight:800;padding:10px;color:#6b7280}.gb-client-days button{min-height:72px;padding:10px;border:2px solid #e0e4ee;background:#fafbff;color:#172033;font-size:23px;font-weight:800}.gb-client-days button:hover:not(:disabled){border-color:#7650db;transform:translateY(-2px)}.gb-client-days button.is-selected{background:linear-gradient(135deg,#3659d9,#8548d8);border-color:#6a50db;color:#fff}.gb-client-days button:disabled{background:#eceef2;color:#a5aab4;cursor:not-allowed;text-decoration:line-through}.gb-slots{grid-template-columns:repeat(5,1fr);gap:12px}.gb-slot span,.gb-slot.is-busy{padding:18px 8px;border-width:2px;border-radius:14px;font-size:23px;font-weight:800}.gb-public textarea{font-size:18px;min-height:120px}.gb-public>form>button{font-size:20px;padding:18px 26px}
@media(max-width:800px){.gb-public{padding:22px}.gb-calendar-head h3{font-size:30px}.gb-calendar-head p{font-size:17px}.gb-public legend{font-size:23px}.gb-service-cards{grid-template-columns:1fr}.gb-service-card span{min-height:80px}.gb-client-calendar{padding:12px}.gb-client-calendar-nav{grid-template-columns:48px 1fr 48px}.gb-client-calendar-nav strong{font-size:21px}.gb-client-week,.gb-client-days{gap:5px}.gb-client-week span{font-size:14px;padding:6px}.gb-client-days button{min-height:52px;font-size:18px;padding:5px}.gb-slots{grid-template-columns:repeat(3,1fr)}.gb-slot span,.gb-slot.is-busy{font-size:20px;padding:15px 5px}}


/* Migrado desde booking-badges.css. */
.gb-service-card.is-deposit span{background:linear-gradient(135deg,#b997ed,#d0b1f4);border-color:#8753cf;color:#111;box-shadow:0 8px 22px rgba(112,66,201,.2)}
.gb-service-card.is-deposit span{position:relative;padding-right:64px}
.gb-service-card.is-deposit span:after{content:'€';position:absolute;top:14px;right:14px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#6e35bb;color:#fff;font-size:19px;font-weight:900;line-height:1;box-shadow:0 5px 13px rgba(80,30,150,.28)}
.gb-service-card.is-deposit strong,.gb-service-card.is-deposit small,.gb-service-card.is-deposit em{color:#fff}
.gb-service-card.is-deposit input:checked+span{background:linear-gradient(135deg,#9f70e2,#c18dea);border-color:#5f2aaa;box-shadow:0 0 0 3px rgba(112,66,201,.2),0 10px 25px rgba(94,42,170,.25)}
.gb-service-card em{display:inline-flex;align-items:center;align-self:flex-start;gap:7px;margin-top:9px;padding:0;background:transparent;color:#111;font-size:13px;font-style:normal;font-weight:900;box-shadow:none}
.gb-service-card em:before{content:'€';display:inline-grid;place-items:center;width:22px;height:22px;border:2px solid #111;border-radius:50%;box-sizing:border-box;color:#111;font-size:13px;font-weight:900}


/* Migrado desde brand.css. */
:root{--gb-gold:#b49b5b;--gb-charcoal:#222b2f;--gb-cream:#faf8f3;--gb-purple:#985bc9;--gb-purple-dark:#7440a4;--gb-blue:#b49b5b;--gb-violet:#222b2f;--gb-ink:#222b2f;--gb-soft:#faf8f3;--gb-border:#e4dfd4}
.gb-wrap,.gb-public{font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;color:var(--gb-charcoal)}
.gb-kicker{color:var(--gb-gold)}.gb-hero{background:#fff;border:1px solid #e6dfd0;box-shadow:0 12px 34px rgba(34,43,47,.05)}.gb-card strong{color:var(--gb-gold)}.gb-panel,.gb-card{background:#fff;border-color:#e5e0d6;box-shadow:0 8px 24px rgba(34,43,47,.05)}.gb-public{background:#fff;border-color:#e5e0d6;box-shadow:0 18px 48px rgba(34,43,47,.09)}.gb-public button,.gb-preview-button{background:var(--gb-charcoal);color:#fff}.gb-public button:hover,.gb-preview-button:hover{background:#303c41}.gb-tab{background:#f3f0e9;color:var(--gb-charcoal)}.gb-tab.is-active{background:var(--gb-charcoal);color:#fff}.gb-service-card span{background:#fff;border-color:#e2ded5}.gb-service-card input:checked+span{border-color:var(--gb-gold);background:#fbf8f0;box-shadow:0 0 0 2px rgba(180,155,91,.15),0 8px 20px rgba(34,43,47,.06)}.gb-service-card.is-deposit span,.gb-service-card.is-deposit input:checked+span{background:linear-gradient(135deg,var(--gb-purple-dark),var(--gb-purple));border-color:#65328f}.gb-service-card.is-deposit strong,.gb-service-card.is-deposit small{color:#fff}.gb-service-card.is-deposit span:after{background:#fff;color:var(--gb-purple-dark)}.gb-client-calendar{background:#fff;border-color:#e2ded5}.gb-client-calendar-nav button{background:#f3f0e9;color:var(--gb-charcoal)}.gb-client-days button:hover:not(:disabled){border-color:var(--gb-gold)}.gb-client-days button.is-selected{background:var(--gb-gold);border-color:var(--gb-gold);color:#fff}.gb-slot input:checked+span{background:var(--gb-gold);border-color:var(--gb-gold);color:#fff}.gb-notice{background:#f2eafa;color:#512a70}.gb-pill{background:#f1ecdf;color:#6d5827}.gb-special-section{margin-top:42px;padding:30px;border-top:1px solid #e4dfd4;background:var(--gb-cream);border-radius:18px}.gb-special-section h3{font-size:30px;margin:8px 0}.gb-special-section p{font-size:17px}.gb-special-section details{margin-top:20px}.gb-special-section summary{cursor:pointer;padding:16px 20px;background:#fff;border:1px solid #ddd6c6;border-radius:12px;font-size:18px;font-weight:800;list-style-position:inside}.gb-special-form{margin-top:16px;padding:20px;background:#fff;border-radius:14px;border:1px solid #e4dfd4}
@media(max-width:800px){.gb-special-section{padding:20px}.gb-special-section h3{font-size:25px}}


/* Migrado desde calendar-contrast.css. */
.gb-client-days button.is-selected,.gb-client-days button.is-selected:hover,.gb-day.is-selected,.gb-day.is-selected strong,.gb-day.is-selected span{color:#fff}
.gb-client-calendar-nav button{color:#fff}
.gb-slot input:checked+span{color:#fff}


/* Migrado desde calendar-elegant.css. */
.gb-date-picker{padding:26px;border-radius:20px;background:#faf8f3;border:1px solid #e7e0d2}
.gb-date-picker legend{padding-top:4px}
.gb-client-calendar{background:#faf8f3;border:1px solid #e7e0d2;padding:26px;border-radius:20px}
.gb-client-calendar-nav{padding:8px 10px 18px;border-bottom:1px solid #dfd5c2}
.gb-client-calendar-nav strong{color:#222b2f}
.gb-client-calendar-nav button{background:#fff;border:1px solid #d8c9aa;color:#8b7138;box-shadow:0 5px 14px rgba(80,65,35,.06)}
.gb-client-week span{color:#9a8148}
.gb-client-days button{background:#fff;border-color:#e2d9c8;color:#403a30;box-shadow:0 4px 12px rgba(44,39,29,.035)}
.gb-client-days button:hover:not(:disabled):not(.is-selected){background:#f3ead7;border-color:#b49b5b;color:#6f5928}
.gb-client-days button.is-selected{background:#b49b5b;border-color:#b49b5b;color:#fff;box-shadow:0 7px 18px rgba(180,155,91,.25)}
.gb-client-days button:disabled{background:#efede8;border-color:#e4e1da;color:#aaa59b;box-shadow:none}
@media(max-width:800px){.gb-date-picker{padding:15px}.gb-client-calendar{padding:14px}}


/* Migrado desde spacing.css. */
.gb-service-picker{margin-bottom:12px}
#gb-deposit-info:empty{display:none;margin:0}
.gb-special-section{margin-top:10px}
.gb-special-section+fieldset{margin-top:24px}


/* Migrado desde management.css. */
.gb-owner-shell.is-login{max-width:1040px;margin:46px auto;padding:42px;border:1px solid #e5e0d6;border-radius:28px;background:#fff;color:#222b2f;box-shadow:0 22px 60px rgba(34,43,47,.1);font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif}.gb-owner-shell.is-login .gb-owner-brand{text-align:center;margin-bottom:30px}.gb-owner-shell.is-login .gb-owner-brand h1{margin:7px 0 5px;font-size:44px;line-height:1.05}.gb-owner-shell.is-login .gb-owner-brand p{margin:0;color:#687075;font-size:17px}.gb-owner-login{display:grid;gap:18px;max-width:520px;margin:0 auto;padding:28px;border-radius:20px;background:#faf8f3}.gb-owner-login label:not(.gb-owner-remember){display:grid;gap:7px;font-weight:750}.gb-owner-login input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:14px 15px;border:1px solid #dcd6c9;border-radius:11px;background:#fff;font-size:17px}.gb-owner-login input:focus{border-color:#b49b5b;outline:2px solid rgba(180,155,91,.2)}.gb-owner-remember{display:flex;align-items:center;gap:9px}.gb-owner-login button{padding:15px 20px;border:0;border-radius:12px;background:#222b2f;color:#fff;font-size:17px;font-weight:800;cursor:pointer}.gb-owner-login button:hover{background:#354146}.gb-owner-alert{max-width:520px;margin:0 auto 18px;padding:14px 18px;border-radius:11px;background:#f5eaf0;color:#7b294c;font-weight:700}.gb-owner-welcome{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:15px 18px;border-radius:14px;background:#faf8f3}.gb-owner-welcome div{display:grid}.gb-owner-welcome span{color:#71787b;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.gb-owner-welcome strong{font-size:18px}.gb-owner-welcome a,.gb-owner-logout{color:#745e2e;font-weight:800}.gb-owner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.gb-owner-stats div{display:grid;gap:2px;padding:18px;border:1px solid #e5e0d6;border-radius:15px;background:#fff}.gb-owner-stats strong{color:#a88e4f;font-size:29px}.gb-owner-stats span{color:#626a6e;font-weight:700}.gb-owner-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.gb-owner-grid a{display:grid;gap:6px;min-height:90px;padding:22px;border:1px solid #e4dfd4;border-radius:17px;background:#faf8f3;color:#222b2f;text-decoration:none;transition:.18s ease}.gb-owner-grid a:hover{border-color:#b49b5b;background:#f5f0e5;transform:translateY(-2px);box-shadow:0 10px 22px rgba(34,43,47,.07)}.gb-owner-grid strong{font-size:21px}.gb-owner-grid span{color:#687075;line-height:1.45}
@media(max-width:700px){.gb-owner-shell.is-login{margin:18px 10px;padding:24px 18px;border-radius:20px}.gb-owner-shell.is-login .gb-owner-brand h1{font-size:34px}.gb-owner-stats,.gb-owner-grid{grid-template-columns:1fr}.gb-owner-welcome{align-items:flex-start;gap:12px;flex-direction:column}}


/* Migrado desde access.css. */
.gb-client-access{max-width:740px;padding:34px;border-radius:24px;background:linear-gradient(145deg,#fff 0%,#fdfbf7 100%)}.gb-client-access>.gb-kicker{display:block;text-align:center;font-size:10px}.gb-client-access>h2{text-align:center;margin:6px 0 24px;font-size:30px;font-weight:720}.gb-client-access .gb-notice,.gb-client-access .gb-error{max-width:600px;margin:0 auto 19px;border:1px solid #eadff0;background:#f8f0fa;color:#684572;text-align:center;font-size:14px}.gb-client-access .gb-auth-tabs{max-width:540px;margin:0 auto 20px;padding:4px;border:1px solid #e4dfd4;border-radius:999px;background:#faf8f3;gap:4px}.gb-client-access .gb-tab{padding:10px 17px;border-radius:999px;background:transparent;color:#6a7072;font-size:13px;font-weight:750}.gb-client-access .gb-tab.is-active{background:#b49b5b;color:#fff;box-shadow:0 4px 12px rgba(133,107,48,.15)}.gb-client-access .gb-auth-card{max-width:540px;margin:0 auto;padding:23px 25px;border:1px solid #e7e1d6;border-radius:18px;background:#fff;box-shadow:0 9px 25px rgba(34,43,47,.05)}.gb-client-access .gb-auth-card label{gap:5px;color:#394145;font-size:13px;line-height:1.25;font-weight:680}.gb-client-access .gb-auth-card input:not([type=checkbox]){min-height:45px;padding:9px 12px;border:1px solid #dcd6c9;border-radius:10px;background:#fdfcf9;font-size:15px}.gb-client-access .gb-auth-card input:focus{border-color:#b49b5b;outline:3px solid rgba(180,155,91,.13)}.gb-client-access .gb-auth-card button{padding:12px 18px;border-radius:10px;background:#b49b5b;color:#fff;font-size:14px}.gb-client-access .gb-auth-card button:hover{background:#9f874c}.gb-register-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px 15px}.gb-register-wide{grid-column:1/-1}.gb-client-access .gb-legal{flex-direction:row;align-items:center;padding-top:2px;color:#687075;font-size:12px}.gb-client-access .gb-legal input{min-height:auto}.gb-rejected-panel{margin-top:18px}.gb-hair-photo{padding:16px;border:1px dashed #cdbd95;border-radius:12px;background:#faf8f3}.gb-hair-photo small{color:#687075;font-size:12px;font-weight:500}
@media(max-width:700px){.gb-client-access{padding:25px 18px}.gb-client-access>h2{font-size:29px}.gb-client-access .gb-auth-card{padding:21px 17px}.gb-register-grid{grid-template-columns:1fr}.gb-register-wide{grid-column:auto}.gb-client-access .gb-auth-tabs{border-radius:16px}.gb-client-access .gb-tab{border-radius:12px}}
.gb-auth-help{margin:-.25rem 0 .75rem;color:#73737b;font-size:.95rem;line-height:1.5}.gb-appointment-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}.gb-appointment-summary>div{padding:24px;border:1px solid #eaded9;border-radius:18px;background:#fff}.gb-appointment-summary h3{margin:8px 0;font-size:1.25rem}.gb-appointment-summary p{margin:6px 0;color:#666975}.gb-appointment-summary ul{list-style:none;margin:12px 0 0;padding:0}.gb-appointment-summary li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #eee}.gb-appointment-summary li span{color:#666975;text-align:right}.gb-notification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.gb-notification-grid .gb-panel{margin:0}.gb-notification-grid li{margin:8px 0}.gb-channel{display:inline-flex;padding:7px 12px;border-radius:999px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.gb-channel.is-active{background:#e8f7ef;color:#237a50}.gb-channel.is-pending{background:#fff1e9;color:#a94825}@media(max-width:720px){.gb-appointment-summary,.gb-notification-grid{grid-template-columns:1fr}.gb-appointment-summary li{display:block}.gb-appointment-summary li span{display:block;text-align:left;margin-top:4px}}
.gb-client-identity{margin:34px 0 12px;padding:0 0 22px;border-bottom:1px solid #eaded9;text-align:left}.gb-client-identity span{display:block;margin-bottom:8px;color:#c24143;font-size:13px;font-weight:800;letter-spacing:.16em}.gb-client-identity h1{margin:0;color:#353640;font-size:clamp(28px,3vw,42px);line-height:1.08;font-weight:760;letter-spacing:-.025em}.gb-client-identity+.gb-appointment-summary{margin-top:22px}@media(max-width:720px){.gb-client-identity{margin-top:25px;padding-bottom:18px}.gb-client-identity span{font-size:11px}.gb-client-identity h1{font-size:29px}}
.gb-client-access .gb-auth-tabs{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}


/* Migrado desde hours.css. */
.gb-hours-page{max-width:1540px}.gb-weekly-panel,.gb-year-panel{margin-top:22px}.gb-section-heading,.gb-year-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.gb-section-heading h2,.gb-year-heading h2{margin:4px 0 0;font-size:28px}.gb-section-heading p,.gb-year-heading p{margin:4px 0;color:#697175}.gb-year-heading{text-align:center}.gb-year-arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ddd6c6;border-radius:13px;background:#fff;color:#8b753e;text-decoration:none;font-size:34px;line-height:1}.gb-year-arrow:hover{background:#f4efe4;color:#6d5827}.gb-closure-legend{display:flex;justify-content:center;gap:24px;margin:18px 0 22px;color:#60686c;font-weight:700}.gb-closure-legend span{display:flex;align-items:center;gap:8px}.gb-closure-legend i{width:18px;height:18px;border:1px solid #ded8ca;border-radius:5px;background:#fff}.gb-closure-legend i.is-closed{background:#b49b5b;border-color:#b49b5b}.gb-single-calendar{max-width:760px;margin:0 auto}.gb-admin-month{padding:24px;border:1px solid #e5e0d6;border-radius:18px;background:#faf8f3}.gb-admin-weekdays,.gb-admin-days{display:grid;grid-template-columns:repeat(7,1fr);gap:9px}.gb-admin-weekdays span{text-align:center;color:#9a8247;font-size:13px;font-weight:800;padding:8px}.gb-admin-days>i{aspect-ratio:1}.gb-close-day{position:relative;margin:0}.gb-close-day input{position:absolute;opacity:0;pointer-events:none}.gb-close-day span{display:grid;place-items:center;aspect-ratio:1;border:1px solid #e2ddd2;border-radius:11px;background:#fff;color:#283034;font-size:17px;font-weight:750;cursor:pointer;transition:.15s ease}.gb-close-day span:hover{border-color:#b49b5b;background:#f4efe4;transform:translateY(-1px)}.gb-close-day input:focus+span{outline:2px solid #8f783f;outline-offset:2px}.gb-close-day input:checked+span{border-color:#9c8449;background:#b49b5b;color:#fff;box-shadow:0 4px 10px rgba(121,96,40,.2)}.gb-hours-save{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;gap:16px;margin:22px 0;padding:16px 20px;border:1px solid #ddd6c6;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(34,43,47,.12)}.gb-hours-save span{color:#626b6f;font-weight:650}
.gb-closure-save-state{margin:15px auto 0;text-align:center;color:#6d5827;font-weight:750}.gb-year-arrow.is-saving{pointer-events:none;opacity:.45}
@media(max-width:700px){.gb-section-heading{align-items:flex-start;flex-direction:column}.gb-year-panel{padding:16px}.gb-year-heading p{font-size:13px}.gb-year-arrow{width:40px;height:40px}.gb-admin-month{padding:12px}.gb-admin-weekdays,.gb-admin-days{gap:5px}.gb-close-day span{border-radius:8px;font-size:15px}.gb-hours-save{align-items:stretch;flex-direction:column}.gb-hours-save .button{width:100%}}
.gb-booking-window-panel{margin-top:22px}.gb-booking-window-field{display:grid;grid-template-columns:minmax(0,140px);gap:7px;flex:0 0 210px}.gb-booking-window-field>span{font-weight:800;color:#343139}.gb-booking-window-field input{width:100%;min-height:54px;padding:8px 14px;border:1px solid #ddd6c6;border-radius:13px;background:#fff;color:#343139;font-size:22px;font-weight:800}.gb-booking-window-field small,.gb-booking-window-note{color:#697175}.gb-booking-window-note{margin:18px 0 0;padding-top:16px;border-top:1px solid #eee8de}@media(max-width:700px){.gb-booking-window-field{width:100%;grid-template-columns:1fr;flex-basis:auto}.gb-booking-window-field input{max-width:none}}


/* Migrado desde manager-access.css. */
.gb-manager-access {
    margin-bottom: 18px;
}

.gb-copy-field {
    display: flex;
    gap: 8px;
    align-items: center;
}

.gb-copy-field input {
    flex: 1;
}

.gb-copy-field .button {
    min-height: 42px;
    white-space: nowrap;
}

.gb-wide {
    grid-column: 1 / -1;
}

@media (max-width: 800px) {
    .gb-copy-field {
        align-items: stretch;
        flex-direction: column;
    }

    .gb-wide {
        grid-column: auto;
    }
}


/* Migrado desde owner-login.css. */
.gb-owner-shell.is-login {
    width: calc(100% - 32px) ;
    max-width: 680px ;
    box-sizing: border-box ;
    margin: 34px auto ;
    padding: 34px 38px 38px ;
    border: 1px solid #e7e1d6 ;
    border-radius: 24px ;
    background: #fff ;
    box-shadow: 0 16px 44px rgba(60, 54, 44, .07) ;
}

.gb-owner-shell.is-login .gb-owner-brand {
    margin: 0 auto 24px ;
}

.gb-owner-shell.is-login .gb-owner-brand .gb-kicker {
    display: block ;
    margin-bottom: 7px ;
    color: #b49b5b ;
    font-size: 10px ;
    font-weight: 750 ;
    letter-spacing: .16em ;
}

.gb-owner-shell.is-login .gb-owner-brand h1 {
    margin: 0 0 5px ;
    color: #394145 ;
    font-size: 31px ;
    font-weight: 700 ;
    line-height: 1.12 ;
    letter-spacing: -.025em ;
}

.gb-owner-shell.is-login .gb-owner-brand p {
    margin: 0 ;
    color: #747b7e ;
    font-size: 13px ;
    font-weight: 400 ;
    line-height: 1.45 ;
}

.gb-owner-shell.is-login .gb-owner-login {
    display: grid ;
    gap: 14px ;
    width: 100% ;
    max-width: 450px ;
    box-sizing: border-box ;
    margin: 0 auto ;
    padding: 22px 24px 24px ;
    border: 1px solid #e8e2d7 ;
    border-radius: 17px ;
    background: #fdfcf9 ;
    box-shadow: none ;
}

.gb-owner-shell.is-login .gb-owner-login label:not(.gb-owner-remember) {
    display: grid ;
    gap: 6px ;
    margin: 0 ;
    color: #434b4e ;
    font-size: 13px ;
    font-weight: 650 ;
    line-height: 1.3 ;
}

.gb-owner-shell.is-login .gb-owner-login input:not([type=checkbox]) {
    width: 100% ;
    min-height: 44px ;
    box-sizing: border-box ;
    margin: 0 ;
    padding: 9px 12px ;
    border: 1px solid #dcd6c9 ;
    border-radius: 10px ;
    background: #fff ;
    color: #394145 ;
    box-shadow: none ;
    font-size: 15px ;
    font-weight: 400 ;
}

.gb-owner-shell.is-login .gb-owner-login input:not([type=checkbox]):focus {
    border-color: #b49b5b ;
    outline: 3px solid rgba(180, 155, 91, .13) ;
}

.gb-owner-shell.is-login .gb-owner-remember {
    display: flex ;
    align-items: center ;
    gap: 8px ;
    margin: 0 ;
    color: #697174 ;
    font-size: 12px ;
    font-weight: 500 ;
    line-height: 1.3 ;
}

.gb-owner-shell.is-login .gb-owner-remember input {
    width: 15px ;
    height: 15px ;
    min-height: 0 ;
    margin: 0 ;
    accent-color: #b49b5b ;
}

.gb-owner-shell.is-login .gb-owner-login button {
    width: 100% ;
    min-height: 44px ;
    margin: 2px 0 0 ;
    padding: 11px 18px ;
    border: 0 ;
    border-radius: 10px ;
    background: linear-gradient(135deg, #c24143 0%, #e95721 100%) ;
    color: #fff ;
    box-shadow: 0 6px 16px rgba(194, 65, 67, .18) ;
    font-size: 13px ;
    font-weight: 700 ;
    letter-spacing: .01em ;
    text-transform: none ;
}

.gb-owner-shell.is-login .gb-owner-login button:hover,
.gb-owner-shell.is-login .gb-owner-login button:focus {
    background: linear-gradient(135deg, #ae383a 0%, #d94c19 100%) ;
    transform: none ;
}

.gb-owner-shell.is-login .gb-owner-alert {
    max-width: 450px ;
    margin: 0 auto 14px ;
    padding: 11px 14px ;
    border: 1px solid #eadfe5 ;
    border-radius: 10px ;
    background: #fbf4f7 ;
    color: #744057 ;
    font-size: 12px ;
    font-weight: 600 ;
    text-align: center ;
}

@media (max-width: 700px) {
    .gb-owner-shell.is-login {
        width: calc(100% - 22px) ;
        margin: 18px auto ;
        padding: 27px 17px 22px ;
        border-radius: 20px ;
    }

    .gb-owner-shell.is-login .gb-owner-brand {
        margin-bottom: 20px ;
    }

    .gb-owner-shell.is-login .gb-owner-brand h1 {
        font-size: 28px ;
    }

    .gb-owner-shell.is-login .gb-owner-brand p {
        font-size: 12px ;
    }

    .gb-owner-shell.is-login .gb-owner-login {
        padding: 19px 16px 20px ;
    }
}


/* Migrado desde owner-app.css. */
html,
body.gradobeauty-app-page {
    margin: 0;
    min-height: 100%;
    background: #f5f4f1;
}

body .gb-owner-workspace .gb-client-record>summary>.gb-client-summary-main{display:flex;align-items:center;gap:14px;overflow:visible}
body .gb-owner-workspace .gb-client-record>summary>.gb-client-summary-main>span:last-child{display:block;min-width:0}

/* 0.26.13 · autoridad final: no permitir que capas antiguas recuperen el marco o agranden soporte */
/* La geometría del portal se define exclusivamente en grado-creativo-core.css. */
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:0 0 12px;padding:11px 14px;border:1px solid #edc9c1;border-radius:12px;background:#fff8f5;box-shadow:0 5px 15px rgba(175,55,48,.06)}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{min-width:0;margin:0;color:#70403d;font-size:13px;font-weight:400;line-height:1.35;white-space:nowrap}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p strong{font-size:13px;font-weight:900}
.gb-beta-support-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}
.gb-beta-support-actions>details{width:auto;min-width:0}
.gb-beta-support-actions>details>summary,.gb-beta-support-actions>details[open]>summary{display:flex;align-items:center;justify-content:center;width:auto;min-width:190px;min-height:38px;height:38px;margin:0;padding:7px 15px;border:0;border-radius:9px;background:linear-gradient(110deg,#c44243,#ec5b24);color:#fff;font-size:12px;font-weight:850;line-height:1.2;box-sizing:border-box}
.gb-beta-support-actions>details[open]{position:absolute;z-index:30;right:22px;left:22px;margin-top:8px;padding:15px;border:1px solid #edc9c1;border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(74,42,37,.17)}
.gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){position:relative;margin-bottom:290px}
.gb-beta-support-actions>details[open]>summary{margin-left:auto}
.gb-beta-notification-bell{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:0;border-radius:50%;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff;box-shadow:0 6px 14px rgba(194,65,67,.2);cursor:pointer}
.gb-beta-notification-bell svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gb-beta-support-actions form{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(260px,.65fr);gap:12px;margin-top:12px;padding-top:12px}
.gb-beta-support-actions form label{display:grid;gap:6px;margin:0;color:#47434a;font-size:13px;font-weight:800;line-height:1.3}
.gb-beta-support-actions form input,.gb-beta-support-actions form select,.gb-beta-support-actions form textarea{width:100%;max-width:none;min-height:42px;margin:0;padding:9px 11px;border:1px solid #d8cbc6;border-radius:9px;color:#343640;font-family:inherit;font-size:14px;font-weight:500;line-height:1.4;box-sizing:border-box}
.gb-beta-support-actions form textarea{min-height:96px;resize:vertical}
.gb-beta-support-actions form .gb-support-wide{grid-column:1/-1}
.gb-beta-support-actions form button[type="submit"]{grid-column:1/-1;justify-self:end;width:auto;min-height:40px;padding:8px 17px;border:0;border-radius:9px;background:linear-gradient(110deg,#c44243,#ec5b24);color:#fff;font-size:13px;font-weight:850;line-height:1.2}
@media(max-width:1100px){body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{white-space:normal}}
@media(max-width:782px){body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support{grid-template-columns:1fr;gap:8px;padding:10px 11px}body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p,body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p strong{font-size:11px;line-height:1.35;white-space:normal}.gb-beta-support-actions{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px}.gb-beta-notification-bell{width:34px;height:34px;min-width:34px;min-height:34px}.gb-beta-notification-bell svg{width:17px;height:17px}.gb-beta-support-actions>details>summary,.gb-beta-support-actions>details[open]>summary{width:100%;min-width:0;height:34px;min-height:34px;padding:6px 10px;font-size:11px}.gb-beta-support-actions>details[open]{right:8px;left:8px;padding:12px}.gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){margin-bottom:470px}.gb-beta-support-actions form{grid-template-columns:1fr;gap:10px}.gb-beta-support-actions form label{font-size:12px}.gb-beta-support-actions form input,.gb-beta-support-actions form select,.gb-beta-support-actions form textarea{font-size:14px}.gb-beta-support-actions form .gb-support-wide,.gb-beta-support-actions form button[type="submit"]{grid-column:1;width:100%;justify-self:stretch}}

/* 0.26.14 · corrección del desplegable y proporción exacta del lienzo */
/* Geometría histórica retirada: autoridad única en grado-creativo-core.css. */
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){position:relative;grid-template-columns:minmax(0,1fr) auto;margin-bottom:12px}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open])>.gb-beta-support-actions{grid-column:1/-1;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;width:100%}
.gb-beta-support-actions>details[open]{position:static;z-index:auto;display:block;width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.gb-beta-support-actions>details[open]>summary{width:190px;margin:0 0 0 auto}
.gb-beta-support-actions>details[open] form{width:100%;margin-top:12px;padding:14px 0 0;border-top:1px solid #efd9d1}
@media(max-width:782px){body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){grid-template-columns:1fr;margin-bottom:10px}body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open])>.gb-beta-support-actions{grid-template-columns:34px minmax(0,1fr)}.gb-beta-support-actions>details[open]>summary{width:100%}.gb-beta-support-actions>details[open] form{grid-column:1/-1;padding-top:11px}}

/* 0.26.13 · intranet amplia y franja beta unificada con GradoFit */
/* Geometría histórica retirada: autoridad única en grado-creativo-core.css. */
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    margin:0 0 12px;
    padding:11px 14px;
    border:1px solid #edc9c1;
    border-radius:12px;
    background:#fff8f5;
    box-shadow:0 5px 15px rgba(175,55,48,.06);
}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{
    min-width:0;
    margin:0;
    color:#70403d;
    font-size:13px;
    font-weight:400;
    line-height:1.35;
    white-space:nowrap;
}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p strong{
    font-size:13px;
    font-weight:900;
}
.gb-beta-support-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
}
.gb-beta-support-actions>details{width:auto;min-width:0}
.gb-beta-support-actions>details>summary,
.gb-beta-support-actions>details[open]>summary{
    display:flex;
    align-items:center;
    justify-content:center;
    width:auto;
    min-width:190px;
    min-height:38px;
    height:38px;
    margin:0;
    padding:7px 15px;
    border:0;
    border-radius:9px;
    background:linear-gradient(110deg,#c44243,#ec5b24);
    color:#fff;
    font-size:12px;
    font-weight:850;
    line-height:1.2;
    box-sizing:border-box;
}
.gb-beta-support-actions>details[open]{
    position:absolute;
    z-index:30;
    top:auto;
    right:22px;
    left:22px;
    margin-top:8px;
    padding:15px;
    border:1px solid #edc9c1;
    border-radius:12px;
    background:#fff;
    box-shadow:0 16px 38px rgba(74,42,37,.17);
}
.gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){position:relative;margin-bottom:290px}
.gb-beta-support-actions>details[open]>summary{margin-left:auto}
.gb-beta-notification-bell{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    min-width:38px;
    min-height:38px;
    padding:0;
    border:0;
    border-radius:50%;
    background:linear-gradient(135deg,#c74742,#ec5b25);
    color:#fff;
    box-shadow:0 6px 14px rgba(194,65,67,.2);
    cursor:pointer;
}
.gb-beta-notification-bell svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gb-beta-support-actions .gb-support-feedback{font-size:13px;line-height:1.4}
.gb-beta-support-actions form{
    display:grid;
    grid-template-columns:minmax(180px,.35fr) minmax(260px,.65fr);
    gap:12px;
    margin-top:12px;
    padding-top:12px;
}
.gb-beta-support-actions form label{
    display:grid;
    gap:6px;
    margin:0;
    color:#47434a;
    font-size:13px;
    font-weight:800;
    line-height:1.3;
}
.gb-beta-support-actions form input,
.gb-beta-support-actions form select,
.gb-beta-support-actions form textarea{
    width:100%;
    max-width:none;
    min-height:42px;
    margin:0;
    padding:9px 11px;
    border:1px solid #d8cbc6;
    border-radius:9px;
    color:#343640;
    font-family:inherit;
    font-size:14px;
    font-weight:500;
    line-height:1.4;
    box-sizing:border-box;
}
.gb-beta-support-actions form textarea{min-height:96px;resize:vertical}
.gb-beta-support-actions form .gb-support-wide{grid-column:1/-1}
.gb-beta-support-actions form button[type="submit"]{
    grid-column:1/-1;
    justify-self:end;
    width:auto;
    min-height:40px;
    padding:8px 17px;
    border:0;
    border-radius:9px;
    background:linear-gradient(110deg,#c44243,#ec5b24);
    color:#fff;
    font-size:13px;
    font-weight:850;
    line-height:1.2;
}
@media(max-width:1100px){
    body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{white-space:normal}
}
@media(max-width:782px){
    
    
    body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support{grid-template-columns:1fr;gap:8px;padding:10px 11px}
    body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{font-size:11px;line-height:1.35;white-space:normal}
    body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p strong{font-size:11px}
    .gb-beta-support-actions{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px}
    .gb-beta-notification-bell{width:34px;height:34px;min-width:34px;min-height:34px}
    .gb-beta-notification-bell svg{width:17px;height:17px}
    .gb-beta-support-actions>details>summary,.gb-beta-support-actions>details[open]>summary{width:100%;min-width:0;height:34px;min-height:34px;padding:6px 10px;font-size:11px}
    .gb-beta-support-actions>details[open]{right:8px;left:8px;padding:12px}
    .gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){margin-bottom:470px}
    .gb-beta-support-actions form{grid-template-columns:1fr;gap:10px}
    .gb-beta-support-actions form label{font-size:12px}
    .gb-beta-support-actions form input,.gb-beta-support-actions form select,.gb-beta-support-actions form textarea{font-size:14px}
    .gb-beta-support-actions form .gb-support-wide,.gb-beta-support-actions form button[type="submit"]{grid-column:1;width:100%;justify-self:stretch}
}

/* 0.26.5 · soporte común de propietaria, clientas y empleadas */
.gb-beta-support{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin:16px 0 20px;padding:17px 19px;border:1px solid #efc8ba;border-radius:15px;background:linear-gradient(115deg,#fff8f4,#fff);box-shadow:0 8px 22px rgba(174,67,54,.07);box-sizing:border-box;color:#343640}
.gb-beta-support-copy span{display:block;margin-bottom:4px;color:#b44239;font-size:10px;font-weight:900;letter-spacing:.14em}
.gb-beta-support-copy strong{display:block;font-size:16px;line-height:1.25}
.gb-beta-support-copy p{margin:5px 0 0;color:#69656c;font-size:13px;line-height:1.45}
.gb-beta-support>details{min-width:245px}
.gb-beta-support>details>summary{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border:1px solid #d9573f;border-radius:10px;background:#fff;color:#a63b35;font-size:13px;font-weight:850;text-align:center;cursor:pointer;list-style:none;box-sizing:border-box}
.gb-beta-support>details>summary::-webkit-details-marker{display:none}
.gb-beta-support>details[open]{grid-column:1/-1;width:100%}
.gb-beta-support>details[open]>summary{width:max-content;min-width:245px;margin-left:auto}
.gb-beta-support form{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(240px,.65fr);gap:12px;margin-top:15px;padding-top:15px;border-top:1px solid #efd9d1}
.gb-beta-support form label{display:grid;gap:6px;color:#47434a;font-size:12px;font-weight:800}
.gb-beta-support form input,.gb-beta-support form select,.gb-beta-support form textarea{width:100%;max-width:none;min-height:42px;padding:9px 11px;border:1px solid #d8cbc6;border-radius:9px;background:#fff;color:#343640;box-sizing:border-box;font:inherit}
.gb-beta-support form textarea{min-height:92px;resize:vertical}
.gb-beta-support .gb-support-wide{grid-column:1/-1}
.gb-beta-support form button{grid-column:1/-1;justify-self:end;min-height:42px;padding:9px 18px;border:0;border-radius:9px;background:linear-gradient(110deg,#c44243,#ec5b24);color:#fff;font-weight:850;cursor:pointer}
.gb-support-feedback{margin-top:14px;padding:10px 12px;border-radius:9px;font-size:13px;font-weight:750}
.gb-support-feedback.is-success{background:#eaf8ef;color:#237546}
.gb-support-feedback.is-error{background:#fff0ee;color:#a43c35}
@media(max-width:782px){.gb-beta-support{grid-template-columns:1fr;gap:13px;padding:15px}.gb-beta-support>details{min-width:0}.gb-beta-support>details>summary,.gb-beta-support>details[open]>summary{width:100%;min-width:0;margin:0}.gb-beta-support form{grid-template-columns:1fr}.gb-beta-support .gb-support-wide,.gb-beta-support form button{grid-column:1}.gb-beta-support form button{width:100%;justify-self:stretch}.gb-beta-support-copy strong{font-size:15px}}

/* 0.26.6 · mismo patrón compacto de beta que GradoFit */
.gb-beta-support{display:block;margin:0 0 22px;padding:17px 18px;border:1px solid #edb9b8;border-radius:15px;background:#fff7f5;box-shadow:0 8px 20px rgba(175,55,48,.08)}
.gb-beta-support>p{margin:0 0 13px;color:#7c3433;font-size:14px;line-height:1.48}
.gb-beta-support>p strong{font-weight:900}
.gb-beta-support>details{width:100%;min-width:0}
.gb-beta-support>details>summary,.gb-beta-support>details[open]>summary{width:100%;min-width:0;min-height:44px;margin:0;padding:10px 16px;border:0;border-radius:10px;background:#bf2b28;color:#fff;font-size:14px;font-weight:850;box-sizing:border-box}
.gb-beta-support>details[open]>summary{margin-bottom:2px}
.gb-beta-support form{grid-template-columns:minmax(150px,.35fr) minmax(240px,.65fr);margin-top:14px}
@media(max-width:782px){.gb-beta-support{margin-bottom:18px;padding:15px}.gb-beta-support>p{font-size:13px}.gb-beta-support form{grid-template-columns:1fr}}

/* 0.26.8 · proporciones móviles idénticas al aviso compacto de GradoFit */
@media(max-width:782px){
  html body .gb-owner-shell .gb-beta-support,
  html body .gb-public .gb-beta-support,
  html body .gb-employee-agenda .gb-beta-support{margin:0 0 18px;padding:11px 16px;border-radius:12px;box-shadow:0 5px 14px rgba(175,55,48,.06)}
  html body .gb-beta-support>p{margin:0 0 8px;font-size:12px;font-weight:400;line-height:1.35;letter-spacing:0}
  html body .gb-beta-support>p strong{font-size:12px;font-weight:850;line-height:inherit}
  html body .gb-beta-support>details>summary,
  html body .gb-beta-support>details[open]>summary{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:32px;height:32px;margin:0;padding:5px 12px;border-radius:8px;font-size:12px;font-weight:800;line-height:1.2;letter-spacing:0}
  html body .gb-beta-support>details[open]>summary{margin-bottom:8px}
}

/* Autoridad final 0.25.7: biblioteca social */
body .gb-owner-workspace .gb-social-library{padding:0;overflow:hidden}
body .gb-owner-workspace .gb-social-library>.gb-section-heading{margin:0;padding:17px 20px;border-bottom:1px solid #eee3df}
body .gb-owner-workspace .gb-social-library.is-collapsed>.gb-section-heading{border-bottom:0}
body .gb-owner-workspace .gb-social-library.is-collapsed>.gb-social-list,body .gb-owner-workspace .gb-social-library.is-collapsed>.gb-empty{display:none}
body .gb-owner-workspace .gb-social-library>.gb-social-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,360px));justify-content:start;gap:12px;padding:16px 20px 20px}
body .gb-owner-workspace .gb-social-library>.gb-social-list article{grid-template-columns:64px minmax(0,1fr);min-height:138px}
body .gb-owner-workspace .gb-social-library>.gb-social-list article:not(:has(>img)){grid-template-columns:1fr}
body .gb-owner-workspace .gb-social-library>.gb-empty{margin:0;padding:18px 20px}
body .gb-owner-workspace .gb-social-preview-media>span{display:grid;place-items:center;align-content:center;gap:8px;width:100%;height:100%;min-height:inherit;padding:24px;box-sizing:border-box;text-align:center}
@media(max-width:782px){body .gb-owner-workspace .gb-social-library>.gb-section-heading{padding:13px 12px}body .gb-owner-workspace .gb-social-library>.gb-social-list{grid-template-columns:1fr;padding:10px 12px 12px}body .gb-owner-workspace .gb-social-library>.gb-social-list article{grid-template-columns:54px minmax(0,1fr);min-height:0}body .gb-owner-workspace .gb-social-library>.gb-social-list article:not(:has(>img)){grid-template-columns:1fr}body .gb-owner-workspace .gb-social-library>.gb-empty{padding:13px 12px}}

/* Categorías como módulo independiente del inventario */
.gb-inventory-category-panel{padding:0;overflow:hidden}.gb-inventory-category-panel>.notice{margin:14px}.gb-inventory-category-panel .gb-inventory-categories{margin:0;border:0;border-radius:0}.gb-inventory-category-panel .gb-inventory-categories>summary{min-height:78px;padding:18px 22px;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff}.gb-inventory-category-panel .gb-inventory-categories>summary small,.gb-inventory-category-panel .gb-inventory-categories>summary strong,.gb-inventory-category-panel .gb-inventory-categories>summary em,.gb-inventory-category-panel .gb-inventory-categories>summary>b{color:#fff}.gb-inventory-category-panel .gb-inventory-categories>summary em{opacity:.9}.gb-inventory-category-panel .gb-inventory-categories[open]>summary{border-bottom:0;background:linear-gradient(135deg,#b9413e,#e95424)}.gb-inventory-category-panel .gb-service-categories-body{background:#fff}@media(max-width:680px){.gb-inventory-category-panel .gb-inventory-categories>summary{min-height:68px;padding:15px 16px}.gb-inventory-category-panel .gb-inventory-categories>summary strong{font-size:17px}.gb-inventory-category-panel .gb-inventory-categories>summary em{font-size:11px}}

/* Gestión profesional de categorías, referencias y EAN del inventario */
.gb-inventory-categories{margin:14px 0 18px}.gb-inventory-categories .gb-category-list article form{grid-template-columns:minmax(160px,1fr) auto auto auto}.gb-inventory-categories .gb-category-list article.is-inactive{background:#f7f4f2;opacity:.72}.gb-category-active{display:flex;flex-direction:row;align-items:center;gap:6px;white-space:nowrap}.gb-category-active input{width:auto;min-height:0;margin:0}.gb-field-help{display:block;color:#777;font-size:11px;font-weight:500;line-height:1.45}.gb-inventory-products header em{display:block;margin:2px 0;color:#8b817d;font-size:11px;font-style:normal}.gb-order li span small{display:block;margin-top:3px;color:#827975;font-size:11px;font-weight:500}@media(max-width:680px){.gb-inventory-categories .gb-category-list article form{grid-template-columns:1fr}.gb-category-active{min-height:40px}.gb-inventory-categories .gb-category-list article>a{width:100%;text-align:center}}

/* Alta rápida y control automático opcional */
.gb-inventory-product-form{margin:0}.gb-inventory-advanced{overflow:hidden;border:1px solid #eaded9;border-radius:13px;background:#faf8f6}.gb-inventory-advanced>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;color:#3d3c42;font-weight:800;cursor:pointer}.gb-inventory-advanced>summary span{padding:4px 8px;border-radius:999px;background:#f0e5e0;color:#a5423c;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.gb-inventory-advanced>div{padding:0 15px 15px}.gb-inventory-advanced>div>p{margin:8px 0 14px;color:#777;font-size:12px;line-height:1.5}.gb-product-edit{margin:10px 0;border:1px solid #eaded9;border-radius:12px;background:#fffaf7}.gb-product-edit>summary{padding:12px 14px;color:#a5423c;font-weight:800;cursor:pointer}.gb-product-edit>.gb-inventory-product-form{padding:14px;border-top:1px solid #eaded9}.gb-product-edit+.gb-product-edit{margin-top:8px}@media(max-width:680px){.gb-inventory-advanced .gb-recipe{grid-template-columns:1fr}.gb-product-edit>.gb-inventory-product-form{grid-template-columns:1fr;padding:12px}}

.gb-social-cover-field[hidden]{display:none}
.gb-social-cover-field{gap:8px}
.gb-social-cover-current{display:block;width:112px;height:150px;margin-top:10px;border:2px solid #eaded9;border-radius:14px;object-fit:cover;box-shadow:0 8px 18px rgba(53,44,42,.1)}

body.gradobeauty-client-pwa #wpadminbar,
body.gradobeauty-client-pwa #header-outer,
body.gradobeauty-client-pwa #header-secondary-outer,
body.gradobeauty-client-pwa #header-space,
body.gradobeauty-client-pwa #footer-outer,
body.gradobeauty-client-pwa #footer-widgets,
body.gradobeauty-client-pwa #copyright,
body.gradobeauty-client-pwa #colophon,
body.gradobeauty-client-pwa .footer-widgets,
body.gradobeauty-client-pwa .footer-widgets-outer,
body.gradobeauty-client-pwa footer.site-footer,
body.gradobeauty-client-pwa footer#footer-outer,
body.gradobeauty-client-pwa footer#colophon,
body.gradobeauty-client-pwa #slide-out-widget-area,
body.gradobeauty-client-pwa #slide-out-widget-area-bg,
body.gradobeauty-client-pwa > header,
body.gradobeauty-client-pwa > footer {display:none}

/* 0.25.7 | Biblioteca social compacta y vistas previas vacías útiles */
.gb-social-library{padding:0;overflow:hidden}
.gb-social-library>.gb-section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 20px;margin:0;padding:17px 20px;border-bottom:1px solid #eee3df;background:linear-gradient(135deg,#fff,#fffaf8)}
.gb-social-library>.gb-section-heading>div{min-width:0}
.gb-social-library>.gb-section-heading>p{grid-column:1;margin:1px 0 0;font-size:12px}
.gb-social-library-toggle{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:10px;min-height:38px;padding:7px 11px 7px 14px;border:1px solid #ead8d2;border-radius:999px;background:#fff;color:#a8443e;font:inherit;font-size:11px;font-weight:850;cursor:pointer}
.gb-social-library-toggle b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff0eb;font-size:15px;line-height:1}
.gb-social-library.is-collapsed>.gb-section-heading{border-bottom:0}
.gb-social-library.is-collapsed>.gb-social-list,.gb-social-library.is-collapsed>.gb-empty{display:none}
.gb-social-library>.gb-social-list{grid-template-columns:repeat(auto-fill,minmax(270px,360px));justify-content:start;gap:12px;padding:16px 20px 20px}
.gb-social-library>.gb-social-list article{grid-template-columns:64px minmax(0,1fr);align-content:start;gap:11px;min-height:138px;padding:12px;box-sizing:border-box}
.gb-social-library>.gb-social-list article:not(:has(>img)){grid-template-columns:minmax(0,1fr)}
.gb-social-library>.gb-social-list article>img{width:64px;height:64px}
.gb-social-library>.gb-social-list article>.gb-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:auto}
.gb-social-library>.gb-social-list article>.gb-actions .button{display:grid;place-items:center;min-height:34px;height:auto;padding:6px 8px;font-size:9px;line-height:1.2;text-align:center;white-space:normal}
.gb-social-library>.gb-empty{margin:0;padding:18px 20px;border:0;border-radius:0;background:#fffaf8;color:#777;font-size:12px;text-align:left}
.gb-social-preview-media>span{display:grid;place-items:center;align-content:center;gap:8px;width:100%;height:100%;min-height:inherit;padding:24px;box-sizing:border-box;color:#a89fa0;font-size:12px;font-weight:750;text-align:center}
.gb-social-preview-media>span:before{content:'＋';display:grid;place-items:center;width:46px;height:46px;border:1px dashed currentColor;border-radius:50%;font-size:25px;font-weight:400;line-height:1;opacity:.75}
.gb-social-workspace form.is-story-post .gb-social-preview-media>span{color:#c7c1c8;background:radial-gradient(circle at center,#302d32,#1c1a1e 70%)}
@media(max-width:782px){
 .gb-social-library{padding:0}
 .gb-social-library>.gb-section-heading{padding:13px 12px}
 .gb-social-library>.gb-section-heading>p{display:none}
 .gb-social-library-toggle{grid-row:1;min-height:34px;padding:5px 7px 5px 10px}
 .gb-social-library-toggle span{display:none}
 .gb-social-library>.gb-social-list{grid-template-columns:1fr;padding:10px 12px 12px}
 .gb-social-library>.gb-social-list article{grid-template-columns:54px minmax(0,1fr);min-height:0;gap:10px;padding:10px}
 .gb-social-library>.gb-social-list article:not(:has(>img)){grid-template-columns:1fr}
 .gb-social-library>.gb-empty{padding:13px 12px;font-size:11px}
}
body.gradobeauty-client-pwa{padding-top:0}
body.gradobeauty-client-pwa #ajax-content-wrap,
body.gradobeauty-client-pwa .container-wrap{margin-top:0;padding-top:0}
body.gradobeauty-client-pwa #ajax-content-wrap > #footer-outer,
body.gradobeauty-client-pwa #ajax-content-wrap > footer,
body.gradobeauty-client-pwa .ocm-effect-wrap-inner > #footer-outer,
body.gradobeauty-client-pwa .ocm-effect-wrap-inner > footer{display:none}
.gradobeauty-client-app-page{margin:0;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);min-height:100vh;background:#fffaf7}
.gb-client-app-main{display:block;width:100%;min-height:100vh;margin:0;padding:0;box-sizing:border-box}

/* 0.23.102 | Biblioteca social legible con y sin miniatura */
.gb-social-list article > div:not(.gb-actions){display:grid;align-content:center;gap:5px;min-width:0}
.gb-social-list article > div:not(.gb-actions) > span{display:block;width:max-content;max-width:100%;padding:4px 8px;border-radius:999px;background:#f4efec;color:#9b463f;font-size:9px;font-weight:900;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}
.gb-social-list article > div:not(.gb-actions) > span.is-published{background:#e9f6ef;color:#176b4c}
.gb-social-list article > div:not(.gb-actions) > span.is-failed{background:#fff0ef;color:#a92e32}
.gb-social-list article > div:not(.gb-actions) > strong{display:block;margin:0;color:#30323a;font-size:16px;font-weight:800;line-height:1.3;overflow-wrap:anywhere}
.gb-social-list article > div:not(.gb-actions) > small{display:block;margin:0;color:#777;font-size:12px;font-weight:500;line-height:1.35;overflow-wrap:anywhere}
.gb-social-list article > div:not(.gb-actions) > em{display:block;margin-top:2px;color:#a92e32;font-size:11px;line-height:1.4;overflow-wrap:anywhere}
@media(max-width:782px){.gb-social-list article{gap:10px;padding:11px}.gb-social-list article>img{width:54px;height:54px}.gb-social-list article > div:not(.gb-actions) > strong{font-size:14px}.gb-social-list article > div:not(.gb-actions) > small{font-size:11px}}

@media (max-width: 760px) {
    .gb-owner-publish-result { grid-template-columns: auto minmax(0, 1fr); }
    .gb-owner-publish-result > a { grid-column: 1 / -1; text-align: center; }
}

body.gradobeauty-app-page {
    color: #394145;
    font-family: "Avenir Next", "Montserrat", "Century Gothic", Arial, sans-serif;
}

.gradobeauty-app-page #wpadminbar,
.gradobeauty-app-page #header-outer,
.gradobeauty-app-page .site-header,
.gradobeauty-app-page > header,
.gradobeauty-app-page > footer,
.gradobeauty-app-page .site-footer {
    display: none;
}



/* La cabecera, licencia y bienvenida del dashboard se definen únicamente en grado-creativo-core.css. */

.gb-app-menu {
    display: flex;
    align-items: center;
    gap: 4px;
    overflow-x: auto;
    margin: 0 0 14px;
    padding: 5px;
    border: 1px solid #e7e1d6;
    border-radius: 13px;
    background: #fff;
    scrollbar-width: thin;
}

.gb-app-menu a {
    flex: 0 0 auto;
    padding: 9px 13px;
    border-radius: 9px;
    color: #555d60;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
}

.gb-app-menu a:hover {
    background: #faf8f3;
    color: #8d7742;
}

.gb-app-menu a.is-active {
    background: #b49b5b;
    color: #fff;
}

.gb-app-menu-toggle {
    display: none;
}

.gb-owner-shell.is-dashboard .gb-owner-stats {
    gap: 10px;
    margin: 0 0 12px;
}

.gb-owner-shell.is-dashboard .gb-owner-stats a {
    display: flex;
    align-items: baseline;
    gap: 9px;
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid #e8e2d7;
    border-radius: 12px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.gb-owner-shell.is-dashboard .gb-owner-stats a:hover,
.gb-owner-shell.is-dashboard .gb-owner-stats a:focus-visible {
    border-color: rgba(194, 65, 67, .34);
    box-shadow: 0 9px 22px rgba(73, 47, 39, .08);
    transform: translateY(-1px);
}

.gb-owner-shell.is-dashboard .gb-owner-stats strong {
    color: #b49b5b;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.gb-owner-shell.is-dashboard .gb-owner-stats span {
    min-width: 0;
    color: #626a6d;
    font-size: 13px;
    font-weight: 600;
}

.gb-owner-shell.is-dashboard .gb-owner-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.gb-owner-shell.is-dashboard .gb-owner-grid a {
    gap: 4px;
    min-height: 78px;
    box-sizing: border-box;
    padding: 15px;
    border: 1px solid #e7e1d6;
    border-radius: 13px;
    background: #fdfcf9;
    transform: none;
}

.gb-owner-shell.is-dashboard .gb-owner-grid a:hover {
    border-color: #c9b77f;
    background: #faf7ef;
    box-shadow: 0 6px 16px rgba(53, 48, 40, .05);
}

.gb-owner-shell.is-dashboard .gb-owner-grid strong {
    color: #394145;
    font-size: 16px;
    font-weight: 700;
}

.gb-owner-shell.is-dashboard .gb-owner-grid span {
    color: #747b7e;
    font-size: 13px;
    line-height: 1.35;
}

.gb-owner-workspace {
    padding: 2px 0 0;
}

.gb-owner-workspace .wrap.gb-wrap {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.gb-owner-workspace .gb-heading {
    margin: 15px 2px 12px;
}

.gb-owner-workspace .gb-heading h1 {
    margin: 3px 0;
    color: #394145;
    font-size: 27px;
    font-weight: 700;
}

.gb-owner-workspace .gb-heading p {
    margin: 0;
    color: #747b7e;
    font-size: 14px;
}

.gb-owner-workspace .gb-panel,
.gb-owner-workspace .gb-card {
    padding: 17px;
    border-radius: 14px;
    box-shadow: 0 5px 16px rgba(53, 48, 40, .035);
}

.gb-owner-workspace .gb-panel h2 {
    font-size: 20px;
}

.gb-owner-workspace .gb-panel p {
    color: #687073;
    font-size: 14px;
    line-height: 1.5;
}

.gb-owner-workspace .gb-fields label,
.gb-owner-workspace label {
    color: #4d5558;
    font-size: 13px;
}

.gb-owner-workspace input:not([type="checkbox"]):not([type="radio"]),
.gb-owner-workspace select,
.gb-owner-workspace textarea {
    min-height: 40px;
    box-sizing: border-box;
    border: 1px solid #ded8cc;
    border-radius: 9px;
    background: #fff;
    color: #394145;
    font-size: 14px;
    line-height: 1.35;
}

.gb-owner-workspace textarea {
    min-height: 105px;
}

.gb-owner-workspace input[type="checkbox"],
.gb-owner-workspace input[type="radio"] {
    min-height: 0;
}

.gb-owner-workspace .gb-service > div:first-child {
    min-width: 0;
}

.gb-owner-workspace .gb-service > div:first-child strong {
    color: #394145;
    font-size: 17px;
    line-height: 1.3;
}

.gb-owner-workspace .gb-service > div:first-child span {
    margin-top: 4px;
    color: #72797c;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
}

.gb-owner-workspace .gb-empty {
    font-size: 14px;
    line-height: 1.45;
}

.gb-owner-workspace .gb-hour-row > strong {
    font-size: 17px;
    font-weight: 700;
}

.gb-owner-workspace .gb-hour-row label {
    gap: 9px;
    color: #50585b;
    font-size: 15px;
    font-weight: 600;
}

.gb-owner-workspace .gb-hour-row input[type="time"] {
    min-width: 112px;
    font-size: 15px;
    font-weight: 550;
}

.gb-owner-workspace .gb-settings {
    margin-bottom: 16px;
    border-color: #e3dccf;
}

.gb-owner-workspace .gb-settings > h2,
.gb-owner-workspace .gb-settings .gb-section-heading h2 {
    margin: 0 0 15px;
    padding-bottom: 11px;
    border-bottom: 1px solid #eee8dd;
    color: #394145;
    font-size: 22px;
}

.gb-owner-workspace .gb-settings .gb-section-heading {
    align-items: flex-start;
    margin-bottom: 16px;
}

.gb-owner-workspace .gb-settings .gb-section-heading p {
    max-width: 420px;
    margin: 2px 0 0;
    font-size: 14px;
    text-align: right;
}

.gb-owner-workspace .gb-settings label {
    font-size: 14px;
    font-weight: 650;
}

.gb-owner-workspace .gb-settings small {
    color: #7b8183;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
}

.gb-owner-workspace .gb-rejected-panel > p {
    max-width: 760px;
    margin: 8px 0 14px;
    font-size: 14px;
    line-height: 1.5;
}

.gb-owner-workspace .gb-calendar-title {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr) 120px;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}

.gb-owner-workspace .gb-calendar-title h2 {
    margin: 0;
    color: #394145;
    font-size: 20px;
    text-align: center;
    text-transform: capitalize;
}

.gb-owner-workspace .gb-calendar-title .button {
    width: 100%;
}

.gb-owner-workspace .gb-weekdays span {
    color: #8c7641;
    font-size: 13px;
    font-weight: 700;
}

.gb-owner-workspace .gb-day {
    min-height: 62px;
    border: 1px solid #e5e0d6;
    background: #fdfcf9;
    color: #394145;
}

.gb-owner-workspace .gb-day:hover:not(.is-empty) {
    border-color: #b49b5b;
    background: #faf7ef;
    box-shadow: 0 5px 14px rgba(104, 86, 43, .08);
}

.gb-owner-workspace .gb-day.is-today {
    border-color: #b49b5b;
    box-shadow: inset 0 0 0 1px #b49b5b;
}

.gb-owner-workspace .gb-day.is-selected {
    border-color: #b49b5b;
    background: #b49b5b;
    color: #fff;
    box-shadow: none;
}

.gb-owner-workspace .gb-day.is-selected span {
    color: #fff;
}

.gb-owner-workspace .gb-day.is-empty {
    border: 0;
    background: transparent;
}

.gb-owner-workspace .button,
.gb-owner-workspace button.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    box-sizing: border-box;
    padding: 7px 12px;
    border: 1px solid #d6c9aa;
    border-radius: 8px;
    background: #fff;
    color: #75602f;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: none;
}

.gb-owner-workspace .button-primary,
.gb-owner-workspace button.button-primary {
    border-color: #b49b5b;
    background: #b49b5b;
    color: #fff;
}

.gb-owner-workspace .gb-danger {
    border-color: #d7b8bd;
    color: #9a4d59;
}

.gb-owner-workspace table {
    border-collapse: collapse;
    color: #4d5558;
    font-size: 13px;
}

.gb-owner-workspace th {
    color: #394145;
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.gb-owner-workspace .gb-bookings-scroll {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 4px;
}

.gb-owner-workspace details.gb-all-bookings {
    padding: 0;
    overflow: hidden;
}

.gb-owner-workspace .gb-all-bookings > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    box-sizing: border-box;
    width: 100%;
    padding: 21px 24px;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.gb-owner-workspace .gb-all-bookings > summary::-webkit-details-marker {
    display: none;
}

.gb-owner-workspace .gb-all-bookings > summary > span:first-child {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.gb-owner-workspace .gb-all-bookings > summary strong {
    color: #343a3d;
    font-size: 17px;
    font-weight: 780;
}

.gb-owner-workspace .gb-all-bookings > summary small {
    color: #858a8d;
    font-size: 12px;
    font-weight: 500;
}

.gb-owner-workspace .gb-all-bookings-meta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.gb-owner-workspace .gb-all-bookings-meta b {
    display: grid;
    place-items: center;
    min-width: 31px;
    height: 31px;
    padding: 0 8px;
    border-radius: 999px;
    background: #fff0ea;
    color: #b74440;
    font-size: 12px;
}

.gb-owner-workspace .gb-all-bookings-meta i {
    width: 9px;
    height: 9px;
    border-right: 2px solid #a34a43;
    border-bottom: 2px solid #a34a43;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .2s ease;
}

.gb-owner-workspace .gb-all-bookings[open] > summary {
    border-bottom: 1px solid #eee6dc;
    background: #fffaf7;
}

.gb-owner-workspace .gb-all-bookings[open] .gb-all-bookings-meta i {
    transform: rotate(225deg) translate(-2px, -2px);
}

.gb-owner-workspace .gb-all-bookings-content {
    padding: 22px 24px 24px;
}

.gb-owner-workspace .gb-bookings-table {
    width: 100%;
    min-width: 1120px;
    table-layout: auto;
}

.gb-owner-workspace .gb-bookings-table .gb-col-date { width: 140px; }
.gb-owner-workspace .gb-bookings-table .gb-col-client { width: 190px; }
.gb-owner-workspace .gb-bookings-table .gb-col-service { width: 150px; }
.gb-owner-workspace .gb-bookings-table .gb-col-photo { width: 120px; }
.gb-owner-workspace .gb-bookings-table .gb-col-status { width: 160px; }
.gb-owner-workspace .gb-bookings-table .gb-col-deposit { width: 145px; }
.gb-owner-workspace .gb-bookings-table .gb-col-actions { width: 230px; }

.gb-owner-workspace .gb-bookings-table th,
.gb-owner-workspace .gb-bookings-table td {
    box-sizing: border-box;
    padding: 15px 12px;
    vertical-align: top;
    line-height: 1.45;
    overflow-wrap: normal;
    word-break: normal;
}

.gb-owner-workspace .gb-bookings-table th {
    white-space: nowrap;
}

.gb-owner-workspace .gb-bookings-table td:first-child,
.gb-owner-workspace .gb-bookings-table td:nth-child(3),
.gb-owner-workspace .gb-bookings-table td:nth-child(4),
.gb-owner-workspace .gb-bookings-table td:nth-child(5),
.gb-owner-workspace .gb-bookings-table td:nth-child(6) {
    white-space: nowrap;
}

.gb-owner-workspace .gb-bookings-table td strong,
.gb-owner-workspace .gb-bookings-table .gb-client-phone {
    display: block;
}

.gb-owner-workspace .gb-bookings-table .gb-client-phone {
    margin-top: 5px;
    color: #7a8082;
}

.gb-owner-workspace .gb-bookings-table td:last-child .gb-actions {
    flex-wrap: nowrap;
    min-width: 215px;
}

.gb-owner-workspace .gb-booking-notice-form{display:inline-flex;align-items:center;gap:6px;margin:0}.gb-owner-workspace .gb-booking-notice-form select{width:auto;min-width:72px;height:38px;margin:0;padding:0 28px 0 9px;border:1px solid #e1c1ba;border-radius:9px;background:#fff;color:#343640;font-weight:750}.gb-owner-workspace .gb-actions .gb-notice-ready{border-color:#dc4a31;background:linear-gradient(135deg,#c74742,#ed5b24);color:#fff}.gb-owner-workspace .gb-actions .gb-notice-delay{border-color:#c74742;background:#fff8f5;color:#a83c38}
#gb-manual-registered-field[hidden],#gb-manual-guest-field[hidden]{display:none}
@media(max-width:782px){.gb-owner-workspace .gb-booking-notice-form{display:grid;grid-template-columns:1fr;width:100%}.gb-owner-workspace .gb-delay-notice-form{grid-template-columns:76px minmax(0,1fr)}.gb-owner-workspace .gb-booking-notice-form select,.gb-owner-workspace .gb-booking-notice-form .button{width:100%;box-sizing:border-box}}

.gb-owner-workspace .gb-photo-preview {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    width: 96px;
    min-height: 0;
    padding: 5px;
    border: 1px solid #e2d8cb;
    border-radius: 11px;
    background: #fff;
    color: #8a443e;
    cursor: zoom-in;
}

.gb-owner-workspace .gb-photo-preview img {
    display: block;
    width: 84px;
    height: 68px;
    border-radius: 8px;
    object-fit: cover;
}

.gb-owner-workspace .gb-photo-preview span {
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
}

.gb-owner-workspace .gb-photo-missing {
    color: #8b8f91;
    font-size: 12px;
}

.gb-photo-modal {
    position: fixed;
    z-index: 999999;
    inset: 0;
    display: grid;
    place-items: center;
    box-sizing: border-box;
    padding: 28px;
    background: rgba(25, 23, 22, .82);
    backdrop-filter: blur(7px);
}

.gb-photo-modal[hidden] {
    display: none;
}

.gb-photo-modal-dialog {
    position: relative;
    width: min(920px, 94vw);
    max-height: 92vh;
    padding: 18px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .34);
}

.gb-photo-modal-dialog img {
    display: block;
    width: 100%;
    max-height: calc(92vh - 95px);
    border-radius: 12px;
    object-fit: contain;
    background: #f5f2ed;
}

.gb-photo-modal-title {
    margin: 12px 48px 0 2px;
    color: #43484a;
    font-size: 14px;
    font-weight: 750;
}

.gb-photo-modal-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #8f3e3f;
    font-size: 25px;
    line-height: 1;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .14);
    cursor: pointer;
}

@media (max-width: 850px) {
    

    

    .gb-owner-workspace .gb-bookings-scroll {
        overflow: visible;
    }

    .gb-owner-workspace .gb-all-bookings > summary {
        padding: 18px;
    }

    .gb-owner-workspace .gb-all-bookings-content {
        padding: 16px;
    }

    .gb-owner-workspace .gb-bookings-table,
    .gb-owner-workspace .gb-bookings-table tbody,
    .gb-owner-workspace .gb-bookings-table tr,
    .gb-owner-workspace .gb-bookings-table td {
        display: block;
        width: 100%;
        min-width: 0;
    }

    .gb-owner-workspace .gb-bookings-table colgroup,
    .gb-owner-workspace .gb-bookings-table thead {
        display: none;
    }

    .gb-owner-workspace .gb-bookings-table tbody {
        display: grid;
        gap: 14px;
    }

    .gb-owner-workspace .gb-bookings-table tr {
        box-sizing: border-box;
        padding: 8px 14px;
        border: 1px solid #e6dfd4;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 7px 18px rgba(50, 42, 30, .04);
    }

    .gb-owner-workspace .gb-bookings-table td {
        display: grid;
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 12px;
        padding: 11px 0;
        border: 0;
        border-bottom: 1px solid #eee8dd;
        white-space: normal;
    }

    .gb-owner-workspace .gb-bookings-table td:last-child {
        border-bottom: 0;
    }

    .gb-owner-workspace .gb-bookings-table td::before {
        content: attr(data-label);
        color: #8a7440;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions {
        min-width: 0;
        flex-wrap: wrap;
    }

    .gb-app-menu-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        margin: 0 0 8px;
        padding: 11px 13px;
        border: 1px solid #e2dbcf;
        border-radius: 10px;
        background: #fff;
        color: #4b5356;
        font-size: 12px;
        font-weight: 700;
    }

    .gb-app-menu-toggle i,
    .gb-app-menu-toggle i::before,
    .gb-app-menu-toggle i::after {
        display: block;
        width: 17px;
        height: 1px;
        background: #8c7641;
        content: "";
    }

    .gb-app-menu-toggle i {
        position: relative;
    }

    .gb-app-menu-toggle i::before {
        position: absolute;
        top: -5px;
    }

    .gb-app-menu-toggle i::after {
        position: absolute;
        top: 5px;
    }

    .gb-app-menu {
        display: none;
        grid-template-columns: 1fr 1fr;
        gap: 5px;
        overflow: visible;
    }

    .gb-app-menu.is-open {
        display: grid;
    }

    .gb-app-menu a {
        white-space: normal;
    }

    .gb-owner-shell.is-dashboard .gb-owner-grid {
        grid-template-columns: 1fr 1fr;
    }

    .gb-owner-workspace .gb-grid,
    .gb-owner-workspace .gb-fields {
        grid-template-columns: 1fr;
    }

    .gb-owner-workspace .gb-settings .gb-section-heading p {
        max-width: none;
        text-align: left;
    }

    .gb-owner-workspace .gb-calendar-title {
        grid-template-columns: 92px minmax(0, 1fr) 92px;
        gap: 8px;
    }

    .gb-owner-workspace .gb-calendar-title h2 {
        font-size: 17px;
    }
}

@media (max-width: 560px) {
    .gb-owner-shell.is-dashboard .gb-owner-stats,
    .gb-owner-shell.is-dashboard .gb-owner-grid {
        grid-template-columns: 1fr;
    }

    .gb-owner-shell.is-dashboard .gb-owner-stats a {
        padding: 10px 12px;
    }

    .gb-owner-shell.is-dashboard .gb-owner-grid a {
        min-height: 68px;
    }

    .gb-owner-workspace .gb-heading h1 {
        font-size: 23px;
    }

    .gb-owner-workspace .gb-calendar-title {
        grid-template-columns: 1fr 1fr;
    }

    .gb-owner-workspace .gb-calendar-title h2 {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .gb-owner-workspace .gb-calendar-title .button:first-child {
        grid-column: 1;
        grid-row: 2;
    }

    .gb-owner-workspace .gb-calendar-title .button:last-child {
        grid-column: 2;
        grid-row: 2;
    }
}

/* Expediente VIP de boda: recorrido secuencial */
.gb-wedding-timeline {
    margin: 28px 22px 8px;
    padding: 26px;
    border: 1px solid #ded3ae;
    border-radius: 22px;
    background: linear-gradient(145deg, #fffdf7, #f7f1df);
}

.gb-wedding-timeline-head span,
.gb-wedding-step header span {
    color: #8f772c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.gb-wedding-timeline-head h3 { margin: 5px 0; }
.gb-wedding-timeline-head p { margin: 0 0 20px; color: #6f6859; }
.gb-wedding-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch; gap: 16px; }
.gb-wedding-step { display: flex; min-width: 0; height: 100%; box-sizing: border-box; flex-direction: column; padding: 20px; border: 1px solid #dfd5b7; border-radius: 18px; background: rgba(255,255,255,.88); box-shadow: 0 12px 30px rgba(79,65,28,.06); }
.gb-wedding-step header { display: flex; gap: 12px; }
.gb-wedding-step header > b { display: grid; flex: 0 0 38px; width: 38px; height: 38px; place-items: center; border-radius: 12px; background: #9a8135; color: #fff; }
.gb-wedding-step h4 { margin: 3px 0 5px; font-size: 18px; }
.gb-wedding-step p { margin: 0; color: #6d6b65; }
.gb-wedding-step-date { display: flex; align-items: baseline; justify-content: space-between; margin: 16px 0 10px; padding: 12px 14px; border-radius: 12px; background: #f4eedc; color: #594b25; }
.gb-wedding-step form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: auto; padding-top: 16px; }
.gb-wedding-step label { display: grid; gap: 6px; font-size: 12px; font-weight: 700; }
.gb-wedding-step input,
.gb-wedding-step textarea { width: 100%; box-sizing: border-box; }
.gb-wedding-message,
.gb-wedding-step form .button { grid-column: 1 / -1; }
.gb-vip-button { border-color: #8f772c; background: #9a8135; color: #fff; }
.gb-wedding-money { display: grid; gap: 4px; margin-top: 14px; padding: 12px; border-radius: 12px; background: #f7f3e7; }
.gb-wedding-money span { color: #7b725e; font-size: 12px; text-transform: uppercase; }
.gb-wedding-step.is-locked { background: #f7f5ef; opacity: .72; }
.gb-wedding-locked { margin-top: auto; padding: 13px; border-radius: 12px; background: #eeeae0; color: #6e695e; font-size: 13px; }
.gb-wedding-payment .gb-actions { margin-top: auto; padding-top: 18px; }

/* Listado compacto y desplegable de expedientes */
.gb-event-tools {
    display: grid;
    grid-template-columns: auto minmax(260px, 1fr) auto;
    align-items: center;
    gap: 14px;
    margin: 20px 0 14px;
    padding: 16px 18px;
    border: 1px solid #ddd3b5;
    border-radius: 16px;
    background: #fffdf7;
}
.gb-event-tools label { color: #6e5b28; font-size: 13px; font-weight: 800; }
.gb-event-tools input { width: 100%; min-height: 44px; box-sizing: border-box; border: 1px solid #d8cfb5; border-radius: 11px; background: #fff; }
.gb-event-tools > span { color: #857748; font-size: 12px; font-weight: 700; }
.gb-event-no-results { padding: 20px; border-radius: 14px; background: #f6f2e7; color: #6e6859; text-align: center; }
.gb-event-accordion { margin: 0 0 12px; border: 1px solid #ded6c2; border-radius: 17px; background: #fff; box-shadow: 0 8px 24px rgba(65,55,30,.05); overflow: hidden; }
.gb-event-accordion > summary { display: grid; grid-template-columns: 76px minmax(220px,1fr) auto auto; align-items: center; gap: 18px; min-height: 74px; padding: 10px 18px; cursor: pointer; list-style: none; }
.gb-event-accordion > summary::-webkit-details-marker { display: none; }
.gb-event-accordion > summary:hover { background: #fffaf0; }
.gb-event-summary-date { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 7px; color: #8b722c; }
.gb-event-summary-date b { font-size: 27px; line-height: 1; }
.gb-event-summary-date small { font-size: 11px; font-weight: 750; line-height: 1.15; text-transform: uppercase; }
.gb-event-summary-client { display: grid; min-width: 0; gap: 3px; }
.gb-event-summary-client small { overflow: hidden; color: #8b722c; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-overflow: ellipsis; white-space: nowrap; }
.gb-event-summary-client strong { overflow: hidden; color: #33343a; font-size: 17px; text-overflow: ellipsis; white-space: nowrap; }
.gb-event-summary-status { padding: 8px 12px; border-radius: 999px; background: #f4edda; color: #745f27; font-size: 12px; font-weight: 750; }
.gb-event-summary-action { color: #8b722c; font-size: 13px; font-weight: 800; white-space: nowrap; }
.gb-event-summary-action b { display: inline-block; margin-left: 5px; font-size: 22px; transition: transform .18s ease; }
.gb-event-accordion[open] .gb-event-summary-action b { transform: rotate(90deg); }
.gb-event-accordion > .gb-event-card { margin: 0; border: 0; border-top: 1px solid #e8e1d1; border-radius: 0; box-shadow: none; }

@media (max-width: 760px) {
    .gb-event-tools { grid-template-columns: 1fr; }
    .gb-event-accordion > summary { grid-template-columns: 58px minmax(0,1fr); gap: 10px; padding: 12px; }
    .gb-event-summary-status { justify-self: start; }
    .gb-event-summary-action { grid-column: 2; }
}

.gb-counter-decision {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 16px;
    padding: 18px;
    border: 1px solid #d9c889;
    border-radius: 16px;
    background: linear-gradient(135deg, #fffdf5, #f4ead0);
}
.gb-counter-decision span { color: #8b722b; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.gb-counter-decision strong { display: block; margin-top: 4px; color: #39372f; font-size: 18px; }
.gb-counter-decision p { margin: 7px 0 0; color: #716b5c; }
.gb-counter-decision > div:last-child { display: flex; flex: 0 0 auto; gap: 9px; }
.gb-counter-decline { border-color: #cbbf9e; color: #6f6240; }

@media (max-width: 760px) {
    .gb-counter-decision,
    .gb-counter-decision > div:last-child { align-items: stretch; flex-direction: column; }
}

@media (max-width: 1100px) {
    .gb-wedding-steps { grid-template-columns: 1fr; }
}

/* Aviso persistente y bandeja de reservas que requieren confirmación. */
.gb-owner-publish-result {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 15px;
    margin: 18px 0;
    padding: 17px 19px;
    border: 1px solid rgba(47, 139, 92, .28);
    border-radius: 16px;
    background: linear-gradient(105deg, #edf9f2, #fbfefc);
    box-shadow: 0 12px 30px rgba(37, 102, 70, .08);
}
.gb-owner-publish-result.is-error { border-color: rgba(194, 65, 67, .28); background: linear-gradient(105deg, #fff0ed, #fffaf8); }
.gb-owner-publish-result.is-processing { border-color: rgba(180, 155, 91, .36); background: linear-gradient(105deg, #fff8e9, #fffdf7); }
.gb-owner-publish-result-icon { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 50%; background: #2f8b5c; color: #fff; }
.gb-owner-publish-result.is-error .gb-owner-publish-result-icon { background: #c24143; }
.gb-owner-publish-result.is-processing .gb-owner-publish-result-icon { background: #a8873d; }
.gb-owner-publish-result-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.gb-owner-publish-result > span:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.gb-owner-publish-result small { color: #28784f; font-size: 11px; font-weight: 850; letter-spacing: .13em; }
.gb-owner-publish-result.is-error small { color: #b13c3e; }
.gb-owner-publish-result.is-processing small { color: #806629; }
.gb-owner-publish-result strong { color: #303238; font-size: 18px; line-height: 1.25; }
.gb-owner-publish-result em { color: #687075; font-size: 14px; font-style: normal; line-height: 1.4; }
.gb-owner-publish-result > a { padding: 10px 14px; border: 1px solid currentColor; border-radius: 10px; color: #28784f; font-size: 13px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.gb-owner-publish-result.is-error > a { color: #b13c3e; }
.gb-owner-publish-result.is-processing > a { color: #806629; }

.gb-owner-booking-alert {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 15px;
    margin: 14px 0;
    padding: 15px 18px;
    border: 1px solid rgba(194, 65, 67, .22);
    border-radius: 15px;
    background: linear-gradient(100deg, #fff2ed 0%, #fff9f5 100%);
    box-shadow: 0 10px 28px rgba(99, 49, 37, .07);
    color: #303238;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.gb-owner-booking-alert:hover,
.gb-owner-booking-alert:focus-visible {
    border-color: rgba(194, 65, 67, .48);
    box-shadow: 0 14px 34px rgba(99, 49, 37, .11);
    color: #303238;
    transform: translateY(-1px);
}

.gb-owner-booking-alert-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
}

.gb-owner-booking-alert-icon svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.gb-owner-booking-alert-copy {
    display: grid;
    gap: 3px;
}

.gb-owner-booking-alert-copy small {
    color: #b44943;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.gb-owner-booking-alert-copy strong {
    font-size: 17px;
    line-height: 1.3;
}

.gb-owner-booking-alert-action {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ad413f;
    font-size: 14px;
    font-weight: 750;
    white-space: nowrap;
}

.gb-owner-booking-alert-action b {
    font-size: 23px;
    font-weight: 400;
    line-height: 1;
}

.gb-owner-client-alert {
    margin-top: 0;
    border-color: rgba(194, 65, 67, .34);
    background:
        radial-gradient(circle at 92% 10%, rgba(233, 87, 33, .13), transparent 28%),
        linear-gradient(100deg, #fff0ea 0%, #fffaf7 100%);
}

.gb-owner-client-alert .gb-owner-booking-alert-icon {
    box-shadow: 0 8px 20px rgba(194, 65, 67, .2);
}

.gb-owner-event-alert {
    border-color: rgba(180, 155, 91, .42);
    background:
        radial-gradient(circle at 92% 10%, rgba(180, 155, 91, .16), transparent 30%),
        linear-gradient(100deg, #fff8ea 0%, #fffdf8 100%);
}

.gb-owner-event-alert .gb-owner-booking-alert-icon {
    background: linear-gradient(135deg, #967b39, #c8a85b);
    box-shadow: 0 8px 20px rgba(150, 123, 57, .2);
}

.gb-owner-event-alert .gb-owner-booking-alert-copy small,
.gb-owner-event-alert .gb-owner-booking-alert-action {
    color: #806629;
}

#gb-pending-events {
    scroll-margin-top: 18px;
}

.gb-pending-clients {
    scroll-margin-top: 18px;
}

.gb-pending-clients:target {
    border-color: rgba(194, 65, 67, .3);
    box-shadow: 0 0 0 3px rgba(222, 81, 38, .1), 0 18px 40px rgba(74, 46, 38, .08);
}

.gb-pending-bookings {
    scroll-margin-top: 18px;
    border-color: rgba(194, 65, 67, .25);
    background: linear-gradient(180deg, #fff8f4 0, #fff 150px);
}

.gb-pending-bookings:target {
    box-shadow: 0 0 0 3px rgba(222, 81, 38, .11), 0 18px 40px rgba(74, 46, 38, .09);
}

.gb-pending-bookings-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.gb-pending-bookings-head h2 {
    margin: 4px 0 5px;
}

.gb-pending-bookings-head p {
    margin: 0;
    color: #697074;
}

.gb-pending-bookings-head > strong {
    display: grid;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
    font-size: 18px;
}

@media (max-width: 640px) {
    .gb-owner-booking-alert {
        grid-template-columns: auto minmax(0, 1fr);
        padding: 14px;
    }

    .gb-owner-booking-alert-action {
        grid-column: 2;
    }

    .gb-pending-bookings-head {
        align-items: center;
    }
}

/* Servicios: alta independiente y edición contextual por servicio. */
.gb-event-list {
    display: grid;
    gap: 18px;
}

.gb-event-feedback {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 9px 13px;
    border: 1px solid #bfe3d3;
    border-radius: 13px;
    background: #edf9f4;
    color: #287259;
    font-size: 13px;
    font-weight: 700;
}

.gb-wedding-archive {
    display: grid;
    gap: 12px;
    margin-bottom: 24px;
}

.gb-wedding-archive-title {
    display: flex;
    align-items: baseline;
    gap: 12px;
    color: #887126;
}

.gb-wedding-archive-title span {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .14em;
}

.gb-wedding-archive-title strong {
    font-size: 17px;
}

.gb-wedding-archive-row {
    display: grid;
    grid-template-columns: 58px minmax(170px,.75fr) minmax(250px,1.4fr) auto auto;
    align-items: center;
    gap: 18px;
    padding: 18px 20px;
    border: 1px solid rgba(164,137,46,.38);
    border-radius: 20px;
    background: linear-gradient(115deg,#fffdf4 0%,#f7f0d3 54%,#eee0a7 100%);
    box-shadow: 0 12px 30px rgba(120,94,24,.10);
    color: #3c372b;
    text-decoration: none;
}

.gb-wedding-archive-row:hover {
    border-color: #9c8230;
    box-shadow: 0 16px 34px rgba(120,94,24,.17);
    color: #3c372b;
}

.gb-wedding-archive-crown {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    border-radius: 16px;
    background: linear-gradient(145deg,#80681f,#c7ad55);
}

.gb-wedding-archive-crown svg {
    width: 30px;
    fill: none;
    stroke: #fff;
    stroke-width: 2;
}

.gb-wedding-archive-date,
.gb-wedding-archive-client {
    display: grid;
    gap: 3px;
}

.gb-wedding-archive-row small {
    color: #8b7429;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
}

.gb-wedding-archive-row strong {
    font-size: 16px;
}

.gb-wedding-archive-row em {
    color: #777064;
    font-size: 13px;
    font-style: normal;
}

.gb-wedding-archive-status {
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(143,116,32,.12);
    color: #80691f;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

.gb-wedding-archive-row > b {
    color: #80691f;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .gb-wedding-archive-row {
        grid-template-columns: 52px 1fr;
    }
    .gb-wedding-archive-status,
    .gb-wedding-archive-row > b {
        grid-column: 2;
        justify-self: start;
    }
}

.gb-owner-workspace .gb-day.is-wedding {
    position: relative;
    overflow: hidden;
    border-color: #a98c43;
    background: linear-gradient(145deg, #806a31, #c5aa63);
    color: #fff;
    box-shadow: 0 10px 24px rgba(128, 102, 43, .24);
}

.gb-owner-workspace .gb-day.is-wedding > strong {
    color: #fff;
}

.gb-wedding-calendar-mark {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 2px;
    color: #fff;
    line-height: 1.15;
}

.gb-wedding-calendar-mark svg {
    width: 27px;
    height: 20px;
    margin-bottom: 2px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.gb-wedding-calendar-mark b {
    font-size: 10px;
    letter-spacing: 1.3px;
}

.gb-wedding-calendar-mark small {
    display: block;
    max-width: 100%;
    margin-top: 3px;
    overflow: hidden;
    color: rgba(255,255,255,.9);
    font-size: 8px;
    font-weight: 650;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gb-daily-wedding {
    display: grid;
    grid-template-columns: 64px minmax(0,1fr) auto;
    align-items: center;
    gap: 18px;
    margin: 18px 0;
    padding: 20px 22px;
    border: 1px solid #b89b52;
    border-radius: 18px;
    background: linear-gradient(135deg, #78612b, #b89b52);
    color: #fff;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(120,97,43,.2);
}

.gb-daily-wedding-crown {
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.36);
    border-radius: 16px;
    background: rgba(255,255,255,.12);
}

.gb-daily-wedding-crown svg {
    width: 34px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.gb-daily-wedding small,
.gb-daily-wedding strong,
.gb-daily-wedding em {
    display: block;
}

.gb-daily-wedding small { font-size: 11px; font-weight: 800; letter-spacing: 1.4px; }
.gb-daily-wedding strong { margin-top: 5px; font-size: 19px; }
.gb-daily-wedding em { margin-top: 4px; color: rgba(255,255,255,.88); font-size: 14px; font-style: normal; }
.gb-daily-wedding > b { font-size: 13px; white-space: nowrap; }

@media (max-width: 720px) {
    .gb-daily-wedding { grid-template-columns: 52px minmax(0,1fr); padding: 17px; }
    .gb-daily-wedding-crown { width: 48px; height: 48px; }
    .gb-daily-wedding > b { grid-column: 2; }
}

.gb-event-card {
    overflow: hidden;
    border: 1px solid #e7dcd5;
    border-radius: 18px;
    background: linear-gradient(120deg, rgba(180, 155, 91, .065), #fff 38%);
    box-shadow: 0 14px 34px rgba(66, 43, 35, .06);
}

.gb-event-card > header,
.gb-event-card > footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
}

.gb-event-card > header {
    border-bottom: 1px solid #eee4de;
    background: linear-gradient(100deg, #fbf5e7, #fffdf8);
}

.gb-event-card > header span {
    color: #876d2f;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.gb-event-card > header h2 {
    margin: 4px 0 0;
    color: #303238;
    font-size: 22px;
}

.gb-event-card > header > b {
    padding: 8px 11px;
    border-radius: 999px;
    background: #f2e8c9;
    color: #785f27;
    font-size: 12px;
    white-space: nowrap;
}

.gb-event-card.is-confirmed > header > b {
    background: #e9f7f0;
    color: #237158;
}

.gb-event-card.is-rejected {
    opacity: .72;
}

.gb-event-card-body {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 24px;
    padding: 22px;
}

.gb-event-date {
    display: grid;
    align-content: center;
    justify-items: center;
    padding: 18px;
    border-radius: 15px;
    background: linear-gradient(145deg, #8d7335, #c5a55a);
    color: #fff;
    text-align: center;
}

.gb-event-date small {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
}

.gb-event-date strong {
    margin: 4px 0 -2px;
    font-size: 42px;
    line-height: 1;
}

.gb-event-date span {
    font-size: 15px;
    text-transform: capitalize;
}

.gb-event-date em {
    margin-top: 9px;
    font-size: 13px;
    font-style: normal;
}

.gb-event-card dl {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 24px;
    margin: 0;
}

.gb-event-card dl div {
    min-width: 0;
}

.gb-event-card dt {
    margin-bottom: 4px;
    color: #80672f;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.gb-event-card dd {
    margin: 0;
    color: #50545a;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.gb-event-notes {
    grid-column: 1 / -1;
    padding-top: 11px;
    border-top: 1px solid #eee7e2;
}

.gb-event-card > footer {
    border-top: 1px solid #eee7e2;
    background: #fffdfa;
}

.gb-event-contact,
.gb-event-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.gb-event-meeting-state {
    grid-column: 1 / -1;
    padding: 12px 14px;
    border: 1px solid #e2d4ad;
    border-radius: 11px;
    background: #fbf6e9;
}

.gb-event-proposal {
    display: grid;
    grid-template-columns: minmax(220px, 1.2fr) minmax(145px, .5fr) minmax(125px, .4fr);
    gap: 14px;
    align-items: end;
    margin: 0 22px 20px;
    padding: 20px;
    border: 1px solid #dfd0a7;
    border-radius: 15px;
    background: linear-gradient(120deg, #f7efd8, #fffdf8);
}

.gb-event-proposal > div {
    align-self: center;
}

.gb-event-proposal > div span {
    display: block;
    margin-bottom: 4px;
    color: #80672f;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .13em;
}

.gb-event-proposal > div strong {
    color: #393a3e;
    font-size: 16px;
    line-height: 1.35;
}

.gb-event-proposal label {
    display: grid;
    gap: 6px;
    color: #69582f;
    font-size: 12px;
    font-weight: 750;
}

.gb-event-proposal input,
.gb-event-proposal textarea {
    width: 100%;
    box-sizing: border-box;
    min-height: 42px;
    padding: 9px 11px;
    border: 1px solid #d9c89b;
    border-radius: 9px;
    background: #fff;
}

.gb-event-proposal-message {
    grid-column: 1 / -2;
}

.gb-vip-button {
    min-height: 44px;
    border-color: #8d7335;
    background: linear-gradient(135deg, #8d7335, #b99a50);
    color: #fff;
}

@media (max-width: 720px) {
    .gb-event-card-body {
        grid-template-columns: 1fr;
    }

    .gb-event-date {
        justify-items: start;
        text-align: left;
    }

    .gb-event-card dl {
        grid-template-columns: 1fr;
    }

    .gb-event-notes {
        grid-column: auto;
    }

    .gb-event-card > header,
    .gb-event-card > footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .gb-event-proposal {
        grid-template-columns: 1fr;
        margin: 0 15px 15px;
    }

    .gb-wedding-timeline {
        margin: 22px 15px 8px;
        padding: 18px;
    }

    .gb-event-proposal-message {
        grid-column: auto;
    }
}

.gb-services-layout {
    display: grid;
    grid-template-columns: minmax(330px, .72fr) minmax(520px, 1.28fr);
    gap: 22px;
    align-items: start;
}

.gb-add-service {
    position: sticky;
    top: 18px;
}

.gb-panel-intro {
    margin: -4px 0 22px;
    color: #697074;
    font-size: 15px;
    line-height: 1.55;
}

.gb-service-accordions {
    display: grid;
    gap: 12px;
}

.gb-service-accordion {
    overflow: hidden;
    border: 1px solid #e4ddd5;
    border-radius: 16px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.gb-service-accordion[open] {
    border-color: rgba(194, 65, 67, .38);
    box-shadow: 0 16px 34px rgba(67, 42, 32, .08);
}

.gb-service-accordion.is-off {
    background: #faf8f6;
}

.gb-service-accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    cursor: pointer;
    list-style: none;
}

.gb-service-accordion summary::-webkit-details-marker {
    display: none;
}

.gb-service-summary {
    display: grid;
    position: relative;
    width: 100%;
    min-width: 0;
    gap: 4px;
    padding-right: 96px;
    box-sizing: border-box;
}

.gb-service-summary strong {
    color: #303238;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.3;
}

.gb-service-summary small {
    color: #666d71;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
}

.gb-edit-service {
    flex: 0 0 auto;
    min-width: 92px;
    padding: 10px 14px;
    border-radius: 10px;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
    font-size: 14px;
    font-weight: 750;
    text-align: center;
}

.gb-service-summary-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}.gb-service-order-controls{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid #eaded9;border-radius:10px;background:#fff}.gb-service-order-controls i{padding:6px;color:#a44943;font-size:21px;font-style:normal;font-weight:900;line-height:1}.gb-service-drag-handle{cursor:grab;touch-action:none;user-select:none}.gb-service-drag-handle:active{cursor:grabbing}.gb-service-order-controls a,.gb-service-order-controls b{display:grid;width:32px;height:32px;box-sizing:border-box;place-items:center;border:1px solid #eaded9;border-radius:7px;background:#fff7f3;color:#a53f3c;font-size:18px;font-weight:900;line-height:1;text-decoration:none}.gb-service-order-controls a:hover,.gb-service-order-controls a:focus{border-color:#c74742;background:#c74742;color:#fff}.gb-service-order-controls b{opacity:.25;cursor:not-allowed}.gb-service-accordion.is-dragging{opacity:.48;border-color:#c74742;box-shadow:0 18px 34px rgba(170,63,57,.18)}.gb-service-accordions.is-saving-order{pointer-events:none;opacity:.72}

.gb-service-accordion[open] .gb-edit-service::after {
    content: " ↑";
}

.gb-service-editor {
    padding: 22px 20px 20px;
    border-top: 1px solid #ebe4dc;
    background: linear-gradient(180deg, #fffaf7 0, #fff 90px);
}

.gb-service-editor .gb-fields {
    margin-bottom: 18px;
}

.gb-service-secondary-actions {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid #eee7df;
}

.gb-economic-dashboard {
    margin: 22px 0;
    padding: 26px;
    border: 1px solid #eddcd6;
    border-radius: 24px;
    background: linear-gradient(135deg, #fff 0%, #fff9f6 58%, #fff2ed 100%);
    box-shadow: 0 16px 38px rgba(69, 45, 27, .07);
}

.gb-economic-dashboard > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
}

.gb-economic-dashboard > header span,
.gb-economic-kpis small {
    color: #a4463e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
}

.gb-economic-dashboard > header h2 { margin: 6px 0; font-size: 28px; }
.gb-economic-dashboard > header h2 em { color: #c24143; font: inherit; font-style: normal; }
.gb-economic-dashboard > header p { margin: 0; color: #6e6964; }

.gb-economic-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.gb-economic-kpis article {
    display: flex;
    min-height: 118px;
    padding: 19px;
    border: 1px solid #e9e0d7;
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    box-sizing: border-box;
    flex-direction: column;
}

.gb-economic-kpis article.is-earned { background: linear-gradient(135deg, #c24143, #e95721); border-color: transparent; }
.gb-economic-kpis article.is-earned small,.gb-economic-kpis article.is-earned strong,.gb-economic-kpis article.is-earned span { color: #fff; }
.gb-economic-kpis article strong { margin: 11px 0 6px; color: #323139; font-size: 28px; line-height: 1; }
.gb-economic-kpis article span { margin-top: auto; color: #817a74; font-size: 13px; }

.gb-economic-history { margin-top: 16px; border: 1px solid #e8ddd1; border-radius: 16px; background: #fff; overflow: hidden; }
.gb-economic-history summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 17px 19px; cursor: pointer; list-style: none; }
.gb-economic-history summary::-webkit-details-marker { display: none; }
.gb-economic-history summary span { display: flex; gap: 4px; flex-direction: column; }
.gb-economic-history summary small { color: #8a8580; font-weight: 400; }
.gb-economic-history summary b { color: #c24143; font-size: 13px; }
.gb-economic-history[open] summary b::after { content: " ↑"; }
.gb-economic-table-wrap { border-top: 1px solid #eee5dc; overflow-x: auto; }
.gb-economic-table-wrap table { width: 100%; border-collapse: collapse; }
.gb-economic-table-wrap th,.gb-economic-table-wrap td { padding: 13px 18px; border-bottom: 1px solid #f0ebe6; text-align: left; white-space: nowrap; }
.gb-economic-table-wrap th { color: #827c76; font-size: 11px; letter-spacing: .08em; }
.gb-economic-table-wrap td { color: #66615d; }
.gb-economic-table-wrap td strong { color: #343238; }
.gb-economic-note { margin: 13px 3px 0; color: #8b8580; font-size: 12px; }

@media (max-width: 1100px) {
    .gb-services-layout {
        grid-template-columns: 1fr;
    }

    .gb-add-service {
        position: static;
    }

    .gb-economic-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 560px) {
    .gb-economic-dashboard { padding: 18px; border-radius: 18px; }
    .gb-economic-dashboard > header { flex-direction: column; gap: 8px; }
    .gb-economic-dashboard > header h2 { font-size: 24px; }
    .gb-economic-kpis { grid-template-columns: 1fr; }
    .gb-service-accordion summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .gb-edit-service {
        width: 100%;
        box-sizing: border-box;
    }

    .gb-service-summary-actions{width:100%;justify-content:space-between}.gb-service-order-controls{flex:0 0 auto}.gb-service-summary-actions .gb-edit-service{width:auto;flex:1}

    .gb-service-secondary-actions {
        align-items: stretch;
        flex-direction: column;
    }
}
.gb-invoices .gb-invoice-form{margin-bottom:24px}
.gb-invoice-history .gb-section-heading{margin-bottom:24px}
.gb-invoice-history .gb-section-heading h2{margin-bottom:0}
.gb-invoice-history .gb-table-scroll{clear:both}
.gb-invoice-table td small{display:block;margin-top:5px;color:#777}
.gb-invoice-table .gb-pill.is-paid{background:#e5f5ed;color:#176b4c}
.gb-invoice-table .gb-pill.is-voided{background:#f3eeee;color:#817575;text-decoration:line-through}
.gb-invoice-table .gb-pill.is-pending{background:#fff4dc;color:#825e0b}
@media(max-width:760px){.gb-invoice-history .gb-section-heading{margin-bottom:20px}.gb-invoice-table thead{display:none}.gb-invoice-table,.gb-invoice-table tbody,.gb-invoice-table tr,.gb-invoice-table td{display:block;width:100%}.gb-invoice-table tr{padding:14px;border-bottom:1px solid #eaded9}.gb-invoice-table td{border:0;padding:7px 0}.gb-invoice-table td:before{content:attr(data-label);display:block;font-size:11px;font-weight:800;letter-spacing:.08em;color:#9b4b43;text-transform:uppercase}.gb-invoice-table .gb-actions{margin-top:8px}}
.gb-marketing-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.gb-marketing-grid .gb-panel{margin:0}.gb-marketing-save{grid-column:1/-1;display:flex;justify-content:flex-end}.gb-module-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.gb-module-head h2{margin:5px 0}.gb-switch{display:flex;align-items:center;gap:8px;font-weight:800}.gb-switch input{width:22px;height:22px}.gb-campaign-builder{margin-bottom:22px}.gb-campaign-list{display:grid;gap:12px}.gb-campaign-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid #eaded9;border-radius:14px}.gb-campaign-list article>div:first-child{display:grid;gap:4px}.gb-campaign-list article span{font-size:11px;font-weight:800;letter-spacing:.1em;color:#c24143}.gb-client-promotions{margin:28px 0;padding:28px;border:1px solid #eaded9;border-radius:20px;background:#fff}.gb-client-promotions article{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #eee}.gb-client-promotions article div{display:grid;gap:4px}.gb-client-promotions form{margin-top:24px;padding-top:20px;border-top:1px solid #eee;display:flex;align-items:center;justify-content:space-between;gap:20px}.gb-client-promotions form label{display:flex;align-items:flex-start;gap:10px}.gb-client-promotions form input{width:20px;height:20px}.gb-client-promotions form button{background:#c24143;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:800}
.gb-file-picker{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;min-height:58px;padding:8px;border:1px solid #e4d8d3;border-radius:14px;background:#fff;box-sizing:border-box;cursor:pointer;overflow:hidden}.gb-file-picker:focus-within{border-color:#c24143;box-shadow:0 0 0 3px rgba(194,65,67,.12)}.gb-file-picker input[type=file]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:2}.gb-file-picker-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:10px;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff;font-size:14px;font-weight:800;letter-spacing:0;white-space:nowrap;box-shadow:0 7px 16px rgba(194,65,67,.18)}.gb-file-picker-name{min-width:0;color:#5f606a;font-size:14px;font-weight:650;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gb-file-picker.has-file .gb-file-picker-name{color:#292b35}
@media(max-width:760px){.gb-marketing-grid{grid-template-columns:1fr}.gb-module-head,.gb-campaign-list article,.gb-client-promotions article,.gb-client-promotions form{align-items:stretch;flex-direction:column}.gb-marketing-save .button,.gb-campaign-list .button,.gb-client-promotions form button{width:100%;text-align:center}}
@media(max-width:560px){.gb-file-picker{grid-template-columns:1fr;gap:8px}.gb-file-picker-button{width:100%;box-sizing:border-box}.gb-file-picker-name{text-align:center;padding:2px 8px}}
.gb-campaign-current-image{display:block;width:min(100%,520px);max-height:150px;margin-top:4px;border-radius:12px;object-fit:cover}.gb-campaign-list article{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:start}.gb-campaign-summary{display:grid;gap:4px}.gb-campaign-send{grid-column:1/-1;margin-top:6px;padding:18px;border:1px solid #eaded9;border-radius:14px;background:#fcfaf9}.gb-campaign-send fieldset{display:grid;gap:10px;margin:0 0 14px;padding:0;border:0}.gb-campaign-send legend{margin-bottom:8px;font-weight:800}.gb-campaign-send>fieldset>label{display:flex;align-items:center;gap:8px;font-weight:700}.gb-campaign-send input[type=radio],.gb-campaign-send input[type=checkbox]{width:20px;height:20px;margin:0}.gb-recipient-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px;padding:12px;border-radius:12px;background:#fff}.gb-recipient-list[hidden]{display:none}.gb-recipient-list label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid #eee4df;border-radius:10px}.gb-recipient-list label span{display:grid;gap:2px}.gb-recipient-list label small{color:#74747c;font-weight:500}
@media(max-width:560px){.gb-campaign-list article{grid-template-columns:1fr}.gb-campaign-list article>.gb-actions{width:100%}.gb-campaign-list article>.gb-actions .button{flex:1;text-align:center}.gb-recipient-list{grid-template-columns:1fr}.gb-campaign-send .button{width:100%}}
.gb-client-promotions .gb-promotion-meta{display:flex;align-items:flex-end;flex-direction:column;gap:7px}.gb-client-promotions .gb-promotion-meta form{display:block;margin:0;padding:0;border:0}.gb-client-promotions .gb-promotion-dismiss{padding:0;border:0;background:transparent;color:#a54a43;font-size:12px;font-weight:750;box-shadow:none}.gb-consent-saved{margin-top:20px;padding:13px 16px;border:1px solid #bfe1d3;border-radius:12px;background:#eef9f4;color:#246c50;font-size:14px;line-height:1.45}.gb-consent-details{margin-top:18px;border:1px solid #eaded9;border-radius:14px;background:#fbf9f8;overflow:hidden}.gb-consent-details summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;cursor:pointer;list-style:none}.gb-consent-details summary::-webkit-details-marker{display:none}.gb-consent-details summary span{display:grid;gap:2px}.gb-consent-details summary strong{font-size:14px}.gb-consent-details summary small{color:#777;font-size:12px}.gb-consent-details summary b{font-size:21px;color:#b5423d;line-height:1;transition:transform .2s}.gb-consent-details[open] summary b{transform:rotate(180deg)}.gb-client-promotions .gb-marketing-consent{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:15px 17px 17px;border-top:1px solid #eaded9}.gb-client-promotions .gb-marketing-consent label{display:flex;align-items:flex-start;flex-direction:row;gap:10px;margin:0;font-size:14px;line-height:1.45;font-weight:550}.gb-client-promotions .gb-marketing-consent input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:0}.gb-client-promotions .gb-marketing-consent button{flex:0 0 auto;margin:0;padding:10px 15px;font-size:13px;white-space:nowrap}
@media(max-width:620px){.gb-client-promotions .gb-marketing-consent{align-items:stretch;flex-direction:column}.gb-client-promotions .gb-marketing-consent button{width:100%}.gb-client-promotions .gb-promotion-meta{align-items:flex-start}}
.gb-queue-overview{display:flex;flex-wrap:wrap;gap:8px}.gb-queue-overview span{padding:8px 11px;border:1px solid #eaded9;border-radius:999px;background:#fff;color:#696970;font-size:12px}.gb-queue-overview strong{color:#343640}.gb-campaign-record{border:1px solid #eaded9;border-radius:14px;background:#fff;overflow:hidden}.gb-campaign-record summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 18px;cursor:pointer;list-style:none}.gb-campaign-record summary::-webkit-details-marker{display:none}.gb-campaign-record summary>b{flex:0 0 auto;color:#b5423d;font-size:22px;line-height:1;transition:transform .2s}.gb-campaign-record[open] summary>b{transform:rotate(180deg)}.gb-campaign-record[open] summary{border-bottom:1px solid #eaded9;background:#fcfaf9}.gb-campaign-body{display:grid;gap:14px;padding:18px}.gb-campaign-body>.gb-actions{justify-content:flex-end}.gb-campaign-body .gb-campaign-send{margin:0}.gb-schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 12px}.gb-schedule-fields label{display:grid;gap:7px;font-weight:750}.gb-button-danger{border-color:#b5423d;color:#a83f3b}.gb-button-danger:hover{background:#fff2ef}.gb-campaign-summary small{color:#72727a}
@media(max-width:760px){.gb-queue-overview{width:100%}.gb-queue-overview span{flex:1;text-align:center}.gb-campaign-record summary{align-items:flex-start}.gb-campaign-body>.gb-actions{display:grid}.gb-campaign-body>.gb-actions .button{width:100%;box-sizing:border-box;text-align:center}.gb-schedule-fields{grid-template-columns:1fr}}
.gb-campaign-submit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.gb-send-now{border-color:#c74742;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff;font-weight:800}.gb-send-now:hover{color:#fff;filter:brightness(.96)}
@media(max-width:560px){.gb-campaign-submit-actions{display:grid}.gb-campaign-submit-actions .button{width:100%;box-sizing:border-box;text-align:center}}
.gb-settings-organized{display:grid;gap:22px}.gb-settings-organized .gb-panel{margin:0}.gb-settings-section{position:relative}.gb-settings-section .gb-section-heading{margin-bottom:24px}.gb-email-identity-settings{overflow:hidden}.gb-email-brand-preview{display:grid;place-items:center;gap:10px;min-height:190px;margin-top:22px;padding:28px;border-radius:18px;color:#fff;text-align:center}.gb-email-brand-preview img{display:block;width:170px;max-width:60%;max-height:120px;object-fit:contain}.gb-email-brand-preview span{font-size:12px;font-weight:750;letter-spacing:.06em}.gb-email-logo-current{display:block;width:180px;max-height:110px;margin-top:10px;padding:14px;border:1px solid #eaded9;border-radius:12px;background:#3b383e;object-fit:contain}.gb-email-vip-current{display:block;width:240px;height:96px;margin-top:10px;border-radius:12px;object-fit:cover}.gb-settings-save{position:sticky;bottom:14px;z-index:5;display:flex;justify-content:flex-end;padding:14px;border:1px solid #eaded9;border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(50,42,40,.12);backdrop-filter:blur(10px)}
@media(max-width:620px){.gb-settings-save{position:static}.gb-settings-save .button{width:100%}.gb-email-brand-preview{min-height:150px}}
.gb-email-identity-settings input[type=file]{display:block;width:100%;min-height:58px;padding:8px;border:1px solid #e4d8d3;border-radius:14px;background:#fff;color:#5f606a;font-size:14px;box-sizing:border-box}.gb-email-identity-settings input[type=file]::file-selector-button{min-height:40px;margin-right:14px;padding:0 18px;border:0;border-radius:10px;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 7px 16px rgba(194,65,67,.18)}.gb-email-identity-settings input[type=color]{display:block;width:100%;height:64px;padding:6px;border:1px solid #e4d8d3;border-radius:14px;background:#fff;cursor:pointer}.gb-email-identity-settings input[type=color]::-webkit-color-swatch-wrapper{padding:0}.gb-email-identity-settings input[type=color]::-webkit-color-swatch{border:0;border-radius:9px}.gb-email-identity-settings input[type=color]::-moz-color-swatch{border:0;border-radius:9px}.gb-email-identity-settings .gb-actions{justify-content:flex-end;margin-top:18px}.gb-email-identity-settings .gb-section-heading p{max-width:520px}
.gb-media-field{display:grid;grid-template-columns:minmax(190px,auto) 1fr;align-items:center;gap:10px 16px}.gb-media-field>strong{grid-column:1/-1;color:#30313a;font-size:14px}.gb-media-field .gb-media-picker{justify-self:start;min-height:44px;padding:0 20px;border:0;border-radius:11px;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff;font-weight:800;box-shadow:0 7px 16px rgba(194,65,67,.18)}.gb-media-field>small{margin:0}.gb-media-field .gb-media-preview{grid-column:1/-1}.gb-media-field .gb-media-preview[hidden]{display:none}@media(max-width:600px){.gb-media-field{grid-template-columns:1fr}.gb-media-field .gb-media-picker{width:100%;justify-content:center}.gb-media-field>small{grid-column:1}}
.gb-email-environment-list{display:grid;gap:14px}.gb-email-environment{margin:0;padding:0;overflow:hidden}.gb-email-environment>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;cursor:pointer;list-style:none}.gb-email-environment>summary::-webkit-details-marker{display:none}.gb-email-environment>summary span{display:grid;gap:4px}.gb-email-environment>summary small{color:#b5423d;font-size:11px;font-weight:850;letter-spacing:1.5px}.gb-email-environment>summary strong{color:#30313a;font-size:20px}.gb-email-environment>summary em{color:#74747c;font-size:13px;font-style:normal;font-weight:500}.gb-email-environment>summary>b{color:#b5423d;font-size:26px;line-height:1;transition:transform .2s}.gb-email-environment[open]>summary{border-bottom:1px solid #eaded9;background:#fcfaf9}.gb-email-environment[open]>summary>b{transform:rotate(180deg)}.gb-email-environment-body{padding:24px 26px 28px}.gb-email-identity-save{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:14px 0 0;padding:17px 20px}.gb-email-identity-save p{margin:0;color:#6d6d75;font-size:13px}.gb-email-wedding-preview{position:relative;min-height:190px;margin-top:22px;overflow:hidden;border-radius:18px;background:linear-gradient(135deg,#92772f,#b59b4d)}.gb-email-wedding-preview>img{display:block;width:100%;height:190px;object-fit:cover}.gb-email-wedding-preview>div{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;padding:20px;background:linear-gradient(180deg,rgba(79,61,19,.12),rgba(79,61,19,.48));color:#fff;text-align:center}.gb-email-wedding-preview>div img{width:150px;max-height:105px;object-fit:contain}.gb-email-wedding-preview>div span{font-size:12px;font-weight:800;letter-spacing:.08em}@media(max-width:600px){.gb-email-environment>summary{padding:18px}.gb-email-environment>summary strong{font-size:17px}.gb-email-environment-body{padding:20px 18px}.gb-email-identity-save{align-items:stretch;flex-direction:column}.gb-email-identity-save .button{width:100%}}
.gb-email-preview-head img{width:170px;max-width:60%;max-height:110px;margin:0 auto;object-fit:contain}.gb-email-wedding-preview{display:block;min-height:0;background:#fff}.gb-email-wedding-preview>.gb-email-wedding-brand{position:static;display:grid;min-height:150px;padding:24px;place-content:center;justify-items:center;gap:8px;color:#fff;text-align:center}.gb-email-wedding-preview>.gb-email-wedding-brand img{width:150px;max-height:100px;object-fit:contain}.gb-email-wedding-preview>.gb-email-wedding-brand span{font-size:12px;font-weight:800;letter-spacing:.08em}.gb-email-wedding-preview>.gb-email-wedding-photo{display:block;width:100%;height:auto;max-height:320px;object-fit:cover}
.gb-email-type-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.gb-email-type-guide>div{padding:18px;border:1px solid #e3dedb;border-radius:14px;background:#fff}.gb-email-type-guide p{margin:10px 0 0;color:#69666d;font-size:13px;line-height:1.45}.gb-email-type{display:inline-flex;align-items:center;width:max-content;padding:6px 10px;border-radius:999px;font-size:11px;font-style:normal;font-weight:800;letter-spacing:.04em;line-height:1;text-transform:uppercase}.gb-email-type.is-general{background:#fff0ea;color:#a9443e}.gb-email-type.is-wedding{background:#f2ecd9;color:#80672f}.gb-email-type.is-promotional{background:#ece9f5;color:#5c4c83}.gb-email-template-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gb-email-template-title>b{font:inherit}.gb-email-template summary .gb-email-template-title .gb-email-type{font-size:10px}@media(max-width:760px){.gb-email-type-guide{grid-template-columns:1fr}.gb-email-template-title{align-items:flex-start;flex-direction:column;gap:7px}}
.gb-service-categories{margin:0 0 22px;padding:0;overflow:hidden}.gb-service-categories>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;cursor:pointer;list-style:none}.gb-service-categories>summary::-webkit-details-marker{display:none}.gb-service-categories>summary span{display:grid;gap:3px}.gb-service-categories>summary small{color:#c24143;font-size:11px;font-weight:850;letter-spacing:.12em}.gb-service-categories>summary strong{font-size:20px}.gb-service-categories>summary em{color:#777;font-size:13px;font-style:normal;font-weight:500}.gb-service-categories>summary>b{color:#c24143;font-size:24px;transition:transform .2s}.gb-service-categories[open]>summary{border-bottom:1px solid #eaded9;background:#fcfaf9}.gb-service-categories[open]>summary>b{transform:rotate(180deg)}.gb-service-categories-body{padding:22px 24px}.gb-category-add{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-bottom:18px}.gb-category-add label{display:grid;gap:7px;font-weight:800}.gb-category-list{display:grid;gap:9px}.gb-category-list article{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #eaded9;border-radius:13px;background:#fff}.gb-category-list article form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:10px;flex:1}.gb-category-list article span{color:#777;font-size:12px;white-space:nowrap}.gb-category-list .gb-category-in-use{padding:8px 11px;border-radius:999px;background:#f3efea;color:#7b7269;font-weight:750}.gb-service-summary em{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#fff0ea;color:#a9443e;font-size:10px;font-style:normal;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.gb-service-groups{display:grid;gap:18px}.gb-service-group{display:grid;gap:10px}.gb-service-group>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid #eaded9}.gb-service-group>header span{color:#30313a;font-size:16px;font-weight:850}.gb-service-group>header small{color:#8a8380;font-size:12px}@media(max-width:680px){.gb-category-add,.gb-category-list article form{grid-template-columns:1fr}.gb-category-list article{align-items:stretch;flex-direction:column}.gb-category-list article .button,.gb-category-add .button{width:100%;text-align:center}.gb-service-categories>summary{align-items:flex-start;padding:18px}.gb-service-categories-body{padding:18px}}

/* Centro de Marketing */
.gb-marketing-nav{position:sticky;top:18px;z-index:8;display:flex;gap:8px;margin:0 0 20px;padding:8px;border:1px solid #eaded9;border-radius:15px;background:rgba(255,255,255,.95);box-shadow:0 10px 24px rgba(54,43,40,.08);backdrop-filter:blur(12px)}.gb-marketing-nav a{padding:11px 16px;border-radius:10px;color:#494a52;text-decoration:none;font-size:13px;font-weight:800}.gb-marketing-nav a:hover{background:#fff0eb;color:#b3403b}.gb-marketing-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.gb-marketing-overview article{display:grid;gap:5px;min-height:105px;padding:20px;border:1px solid #eaded9;border-radius:16px;background:#fff;box-sizing:border-box}.gb-marketing-overview article>span{color:#ae443e;font-size:10px;font-weight:900;letter-spacing:.12em}.gb-marketing-overview article>strong{color:#30323a;font-size:25px}.gb-marketing-overview article>small{color:#72747b}.gb-marketing-overview article.is-connected{border-color:#b8dec8;background:#f4fbf7}.gb-marketing-overview article.is-connected>span{color:#17704c}.gb-marketing-overview article.is-pending{background:#fff8f2}.gb-marketing-calendar{margin-bottom:22px}.gb-marketing-month-nav{display:flex;align-items:center;gap:10px}.gb-marketing-month-nav a{display:grid;place-items:center;width:40px;height:40px;border:1px solid #e5d9d4;border-radius:11px;background:#fff;color:#b3403b;text-decoration:none;font-size:27px}.gb-marketing-month-nav strong{min-width:150px;color:#353740;text-align:center;text-transform:capitalize}.gb-marketing-weekdays,.gb-marketing-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.gb-marketing-weekdays{margin:22px 0 8px}.gb-marketing-weekdays span{color:#a64a43;font-size:11px;font-weight:900;text-align:center;text-transform:uppercase}.gb-marketing-days>article,.gb-marketing-days>.is-empty{min-height:155px;border:1px solid #eaded9;border-radius:13px;background:#fff;box-sizing:border-box}.gb-marketing-days>.is-empty{background:#faf8f6}.gb-marketing-days>article{padding:9px;overflow:hidden}.gb-marketing-days>article.is-today{border:2px solid #d44d35}.gb-marketing-days>article>b{display:grid;place-items:center;width:27px;height:27px;margin-bottom:7px;border-radius:8px;background:#f7efeb;color:#9f433d;font-size:12px}.gb-marketing-days>article.is-today>b{background:linear-gradient(135deg,#c24143,#e95721);color:#fff}.gb-marketing-days>article>div{display:grid;gap:6px}.gb-calendar-social,.gb-calendar-email{display:flex;min-width:0;gap:7px;padding:6px;border-radius:9px;text-decoration:none;overflow:hidden}.gb-calendar-social{background:#f7efeb;color:#30323a}.gb-calendar-social img{width:38px;height:38px;border-radius:7px;object-fit:cover;flex:0 0 auto}.gb-calendar-social>span{display:grid;align-content:center;min-width:0}.gb-calendar-social small{color:#a5423c;font-size:8px;font-weight:900;letter-spacing:.05em}.gb-calendar-social strong,.gb-calendar-email strong{display:block;overflow:hidden;font-size:10px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.gb-calendar-email{display:grid;gap:2px;border-left:3px solid #313039;background:#f3f1f4;color:#35333c}.gb-calendar-email span{color:#77727c;font-size:8px;font-weight:900;letter-spacing:.08em}.gb-calendar-social.is-published{background:#eef8f2}.gb-calendar-social.is-failed{background:#fff0ef}.gb-calendar-legend{display:flex;gap:20px;margin-top:16px;color:#6f7178;font-size:12px}.gb-calendar-legend span{display:flex;align-items:center;gap:7px}.gb-calendar-legend i{width:11px;height:11px;border-radius:3px}.gb-calendar-legend .is-social{background:#d65a42}.gb-calendar-legend .is-email{background:#35323a}.gb-social-workspace,.gb-social-library{margin-bottom:22px}.gb-meta-connection{display:flex;align-items:center;gap:10px}.gb-meta-connection>span{display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;background:#edf8f2;color:#176b4c;font-size:12px;font-weight:850}.gb-meta-connection>span i{width:8px;height:8px;border-radius:50%;background:#21a36a}.gb-meta-connection>span.is-waiting{background:#fff3e9;color:#9c5429}.gb-social-editor-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:26px;align-items:start}.gb-network-selector{display:flex;align-items:center;gap:20px;padding:16px;border:1px solid #eaded9;border-radius:13px}.gb-network-selector legend{padding:0 8px;font-weight:850}.gb-network-selector label{display:flex;align-items:center;gap:8px}.gb-network-selector input{width:19px;height:19px}.gb-social-preview{overflow:hidden;border:1px solid #e3d9d5;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(53,44,42,.08)}.gb-social-preview-head{display:flex;align-items:center;gap:10px;padding:14px}.gb-social-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#c24143,#e95721);color:#fff;font-size:11px;font-weight:900}.gb-social-preview-head div{display:grid}.gb-social-preview-head small{color:#858087;font-size:11px}.gb-social-preview-media{display:grid;place-items:center;min-height:290px;background:#f4efec;color:#8a8380}.gb-social-preview-media img{display:block;width:100%;max-height:480px;object-fit:cover}.gb-social-preview>p{min-height:70px;margin:0;padding:15px;color:#42434b;font-size:13px;line-height:1.55}.gb-social-submit{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.gb-social-library .gb-section-heading{margin-bottom:18px}.gb-social-list{display:grid;gap:10px}.gb-social-list article{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:15px;padding:12px;border:1px solid #eaded9;border-radius:14px;background:#fff}.gb-social-list article>img{width:76px;height:76px;border-radius:11px;object-fit:cover}.gb-social-list article>div:nth-child(2){display:grid;gap:4px}.gb-social-list article>div:nth-child(2)>span{width:max-content;padding:4px 8px;border-radius:999px;background:#f4efec;color:#9b463f;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.gb-social-list article>div:nth-child(2)>span.is-published{background:#e9f6ef;color:#176b4c}.gb-social-list article>div:nth-child(2)>span.is-failed{background:#fff0ef;color:#a92e32}.gb-social-list article small{color:#777}.gb-social-list article em{color:#a92e32;font-size:11px;font-style:normal}.gb-marketing-divider{margin:34px 0 18px;padding:0 4px}.gb-marketing-divider>span{color:#b1453f;font-size:11px;font-weight:900;letter-spacing:.13em}.gb-marketing-divider h2{margin:5px 0;color:#30323a;font-size:27px}.gb-marketing-divider p{margin:0;color:#70727a}.gb-campaign-current-image{max-width:280px;margin-top:12px;border-radius:12px}
@media(max-width:1100px){.gb-marketing-overview{grid-template-columns:repeat(2,1fr)}.gb-social-editor-grid{grid-template-columns:1fr}.gb-social-preview{max-width:520px}.gb-marketing-days>article,.gb-marketing-days>.is-empty{min-height:130px}.gb-calendar-social img{width:32px;height:32px}}
@media(max-width:760px){.gb-marketing-nav{position:static;overflow-x:auto}.gb-marketing-nav a{white-space:nowrap}.gb-marketing-overview{grid-template-columns:1fr 1fr}.gb-marketing-calendar{overflow-x:auto}.gb-marketing-calendar>.gb-section-heading{align-items:stretch}.gb-marketing-weekdays,.gb-marketing-days{min-width:900px}.gb-marketing-days>article,.gb-marketing-days>.is-empty{min-height:145px}.gb-social-list article{grid-template-columns:60px minmax(0,1fr)}.gb-social-list article>img{width:60px;height:60px}.gb-social-list article>.gb-actions{grid-column:1/-1}.gb-social-submit .button{flex:1 1 170px;text-align:center}.gb-meta-connection{align-items:stretch;flex-direction:column}.gb-calendar-legend{min-width:600px}.gb-marketing-divider h2{font-size:23px}}
@media(max-width:480px){.gb-marketing-overview{grid-template-columns:1fr}.gb-social-preview-media{min-height:230px}.gb-social-editor-grid{gap:18px}}

.gb-calendar-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;margin:0 0 12px;padding:3px 2px 14px;border:0;border-bottom:1px solid #eee3df;background:transparent;color:#30323a;text-align:left;cursor:pointer}.gb-calendar-toggle span{display:grid;gap:4px}.gb-calendar-toggle small{color:#b1453f;font-size:11px;font-weight:900;letter-spacing:.13em}.gb-calendar-toggle strong{font-size:24px}.gb-calendar-toggle b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff1ec;color:#b3403b;font-size:22px}.gb-calendar-fold[hidden]{display:none}.gb-image-editor{padding:16px;border:1px solid #eaded9;border-radius:15px;background:#faf7f5}.gb-image-editor[hidden]{display:none}.gb-image-editor-tools{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end;margin-bottom:14px}.gb-image-editor-tools label,.gb-story-design label{display:grid;gap:7px;color:#45464d;font-size:12px;font-weight:800}.gb-image-editor-tools select,.gb-story-design textarea{width:100%}.gb-image-editor-tools input[type=range],.gb-story-design input[type=range]{width:100%}.gb-crop-stage{position:relative;display:grid;place-items:center;max-width:390px;margin:0 auto;overflow:hidden;border-radius:16px;background:#262326;box-shadow:0 12px 28px rgba(45,35,33,.16)}.gb-crop-stage canvas{display:block;width:100%;height:auto;max-height:650px;object-fit:contain;touch-action:none;cursor:grab}.gb-crop-stage canvas:active{cursor:grabbing}.gb-crop-stage>span{position:absolute;bottom:12px;padding:7px 11px;border-radius:999px;background:rgba(0,0,0,.65);color:#fff;font-size:10px;pointer-events:none}.gb-story-design{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:15px;padding-top:15px;border-top:1px solid #e5d9d4}.gb-story-design[hidden]{display:none}.gb-story-design .gb-inline-check{grid-column:1/-1;display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:9px;padding:8px 11px;border:1px solid #e4d9d5;border-radius:999px;background:#fff;cursor:pointer}.gb-story-design .gb-inline-check span{white-space:nowrap}.gb-story-design .gb-inline-check input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;min-height:0;margin:0;padding:0;accent-color:#c7463e}.gb-story-design input[type=color]{width:100%;height:42px;padding:3px;border:1px solid #d9ceca;border-radius:9px}.gb-social-workspace form.is-story-post .gb-social-preview-media{width:min(100%,360px);min-height:0;margin:0 auto;aspect-ratio:9/16;background:#252226}.gb-social-workspace form.is-story-post .gb-social-preview-media img,.gb-social-workspace form.is-story-post .gb-social-preview-media video{width:100%;height:100%;max-height:none;object-fit:cover}.gb-social-workspace form.is-story-post .gb-social-preview>p{display:none}
@media(max-width:760px){.gb-content-type{grid-template-columns:1fr 1fr}.gb-image-editor-tools,.gb-story-design{grid-template-columns:1fr}.gb-story-design .gb-inline-check{grid-column:auto}.gb-calendar-toggle strong{font-size:20px}}

/* Conexiones sociales independientes: Meta y TikTok */
@media(min-width:1101px){.gb-marketing-overview{grid-template-columns:repeat(5,1fr)}}
.gb-social-connections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 24px}.gb-social-connections .gb-meta-connection{justify-content:space-between;padding:12px;border:1px solid #eaded9;border-radius:14px;background:#fff}
@media(max-width:760px){.gb-social-connections{grid-template-columns:1fr}.gb-social-connections .gb-meta-connection{align-items:stretch}}

/* Selector editorial: controles propios de GradoBeauty */
.gb-network-selector{position:relative}.gb-network-selector label{position:relative;display:grid;grid-template-rows:14px auto;justify-items:center;gap:5px;padding:0;border:0;background:transparent;color:#45464d;cursor:pointer}.gb-network-selector input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.gb-network-dot{width:10px;height:10px;border:2px solid #c9bbb6;border-radius:50%;background:#fff;box-sizing:border-box;transition:.18s ease}.gb-network-selector label:has(input:checked){color:#9f3f39}.gb-network-selector input:checked+.gb-network-dot{border-color:#c7463e;background:#c7463e;box-shadow:0 0 0 3px #f7d9d1}.gb-network-selector label:has(input:disabled){opacity:.38;cursor:not-allowed}.gb-network-selector>p{flex-basis:100%;margin:2px 0 0;color:#7b7371;font-size:12px}
.gb-content-type{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;border:0}.gb-content-type legend{margin-bottom:8px;font-weight:850}.gb-content-type label{position:relative;display:block;cursor:pointer}.gb-content-type input{position:absolute;opacity:0}.gb-content-type label>span{display:grid;gap:3px;min-height:64px;padding:14px;border:1px solid #e5d9d4;border-radius:13px;background:#fff;color:#3f4149;font-weight:850;box-sizing:border-box}.gb-content-type label small{color:#858087;font-size:10px;font-weight:650}.gb-content-type input:checked+span{border-color:#c7463e;background:#fff4ef;box-shadow:inset 0 0 0 1px #c7463e;color:#a43f3a}.gb-format-guide{padding:16px;border:1px solid #eaded9;border-radius:14px;background:#faf7f5}.gb-format-guide>strong{color:#a6423d}.gb-format-guide>p{margin:5px 0 13px;color:#686970;font-size:12px}.gb-format-guide>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gb-format-guide span{padding:10px;border-radius:10px;background:#fff;color:#777078;font-size:10px;line-height:1.45}.gb-format-guide b{color:#34363e;font-size:12px}.gb-social-preview-media video{display:block;width:100%;max-height:480px;background:#17171a;object-fit:contain}
.gb-publish-destination{margin-bottom:2px}.gb-publish-destination label>span{place-content:center;min-height:58px;padding:14px 17px;text-align:center}.gb-publish-destination label>span:before{display:none;content:none}.gb-content-subtype{position:relative;margin-top:0;padding:15px;border:1px solid #eaded9;border-radius:15px;background:#faf7f5}.gb-content-subtype:before{content:'2';position:absolute;top:-11px;right:14px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#c7463e;color:#fff;font-size:11px;font-weight:900}.gb-content-subtype label[hidden]{display:none}.gb-content-subtype label>span{min-height:58px;background:#fff}
@media(max-width:600px){.gb-content-type,.gb-format-guide>div{grid-template-columns:1fr}.gb-network-selector{align-items:center;flex-direction:row;flex-wrap:wrap}.gb-network-selector label{justify-content:center}.gb-network-selector>p{width:100%}}

/* Vista previa y campos específicos de cada formato social */
.gb-social-file-slot{display:block}.gb-social-file-slot[hidden],.gb-social-media-field[hidden],.gb-social-caption-field[hidden],.gb-social-link-field[hidden]{display:none}.gb-social-workspace form.is-video-post .gb-social-preview-media{width:min(100%,430px);min-height:0;margin:0 auto;aspect-ratio:9/16;background:#f4efec;overflow:hidden}.gb-social-workspace form.is-video-post .gb-social-preview-media video{width:100%;height:100%;max-height:none;background:#f4efec;object-fit:cover}.gb-social-workspace form.is-link-post .gb-social-link-field{padding:14px;border:1px solid #dfb8ad;border-radius:13px;background:#fff7f3}.gb-social-workspace form.is-link-post .gb-social-link-field>[data-link-label]{color:#a33f39}
.gb-preview-tabs{display:flex;gap:7px;padding:10px;border-bottom:1px solid #ece3df;background:#faf8f7}.gb-preview-tabs button{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:#73747b;font-size:11px;font-weight:800;cursor:pointer}.gb-preview-tabs button[hidden]{display:none}.gb-preview-tabs button.is-active{border-color:#dfd4d0;background:#fff;color:#30323a;box-shadow:0 4px 12px rgba(52,42,40,.08)}.gb-preview-tabs svg,.gb-platform-avatar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.gb-preview-tabs button[data-preview-tab=facebook] svg,.gb-social-preview[data-preview-network=facebook] .gb-platform-avatar svg{fill:currentColor;stroke:none}.gb-preview-tabs button[data-preview-tab=tiktok] svg,.gb-social-preview[data-preview-network=tiktok] .gb-platform-avatar svg{fill:none;stroke:currentColor;stroke-width:2}.gb-platform-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:#fff}.gb-social-preview[data-preview-network=instagram] .gb-platform-avatar{background:linear-gradient(135deg,#6b4ddd,#d73588,#f39b35)}.gb-social-preview[data-preview-network=facebook] .gb-platform-avatar{background:#1877f2}.gb-social-preview[data-preview-network=tiktok] .gb-platform-avatar{background:#111}.gb-social-preview[data-preview-network=facebook]{border-radius:12px;background:#f0f2f5}.gb-social-preview[data-preview-network=facebook] .gb-social-preview-head,.gb-social-preview[data-preview-network=facebook]>p,.gb-social-preview[data-preview-network=facebook] .gb-preview-actions{background:#fff}.gb-social-preview[data-preview-network=tiktok]{background:#111;color:#fff}.gb-social-preview[data-preview-network=tiktok] .gb-social-preview-head{color:#fff}.gb-social-preview[data-preview-network=tiktok] .gb-social-preview-head small,.gb-social-preview[data-preview-network=tiktok]>p{color:#ddd}.gb-preview-actions{display:flex;gap:18px;padding:10px 15px 14px;border-top:1px solid #eee;color:#4b4c53;font-size:22px}.gb-social-preview[data-preview-network=tiktok] .gb-preview-actions{justify-content:flex-end;border:0;background:#111;color:#fff}.gb-social-preview[data-preview-network=facebook] .gb-preview-actions{color:#65676b}

/* Control mínimo para el fondo del texto de historias: idéntico al selector de redes */
.gb-story-design .gb-inline-check{display:flex;width:auto;min-width:0;align-items:center;justify-content:flex-start;flex-direction:row;gap:8px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer}.gb-story-design .gb-inline-check span{width:auto;white-space:nowrap}.gb-story-design .gb-inline-check input[type=checkbox]{appearance:none;-webkit-appearance:none;display:inline-block;flex:0 0 10px;width:10px;height:10px;min-width:10px;min-height:10px;margin:0;padding:0;border:2px solid #c9bbb6;border-radius:50%;background:#fff;box-shadow:none;cursor:pointer}.gb-story-design .gb-inline-check input[type=checkbox]:checked{border-color:#c7463e;background:#c7463e;box-shadow:0 0 0 3px #f7d9d1}
.gb-story-design .gb-inline-check input[type=checkbox]:before,.gb-story-design .gb-inline-check input[type=checkbox]:checked:before{display:none;width:0;height:0;margin:0;content:none}

/* 0.23.65 | Previsualizaciones fieles de Instagram, Facebook y TikTok */
.gb-social-preview{position:relative}
.gb-social-preview-head{position:relative;align-items:center;padding:11px 13px;background:#fff}
.gb-platform-avatar{width:36px;height:36px;overflow:hidden;border:2px solid #e54881;border-radius:50%;background:#fff;box-sizing:border-box}
.gb-platform-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.gb-social-preview-head strong{color:#17181c;font-size:12px;line-height:1.2}
.gb-social-preview-head small{margin-top:2px;color:#6f7178;font-size:9px}
.gb-preview-more{margin-left:auto;color:#202126;font-size:13px;letter-spacing:2px}
.gb-preview-actions{align-items:center;gap:14px;padding:10px 13px 7px;border:0;background:#fff;color:#121318;font-family:Arial,sans-serif;font-size:25px;line-height:1}
.gb-preview-actions span{display:inline-grid;place-items:center;min-width:22px}
.gb-preview-actions .gb-preview-save{margin-left:auto;transform:rotate(180deg)}
.gb-social-preview>p{min-height:0;padding:4px 13px 15px;color:#202126;font-size:11px;line-height:1.45}
.gb-social-preview[data-preview-network=instagram]>p:before{content:attr(data-account);font-weight:800}
.gb-tiktok-overlay{display:none}
.gb-social-preview[data-preview-network=tiktok]{overflow:hidden;border-color:#151515;border-radius:16px;background:#080808;color:#fff}
.gb-social-preview[data-preview-network=tiktok] .gb-social-preview-head,
.gb-social-preview[data-preview-network=tiktok]>.gb-preview-actions,
.gb-social-preview[data-preview-network=tiktok]>p{display:none}
.gb-social-preview[data-preview-network=tiktok] .gb-social-preview-media{width:100%;max-width:none;min-height:0;margin:0;aspect-ratio:9/16;background:#0a0a0a}
.gb-social-preview[data-preview-network=tiktok] .gb-social-preview-media img,
.gb-social-preview[data-preview-network=tiktok] .gb-social-preview-media video{width:100%;height:100%;max-height:none;object-fit:cover}
.gb-social-preview[data-preview-network=tiktok] .gb-tiktok-overlay{display:block;position:absolute;inset:53px 0 0;z-index:8;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.8)}
.gb-tiktok-side{position:absolute;right:10px;bottom:26px;display:grid;justify-items:center;gap:12px}
.gb-tiktok-side>span{display:grid;justify-items:center;gap:2px;color:#fff;font-size:24px;line-height:1}
.gb-tiktok-side small{color:#fff;font-size:8px;font-weight:800}
.gb-tiktok-avatar{width:38px;height:38px;overflow:hidden;border:2px solid #fff;border-radius:50%;background:#fff}
.gb-tiktok-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.gb-tiktok-copy{position:absolute;right:58px;bottom:18px;left:13px;color:#fff}
.gb-tiktok-copy strong{font-size:12px}
.gb-tiktok-copy p{display:-webkit-box;margin:6px 0 0;overflow:hidden;color:#fff;font-size:10px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.gb-social-preview[data-preview-network=facebook] .gb-platform-avatar{border-color:#d8dde4}
.gb-social-preview[data-preview-network=facebook] .gb-preview-actions{border-top:1px solid #e4e6eb;border-bottom:1px solid #e4e6eb;color:#65676b}
@media(max-width:782px){
    .gb-social-preview-head{padding:9px}
    .gb-platform-avatar{width:32px;height:32px}
    .gb-social-preview-head strong{font-size:10px}
    .gb-social-preview-head small{font-size:8px}
    .gb-preview-actions{padding:7px 9px;font-size:19px}
    .gb-social-preview>p{padding:3px 9px 11px;font-size:9px}
    .gb-social-preview[data-preview-network=tiktok] .gb-tiktok-overlay{inset:43px 0 0}
    .gb-tiktok-side{right:8px;bottom:18px;gap:9px}
    .gb-tiktok-side>span{font-size:20px}
    .gb-tiktok-avatar{width:32px;height:32px}
    .gb-tiktok-copy{right:49px;bottom:12px;left:10px}
    .gb-tiktok-copy strong{font-size:10px}
    .gb-tiktok-copy p{font-size:8px}
}

/* 0.24.8 | Rangos horarios con separaciones legibles en escritorio */
@media(min-width:783px){
    .gb-owner-workspace .gb-hour-row{
        grid-template-columns:150px repeat(2,minmax(0,1fr));
        gap:26px;
        padding:16px 18px;
    }
    .gb-owner-workspace .gb-hour-row>label{
        display:grid;
        grid-template-columns:120px minmax(0,1fr);
        gap:14px;
        align-items:center;
        min-width:0;
    }
    .gb-owner-workspace .gb-hour-range{
        display:grid;
        grid-template-columns:minmax(105px,1fr) 24px minmax(105px,1fr);
        gap:9px;
        align-items:center;
        min-width:0;
    }
    .gb-owner-workspace .gb-hour-range i{
        display:block;
        width:24px;
        margin:0;
        color:#555861;
        font-size:15px;
        font-style:normal;
        font-weight:800;
        line-height:1;
        text-align:center;
    }
    .gb-owner-workspace .gb-hour-range input[type="time"]{
        width:100%;
        min-width:105px;
        max-width:none;
        box-sizing:border-box;
    }
}

/* 0.23.66 | Iconografía vectorial y composición específica de Feed, Reel y Story */
.gb-preview-actions span{position:relative;width:24px;height:24px;min-width:24px;overflow:hidden;color:transparent;font-size:0;background:#111}
.gb-preview-actions span:before{content:"";position:absolute;inset:1px;background:inherit}
.gb-preview-actions span:nth-child(1){-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21.3l7.8-7.8 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8l1.1 1.1L12 21.3l7.8-7.8 1.1-1.1a5.5 5.5 0 0 0-.1-7.8Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-preview-actions span:nth-child(2){-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 11.5a8.4 8.4 0 0 1-9 8.5 9.3 9.3 0 0 1-4-.9L3 21l1.8-4.8A8.5 8.5 0 1 1 21 11.5Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 11.5a8.4 8.4 0 0 1-9 8.5 9.3 9.3 0 0 1-4-.9L3 21l1.8-4.8A8.5 8.5 0 1 1 21 11.5Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-preview-actions span:nth-child(3){-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m22 2-7 20-4-9-9-4 20-7ZM22 2 11 13'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m22 2-7 20-4-9-9-4 20-7ZM22 2 11 13'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-preview-actions span:nth-child(4){margin-left:auto;transform:none;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M6 3h12v18l-6-4-6 4V3Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M6 3h12v18l-6-4-6 4V3Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-social-preview[data-preview-network=facebook] .gb-preview-actions span{background:#65676b}
.gb-tiktok-side>span:not(.gb-tiktok-avatar){position:relative;width:32px;height:43px;color:transparent;font-size:0}
.gb-tiktok-side>span:not(.gb-tiktok-avatar):before{content:"";display:block;width:27px;height:27px;background:#fff}
.gb-tiktok-side>span:nth-child(2):before{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21 3.6 12.8A5.5 5.5 0 1 1 12 5.7a5.5 5.5 0 1 1 8.4 7.1L12 21Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21 3.6 12.8A5.5 5.5 0 1 1 12 5.7a5.5 5.5 0 1 1 8.4 7.1L12 21Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-tiktok-side>span:nth-child(3):before{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.8 2 11.5c0 2.6 1.4 5 3.6 6.5L5 22l4-2.1c1 .2 2 .3 3 .3 5.5 0 10-3.8 10-8.7S17.5 3 12 3Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.8 2 11.5c0 2.6 1.4 5 3.6 6.5L5 22l4-2.1c1 .2 2 .3 3 .3 5.5 0 10-3.8 10-8.7S17.5 3 12 3Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-tiktok-side>span:nth-child(4):before{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h12v20l-6-4-6 4V2Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h12v20l-6-4-6 4V2Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-tiktok-side>span:nth-child(5):before{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m21 3-8 18-2-8-8-2 18-8Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m21 3-8 18-2-8-8-2 18-8Z'/%3E%3C/svg%3E") center/contain no-repeat}
.gb-tiktok-side small{position:absolute;right:0;bottom:0;left:0;color:#fff;font-size:8px;text-align:center}
.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-network=instagram]{overflow:hidden;background:#080808}
.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-network=instagram] .gb-social-preview-head,
.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-network=instagram]>.gb-preview-actions,
.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-network=instagram]>p{display:none}
.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-network=instagram] .gb-tiktok-overlay{display:block;position:absolute;inset:53px 0 0;z-index:8;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.8)}
.gb-social-workspace form.is-story-post .gb-social-preview[data-preview-network=instagram]>.gb-preview-actions,
.gb-social-workspace form.is-story-post .gb-social-preview[data-preview-network=facebook]>.gb-preview-actions{display:none}
.gb-social-workspace form.is-story-post .gb-social-preview-head{z-index:9;background:#111;color:#fff}
.gb-social-workspace form.is-story-post .gb-social-preview-head strong,
.gb-social-workspace form.is-story-post .gb-social-preview-head small,
.gb-social-workspace form.is-story-post .gb-preview-more{color:#fff}
@media(max-width:782px){.gb-preview-actions span{width:21px;height:21px;min-width:21px}.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-network=instagram] .gb-tiktok-overlay{inset:43px 0 0}}

/* 0.23.67 | Editor de texto de Story definido en escritorio y móvil */
.gb-social-workspace .gb-story-design{
    grid-template-columns:minmax(280px,1fr) minmax(170px,.55fr) 120px;
    grid-template-areas:"copy size color" "copy background background";
    align-items:start;
    gap:18px;
    width:100%;
    max-width:760px;
    margin:18px auto 0;
    padding:20px;
    border:1px solid #eaded9;
    border-radius:16px;
    background:#fcfaf9;
    box-sizing:border-box;
}
.gb-social-workspace .gb-story-design>label{min-width:0;margin:0;color:#34363e;font-size:13px;font-weight:800;line-height:1.35}
.gb-social-workspace .gb-story-design>label:first-child{grid-area:copy}
.gb-social-workspace .gb-story-design>label:nth-child(2){grid-area:size}
.gb-social-workspace .gb-story-design>label:nth-child(3){grid-area:color}
.gb-social-workspace .gb-story-design>.gb-inline-check{grid-area:background;align-self:end;min-height:44px;padding:10px 12px;border:1px solid #e4d9d5;border-radius:12px;background:#fff}
.gb-social-workspace .gb-story-design textarea{min-height:142px;height:142px;padding:13px 14px;border:1px solid #d9ceca;border-radius:12px;background:#fff;color:#34363e;font-size:15px;line-height:1.45;resize:vertical;box-sizing:border-box}
.gb-social-workspace .gb-story-design textarea:focus{border-color:#c7463e;box-shadow:0 0 0 3px rgba(199,70,62,.12);outline:0}
.gb-social-workspace .gb-story-design label>small{display:block;margin-top:2px;color:#74747c;font-size:12px;font-weight:500;line-height:1.45}
.gb-social-workspace .gb-story-design input[type=range]{width:100%;min-height:32px;margin:6px 0 0;accent-color:#c7463e}
.gb-social-workspace .gb-story-design input[type=color]{width:100%;height:48px;margin-top:6px;padding:5px;border:1px solid #d9ceca;border-radius:11px;background:#fff;box-sizing:border-box}
@media(max-width:760px){
    .gb-social-workspace .gb-story-design{grid-template-columns:1fr;grid-template-areas:"copy" "size" "color" "background";gap:14px;margin-top:12px;padding:15px;border-radius:14px}
    .gb-social-workspace .gb-story-design textarea{min-height:118px;height:118px}
    .gb-social-workspace .gb-story-design input[type=color]{max-width:none}
}

/* Cabecera única del calendario */
.gb-calendar-topbar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:18px;margin:0 0 16px;padding:3px 2px 14px;border-bottom:1px solid #eee3df}.gb-calendar-topbar>div:first-child{display:grid;gap:4px}.gb-calendar-topbar>div:first-child span{color:#b1453f;font-size:11px;font-weight:900;letter-spacing:.13em}.gb-calendar-topbar>div:first-child h2{margin:0;color:#30323a;font-size:24px}.gb-calendar-topbar .gb-calendar-toggle{display:grid;width:38px;height:38px;place-items:center;margin:0;padding:0;border:0;border-radius:50%;background:#fff1ec;color:#b3403b;cursor:pointer}.gb-calendar-topbar .gb-calendar-toggle b{display:block;width:auto;height:auto;background:transparent;font-size:22px}.gb-calendar-fold[hidden]{display:none}@media(max-width:760px){.gb-calendar-topbar{grid-template-columns:1fr auto}.gb-calendar-topbar .gb-marketing-month-nav{grid-column:1/-1;grid-row:2;justify-content:center}.gb-calendar-topbar>div:first-child h2{font-size:20px}}

/* Compositor social simplificado */
.gb-social-workspace .gb-publish-destination{margin-bottom:4px}.gb-social-workspace .gb-image-editor-tools{grid-template-columns:minmax(180px,1fr) auto;max-width:720px;margin:0 auto 14px}.gb-social-workspace .gb-social-media-field{margin-top:0}.gb-social-workspace .gb-social-media-field>small{margin-top:7px}.gb-social-workspace .gb-crop-stage{max-width:360px}@media(max-width:760px){.gb-social-workspace .gb-publish-destination{grid-template-columns:repeat(3,minmax(0,1fr))}.gb-social-workspace .gb-publish-destination label>span{min-height:62px;padding:11px}.gb-social-workspace .gb-publish-destination label>span:before{font-size:8px}.gb-social-workspace .gb-image-editor{padding:12px}.gb-social-workspace .gb-image-editor-tools{grid-template-columns:1fr}.gb-social-workspace .gb-image-editor-tools .button{width:100%}}

/* Calendario oficial Grado Beauty: una sola navegación, cuadrícula y numeración */
.gb-calendar-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:2px 2px 16px;border-bottom:1px solid #eee3df}.gb-calendar-panel-heading>div{display:grid;gap:4px}.gb-calendar-panel-heading h2{margin:0;color:#30323a;font-size:26px}.gb-calendar-panel-heading .gb-kicker{color:#b1453f;font-size:11px;font-weight:900;letter-spacing:.13em}.gb-calendar-panel-heading .gb-calendar-toggle{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;min-height:40px;margin:0;padding:0;border:0;border-radius:50%;background:#fff1ec;color:#b3403b;cursor:pointer}.gb-calendar-panel-heading .gb-calendar-toggle b{display:block;width:auto;height:auto;background:transparent;font-size:21px;line-height:1}.gb-calendar-fold[hidden]{display:none}
.gb-owner-workspace .gb-calendar-title,.gb-owner-workspace .gb-marketing-month-nav{display:grid;grid-template-columns:minmax(145px,210px) minmax(0,1fr) minmax(145px,210px);align-items:center;gap:18px;width:100%;margin:0 0 18px}.gb-owner-workspace .gb-marketing-month-nav a,.gb-owner-workspace .gb-calendar-title .button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:10px 16px;box-sizing:border-box;border:1px solid #e4d8d3;border-radius:12px;background:#fffaf7;color:#9f433d;text-decoration:none;font-size:14px;font-weight:850;line-height:1.2}.gb-owner-workspace .gb-marketing-month-nav a:hover,.gb-owner-workspace .gb-calendar-title .button:hover{border-color:#c9584b;background:#fff3ee}.gb-owner-workspace .gb-marketing-month-nav strong,.gb-owner-workspace .gb-calendar-title h2{min-width:0;margin:0;color:#30323a;font-size:26px;font-weight:850;text-align:center;text-transform:capitalize}
.gb-owner-workspace .gb-weekdays,.gb-owner-workspace .gb-month-grid,.gb-owner-workspace .gb-marketing-weekdays,.gb-owner-workspace .gb-marketing-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.gb-owner-workspace .gb-weekdays,.gb-owner-workspace .gb-marketing-weekdays{margin:0 0 8px}.gb-owner-workspace .gb-weekdays span,.gb-owner-workspace .gb-marketing-weekdays span{padding:8px 2px;color:#9f433d;font-size:12px;font-weight:900;text-align:center;text-transform:uppercase}
.gb-owner-workspace .gb-month-grid .gb-day,.gb-owner-workspace .gb-marketing-days>article,.gb-owner-workspace .gb-marketing-days>.is-empty{min-height:120px;padding:11px;box-sizing:border-box;border:1px solid #e5ddd8;border-radius:14px;background:#fff;color:#30323a;box-shadow:none;transform:none}.gb-owner-workspace .gb-month-grid .gb-day.is-empty,.gb-owner-workspace .gb-marketing-days>.is-empty{border-color:transparent;background:transparent}.gb-owner-workspace .gb-month-grid .gb-day>strong,.gb-owner-workspace .gb-marketing-days>article>b{display:grid;place-items:center;width:30px;height:30px;margin:0 0 8px;padding:0;border-radius:8px;background:#f7efeb;color:#9f433d;font-size:14px;font-weight:850;line-height:1}.gb-owner-workspace .gb-month-grid .gb-day.is-today,.gb-owner-workspace .gb-marketing-days>article.is-today{border:2px solid #d44d35}.gb-owner-workspace .gb-month-grid .gb-day.is-today>strong,.gb-owner-workspace .gb-marketing-days>article.is-today>b{background:linear-gradient(135deg,#c24143,#e95721);color:#fff}.gb-owner-workspace .gb-month-grid .gb-day.is-selected{border-color:#d54b35;background:linear-gradient(135deg,#c24143,#e95721);color:#fff}.gb-owner-workspace .gb-month-grid .gb-day.is-selected>strong{background:rgba(255,255,255,.92);color:#a33f39}.gb-owner-workspace .gb-month-grid .gb-day:hover:not(.is-empty){border-color:#c9584b;background:#fff8f4;box-shadow:0 6px 18px rgba(98,61,52,.08)}.gb-owner-workspace .gb-month-grid .gb-day.is-selected:hover{background:linear-gradient(135deg,#c24143,#e95721)}.gb-owner-workspace .gb-calendar-legend{margin-top:16px}
@media(max-width:760px){.gb-calendar-panel-heading h2{font-size:21px}.gb-owner-workspace .gb-calendar-fold{overflow-x:auto}.gb-owner-workspace .gb-calendar-title,.gb-owner-workspace .gb-marketing-month-nav{grid-template-columns:118px minmax(155px,1fr) 118px;min-width:650px;gap:8px}.gb-owner-workspace .gb-calendar-title h2,.gb-owner-workspace .gb-marketing-month-nav strong{font-size:21px}.gb-owner-workspace .gb-weekdays,.gb-owner-workspace .gb-month-grid,.gb-owner-workspace .gb-marketing-weekdays,.gb-owner-workspace .gb-marketing-days{min-width:650px;gap:7px}.gb-owner-workspace .gb-month-grid .gb-day,.gb-owner-workspace .gb-marketing-days>article,.gb-owner-workspace .gb-marketing-days>.is-empty{min-height:100px;padding:8px}}

/* El calendario de Marketing vive fuera de .gb-owner-workspace: aplicar aquí el patrón oficial */
#gb-marketing-calendar .gb-marketing-month-nav{display:grid;grid-template-columns:210px minmax(0,1fr) 210px;align-items:center;gap:18px;width:100%;margin:0 0 18px;box-sizing:border-box}#gb-marketing-calendar .gb-marketing-month-nav a{display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:48px;padding:10px 16px;box-sizing:border-box;border:1px solid #e4d8d3;border-radius:12px;background:#fffaf7;color:#9f433d;text-decoration:none;font-size:14px;font-weight:850;line-height:1.2;white-space:nowrap}#gb-marketing-calendar .gb-marketing-month-nav strong{display:block;min-width:0;margin:0;color:#30323a;font-size:26px;font-weight:850;line-height:1.2;text-align:center;text-transform:capitalize}#gb-marketing-calendar .gb-marketing-weekdays{margin:0 0 8px}
@media(max-width:760px){#gb-marketing-calendar .gb-calendar-fold{overflow-x:auto}#gb-marketing-calendar .gb-marketing-month-nav{grid-template-columns:118px minmax(155px,1fr) 118px;min-width:650px;gap:8px}#gb-marketing-calendar .gb-marketing-month-nav strong{font-size:21px}}

/* Marketing usa literalmente el calendario administrativo oficial */
#gb-marketing-calendar>.gb-section-heading{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:start;gap:16px;margin:0;padding:0;border:0}#gb-marketing-calendar>.gb-section-heading>div:first-child{grid-column:1;grid-row:1}#gb-marketing-calendar .gb-marketing-month-nav{grid-column:1/-1;grid-row:2}#gb-marketing-calendar .gb-marketing-fold-toggle{display:grid;grid-column:2;grid-row:1;place-items:center;width:40px;height:40px;min-height:40px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#b3403b;cursor:pointer}#gb-marketing-calendar .gb-marketing-fold-toggle:hover,#gb-marketing-calendar .gb-marketing-fold-toggle:focus{border:0;background:transparent;box-shadow:none;outline:0}#gb-marketing-calendar .gb-marketing-fold-toggle b{font-size:21px;line-height:1}#gb-marketing-calendar .gb-marketing-weekdays span{text-transform:none}#gb-marketing-calendar .gb-marketing-days>article,#gb-marketing-calendar .gb-marketing-days>.is-empty{min-height:72px;padding:11px;border-radius:12px;background:#fcfbf9}#gb-marketing-calendar .gb-marketing-days>.is-empty{border:0;background:transparent}#gb-marketing-calendar .gb-marketing-days>article>strong{display:block;width:auto;height:auto;margin:0;padding:0;border-radius:0;background:transparent;color:#30343a;font-size:17px;font-weight:700;line-height:1.2}#gb-marketing-calendar .gb-marketing-days>article.is-today>strong{background:transparent;color:#30343a}#gb-marketing-calendar.is-collapsed .gb-marketing-month-nav,#gb-marketing-calendar.is-collapsed>.gb-marketing-weekdays,#gb-marketing-calendar.is-collapsed>.gb-marketing-days,#gb-marketing-calendar.is-collapsed>.gb-calendar-legend{display:none}
@media(max-width:800px){#gb-marketing-calendar .gb-marketing-days>article,#gb-marketing-calendar .gb-marketing-days>.is-empty{min-height:48px;padding:6px;border-radius:8px}}

/* Altura editorial para alojar miniaturas y estado de las publicaciones */
#gb-marketing-calendar .gb-marketing-days>article,#gb-marketing-calendar .gb-marketing-days>.is-empty{min-height:155px;padding:11px}
@media(max-width:800px){#gb-marketing-calendar .gb-marketing-days>article,#gb-marketing-calendar .gb-marketing-days>.is-empty{min-height:120px;padding:8px}}

/* Estado final desde el primer pintado: sin transformación visual posterior */
#gb-marketing-calendar .gb-marketing-month-nav a{font-size:0}#gb-marketing-calendar .gb-marketing-month-nav a:first-child:after{content:'‹ Anterior'}#gb-marketing-calendar .gb-marketing-month-nav a:last-child:after{content:'Siguiente ›'}#gb-marketing-calendar .gb-marketing-month-nav a:after{font-size:14px;font-weight:850;line-height:1.2;white-space:nowrap}#gb-marketing-calendar .gb-marketing-days>article>b,#gb-marketing-calendar .gb-marketing-days>article>strong{display:block;width:auto;height:auto;margin:0;padding:0;border-radius:0;background:transparent;color:#30343a;font-size:17px;font-weight:700;line-height:1.2}#gb-marketing-calendar .gb-marketing-days>article.is-today>b,#gb-marketing-calendar .gb-marketing-days>article.is-today>strong{background:transparent;color:#30343a}
#gb-marketing-calendar .gb-marketing-month-nav a{font-size:0}
.gb-social-preview-media{position:relative}.gb-social-preview-media .gb-carousel-count{position:absolute;right:12px;top:12px;z-index:3;padding:6px 9px;border-radius:999px;background:rgba(32,30,34,.78);color:#fff;font-size:11px;font-weight:850;line-height:1}.gb-carousel-editor-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 14px}.gb-carousel-editor-nav[hidden]{display:none}.gb-carousel-editor-nav button,.gb-carousel-preview-arrow{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #e1d5d0;border-radius:9px;background:#fff;color:#a6423d;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(52,42,40,.08)}.gb-carousel-editor-nav strong{min-width:135px;color:#3f4149;font-size:13px;text-align:center}.gb-carousel-preview-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);border-color:rgba(255,255,255,.78);background:rgba(255,255,255,.9)}.gb-carousel-preview-arrow.is-prev{left:10px}.gb-carousel-preview-arrow.is-next{right:10px}.gb-social-preview-media .gb-carousel-preview-arrow:focus-visible,.gb-carousel-editor-nav button:focus-visible{outline:2px solid #c7463e;outline-offset:2px}

/* Jerarquía de Marketing en escritorio y adaptación móvil real */
@media(min-width:1101px){.gb-marketing-overview{grid-template-columns:repeat(6,minmax(0,1fr))}.gb-marketing-overview article:nth-child(-n+3){grid-column:span 2}.gb-marketing-overview article:nth-child(n+4){grid-column:span 3}.gb-marketing-overview article{min-height:96px;padding:18px}.gb-marketing-overview article>small{font-size:13px;line-height:1.35;overflow-wrap:anywhere}.gb-marketing-overview article:nth-child(n+4)>small{max-width:none}}
@media(max-width:782px){.gradobeauty-app-page .gb-owner-workspace{width:100%;min-width:0;overflow:visible}.gradobeauty-app-page .gb-owner-workspace .wrap.gb-wrap{width:100%;min-width:0;margin:0;padding:0}.gb-marketing-nav{position:static;display:grid;grid-template-columns:1fr;gap:4px;width:100%;overflow:visible;padding:6px}.gb-marketing-nav a{width:100%;box-sizing:border-box;padding:10px 12px;white-space:normal}.gb-marketing-overview{grid-template-columns:1fr;gap:8px}.gb-marketing-overview article,.gb-marketing-overview article:nth-child(n){display:grid;grid-template-columns:minmax(92px,.55fr) minmax(0,1fr);grid-column:auto;align-items:center;min-height:0;padding:13px 14px;gap:3px 12px}.gb-marketing-overview article>span{grid-column:1;grid-row:1}.gb-marketing-overview article>strong{grid-column:1;grid-row:2;font-size:20px}.gb-marketing-overview article>small{grid-column:2;grid-row:1/3;align-self:center;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.gb-marketing-calendar{width:100%;max-width:100%;overflow:hidden}.gb-marketing-calendar>.gb-section-heading{grid-template-columns:minmax(0,1fr) 34px}.gb-marketing-calendar>.gb-section-heading h2{font-size:20px;line-height:1.2}.gb-marketing-calendar .gb-marketing-fold-toggle{width:34px;height:34px;min-height:34px}.gb-marketing-calendar .gb-marketing-month-nav,.gb-marketing-calendar .gb-marketing-weekdays,.gb-marketing-calendar .gb-marketing-days,.gb-marketing-calendar .gb-calendar-legend{min-width:680px}.gb-marketing-calendar .gb-marketing-month-nav{grid-template-columns:112px minmax(150px,1fr) 112px}.gb-marketing-calendar .gb-marketing-month-nav strong{font-size:20px}.gb-marketing-calendar .gb-marketing-month-nav a:after{font-size:12px}.gb-marketing-calendar>.gb-section-heading,.gb-marketing-calendar>.gb-marketing-weekdays,.gb-marketing-calendar>.gb-marketing-days,.gb-marketing-calendar>.gb-calendar-legend{box-sizing:border-box}.gb-marketing-calendar{overflow-x:auto;overscroll-behavior-inline:contain}.gb-social-connections{display:grid;grid-template-columns:1fr;gap:8px}.gb-meta-connection{width:100%;min-width:0}.gb-meta-connection>span,.gb-meta-connection>.button{width:100%;box-sizing:border-box;justify-content:center}.gb-social-editor-grid{grid-template-columns:1fr;gap:16px}.gb-social-preview{width:100%;max-width:100%}.gb-network-selector{display:grid;grid-template-columns:1fr;gap:10px}.gb-social-submit{display:grid;grid-template-columns:1fr}.gb-social-submit .button{width:100%}.gb-campaign-builder .gb-section-heading,.gb-social-library .gb-section-heading{align-items:flex-start;flex-direction:column}.gb-campaign-list article,.gb-social-list article{grid-template-columns:1fr}.gb-campaign-send,.gb-recipient-list,.gb-schedule-fields{grid-template-columns:1fr}.gb-marketing-grid{grid-template-columns:1fr;gap:12px}.gb-marketing-save{grid-column:auto}.gb-marketing-save .button{width:100%}}

/* Marketing móvil: jerarquía compacta y sin desplazamiento infinito */
@media(max-width:782px){
.gb-marketing>.gb-heading{margin-bottom:12px}.gb-marketing>.gb-heading p{display:none}.gb-marketing-nav{display:none}
.gb-marketing-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 10px}.gb-marketing-overview article:nth-child(n){display:grid;grid-template-columns:1fr;justify-items:center;min-width:0;padding:9px 4px;gap:2px;border-radius:10px;text-align:center}.gb-marketing-overview article:nth-child(n+4){display:none}.gb-marketing-overview article>span{grid-column:1;grid-row:2;font-size:7px;letter-spacing:.07em}.gb-marketing-overview article>strong{grid-column:1;grid-row:1;font-size:20px;line-height:1}.gb-marketing-overview article>small{display:none}
.gb-marketing-calendar{padding:12px 8px;overflow:hidden}.gb-marketing-calendar>.gb-section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-bottom:9px}.gb-marketing-calendar>.gb-section-heading .gb-kicker{font-size:8px}.gb-marketing-calendar>.gb-section-heading h2{font-size:17px}.gb-marketing-calendar .gb-marketing-fold-toggle{grid-column:2;grid-row:1;width:auto;height:auto;min-height:0;padding:2px 4px}.gb-marketing-calendar .gb-marketing-month-nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:36px minmax(0,1fr) 36px;width:100%;min-width:0;gap:6px}.gb-marketing-calendar .gb-marketing-month-nav a{width:34px;height:32px;border-radius:8px;font-size:20px}.gb-marketing-calendar .gb-marketing-month-nav strong{min-width:0;font-size:16px}.gb-marketing-calendar .gb-marketing-weekdays,.gb-marketing-calendar .gb-marketing-days,.gb-marketing-calendar .gb-calendar-legend{width:100%;min-width:0}.gb-marketing-weekdays,.gb-marketing-days{gap:3px}.gb-marketing-weekdays{margin:10px 0 4px}.gb-marketing-weekdays span{font-size:8px}.gb-marketing-days>article,.gb-marketing-days>.is-empty{min-height:48px;border-radius:7px}.gb-marketing-days>article{padding:3px}.gb-marketing-days>article>b{width:18px;height:18px;margin-bottom:2px;border-radius:5px;font-size:8px}.gb-calendar-social,.gb-calendar-email{gap:2px;padding:2px;border-radius:4px}.gb-calendar-social img{width:20px;height:20px;border-radius:4px}.gb-calendar-social span,.gb-calendar-email span,.gb-calendar-social strong,.gb-calendar-email strong{display:none}.gb-calendar-legend{gap:10px;margin-top:8px;font-size:8px}
.gb-social-workspace{padding:14px 10px}.gb-social-workspace>.gb-section-heading{margin-bottom:10px}.gb-social-workspace>.gb-section-heading p,.gb-social-connections,.gb-social-connection-note{display:none}.gb-social-editor-grid{gap:12px}.gb-content-type{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.gb-content-type legend{margin-bottom:5px;font-size:13px}.gb-content-type label>span{place-items:center;min-height:42px;padding:10px 4px;border-radius:9px;font-size:12px}.gb-social-media-field{gap:6px}.gb-social-media-field>.gb-file-picker{margin-top:2px}.gb-social-media-field .gb-file-picker-button{min-height:42px;padding:0 13px}.gb-social-media-field .gb-file-picker:not(.has-file) .gb-file-picker-name{display:none}.gb-social-media-field>small{display:none}.gb-image-editor{padding:8px}.gb-image-editor-tools{display:none}.gb-carousel-editor-nav{margin-bottom:8px}.gb-crop-stage{max-width:280px;border-radius:11px}.gb-crop-stage>span{bottom:7px;padding:4px 7px;font-size:8px}.gb-social-caption-field textarea{min-height:120px;height:120px}.gb-network-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;gap:8px;padding:12px 18px}.gb-network-selector legend{font-size:12px}.gb-network-selector label{display:grid;justify-items:center;gap:5px;min-width:0;font-size:10px;white-space:nowrap;text-align:center}.gb-network-selector input{width:16px;height:16px}.gb-network-selector p{display:none}.gb-social-submit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:4px 0 7px}.gb-social-submit .button{min-height:38px;padding:5px 3px;font-size:9px;line-height:1.15}.gb-social-schedule{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gb-social-schedule label{font-size:10px}.gb-social-schedule input{min-height:38px;padding:5px;font-size:11px}.gb-social-preview{max-width:280px;margin:0 auto;border-radius:12px}.gb-preview-tabs{padding:6px}.gb-preview-tabs button{padding:6px;font-size:9px}.gb-social-preview-head{padding:8px}.gb-social-preview-head strong{font-size:11px}.gb-social-preview-head small{font-size:9px}.gb-platform-avatar{width:30px;height:30px}.gb-social-preview-media{min-height:180px}.gb-social-preview-media>span{display:block;width:100%;padding:12px;box-sizing:border-box;text-align:center}.gb-social-preview-media img,.gb-social-preview-media video{max-height:300px}.gb-social-preview>p{min-height:0;padding:9px;font-size:10px}.gb-preview-actions{padding:6px 9px;font-size:16px}
.gb-social-library{padding:12px}.gb-social-library>.gb-section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0}.gb-social-library>.gb-section-heading p{display:none}.gb-social-library.is-mobile-collapsed>.gb-social-list,.gb-social-library.is-mobile-collapsed>.gb-empty{display:none}.gb-mobile-section-toggle{align-self:start;padding:2px 4px;border:0;background:transparent;color:#a6423d;font-size:18px;line-height:1;cursor:pointer}
.gb-marketing-divider{margin:18px 0 8px}.gb-marketing-divider p{display:none}.gb-marketing-divider h2{margin:2px 0;font-size:20px}.gb-campaign-builder{padding:14px 10px}.gb-campaign-builder>.gb-section-heading{display:block;margin-bottom:10px}.gb-campaign-builder>.gb-section-heading p{display:none}.gb-campaign-builder .gb-fields{gap:9px}.gb-campaign-builder .gb-file-picker{margin-top:3px}.gb-campaign-builder .gb-file-picker:not(.has-file) .gb-file-picker-name{display:none}.gb-campaign-builder label>small{display:none}.gb-campaign-builder textarea[name=message]{min-height:150px;height:150px}.gb-campaign-builder .gb-actions{margin-top:10px}.gb-campaign-builder .button{min-height:40px}
.gb-queue-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%}.gb-queue-overview span{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:42px;padding:8px 5px;border:0;border-radius:8px;background:#c74a42;color:#fff;font-size:10px;font-weight:700;text-align:center;box-sizing:border-box}.gb-queue-overview strong{color:#fff;font-size:14px}.gb-campaign-builder+section.gb-panel{padding:12px 10px}.gb-campaign-builder+section.gb-panel>.description{display:none}.gb-campaign-builder+section.gb-panel>.gb-section-heading{gap:8px}.gb-campaign-builder+section.gb-panel>.gb-empty{margin-top:12px}.gb-campaign-record>summary{padding:10px}.gb-campaign-summary strong{font-size:12px}.gb-campaign-summary small{font-size:9px}
.gb-automation-divider{margin-top:18px}.gb-marketing-grid{gap:7px}.gb-marketing-grid>.gb-panel{min-height:0;height:auto;padding:0 12px;border-radius:10px}.gb-marketing-grid>.gb-panel .gb-module-head{display:grid;grid-template-columns:minmax(0,1fr) 86px 24px;align-items:center;gap:5px;min-height:56px;margin:0;cursor:pointer}.gb-marketing-grid>.gb-panel .gb-module-head>div{min-width:0}.gb-marketing-grid>.gb-panel .gb-module-head h2{margin:0;font-size:14px;line-height:1.2}.gb-marketing-grid>.gb-panel .gb-module-head .gb-kicker{display:none}.gb-marketing-grid>.gb-panel .gb-module-head .gb-switch{display:flex;align-items:center;justify-self:start;gap:7px;min-width:82px;min-height:44px;margin:0;padding:4px 0;font-size:12px;white-space:nowrap;cursor:pointer}.gb-marketing-grid>.gb-panel .gb-module-head .gb-switch input{width:24px;height:24px;min-height:24px;margin:0;cursor:pointer}.gb-marketing-grid>.gb-panel .gb-mobile-section-toggle{grid-column:3;margin:0;padding:3px}.gb-marketing-grid>.gb-panel.is-mobile-collapsed>.gb-fields,.gb-marketing-grid>.gb-panel.is-mobile-collapsed>.description{display:none}.gb-marketing-grid>.gb-panel:not(.is-mobile-collapsed){padding-bottom:12px}.gb-marketing-grid>.gb-panel .gb-fields{gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid #eee3df}.gb-marketing-grid>.gb-panel textarea{min-height:90px;height:90px}.gb-marketing-grid>.gb-panel>.description{display:none}.gb-marketing-save{margin-top:0}.gb-marketing-save .button{min-height:40px}
}

/* La estructura superior del dashboard pertenece exclusivamente a grado-creativo-core.css. */

/* 0.23.45 | Calendario de reservas unificado también en escritorio */
.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day{min-height:96px;height:96px;padding:10px;border:1px solid #e5ddd8;border-radius:12px;background:#fcfbf9;box-sizing:border-box;color:#30323a}
.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day>strong{display:block;width:auto;height:auto;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font-size:15px;line-height:1}
.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-selected{border-color:#d45145;background:linear-gradient(135deg,#c94742,#ee5a20);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-selected>strong,.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-selected>span{width:auto;background:transparent;color:#fff}
.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-empty{border-color:transparent;background:transparent}

/* 0.23.36 | La vista previa es también el editor de encuadre */
.gb-social-workspace .gb-image-editor:not([hidden]){display:contents}.gb-social-workspace .gb-image-editor-tools,.gb-social-workspace .gb-carousel-editor-nav{display:none}.gb-social-workspace .gb-image-editor>.gb-crop-stage{display:none}.gb-social-preview-media.is-editable{min-height:0;overflow:hidden;background:#f4efec}.gb-social-preview-media.is-editable .gb-crop-stage{display:block;width:100%;max-width:none;margin:0;border-radius:0;background:#f4efec;box-shadow:none}.gb-social-preview-media.is-editable .gb-crop-stage canvas{display:block;width:100%;max-width:none;max-height:none;height:auto;touch-action:none;cursor:grab}.gb-social-preview-media.is-editable .gb-crop-stage canvas:active{cursor:grabbing}.gb-social-preview-media.is-editable .gb-crop-stage>span{right:50%;bottom:10px;transform:translateX(50%);white-space:nowrap}.gb-social-preview-media.is-editable~p{border-top:1px solid #eee3df}
.gb-manual-booking{padding:0;overflow:hidden;border-color:#ead8d1}.gb-manual-booking>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;cursor:pointer;list-style:none;background:linear-gradient(135deg,#fff8f5,#fff)}.gb-manual-booking>summary::-webkit-details-marker{display:none}.gb-manual-booking>summary>span{display:grid;gap:4px}.gb-manual-booking>summary small{color:#bd493e;font-size:11px;font-weight:800;letter-spacing:1.5px}.gb-manual-booking>summary strong{font-size:21px;color:#343139}.gb-manual-booking>summary em{font-style:normal;color:#777}.gb-manual-booking>summary>b{font-size:24px;color:#bd493e;transition:transform .2s}.gb-manual-booking[open]>summary>b{transform:rotate(180deg)}#gb-manual-booking-form{padding:26px;border-top:1px solid #f0e2dd}.gb-manual-client-choice{display:flex;gap:12px;margin:0 0 22px}.gb-manual-client-choice label{display:flex;align-items:center;gap:8px;padding:12px 16px;border:1px solid #e3d7d3;border-radius:12px;background:#fff;font-weight:700;cursor:pointer}.gb-manual-client-choice label:has(input:checked){border-color:#c84b40;background:#fff4f0;color:#a83e36}.gb-manual-client-choice input{margin:0}.gb-manual-booking .gb-fields{margin-bottom:22px}.gb-manual-booking label small{display:block;margin-top:6px;color:#777;font-weight:400}.gb-manual-slots{padding:20px;border-radius:16px;background:#f8f5f4;margin-bottom:20px}.gb-manual-slots h3{margin:0 0 14px;font-size:17px}.gb-manual-slot-list{display:flex;flex-wrap:wrap;gap:9px}.gb-manual-slot{min-width:72px;padding:11px 14px;border:1px solid #d9cfcc;border-radius:10px;background:#fff;color:#343139;font-weight:800;cursor:pointer}.gb-manual-slot:hover,.gb-manual-slot.is-selected{border-color:#bd493e;background:#bd493e;color:#fff}.gb-manual-notes{display:block;margin:0 0 20px;font-weight:700}.gb-manual-notes textarea{display:block;width:100%;margin-top:8px}.gb-manual-booking button[type="submit"]{min-width:220px}
@media(max-width:782px){.gb-manual-booking>summary{padding:19px 18px}.gb-manual-booking>summary strong{font-size:18px}.gb-manual-booking>summary em{font-size:13px;line-height:1.4}#gb-manual-booking-form{padding:18px}.gb-manual-client-choice{display:grid;grid-template-columns:1fr}.gb-manual-client-choice label{min-height:48px}.gb-manual-slot-list{display:grid;grid-template-columns:repeat(3,1fr)}.gb-manual-slot{min-width:0;width:100%}.gb-manual-booking button[type="submit"]{width:100%;min-height:50px}}

/* 0.23.70 | Formatos ligados directamente a la caja visible */
.gb-social-workspace .gb-social-preview{position:relative;overflow:hidden;background:#fff}
.gb-social-workspace form .gb-social-preview[data-preview-format] .gb-tiktok-overlay,.gb-social-workspace form .gb-social-preview[data-preview-format]>.gb-preview-actions,.gb-social-workspace form.is-reel-post .gb-social-preview[data-preview-format="reel"] .gb-tiktok-overlay,.gb-social-workspace form.is-story-post .gb-social-preview[data-preview-format="story"] .gb-tiktok-overlay{display:none}
.gb-social-workspace .gb-social-preview .gb-social-preview-head{position:relative;z-index:2;display:flex;background:#fff;color:#30323a}
.gb-social-workspace .gb-social-preview .gb-social-preview-head strong,.gb-social-workspace .gb-social-preview .gb-social-preview-head small,.gb-social-workspace .gb-social-preview .gb-preview-more{color:inherit}
.gb-social-workspace .gb-social-preview-media{position:relative;inset:auto;display:grid;place-items:center;width:100%;max-width:none;min-height:290px;height:auto;margin:0;overflow:hidden;border:0;border-radius:0;background:#f4efec;box-shadow:none}
.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-social-preview-media,.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-social-preview-media{width:min(100%,390px);max-width:390px;min-height:0;height:auto;margin:0 auto;aspect-ratio:9/16;background:#17171a}
.gb-social-workspace .gb-social-preview-media>img,.gb-social-workspace .gb-social-preview-media>video,.gb-social-workspace .gb-social-preview-media>.gb-crop-stage,.gb-social-workspace .gb-social-preview-media>.gb-crop-stage>canvas{display:block;width:100%;max-width:none;max-height:none;margin:0;border-radius:0}
.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-social-preview-media>img,.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-social-preview-media>video,.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-social-preview-media>img,.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-social-preview-media>video,.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-crop-stage,.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-crop-stage>canvas{height:100%;object-fit:cover}
.gb-social-workspace .gb-social-preview[data-preview-format="reel"] [data-preview-label]:after{content:" · Reel"}
.gb-social-workspace .gb-social-preview[data-preview-format="story"] [data-preview-label]:after{content:" · Historia"}
.gb-social-workspace .gb-social-preview[data-preview-format="story"]>p{display:none}
@media(max-width:782px){.gb-social-workspace .gb-social-preview-media{min-height:220px}.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-social-preview-media,.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-social-preview-media{width:min(100%,360px);max-width:360px;min-height:0}}

/* 0.23.80 | Feed 4:5 real con frontal normal y frontal de carrusel */
.gb-social-workspace .gb-social-preview .gb-phone-stage{position:relative;width:min(100%,390px);max-width:390px;margin:16px auto;aspect-ratio:947/2048;overflow:hidden;border:0;border-radius:0;background-image:url('social-feed-background-v02384.png');background-repeat:no-repeat;background-size:100% 100%;background-position:0 0;isolation:isolate}
.gb-social-workspace .gb-social-preview .gb-phone-stage:before{display:none}
.gb-social-workspace .gb-social-preview .gb-phone-stage:after{content:"";position:absolute;z-index:20;inset:0;display:block;pointer-events:none;background-image:url('social-feed-front-v02384.png');background-repeat:no-repeat;background-size:100% 100%;background-position:0 0}
.gb-social-workspace .gb-social-preview[data-preview-format="feed"][data-feed-layout="carousel"] .gb-phone-stage:after{background-image:url('social-feed-front-v02384.png')}
.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-phone-stage{aspect-ratio:947/2048;background-image:url('social-reel-background-v02385.png')}.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-phone-stage:after{background-image:url('social-reel-front-v02390.png')}
.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-phone-stage{aspect-ratio:947/2048;background-image:url('social-story-background-v02379.png')}.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-phone-stage:after{background-image:url('social-story-front-v02388.png')}
.gb-social-workspace .gb-phone-stage>.gb-social-preview-head,.gb-social-workspace .gb-phone-stage>.gb-tiktok-overlay,.gb-social-workspace .gb-phone-stage>.gb-preview-actions,.gb-social-workspace .gb-phone-stage>p{display:none}
.gb-social-workspace .gb-phone-stage>.gb-social-preview-media{position:absolute;z-index:2;left:2.534%;top:15.576%;display:block;width:94.826%;max-width:none;height:54.834%;min-height:0;max-height:none;margin:0;overflow:hidden;aspect-ratio:4/5;border:0;border-radius:0;background:transparent;touch-action:pan-y}
.gb-social-workspace .gb-social-preview[data-preview-format="reel"] .gb-phone-stage>.gb-social-preview-media{inset:0;width:100%;max-width:none;height:100%;margin:0;aspect-ratio:947/2048;border-radius:0;-webkit-mask-image:url('social-reel-background-v02385.png');mask-image:url('social-reel-background-v02385.png');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}
.gb-social-workspace .gb-social-preview[data-preview-format="story"] .gb-phone-stage>.gb-social-preview-media{inset:0;width:100%;max-width:none;height:100%;margin:0;aspect-ratio:auto;border-radius:0;-webkit-mask-image:url('social-story-background-v02379.png');mask-image:url('social-story-background-v02379.png');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}
.gb-social-workspace .gb-phone-stage>.gb-social-preview-media>span{display:none}
.gb-social-workspace .gb-phone-stage>.gb-social-preview-media>img,.gb-social-workspace .gb-phone-stage>.gb-social-preview-media>video,.gb-social-workspace .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage,.gb-social-workspace .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage>canvas{display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:cover;border-radius:0}
.gb-social-workspace .gb-phone-stage>.gb-social-preview-media video{background:#000}
.gb-feed-carousel-dots{position:absolute;z-index:30;left:50%;top:72.80%;display:flex;align-items:center;justify-content:center;gap:3.5px;width:auto;min-width:0;height:6px;min-height:0;padding:0;transform:translateX(-50%);background:transparent;box-sizing:border-box}
.gb-feed-carousel-dots button{display:block;flex:0 0 4.2px;width:4.2px;min-width:0;max-width:4.2px;height:4.2px;min-height:0;max-height:4.2px;margin:0;padding:0;border:0;border-radius:0;appearance:none;background-color:transparent;background-image:url('social-carousel-dot-inactive-v02382.png');background-repeat:no-repeat;background-position:center;background-size:contain;box-shadow:none;font-size:0;line-height:0;cursor:pointer}
.gb-feed-carousel-dots button.is-active{flex-basis:5.4px;width:5.4px;max-width:5.4px;height:5.4px;max-height:5.4px;background-image:url('social-carousel-dot-active-v02382.png')}
.gb-feed-caption-preview{display:none}.gb-social-preview[data-preview-format="feed"] .gb-feed-caption-preview{position:absolute;z-index:30;left:26.4%;top:80.35%;display:block;width:58%;height:1.8%;overflow:hidden;color:#747474;font-family:Arial,sans-serif;font-size:12.4px;font-weight:400;line-height:1.35;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}
.gb-social-preview[data-preview-format="reel"] .gb-feed-caption-preview{position:absolute;z-index:30;left:7.2%;top:86.55%;display:block;width:46%;height:1.8%;overflow:hidden;color:#fff;font-family:Arial,sans-serif;font-size:12.4px;font-weight:400;line-height:1.35;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}
.gb-social-workspace form.has-social-media .gb-social-preview[data-preview-format="feed"] .gb-phone-stage:before{content:"";position:absolute;z-index:1;left:2.534%;top:70.410%;display:block;width:94.826%;height:29.590%;background:#fff;pointer-events:none}
.gb-video-preview-controls[hidden]{display:none}.gb-video-preview-controls{position:absolute;z-index:40;left:50%;top:48%;display:flex;align-items:center;justify-content:center;gap:12px;transform:translate(-50%,-50%);opacity:1;transition:opacity .2s ease;pointer-events:auto}.gb-video-preview-controls:not(.is-visible){opacity:0;pointer-events:none}.gb-video-preview-controls button{position:relative;display:grid;place-items:center;width:46px;min-width:46px;height:46px;min-height:46px;margin:0;padding:0;border:1px solid rgba(255,255,255,.78);border-radius:50%;background:rgba(0,0,0,.58);box-shadow:0 4px 16px rgba(0,0,0,.22);cursor:pointer;appearance:none}.gb-video-preview-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}.gb-video-preview-controls [data-video-play]:before{content:"";display:block;width:0;height:0;margin-left:3px;border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:14px solid #fff}.gb-video-preview-controls [data-video-play]:not(.is-paused):before{width:5px;height:18px;margin:0;border:0;border-left:5px solid #fff;border-right:5px solid #fff;box-sizing:content-box}.gb-video-preview-controls [data-video-sound]:before{content:"";display:block;width:18px;height:18px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M3 9v6h4l5 4V5L7 9H3zm12.5 3a3.5 3.5 0 0 0-2-3.15v6.3a3.5 3.5 0 0 0 2-3.15zm-2-7.1v2.06a5.5 5.5 0 0 1 0 10.08v2.06a7.5 7.5 0 0 0 0-14.2z'/%3E%3C/svg%3E")}.gb-video-preview-controls [data-video-sound].is-muted:after{content:"";position:absolute;width:23px;height:2px;transform:rotate(-45deg);border-radius:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
@media(max-width:782px){.gb-video-preview-controls{gap:9px}.gb-video-preview-controls button{width:40px;min-width:40px;height:40px;min-height:40px}.gb-video-preview-controls [data-video-play]:before{border-top-width:8px;border-bottom-width:8px;border-left-width:12px}.gb-video-preview-controls [data-video-play]:not(.is-paused):before{height:16px}.gb-video-preview-controls [data-video-sound]:before{width:16px;height:16px}}
.gb-phone-account-preview{display:none}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview,.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview{position:absolute;z-index:32;display:flex;align-items:center;overflow:hidden;pointer-events:none}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview{left:7.1%;top:7.05%;gap:7px;width:72%;height:3.2%;color:#fff}.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview{left:7.1%;top:10.7%;gap:7px;width:72%;height:3.2%;color:#1d1d1f}.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview{left:7.1%;top:80.25%;gap:9px;width:48%;height:5.4%;color:#fff}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview img,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview img,.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview img{display:block;flex:0 0 auto;margin:0;border-radius:50%;object-fit:cover;box-sizing:border-box;background:#ddd}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview img,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview img{width:25px;height:25px}.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview img{width:43px;height:43px;border:3px solid #e95a86}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview img{border:2px solid #fff}.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview img{border:2px solid #e95a86}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview strong,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview strong,.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview strong{display:block;min-width:0;overflow:hidden;font-family:Arial,sans-serif;font-size:12px;font-weight:700;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview strong,.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview strong{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.72)}.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview strong{color:#1d1d1f;text-shadow:none}
.gb-feed-account-preview{display:none}.gb-social-preview[data-preview-format="feed"] .gb-feed-account-preview{position:absolute;z-index:31;left:6.2%;top:79.95%;display:block;width:20.5%;height:2.25%;padding-top:.4%;overflow:hidden;background:#fff;color:#171717;font-family:Arial,sans-serif;font-size:12.4px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}
@media(max-width:782px){.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview{gap:6px}.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview{gap:7px}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview img,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview img{width:22px;height:22px}.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview img{width:38px;height:38px}.gb-social-preview[data-preview-format="story"] .gb-phone-account-preview strong,.gb-social-preview[data-preview-format="feed"] .gb-phone-account-preview strong,.gb-social-preview[data-preview-format="feed"] .gb-feed-account-preview{font-size:11px}.gb-social-preview[data-preview-format="reel"] .gb-phone-account-preview strong{font-size:11.5px}}

/* 0.23.91 | TikTok unificado para imagen y vídeo */
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage{aspect-ratio:947/2048;background-color:transparent;background-image:url('social-tiktok-background-v02391.png');background-repeat:no-repeat;background-position:center;background-size:98.627% 100%}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage:after{background-image:url('social-tiktok-front-v02391.png');background-position:0 0;background-size:100% 100%}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media{inset:0;display:block;width:100%;max-width:none;height:100%;min-height:0;max-height:none;margin:0;aspect-ratio:947/2048;border-radius:0;background:transparent;-webkit-mask-image:url('social-tiktok-background-v02391.png');mask-image:url('social-tiktok-background-v02391.png');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:98.627% 100%;mask-size:98.627% 100%}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>img,.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>video,.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage,.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage>canvas{width:100%;height:100%;object-fit:cover}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media.is-editable>.gb-crop-stage{position:absolute;inset:0;display:block;max-width:none;margin:0;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media.is-editable>.gb-crop-stage>canvas{display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;border-radius:0;object-fit:cover}
.gb-social-workspace form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage .gb-social-preview-media,.gb-social-workspace form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage .gb-social-preview-media.is-editable{position:absolute;inset:0;left:0;top:0;right:0;bottom:0;width:100%;max-width:100%;height:100%;min-height:100%;max-height:100%;margin:0;padding:0;overflow:hidden;aspect-ratio:947/2048;border:0;border-radius:0;background:transparent;box-shadow:none}
.gb-social-workspace form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage .gb-social-preview-media.is-editable .gb-crop-stage{position:absolute;inset:0;left:0;top:0;right:0;bottom:0;display:block;width:100%;max-width:100%;height:100%;min-height:100%;max-height:100%;margin:0;padding:0;overflow:hidden;aspect-ratio:947/2048;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none}
.gb-social-workspace form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage .gb-social-preview-media.is-editable .gb-crop-stage canvas{position:absolute;inset:0;left:0;top:0;display:block;width:100%;max-width:100%;height:100%;min-height:100%;max-height:100%;margin:0;padding:0;aspect-ratio:947/2048;border:0;border-radius:0;object-fit:cover;transform:none}
.gb-social-workspace form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-tiktok-overlay{position:absolute;z-index:32;inset:0;display:block;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.82)}
.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-side{display:none}
.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-copy{position:absolute;right:auto;bottom:auto;left:5.25%;top:80.15%;display:block;width:70%;max-height:7.4%;overflow:hidden;color:#fff}
.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-copy strong{display:block;overflow:hidden;margin:0;color:#fff;font-family:Arial,sans-serif;font-size:13.5px;font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-copy p{display:-webkit-box;margin:7px 0 0;overflow:hidden;color:#fff;font-family:Arial,sans-serif;font-size:13.5px;font-weight:700;line-height:1.32;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.gb-social-preview[data-preview-network="tiktok"] .gb-phone-account-preview,.gb-social-preview[data-preview-network="tiktok"] .gb-feed-account-preview,.gb-social-preview[data-preview-network="tiktok"] .gb-feed-caption-preview,.gb-social-preview[data-preview-network="tiktok"] .gb-feed-carousel-dots{display:none}
.gb-social-workspace form.has-social-media .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage:before{content:none;display:none;background:transparent}
@media(max-width:782px){.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-copy strong,.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-copy p{font-size:12px}.gb-social-preview[data-preview-network="tiktok"] .gb-tiktok-copy p{margin-top:5px}}
@media(max-width:782px){.gb-social-workspace .gb-social-preview .gb-phone-stage{width:min(100%,340px);margin:12px auto}}
.gb-safe-guide-toggle,.gb-safe-zone-guide{display:none}

/* 0.23.95 | Controles y texto de Story independientes del reproductor */
.gb-social-workspace .gb-story-design[hidden]{display:none}
.gb-story-text-preview{position:absolute;z-index:34;left:50%;right:auto;top:72%;display:block;width:82%;max-width:82%;max-height:calc(3.75em + 14px);padding:7px 10px;overflow:hidden;border-radius:9px;color:#fff;font-family:Arial,sans-serif;font-weight:800;line-height:1.25;text-align:center;white-space:normal;overflow-wrap:anywhere;text-shadow:0 1px 3px rgba(0,0,0,.72);transform:translate(-50%,-50%);touch-action:none;cursor:grab;pointer-events:auto;box-sizing:border-box;-webkit-user-select:none;user-select:none}
.gb-story-text-preview[hidden]{display:none}
.gb-story-text-preview.has-background{background:rgba(0,0,0,.58)}
.gb-story-text-preview.is-dragging{cursor:grabbing}
.gb-social-preview:not([data-preview-format="story"]) .gb-story-text-preview{display:none}

/* 0.23.96 | Story con vídeo, TikTok móvil completo y Reel solo vídeo */
.gb-social-workspace form:not(.is-story-post) .gb-story-design{display:none}
.gb-social-workspace form.is-story-post .gb-story-design{display:grid}

/* Editor de Stories compacto y táctil */
.gb-social-workspace .gb-story-design{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy tools" "native native";align-items:start;gap:10px 12px;padding:12px}
.gb-social-workspace .gb-story-copy{grid-area:copy}.gb-social-workspace .gb-story-design textarea{height:78px;min-height:78px;resize:none}.gb-story-design>[data-story-size]{display:none}
.gb-story-tools{grid-area:tools;display:flex;align-items:center;gap:8px}.gb-story-font,.gb-story-color{position:relative;display:grid;flex:0 0 42px;width:42px;height:42px;min-height:42px;place-items:center;margin:0;padding:0;overflow:hidden;border:1px solid #dfd3ce;border-radius:10px;background:#fff;color:#34363e;box-shadow:none;cursor:pointer}.gb-story-font span{font-family:Georgia,serif;font-size:19px;font-weight:700}.gb-story-font[data-style="clean"] span{font-family:Verdana,sans-serif;font-size:16px}.gb-story-color{background:var(--story-color,#fff)}.gb-story-color>span{position:absolute;inset:5px;z-index:1;border:1px solid rgba(0,0,0,.16);border-radius:6px;pointer-events:none}.gb-story-color input[type=color]{position:absolute;inset:0;width:42px;height:42px;margin:0;padding:0;border:0;opacity:.001;cursor:pointer}
.gb-social-workspace .gb-story-tools .gb-inline-check{min-height:42px;padding:8px 10px}.gb-story-native-note{grid-area:native;display:flex;align-items:center;gap:10px;margin:0;padding:9px 11px;border-radius:10px;background:#f8f3f1;color:#66666e;font-size:11px;line-height:1.35}.gb-story-native-note strong{flex:0 0 auto;color:#b1453f;font-size:11px}.gb-story-text-preview{touch-action:none}.gb-finish-instagram{border-color:#bd3a8f;background:#fff;color:#9d2475}.gb-finish-instagram[hidden]{display:none}
@media(max-width:760px){.gb-social-workspace .gb-story-design{grid-template-columns:1fr;grid-template-areas:"copy" "tools" "native"}.gb-story-tools{justify-content:flex-start}.gb-social-workspace .gb-story-tools .gb-inline-check{flex:1}.gb-story-native-note{align-items:flex-start;flex-direction:column;gap:3px}}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media,
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media.is-editable{
    position:absolute;inset:0;left:0;top:0;right:0;bottom:0;
    display:block;width:100%;max-width:none;height:100%;min-height:100%;max-height:none;
    margin:0;padding:0;overflow:hidden;aspect-ratio:auto;border:0;border-radius:0;
    background:transparent;box-shadow:none;transform:none;place-items:stretch;
}
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>img,
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>video,
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage,
.gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage>canvas{
    position:absolute;inset:0;left:0;top:0;right:0;bottom:0;
    display:block;width:100%;max-width:none;height:100%;min-height:100%;max-height:none;
    margin:0;padding:0;aspect-ratio:auto;border:0;border-radius:0;object-fit:cover;
    box-shadow:none;transform:none;
}
@media(max-width:782px){
    .gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media,
    .gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media.is-editable,
    .gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage,
    .gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage>canvas,
    .gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>img,
    .gb-social-workspace .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>video{
        inset:0;width:100%;max-width:none;height:100%;min-height:100%;max-height:none;
        margin:0;border-radius:0;object-fit:cover;transform:none;
    }
}
.gb-inventory{--gb-inventory-orange:#eb542c}.gb-inventory .gb-heading{align-items:center}.gb-inventory-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}.gb-inventory-stats article{padding:22px;border:1px solid #eaded9;border-radius:18px;background:#fff}.gb-inventory-stats strong{display:block;font-size:30px;color:#343640}.gb-inventory-stats span{color:#666a72}.gb-inventory-stats .is-alert{border-color:#eb542c;background:#fff3ee}.gb-inventory-stats .is-alert strong{color:#c94435}.gb-inventory-nav{display:flex;gap:10px;margin:0 0 20px}.gb-inventory-nav a{padding:11px 18px;border-radius:999px;background:#fff3ee;color:#a73e36;font-weight:800;text-decoration:none}.gb-inventory .gb-panel{margin-bottom:24px}.gb-inventory-create{margin:14px 0 22px;border:1px solid #eaded9;border-radius:14px;background:#fffaf7}.gb-inventory-create>summary{padding:16px 18px;color:#bd4437;font-weight:800;cursor:pointer}.gb-inventory-create .gb-fields{padding:0 18px 18px}.gb-recipe{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px;border-radius:14px;background:#f8f5f3}.gb-recipe>strong,.gb-recipe>p{grid-column:1/-1}.gb-recipe label{display:grid;grid-template-columns:1fr 90px;align-items:center;gap:8px}.gb-inventory-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gb-inventory-products>article,.gb-supplier-grid>article{padding:20px;border:1px solid #eaded9;border-radius:18px;background:#fff}.gb-inventory-products>article.is-low{border:2px solid #eb542c;background:#fff9f6}.gb-inventory-products header{display:flex;justify-content:space-between;gap:15px}.gb-inventory-products header small,.gb-inventory-products header span{display:block;color:#777}.gb-inventory-products header h3{margin:5px 0}.gb-inventory-products header>b{align-self:flex-start;padding:7px 10px;border-radius:999px;background:#e7f5ec;color:#247247;font-size:11px}.gb-inventory-products .is-low header>b{background:#ffe6dc;color:#bd3d2f}.gb-stock-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.gb-stock-numbers span{padding:12px;border-radius:12px;background:#f7f4f2;color:#777;font-size:12px}.gb-stock-numbers strong{display:block;color:#343640;font-size:20px}.gb-inventory-products details form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.gb-inventory-products details form input[name=notes],.gb-inventory-products details form button{grid-column:1/-1}.gb-supplier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gb-supplier-grid article>*{display:block;margin:6px 0}.gb-order{margin:12px 0;border:1px solid #eaded9;border-radius:16px;background:#fff}.gb-order>summary{display:flex;justify-content:space-between;align-items:center;padding:18px;cursor:pointer}.gb-order>summary span>*{display:block}.gb-order>summary>b{color:#c54437}.gb-order>div{padding:0 18px 18px}.gb-order ul{padding:0;list-style:none}.gb-order li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eee}.gb-order-email,.gb-order-receive{display:grid;gap:10px;margin-top:18px}.gb-order-email label,.gb-order-receive label{display:grid;gap:6px}.gb-order-receive{grid-template-columns:repeat(2,1fr)}.gb-order-receive button{grid-column:1/-1}
@media(max-width:760px){.gb-inventory-stats{grid-template-columns:1fr 1fr}.gb-inventory-stats article:last-child{grid-column:1/-1}.gb-inventory-nav{overflow:auto}.gb-inventory-products,.gb-supplier-grid{grid-template-columns:1fr}.gb-recipe{grid-template-columns:1fr}.gb-stock-numbers{grid-template-columns:1fr 1fr}.gb-stock-numbers span:last-child{grid-column:1/-1}.gb-order-receive{grid-template-columns:1fr}.gb-inventory .gb-heading form,.gb-inventory .gb-heading button{width:100%}}

/* 0.24.6 | Directorio de clientas: filas completas y acciones visibles en escritorio */
@media(min-width:783px){
    body .gb-owner-workspace .gb-client-access-list{
        display:grid;
        grid-template-columns:minmax(0,1fr);
        grid-auto-rows:auto;
        gap:12px;
        max-height:820px;
        padding:2px 10px 2px 2px;
        overflow-x:hidden;
        overflow-y:auto;
    }
    body .gb-owner-workspace .gb-client-record{
        display:block;
        width:100%;
        height:auto;
        min-height:0;
        overflow:visible;
        box-sizing:border-box;
    }
    body .gb-owner-workspace .gb-client-record>summary{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        width:100%;
        height:auto;
        min-height:88px;
        padding:16px 20px;
        align-items:center;
        gap:22px;
        overflow:visible;
        box-sizing:border-box;
    }
    body .gb-owner-workspace .gb-client-record>summary>span:first-child{
        display:block;
        min-width:0;
        overflow:visible;
    }
    body .gb-owner-workspace .gb-client-record>summary>span:first-child strong{
        display:block;
        margin:0;
        color:#343640;
        font-size:18px;
        line-height:1.25;
        text-transform:uppercase;
        white-space:normal;
        overflow-wrap:anywhere;
    }
    body .gb-owner-workspace .gb-client-record>summary>span:first-child small{
        display:block;
        margin-top:7px;
        color:#5b5e66;
        font-size:13px;
        line-height:1.4;
        white-space:normal;
        overflow-wrap:anywhere;
    }
    body .gb-owner-workspace .gb-client-summary-actions{
        position:static;
        display:flex;
        width:auto;
        min-width:0;
        height:auto;
        align-items:center;
        justify-content:flex-end;
        gap:10px;
        overflow:visible;
    }
    body .gb-owner-workspace .gb-client-summary-actions b,
    body .gb-owner-workspace .gb-client-summary-actions .button{
        display:inline-flex;
        width:auto;
        min-width:92px;
        min-height:40px;
        height:auto;
        margin:0;
        padding:9px 14px;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        border-radius:9px;
        font-size:12px;
        line-height:1.1;
        white-space:nowrap;
    }
    body .gb-owner-workspace .gb-client-summary-actions b{
        background:#d45145;
        color:#fff;
    }
}

/* 0.24.7 | Inventario alineado con el sistema visual de la intranet */
.gb-owner-workspace .gb-inventory-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin:18px 0;
}
.gb-owner-workspace .gb-inventory-stats article,
.gb-owner-workspace .gb-inventory-stats article.is-alert{
    display:flex;
    min-width:0;
    min-height:92px;
    padding:16px 18px;
    align-items:flex-start;
    justify-content:center;
    flex-direction:column;
    box-sizing:border-box;
    border:0;
    border-radius:14px;
    background:linear-gradient(135deg,#c74742,#eb5b25);
    color:#fff;
    box-shadow:0 9px 20px rgba(199,71,66,.18);
}
.gb-owner-workspace .gb-inventory-stats strong,
.gb-owner-workspace .gb-inventory-stats .is-alert strong{
    margin:0;
    color:#fff;
    font-size:25px;
    line-height:1;
}
.gb-owner-workspace .gb-inventory-stats span{
    margin-top:7px;
    color:#fff;
    font-size:13px;
    font-weight:750;
    line-height:1.2;
}
.gb-owner-workspace .gb-inventory-nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,145px));
    gap:9px;
    margin:0 0 18px;
    overflow:visible;
}
.gb-owner-workspace .gb-inventory-nav a{
    display:flex;
    min-height:40px;
    padding:8px 13px;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    border:1px solid #e2a59d;
    border-radius:10px;
    background:#fff;
    color:#a83f39;
    font-size:13px;
    font-weight:800;
    line-height:1.1;
    text-align:center;
}
.gb-owner-workspace .gb-inventory>.gb-panel{
    margin-bottom:18px;
    padding:20px;
}
.gb-owner-workspace .gb-inventory>.gb-panel>h2{
    margin:0 0 14px;
    color:#343640;
    font-size:19px;
    line-height:1.2;
}
.gb-owner-workspace .gb-inventory-create{
    margin:0 0 18px;
    border:1px solid #eaded9;
    border-radius:12px;
    background:#fffaf7;
}
.gb-owner-workspace .gb-inventory-create>summary{
    min-height:50px;
    padding:12px 16px;
    box-sizing:border-box;
    color:#a8413a;
    font-size:15px;
    font-weight:800;
    line-height:1.2;
}
.gb-owner-workspace .gb-inventory-create[open]>summary{
    border-bottom:1px solid #eaded9;
}
.gb-owner-workspace .gb-inventory-create .gb-fields{
    padding:18px;
}
.gb-owner-workspace .gb-inventory-products>.gb-empty{
    grid-column:1/-1;
    width:100%;
    box-sizing:border-box;
}
@media(max-width:782px){
    .gb-owner-workspace .gb-inventory .gb-heading{gap:14px}
    .gb-owner-workspace .gb-inventory-stats{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px;
        margin:14px 0;
    }
    .gb-owner-workspace .gb-inventory-stats article,
    .gb-owner-workspace .gb-inventory-stats article:last-child,
    .gb-owner-workspace .gb-inventory-stats article.is-alert{
        grid-column:auto;
        min-height:78px;
        padding:10px 8px;
        border-radius:11px;
    }
    .gb-owner-workspace .gb-inventory-stats strong,
    .gb-owner-workspace .gb-inventory-stats .is-alert strong{font-size:19px}
    .gb-owner-workspace .gb-inventory-stats span{
        margin-top:6px;
        font-size:9.5px;
        line-height:1.15;
    }
    .gb-owner-workspace .gb-inventory-nav{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px;
    }
    .gb-owner-workspace .gb-inventory-nav a{
        min-height:38px;
        padding:7px 5px;
        font-size:11px;
    }
    .gb-owner-workspace .gb-inventory>.gb-panel{padding:14px}
    .gb-owner-workspace .gb-inventory>.gb-panel>h2{font-size:17px}
    .gb-owner-workspace .gb-inventory-create>summary{
        min-height:46px;
        padding:11px 13px;
        font-size:14px;
    }
    .gb-owner-workspace .gb-inventory-create .gb-fields{padding:14px}
}
body .gb-owner-workspace .gb-client-record>summary>.gb-client-summary-main{display:flex;align-items:center;gap:14px;overflow:visible}
body .gb-owner-workspace .gb-client-record>summary>.gb-client-summary-main>span:last-child{display:block;min-width:0}

/* 0.26.13 · cierre con máxima prioridad visual */
/* La geometría del portal se define exclusivamente en grado-creativo-core.css. */
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:0 0 12px;padding:11px 14px;border:1px solid #edc9c1;border-radius:12px;background:#fff8f5;box-shadow:0 5px 15px rgba(175,55,48,.06)}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{min-width:0;margin:0;color:#70403d;font-size:13px;font-weight:400;line-height:1.35;white-space:nowrap}
body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p strong{font-size:13px;font-weight:900}
.gb-beta-support-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}
.gb-beta-support-actions>details{width:auto;min-width:0}
.gb-beta-support-actions>details>summary,.gb-beta-support-actions>details[open]>summary{display:flex;align-items:center;justify-content:center;width:auto;min-width:190px;min-height:38px;height:38px;margin:0;padding:7px 15px;border:0;border-radius:9px;background:linear-gradient(110deg,#c44243,#ec5b24);color:#fff;font-size:12px;font-weight:850;line-height:1.2;box-sizing:border-box}
.gb-beta-support-actions>details[open]{position:absolute;z-index:30;right:22px;left:22px;margin-top:8px;padding:15px;border:1px solid #edc9c1;border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(74,42,37,.17)}
.gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){position:relative;margin-bottom:290px}
.gb-beta-support-actions>details[open]>summary{margin-left:auto}
.gb-beta-notification-bell{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:0;border-radius:50%;background:linear-gradient(135deg,#c74742,#ec5b25);color:#fff;box-shadow:0 6px 14px rgba(194,65,67,.2);cursor:pointer}
.gb-beta-notification-bell svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gb-beta-support-actions form{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(260px,.65fr);gap:12px;margin-top:12px;padding-top:12px}
.gb-beta-support-actions form label{display:grid;gap:6px;margin:0;color:#47434a;font-size:13px;font-weight:800;line-height:1.3}
.gb-beta-support-actions form input,.gb-beta-support-actions form select,.gb-beta-support-actions form textarea{width:100%;max-width:none;min-height:42px;margin:0;padding:9px 11px;border:1px solid #d8cbc6;border-radius:9px;color:#343640;font-family:inherit;font-size:14px;font-weight:500;line-height:1.4;box-sizing:border-box}
.gb-beta-support-actions form textarea{min-height:96px;resize:vertical}
.gb-beta-support-actions form .gb-support-wide{grid-column:1/-1}
.gb-beta-support-actions form button[type="submit"]{grid-column:1/-1;justify-self:end;width:auto;min-height:40px;padding:8px 17px;border:0;border-radius:9px;background:linear-gradient(110deg,#c44243,#ec5b24);color:#fff;font-size:13px;font-weight:850;line-height:1.2}
@media(max-width:1100px){body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p{white-space:normal}}
@media(max-width:782px){body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support{grid-template-columns:1fr;gap:8px;padding:10px 11px}body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p,body.gradobeauty-app-page .gb-owner-shell.is-dashboard>.gb-beta-support>p strong{font-size:11px;line-height:1.35;white-space:normal}.gb-beta-support-actions{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px}.gb-beta-notification-bell{width:34px;height:34px;min-width:34px;min-height:34px}.gb-beta-notification-bell svg{width:17px;height:17px}.gb-beta-support-actions>details>summary,.gb-beta-support-actions>details[open]>summary{width:100%;min-width:0;height:34px;min-height:34px;padding:6px 10px;font-size:11px}.gb-beta-support-actions>details[open]{right:8px;left:8px;padding:12px}.gb-owner-shell.is-dashboard>.gb-beta-support:has(details[open]){margin-bottom:470px}.gb-beta-support-actions form{grid-template-columns:1fr;gap:10px}.gb-beta-support-actions form label{font-size:12px}.gb-beta-support-actions form input,.gb-beta-support-actions form select,.gb-beta-support-actions form textarea{font-size:14px}.gb-beta-support-actions form .gb-support-wide,.gb-beta-support-actions form button[type="submit"]{grid-column:1;width:100%;justify-self:stretch}}


/* Migrado desde identity.css. */
:root {
    --gb-primary: #c24143;
    --gb-secondary: #e95721;
    --gb-charcoal: #363842;
    --gb-brand-gradient: linear-gradient(135deg, #c24143 0%, #e95721 100%);
    --gb-brand-soft: #fff5f1;
    --gb-brand-border: #efd4cd;
    --gb-gold: #c24143;
    --gb-blue: #c24143;
    --gb-violet: #e95721;
    --gb-ink: #363842;
    --gb-soft: #fff7f4;
    --gb-border: #eaded9;
}

/* Control del módulo de servicios personalizados dentro de Servicios */
.gb-custom-services-control{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:22px 34px;align-items:start}
.gb-custom-services-heading{min-width:0}.gb-custom-services-heading h2{margin:5px 0 9px}.gb-custom-services-heading p,.gb-custom-services-control form>p,.gb-custom-services-link p{margin:0;color:#686b73;line-height:1.5}
.gb-custom-services-control form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center}
.gb-custom-services-toggle{grid-column:1/-1;display:flex;align-items:center;gap:10px;font-weight:800}.gb-custom-services-toggle input{flex:0 0 auto;width:18px;height:18px;margin:0}.gb-custom-services-toggle span{display:block}
.gb-custom-services-control form>p{grid-column:1/-1;display:block;font-size:13px}.gb-custom-services-control form>.button{grid-column:2;grid-row:3;justify-self:end}
.gb-custom-services-link{grid-column:1/-1;padding:14px 16px;border-radius:12px;background:#fff5f1}.gb-custom-services-link strong{display:block;margin-bottom:4px;color:#3b3d45}.gb-custom-services-link b{color:#b44740}
@media(max-width:782px){.gb-custom-services-control{grid-template-columns:1fr;gap:17px}.gb-custom-services-control form{grid-template-columns:1fr}.gb-custom-services-control form>.button{grid-column:1;grid-row:auto;width:100%;justify-self:stretch}.gb-custom-services-link{grid-column:1}}

/* Perfil e imágenes de clientas */
.gb-client-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:52px;height:52px;overflow:hidden;border:2px solid #fff;border-radius:50%;background:linear-gradient(135deg,#c64543,#ed5d22);box-shadow:0 5px 14px rgba(169,63,51,.18);color:#fff;font-size:21px;font-weight:800;text-transform:uppercase}
.gb-client-avatar img{width:100%;height:100%;object-fit:cover}
.gb-client-summary-main{display:flex;align-items:center;gap:14px;min-width:0}
.gb-client-summary-main>span:last-child{display:block;min-width:0}
.gb-client-profile{max-width:1180px;margin:18px auto 26px;border:1px solid #eadbd6;border-radius:18px;background:#fff;box-shadow:0 10px 25px rgba(84,52,47,.06);overflow:hidden}
.gb-client-profile>summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px 22px;cursor:pointer;list-style:none;background:linear-gradient(110deg,#fff,#fff6f1)}
.gb-client-profile>summary::-webkit-details-marker{display:none}.gb-client-profile>summary span:not(.gb-client-avatar){display:flex;flex-direction:column}.gb-client-profile>summary small{color:#b54642;font-size:11px;font-weight:800;letter-spacing:1.4px}.gb-client-profile>summary strong{color:#343640;font-size:20px}.gb-client-profile>summary em{color:#777981;font-size:13px;font-style:normal}.gb-client-profile>summary>b{color:#b54642;font-size:20px}.gb-client-profile[open]>summary>b{transform:rotate(180deg)}
.gb-client-profile form{padding:22px;border-top:1px solid #eee2de}.gb-client-profile-photo{display:flex;align-items:center;gap:18px;margin-bottom:20px;padding:16px;border-radius:14px;background:#fff7f3}.gb-client-avatar.is-editor{width:92px;height:92px;font-size:34px}.gb-client-profile-photo>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.gb-client-profile-photo label[for="gb-profile-photo-input"]{padding:10px 14px;border-radius:9px;background:#c84642;color:#fff;font-weight:750;cursor:pointer}.gb-client-profile-photo input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.gb-client-profile-photo small{width:100%;color:#777981}.gb-client-photo-remove{display:flex;align-items:center;gap:7px;color:#843f3c;font-size:13px}.gb-client-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.gb-client-profile-fields label{display:flex;flex-direction:column;gap:7px;color:#3e4048;font-weight:700}.gb-client-profile-fields input{width:100%;box-sizing:border-box}.gb-client-profile form>button{margin-top:18px}.gb-client-profile-saved{margin:18px 22px 0;padding:12px 15px;border-radius:10px;background:#e9f7ef;color:#23714b;font-weight:700}
.gb-client-photo-history{margin:0 20px 20px;padding:18px;border-top:1px solid #eadbd6}.gb-client-photo-history>div:first-child{display:flex;flex-direction:column;margin-bottom:13px}.gb-client-photo-history>div:first-child small{color:#b54642;font-weight:800;letter-spacing:1.2px}.gb-client-photo-history>div:first-child strong{color:#343640;font-size:17px}.gb-client-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gb-client-photo-grid .gb-photo-preview{display:flex;flex-direction:column;align-items:stretch;width:100%;padding:0;overflow:hidden;border:1px solid #eadbd6;border-radius:12px;background:#fff;text-align:left;cursor:pointer}.gb-client-photo-grid .gb-photo-preview img{width:100%;aspect-ratio:1/1;object-fit:cover}.gb-client-photo-grid .gb-photo-preview span{display:flex;flex-direction:column;padding:9px}.gb-client-photo-grid .gb-photo-preview small{color:#777981}
@media(max-width:700px){.gb-client-profile{margin:14px 0 22px}.gb-client-profile>summary{padding:15px;gap:11px}.gb-client-profile>summary strong{font-size:17px}.gb-client-avatar{width:44px;height:44px}.gb-client-profile form{padding:15px}.gb-client-profile-photo{align-items:flex-start}.gb-client-avatar.is-editor{width:74px;height:74px}.gb-client-profile-fields{grid-template-columns:1fr}.gb-client-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gb-client-summary-main{gap:8px}.gb-client-avatar.is-list{width:40px;height:40px;font-size:16px}}

/* 0.24.8 | Cabecera común para el área de clientas y la gestión */
.gb-public>.gb-client-unified-brand{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    gap:2px 18px;
    width:100%;
    min-height:0;
    margin:0 0 18px;
    padding:15px 20px;
    align-items:center;
    box-sizing:border-box;
    border:1px solid #ead8d1;
    border-radius:18px;
    background:linear-gradient(110deg,#fffdfc 0%,#fff4ef 100%);
    box-shadow:none;
    text-align:left;
}
.gb-public>.gb-client-unified-brand .gb-brand-logo{
    grid-column:1;
    grid-row:1;
    display:block;
    width:100%;
    max-width:300px;
    height:auto;
    margin:0;
    object-fit:contain;
    object-position:left center;
}
.gb-public>.gb-client-unified-brand p{
    grid-column:1;
    grid-row:2;
    margin:10px 0 0;
    color:#4c4b52;
    font-size:17px;
    font-weight:650;
    line-height:1.3;
}
.gb-public>.gb-client-unified-brand .gb-client-header-logout{
    grid-column:2;
    grid-row:1/3;
    display:inline-flex;
    min-height:42px;
    margin:0;
    padding:10px 16px;
    align-items:center;
    justify-content:center;
    align-self:center;
    box-sizing:border-box;
    border:0;
    border-radius:10px;
    background:linear-gradient(135deg,#c74742,#ec5b25);
    color:#fff;
    font-size:12px;
    font-weight:800;
    line-height:1;
    text-decoration:none;
    white-space:nowrap;
    box-shadow:0 7px 16px rgba(194,65,67,.18);
}
@media(max-width:782px){
    .gb-public>.gb-client-unified-brand{
        gap:1px 8px;
        margin-bottom:14px;
        padding:10px 12px;
        border-radius:14px;
    }
    .gb-public>.gb-client-unified-brand .gb-brand-logo{max-width:220px}
    .gb-public>.gb-client-unified-brand p{margin-top:7px;font-size:14px}
    .gb-public>.gb-client-unified-brand .gb-client-header-logout{
        min-height:38px;
        padding:9px 10px;
        font-size:9px;
    }
}

/* Entradilla compacta del área de clientas */
.gb-client-entry {
    display: grid;
    grid-template-columns: minmax(220px, 1.25fr) repeat(2, minmax(170px, 1fr));
    gap: 12px;
    margin: 0 0 20px;
}
.gb-client-entry a {
    display: flex;
    min-width: 0;
    min-height: 74px;
    padding: 13px 16px;
    justify-content: center;
    flex-direction: column;
    box-sizing: border-box;
    border-radius: 14px;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.gb-client-entry a:hover {
    transform: translateY(-1px);
}
.gb-client-entry a span {
    margin-bottom: 4px;
    font-size: 9px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .12em;
}
.gb-client-entry a strong {
    overflow: hidden;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.18;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.gb-client-entry a small {
    overflow: hidden;
    margin-top: 3px;
    font-size: 11px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.gb-client-entry-primary {
    border: 1px solid #9a8135;
    background: #9a8135;
    color: #fff;
    box-shadow: 0 8px 20px rgba(123, 99, 35, .16);
}
.gb-client-entry-primary span,
.gb-client-entry-primary strong {
    color: #fff;
}
.gb-client-entry-pill {
    border: 1px solid #e2d8c3;
    background: #fffdf8;
    color: #34353d;
}
.gb-client-entry-pill:hover {
    border-color: #b49b5b;
    box-shadow: 0 7px 18px rgba(87, 69, 28, .08);
}
.gb-client-entry-pill span {
    color: #8d762e;
}
.gb-client-entry-pill strong {
    color: #34353d;
}
.gb-client-entry-pill small {
    color: #707177;
}
.gb-client-entry-secondary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 24px;
}
#gb-booking-start,
#gb-month-appointments {
    scroll-margin-top: 110px;
}
@media(max-width:720px) {
    .gb-client-entry {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        margin-bottom: 15px;
    }
    .gb-client-entry-primary {
        grid-column: 1/-1;
        min-height: 58px;
        align-items: center;
        text-align: center;
    }
    .gb-client-entry-pill {
        min-height: 66px;
        padding: 10px 12px;
    }
    .gb-client-entry a span {
        font-size: 8px;
    }
    .gb-client-entry a strong {
        font-size: 13px;
    }
    .gb-client-entry a small {
        font-size: 9.5px;
    }
}

body.gradobeauty-app-page {
    color: var(--gb-charcoal);
    background: linear-gradient(145deg, #f8f6f4 0%, #fff7f3 48%, #f6f4f2 100%);
}

.gb-kicker,
.gb-wrap .gb-kicker {
    color: var(--gb-primary);
}

.gb-hero,
.gb-heading + .gb-panel:first-of-type {
    border-color: #efd8d1;
}

.gb-hero {
    background: linear-gradient(112deg, #fff 0%, #fff5f1 62%, #fde9e1 100%);
}

.gb-admin-brand {
    display: grid;
    justify-items: center;
    gap: 12px;
    text-align: center;
}

.gb-admin-brand .gb-brand-logo {
    max-width: 430px;
}

.gb-admin-brand p {
    margin: 0;
}

.gb-admin-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.gb-admin-actions h2 {
    margin: 5px 0 7px;
}

.gb-admin-actions p {
    margin: 0;
    color: #686a72;
}

.gb-owner-shell.is-login .gb-brand-logo {
    max-width: 390px;
    margin: 0 auto;
}

.gb-owner-shell.is-login .gb-owner-brand p {
    color: #686a72;
}

.gb-owner-shell.is-login {
    border-color: #eadbd6;
    box-shadow: 0 18px 48px rgba(132, 48, 39, .08);
}

.gb-owner-license {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 10px;
    padding: 10px 14px;
    border: 1px solid #cdebdc;
    border-radius: 10px;
    background: #f1fbf6;
    color: #26734f;
    font-size: 13px;
    font-weight: 750;
}

.gb-owner-license i {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #2eb67d;
    box-shadow: 0 0 0 4px rgba(46, 182, 125, .12);
}

.gb-owner-welcome small {
    margin-top: 2px;
    color: #777981;
    font-size: 12px;
}

.gb-verified {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    place-items: center;
    width: 20px;
    height: 20px;
    margin-left: 6px;
    border: 1px solid rgba(255, 255, 255, .82);
    border-radius: 6px;
    background: var(--gb-brand-gradient);
    color: #fff;
    font-style: normal;
    vertical-align: -3px;
    box-shadow: 0 2px 7px rgba(194, 65, 67, .18), inset 0 0 0 1px rgba(111, 34, 36, .08);
}

.gb-verified svg {
    display: block;
    width: 14px;
    height: 14px;
}

.gb-verified path {
    fill: none;
    stroke: #fff;
    stroke-width: 2.25;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gb-owner-shell.is-dashboard .gb-owner-welcome a,
.gb-owner-logout {
    color: var(--gb-primary);
}

.gb-app-menu {
    border-color: #eadbd6;
}

.gb-app-menu a:hover {
    background: #fff3ee;
    color: var(--gb-primary);
}

.gb-app-menu a.is-active {
    background: var(--gb-brand-gradient);
    color: #fff;
    box-shadow: 0 5px 14px rgba(194, 65, 67, .18);
}

.gb-app-menu-toggle {
    border-color: #ead5cf;
    color: var(--gb-charcoal);
}

.gb-app-menu-toggle i,
.gb-app-menu-toggle i::before,
.gb-app-menu-toggle i::after {
    background: var(--gb-primary);
}

.gb-owner-shell.is-dashboard .gb-owner-stats strong,
.gb-card strong {
    color: var(--gb-primary);
}

.gb-owner-shell.is-dashboard .gb-owner-grid a {
    border-color: #eaded9;
    background: #fffaf8;
}

.gb-owner-shell.is-dashboard .gb-owner-grid a:hover {
    border-color: var(--gb-secondary);
    background: #fff3ee;
    box-shadow: 0 7px 18px rgba(194, 65, 67, .08);
}

.gb-owner-login {
    border-color: #ecd9d3;
    background: #fff9f7;
}

.gb-owner-login input:not([type="checkbox"]):focus,
.gb-owner-workspace input:not([type="checkbox"]):not([type="radio"]):focus,
.gb-owner-workspace select:focus,
.gb-owner-workspace textarea:focus,
.gb-client-access .gb-auth-card input:focus {
    border-color: var(--gb-secondary);
    outline: 3px solid rgba(233, 87, 33, .12);
}

.gb-owner-login button,
.gb-public button,
.gb-preview-button,
.gb-client-access .gb-auth-card button,
.gb-owner-workspace .button-primary,
.gb-owner-workspace button.button-primary {
    border-color: transparent;
    background: var(--gb-brand-gradient);
    color: #fff;
    box-shadow: 0 6px 16px rgba(194, 65, 67, .17);
}

.gb-owner-login button:hover,
.gb-public button:hover,
.gb-preview-button:hover,
.gb-client-access .gb-auth-card button:hover,
.gb-owner-workspace .button-primary:hover,
.gb-owner-workspace button.button-primary:hover {
    background: linear-gradient(135deg, #ae383a 0%, #d94c19 100%);
}

.gb-owner-workspace .button,
.gb-owner-workspace button.button {
    border-color: #e4c8c0;
    color: var(--gb-primary);
}

.gb-owner-workspace .button:hover,
.gb-owner-workspace button.button:hover {
    border-color: var(--gb-secondary);
    background: #fff4ef;
    color: #a93436;
}

.gb-wrap .button-primary,
.gb-wrap .button-primary:hover,
.gb-owner-workspace .button.button-primary,
.gb-owner-workspace button.button.button-primary,
.gb-owner-workspace .button.button-primary:hover,
.gb-owner-workspace button.button.button-primary:hover {
    border-color: transparent;
    background: var(--gb-brand-gradient);
    color: #fff;
    text-shadow: none;
}

.gb-wrap .button:not(.button-primary) {
    border-color: #e4c8c0;
    background: #fff;
    color: var(--gb-primary);
}

.gb-wrap .button:not(.button-primary):hover {
    border-color: var(--gb-secondary);
    background: #fff4ef;
    color: #a93436;
}

.gb-owner-workspace .gb-danger {
    border-color: #e2b8b9;
    color: #a9363b;
}

.gb-owner-workspace .gb-heading h1,
.gb-owner-workspace .gb-panel h2,
.gb-owner-workspace .gb-service > div:first-child strong,
.gb-owner-workspace .gb-settings > h2,
.gb-owner-workspace .gb-settings .gb-section-heading h2 {
    color: var(--gb-charcoal);
}

.gb-owner-workspace .gb-panel,
.gb-owner-workspace .gb-card,
.gb-owner-workspace .gb-service {
    border-color: #eaded9;
}

.gb-owner-workspace .gb-settings > h2,
.gb-owner-workspace .gb-settings .gb-section-heading h2 {
    border-bottom-color: #f0dcd6;
}

.gb-owner-workspace .gb-day:hover:not(.is-empty) {
    border-color: var(--gb-secondary);
    background: #fff3ee;
    box-shadow: 0 5px 14px rgba(194, 65, 67, .09);
}

.gb-owner-workspace .gb-day.is-today {
    border-color: var(--gb-primary);
    box-shadow: inset 0 0 0 1px var(--gb-primary);
}

.gb-owner-workspace .gb-day.is-selected,
.gb-close-day input:checked + span {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
    color: #fff;
}

.gb-year-arrow:hover,
.gb-close-day span:hover {
    border-color: var(--gb-secondary);
    background: #fff3ee;
    color: var(--gb-primary);
}

.gb-year-arrow {
    border-color: #e7cbc3;
    color: var(--gb-primary);
}

.gb-admin-weekdays span,
.gb-closure-legend,
.gb-year-heading .gb-kicker {
    color: var(--gb-primary);
}

.gb-closure-legend i.is-closed {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
}

.gb-closure-save-state {
    color: var(--gb-primary);
}

.gb-client-access,
.gb-public {
    border-color: #eadbd6;
    background: #fff;
    box-shadow: 0 18px 48px rgba(132, 48, 39, .08);
}

.gb-public-brand {
    display: grid;
    justify-items: center;
    gap: 10px;
    margin: 0 auto 24px;
    text-align: center;
}

.gb-public-brand img {
    display: block;
    width: auto;
    max-width: min(430px, 92%);
    height: auto;
}

.gb-public-brand span {
    color: var(--gb-primary);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .12em;
}

.gb-client-access .gb-auth-tabs {
    border-color: #ead8d2;
    background: #fff6f2;
}

.gb-client-access .gb-tab.is-active,
.gb-tab.is-active {
    background: var(--gb-brand-gradient);
    color: #fff;
    box-shadow: 0 5px 14px rgba(194, 65, 67, .17);
}

.gb-client-access .gb-auth-card {
    border-color: #eadbd6;
}

.gb-notice,
.gb-client-access .gb-notice {
    border-color: #f0cec4;
    background: #fff1ec;
    color: #8e3739;
}

.gb-pill {
    background: #fff0ea;
    color: var(--gb-primary);
}

.gb-public .gb-booking-success {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    box-sizing: border-box;
    width: calc(100% - 48px);
    margin: 20px 24px 38px;
    padding: 24px 26px;
    border: 1px solid #f0d6cd;
    border-radius: 18px;
    background: linear-gradient(135deg, #fff8f5 0%, #fff0e9 100%);
    box-shadow: 0 12px 30px rgba(170, 78, 55, .08);
}

.gb-public .gb-booking-success-icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: var(--gb-brand-gradient);
    box-shadow: 0 7px 16px rgba(194, 65, 67, .18);
}

.gb-public .gb-booking-success-icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #fff;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gb-public .gb-booking-success-copy > span {
    display: block;
    margin: 1px 0 7px;
    color: var(--gb-primary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .16em;
}

.gb-public .gb-booking-success h2 {
    margin: 0 0 9px;
    color: #34383a;
    font-size: 25px;
    font-weight: 760;
    line-height: 1.15;
}

.gb-public .gb-booking-success p {
    margin: 0;
    color: #5f6567;
    font-size: 15px;
    line-height: 1.6;
}

.gb-public .gb-booking-success small {
    display: block;
    margin-top: 10px;
    color: #9a4b43;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

@media (max-width: 700px) {
    .gb-public .gb-booking-success {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 13px;
        width: 100%;
        margin: 16px 0 28px;
        padding: 20px;
        border-radius: 15px;
    }

    .gb-public .gb-booking-success-icon {
        width: 40px;
        height: 40px;
        border-radius: 11px;
    }

    .gb-public .gb-booking-success h2 {
        font-size: 21px;
    }
}

/* Cierre de sesión visible en la cabecera del área de clienta */
.gb-client-identity {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
}

.gb-client-identity > div {
    min-width: 0;
}

.gb-client-header-logout {
    display: inline-flex;
    min-height: 42px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding: 0 17px;
    border: 1px solid #dccdc6;
    border-radius: 11px;
    background: #fffaf7;
    color: #a33f40;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none;
    transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.gb-client-header-logout:hover,
.gb-client-header-logout:focus-visible {
    border-color: #c24143;
    background: #c24143;
    color: #fff;
}

@media (max-width: 620px) {
    .gb-client-identity {
        align-items: flex-start;
        flex-direction: column;
        gap: 16px;
    }

    .gb-client-header-logout {
        align-self: stretch;
    }
}

.gb-service-card input:checked + span {
    border-color: var(--gb-secondary);
    background: #fff5f1;
    box-shadow: 0 0 0 2px rgba(233, 87, 33, .12), 0 8px 20px rgba(194, 65, 67, .08);
}

.gb-service-card.is-deposit span,
.gb-service-card.is-deposit input:checked + span {
    border-color: #ae383a;
    background: var(--gb-brand-gradient);
}

.gb-service-card.is-deposit strong,
.gb-service-card.is-deposit small {
    color: #fff;
}

.gb-service-card.is-deposit span::after {
    background: #fff;
    color: var(--gb-primary);
}

.gb-client-days button:hover:not(:disabled) {
    border-color: var(--gb-secondary);
    background: #fff4ef;
}

.gb-client-calendar-nav button {
    border-color: #e8d1ca;
    background: #fff3ee;
    color: var(--gb-primary);
}

.gb-client-week span {
    color: var(--gb-primary);
}

.gb-client-days button.is-selected,
.gb-slot input:checked + span {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
    color: #fff;
}

/* El selector de horas comparte exactamente el lenguaje visual del calendario. */
.gb-time-picker {
    margin: 28px 0;
}

.gb-time-picker h2 {
    margin: 0 0 16px;
    color: #363842;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.2;
}

.gb-time-picker-panel {
    padding: 26px;
    border: 1px solid #e7e0d2;
    border-radius: 20px;
    background: #faf8f3;
}

.gb-time-picker .gb-slots {
    gap: 12px;
}

.gb-time-picker .gb-slot span,
.gb-time-picker .gb-slot.is-busy {
    display: grid;
    place-items: center;
    min-height: 72px;
    box-sizing: border-box;
    padding: 12px 8px;
    border: 1px solid #e2d9c8;
    border-radius: 14px;
    background: #fff;
    color: #403a30;
    box-shadow: 0 4px 12px rgba(44, 39, 29, .035);
    font-size: 20px;
    font-weight: 750;
    line-height: 1;
    transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.gb-time-picker .gb-slot:hover span {
    border-color: var(--gb-secondary);
    background: #fff4ef;
    color: var(--gb-primary);
    transform: translateY(-1px);
}

.gb-time-picker .gb-slot input:checked + span {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
    color: #fff;
    box-shadow: 0 7px 18px rgba(194, 65, 67, .2);
    transform: none;
}

.gb-time-picker .gb-slot.is-busy {
    border-color: #e4e1da;
    background: #efede8;
    color: #aaa59b;
    box-shadow: none;
    text-decoration-color: #aaa59b;
    text-decoration-thickness: 1.5px;
}

@media (max-width: 800px) {
    .gb-time-picker h2 {
        font-size: 23px;
    }

    .gb-time-picker-panel {
        padding: 15px;
    }

    .gb-time-picker .gb-slot span,
    .gb-time-picker .gb-slot.is-busy {
        min-height: 58px;
        font-size: 17px;
    }
}

/* Plantillas de email: misma estructura operativa de GradoFit, identidad GradoBeauty. */
.gb-test-environment {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
    gap: 24px;
    align-items: end;
    margin: 26px 0;
    padding: 24px;
    border: 1px solid #eadbd6;
    border-radius: 16px;
    background: linear-gradient(135deg, #fffaf8 0%, #fff1eb 100%);
}

.gb-test-environment h2 {
    margin: 5px 0 8px;
    font-size: 22px;
    line-height: 1.2;
}

.gb-test-environment p {
    max-width: 650px;
    margin: 0;
    color: #666a72;
}

.gb-test-environment label {
    display: grid;
    gap: 8px;
    margin: 0;
    font-weight: 700;
}

.gb-test-environment input {
    width: 100%;
    min-height: 48px;
    border-color: #dccbc5;
    background: #fff;
}

.gb-test-environment small {
    color: #777b82;
    font-weight: 400;
}

.gb-test-client-settings {
    border-color: #eadbd6;
    background: linear-gradient(135deg, #fff 0%, #fff7f3 100%);
}

.gb-test-badge {
    display: inline-flex;
    align-items: center;
    margin-left: 7px;
    padding: 3px 7px;
    border: 1px solid #e4aaa0;
    border-radius: 6px;
    background: #fff1ed;
    color: var(--gb-primary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    vertical-align: middle;
}

.gb-add-client-panel,
.gb-client-directory,
.gb-rejected-panel {
    margin-top: 18px;
}

.gb-add-client-panel {
    padding: 0;
    overflow: hidden;
}

.gb-add-client-panel > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 86px;
    padding: 20px 24px;
    cursor: pointer;
    list-style: none;
}

.gb-add-client-panel > summary::-webkit-details-marker {
    display: none;
}

.gb-add-client-panel > summary span,
.gb-add-client-panel > summary small,
.gb-add-client-panel > summary strong,
.gb-add-client-panel > summary em {
    display: block;
}

.gb-add-client-panel > summary small {
    margin-bottom: 5px;
    color: var(--gb-primary);
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .12em;
}

.gb-add-client-panel > summary strong {
    color: #30323a;
    font-size: 21px;
}

.gb-add-client-panel > summary em {
    margin-top: 5px;
    color: #747780;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
}

.gb-add-client-panel > summary > b {
    color: var(--gb-primary);
    font-size: 24px;
    transition: transform .2s ease;
}

.gb-add-client-panel[open] > summary > b {
    transform: rotate(180deg);
}

.gb-add-client-form {
    padding: 0 24px 24px;
    border-top: 1px solid #eee4e0;
}

.gb-add-client-form .gb-fields {
    margin-top: 22px;
}

.gb-client-directory-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
    gap: 24px;
    align-items: end;
    margin-bottom: 18px;
}

.gb-client-directory-head h2,
.gb-client-directory-head p {
    margin-top: 0;
}

.gb-client-directory-head label {
    display: grid;
    gap: 7px;
    font-weight: 700;
}

.gb-client-directory-head input {
    width: 100%;
    min-height: 46px;
}

.gb-client-access-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: max-content;
    gap: 10px;
    max-height: 820px;
    padding-right: 8px;
    align-content: start;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-color: var(--gb-primary) #f4ebe7;
    scrollbar-width: thin;
}

.gb-client-record {
    display: block;
    width: 100%;
    height: auto;
    min-height: 0;
    flex: 0 0 auto;
    overflow: hidden;
    box-sizing: border-box;
    border: 1px solid #e7ded9;
    border-radius: 13px;
    background: #fff;
}

.gb-client-record[hidden] {
    display: none;
}

.gb-client-record summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    min-height: 72px;
    height: auto;
    padding: 14px 16px;
    cursor: pointer;
    list-style: none;
    box-sizing: border-box;
}

.gb-client-record summary::-webkit-details-marker {
    display: none;
}

.gb-client-record summary > span:first-child strong,
.gb-client-record summary > span:first-child small {
    display: block;
}

.gb-client-record summary > span:first-child small {
    margin-top: 5px;
    color: #6e7178;
    font-size: 13px;
}

.gb-client-summary-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.gb-client-summary-actions b {
    color: var(--gb-primary);
    font-size: 13px;
}

.gb-client-edit-form {
    padding: 20px;
    border-top: 1px solid #eee4e0;
    background: #fff9f6;
}

.gb-client-no-results {
    padding: 26px;
    border-radius: 12px;
    background: #faf6f3;
    color: #70737a;
    text-align: center;
}

@media (max-width: 800px) {
    .gb-client-directory-head {
        grid-template-columns: 1fr;
    }

    .gb-client-record summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .gb-add-client-panel > summary {
        min-height: 76px;
        padding: 17px 18px;
    }

    .gb-add-client-form {
        padding: 0 18px 20px;
    }
}

.gb-email-templates {
    max-width: 1460px;
}

.gb-email-safe {
    margin: 0 0 18px;
    padding: 16px 18px;
    border-left: 4px solid var(--gb-primary);
    background: #fff;
    box-shadow: 0 5px 18px rgba(54, 56, 66, .04);
}

.gb-email-safe p {
    margin: 0 0 7px;
    color: #454850;
    font-size: 14px;
}

.gb-email-safe p:last-child {
    margin-bottom: 0;
}

.gb-email-help {
    margin: 0 0 17px;
    color: #666a72;
    font-size: 14px;
}

.gb-email-accordion-list {
    display: grid;
    gap: 12px;
}

.gb-email-template {
    overflow: hidden;
    border: 1px solid #e6ddd8;
    border-radius: 12px;
    background: #fff;
}

.gb-email-template[open] {
    border-color: #e2bdb5;
    box-shadow: 0 12px 30px rgba(111, 43, 35, .07);
}

.gb-email-template summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 62px;
    box-sizing: border-box;
    padding: 15px 18px;
    color: #3e4249;
    cursor: pointer;
    list-style: none;
    font-size: 16px;
    font-weight: 750;
}

.gb-email-template summary::-webkit-details-marker {
    display: none;
}

.gb-email-template summary span::before {
    content: "▶";
    display: inline-block;
    margin-right: 8px;
    color: var(--gb-primary);
    font-size: 11px;
    transition: transform .18s ease;
}

.gb-email-template[open] summary span::before {
    transform: rotate(90deg);
}

.gb-email-template summary i {
    color: #9a6a61;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
}

.gb-email-template-body {
    display: grid;
    grid-template-columns: minmax(360px, .9fr) minmax(420px, 1.1fr);
    gap: 24px;
    padding: 24px;
    border-top: 1px solid #eee5e1;
    background: #fffaf8;
}

.gb-email-fields {
    display: grid;
    align-content: start;
    gap: 14px;
}

.gb-email-fields label:not(.gb-check) {
    display: grid;
    gap: 6px;
    color: #43464d;
    font-size: 13px;
    font-weight: 750;
}

.gb-email-fields input:not([type="checkbox"]),
.gb-email-fields textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 11px 12px;
    border: 1px solid #ded5d0;
    border-radius: 9px;
    background: #fff;
    color: #363842;
    font-size: 14px;
}

.gb-email-fields small,
.gb-required-template {
    margin: 0;
    color: #73767d;
    font-size: 12px;
}

.gb-email-fields code {
    color: var(--gb-primary);
}

.gb-email-preview {
    align-self: start;
    overflow: hidden;
    border: 1px solid #eaded9;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(86, 49, 42, .08);
}

.gb-email-preview-head {
    padding: 24px;
    background: linear-gradient(135deg, #fff 0%, #fff2ec 100%);
}

.gb-email-preview-head img {
    display: block;
    width: 250px;
    max-width: 78%;
    height: auto;
}

.gb-email-preview-content {
    padding: 26px;
}

.gb-email-preview-content > span {
    color: var(--gb-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.gb-email-preview-content h3 {
    margin: 7px 0 14px;
    color: #363842;
    font-size: 25px;
}

.gb-email-preview-content p {
    color: #62656d;
    font-size: 15px;
    line-height: 1.6;
}

.gb-email-preview-content > strong {
    display: block;
    margin: 20px 0;
    padding: 15px;
    border-radius: 10px;
    background: var(--gb-brand-gradient);
    color: #fff;
    text-align: center;
}

.gb-email-preview-content > small {
    display: block;
    margin-top: 22px;
    color: #8a8c92;
}

.gb-email-preview.gb-email-preview-vip {
    overflow: hidden;
    border-color: #d8c89f;
    background: #fff;
    box-shadow: 0 14px 34px rgba(95, 75, 31, .11);
}

.gb-email-preview-vip-brand {
    display: grid;
    min-height: 125px;
    padding: 24px 40px;
    place-items: center;
    background: linear-gradient(135deg, #786120, #b6a25e);
}

.gb-email-preview-vip-brand img {
    display: block;
    width: min(340px, 82%);
    max-height: 100px;
    object-fit: contain;
}

.gb-email-preview-vip-photo {
    display: block;
    width: 100%;
    aspect-ratio: 2.5 / 1;
    object-fit: cover;
}

.gb-email-preview-vip-fallback {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 34px 24px;
    background: linear-gradient(135deg, #77602c, #b69a56);
    color: #fff7df;
    text-align: center;
}

.gb-email-preview-vip-fallback strong {
    font-family: Georgia, serif;
    font-size: 27px;
    font-weight: 400;
}

.gb-email-preview-vip-fallback span {
    margin-top: 8px;
    color: #f4ead0;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .18em;
}

.gb-email-preview-vip-content {
    padding: 30px;
}

.gb-email-preview-vip-content > span,
.gb-email-preview-vip-content > small {
    color: #927635;
    font-size: 10px;
    font-style: normal;
    font-weight: 750;
    letter-spacing: .14em;
}

.gb-email-preview-vip-content h3,
.gb-email-preview-vip-content h4 {
    margin: 8px 0 16px;
    color: #303238;
    font-family: Georgia, serif;
    font-weight: 400;
    line-height: 1.15;
}

.gb-email-preview-vip-content h3 { font-size: 28px; }
.gb-email-preview-vip-content h4 { font-size: 23px; }

.gb-email-preview-vip-content p {
    margin: 0 0 17px;
    color: #62636a;
    font-size: 15px;
    line-height: 1.65;
}

.gb-email-preview-vip-content hr {
    height: 1px;
    margin: 24px 0;
    border: 0;
    background: #e8dec4;
}

.gb-email-preview-vip-date {
    display: block;
    margin: 22px 0;
    padding: 17px;
    border-radius: 12px;
    background: #927635;
    color: #fff;
    font-size: 12px;
    text-align: center;
    letter-spacing: .06em;
}

.gb-email-preview-vip-content em {
    display: block;
    margin-top: 22px;
    color: #927635;
    font-family: Georgia, serif;
    font-size: 17px;
    line-height: 1.4;
}

/* Área privada de la novia */
.gb-client-wedding-timeline { margin-top: 28px; padding-top: 24px; border-top: 1px solid #ded4b5; }
.gb-client-wedding-timeline > h4 { margin: 0 0 14px; color: #7f6a2a; font-size: 13px; letter-spacing: .13em; text-transform: uppercase; }
.gb-client-wedding-step { display: grid; grid-template-columns: 38px 1fr; gap: 13px; margin-top: 10px; padding: 16px; border: 1px solid #e4dbc1; border-radius: 16px; background: #fffdf8; }
.gb-client-wedding-step > b { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; background: #9a8135; color: #fff; }
.gb-client-wedding-step > div { display: grid; min-width: 0; gap: 5px; }
.gb-client-wedding-step span { color: #3c3a35; font-weight: 750; }
.gb-client-wedding-step p { margin: 0; color: #777166; font-size: 14px; }
.gb-client-wedding-step em { color: #8f772c; font-size: 13px; font-style: normal; font-weight: 700; }
.gb-client-vip-event em { display: block; margin-top: 10px; color: #fff; font-size: 14px; font-style: normal; font-weight: 750; }

@media (max-width: 620px) {
    .gb-email-preview-vip-brand { min-height: 96px; padding: 18px 22px; }
}

.gb-save-templates {
    margin-top: 20px;
}

@media (max-width: 900px) {
    .gb-test-environment {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .gb-email-template-body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .gb-email-template summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .gb-email-template-body {
        padding: 16px;
    }
}

.gb-special-section {
    border-top-color: #efd9d2;
    background: #fff7f4;
}

.gb-hair-photo {
    border-color: #e9b9ab;
    background: #fff7f4;
}

.gb-hours-save {
    border-color: #ead5cf;
    box-shadow: 0 10px 28px rgba(132, 48, 39, .09);
}

/* Días no trabajados reutiliza literalmente el calendario de Reservas. */
.gb-owner-workspace .gb-closure-calendar {
    margin-top: 22px;
}

.gb-owner-workspace .gb-closure-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid #eee3dc;
}

.gb-owner-workspace .gb-closure-heading h2 {
    margin: 5px 0 5px;
    color: var(--gb-charcoal);
    font-size: 27px;
}

.gb-owner-workspace .gb-closure-heading p {
    margin: 0;
    color: #6d7076;
}

.gb-owner-workspace .gb-closure-heading > strong {
    flex: 0 0 auto;
    padding: 9px 13px;
    border-radius: 999px;
    background: #fff0eb;
    color: var(--gb-primary);
    font-size: 12px;
}

.gb-owner-workspace .gb-closure-legend {
    display: flex;
    justify-content: flex-start;
    gap: 18px;
    margin: 0 0 18px;
    color: #62676b;
    font-size: 13px;
}

.gb-owner-workspace .gb-closure-legend span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.gb-owner-workspace .gb-closure-legend i {
    width: 16px;
    height: 16px;
    box-sizing: border-box;
    border: 1px solid #e1d9d3;
    border-radius: 5px;
    background: #fff;
}

.gb-owner-workspace .gb-closure-legend i.is-closed,
.gb-owner-workspace .gb-closure-grid .gb-close-day.is-selected {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
    color: #fff;
}

.gb-owner-workspace .gb-closure-grid .gb-close-day.is-selected strong {
    color: #fff;
}

.gb-owner-workspace .gb-closure-calendar .gb-weekdays span {
    color: var(--gb-primary);
}

.gb-owner-workspace .gb-closure-calendar .gb-year-arrow {
    width: 100%;
    height: auto;
    color: var(--gb-primary);
    font-size: 13px;
    line-height: 1.2;
}

.gb-owner-workspace .gb-closure-grid .gb-close-day {
    position: relative;
    display: block;
    box-sizing: border-box;
    cursor: pointer;
}

.gb-owner-workspace .gb-closure-grid .gb-close-day input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.gb-owner-workspace .gb-closure-grid .gb-close-day:has(input:focus-visible) {
    outline: 2px solid var(--gb-secondary);
    outline-offset: 2px;
}

.gb-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

#toplevel_page_gradobeauty.current .wp-menu-name,
#toplevel_page_gradobeauty.wp-has-current-submenu .wp-menu-name {
    color: #fff;
}

#toplevel_page_gradobeauty.current > a,
#toplevel_page_gradobeauty.wp-has-current-submenu > a {
    background: var(--gb-brand-gradient);
}

#toplevel_page_gradobeauty .wp-menu-image img {
    width: 24px;
    height: 24px;
    margin: 0;
    padding: 4px 0 0;
    opacity: 1;
}

@media (max-width: 700px) {
    .gb-brand-logo {
        max-width: 280px;
    }

    .gb-owner-shell.is-login .gb-brand-logo {
        max-width: 300px;
    }

    .gb-public-brand img {
        max-width: 300px;
    }

    .gb-admin-actions {
        align-items: stretch;
        flex-direction: column;
    }

}

/* Experiencia de clienta: una sola escala visual y el calendario oficial. */
.gb-public {
    max-width: 1120px;
}

.gb-public .gb-calendar-head h3 {
    color: var(--gb-charcoal);
    font-size: 30px;
    font-weight: 720;
    letter-spacing: -.025em;
}

.gb-public .gb-calendar-head p {
    color: #6c6e75;
    font-size: 16px;
}

.gb-public fieldset > legend {
    color: var(--gb-charcoal);
    font-size: 24px;
    font-weight: 760;
}

.gb-public .gb-date-picker {
    padding: 0;
    border: 0;
    background: transparent;
}

.gb-public .gb-client-calendar {
    padding: 22px;
    border: 1px solid #eaded9;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(54, 56, 66, .045);
}

.gb-public .gb-client-calendar-nav {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr) 120px;
    align-items: center;
    gap: 14px;
    margin: 0 0 14px;
    padding: 0;
    border: 0;
}

.gb-public .gb-client-calendar-nav strong {
    color: var(--gb-charcoal);
    font-size: 20px;
    font-weight: 750;
    text-align: center;
    text-transform: capitalize;
}

.gb-public .gb-client-calendar-nav button {
    width: 100%;
    min-height: 36px;
    height: auto;
    box-sizing: border-box;
    padding: 7px 12px;
    border: 1px solid #e4c8c0;
    border-radius: 8px;
    background: #fff;
    color: var(--gb-primary);
    font-size: 13px;
    font-weight: 700;
    box-shadow: none;
}

.gb-public .gb-client-calendar-nav button:hover {
    border-color: var(--gb-secondary);
    background: #fff4ef;
}

.gb-public .gb-client-week,
.gb-public .gb-client-days {
    gap: 8px;
}

.gb-public .gb-client-week span {
    padding: 8px;
    color: var(--gb-primary);
    font-size: 13px;
    font-weight: 700;
}

.gb-public .gb-client-days button {
    min-height: 62px;
    padding: 10px;
    border: 1px solid #e5e0d6;
    border-radius: 12px;
    background: #fdfcf9;
    color: var(--gb-charcoal);
    font-size: 17px;
    font-weight: 750;
    box-shadow: none;
}

.gb-public .gb-client-days button:hover:not(:disabled):not(.is-selected) {
    border-color: var(--gb-secondary);
    background: #fff3ee;
    box-shadow: 0 5px 14px rgba(194, 65, 67, .09);
}

.gb-public .gb-client-days button.is-selected {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
    color: #fff;
    box-shadow: none;
}

.gb-public .gb-client-days button.is-appointment {
    border: 2px solid var(--gb-primary);
    background: #fff3ef;
    color: var(--gb-primary);
    box-shadow: inset 0 0 0 3px rgba(194,65,67,.08);
}

.gb-public .gb-client-days button.is-appointment::after {
    content: "CITA";
    display: block;
    margin-top: 4px;
    color: var(--gb-primary);
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .12em;
}

.gb-public .gb-client-days button.is-appointment.is-selected {
    border-color: var(--gb-primary);
    background: var(--gb-brand-gradient);
    color: #fff;
}

.gb-public .gb-client-days button.is-appointment.is-selected::after { color: #fff; }

.gb-client-action-feedback { margin: 20px 0; padding: 14px 17px; border-radius: 12px; font-weight: 700; }
.gb-client-action-feedback.is-success { border: 1px solid #b9dfcc; background: #edf9f3; color: #237553; }
.gb-client-action-feedback.is-error { border: 1px solid #efc9c5; background: #fff3f1; color: #9f3d3d; }

.gb-client-monthly { margin: -4px 0 28px; border: 1px solid #e7ddd4; border-radius: 18px; background: #fff; overflow: hidden; }
.gb-client-monthly summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 18px 22px; cursor: pointer; list-style: none; }
.gb-client-monthly summary::-webkit-details-marker { display: none; }
.gb-client-monthly summary span { display: flex; gap: 3px; flex-direction: column; }
.gb-client-monthly summary strong { color: #353640; font-size: 18px; }
.gb-client-monthly summary small { color: #79777a; }
.gb-client-monthly summary b { color: #9a823a; font-size: 13px; }
.gb-client-monthly[open] summary b::after { content: " ↑"; }
.gb-client-monthly-list { border-top: 1px solid #eee5de; }
.gb-client-monthly-item { display: grid; grid-template-columns: 58px minmax(0,1fr) auto; align-items: center; gap: 16px; padding: 15px 22px; border-bottom: 1px solid #f0e9e3; }
.gb-client-monthly-item time { display: flex; width: 50px; height: 50px; border-radius: 13px; background: #faf3e2; color: #8c7434; align-items: center; justify-content: center; flex-direction: column; }
.gb-client-monthly-item time strong { font-size: 20px; line-height: 1; }
.gb-client-monthly-item time span { margin-top: 3px; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.gb-client-monthly-item > div { display: flex; gap: 4px; min-width: 0; flex-direction: column; }
.gb-client-monthly-item > div strong { color: #353640; }
.gb-client-monthly-item > div span,.gb-client-monthly-item em { color: #77747a; font-size: 13px; font-style: normal; }
.gb-client-monthly-item.is-cancelled { opacity: .58; }
.gb-client-cancel { padding: 9px 12px; border: 1px solid #d7aaa5; border-radius: 9px; color: #a94343; font-size: 12px; font-weight: 800; text-decoration: none; }
.gb-client-cancel:hover { background: #fff2ef; }
.gb-client-contact { display: inline-flex; align-items: center; justify-content: center; padding: 9px 12px; border: 1px solid #27845d; border-radius: 9px; background: #fff; color: #21734f; font-size: 12px; font-weight: 800; line-height: 1.25; text-align: center; text-decoration: none; }
.gb-client-contact:hover { background: #eef9f3; border-color: #21734f; }
.gb-client-monthly-note { margin: 0; padding: 13px 22px; background: #fcfaf8; color: #817d79; font-size: 12px; }

@media (max-width: 620px) {
    .gb-client-monthly-item { grid-template-columns: 52px minmax(0,1fr); gap: 12px; padding: 14px 16px; }
    .gb-client-monthly-item .gb-client-cancel,.gb-client-monthly-item .gb-client-contact,.gb-client-monthly-item > em { grid-column: 2; justify-self: start; }
    .gb-client-monthly summary { padding: 16px; }
    .gb-client-monthly-note { padding: 12px 16px; }
}

.gb-public .gb-client-days button:disabled {
    border-color: #e5e3df;
    background: #f0efec;
    color: #aaa8a2;
    text-decoration: line-through;
    box-shadow: none;
}

.gb-special-section {
    margin-top: 30px;
    padding: 28px;
    border: 1px solid #f0dcd6;
    border-radius: 18px;
    background: #fff8f5;
}

.gb-special-section h3 {
    margin: 6px 0 7px;
    color: var(--gb-charcoal);
    font-size: 25px;
    font-weight: 720;
}

.gb-special-section > p {
    margin: 0;
    color: #6c6e75;
    font-size: 15px;
    line-height: 1.55;
}

.gb-special-section details {
    margin-top: 18px;
}

.gb-special-section summary {
    padding: 14px 17px;
    border: 1px solid #e8d8d2;
    border-radius: 11px;
    background: #fff;
    color: var(--gb-charcoal);
    font-size: 16px;
    font-weight: 720;
}

.gb-special-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 12px;
    padding: 22px;
    border: 1px solid #eaded9;
    border-radius: 14px;
    background: #fff;
}

.gb-special-form label {
    display: grid;
    gap: 7px;
    color: var(--gb-charcoal);
    font-size: 14px;
    font-weight: 680;
}

.gb-special-form input,
.gb-special-form select,
.gb-special-form textarea {
    min-height: 46px;
    padding: 11px 13px;
    border: 1px solid #ded8d2;
    border-radius: 10px;
    background: #fff;
    color: var(--gb-charcoal);
    font-size: 15px;
}

.gb-special-form textarea {
    min-height: 110px;
    resize: vertical;
}

.gb-special-wide {
    grid-column: 1 / -1;
}

.gb-special-form button {
    justify-self: start;
    min-height: 44px;
    padding: 11px 18px;
    font-size: 14px;
}

.gb-special-intro {
    max-width: 760px;
}

.gb-special-section summary {
    display: grid;
    gap: 3px;
}

.gb-special-section summary small {
    color: #858078;
    font-size: 12px;
    font-weight: 500;
}

.gb-special-label {
    display: block;
    margin-bottom: 8px;
    color: var(--gb-charcoal);
    font-size: 14px;
    font-weight: 680;
}

.gb-event-calendar {
    overflow: hidden;
    border: 1px solid #e8ded8;
    border-radius: 14px;
    background: #fffdfa;
}

.gb-event-calendar-nav {
    display: grid;
    grid-template-columns: 130px 1fr 130px;
    align-items: center;
    gap: 12px;
    padding: 15px;
    border-bottom: 1px solid #eee4de;
}

.gb-event-calendar-nav strong {
    color: var(--gb-charcoal);
    font-size: 18px;
    text-align: center;
    text-transform: capitalize;
}

.gb-event-calendar-nav button {
    min-height: 38px;
    padding: 8px 11px;
    border: 1px solid #eadbd4;
    background: #fff;
    color: #b34642;
    font-size: 13px;
}

.gb-event-week,
.gb-event-days {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 7px;
    padding: 0 15px;
}

.gb-event-week {
    padding-top: 14px;
    color: #9b765e;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.gb-event-days {
    padding-top: 9px;
    padding-bottom: 15px;
}

.gb-event-days button {
    justify-self: stretch;
    min-width: 0;
    min-height: 48px;
    padding: 7px;
    border: 1px solid #e7e0da;
    border-radius: 10px;
    background: #fff;
    color: var(--gb-charcoal);
    font-size: 14px;
}

.gb-event-days button:hover:not(:disabled),
.gb-event-days button.is-selected {
    border-color: #c24143;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
}

.gb-event-days button:disabled {
    background: #f1efec;
    color: #aaa6a1;
    text-decoration: line-through;
}

.gb-special-calendar-wrap > small {
    display: block;
    margin-top: 8px;
    color: #817b76;
}

.gb-special-calendar-wrap > small.is-error {
    color: #b83f3f;
    font-weight: 750;
}

.gb-event-success {
    max-width: 760px;
    padding-bottom: 46px;
    text-align: center;
}

.gb-event-success > span {
    display: block;
    margin-top: 18px;
    color: #bd4742;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .15em;
}

.gb-event-success h2 {
    margin: 8px 0 14px;
    font-size: clamp(30px, 5vw, 46px);
}

.gb-event-success p {
    max-width: 610px;
    margin: 0 auto 22px;
    color: #62656c;
    font-size: 17px;
    line-height: 1.7;
}

.gb-event-success > strong {
    display: block;
    margin: 0 auto 24px;
    padding: 15px 18px;
    border-radius: 12px;
    background: #fff1eb;
    color: #ad413f;
}

.gb-event-success > a {
    color: #ad413f;
    font-weight: 750;
}

.gb-client-vip {
    margin: 28px 0;
    padding: 28px;
    border: 1px solid #dfd0aa;
    border-radius: 20px;
    background:
        radial-gradient(circle at 94% 4%, rgba(180, 155, 91, .17), transparent 28%),
        linear-gradient(135deg, #fbf5e7, #fffdf9);
}

.gb-client-vip > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    cursor: pointer;
    list-style: none;
}
.gb-client-vip > summary::-webkit-details-marker { display: none; }
.gb-client-vip > summary > span { display: grid; min-width: 0; gap: 3px; }
.gb-client-vip > summary small { color: #866d32; font-size: 10px; font-weight: 850; letter-spacing: .13em; }
.gb-client-vip > summary strong { color: #303238; font-size: 20px; line-height: 1.2; }
.gb-client-vip > summary em { overflow: hidden; color: #6a6b70; font-size: 13px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.gb-client-vip > summary > b { color: #866d32; font-size: 22px; line-height: 1; transition: transform .2s ease; }
.gb-client-vip[open] > summary > b { transform: rotate(180deg); }
.gb-client-vip-body { margin-top: 20px; }

/* La reserva cotidiana usa la identidad general; el dorado queda para bodas. */
.gb-public .gb-calendar-head { margin: 22px 0 18px; }
.gb-public .gb-calendar-head h3 { color: var(--gb-primary); font-size: 25px; }
.gb-public .gb-calendar-head p { margin-top: 4px; font-size: 14px; }
.gb-public .gb-client-identity h1 { font-size: clamp(26px, 3.2vw, 38px); line-height: 1.12; }
.gb-public .gb-time-picker .gb-empty { grid-column: 1/-1; width: 100%; padding: 24px; box-sizing: border-box; font-size: 14px; line-height: 1.45; }
#gb-booking-form { display: flex; flex-direction: column; }
#gb-booking-form .gb-service-picker { order: 1; }
#gb-booking-form #gb-deposit-info { order: 2; }
#gb-booking-form .gb-date-picker { order: 3; }
#gb-booking-form .gb-time-picker { order: 4; }
#gb-booking-form .gb-observations { order: 5; }
#gb-booking-form .gb-hair-photo { order: 6; }
#gb-booking-form .gb-legal { order: 7; }
#gb-booking-form > button,
#gb-booking-form > .gb-logout { order: 8; }
#gb-booking-form .gb-special-section { order: 20; }

.gb-client-promotions {
    padding: 18px 20px;
}
.gb-client-promotions > div:first-child > .gb-kicker,
.gb-client-promotions > div:first-child > h2,
.gb-client-promotions > div:first-child > p {
    display: inline;
    margin: 0 10px 0 0;
    vertical-align: baseline;
}
.gb-client-promotions > div:first-child > h2 { font-size: 20px; }
.gb-client-promotions > div:first-child > p { color: #666970; font-size: 13px; }
.gb-consent-details summary { min-height: 44px; box-sizing: border-box; }
.gb-consent-details summary span { display: flex; min-width: 0; align-items: center; gap: 10px; }
.gb-consent-details summary strong,
.gb-consent-details summary small { white-space: nowrap; }

.gb-client-vip-head > span,
.gb-client-vip-content > span {
    color: #866d32;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .14em;
}

.gb-client-vip-feedback {
    margin-bottom: 18px;
    padding: 13px 15px;
    border: 1px solid #d8c791;
    border-radius: 11px;
    background: #fffaf0;
    color: #735c27;
    font-weight: 750;
}

.gb-client-vip-head h2 {
    margin: 6px 0;
    color: #303238;
    font-size: 27px;
}

.gb-client-vip-head p {
    margin: 0 0 20px;
    color: #6a6b70;
}

.gb-client-vip-card {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid #dfd3b5;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(94, 74, 31, .08);
}

.gb-client-vip-card + .gb-client-vip-card {
    margin-top: 16px;
}

.gb-client-vip-event {
    display: grid;
    align-content: center;
    padding: 24px;
    background: linear-gradient(145deg, #8d7335, #c5a55a);
    color: #fff;
}

.gb-client-vip-event small {
    font-weight: 800;
    letter-spacing: .1em;
}

.gb-client-vip-event strong {
    margin: 8px 0;
    color: #fff;
    font-size: 24px;
}

.gb-client-vip-content {
    padding: 25px;
}

.gb-client-vip-content h3 {
    margin: 8px 0 4px;
    color: #303238;
    font-size: 22px;
    text-transform: capitalize;
}

.gb-client-vip-content > strong {
    color: #947632;
    font-size: 21px;
}

.gb-client-vip-content p {
    color: #676970;
    line-height: 1.6;
}

.gb-client-vip-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.gb-client-vip-actions form button,
.gb-client-vip-actions details > summary {
    min-height: 44px;
    box-sizing: border-box;
    padding: 12px 17px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #8d7335, #b99a50);
    color: #fff;
    font-size: 14px;
    font-weight: 750;
    list-style: none;
    cursor: pointer;
}

.gb-client-vip-actions details > summary {
    border: 1px solid #c9b477;
    background: #fff;
    color: #80672f;
}

.gb-client-vip-actions details form {
    display: grid;
    gap: 10px;
    min-width: min(420px, 75vw);
    margin-top: 10px;
    padding: 16px;
    border: 1px solid #e0d3b2;
    border-radius: 12px;
    background: #fffdf8;
}

.gb-client-vip-actions details label {
    display: grid;
    gap: 5px;
    color: #6c5a31;
    font-size: 13px;
    font-weight: 700;
}

.gb-client-vip-actions input,
.gb-client-vip-actions textarea {
    padding: 10px;
    border: 1px solid #dacba4;
    border-radius: 8px;
}

body .gb-public .gb-client-vip-actions form button,
body .gb-public .gb-client-wedding-step .gb-client-vip-actions form button {
    border-color: #8d7335;
    background: #9a8135;
    background-image: linear-gradient(135deg, #806727, #b69a50);
    color: #fff;
    box-shadow: 0 8px 18px rgba(128, 103, 47, .17);
}

body .gb-public .gb-client-vip-actions details > summary {
    border: 1px solid #c9b477;
    background: #fffdf8;
    background-image: none;
    color: #80672f;
}

.gb-client-vip-whatsapp {
    display: inline-block;
    margin-top: 18px;
    color: #80672f;
    font-weight: 750;
}

@media (max-width: 640px) {
    .gb-event-calendar-nav {
        grid-template-columns: 1fr 1fr;
    }

    .gb-event-calendar-nav strong {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .gb-event-calendar-nav button {
        grid-row: 2;
    }

    .gb-event-week,
    .gb-event-days {
        gap: 4px;
        padding-right: 9px;
        padding-left: 9px;
    }

    .gb-event-days button {
        min-height: 42px;
    }

    .gb-client-vip {
        padding: 18px;
    }

    .gb-client-vip-card {
        grid-template-columns: 1fr;
    }
}

.gb-observations {
    gap: 8px;
    color: var(--gb-charcoal);
    font-size: 16px;
    font-weight: 700;
}

.gb-observations textarea {
    min-height: 118px;
    padding: 14px;
    border: 1px solid #ded8d2;
    border-radius: 11px;
    background: #fff;
    color: var(--gb-charcoal);
    font-size: 15px;
}

.gb-hair-photo {
    display: grid;
    gap: 9px;
    padding: 20px;
    border: 1px dashed #e0aaa0;
    border-radius: 14px;
    background: #fff8f5;
    cursor: pointer;
}

.gb-photo-title {
    color: var(--gb-charcoal);
    font-size: 18px;
    font-weight: 720;
}

.gb-photo-copy,
.gb-photo-name {
    color: #6c6e75;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

.gb-photo-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.gb-photo-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 4px;
    padding: 13px 15px;
    border: 1px solid #e6c5bd;
    border-radius: 10px;
    background: #fff;
}

.gb-photo-action b {
    color: var(--gb-primary);
    font-size: 14px;
}

.gb-photo-action small {
    color: #777981;
    font-size: 12px;
    font-weight: 500;
    text-align: right;
}

.gb-photo-name.has-file {
    color: #26734f;
    font-weight: 700;
}

.gb-public .gb-legal {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #62646c;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
}

.gb-public .gb-legal input {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    margin-top: 2px;
}

.gb-manager-gateway {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
    max-width: 820px;
    margin: 12px auto 0;
    padding: 22px 24px;
    border: 1px solid #efd7d0;
    border-radius: 16px;
    background: linear-gradient(112deg, #fff 0%, #fff7f3 100%);
}

.gb-manager-gateway h2 {
    margin: 5px 0 5px;
    color: var(--gb-charcoal);
    font-size: 23px;
    font-weight: 720;
}

.gb-manager-gateway p {
    margin: 0;
    color: #6c6e75;
    font-size: 14px;
}

.gb-manager-gateway .gb-preview-button {
    flex: 0 0 auto;
    padding: 12px 17px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 750;
}

@media (max-width: 700px) {
    .gb-public {
        padding: 20px 14px;
    }

    .gb-public-brand img {
        max-width: 280px;
    }

    .gb-public .gb-client-calendar {
        padding: 14px;
    }

    .gb-public .gb-client-calendar-nav {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .gb-public .gb-client-calendar-nav strong {
        grid-column: 1 / -1;
        grid-row: 1;
        font-size: 18px;
    }

    .gb-public .gb-client-calendar-nav button:first-child {
        grid-column: 1;
        grid-row: 2;
    }

    .gb-public .gb-client-calendar-nav button:last-child {
        grid-column: 2;
        grid-row: 2;
    }

    .gb-public .gb-client-week,
    .gb-public .gb-client-days {
        gap: 4px;
    }

    .gb-public .gb-client-week span {
        padding: 5px 1px;
        font-size: 11px;
    }

    .gb-public .gb-client-days button {
        min-height: 48px;
        padding: 5px;
        font-size: 15px;
    }

    .gb-special-section {
        padding: 20px 16px;
    }

    .gb-special-form {
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .gb-special-wide {
        grid-column: auto;
    }

    .gb-photo-action,
    .gb-manager-gateway {
        align-items: flex-start;
        flex-direction: column;
    }

    .gb-photo-action small {
        text-align: left;
    }

    .gb-manager-gateway .gb-preview-button {
        width: 100%;
        box-sizing: border-box;
        text-align: center;
    }
}

/* 0.24.18 | Perfil interior proporcionado y fecha segura en iPhone */
.gb-public .gb-client-profile form{padding:24px;overflow:hidden}
.gb-client-profile-intro{margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid #eee3df}
.gb-client-profile-intro small{display:block;margin-bottom:6px;color:#b54642;font-size:11px;font-weight:800;letter-spacing:1.5px}
.gb-client-profile-intro h2{margin:0 0 6px;color:#343640;font-size:24px;line-height:1.2}
.gb-client-profile-intro p{margin:0;color:#73757d;font-size:14px;line-height:1.45}
.gb-public .gb-client-profile-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 18px;border:1px solid #f0dfda;background:#fff8f5;text-align:center}
.gb-public .gb-client-profile-photo>div{width:100%;align-items:center;justify-content:center;text-align:center}
.gb-public .gb-client-avatar.is-editor{width:120px;height:120px;font-size:42px}
.gb-client-profile-photo>div>strong{display:block;width:100%;color:#343640;font-size:21px;line-height:1.25}
.gb-client-profile-photo>div>p{width:100%;margin:2px 0 8px;color:#666973;font-size:16px;line-height:1.45}
.gb-public .gb-client-profile-photo label[for="gb-profile-photo-input"]{display:flex;align-items:center;justify-content:center;width:min(100%,520px);min-height:52px;margin:2px auto 0;box-sizing:border-box;padding:12px 20px;font-size:16px;line-height:1.25}
.gb-public .gb-client-profile-photo small{display:block;width:100%;margin-top:3px;color:#656873;font-size:14px;font-weight:650;line-height:1.4;text-align:center}
.gb-public .gb-client-profile-fields{min-width:0}
.gb-public .gb-client-profile-fields label{min-width:0;overflow:hidden}
.gb-public .gb-client-profile-fields input,.gb-public .gb-client-profile-fields input[type=date]{display:block;width:100%;max-width:100%;min-width:0;height:52px;margin:0;padding:10px 14px;box-sizing:border-box;overflow:hidden;font-size:16px;-webkit-appearance:none;appearance:none}
.gb-public .gb-client-profile-fields input[type=date]::-webkit-date-and-time-value{min-width:0;margin:0;text-align:left}
.gb-public .gb-client-profile-saved{display:inline-flex;align-items:center;gap:8px;width:auto;max-width:calc(100% - 44px);margin:16px 22px 0;padding:9px 12px;box-sizing:border-box;border:1px solid #cce8d8;border-radius:9px;background:#eff9f3;color:#23714b;font-size:13px;font-weight:700;line-height:1.3}
.gb-client-profile-saved b{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#2f865d;color:#fff;font-size:12px}
@media(max-width:700px){.gb-public .gb-client-profile form{padding:16px}.gb-client-profile-intro h2{font-size:21px}.gb-public .gb-client-profile-photo{display:flex;flex-direction:column;gap:14px;padding:22px 14px}.gb-public .gb-client-avatar.is-editor{width:118px;height:118px;font-size:40px}.gb-client-profile-photo>div{width:100%;min-width:0;align-items:center;justify-content:center}.gb-client-profile-photo>div>strong{font-size:20px}.gb-client-profile-photo>div>p{font-size:16px}.gb-client-profile-photo label[for="gb-profile-photo-input"]{display:flex;width:100%;max-width:100%;box-sizing:border-box;text-align:center}.gb-client-profile-photo small{font-size:14px;overflow-wrap:anywhere;text-align:center}.gb-public .gb-client-profile-saved{max-width:calc(100% - 30px);margin:14px 15px 0}.gb-public .gb-client-profile-fields input,.gb-public .gb-client-profile-fields input[type=date]{font-size:16px}}
.gb-custom-workflow-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:8px 0 0;padding:20px;border:1px solid #eaded9;border-radius:16px;background:#fffaf7}
.gb-custom-workflow-fields[hidden]{display:none}.gb-custom-workflow-fields legend{padding:0 8px;color:#343640;font-size:17px;font-weight:800}.gb-custom-workflow-fields>p,.gb-custom-workflow-fields>.gb-wide{grid-column:1/-1}.gb-custom-workflow-fields label{display:flex;flex-direction:column;gap:7px}.gb-custom-email-settings{margin:28px 0}.gb-custom-email-heading{margin-bottom:14px}.gb-custom-email-settings .gb-media-preview{display:block;max-width:360px;max-height:160px;margin-top:12px;border-radius:12px;object-fit:cover}
@media(max-width:782px){.gb-custom-workflow-fields{grid-template-columns:1fr;padding:16px}.gb-custom-email-settings .gb-email-template-body{display:block}.gb-custom-email-settings .gb-media-preview{width:100%;max-width:none}}


/* Migrado desde admin-polish.css. */
/* GradoBeauty · interfaz exclusiva de Grado Creativo en wp-admin */
.wp-admin .gb-wrap {
    width: calc(100% - 40px);
    max-width: 1480px;
    box-sizing: border-box;
    margin: 20px auto 0;
    color: #34383e;
}

.wp-admin .gb-shared-admin-header {
    width: calc(100% - 40px);
    max-width: 1480px;
    box-sizing: border-box;
    margin: 20px auto 0;
}

.wp-admin .gb-shared-admin-header.gb-admin-dashboard .gb-admin-brand {
    margin-bottom: 0;
}

/* Cabecera administrativa común: patrón Grado Creativo */
.wp-admin .gb-admin-dashboard .gb-admin-brand {
    display: grid;
    grid-template-columns: 265px minmax(0, 1fr);
    align-items: center;
    justify-items: stretch;
    gap: 26px;
    min-height: 0;
    margin: 0 0 28px;
    padding: 24px 30px;
    box-sizing: border-box;
    border-radius: 18px;
    text-align: left;
}

.wp-admin .gb-admin-dashboard .gb-admin-brand .gb-brand-logo {
    width: 100%;
    max-width: 265px;
    margin: 0;
}

.wp-admin .gb-admin-dashboard .gb-admin-brand-copy {
    min-width: 0;
    padding-left: 26px;
    border-left: 1px solid #eadbd6;
}

.wp-admin .gb-admin-dashboard .gb-admin-brand-copy > span {
    display: block;
    margin: 0 0 7px;
    color: #b44740;
    font-size: 11px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .16em;
}

.wp-admin .gb-admin-dashboard .gb-admin-brand-copy h1 {
    margin: 0 0 5px;
    color: #30323a;
    font-size: 26px;
    font-weight: 780;
    line-height: 1.12;
}

.wp-admin .gb-admin-dashboard .gb-admin-brand-copy p {
    margin: 0;
    color: #6a6c74;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
}

@media (max-width: 782px) {
    .wp-admin .gb-wrap {
        width: calc(100% - 20px);
        margin: 10px auto 0;
    }

    .wp-admin .gb-shared-admin-header {
        width: calc(100% - 20px);
        margin-top: 10px;
    }

    .wp-admin .gb-admin-dashboard .gb-admin-brand {
        grid-template-columns: 1fr;
        gap: 14px;
        margin-bottom: 16px;
        padding: 18px;
    }

    .wp-admin .gb-admin-dashboard .gb-admin-brand .gb-brand-logo {
        max-width: 245px;
    }

    .wp-admin .gb-admin-dashboard .gb-admin-brand-copy {
        padding: 13px 0 0;
        border-top: 1px solid #eadbd6;
        border-left: 0;
    }

    .wp-admin .gb-admin-dashboard .gb-admin-brand-copy h1 {
        font-size: 22px;
    }
}

.wp-admin .gb-wrap .gb-heading {
    margin: 22px 0 18px;
}

.wp-admin .gb-wrap .gb-heading h1 {
    margin: 5px 0;
    color: #2f3339;
    font-size: 34px;
    line-height: 1.12;
}

.wp-admin .gb-wrap .gb-kicker {
    color: #b44740;
}

.wp-admin .gb-wrap .gb-panel {
    box-sizing: border-box;
    margin-bottom: 18px;
    border-color: #e4ddd5;
    background: #fff;
    box-shadow: 0 10px 28px rgba(55, 43, 38, .055);
}

/* Calendarios administrativos */
.wp-admin .gb-wrap .gb-calendar-title {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) 150px;
    align-items: center;
    gap: 18px;
    margin: 0 0 20px;
}

.wp-admin .gb-wrap .gb-calendar-title h2 {
    margin: 0;
    color: #30343a;
    font-size: 25px;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
    text-transform: capitalize;
}

.wp-admin .gb-wrap .gb-calendar-title .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 42px;
    box-sizing: border-box;
    margin: 0;
    border: 1px solid #ddcec8;
    border-radius: 10px;
    background: #fffaf8;
    color: #a7443e;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.2;
    text-decoration: none;
}

.wp-admin .gb-wrap .gb-weekdays,
.wp-admin .gb-wrap .gb-month-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
}

.wp-admin .gb-wrap .gb-weekdays span {
    padding: 8px 4px 10px;
    color: #9b4b44;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.wp-admin .gb-wrap .gb-day {
    min-width: 0;
    min-height: 72px;
    box-sizing: border-box;
    padding: 11px;
    border: 1px solid #e4dfd9;
    border-radius: 12px;
    background: #fcfbf9;
    color: #30343a;
    text-decoration: none;
    box-shadow: none;
}

.wp-admin .gb-wrap .gb-day:hover:not(.is-empty) {
    border-color: #c75a48;
    background: #fff7f2;
    transform: translateY(-1px);
}

.wp-admin .gb-wrap .gb-day.is-selected,
.wp-admin .gb-wrap .gb-close-day.is-selected {
    border-color: #c24143;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
}

.wp-admin .gb-wrap .gb-day.is-selected span,
.wp-admin .gb-wrap .gb-close-day.is-selected strong {
    color: #fff;
}

.wp-admin .gb-wrap .gb-day.is-empty {
    border: 0;
    background: transparent;
}

/* Reservas y fotografías */
.wp-admin .gb-wrap .gb-table-scroll {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 5px;
}

.wp-admin .gb-wrap .gb-bookings-table {
    width: 100%;
    min-width: 1080px;
    table-layout: auto;
    border-collapse: collapse;
}

.wp-admin .gb-wrap .gb-bookings-table th,
.wp-admin .gb-wrap .gb-bookings-table td {
    box-sizing: border-box;
    padding: 14px 12px;
    vertical-align: top;
    line-height: 1.45;
}

.wp-admin .gb-wrap .gb-bookings-table th {
    color: #555b61;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.wp-admin .gb-wrap .gb-bookings-table .gb-col-date { width: 130px; }
.wp-admin .gb-wrap .gb-bookings-table .gb-col-client { width: 190px; }
.wp-admin .gb-wrap .gb-bookings-table .gb-col-service { width: 145px; }
.wp-admin .gb-wrap .gb-bookings-table .gb-col-photo { width: 125px; }
.wp-admin .gb-wrap .gb-bookings-table .gb-col-status { width: 155px; }
.wp-admin .gb-wrap .gb-bookings-table .gb-col-deposit { width: 145px; }
.wp-admin .gb-wrap .gb-bookings-table .gb-col-actions { width: 230px; }

.wp-admin .gb-wrap .gb-client-phone {
    display: block;
    margin-top: 5px;
    color: #7d8287;
    font-weight: 400;
}

.wp-admin .gb-wrap .gb-photo-preview {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    width: 96px;
    min-width: 96px;
    max-width: 96px;
    min-height: 0;
    box-sizing: border-box;
    padding: 5px;
    overflow: hidden;
    border: 1px solid #e0d6ce;
    border-radius: 11px;
    background: #fff;
    color: #98453f;
    cursor: zoom-in;
    box-shadow: none;
}

.wp-admin .gb-wrap .gb-photo-preview img {
    display: block;
    width: 84px;
    min-width: 84px;
    max-width: 84px;
    height: 68px;
    min-height: 68px;
    max-height: 68px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 8px;
    object-fit: cover;
}

.wp-admin .gb-wrap .gb-photo-preview span {
    display: block;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.wp-admin .gb-wrap .gb-actions {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    flex-wrap: wrap;
}

.wp-admin .gb-wrap .gb-actions .button {
    min-height: 34px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
}

.wp-admin .gb-wrap .gb-actions .button-primary {
    border-color: #c24143;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
}

.wp-admin .gb-wrap .gb-booking-notice-form {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
}
.wp-admin .gb-wrap .gb-booking-notice-form select {
    min-width: 70px;
    height: 34px;
    margin: 0;
    border-color: #e3c4bd;
    border-radius: 8px;
}
.wp-admin .gb-wrap .gb-actions .gb-notice-ready {
    border-color: #de4d32;
    background: #de4d32;
    color: #fff;
}
.wp-admin .gb-wrap .gb-actions .gb-notice-delay {
    border-color: #c74742;
    color: #a83c38;
}
@media (max-width: 782px) {
    .wp-admin .gb-wrap .gb-booking-notice-form,
    .wp-admin .gb-wrap .gb-delay-notice-form {
        display: grid;
        grid-template-columns: 76px minmax(0, 1fr);
        width: 100%;
    }
    .wp-admin .gb-wrap .gb-booking-notice-form:not(.gb-delay-notice-form) {
        grid-template-columns: 1fr;
    }
    .wp-admin .gb-wrap .gb-booking-notice-form select,
    .wp-admin .gb-wrap .gb-booking-notice-form .button {
        width: 100%;
        box-sizing: border-box;
    }
}

.wp-admin .gb-wrap .gb-pending-bookings-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #eee6df;
}

.wp-admin .gb-wrap .gb-pending-bookings-head h2,
.wp-admin .gb-wrap .gb-pending-bookings-head p {
    margin: 4px 0 0;
}

.wp-admin .gb-wrap .gb-pending-bookings-head > strong {
    display: grid;
    place-items: center;
    min-width: 44px;
    height: 44px;
    border-radius: 13px;
    background: linear-gradient(135deg, #c24143, #e95721);
    color: #fff;
    font-size: 19px;
}

@media (max-width: 960px) {
    .wp-admin .gb-wrap .gb-calendar-title {
        grid-template-columns: 110px minmax(0, 1fr) 110px;
        gap: 10px;
    }

    .wp-admin .gb-wrap .gb-day {
        min-height: 58px;
        padding: 8px;
    }
}

@media (max-width: 782px) {
    .wp-admin .gb-wrap {
        margin-right: 10px;
    }

    .wp-admin .gb-wrap .gb-calendar-title {
        grid-template-columns: 1fr 1fr;
    }

    .wp-admin .gb-wrap .gb-calendar-title h2 {
        grid-column: 1 / -1;
        grid-row: 1;
        font-size: 21px;
    }

    .wp-admin .gb-wrap .gb-calendar-title .button:first-child { grid-column: 1; }
    .wp-admin .gb-wrap .gb-calendar-title .button:last-child { grid-column: 2; }

    .wp-admin .gb-wrap .gb-weekdays,
    .wp-admin .gb-wrap .gb-month-grid {
        gap: 4px;
    }

    .wp-admin .gb-wrap .gb-day {
        min-height: 48px;
        padding: 6px;
        border-radius: 8px;
    }
}


/* Migrado desde mobile-responsive.css. */
/* GradoBeauty · capa responsive final para gestora y clienta */
@media (max-width: 782px) {
    html, body { max-width: 100%; overflow-x: hidden; }
    body.gradobeauty-app-page, .gradobeauty-app-page .gb-app-main,
    .gb-owner-shell, .gb-owner-workspace, .gb-public { min-width: 0; }

    
    
    .gb-app-menu { grid-template-columns: 1fr; }
    .gb-app-menu a { width: 100%; box-sizing: border-box; padding: 11px 12px; }

    .gb-owner-workspace .gb-heading { margin: 13px 0 10px; }
    .gb-owner-workspace .gb-heading h1 { font-size: 22px; line-height: 1.15; overflow-wrap: anywhere; }
    .gb-owner-workspace .gb-heading p { font-size: 13px; line-height: 1.45; }
    .gb-owner-workspace .gb-card,
    .gb-owner-workspace .gb-panel,
    .gb-owner-workspace .gb-section,
    .gb-owner-workspace .gb-settings,
    .gb-owner-workspace .gb-wedding-timeline,
    .gb-owner-workspace .gb-economic-dashboard { max-width: 100%; box-sizing: border-box; margin-right: 0; margin-left: 0; padding: 16px; border-radius: 16px; }

    .gb-owner-workspace .gb-grid,
    .gb-owner-workspace .gb-fields,
    .gb-owner-workspace .gb-form-grid,
    .gb-owner-workspace .gb-wedding-steps,
    .gb-owner-workspace .gb-economic-kpis { grid-template-columns: minmax(0,1fr); }
    .gb-owner-workspace input:not([type="checkbox"]):not([type="radio"]),
    .gb-owner-workspace select,
    .gb-owner-workspace textarea,
    .gb-public input:not([type="checkbox"]):not([type="radio"]),
    .gb-public select,
    .gb-public textarea { width: 100%; max-width: 100%; box-sizing: border-box; font-size: 16px; }
    .gb-owner-workspace .button,
    .gb-owner-workspace button,
    .gb-owner-workspace input[type="submit"] { max-width: 100%; min-height: 42px; white-space: normal; }
    .gb-owner-workspace .gb-actions { align-items: stretch; flex-direction: column; }
    .gb-owner-workspace .gb-actions .button,
    .gb-owner-workspace .gb-actions button { width: 100%; box-sizing: border-box; text-align: center; }

    .gb-owner-workspace .gb-calendar-title { grid-template-columns: 1fr 1fr; }
    .gb-owner-workspace .gb-calendar-title h2 { grid-column: 1/-1; grid-row: 1; font-size: 18px; }
    .gb-owner-workspace .gb-calendar-title .button { min-width: 0; padding: 8px; }
    .gb-owner-workspace .gb-closure-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
    .gb-owner-workspace .gb-closure-heading h2 { font-size: 22px; line-height: 1.2; }
    .gb-owner-workspace .gb-closure-heading > strong { align-self: flex-start; }
    .gb-owner-workspace .gb-closure-legend { align-items: flex-start; flex-direction: column; gap: 8px; }
    .gb-owner-workspace .gb-weekdays,
    .gb-owner-workspace .gb-calendar-grid { gap: 4px; }
    .gb-owner-workspace .gb-day { min-width: 0; min-height: 58px; padding: 6px; }
    .gb-owner-workspace .gb-day strong { font-size: 14px; }
    .gb-owner-workspace .gb-wedding-calendar-mark b { font-size: 8px; }
    .gb-owner-workspace .gb-wedding-calendar-mark small { display: none; }

    .gb-owner-workspace .gb-bookings-table td { grid-template-columns: 78px minmax(0,1fr); gap: 8px; }
    .gb-owner-workspace .gb-bookings-table td img { max-width: 100%; height: auto; }
    .gb-owner-workspace .gb-all-bookings-content { padding: 10px; }
    .gb-event-accordion > summary { grid-template-columns: 64px minmax(0,1fr); }
    .gb-event-summary-date { grid-template-columns: 1fr; align-content: center; gap: 5px; }
    .gb-event-summary-date b { font-size: 32px; line-height: .95; }
    .gb-event-summary-date small { display: block; font-size: 11px; line-height: 1.15; }
    .gb-event-summary-status, .gb-event-summary-action { grid-column: 2; justify-self: start; white-space: normal; }
    .gb-wedding-archive-row { grid-template-columns: 48px minmax(0,1fr); gap: 10px; padding: 14px; }
    .gb-wedding-archive-status, .gb-wedding-archive-row > b { grid-column: 2; justify-self: start; white-space: normal; }

    .gb-public { width: 100%; max-width: 100%; box-sizing: border-box; padding: 14px 10px; }
    .gb-public-brand img { width: auto; max-width: min(250px, 88vw); height: auto; }
    .gb-public .gb-calendar-head h3 { font-size: 25px; line-height: 1.15; }
    .gb-public fieldset > legend { font-size: 20px; line-height: 1.25; }
    .gb-public .gb-client-calendar { padding: 10px; border-radius: 14px; }
    .gb-public .gb-client-week, .gb-public .gb-client-days { gap: 3px; }
    .gb-public .gb-client-week span { padding: 4px 0; font-size: 10px; }
    .gb-public .gb-client-days button { min-width: 0; min-height: 43px; padding: 3px; border-radius: 8px; font-size: 14px; }
    .gb-public .gb-client-days button.is-appointment::after { font-size: 6px; letter-spacing: .05em; }
    .gb-slots { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .gb-slot span, .gb-slot.is-busy { padding: 13px 4px; font-size: 17px; }

    .gb-appointment-summary { grid-template-columns: 1fr; }
    .gb-client-monthly summary { align-items: flex-start; padding: 14px; }
    .gb-client-monthly summary strong { font-size: 16px; }
    .gb-client-monthly-item { grid-template-columns: 46px minmax(0,1fr); gap: 10px; padding: 13px; }
    .gb-client-monthly-item time { width: 44px; height: 44px; }
    .gb-client-monthly-item .gb-client-cancel,
    .gb-client-monthly-item .gb-client-contact,
    .gb-client-monthly-item > em { grid-column: 1/-1; width: 100%; box-sizing: border-box; justify-self: stretch; }

    .gb-special-section, .gb-client-vip { padding: 16px 12px; border-radius: 15px; }
    .gb-special-section h3, .gb-client-vip-head h2 { font-size: 22px; line-height: 1.2; }
    .gb-special-form { grid-template-columns: minmax(0,1fr); padding: 12px; }
    .gb-special-form button { width: 100%; justify-self: stretch; }
    .gb-event-calendar-nav { grid-template-columns: 1fr 1fr; padding: 10px; }
    .gb-event-week, .gb-event-days { gap: 3px; padding-right: 6px; padding-left: 6px; }
    .gb-event-days button { min-height: 40px; padding: 3px; font-size: 12px; }
    .gb-client-vip-card { grid-template-columns: minmax(0,1fr); }
    .gb-client-vip-event, .gb-client-vip-content { padding: 18px; }
    .gb-client-vip-actions, .gb-client-vip-actions form { width: 100%; }
    .gb-client-vip-actions form button,
    .gb-client-vip-actions details,
    .gb-client-vip-actions details > summary { width: 100%; box-sizing: border-box; }
    .gb-client-vip-actions details form { min-width: 0; width: 100%; box-sizing: border-box; }
    .gb-photo-action { align-items: flex-start; flex-direction: column; }
    .gb-photo-action small { text-align: left; }

    .gb-wedding-step > header { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 4px; }
    .gb-wedding-step > header > b { display: grid; flex: 0 0 40px; width: 40px; height: 40px; place-items: center; }
    .gb-wedding-step > header > div { display: block; min-width: 0; }
    .gb-wedding-step > header span { display: block; }
    .gb-wedding-step > header h4 { display: block; margin: 4px 0 5px; font-size: 18px; line-height: 1.2; }
    .gb-wedding-step > header p { display: block; font-size: 13px; line-height: 1.45; }
}

@media(max-width:782px){.gb-owner-workspace .gb-client-record summary>.gb-client-summary-main{display:flex;align-items:center;gap:8px;overflow:hidden}.gb-owner-workspace .gb-client-record summary>.gb-client-summary-main>span:last-child{display:block;min-width:0;overflow:hidden}}

/* 0.24.1 | Aviso compacto de WhatsApp cuando la cita ya no admite cancelación online. */
body .gb-public .gb-client-monthly-item .gb-client-contact{
    grid-column:3;
    justify-self:end;
    width:auto;
    min-width:96px;
    max-width:none;
    min-height:40px;
    margin:0;
    padding:11px 15px;
    box-sizing:border-box;
    border:0;
    border-radius:10px;
    background:#23845d;
    color:#fff;
    font-size:0;
    line-height:1;
    text-align:center;
    white-space:nowrap;
    box-shadow:0 0 0 0 rgba(35,132,93,.38);
    animation:gb-whatsapp-attention 1.8s ease-in-out infinite;
}
body .gb-public .gb-client-monthly-item .gb-client-contact::after{
    content:"WhatsApp";
    color:#fff;
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:13px;
    font-weight:800;
    line-height:1;
}
@keyframes gb-whatsapp-attention{
    0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(35,132,93,.34)}
    50%{transform:scale(1.035);box-shadow:0 0 0 8px rgba(35,132,93,0)}
}
@media(prefers-reduced-motion:reduce){body .gb-public .gb-client-monthly-item .gb-client-contact{animation:none}}

/* Las zonas seguras ya no forman parte de la previsualización con móvil real. */
#gb-social-editor .gb-safe-guide-toggle,#gb-social-editor .gb-safe-zone-guide{display:none}

/* 0.23.73 | El móvil real manda también sobre las reglas móviles antiguas */
@media(max-width:760px){
#gb-social-editor form .gb-social-preview .gb-phone-stage>.gb-social-preview-media{position:absolute;left:2.534%;top:15.576%;width:94.826%;height:54.834%;min-height:0;max-height:none;margin:0;aspect-ratio:4/5;background:transparent}
#gb-social-editor form .gb-social-preview[data-preview-format="reel"] .gb-phone-stage>.gb-social-preview-media,#gb-social-editor form .gb-social-preview[data-preview-format="story"] .gb-phone-stage>.gb-social-preview-media{inset:0;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;background:transparent}
#gb-social-editor form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media{position:absolute;inset:0;left:0;top:0;right:0;bottom:0;width:100%;max-width:none;height:100%;min-height:100%;max-height:none;margin:0;padding:0;aspect-ratio:auto;border:0;border-radius:0;background:transparent;transform:none}
#gb-social-editor form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>img,#gb-social-editor form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>video,#gb-social-editor form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage,#gb-social-editor form .gb-social-preview[data-preview-network="tiktok"] .gb-phone-stage>.gb-social-preview-media>.gb-crop-stage>canvas{position:absolute;inset:0;left:0;top:0;width:100%;max-width:none;height:100%;min-height:100%;max-height:none;margin:0;padding:0;aspect-ratio:auto;border:0;border-radius:0;object-fit:cover;transform:none}
}

/* 0.23.41 | Acciones y estado de las reservas en móvil */
@media (max-width: 782px) {
    .gb-owner-workspace .gb-bookings-table tr {
        position: relative;
        grid-template-columns: 92px minmax(0, 1fr);
        min-height: 188px;
        padding: 38px 10px 10px;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(1),
    .gb-owner-workspace .gb-bookings-table td:nth-child(2),
    .gb-owner-workspace .gb-bookings-table td:nth-child(3),
    .gb-owner-workspace .gb-bookings-table td:nth-child(6) {
        padding-right: 2px;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(4) {
        grid-column: 1;
        grid-row: 1 / 4;
        align-self: start;
    }
    .gb-owner-workspace .gb-photo-preview {
        width: 92px;
        min-width: 92px;
        height: 102px;
        min-height: 102px;
    }
    .gb-owner-workspace .gb-photo-preview img {
        min-height: 94px;
        max-height: 94px;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5) {
        position: absolute;
        top: 9px;
        left: 10px;
        right: 10px;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        width: auto;
        padding: 0;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5)::before { display: none; }
    .gb-owner-workspace .gb-bookings-table .gb-pill {
        min-height: 24px;
        padding: 5px 10px;
        border-radius: 999px;
        box-sizing: border-box;
        font-size: 10px;
        font-weight: 800;
        line-height: 1.2;
    }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-confirmed {
        background: #e5f5ed;
        color: #176b4c;
    }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-cancelled,
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-rejected {
        background: #fff0ef;
        color: #a43f3a;
    }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-pending_review {
        background: #fff4dc;
        color: #825e0b;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(7) {
        grid-column: 1;
        grid-row: 4;
        align-self: start;
        padding: 4px 0 0;
        border-top: 0;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 6px;
        width: 92px;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 92px;
        min-width: 92px;
        min-height: 44px;
        padding: 7px 6px;
        border-radius: 9px;
        font-size: 10px;
        font-weight: 800;
        line-height: 1.15;
        text-align: center;
        white-space: normal;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button:not(.gb-danger) {
        border-color: #d94b35;
        background: linear-gradient(135deg,#c94742,#ee5a20);
        color: #fff;
        box-shadow: 0 7px 14px rgba(210,72,48,.18);
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button.gb-danger {
        border: 1px solid #c94b43;
        background: #fff;
        color: #a43f3a;
        box-shadow: none;
    }
}

/* 0.23.40 | El Reel ocupa realmente toda la vista previa vertical */
@media (max-width: 760px) {
    .gb-social-workspace form.is-reel-post .gb-social-preview-media {
        width: 100%;
        max-width: none;
        min-height: 0;
        aspect-ratio: 9 / 16;
        overflow: hidden;
        background: #17171a;
    }
    .gb-social-workspace form.is-reel-post .gb-social-preview-media video {
        display: block;
        width: 100%;
        height: 100%;
        max-height: none;
        margin: 0;
        object-fit: cover;
    }
}

/* 0.23.39 | Todas las reservas como fichas móviles compactas */
@media (max-width: 782px) {
    .gb-owner-workspace details.gb-all-bookings { padding: 0; overflow: hidden; }
    .gb-owner-workspace .gb-all-bookings > summary {
        min-height: 58px;
        padding: 12px;
    }
    .gb-owner-workspace .gb-all-bookings > summary strong { font-size: 15px; }
    .gb-owner-workspace .gb-all-bookings > summary small { font-size: 10px; }
    .gb-owner-workspace .gb-all-bookings-meta b { width: 30px; height: 30px; font-size: 10px; }
    .gb-owner-workspace .gb-all-bookings-content { padding: 8px; }

    .gb-owner-workspace .gb-wedding-archive { gap: 7px; margin-bottom: 12px; }
    .gb-owner-workspace .gb-wedding-archive-title {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 3px 8px;
        padding: 0 2px;
    }
    .gb-owner-workspace .gb-wedding-archive-title span { font-size: 8px; white-space: nowrap; }
    .gb-owner-workspace .gb-wedding-archive-title strong { font-size: 12px; }
    .gb-owner-workspace .gb-wedding-archive-row {
        display: grid;
        grid-template-columns: 38px minmax(0, 1fr);
        grid-template-rows: auto auto auto;
        align-items: center;
        gap: 4px 9px;
        min-width: 0;
        padding: 10px;
        border-radius: 12px;
    }
    .gb-owner-workspace .gb-wedding-archive-crown {
        grid-column: 1;
        grid-row: 1 / 3;
        width: 38px;
        height: 38px;
        border-radius: 10px;
    }
    .gb-owner-workspace .gb-wedding-archive-crown svg { width: 22px; }
    .gb-owner-workspace .gb-wedding-archive-date {
        grid-column: 2;
        grid-row: 1;
        grid-template-columns: auto auto 1fr;
        align-items: baseline;
        gap: 5px;
        min-width: 0;
    }
    .gb-owner-workspace .gb-wedding-archive-client {
        grid-column: 2;
        grid-row: 2;
        grid-template-columns: auto minmax(0,1fr);
        align-items: baseline;
        gap: 5px;
        min-width: 0;
    }
    .gb-owner-workspace .gb-wedding-archive-client em { grid-column: 2; }
    .gb-owner-workspace .gb-wedding-archive-row small { font-size: 7px; white-space: nowrap; }
    .gb-owner-workspace .gb-wedding-archive-row strong {
        min-width: 0;
        overflow: hidden;
        font-size: 11px;
        line-height: 1.2;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .gb-owner-workspace .gb-wedding-archive-row em {
        overflow: hidden;
        font-size: 9px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .gb-owner-workspace .gb-wedding-archive-status {
        grid-column: 2;
        grid-row: 3;
        justify-self: start;
        padding: 5px 7px;
        font-size: 7px;
        white-space: nowrap;
    }
    .gb-owner-workspace .gb-wedding-archive-row > b {
        grid-column: 2;
        grid-row: 3;
        justify-self: end;
        font-size: 9px;
        white-space: nowrap;
    }

    .gb-owner-workspace .gb-bookings-scroll { overflow: visible; }
    .gb-owner-workspace .gb-bookings-table {
        display: block;
        width: 100%;
        min-width: 0;
        border: 0;
    }
    .gb-owner-workspace .gb-bookings-table tbody {
        display: grid;
        width: 100%;
        gap: 8px;
    }
    .gb-owner-workspace .gb-bookings-table tr {
        display: grid;
        grid-template-columns: 68px minmax(0, 1fr);
        gap: 5px 10px;
        width: 100%;
        padding: 10px;
        box-sizing: border-box;
        border: 1px solid #e6dfd4;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 5px 14px rgba(50,42,30,.04);
    }
    .gb-owner-workspace .gb-bookings-table td {
        display: grid;
        grid-template-columns: 54px minmax(0,1fr);
        align-items: baseline;
        gap: 4px;
        width: auto;
        min-width: 0;
        padding: 2px 0;
        border: 0;
        line-height: 1.25;
        white-space: normal;
    }
    .gb-owner-workspace .gb-bookings-table td::before {
        font-size: 7px;
        line-height: 1.1;
        letter-spacing: .06em;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(1) { grid-column: 2; grid-row: 2; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2) { grid-column: 2; grid-row: 1; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)::before { grid-row: 1 / 3; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2) > strong { grid-column: 2; grid-row: 1; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2) > .gb-client-phone { grid-column: 2; grid-row: 2; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(3) { grid-column: 2; grid-row: 3; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(4) {
        display: block;
        grid-column: 1;
        grid-row: 1 / 4;
        align-self: stretch;
        padding: 0;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(4)::before { display: none; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5) {
        grid-column: 1;
        grid-row: 4;
        grid-template-columns: 1fr;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(6) {
        grid-column: 2;
        grid-row: 4;
        grid-template-columns: 42px minmax(0,1fr);
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(7) {
        grid-column: 1 / -1;
        grid-row: 5;
        padding-top: 6px;
        border-top: 1px solid #eee8dd;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(7)::before { display: none; }
    .gb-owner-workspace .gb-bookings-table td strong { font-size: 11px; line-height: 1.2; }
    .gb-owner-workspace .gb-bookings-table .gb-client-phone { margin-top: 2px; font-size: 9px; }
    .gb-owner-workspace .gb-bookings-table .gb-pill {
        display: inline-flex;
        width: max-content;
        max-width: 100%;
        padding: 4px 6px;
        font-size: 8px;
        white-space: nowrap;
    }
    .gb-owner-workspace .gb-photo-preview {
        display: grid;
        width: 68px;
        min-width: 68px;
        min-height: 68px;
        height: 100%;
        padding: 3px;
        box-sizing: border-box;
        border-radius: 9px;
    }
    .gb-owner-workspace .gb-photo-preview img {
        width: 100%;
        height: 100%;
        min-height: 62px;
        max-height: 94px;
        border-radius: 7px;
        object-fit: cover;
    }
    .gb-owner-workspace .gb-photo-preview span { display: none; }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions {
        display: flex;
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 5px;
        min-width: 0;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
        min-height: 32px;
        padding: 5px 7px;
        font-size: 8px;
        line-height: 1.1;
    }
}

/* 0.23.37 | Horario habitual y cierres compactos en móvil */
@media (max-width: 782px) {
    .gb-owner-workspace .gb-weekly-panel { padding: 12px 10px; }
    .gb-owner-workspace .gb-weekly-panel .gb-section-heading {
        gap: 3px;
        margin-bottom: 9px;
    }
    .gb-owner-workspace .gb-weekly-panel .gb-section-heading h2 { font-size: 18px; }
    .gb-owner-workspace .gb-weekly-panel .gb-section-heading p {
        margin: 0;
        font-size: 10px;
        line-height: 1.3;
    }
    .gb-owner-workspace .gb-hours { gap: 7px; margin: 8px 0 12px; }
    .gb-owner-workspace .gb-hour-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
        gap: 7px;
        padding: 9px;
        border-radius: 10px;
    }
    .gb-owner-workspace .gb-hour-row > strong {
        grid-column: 1 / -1;
        margin: 0 0 1px;
        font-size: 14px;
        line-height: 1.15;
    }
    .gb-owner-workspace .gb-hour-row > label {
        display: grid;
        min-width: 0;
        gap: 4px;
        margin: 0;
        font-size: 9px;
        font-weight: 800;
    }
    .gb-owner-workspace .gb-hour-range {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 8px minmax(0, 1fr);
        align-items: center;
        gap: 3px;
        min-width: 0;
    }
    .gb-owner-workspace .gb-hour-range i {
        color: #777277;
        font-size: 9px;
        font-style: normal;
        text-align: center;
    }
    .gb-owner-workspace .gb-hour-range input[type="time"] {
        width: 100%;
        min-width: 0;
        max-width: none;
        min-height: 36px;
        height: 36px;
        padding: 4px 2px;
        border-radius: 7px;
        font-size: 11px;
        line-height: 1;
    }
    .gb-owner-workspace .gb-closure-heading {
        gap: 5px;
        margin-bottom: 8px;
        padding-bottom: 8px;
    }
    .gb-owner-workspace .gb-closure-heading h2 { font-size: 18px; }
    .gb-owner-workspace .gb-closure-heading p { font-size: 10px; line-height: 1.3; }
    .gb-owner-workspace .gb-closure-heading > strong { padding: 5px 8px; font-size: 9px; }
    .gb-owner-workspace .gb-closure-legend {
        display: flex;
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 6px 12px;
        margin: 0 0 8px;
        font-size: 9px;
    }
    .gb-owner-workspace .gb-closure-legend i { width: 11px; height: 11px; border-radius: 3px; }
    .gb-owner-workspace .gb-closure-grid .gb-close-day input { display: none; }
    .gb-owner-workspace .gb-closure-grid .gb-close-day > strong,
    .gb-owner-workspace .gb-closure-grid .gb-close-day.is-selected > strong {
        display: block;
        width: auto;
        height: auto;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        color: inherit;
        font-size: 11px;
        line-height: 1;
    }
    .gb-owner-workspace .gb-closure-grid .gb-close-day.is-selected {
        border-color: #c74a42;
        background: #c74a42;
        color: #fff;
    }
    .gb-owner-workspace .gb-hours-save {
        position: static;
        display: block;
        margin: 8px 0 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }
    .gb-owner-workspace .gb-hours-save .button { width: 100%; min-height: 40px; }
}

@media(max-width:782px){
.gb-marketing-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.gb-marketing-overview article:nth-child(-n+3){display:flex;align-items:center;justify-content:center;gap:3px;min-height:42px;padding:8px 5px;border:0;border-radius:8px;background:#c74a42;color:#fff}.gb-marketing-overview article:nth-child(-n+3)>strong{order:1;color:#fff;font-size:14px}.gb-marketing-overview article:nth-child(-n+3)>span{order:2;color:#fff;font-size:10px;letter-spacing:0;text-transform:lowercase}.gb-marketing-overview article:nth-child(n+4),.gb-marketing-overview article>small{display:none}
#gb-marketing-calendar .gb-marketing-month-nav{grid-template-columns:82px minmax(0,1fr) 82px;width:100%;min-width:0;gap:6px;margin-bottom:8px}#gb-marketing-calendar .gb-marketing-month-nav a{display:flex;width:100%;min-width:0;min-height:36px;padding:6px 4px;font-size:0}#gb-marketing-calendar .gb-marketing-month-nav a:after{font-size:10px}#gb-marketing-calendar .gb-marketing-month-nav strong{font-size:16px}#gb-marketing-calendar .gb-marketing-weekdays,#gb-marketing-calendar .gb-marketing-days{width:100%;min-width:0;gap:4px}#gb-marketing-calendar .gb-marketing-days>article,#gb-marketing-calendar .gb-marketing-days>.is-empty{position:relative;min-height:42px;height:42px;padding:4px;border-radius:7px}#gb-marketing-calendar .gb-marketing-days>article>b{font-size:10px}#gb-marketing-calendar .gb-marketing-days>article.has-events{cursor:pointer}#gb-marketing-calendar .gb-marketing-days>article.has-events:after{content:'';position:absolute;left:50%;bottom:6px;width:6px;height:6px;transform:translateX(-50%);border-radius:50%;background:#c74a42}#gb-marketing-calendar .gb-marketing-days>article>div{display:none}#gb-marketing-calendar .gb-calendar-legend{display:none}
.gb-calendar-modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:18px;background:rgba(35,30,31,.52)}.gb-calendar-modal[hidden]{display:none}.gb-calendar-modal-panel{width:min(100%,390px);max-height:78vh;overflow:auto;padding:16px;border-radius:15px;background:#fff;box-shadow:0 22px 60px rgba(20,16,17,.3)}.gb-calendar-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.gb-calendar-modal-head strong{font-size:16px}.gb-calendar-modal-close{padding:4px;border:0;background:transparent;color:#a6423d;font-size:24px;line-height:1}.gb-calendar-modal-list{display:grid;gap:8px}.gb-calendar-modal .gb-calendar-social,.gb-calendar-modal .gb-calendar-email{display:flex;align-items:center;gap:9px;padding:9px;border-radius:9px}.gb-calendar-modal .gb-calendar-social img{display:block;width:42px;height:42px}.gb-calendar-modal .gb-calendar-social span{display:grid}.gb-calendar-modal .gb-calendar-social small,.gb-calendar-modal .gb-calendar-email span{display:block;font-size:8px}.gb-calendar-modal .gb-calendar-social strong,.gb-calendar-modal .gb-calendar-email strong{display:block;font-size:11px;white-space:normal}
}

@media (max-width: 390px) {
    
    
    .gb-owner-workspace .gb-card,
    .gb-owner-workspace .gb-panel,
    .gb-owner-workspace .gb-section,
    .gb-owner-workspace .gb-settings,
    .gb-owner-workspace .gb-wedding-timeline,
    .gb-owner-workspace .gb-economic-dashboard { padding: 12px; }
    .gb-public { padding-right: 7px; padding-left: 7px; }
    .gb-public .gb-client-calendar { padding: 7px; }
    .gb-public .gb-client-days button { min-height: 39px; font-size: 13px; }
    .gb-public .gb-client-calendar-nav button { padding: 7px 5px; font-size: 12px; }
}

/* 0.23.44 | Ajuste tipográfico y controles finos de reserva */
@media (max-width: 782px) {
    .gb-owner-workspace .gb-bookings-table tr {
        grid-template-columns: 82px minmax(0, 1fr) 88px;
        gap: 5px 8px;
    }
    .gb-owner-workspace .gb-bookings-table td {
        min-width: 0;
        font-size: 10px;
        font-weight: 500;
        line-height: 1.25;
    }
    .gb-owner-workspace .gb-bookings-table td::before {
        font-size: 6.5px;
        font-weight: 800;
        letter-spacing: .055em;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)::before { grid-row:auto; }
    .gb-owner-workspace .gb-bookings-table .gb-client-phone { display:none; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong,
    .gb-owner-workspace .gb-bookings-table td:nth-child(3) {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong {
        display:block;
        grid-column:2;
        max-width:100%;
        font-size:10px;
        font-weight:750;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(1),
    .gb-owner-workspace .gb-bookings-table td:nth-child(6) { white-space:nowrap; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5) {
        justify-self: center;
        align-self: center;
        width: 88px;
        min-width: 88px;
    }
    .gb-owner-workspace .gb-bookings-table .gb-pill {
        width: max-content;
        min-width: 70px;
        max-width: 84px;
        min-height: 26px;
        padding: 5px 9px;
        font-size: 9px;
        line-height: 1;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(7) {
        display:flex;
        justify-content:center;
        width:88px;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions {
        width: 80px;
        gap: 8px;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button {
        width: 80px;
        min-width: 80px;
        min-height: 40px;
        padding: 6px 5px;
        border-radius: 9px;
        font-size: 9px;
        line-height: 1.15;
    }
}

@media (max-width: 390px) {
    .gb-owner-workspace .gb-bookings-table tr { grid-template-columns:72px minmax(0,1fr) 80px;gap:4px 6px; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),
    .gb-owner-workspace .gb-bookings-table td:nth-child(7) { width:80px;min-width:80px; }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button { width:74px;min-width:74px; }
    .gb-owner-workspace .gb-bookings-table .gb-pill { width:max-content;min-width:66px;max-width:76px; }
}

/* 0.23.35 | Calendario móvil único para Rocío y clientas */
@media (max-width: 782px) {
    /* Ningún calendario necesita desplazamiento horizontal en el móvil. */
    .gb-owner-workspace .gb-calendar,
    #gb-marketing-calendar,
    .gb-public .gb-client-calendar,
    .gb-public .gb-event-calendar {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        overflow: visible;
    }
    .gb-owner-workspace .gb-calendar-title,
    #gb-marketing-calendar .gb-marketing-month-nav,
    .gb-public .gb-client-calendar-nav,
    .gb-public .gb-event-calendar-nav {
        display: grid;
        grid-template-columns: 72px minmax(0, 1fr) 72px;
        align-items: center;
        gap: 6px;
        width: 100%;
        min-width: 0;
        margin: 0 0 10px;
        padding: 0;
        border: 0;
    }
    .gb-owner-workspace .gb-calendar-title h2,
    #gb-marketing-calendar .gb-marketing-month-nav strong,
    .gb-public .gb-client-calendar-nav strong,
    .gb-public .gb-event-calendar-nav strong {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
        margin: 0;
        color: #30323a;
        font-size: 15px;
        font-weight: 850;
        line-height: 1.15;
        text-align: center;
        text-transform: capitalize;
    }
    .gb-owner-workspace .gb-calendar-title .button,
    #gb-marketing-calendar .gb-marketing-month-nav a,
    .gb-public .gb-client-calendar-nav button,
    .gb-public .gb-event-calendar-nav button {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 72px;
        min-width: 0;
        min-height: 36px;
        height: 36px;
        margin: 0;
        padding: 5px;
        box-sizing: border-box;
        border: 1px solid #e4d8d3;
        border-radius: 9px;
        background: #fffaf7;
        color: #9f433d;
        box-shadow: none;
        font-size: 0;
        line-height: 1;
        text-decoration: none;
    }
    .gb-owner-workspace .gb-calendar-title .button:first-child,
    #gb-marketing-calendar .gb-marketing-month-nav a:first-child,
    .gb-public .gb-client-calendar-nav button:first-child,
    .gb-public .gb-event-calendar-nav button:first-child { grid-column: 1; grid-row: 1; }
    .gb-owner-workspace .gb-calendar-title .button:last-child,
    #gb-marketing-calendar .gb-marketing-month-nav a:last-child,
    .gb-public .gb-client-calendar-nav button:last-child,
    .gb-public .gb-event-calendar-nav button:last-child { grid-column: 3; grid-row: 1; }
    .gb-owner-workspace .gb-calendar-title .button:first-child::after,
    #gb-marketing-calendar .gb-marketing-month-nav a:first-child::after,
    .gb-public .gb-client-calendar-nav button:first-child::after,
    .gb-public .gb-event-calendar-nav button:first-child::after { content: '‹ Anterior'; font-size: 9px; font-weight: 850; }
    .gb-owner-workspace .gb-calendar-title .button:last-child::after,
    #gb-marketing-calendar .gb-marketing-month-nav a:last-child::after,
    .gb-public .gb-client-calendar-nav button:last-child::after,
    .gb-public .gb-event-calendar-nav button:last-child::after { content: 'Siguiente ›'; font-size: 9px; font-weight: 850; }

    .gb-owner-workspace .gb-weekdays,
    .gb-owner-workspace .gb-month-grid,
    #gb-marketing-calendar .gb-marketing-weekdays,
    #gb-marketing-calendar .gb-marketing-days,
    .gb-public .gb-client-week,
    .gb-public .gb-client-days,
    .gb-public .gb-event-week,
    .gb-public .gb-event-days {
        display: grid;
        grid-template-columns: repeat(7, minmax(0, 1fr));
        gap: 3px;
        width: 100%;
        min-width: 0;
        padding: 0;
    }
    .gb-owner-workspace .gb-weekdays,
    #gb-marketing-calendar .gb-marketing-weekdays,
    .gb-public .gb-client-week,
    .gb-public .gb-event-week { margin: 0 0 4px; }
    .gb-owner-workspace .gb-weekdays span,
    #gb-marketing-calendar .gb-marketing-weekdays span,
    .gb-public .gb-client-week span,
    .gb-public .gb-event-week span {
        min-width: 0;
        padding: 3px 0;
        color: #9f433d;
        font-size: 8px;
        font-weight: 900;
        line-height: 1;
        text-align: center;
        text-transform: none;
    }
    .gb-owner-workspace .gb-month-grid .gb-day,
    #gb-marketing-calendar .gb-marketing-days > article,
    #gb-marketing-calendar .gb-marketing-days > .is-empty,
    .gb-public .gb-client-days > button,
    .gb-public .gb-client-days > span,
    .gb-public .gb-event-days > button,
    .gb-public .gb-event-days > span {
        position: relative;
        width: 100%;
        min-width: 0;
        min-height: 44px;
        height: 44px;
        margin: 0;
        padding: 5px;
        box-sizing: border-box;
        border: 1px solid #e5ddd8;
        border-radius: 7px;
        background: #fcfbf9;
        color: #30323a;
        box-shadow: none;
        font-size: 11px;
        font-weight: 800;
        line-height: 1;
        text-align: left;
        transform: none;
    }
    .gb-owner-workspace .gb-month-grid .gb-day.is-empty,
    #gb-marketing-calendar .gb-marketing-days > .is-empty,
    .gb-public .gb-client-days > span,
    .gb-public .gb-event-days > span { border-color: transparent; background: transparent; }
    .gb-owner-workspace .gb-month-grid .gb-day > strong,
    #gb-marketing-calendar .gb-marketing-days > article > b {
        display: block;
        width: auto;
        height: auto;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: inherit;
        font-size: 11px;
        line-height: 1;
    }
    .gb-owner-workspace .gb-month-grid .gb-day > span { display: none; }
    .gb-owner-workspace .gb-month-grid .gb-day:has(> span)::after,
    #gb-marketing-calendar .gb-marketing-days > article.has-events::after {
        content: '';
        position: absolute;
        right: 5px;
        bottom: 5px;
        left: auto;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #c74a42;
        transform: none;
    }
    .gb-owner-workspace .gb-month-grid .gb-day.is-selected,
    .gb-owner-workspace .gb-month-grid .gb-day.is-today,
    #gb-marketing-calendar .gb-marketing-days > article.is-today,
    .gb-public .gb-client-days > button.is-selected,
    .gb-public .gb-event-days > button.is-selected {
        border: 2px solid #d45145;
        background: #fff8f4;
        color: #30323a;
    }
    .gb-owner-workspace .gb-closure-grid .gb-day.is-selected,
    .gb-owner-workspace .gb-closure-grid .gb-close-day:has(input:checked) {
        border-color: #c74a42;
        background: #c74a42;
        color: #fff;
    }
    .gb-public .gb-client-days > button:disabled,
    .gb-public .gb-event-days > button:disabled {
        border-color: #eee9e6;
        background: #f2efed;
        color: #aaa4a1;
        text-decoration: none;
        opacity: .72;
    }
    #gb-marketing-calendar .gb-marketing-days > article > div { display: none; }
    #gb-marketing-calendar .gb-calendar-legend { display: none; }
}

/* 0.23.38 | Vista social a ancho completo y programación progresiva */
@media (max-width: 782px) {
    .gb-social-workspace .gb-social-preview {
        grid-column: 1 / -1;
        width: 100%;
        max-width: none;
        margin: 2px 0 4px;
        box-sizing: border-box;
    }
    .gb-social-workspace .gb-social-preview-media,
    .gb-social-workspace .gb-social-preview-media.is-editable,
    .gb-social-workspace .gb-social-preview-media .gb-crop-stage {
        width: 100%;
        max-width: none;
        box-sizing: border-box;
    }
    .gb-social-workspace [data-schedule-toggle].is-active {
        border-color: #c74a42;
        background: #fff1ec;
        color: #a33f39;
    }
    .gb-social-workspace .gb-social-schedule[hidden] { display: none; }
    .gb-social-workspace .gb-social-schedule {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 74px;
        align-items: end;
        gap: 6px;
        width: 100%;
        margin: 1px 0 6px;
        padding: 8px;
        box-sizing: border-box;
        border: 1px solid #eaded9;
        border-radius: 10px;
        background: #fffaf7;
    }
    .gb-social-workspace .gb-social-schedule label {
        display: grid;
        min-width: 0;
        gap: 3px;
        margin: 0;
        font-size: 9px;
    }
    .gb-social-workspace .gb-social-schedule input {
        width: 100%;
        min-width: 0;
        min-height: 36px;
        height: 36px;
        padding: 4px;
        box-sizing: border-box;
        border-radius: 7px;
        font-size: 11px;
    }
    .gb-social-workspace .gb-social-schedule .button {
        width: 74px;
        min-width: 0;
        min-height: 36px;
        height: 36px;
        padding: 4px;
        font-size: 10px;
    }
}

/* 0.23.41 | Prioridad final para las fichas de reservas */
@media (max-width: 782px) {
    .gb-owner-workspace .gb-bookings-table tr { position:relative;grid-template-columns:92px minmax(0,1fr);min-height:188px;padding:38px 10px 10px; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(4) { grid-column:1;grid-row:1/4;align-self:start; }
    .gb-owner-workspace .gb-photo-preview { width:92px;min-width:92px;height:102px;min-height:102px; }
    .gb-owner-workspace .gb-photo-preview img { min-height:94px;max-height:94px; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5) { position:absolute;top:9px;left:10px;right:10px;display:flex;align-items:center;justify-content:flex-end;width:auto;padding:0; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5)::before { display:none; }
    .gb-owner-workspace .gb-bookings-table .gb-pill { min-height:24px;padding:5px 10px;border-radius:999px;box-sizing:border-box;font-size:10px;font-weight:800;line-height:1.2; }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-confirmed { background:#e5f5ed;color:#176b4c; }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-cancelled,.gb-owner-workspace .gb-bookings-table .gb-pill.is-rejected { background:#fff0ef;color:#a43f3a; }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-pending_review { background:#fff4dc;color:#825e0b; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(7) { grid-column:1;grid-row:4;align-self:start;padding:4px 0 0;border-top:0; }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions { display:grid;grid-template-columns:1fr;gap:6px;width:92px; }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button { display:flex;align-items:center;justify-content:center;width:92px;min-width:92px;min-height:44px;padding:7px 6px;border-radius:9px;font-size:10px;font-weight:800;line-height:1.15;text-align:center;white-space:normal; }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button:not(.gb-danger) { border-color:#d94b35;background:linear-gradient(135deg,#c94742,#ee5a20);color:#fff;box-shadow:0 7px 14px rgba(210,72,48,.18); }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button.gb-danger { border:1px solid #c94b43;background:#fff;color:#a43f3a;box-shadow:none; }
}

/* 0.23.42 | Vista compacta vacía y vídeo vertical persistente */
@media (max-width: 760px) {
    .gb-social-workspace form:not(.has-social-media) .gb-social-preview-media {
        width: 100%;
        height: 150px;
        min-height: 150px;
        max-height: 150px;
        aspect-ratio: auto;
        margin: 0;
        background: #f4efec;
    }
    .gb-social-workspace form.has-social-media.is-reel-post .gb-social-preview-media,
    .gb-social-workspace form.has-social-media.is-story-post .gb-social-preview-media,
    .gb-social-workspace form.has-social-media.has-vertical-video .gb-social-preview-media {
        width: 100%;
        max-width: none;
        height: auto;
        min-height: 0;
        max-height: none;
        aspect-ratio: 9 / 16;
        overflow: hidden;
        background: #17171a;
    }
    .gb-social-workspace form.has-social-media.is-reel-post .gb-social-preview-media video,
    .gb-social-workspace form.has-social-media.is-story-post .gb-social-preview-media video,
    .gb-social-workspace form.has-social-media.has-vertical-video .gb-social-preview-media video {
        display: block;
        width: 100%;
        height: 100%;
        max-height: none;
        margin: 0;
        object-fit: cover;
    }
}

/* 0.23.43 | Reserva compacta: miniatura, datos y acciones */
@media (max-width: 782px) {
    .gb-owner-workspace .gb-bookings-table tr {
        position: relative;
        grid-template-columns: 82px minmax(0, 1fr) 92px;
        grid-template-rows: auto auto auto auto;
        align-items: start;
        gap: 4px 8px;
        min-height: 0;
        padding: 10px;
    }
    .gb-owner-workspace .gb-bookings-table td {
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 4px;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(1) { grid-column:2;grid-row:2; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(2) { grid-column:2;grid-row:1; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(3) { grid-column:2;grid-row:3; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(4) {
        position: static;
        grid-column: 1;
        grid-row: 1 / 5;
        align-self: stretch;
    }
    .gb-owner-workspace .gb-photo-preview {
        width: 82px;
        min-width: 82px;
        height: 100%;
        min-height: 122px;
    }
    .gb-owner-workspace .gb-photo-preview img {
        height: 100%;
        min-height: 114px;
        max-height: 142px;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5) {
        position: static;
        grid-column: 3;
        grid-row: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 92px;
        min-width: 92px;
        padding: 0;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(6) {
        grid-column: 2;
        grid-row: 4;
        grid-template-columns: 42px minmax(0,1fr);
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(7) {
        position: static;
        grid-column: 3;
        grid-row: 2 / 5;
        align-self: start;
        width: 92px;
        padding: 2px 0 0;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions {
        width: 92px;
        gap: 6px;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button {
        width: 92px;
        min-width: 92px;
        min-height: 44px;
        font-size: 10px;
    }
    .gb-owner-workspace .gb-bookings-table .gb-pill {
        justify-content: center;
        width: 92px;
        max-width: 92px;
        min-height: 28px;
        padding: 6px 5px;
        overflow: hidden;
        font-size: 9px;
        text-align: center;
        text-overflow: ellipsis;
    }
}

@media (max-width: 390px) {
    .gb-owner-workspace .gb-bookings-table tr {
        grid-template-columns: 72px minmax(0, 1fr) 82px;
        gap: 4px 6px;
        padding: 8px;
    }
    .gb-owner-workspace .gb-photo-preview { width:72px;min-width:72px; }
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),
    .gb-owner-workspace .gb-bookings-table td:nth-child(7),
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button,
    .gb-owner-workspace .gb-bookings-table .gb-pill { width:82px;min-width:82px;max-width:82px; }
    .gb-owner-workspace .gb-bookings-table td,
    .gb-owner-workspace .gb-bookings-table td:nth-child(6) { grid-template-columns:34px minmax(0,1fr); }
    .gb-owner-workspace .gb-bookings-table td::before { font-size:6px; }
    .gb-owner-workspace .gb-bookings-table td strong { font-size:10px; }
}

/* 0.23.45 | Prioridad final: reservas finas y calendarios sin barra blanca */
@media (max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:82px minmax(0,1fr) 88px;gap:5px 8px}
    .gb-owner-workspace .gb-bookings-table td{min-width:0;font-size:10px;font-weight:500;line-height:1.25}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:6.5px;font-weight:800;letter-spacing:.055em}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)::before{grid-row:auto}
    .gb-owner-workspace .gb-bookings-table .gb-client-phone{display:none}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong,.gb-owner-workspace .gb-bookings-table td:nth-child(3){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{display:block;grid-column:2;max-width:100%;font-size:10px;font-weight:750}
    .gb-owner-workspace .gb-bookings-table td:nth-child(1),.gb-owner-workspace .gb-bookings-table td:nth-child(6){white-space:nowrap}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){justify-self:center;align-self:center;width:88px;min-width:88px}
    .gb-owner-workspace .gb-bookings-table .gb-pill{width:max-content;min-width:70px;max-width:84px;min-height:26px;padding:5px 9px;font-size:9px;line-height:1}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){display:flex;justify-content:center;width:88px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions{width:80px;gap:8px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:80px;min-width:80px;min-height:40px;padding:6px 5px;border-radius:9px;font-size:9px;line-height:1.15}
    .gb-owner-workspace .gb-calendar .gb-month-grid .gb-day,.gb-owner-workspace .gb-closure-grid .gb-day{min-height:44px;height:44px;padding:5px;border-radius:7px}
    .gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-selected,.gb-owner-workspace .gb-closure-grid .gb-day.is-selected,.gb-owner-workspace .gb-closure-grid .gb-close-day:has(input:checked){border-color:#d45145;background:linear-gradient(135deg,#c94742,#ee5a20);color:#fff}
    .gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-selected>strong,.gb-owner-workspace .gb-calendar .gb-month-grid .gb-day.is-selected>span,.gb-owner-workspace .gb-closure-grid .gb-day.is-selected>strong,.gb-owner-workspace .gb-closure-grid .gb-close-day:has(input:checked)>strong{display:block;width:auto;height:auto;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#fff;box-shadow:none}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:72px minmax(0,1fr) 80px;gap:4px 6px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),.gb-owner-workspace .gb-bookings-table td:nth-child(7){width:80px;min-width:80px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,.gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:74px;min-width:74px}
    .gb-owner-workspace .gb-bookings-table .gb-pill{width:max-content;min-width:66px;max-width:76px}
}

/* 0.23.50 | Reservas: tipografía legible, ritmo compacto y acciones breves */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:88px minmax(0,1fr) 78px;grid-template-rows:repeat(4,auto);column-gap:9px;row-gap:1px;padding:9px}
    .gb-owner-workspace .gb-bookings-table td{grid-template-columns:50px minmax(0,1fr);gap:5px;min-height:25px;align-items:center;font-size:13px;line-height:1.12}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:8.5px;line-height:1;letter-spacing:.035em}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:13px;line-height:1.12}
    .gb-owner-workspace .gb-bookings-table td:nth-child(4){grid-row:1/5}
    .gb-owner-workspace .gb-photo-preview{width:88px;min-width:88px;min-height:116px;height:100%}
    .gb-owner-workspace .gb-photo-preview img{min-height:112px;max-height:132px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){align-self:start;justify-self:end;width:78px;min-width:78px;align-items:flex-start;justify-content:flex-end}
    .gb-owner-workspace .gb-bookings-table .gb-pill{width:max-content;min-width:70px;max-width:78px;min-height:27px;padding:6px 8px;font-size:10.5px;line-height:1}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){align-self:start;justify-self:end;width:78px;padding-top:1px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions{width:72px;gap:8px;justify-items:stretch}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:72px;min-width:72px;min-height:36px;height:36px;padding:5px;border-radius:8px;font-size:11px;line-height:1}
    .gb-owner-workspace .gb-wedding-archive-row>b{width:76px;min-height:34px;padding:6px;font-size:10px;line-height:1;white-space:nowrap}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:78px minmax(0,1fr) 72px;column-gap:7px;padding:8px}
    .gb-owner-workspace .gb-bookings-table td{grid-template-columns:45px minmax(0,1fr);gap:4px;font-size:12px}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:8px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:12px}
    .gb-owner-workspace .gb-photo-preview{width:78px;min-width:78px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),.gb-owner-workspace .gb-bookings-table td:nth-child(7){width:72px;min-width:72px}
    .gb-owner-workspace .gb-bookings-table .gb-pill{min-width:66px;max-width:72px;font-size:10px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,.gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:66px;min-width:66px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{font-size:10.5px}
}

/* 0.23.49 | Facturación unificada con las pastillas de Marketing */
@media(max-width:782px){
    .gb-invoices .gb-heading{margin-bottom:12px}
    .gb-invoices .gb-heading p{margin-top:4px;font-size:13px;line-height:1.35}
    .gb-invoices>.gb-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 12px}
    .gb-invoices>.gb-cards .gb-card{display:flex;min-width:0;min-height:60px;margin:0;padding:8px 5px;align-items:center;justify-content:center;flex-direction:row;gap:3px;box-sizing:border-box;border:0;border-radius:10px;background:#c95047;color:#fff;box-shadow:none;text-align:center}
    .gb-invoices>.gb-cards .gb-card strong,.gb-invoices>.gb-cards .gb-card span{display:inline;margin:0;color:#fff;font-size:11px;font-weight:800;line-height:1.15;letter-spacing:0;text-transform:none;white-space:normal}
    .gb-invoices>.gb-cards .gb-card strong{flex:none;font-size:13px}
    .gb-invoices .gb-invoice-history{padding:14px 10px}
    .gb-invoices .gb-invoice-history .gb-section-heading{display:flex;margin:0 0 10px;align-items:flex-end;justify-content:space-between;gap:8px}
    .gb-invoices .gb-invoice-history .gb-section-heading h2{font-size:19px;line-height:1.1}
    .gb-invoices .gb-invoice-history .gb-section-heading>p{max-width:150px;margin:0;font-size:9.5px;line-height:1.25;text-align:right}
    .gb-invoices .gb-invoice-history .gb-table-scroll{overflow:visible}
    .gb-invoices .gb-invoice-table,.gb-invoices .gb-invoice-table tbody{display:block;width:100%;border:0;background:transparent}
    .gb-invoices .gb-invoice-table thead{display:none}
    .gb-invoices .gb-invoice-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;margin:0 0 9px;padding:10px;border:1px solid #eaded9;border-radius:12px;background:#fff;box-shadow:none}
    .gb-invoices .gb-invoice-table td{display:block;width:auto;min-width:0;margin:0;padding:0;border:0;background:transparent;color:#5f6267;font-size:11.5px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .gb-invoices .gb-invoice-table td::before{display:none;content:none}
    .gb-invoices .gb-invoice-table td:nth-child(1){grid-column:1;grid-row:1;color:#343742}
    .gb-invoices .gb-invoice-table td:nth-child(1) strong{font-size:12px}
    .gb-invoices .gb-invoice-table td:nth-child(2){grid-column:2;grid-row:2;text-align:right}
    .gb-invoices .gb-invoice-table td:nth-child(3){grid-column:1;grid-row:2;color:#343742;font-weight:750}
    .gb-invoices .gb-invoice-table td:nth-child(4){grid-column:1;grid-row:3}
    .gb-invoices .gb-invoice-table td:nth-child(5){grid-column:2;grid-row:3;text-align:right;color:#343742}
    .gb-invoices .gb-invoice-table td:nth-child(5) small{display:none}
    .gb-invoices .gb-invoice-table td:nth-child(6){display:flex;grid-column:2;grid-row:1;align-items:center;justify-content:flex-end;overflow:visible}
    .gb-invoices .gb-invoice-table .gb-pill{display:inline-flex;min-height:26px;padding:5px 10px;align-items:center;justify-content:center;border-radius:999px;font-size:10px;line-height:1;text-decoration:none}
    .gb-invoices .gb-invoice-table td:nth-child(7){grid-column:1/-1;grid-row:4;margin-top:3px;overflow:visible;white-space:normal}
    .gb-invoices .gb-invoice-table .gb-actions{display:flex;margin:0;gap:6px;align-items:center;justify-content:flex-start;flex-wrap:wrap}
    .gb-invoices .gb-invoice-table .gb-actions .button{display:inline-flex;width:auto;min-width:54px;min-height:36px;margin:0;padding:6px 10px;align-items:center;justify-content:center;border:1px solid #c95047;border-radius:8px;background:#fff;color:#9e403a;font-size:10px;font-weight:750;line-height:1.05;box-shadow:none;text-align:center;white-space:normal}
    .gb-invoices .gb-invoice-table .gb-actions .button-primary{border-color:#d24a38;background:linear-gradient(135deg,#cc4942,#ed5b20);color:#fff}
    .gb-invoices .gb-invoice-table .gb-actions .gb-danger{margin-left:auto}
}
@media(max-width:390px){
    .gb-invoices>.gb-cards{gap:5px}
    .gb-invoices>.gb-cards .gb-card{min-height:56px;padding:7px 4px}
    .gb-invoices>.gb-cards .gb-card strong{font-size:12px}
    .gb-invoices>.gb-cards .gb-card span{font-size:9.5px}
    .gb-invoices .gb-invoice-table .gb-actions{gap:5px}
    .gb-invoices .gb-invoice-table .gb-actions .button{min-width:50px;padding:6px 8px;font-size:9.5px}
}

/* 0.23.46 | Botonera visualmente ligera con pulsación cómoda */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table td{font-size:11px;line-height:1.3}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:7px;line-height:1.1}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:11px;line-height:1.2}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){display:flex;align-items:center;justify-content:center}
    .gb-owner-workspace .gb-bookings-table .gb-pill{min-width:68px;max-width:82px;min-height:25px;padding:5px 8px;font-size:10px;font-weight:750}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){display:flex;align-items:flex-start;justify-content:center}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions{display:grid;justify-items:center;width:100%;gap:12px;padding:3px 0 4px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{position:relative;width:72px;min-width:72px;min-height:36px;height:36px;padding:5px 6px;border-radius:8px;font-size:10.5px;font-weight:750;line-height:1.1;box-shadow:none}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button::after{content:'';position:absolute;inset:-4px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button:not(.gb-danger){box-shadow:0 4px 9px rgba(210,72,48,.14)}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table td{font-size:10.5px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:10.5px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:68px;min-width:68px;font-size:10px}
}

/* 0.23.47 | Reserva VIP alineada y compacta */
@media(max-width:782px){
    .gb-owner-workspace .gb-wedding-archive{gap:6px;margin-bottom:10px}
    .gb-owner-workspace .gb-wedding-archive-title{gap:4px 8px;margin:0;padding:0 2px}
    .gb-owner-workspace .gb-wedding-archive-title span{font-size:8px}
    .gb-owner-workspace .gb-wedding-archive-title strong{font-size:11px}
    .gb-owner-workspace .gb-wedding-archive-row{display:grid;grid-template-columns:42px minmax(0,1fr) 84px;grid-template-rows:auto auto;align-items:center;gap:5px 8px;min-height:0;padding:9px;border-radius:12px}
    .gb-owner-workspace .gb-wedding-archive-crown{grid-column:1;grid-row:1/3;align-self:center;width:42px;height:42px;border-radius:11px}
    .gb-owner-workspace .gb-wedding-archive-crown svg{width:23px}
    .gb-owner-workspace .gb-wedding-archive-date{display:grid;grid-column:2;grid-row:1;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:4px;min-width:0}
    .gb-owner-workspace .gb-wedding-archive-client{display:grid;grid-column:2;grid-row:2;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:baseline;gap:3px 5px;min-width:0}
    .gb-owner-workspace .gb-wedding-archive-client em{grid-column:1/-1;grid-row:2;justify-self:start}
    .gb-owner-workspace .gb-wedding-archive-row small,.gb-owner-workspace .gb-wedding-archive-row strong,.gb-owner-workspace .gb-wedding-archive-row em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .gb-owner-workspace .gb-wedding-archive-row small{font-size:7px;line-height:1.1}
    .gb-owner-workspace .gb-wedding-archive-row strong{font-size:10px;line-height:1.15}
    .gb-owner-workspace .gb-wedding-archive-row em{font-size:8.5px;line-height:1.15}
    .gb-owner-workspace .gb-wedding-archive-status{grid-column:3;grid-row:1;align-self:center;justify-self:center;width:max-content;max-width:80px;padding:5px 7px;font-size:7.5px;line-height:1;text-align:center;white-space:nowrap}
    .gb-owner-workspace .gb-wedding-archive-row>b{grid-column:3;grid-row:2;align-self:center;justify-self:center;font-size:8.5px;line-height:1.1;text-align:center;white-space:nowrap}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-wedding-archive-row{grid-template-columns:38px minmax(0,1fr) 76px;gap:4px 6px;padding:8px}
    .gb-owner-workspace .gb-wedding-archive-crown{width:38px;height:38px}
    .gb-owner-workspace .gb-wedding-archive-status{max-width:74px;font-size:7px}
    .gb-owner-workspace .gb-wedding-archive-row>b{font-size:8px}
}

/* 0.23.48 | Responsive de acabado premium y guías de composición */
.gb-safe-guide-toggle{display:block;width:max-content;max-width:calc(100% - 16px);min-height:32px;margin:7px 8px 7px auto;padding:6px 10px;border:1px solid #d9a197;border-radius:8px;background:#fff;color:#9e403a;font-size:10px;font-weight:800;line-height:1;cursor:pointer}
.gb-safe-guide-toggle[hidden]{display:none}
.gb-social-preview-media .gb-safe-zone-guide{position:absolute;z-index:8;inset:0;display:block;overflow:hidden;pointer-events:none}
.gb-social-preview-media .gb-safe-zone-guide[hidden]{display:none}
.gb-safe-zone-guide i{position:absolute;display:block;border:1px dashed rgba(215,75,48,.52);background:rgba(238,87,33,.16);box-sizing:border-box}
.gb-safe-zone-guide .is-top{top:0;right:0;left:0;height:12%}
.gb-safe-zone-guide .is-bottom{right:0;bottom:0;left:0;height:16%}
.gb-safe-zone-guide.is-story .is-top{height:13%}
.gb-safe-zone-guide.is-story .is-bottom{height:17%}
.gb-safe-zone-guide.is-reel .is-caption{bottom:16%;left:0;width:58%;height:18%}
.gb-safe-zone-guide.is-reel .is-actions{right:0;bottom:16%;width:14%;height:43%}
@media(max-width:782px){
    .gb-safe-guide-toggle{min-height:30px;margin:6px 7px;padding:5px 9px;font-size:9px}
    .gb-owner-workspace .gb-bookings-table td{font-size:12px;line-height:1.28}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:8px;line-height:1.1}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:12px;line-height:1.18}
    .gb-owner-workspace .gb-bookings-table .gb-pill{font-size:10.5px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{font-size:11px}
    .gb-owner-workspace .gb-wedding-archive-row{grid-template-columns:48px minmax(0,1fr) 82px;grid-template-rows:auto auto;gap:6px 8px;padding:9px 10px}
    .gb-owner-workspace .gb-wedding-archive-crown{grid-column:1;grid-row:1/3;width:48px;height:48px;border-radius:12px}
    .gb-owner-workspace .gb-wedding-archive-crown svg{width:27px}
    .gb-owner-workspace .gb-wedding-archive-client{display:grid;grid-column:2;grid-row:1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:baseline;gap:5px;min-width:0}
    .gb-owner-workspace .gb-wedding-archive-date{display:grid;grid-column:2;grid-row:2;grid-template-columns:auto auto auto minmax(0,1fr);align-items:baseline;gap:4px;min-width:0}
    .gb-owner-workspace .gb-wedding-archive-row small{font-size:7.5px}
    .gb-owner-workspace .gb-wedding-archive-row strong{font-size:10.5px}
    .gb-owner-workspace .gb-wedding-archive-row em{font-size:9px}
    .gb-owner-workspace .gb-wedding-archive-place{min-width:0;overflow:hidden;color:#6f685d;font-size:9px;font-style:italic;text-overflow:ellipsis;white-space:nowrap}
    .gb-owner-workspace .gb-wedding-archive-status{grid-column:3;grid-row:1;align-self:center;justify-self:center;width:max-content;min-width:62px;max-width:78px;padding:6px 7px;border-radius:999px;font-size:8px;text-align:center}
    .gb-owner-workspace .gb-wedding-archive-row>b{display:flex;grid-column:3;grid-row:2;align-items:center;justify-content:center;justify-self:center;width:76px;min-height:34px;padding:5px;box-sizing:border-box;border:1px solid #9b8030;border-radius:8px;background:rgba(255,255,255,.42);color:#765f1d;font-size:9px;line-height:1.05;text-align:center;white-space:normal}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table td{font-size:11px}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:7.5px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:11px}
    .gb-owner-workspace .gb-wedding-archive-row{grid-template-columns:44px minmax(0,1fr) 76px;gap:5px 6px;padding:8px}
    .gb-owner-workspace .gb-wedding-archive-crown{width:44px;height:44px}
    .gb-owner-workspace .gb-wedding-archive-date{gap:3px}
    .gb-owner-workspace .gb-wedding-archive-date small{display:none}
    .gb-owner-workspace .gb-wedding-archive-status{min-width:58px;max-width:72px;font-size:7.5px}
    .gb-owner-workspace .gb-wedding-archive-row>b{width:70px;min-height:34px;font-size:8.5px}
}

/* 0.23.50 | Prioridad final de lectura en reservas */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:88px minmax(0,1fr) 78px;column-gap:9px;row-gap:1px;padding:9px}
    .gb-owner-workspace .gb-bookings-table td{grid-template-columns:50px minmax(0,1fr);gap:5px;min-height:25px;align-items:center;font-size:13px;line-height:1.12}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:8.5px;line-height:1;letter-spacing:.035em}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:13px;line-height:1.12}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){align-self:start;justify-self:end;width:78px;min-width:78px;align-items:flex-start;justify-content:flex-end}
    .gb-owner-workspace .gb-bookings-table .gb-pill{min-width:70px;max-width:78px;min-height:27px;padding:6px 8px;font-size:10.5px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){align-self:start;justify-self:end;width:78px;padding-top:1px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions{width:72px;gap:8px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:72px;min-width:72px;min-height:36px;height:36px;padding:5px;border-radius:8px;font-size:11px;line-height:1}
    .gb-owner-workspace .gb-wedding-archive-row>b{width:76px;min-height:34px;padding:6px;font-size:10px;line-height:1;white-space:nowrap}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:78px minmax(0,1fr) 72px;column-gap:7px;padding:8px}
    .gb-owner-workspace .gb-bookings-table td{grid-template-columns:45px minmax(0,1fr);gap:4px;font-size:12px}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:8px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:12px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),.gb-owner-workspace .gb-bookings-table td:nth-child(7){width:72px;min-width:72px}
    .gb-owner-workspace .gb-bookings-table .gb-pill{min-width:66px;max-width:72px;font-size:10px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,.gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:66px;min-width:66px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{font-size:10.5px}
    .gb-owner-workspace .gb-wedding-archive-row>b{font-size:9.5px}
}

/* 0.23.51 | Unificación real de las pastillas de estado */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table .gb-pill,
    .gb-owner-workspace .gb-wedding-archive-status{
        display:inline-flex;
        width:max-content;
        min-width:70px;
        max-width:78px;
        min-height:27px;
        padding:6px 8px;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        border:0;
        border-radius:999px;
        font-size:8.5px;
        font-weight:850;
        line-height:1;
        letter-spacing:.025em;
        text-align:center;
        text-decoration:none;
        text-transform:uppercase;
        white-space:nowrap;
    }
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-confirmed{background:#e5f5ed;color:#176b4c}
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-cancelled,
    .gb-owner-workspace .gb-bookings-table .gb-pill.is-rejected{background:#fff0ef;color:#a43f3a}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table .gb-pill,
    .gb-owner-workspace .gb-wedding-archive-status{min-width:66px;max-width:72px;font-size:8px}
}

/* 0.23.52 | Selector discreto de zona segura dentro de la cabecera */
.gb-social-preview-head .gb-safe-guide-toggle{
    display:inline-flex;
    width:auto;
    max-width:none;
    min-height:28px;
    margin:0 0 0 auto;
    padding:4px 2px 4px 8px;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:#7b7472;
    box-shadow:none;
    font-size:9px;
    font-weight:750;
    line-height:1;
    cursor:pointer;
    white-space:nowrap;
}
.gb-social-preview-head .gb-safe-guide-toggle i{
    display:block;
    flex:0 0 11px;
    width:11px;
    height:11px;
    box-sizing:border-box;
    border:2px solid #d45145;
    border-radius:50%;
    background:#fff;
    box-shadow:none;
}
.gb-social-preview-head .gb-safe-guide-toggle.is-active i{
    border-color:#d45145;
    background:#d45145;
    box-shadow:0 0 0 3px rgba(212,81,69,.14);
}
.gb-social-preview-head .gb-safe-guide-toggle:hover,
.gb-social-preview-head .gb-safe-guide-toggle:focus{color:#9e403a;outline:none}
.gb-social-preview-head .gb-safe-guide-toggle[hidden]{display:none}
@media(max-width:390px){
    .gb-social-preview-head .gb-safe-guide-toggle{min-height:26px;padding-right:0;gap:5px;font-size:8px}
    .gb-social-preview-head .gb-safe-guide-toggle i{flex-basis:10px;width:10px;height:10px}
}

/* 0.23.53 | Estados de cita con la misma estructura real que RESERVADA */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:88px minmax(0,1fr) 82px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){align-self:start;justify-self:center;width:82px;min-width:82px;align-items:flex-start;justify-content:center}
    .gb-owner-workspace .gb-booking-status,
    .gb-owner-workspace .gb-wedding-archive-status{
        display:inline-flex;
        width:max-content;
        min-width:70px;
        max-width:78px;
        min-height:27px;
        padding:6px 8px;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        border:0;
        border-radius:999px;
        font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
        font-size:8.5px;
        font-weight:900;
        font-style:normal;
        line-height:1;
        letter-spacing:0;
        text-align:center;
        text-transform:uppercase;
        white-space:nowrap;
    }
    .gb-owner-workspace .gb-booking-status.is-confirmed{background:#e5f5ed;color:#176b4c}
    .gb-owner-workspace .gb-booking-status.is-cancelled,
    .gb-owner-workspace .gb-booking-status.is-rejected{background:#fff0ef;color:#a43f3a}
    .gb-owner-workspace .gb-booking-status.is-pending_review{background:#fff4dc;color:#825e0b}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:78px minmax(0,1fr) 76px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){width:76px;min-width:76px}
    .gb-owner-workspace .gb-booking-status,
    .gb-owner-workspace .gb-wedding-archive-status{min-width:66px;max-width:72px;font-size:8px}
}

/* 0.23.54 | Zonas reales de interfaz para Reel y Story */
.gb-social-preview-media .gb-safe-zone-guide i{
    border:1px dashed rgba(215,75,48,.58);
    background:rgba(238,87,33,.17);
}
.gb-social-preview-media .gb-safe-zone-guide.is-reel .is-top{
    top:3.5%;
    right:1.8%;
    left:1.8%;
    height:8%;
    border-radius:5px;
}
.gb-social-preview-media .gb-safe-zone-guide.is-reel .is-bottom{
    right:1.8%;
    bottom:1.2%;
    left:1.8%;
    height:12%;
    border-radius:5px;
}
.gb-social-preview-media .gb-safe-zone-guide.is-reel .is-caption{
    bottom:13.8%;
    left:1.8%;
    width:44%;
    height:11%;
    border-radius:5px;
}
.gb-social-preview-media .gb-safe-zone-guide.is-reel .is-actions{
    right:1.8%;
    bottom:13.8%;
    width:11.5%;
    height:40%;
    border-radius:5px;
}
.gb-social-preview-media .gb-safe-zone-guide.is-story .is-top{
    top:3.5%;
    right:1.8%;
    left:1.8%;
    height:8%;
    border-radius:5px;
}

/* 0.23.55 | Reservas aún más compactas sin perder legibilidad */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{
        grid-template-columns:82px minmax(0,1fr) 78px;
        grid-template-rows:repeat(4,22px);
        column-gap:8px;
        row-gap:0;
        padding:7px 8px;
        align-items:center;
    }
    .gb-owner-workspace .gb-bookings-table td{
        grid-template-columns:50px minmax(0,1fr);
        min-height:22px;
        height:22px;
        margin:0;
        padding:0;
        align-items:center;
        gap:5px;
        font-size:12.5px;
        line-height:1;
    }
    .gb-owner-workspace .gb-bookings-table td::before{justify-self:start;font-size:8.5px;line-height:1}
    .gb-owner-workspace .gb-bookings-table td:nth-child(1),
    .gb-owner-workspace .gb-bookings-table td:nth-child(2),
    .gb-owner-workspace .gb-bookings-table td:nth-child(3),
    .gb-owner-workspace .gb-bookings-table td:nth-child(6){justify-items:start;text-align:left}
    .gb-owner-workspace .gb-bookings-table td:nth-child(1),
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong,
    .gb-owner-workspace .gb-bookings-table td:nth-child(3),
    .gb-owner-workspace .gb-bookings-table td:nth-child(6){margin-left:0;padding-left:0;justify-self:stretch}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:12.5px;line-height:1}
    .gb-owner-workspace .gb-bookings-table td:nth-child(4){grid-row:1/5;height:88px;align-self:center}
    .gb-owner-workspace .gb-photo-preview{width:82px;min-width:82px;height:88px;min-height:88px;border-radius:9px}
    .gb-owner-workspace .gb-photo-preview img{width:100%;height:88px;min-height:88px;max-height:88px;object-fit:cover}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){width:78px;min-width:78px;height:27px;min-height:27px;align-self:start;justify-self:center;justify-content:center}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){width:78px;height:auto;min-height:0;align-self:start;justify-self:center;padding-top:2px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions{width:72px;gap:6px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:72px;min-width:72px;min-height:34px;height:34px;padding:4px}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:76px minmax(0,1fr) 72px;column-gap:6px;padding:7px}
    .gb-owner-workspace .gb-bookings-table td{grid-template-columns:44px minmax(0,1fr);gap:4px;font-size:11.5px}
    .gb-owner-workspace .gb-bookings-table td::before{font-size:8px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(2)>strong{font-size:11.5px}
    .gb-owner-workspace .gb-photo-preview,.gb-owner-workspace .gb-photo-preview img{width:76px;min-width:76px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),.gb-owner-workspace .gb-bookings-table td:nth-child(7){width:72px;min-width:72px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,.gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:66px;min-width:66px}
}

/* 0.23.59 | Margen inferior de reservas y datos útiles en la reserva VIP */
.gb-owner-workspace .gb-wedding-archive-date{
    display:grid;
    grid-template-columns:auto auto minmax(120px,1fr);
    align-items:end;
    gap:8px 14px;
    min-width:0;
}
.gb-owner-workspace .gb-wedding-archive-date>span{display:grid;min-width:0;gap:3px}
.gb-owner-workspace .gb-wedding-archive-date>span>*{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{
        grid-template-rows:repeat(4,29px);
        min-height:140px;
        padding:8px 8px 14px;
    }
    .gb-owner-workspace .gb-bookings-table td{min-height:29px;height:29px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(4){height:116px}
    .gb-owner-workspace .gb-photo-preview{height:116px;min-height:116px}
    .gb-owner-workspace .gb-photo-preview img{height:116px;min-height:116px;max-height:116px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){height:27px;min-height:27px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){padding-top:10px}
    .gb-owner-workspace .gb-wedding-archive-row{grid-template-rows:auto auto;min-height:82px;padding:10px}
    .gb-owner-workspace .gb-wedding-archive-client{grid-row:1;align-self:end}
    .gb-owner-workspace .gb-wedding-archive-date{
        grid-column:2;
        grid-row:2;
        grid-template-columns:auto auto minmax(0,1fr);
        align-items:start;
        gap:5px 9px;
    }
    .gb-owner-workspace .gb-wedding-archive-date>span{gap:2px}
    .gb-owner-workspace .gb-wedding-archive-date small{display:block;font-size:7px;line-height:1}
    .gb-owner-workspace .gb-wedding-archive-date strong,
    .gb-owner-workspace .gb-wedding-archive-date em,
    .gb-owner-workspace .gb-wedding-archive-place{font-size:9px;line-height:1.1}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{min-height:138px;padding-bottom:13px}
    .gb-owner-workspace .gb-wedding-archive-row{min-height:80px;padding:9px}
    .gb-owner-workspace .gb-wedding-archive-date{gap:4px 6px}
    .gb-owner-workspace .gb-wedding-archive-date small{display:block;font-size:6.5px}
    .gb-owner-workspace .gb-wedding-archive-date strong,.gb-owner-workspace .gb-wedding-archive-date em,.gb-owner-workspace .gb-wedding-archive-place{font-size:8.5px}
}

/* 0.23.58 | Directorio de clientas compacto con cinco fichas visibles */
@media(max-width:782px){
    .gb-owner-workspace .gb-client-directory{padding:15px}
    .gb-owner-workspace .gb-client-directory-head{
        display:grid;
        grid-template-columns:1fr;
        gap:10px;
        margin-bottom:12px;
        align-items:start;
    }
    .gb-owner-workspace .gb-client-directory-head h2{margin:0;font-size:20px;line-height:1.15}
    .gb-owner-workspace .gb-client-directory-head p{margin:5px 0 0;font-size:12.5px;line-height:1.35}
    .gb-owner-workspace .gb-client-directory-head label{gap:5px;font-size:12px}
    .gb-owner-workspace .gb-client-directory-head input{min-height:42px;padding:7px 11px;font-size:13px}
    .gb-owner-workspace .gb-client-access-list{
        display:grid;
        gap:8px;
        max-height:442px;
        padding:0 6px 0 0;
        overflow-x:hidden;
        overflow-y:auto;
        overscroll-behavior:contain;
        scroll-snap-type:y proximity;
        scrollbar-color:#c95047 #f4ebe7;
        scrollbar-width:thin;
    }
    .gb-owner-workspace .gb-client-access-list::-webkit-scrollbar{width:5px}
    .gb-owner-workspace .gb-client-access-list::-webkit-scrollbar-track{border-radius:999px;background:#f4ebe7}
    .gb-owner-workspace .gb-client-access-list::-webkit-scrollbar-thumb{border-radius:999px;background:#c95047}
    .gb-owner-workspace .gb-client-record{scroll-snap-align:start;border-radius:11px}
    .gb-owner-workspace .gb-client-record summary{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        min-height:82px;
        padding:10px 11px;
        align-items:center;
        column-gap:10px;
        row-gap:4px;
        box-sizing:border-box;
    }
    .gb-owner-workspace .gb-client-record summary>span:first-child{display:block;min-width:0;overflow:hidden}
    .gb-owner-workspace .gb-client-record summary>span:first-child strong{
        min-width:0;
        overflow:hidden;
        font-size:16px;
        line-height:1.15;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .gb-owner-workspace .gb-client-record summary>span:first-child small{
        display:-webkit-box;
        margin-top:5px;
        overflow:hidden;
        color:#6e7178;
        font-size:11px;
        line-height:1.3;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:2;
    }
    .gb-owner-workspace .gb-test-badge{margin-left:5px;padding:3px 6px;font-size:8px}
    .gb-owner-workspace .gb-client-summary-actions{
        display:grid;
        grid-template-columns:1fr;
        width:70px;
        align-items:center;
        justify-items:stretch;
        gap:7px;
    }
    .gb-owner-workspace .gb-client-summary-actions b,
    .gb-owner-workspace .gb-client-summary-actions .button{
        display:flex;
        width:70px;
        min-width:70px;
        min-height:32px;
        height:32px;
        margin:0;
        padding:5px 6px;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        border-radius:8px;
        font-size:10px;
        font-weight:800;
        line-height:1;
        text-align:center;
    }
    .gb-owner-workspace .gb-client-summary-actions b{border:1px solid #d45145;background:#d45145;color:#fff}
    .gb-owner-workspace .gb-client-summary-actions .button{border:1px solid #c95047;background:#fff;color:#9e403a}
    .gb-owner-workspace .gb-client-edit-form{padding:12px}
    .gb-owner-workspace .gb-client-edit-form .gb-fields{gap:9px}
    .gb-owner-workspace .gb-pending-clients,.gb-owner-workspace .gb-rejected-panel{padding:15px}
    .gb-owner-workspace .gb-pending-clients .gb-service,.gb-owner-workspace .gb-rejected-panel .gb-service{gap:10px;padding:11px;border-radius:11px}
    .gb-owner-workspace .gb-pending-clients .gb-service strong,.gb-owner-workspace .gb-rejected-panel .gb-service strong{font-size:14px}
    .gb-owner-workspace .gb-pending-clients .gb-service span,.gb-owner-workspace .gb-rejected-panel .gb-service span{font-size:11px;line-height:1.3}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-client-directory{padding:12px}
    .gb-owner-workspace .gb-client-access-list{max-height:422px;padding-right:5px}
    .gb-owner-workspace .gb-client-record summary{grid-template-columns:minmax(0,1fr) 66px;min-height:78px;padding:9px;column-gap:7px}
    .gb-owner-workspace .gb-client-record summary>span:first-child strong{font-size:14.5px}
    .gb-owner-workspace .gb-client-record summary>span:first-child small{font-size:10.5px}
    .gb-owner-workspace .gb-client-summary-actions,.gb-owner-workspace .gb-client-summary-actions b,.gb-owner-workspace .gb-client-summary-actions .button{width:66px;min-width:66px}
}

/* 0.23.56 | Facturación alineada y con acciones horizontales */
@media(max-width:782px){
    .gb-invoices>.gb-cards .gb-card{gap:7px}
    .gb-invoices>.gb-cards .gb-card strong{flex:0 0 auto}
    .gb-invoices>.gb-cards .gb-card span{flex:0 1 auto}
    .gb-invoices .gb-invoice-history .gb-section-heading{
        display:flex;
        width:100%;
        margin:0 0 12px;
        padding:0;
        align-items:flex-start;
        justify-content:flex-start;
        flex-direction:column;
        gap:5px;
        box-sizing:border-box;
        text-align:left;
    }
    .gb-invoices .gb-invoice-history .gb-section-heading>div,
    .gb-invoices .gb-invoice-history .gb-section-heading h2,
    .gb-invoices .gb-invoice-history .gb-section-heading .gb-kicker{
        width:100%;
        margin-right:0;
        margin-left:0;
        text-align:left;
    }
    .gb-invoices .gb-invoice-history .gb-section-heading>p{
        width:100%;
        max-width:none;
        margin:0;
        font-size:10px;
        line-height:1.3;
        text-align:left;
    }
    .gb-invoices .gb-invoice-table tr{
        min-height:0;
        height:auto;
        align-items:center;
        padding:11px;
    }
    .gb-invoices .gb-invoice-table td:nth-child(7){margin-top:5px;padding-top:8px;border-top:1px solid #eee3df}
    .gb-invoices .gb-invoice-table .gb-actions{
        display:flex;
        width:100%;
        margin:0;
        padding:0;
        align-items:center;
        justify-content:flex-start;
        flex-direction:row;
        flex-wrap:wrap;
        gap:6px;
    }
    .gb-invoices .gb-invoice-table .gb-actions .button{
        flex:0 0 auto;
        width:auto;
        min-width:52px;
        min-height:34px;
        height:34px;
        margin:0;
        padding:5px 9px;
        border-radius:8px;
        font-size:10px;
        line-height:1;
    }
    .gb-invoices .gb-invoice-table .gb-actions .button-primary{min-width:88px}
    .gb-invoices .gb-invoice-table .gb-actions .gb-danger{margin-left:0}
}
@media(max-width:390px){
    .gb-invoices>.gb-cards .gb-card{gap:4px}
    .gb-invoices>.gb-cards .gb-card strong{font-size:11.5px}
    .gb-invoices>.gb-cards .gb-card span{font-size:9.5px}
    .gb-invoices .gb-invoice-table .gb-actions{gap:5px}
    .gb-invoices .gb-invoice-table .gb-actions .button{min-width:48px;padding:5px 7px;font-size:9.5px}
    .gb-invoices .gb-invoice-table .gb-actions .button-primary{min-width:82px}
}

/* 0.23.57 | Separación segura global y retícula estable de reservas */
.gb-owner-workspace .gb-actions{
    column-gap:10px;
    row-gap:10px;
}
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{
        grid-template-columns:82px minmax(0,1fr) 78px;
        grid-template-rows:repeat(4,27px);
        min-height:122px;
        height:auto;
        column-gap:8px;
        row-gap:0;
        padding:7px 8px;
        overflow:hidden;
    }
    .gb-owner-workspace .gb-bookings-table td{
        grid-template-columns:50px minmax(0,1fr);
        min-height:27px;
        height:27px;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(6){
        display:grid;
        grid-template-columns:50px minmax(0,1fr);
        justify-items:start;
        text-align:left;
    }
    .gb-owner-workspace .gb-bookings-table td:nth-child(4){height:108px}
    .gb-owner-workspace .gb-photo-preview{height:108px;min-height:108px}
    .gb-owner-workspace .gb-photo-preview img{height:108px;min-height:108px;max-height:108px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){height:27px;min-height:27px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){
        grid-row:2/5;
        height:auto;
        min-height:0;
        padding-top:10px;
        align-self:start;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions{
        display:flex;
        width:72px;
        align-items:stretch;
        flex-direction:column;
        gap:10px;
    }
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{
        flex:0 0 34px;
        width:72px;
        min-width:72px;
        height:34px;
        min-height:34px;
        margin:0;
    }
}

@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-columns:76px minmax(0,1fr) 72px;min-height:120px;column-gap:6px;padding:6px 7px}
    .gb-owner-workspace .gb-bookings-table td,
    .gb-owner-workspace .gb-bookings-table td:nth-child(6){grid-template-columns:44px minmax(0,1fr)}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5),.gb-owner-workspace .gb-bookings-table td:nth-child(7){width:72px;min-width:72px}
    .gb-owner-workspace .gb-bookings-table td:last-child .gb-actions,.gb-owner-workspace .gb-bookings-table td:last-child .gb-actions .button{width:66px;min-width:66px}
}

/* 0.23.59 | Prioridad final del margen inferior de las fichas */
@media(max-width:782px){
    .gb-owner-workspace .gb-bookings-table tr{grid-template-rows:repeat(4,29px);min-height:140px;padding:8px 8px 14px}
    .gb-owner-workspace .gb-bookings-table td{min-height:29px;height:29px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(4){height:116px}
    .gb-owner-workspace .gb-photo-preview{height:116px;min-height:116px}
    .gb-owner-workspace .gb-photo-preview img{height:116px;min-height:116px;max-height:116px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(5){height:27px;min-height:27px}
    .gb-owner-workspace .gb-bookings-table td:nth-child(7){padding-top:10px}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-bookings-table tr{min-height:138px;padding-bottom:13px}
}

/* 0.23.60 | Patrón global de separación entre bloques principales */
@media(max-width:782px){
    .gb-owner-workspace{--gb-responsive-block-gap:14px}
    .gb-owner-workspace .gb-wrap>.gb-panel{margin-bottom:0}
    .gb-owner-workspace .gb-wrap>.gb-panel+.gb-panel{margin-top:var(--gb-responsive-block-gap)}
}

/* 0.23.62 | El mismo ritmo entre bloques con estructuras internas distintas */
@media(max-width:782px){
    .gb-owner-workspace .gb-service-categories+.gb-services-layout{
        margin-top:var(--gb-responsive-block-gap);
    }
    .gb-owner-workspace .gb-marketing-grid{
        row-gap:var(--gb-responsive-block-gap);
    }
    .gb-owner-workspace .gb-marketing-save{
        margin-top:0;
    }
}

/* 0.23.64 | Pastillas y jerarquía tipográfica unificadas en Servicios */
.gb-owner-workspace .gb-ui-pill,
.gb-owner-workspace .gb-service-category{
    display:inline-flex;
    position:absolute;
    top:0;
    right:0;
    width:max-content;
    min-width:66px;
    max-width:88px;
    min-height:27px;
    padding:6px 8px;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    border:0;
    border-radius:999px;
    background:#fff0ea;
    color:#a43f3a;
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:8.5px;
    font-weight:900;
    font-style:normal;
    line-height:1;
    letter-spacing:0;
    text-align:center;
    text-transform:uppercase;
    white-space:nowrap;
}
@media(max-width:782px){
    .gb-owner-workspace .gb-service-accordion summary{gap:14px}
    .gb-owner-workspace .gb-service-summary{width:100%;gap:4px;padding-right:96px}
    .gb-owner-workspace .gb-service-summary strong{font-size:16px;font-weight:800;line-height:1.3}
    .gb-owner-workspace .gb-service-summary small{font-size:14px;font-weight:400;line-height:1.45}
    .gb-owner-workspace .gb-created-services>h2,
    .gb-owner-workspace .gb-add-service>h2{font-size:22px;font-weight:800;line-height:1.2}
    .gb-owner-workspace .gb-created-services>.gb-panel-intro,
    .gb-owner-workspace .gb-add-service>.gb-panel-intro{font-size:14px;font-weight:400;line-height:1.5}
}
@media(max-width:390px){
    .gb-owner-workspace .gb-ui-pill,
    .gb-owner-workspace .gb-service-category{min-width:62px;max-width:82px;font-size:8px}
    .gb-owner-workspace .gb-service-summary{padding-right:88px}
}

/* 0.23.106 | Contraste y acciones de clientas en la intranet móvil */
@media(max-width:782px){
    .gb-owner-workspace .gb-client-record summary>span:first-child small,
    .gb-owner-workspace .gb-pending-clients .gb-service>div:first-child span,
    .gb-owner-workspace .gb-rejected-panel .gb-service>div:first-child span{
        color:#555861;
        opacity:1;
        font-weight:500;
        text-shadow:none;
    }
    .gb-owner-workspace .gb-client-record summary>span:first-child small{
        font-size:11.5px;
        line-height:1.38;
    }
    .gb-owner-workspace .gb-pending-clients .gb-service>div:first-child span,
    .gb-owner-workspace .gb-rejected-panel .gb-service>div:first-child span{
        font-size:12px;
        line-height:1.4;
        overflow-wrap:anywhere;
    }
    .gb-owner-workspace .gb-empty{
        color:#555861;
        opacity:1;
        font-size:13px;
        font-weight:500;
        line-height:1.45;
        text-shadow:none;
    }
    .gb-owner-workspace .gb-pending-clients .gb-service{
        display:grid;
        grid-template-columns:minmax(0,1fr);
        gap:12px;
        align-items:start;
    }
    .gb-owner-workspace .gb-pending-clients .gb-service>div:first-child{
        width:100%;
        min-width:0;
    }
    .gb-owner-workspace .gb-pending-clients .gb-service>.gb-actions{
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px;
        width:100%;
        margin:0;
    }
    .gb-owner-workspace .gb-pending-clients .gb-service>.gb-actions .button{
        display:flex;
        width:100%;
        min-width:0;
        min-height:40px;
        margin:0;
        padding:8px 4px;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        border-radius:9px;
        font-size:10px;
        font-weight:850;
        line-height:1.1;
        text-align:center;
        white-space:nowrap;
    }
}

/* 0.23.107 | Agenda mensual de la clienta compacta y elegante */
@media(max-width:782px){
    .gb-public .gb-client-monthly{
        margin:0 0 18px;
        overflow:hidden;
        border:1px solid #e5dad3;
        border-radius:15px;
        background:#fff;
        box-shadow:0 8px 24px rgba(66,48,42,.045);
    }
    .gb-public .gb-client-monthly summary{
        display:flex;
        min-height:68px;
        padding:14px 16px;
        align-items:center;
        gap:12px;
        box-sizing:border-box;
        background:#fff;
    }
    .gb-public .gb-client-monthly summary span{
        min-width:0;
        gap:2px;
    }
    .gb-public .gb-client-monthly summary strong{
        color:#34353d;
        font-size:16px;
        font-weight:800;
        line-height:1.2;
    }
    .gb-public .gb-client-monthly summary small{
        color:#686a70;
        font-size:12px;
        font-weight:500;
        line-height:1.25;
    }
    .gb-public .gb-client-monthly summary b{
        flex:0 0 auto;
        color:#8d762e;
        font-size:11px;
        font-weight:800;
        white-space:nowrap;
    }
    .gb-public .gb-client-monthly-list{
        border-top:1px solid #eee5df;
    }
    .gb-public .gb-client-monthly-item{
        display:grid;
        grid-template-columns:44px minmax(0,1fr) auto;
        grid-template-rows:auto;
        gap:10px;
        min-height:72px;
        padding:12px 14px;
        align-items:center;
        box-sizing:border-box;
        border-bottom:1px solid #f0e8e3;
        background:#fff;
    }
    .gb-public .gb-client-monthly-item time{
        display:flex;
        width:42px;
        height:46px;
        margin:0;
        align-items:center;
        justify-content:center;
        flex-direction:column;
        box-sizing:border-box;
        border:1px solid #d9c58e;
        border-radius:11px;
        background:#fffdf7;
        color:#856d28;
        box-shadow:none;
    }
    .gb-public .gb-client-monthly-item time strong{
        color:#856d28;
        font-size:16px;
        font-weight:850;
        line-height:1;
    }
    .gb-public .gb-client-monthly-item time span{
        margin-top:4px;
        color:#856d28;
        font-size:8px;
        font-weight:850;
        line-height:1;
        letter-spacing:.04em;
    }
    .gb-public .gb-client-monthly-item>div{
        display:flex;
        min-width:0;
        gap:3px;
        flex-direction:column;
    }
    .gb-public .gb-client-monthly-item>div>strong{
        overflow:hidden;
        color:#34353d;
        font-size:15.5px;
        font-weight:800;
        line-height:1.2;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .gb-public .gb-client-monthly-item>div>span{
        color:#6b6d73;
        font-size:11.5px;
        font-weight:500;
        line-height:1.25;
    }
    .gb-public .gb-client-monthly-item .gb-client-cancel,
    .gb-public .gb-client-monthly-item .gb-client-contact{
        grid-column:3;
        justify-self:end;
        width:auto;
        min-width:84px;
        max-width:102px;
        min-height:34px;
        margin:0;
        padding:8px 10px;
        box-sizing:border-box;
        border-radius:999px;
        font-size:10px;
        font-weight:800;
        line-height:1.15;
        text-align:center;
    }
    .gb-public .gb-client-monthly-item>em{
        grid-column:2/4;
        justify-self:start;
        width:auto;
        margin:-2px 0 0;
        padding:0;
        color:#8a6764;
        font-size:10px;
        font-weight:750;
        line-height:1.2;
    }
    .gb-public .gb-client-monthly-item.is-cancelled{
        opacity:.68;
        background:#fcfaf9;
    }
    .gb-public .gb-client-monthly-note{
        padding:11px 14px;
        background:#fcfaf8;
        color:#6e6e72;
        font-size:10.5px;
        line-height:1.4;
    }
}
@media(max-width:390px){
    .gb-public .gb-client-monthly-item{
        grid-template-columns:42px minmax(0,1fr) auto;
        gap:8px;
        padding:11px;
    }
    .gb-public .gb-client-monthly-item .gb-client-cancel,
    .gb-public .gb-client-monthly-item .gb-client-contact{
        min-width:76px;
        max-width:88px;
        padding:7px 8px;
        font-size:9px;
    }
}

/* 0.23.111 | Auditoria integral del area de clientas.
 * Una superficie sin marco exterior, ancho real y solo dos escalas de lectura. */
body .gb-public{
    --gb-client-title-size:22px;
    --gb-client-text-size:16px;
    position:relative;
    right:auto;
    left:auto;
    width:min(1280px,calc(100% - 32px));
    max-width:1280px;
    margin:24px auto;
    padding:24px;
    box-sizing:border-box;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    transform:none;
}
body .gb-public :is(p,label,input,select,textarea,button,a,small,em,span,strong),
body .gb-public .gb-client-entry :is(span,strong,small),
body .gb-public .gb-client-monthly :is(span,small,em),
body .gb-public .gb-client-promotions :is(span,small,em){
    font-size:var(--gb-client-text-size);
    line-height:1.4;
}
body .gb-public :is(h1,h2,h3,legend),
body .gb-public .gb-calendar-head h3,
body .gb-public .gb-time-picker>h2,
body .gb-public .gb-service-group>header>span,
body .gb-public .gb-client-monthly summary strong,
body .gb-public .gb-client-vip>summary strong,
body .gb-public .gb-client-promotions>div:first-child>h2{
    font-size:var(--gb-client-title-size);
    line-height:1.2;
}
body .gb-public .gb-kicker,
body .gb-public .gb-client-identity>div>span,
body .gb-public .gb-client-vip>summary small{
    font-size:var(--gb-client-text-size);
    line-height:1.3;
    letter-spacing:.08em;
}

@media(max-width:800px){
    body .gb-public{
        --gb-client-title-size:20px;
        --gb-client-text-size:15px;
        width:calc(100vw - 24px);
        max-width:calc(100vw - 24px);
        margin:10px 0 20px calc(50% - 50vw + 12px);
        padding:8px 0 18px;
    }
    body .gb-public .gb-public-brand{margin-bottom:18px}
    body .gb-public .gb-public-brand img{max-width:min(280px,82vw)}
    body .gb-public .gb-client-identity{margin:18px 0 14px;padding:0 0 15px}
    body .gb-public .gb-client-identity h1{font-size:var(--gb-client-title-size)}
    body .gb-public .gb-calendar-head{margin:18px 0 14px}
    body .gb-public .gb-client-entry-secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 14px}
    body .gb-public .gb-client-entry-secondary a{min-height:74px;padding:13px 14px}
    body .gb-public .gb-client-entry-secondary :is(span,strong,small){overflow:visible;text-overflow:clip;white-space:normal}
    body .gb-public .gb-client-calendar{padding:10px;border-radius:14px}
    body .gb-public .gb-client-calendar-nav strong{font-size:var(--gb-client-text-size)}
    body .gb-public .gb-client-calendar-nav button{font-size:var(--gb-client-text-size)}
    body .gb-public .gb-client-week span,
    body .gb-public .gb-client-days button{font-size:var(--gb-client-text-size)}
    body .gb-public .gb-client-days button.is-appointment::after{font-size:12px;letter-spacing:.04em}
    body .gb-public .gb-time-picker .gb-empty{font-size:var(--gb-client-text-size)}
    body .gb-public .gb-client-monthly,
    body .gb-public .gb-client-vip,
    body .gb-public .gb-client-promotions{margin-right:0;margin-left:0}
    body .gb-public .gb-client-monthly summary,
    body .gb-public .gb-client-vip>summary,
    body .gb-public .gb-consent-details summary{min-height:58px;padding:13px 14px;align-items:center}
    body .gb-public .gb-client-vip{padding:0;overflow:hidden}
    body .gb-public .gb-client-vip-body{margin:0;padding:15px;border-top:1px solid #dfd0aa}
    body .gb-public .gb-client-vip>summary em{font-size:var(--gb-client-text-size);white-space:normal}
    body .gb-public .gb-client-monthly-item :is(strong,span,em),
    body .gb-public .gb-client-monthly-item .gb-client-cancel,
    body .gb-public .gb-client-monthly-item .gb-client-contact,
    body .gb-public .gb-client-monthly-note,
    body .gb-public .gb-client-vip-body :is(p,span,strong,small,em,a,button,label,input,textarea),
    body .gb-public .gb-client-promotions :is(p,span,strong,small,em,a,button,label,input){
        font-size:var(--gb-client-text-size);
        line-height:1.4;
    }
    body .gb-public .gb-client-vip-body :is(h2,h3,h4){font-size:var(--gb-client-title-size);line-height:1.2}
    body .gb-public .gb-client-promotions{padding:14px}
    body .gb-public .gb-client-promotions>div:first-child>.gb-kicker,
    body .gb-public .gb-client-promotions>div:first-child>h2,
    body .gb-public .gb-client-promotions>div:first-child>p{display:block;margin:0 0 5px}
    body .gb-public .gb-consent-details summary span{display:flex;min-width:0;gap:8px;align-items:center}
    body .gb-public .gb-consent-details summary :is(strong,small){overflow:visible;white-space:normal}
}

/* 0.23.112 | Un solo calendario para móvil real y simulador responsive. */
@media(max-width:800px){
    body .gb-public .gb-client-calendar,
    body .gb-public .gb-event-calendar{
        width:100%;
        max-width:100%;
        padding:11px;
        box-sizing:border-box;
        overflow:hidden;
    }
    body .gb-public .gb-client-calendar-nav,
    body .gb-public .gb-event-calendar-nav{
        display:grid;
        grid-template-columns:88px minmax(0,1fr) 88px;
        gap:7px;
        width:100%;
        margin:0 0 10px;
        padding:0;
        align-items:center;
        box-sizing:border-box;
        border:0;
    }
    body .gb-public .gb-client-calendar-nav button,
    body .gb-public .gb-event-calendar-nav button{
        display:flex;
        width:88px;
        min-width:0;
        height:40px;
        min-height:40px;
        padding:6px 7px;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        font-size:13px;
        line-height:1.1;
        white-space:nowrap;
    }
    body .gb-public .gb-client-calendar-nav button:first-child::after,
    body .gb-public .gb-client-calendar-nav button:last-child::after,
    body .gb-public .gb-event-calendar-nav button:first-child::after,
    body .gb-public .gb-event-calendar-nav button:last-child::after{
        display:none;
        content:none;
    }
    body .gb-public .gb-client-calendar-nav strong,
    body .gb-public .gb-event-calendar-nav strong{
        min-width:0;
        font-size:15px;
        line-height:1.15;
        text-align:center;
        text-transform:capitalize;
    }
    body .gb-public .gb-client-week,
    body .gb-public .gb-client-days,
    body .gb-public .gb-event-week,
    body .gb-public .gb-event-days{
        display:grid;
        grid-template-columns:repeat(7,minmax(0,1fr));
        gap:4px;
        width:100%;
    }
    body .gb-public .gb-client-week span,
    body .gb-public .gb-event-week span{
        padding:5px 0;
        font-size:13px;
        line-height:1;
        text-align:center;
    }
    body .gb-public .gb-client-days>button,
    body .gb-public .gb-event-days>button{
        display:flex;
        width:100%;
        min-width:0;
        height:50px;
        min-height:50px;
        padding:5px 2px;
        align-items:center;
        justify-content:center;
        flex-direction:column;
        box-sizing:border-box;
        border-radius:8px;
        font-size:15px;
        line-height:1;
        text-align:center;
    }
    body .gb-public .gb-client-days>span,
    body .gb-public .gb-event-days>span{
        width:100%;
        min-width:0;
        height:50px;
        min-height:50px;
    }
    body .gb-public .gb-client-days button.is-appointment::after{
        display:block;
        content:'CITA';
        margin-top:5px;
        color:var(--gb-primary);
        font-size:10px;
        font-weight:850;
        line-height:1;
        letter-spacing:.04em;
    }
    body .gb-public .gb-client-days button.is-appointment.is-selected::after{color:#fff}
}

@media(max-width:360px){
    body .gb-public .gb-client-calendar-nav,
    body .gb-public .gb-event-calendar-nav{grid-template-columns:80px minmax(0,1fr) 80px;gap:5px}
    body .gb-public .gb-client-calendar-nav button,
    body .gb-public .gb-event-calendar-nav button{width:80px;font-size:12px}
    body .gb-public .gb-client-calendar-nav strong,
    body .gb-public .gb-event-calendar-nav strong{font-size:14px}
}

/* 0.23.113 | Sistema visual único para el flujo de reservas de clientes. */
body .gb-public{
    --gb-client-space:18px;
}
body .gb-public #gb-booking-start.gb-calendar-head{
    display:flex;
    flex-direction:column;
    gap:4px;
    width:100%;
    margin:18px 0;
    padding:16px 18px;
    box-sizing:border-box;
    border:0;
    border-radius:14px;
    background:var(--gb-brand-gradient);
    box-shadow:0 8px 20px rgba(202,65,55,.16);
}
body .gb-public #gb-booking-start.gb-calendar-head h3{
    margin:0;
    color:#fff;
    font-size:var(--gb-client-title-size);
    line-height:1.2;
    font-weight:850;
}
body .gb-public #gb-booking-start.gb-calendar-head p{
    margin:0;
    color:rgba(255,255,255,.95);
    font-size:var(--gb-client-text-size);
    line-height:1.4;
    font-weight:650;
}
body .gb-public .gb-client-entry-pill{
    border-color:#f0b09b;
    background:#fff4ef;
    box-shadow:none;
}
body .gb-public .gb-client-entry-pill span{color:var(--gb-secondary)}
body .gb-public .gb-client-entry-pill strong{color:var(--gb-charcoal)}
body .gb-public .gb-client-entry-pill small{color:#62656c}
body .gb-public #gb-booking-form{
    gap:var(--gb-client-space);
}
body .gb-public #gb-booking-form > :is(.gb-service-picker,#gb-deposit-info,.gb-date-picker,.gb-time-picker,.gb-observations,.gb-hair-photo,.gb-legal,.gb-special-section,button,.gb-logout){
    margin:0;
}
body .gb-public #gb-booking-form :is(p,small,label,input,select,textarea,button,a,span,strong,b,em){
    font-family:inherit;
    font-size:var(--gb-client-text-size);
    line-height:1.45;
}
body .gb-public #gb-booking-form :is(legend,h2,h3),
body .gb-public #gb-booking-form .gb-observations>span,
body .gb-public #gb-booking-form .gb-photo-title{
    font-size:var(--gb-client-title-size);
    line-height:1.2;
    font-weight:800;
}
body .gb-public .gb-service-group>header{display:none}
body .gb-public .gb-service-groups,
body .gb-public .gb-service-group{gap:12px}
body .gb-public .gb-photo-copy,
body .gb-public .gb-photo-name,
body .gb-public .gb-photo-action small,
body .gb-public .gb-observations textarea,
body .gb-public .gb-time-picker .gb-empty{
    color:#5f6269;
    font-weight:500;
}
body .gb-public .gb-client-entry-secondary,
body .gb-public .gb-client-monthly,
body .gb-public .gb-client-vip,
body .gb-public .gb-client-invoices,
body .gb-public .gb-client-promotions{
    margin-top:var(--gb-client-space);
    margin-bottom:0;
}

@media(max-width:800px){
    body .gb-public .gb-service-cards{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }
    body .gb-public .gb-service-card span{
        min-height:90px;
        padding:13px;
        box-sizing:border-box;
        border-radius:13px;
    }
    body .gb-public .gb-service-card strong{
        overflow:visible;
        white-space:normal;
        word-break:normal;
    }
    body .gb-public .gb-service-card.is-deposit span{padding-right:48px}
    body .gb-public .gb-service-card.is-deposit span::after{
        top:10px;
        right:10px;
        width:28px;
        height:28px;
        font-size:15px;
    }
    body .gb-public .gb-time-picker-panel{padding:14px}
    body .gb-public .gb-observations{gap:10px}
    body .gb-public .gb-observations textarea{min-height:120px}
    body .gb-public .gb-hair-photo{
        display:grid;
        gap:12px;
        padding:16px;
    }
    body .gb-public .gb-photo-action{gap:8px;padding:14px}
    body .gb-public .gb-legal{gap:10px}
}

@media(max-width:360px){
    body .gb-public .gb-service-cards{gap:7px}
    body .gb-public .gb-service-card span{min-height:86px;padding:10px}
    body .gb-public .gb-service-card.is-deposit span{padding-right:42px}
}

/* 0.23.114 | Contraste accesible en los tres textos secundarios del área cliente. */
body .gb-public .gb-service-card:not(.is-deposit) small,
body .gb-public .gb-special-intro>p,
body .gb-public .gb-client-promotions>div:first-child>p{
    color:#555961;
    font-weight:550;
}

/* 0.23.115 | Orden visual, botones de consulta y ritmo vertical del área cliente. */
body .gb-public .gb-client-entry-top{
    margin:18px 0 12px;
}
body .gb-public .gb-client-entry-top + #gb-booking-start.gb-calendar-head{
    margin-top:0;
    margin-bottom:8px;
}
body .gb-public .gb-client-monthly summary>b{
    display:inline-flex;
    min-height:38px;
    padding:9px 14px;
    box-sizing:border-box;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:var(--gb-brand-gradient);
    color:#fff;
    font-size:13px;
    font-weight:800;
    line-height:1.1;
    white-space:nowrap;
    box-shadow:0 6px 15px rgba(202,65,55,.14);
}

@media(max-width:800px){
    body .gb-public .gb-client-entry-top{
        margin:16px 0 10px;
    }
    body .gb-public .gb-client-entry-top + #gb-booking-start.gb-calendar-head{
        margin-bottom:6px;
    }
    body .gb-public .gb-client-monthly summary>b{
        flex:0 0 auto;
        min-height:36px;
        padding:8px 11px;
        font-size:12px;
    }
}

/* 0.23.119 | Selector de fotografía compacto y visual. */
body .gb-public #gb-booking-form .gb-hair-photo-compact{
    display:grid;
    justify-items:center;
    gap:8px;
    min-height:0;
    margin:0;
    padding:14px;
    box-sizing:border-box;
    border:1px dashed #e6a89a;
    border-radius:14px;
    background:#fff8f5;
    text-align:center;
}
body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-title{
    margin:0;
    padding:0;
    color:var(--gb-charcoal);
    font-size:var(--gb-client-title-size);
    font-weight:800;
    line-height:1.2;
}
body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-title::after{
    content:"Rocío necesita esta fotografía para valorar el volumen y el largo de tu cabello y preparar una valoración económica.";
    display:block;
    max-width:660px;
    margin:8px auto 2px;
    color:#555861;
    font-size:15px;
    font-weight:500;
    line-height:1.45;
}
body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-action{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:row;
    width:76px;
    height:66px;
    min-height:0;
    margin:2px auto 0;
    padding:0;
    box-sizing:border-box;
    border:0;
    border-radius:14px;
    background:var(--gb-brand-gradient);
    color:#fff;
    box-shadow:0 7px 18px rgba(194,65,67,.18);
}
body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-action svg{
    display:block;
    width:36px;
    height:36px;
    margin:0 auto;
    flex:0 0 auto;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* 0.23.121 | Aviso de señal editable y jerarquía común del formulario. */
body .gb-public #gb-booking-form #gb-deposit-info .gb-deposit-notice{
    display:grid;
    gap:12px;
    margin:0;
    padding:0;
    background:transparent;
}
body .gb-public #gb-booking-form #gb-deposit-info .gb-deposit-notice h2{
    margin:0;
    padding:0;
    color:var(--gb-charcoal);
    font-family:inherit;
    font-size:var(--gb-client-title-size);
    font-weight:800;
    line-height:1.2;
}
body .gb-public #gb-booking-form #gb-deposit-info .gb-deposit-notice p{
    margin:0;
    padding:16px 18px;
    border:1px solid #f1c0b2;
    border-radius:14px;
    background:#fff3ee;
    color:#574f50;
    font-family:inherit;
    font-size:var(--gb-client-text-size);
    font-weight:500;
    line-height:1.55;
}
body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-name{
    margin:0;
    padding:0;
    color:#26734f;
    font-size:12px;
    font-weight:700;
    line-height:1.3;
    text-align:center;
    overflow-wrap:anywhere;
}
body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-name:empty{
    display:none;
}

@media(max-width:800px){
    body .gb-public #gb-booking-form .gb-hair-photo-compact{
        gap:7px;
        padding:12px;
    }
    body .gb-public #gb-booking-form .gb-hair-photo-compact .gb-photo-action{
        width:64px;
        height:54px;
    }
}

/* 0.23.116 | Una sola jerarquía para los tres pasos y selector horario corporativo. */
body .gb-public #gb-booking-form fieldset>legend,
body .gb-public #gb-booking-form .gb-time-picker>h2{
    display:block;
    width:100%;
    margin:0 0 14px;
    padding:0;
    color:var(--gb-charcoal);
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:var(--gb-client-title-size);
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.02em;
}
body .gb-public #gb-booking-form>.gb-service-picker,
body .gb-public #gb-booking-form>.gb-date-picker,
body .gb-public #gb-booking-form>.gb-time-picker{
    margin:0;
}
body .gb-public .gb-time-picker-panel{
    border-color:#eaded9;
    background:#fffaf7;
}
body .gb-public .gb-time-picker .gb-slot span{
    border-color:#ded8d4;
    background:#fff;
    color:var(--gb-charcoal);
    box-shadow:0 4px 12px rgba(54,56,66,.035);
}
body .gb-public .gb-time-picker .gb-slot:hover span{
    border-color:var(--gb-secondary);
    background:#fff4ef;
    color:var(--gb-primary);
}
body .gb-public .gb-time-picker .gb-slot input:checked+span{
    border-color:var(--gb-secondary);
    background:var(--gb-brand-gradient);
    color:#fff;
    box-shadow:0 7px 18px rgba(194,65,67,.2);
}
body .gb-public .gb-time-picker .gb-slot.is-busy{
    border-color:#e4e1de;
    background:#efedea;
    color:#9c9994;
    box-shadow:none;
}

@media(max-width:800px){
    body .gb-public #gb-booking-form fieldset>legend,
    body .gb-public #gb-booking-form .gb-time-picker>h2{
        margin-bottom:12px;
    }
}

/* 0.23.117 | Filas de citas compactas, legibles y totalmente corporativas. */
body .gb-public .gb-client-monthly-item{
    grid-template-columns:56px minmax(0,1fr) auto;
    gap:14px;
    min-height:82px;
    padding:13px 16px;
    align-items:center;
}
body .gb-public .gb-client-monthly-item time{
    display:flex;
    width:54px;
    height:58px;
    margin:0;
    padding:6px 4px;
    gap:2px;
    box-sizing:border-box;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    border:1.5px solid #e95721;
    border-radius:12px;
    background:#fff4ef;
    color:#b6423b;
    box-shadow:none;
}
body .gb-public .gb-client-monthly-item time strong{
    margin:0;
    color:#b6423b;
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:17px;
    font-weight:850;
    line-height:1;
}
body .gb-public .gb-client-monthly-item time span{
    margin:0;
    color:#b6423b;
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:10px;
    font-weight:850;
    line-height:1;
    letter-spacing:.04em;
}
body .gb-public .gb-client-monthly-item>div{
    gap:3px;
}
body .gb-public .gb-client-monthly-item>div>strong{
    color:var(--gb-charcoal);
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:15px;
    font-weight:800;
    line-height:1.2;
}
body .gb-public .gb-client-monthly-item>div>span{
    color:#5f6269;
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:14px;
    font-weight:500;
    line-height:1.3;
}
body .gb-public .gb-client-monthly-item .gb-client-cancel{
    grid-column:3;
    justify-self:end;
    width:auto;
    min-width:118px;
    max-width:none;
    min-height:40px;
    margin:0;
    padding:10px 14px;
    box-sizing:border-box;
    border:0;
    border-radius:10px;
    background:var(--gb-brand-gradient);
    color:#fff;
    font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;
    font-size:13px;
    font-weight:800;
    line-height:1;
    text-align:center;
    white-space:nowrap;
    box-shadow:0 6px 15px rgba(202,65,55,.14);
}
body .gb-public .gb-client-monthly-item>em{
    color:#8b5551;
    font-size:13px;
    font-weight:750;
}
body .gb-public .gb-client-monthly-note{
    color:#5f6269;
    font-size:14px;
    font-weight:500;
    line-height:1.45;
}

@media(max-width:390px){
    body .gb-public .gb-client-monthly-item{
        grid-template-columns:52px minmax(0,1fr) auto;
        gap:9px;
        padding:12px 11px;
    }
    body .gb-public .gb-client-monthly-item time{
        width:50px;
        height:54px;
    }
    body .gb-public .gb-client-monthly-item .gb-client-cancel{
        min-width:104px;
        padding:9px 10px;
        font-size:12px;
    }
}

/* 0.23.118 | Pastilla de reservas compacta por dentro y bien separada por fuera. */
body .gb-public #gb-booking-start.gb-calendar-head,
body .gb-public .gb-client-entry-top + #gb-booking-start.gb-calendar-head{
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
    margin-top:0;
    margin-bottom:18px;
    padding:11px 16px;
    gap:2px;
    align-items:flex-start;
    justify-content:center;
    overflow:hidden;
}
body .gb-public #gb-booking-start.gb-calendar-head h3,
body .gb-public #gb-booking-start.gb-calendar-head p{
    min-height:0;
    margin:0;
    padding:0;
}

@media(max-width:800px){
    body .gb-public #gb-booking-start.gb-calendar-head,
    body .gb-public .gb-client-entry-top + #gb-booking-start.gb-calendar-head{
        margin-bottom:16px;
        padding:10px 14px;
    }
}

/* 0.24.1 | Regla final del aviso compacto para prevalecer sobre estilos históricos. */
html body .gb-public .gb-client-monthly-item .gb-client-contact{
    grid-column:3;
    justify-self:end;
    width:auto;
    min-width:96px;
    max-width:none;
    min-height:40px;
    margin:0;
    padding:11px 15px;
    border:0;
    border-radius:10px;
    background:#23845d;
    color:#fff;
    font-size:0;
    line-height:1;
    white-space:nowrap;
    animation:gb-whatsapp-attention 1.8s ease-in-out infinite;
}
html body .gb-public .gb-client-monthly-item .gb-client-contact::after{content:"WhatsApp";color:#fff;font-family:"Avenir Next","Montserrat","Century Gothic",Arial,sans-serif;font-size:13px;font-weight:800;line-height:1}
@media(prefers-reduced-motion:reduce){html body .gb-public .gb-client-monthly-item .gb-client-contact{animation:none}}

/* 0.24.1 | Acciones principales de consulta con tamaño táctil cómodo. */
html body .gb-public .gb-client-monthly summary>b{
    display:inline-flex;
    flex:0 0 auto;
    min-width:132px;
    min-height:50px;
    padding:14px 19px;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:var(--gb-brand-gradient);
    color:#fff;
    font-size:14px;
    font-weight:850;
    line-height:1;
    white-space:nowrap;
    box-shadow:0 8px 18px rgba(202,65,55,.2);
}
html body .gb-public .gb-client-invoices summary>b{min-width:145px}

/* 0.24.1 | Todas las acciones de clienta comparten exactamente la misma medida. */
html body .gb-public{
    --gb-client-action-width:145px;
    --gb-client-action-height:50px;
}
html body .gb-public .gb-client-monthly summary>b,
html body .gb-public .gb-client-monthly-item .gb-client-cancel,
html body .gb-public .gb-client-monthly-item .gb-client-contact,
html body .gb-public .gb-client-vip-whatsapp{
    display:inline-flex;
    width:var(--gb-client-action-width);
    min-width:var(--gb-client-action-width);
    max-width:var(--gb-client-action-width);
    height:var(--gb-client-action-height);
    min-height:var(--gb-client-action-height);
    padding:0 14px;
    box-sizing:border-box;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    font-size:14px;
    font-weight:850;
    line-height:1;
    text-align:center;
    white-space:nowrap;
}
html body .gb-public .gb-client-monthly-item .gb-client-contact{font-size:0}
html body .gb-public .gb-client-monthly-item .gb-client-contact::after{font-size:14px}
html body .gb-public .gb-client-monthly-item .gb-client-cancel{border:0;background:var(--gb-brand-gradient);color:#fff;box-shadow:0 8px 18px rgba(202,65,55,.2)}
.gb-client-vip-contact{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.gb-client-vip-contact>span{color:#353640;font-size:16px;font-weight:800}.gb-client-vip-contact .gb-client-vip-whatsapp{margin:0;border:0;background:#23845d;color:#fff;text-decoration:none;box-shadow:0 8px 18px rgba(35,132,93,.2)}
@media(max-width:480px){html body .gb-public{--gb-client-action-width:132px}.gb-client-vip-contact{gap:12px}.gb-client-vip-contact>span{font-size:14px}}
@media(max-width:782px){.gb-owner-workspace .gb-client-record summary>.gb-client-summary-main{display:flex;align-items:center;gap:8px;overflow:hidden}.gb-owner-workspace .gb-client-record summary>.gb-client-summary-main>span:last-child{display:block;min-width:0;overflow:hidden}}


/* Migrado desde notifications.css. */
.gb-notification-center{display:none;position:fixed;right:14px;bottom:16px;z-index:999999;font-family:inherit;color:#343640}.gb-notification-center:not(.is-open) .gb-notification-panel,.gb-notification-panel[hidden]{display:none}.gb-notification-bell{width:54px;height:54px;border:0;border-radius:50%;background:linear-gradient(135deg,#c7463f,#ef5b24);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(178,61,45,.28);cursor:pointer}.gb-notification-bell svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gb-notification-bell b{position:absolute;right:-3px;top:-5px;min-width:23px;height:23px;padding:0 5px;border-radius:12px;background:#343640;color:#fff;border:2px solid #fff;font-size:12px;line-height:19px;text-align:center}.gb-notification-panel{position:fixed;right:14px;bottom:82px;width:calc(100vw - 28px);max-height:calc(100dvh - 110px);overflow:auto;background:#fff;border:1px solid #eadbd5;border-radius:20px;box-shadow:0 22px 55px rgba(50,37,35,.22)}.gb-notification-panel>header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:20px 20px 16px;background:#fff;border-bottom:1px solid #f0e5e1}.gb-notification-panel>header span{display:block;color:#c7463f;font-size:11px;font-weight:800;letter-spacing:1.6px}.gb-notification-panel>header strong{font-size:22px}.gb-notification-panel>header button{position:relative;z-index:4;border:0;background:#f7f1ee;border-radius:50%;width:40px;height:40px;padding:0;color:#343640;font-size:27px;line-height:38px;cursor:pointer;touch-action:manipulation}.gb-notification-actions{padding:16px;background:#fff8f5;display:grid;grid-template-columns:1fr;gap:8px}.gb-notification-actions button{border:0;border-radius:10px;padding:12px 13px;background:#d84a35;color:#fff;font-weight:700;cursor:pointer;touch-action:manipulation}.gb-notification-actions button[data-gb-test]{background:#fff;color:#b6423c;border:1px solid #dca59d}.gb-notification-actions button.is-active{background:#387d58}.gb-notification-actions small{padding:9px 10px;border-radius:8px;color:#5d5b61;font-size:12px;line-height:1.4}.gb-notification-actions small.is-feedback{background:#fff;color:#8f3833;font-weight:700}.gb-notification-list>a{display:flex;gap:12px;padding:16px 18px;color:#343640;text-decoration:none;border-bottom:1px solid #f0e5e1;background:#fff}.gb-notification-list>a:not(.is-read){background:#fff8f5}.gb-notification-list>a i{flex:0 0 9px;width:9px;height:9px;margin-top:7px;border-radius:50%;background:#df4a32}.gb-notification-list>a.is-important i{box-shadow:0 0 0 5px rgba(223,74,50,.13)}.gb-notification-list>a.is-urgent i{background:#a82925;box-shadow:0 0 0 5px rgba(168,41,37,.16)}.gb-notification-list>a.is-read i{background:#c9c3c0}.gb-notification-list>a span{min-width:0}.gb-notification-list strong,.gb-notification-list small,.gb-notification-list time{display:block}.gb-notification-list strong{font-size:15px;margin-bottom:4px}.gb-notification-list small{font-size:13px;line-height:1.4;color:#55535a}.gb-notification-list time{margin-top:7px;font-size:11px;color:#8d8581}.gb-notification-empty{padding:28px 18px;text-align:center;color:#68656a}.gb-notification-read-all{width:100%;border:0;background:#fff;padding:15px;color:#b6423c;font-weight:700;cursor:pointer}.admin-bar .gb-notification-center{bottom:16px}@media(max-width:782px){.gb-notification-center{display:block}}
.gb-app-update{position:fixed;right:22px;bottom:92px;z-index:2147483646;display:flex;max-width:min(430px,calc(100vw - 32px));align-items:center;gap:18px;padding:15px 16px;border:1px solid #ead6d0;border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(48,38,36,.22);color:#34363e}.gb-app-update span{display:grid;gap:3px}.gb-app-update strong{font-size:14px;line-height:1.25}.gb-app-update small{color:#73737a;font-size:12px;line-height:1.35}.gb-app-update button{flex:0 0 auto;min-height:42px;padding:0 16px;border:0;border-radius:10px;background:linear-gradient(135deg,#c7463e,#ef5b25);color:#fff;font-size:13px;font-weight:800;cursor:pointer}@media(max-width:560px){.gb-app-update{right:16px;bottom:88px;left:16px;justify-content:space-between}.gb-app-update small{font-size:11px}}


/* Migrado desde menu-icon.css. */
#toplevel_page_gradobeauty .wp-menu-image img {
    width: 24px ;
    height: 24px ;
    box-sizing: content-box ;
    margin: 0 ;
    padding: 4px 0 0 ;
    opacity: 1 ;
}


/* Migrado desde gradobeauty-features.css. */
/* Reglas exclusivas de los flujos de belleza. El núcleo común no conoce estas clases. */
body.gradobeauty-app-page .gb-booking-calendar,
body.gradobeauty-app-page .gb-inventory-dashboard,
body.gradobeauty-app-page .gb-marketing-dashboard,
body.gradobeauty-app-page .gb-wedding-dashboard { min-width: 0; max-width: 100%; }

body.gradobeauty-app-page .gb-date-grid,
body.gradobeauty-app-page .gb-inventory-stats,
body.gradobeauty-app-page .gb-marketing-overview { gap: var(--gc-space-3); }

body.gradobeauty-app-page .gb-service,
body.gradobeauty-app-page .gb-booking,
body.gradobeauty-app-page .gb-inventory-card,
body.gradobeauty-app-page .gb-social-card { border-color: var(--gc-border); border-radius: var(--gc-radius-card); }

@media (max-width: 782px) {
  body.gradobeauty-app-page .gb-date-grid,
  body.gradobeauty-app-page .gb-inventory-stats,
  body.gradobeauty-app-page .gb-marketing-overview { gap: var(--gc-space-2); }
  body.gradobeauty-app-page input[type="date"],
  body.gradobeauty-app-page input[type="month"],
  body.gradobeauty-app-page input[type="time"] { min-width: 0; max-width: 100%; }
}
