.rbens-front-wrap,.rbens-admin-wrap{
  --rb-navy:#33454f;--rb-navy-2:#455861;--rb-gold:#d0aa24;--rb-gold-dark:#ac7610;
  --rb-cream:#f4efe5;--rb-paper:#fffefa;--rb-ink:#26353e;--rb-muted:#6c777e;--rb-line:#ddd6c9;
  --rb-green:#15713a;--rb-shadow:0 28px 80px rgba(27,38,44,.16);
  width:min(1120px,calc(100% - 24px))!important;max-width:1120px!important;margin:32px auto!important;
  color:var(--rb-ink)!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;line-height:1.5!important
}
.rbens-front-wrap *,.rbens-admin-wrap *{box-sizing:border-box!important}
.rbens-app{background:linear-gradient(180deg,#f7f3eb,#eee7da)!important;border:1px solid rgba(208,170,36,.35)!important;border-radius:28px!important;overflow:hidden!important;box-shadow:var(--rb-shadow)!important;color:var(--rb-ink)!important}
.rbens-app-hero{display:flex!important;align-items:center!important;gap:18px!important;padding:28px 32px!important;background:linear-gradient(135deg,var(--rb-navy),var(--rb-navy-2))!important;color:#fff!important;border-bottom:1px solid rgba(208,170,36,.45)!important}
.rbens-brand-mark{width:64px!important;height:64px!important;flex:0 0 64px!important;display:grid!important;place-items:center!important;border:1px solid var(--rb-gold)!important;border-radius:18px!important;color:#ecd77f!important;font-family:Georgia,serif!important;font-size:25px!important;font-weight:700!important}
.rbens-overline{display:block!important;color:#ead77f!important;font-size:11px!important;font-weight:800!important;letter-spacing:.17em!important;text-transform:uppercase!important}
.rbens-app-hero h1{margin:4px 0!important;color:#fff!important;font:700 clamp(29px,4vw,42px)/1.05 Georgia,"Times New Roman",serif!important}.rbens-app-hero p{margin:0!important;color:rgba(255,255,255,.72)!important;font-size:14px!important}
.rbens-form{padding:26px!important;margin:0!important;background:transparent!important}
.rbens-card{margin:0 0 18px!important;padding:25px!important;background:var(--rb-paper)!important;border:1px solid var(--rb-line)!important;border-radius:21px!important;box-shadow:0 12px 36px rgba(32,43,49,.07)!important;color:var(--rb-ink)!important}
.rbens-section-head{display:flex!important;gap:16px!important;align-items:flex-start!important;margin-bottom:22px!important}.rbens-section-head>span{color:var(--rb-gold)!important;font-weight:800!important;font-size:13px!important}.rbens-section-head h2{margin:0 0 5px!important;color:var(--rb-ink)!important;font:700 clamp(25px,3.4vw,34px)/1.1 Georgia,"Times New Roman",serif!important}.rbens-section-head p{margin:0!important;color:var(--rb-muted)!important;font-size:14px!important}
.rbens-grid{display:grid!important;gap:16px!important}.rbens-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.rbens-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.rbens-card label{display:block!important;margin:0!important;color:var(--rb-ink)!important;font-size:13px!important;font-weight:750!important}.rbens-card input,.rbens-card select,.rbens-card textarea{display:block!important;width:100%!important;min-height:50px!important;margin:7px 0 0!important;padding:11px 13px!important;border:1px solid #d5d9dc!important;border-radius:12px!important;background:#fff!important;color:#17242c!important;font:500 15px/1.35 Inter,Arial,sans-serif!important;box-shadow:none!important;outline:none!important}.rbens-card textarea{min-height:90px!important;resize:vertical!important}.rbens-card input:focus,.rbens-card select:focus,.rbens-card textarea:focus{border-color:var(--rb-gold)!important;box-shadow:0 0 0 3px rgba(208,170,36,.18)!important}
.rbens-price-summary,.rbens-payment-summary{margin-top:18px!important;padding:17px!important;border-radius:16px!important}.rbens-price-summary{background:#fff8df!important;border:1px solid #f0df9e!important}.rbens-payment-summary{background:#f4f7f8!important;border:1px solid #e1e6e8!important}.rbens-price-summary>div,.rbens-payment-summary>div{display:flex!important;justify-content:space-between!important;gap:20px!important;margin:7px 0!important;color:var(--rb-ink)!important}.rbens-price-summary strong,.rbens-payment-summary strong{font-size:18px!important}.rbens-total-row{margin-top:12px!important;padding-top:12px!important;border-top:1px solid #ead78c!important;text-transform:uppercase!important;font-weight:800!important}.rbens-total-row strong{color:#bd6300!important;font-size:25px!important}.rbens-payment-summary>div:first-child{color:var(--rb-green)!important}
.rbens-payment-note{text-align:center!important;color:var(--rb-muted)!important;font-size:13px!important;margin:18px 0 0!important}.rbens-optional-card{background:#fbfaf6!important}
.rbens-form-actions{display:flex!important;justify-content:flex-end!important;gap:12px!important}.rbens-primary-button,.rbens-secondary-button{min-height:48px!important;padding:12px 19px!important;border-radius:12px!important;font-weight:800!important;text-decoration:none!important}.rbens-primary-button{border:0!important;background:var(--rb-gold)!important;color:#24323a!important}.rbens-secondary-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid var(--rb-line)!important;background:#fff!important;color:var(--rb-ink)!important}.rbens-primary-button:hover{filter:brightness(1.05)!important}.rbens-primary-button:disabled{opacity:.55!important;cursor:wait!important}
.rbens-message{margin-top:16px!important;padding:14px 16px!important;border-radius:12px!important}.rbens-message.success{background:#e5f2e8!important;color:#185d31!important;border:1px solid #b9ddc3!important}.rbens-message.error{background:#f8e7e5!important;color:#8a3832!important;border:1px solid #e5bbb7!important}.rbens-message a{font-weight:800!important}.rbens-message button{margin-left:10px!important;border:0!important;background:transparent!important;text-decoration:underline!important;color:inherit!important}
.rbens-history-panel{margin-top:24px!important;padding:24px!important;background:#fff!important;border:1px solid var(--rb-line)!important;border-radius:22px!important;box-shadow:0 16px 44px rgba(32,43,49,.08)!important}.rbens-history-heading{display:flex!important;justify-content:space-between!important;gap:18px!important;align-items:center!important;margin-bottom:18px!important}.rbens-history-heading h2{margin:3px 0 0!important;color:var(--rb-ink)!important;font:700 30px/1.1 Georgia,serif!important}.rbens-history-list{display:grid!important;gap:10px!important}.rbens-history-card{display:grid!important;grid-template-columns:1.3fr .65fr auto!important;align-items:center!important;gap:16px!important;padding:15px!important;border:1px solid var(--rb-line)!important;border-radius:14px!important;background:#fdfcf9!important}.rbens-history-card strong,.rbens-history-card span{display:block!important}.rbens-history-card span{color:var(--rb-muted)!important;font-size:12px!important;margin-top:3px!important}.rbens-history-total{text-align:right!important}.rbens-history-actions{display:flex!important;gap:8px!important}.rbens-history-actions a,.rbens-history-actions button{border:0!important;background:transparent!important;color:#8d6d0d!important;font-weight:750!important;text-decoration:underline!important;font-size:12px!important;padding:4px!important}
.rbens-login-required{max-width:720px;margin:40px auto;padding:20px;border:1px solid #e0d8ca;border-radius:14px;background:#fff;color:#28353d}
.rbens-tariff-scroll{overflow:auto}.rbens-tariff-table{min-width:1150px}.rbens-tariff-table input{width:100%!important}.rbens-new-tariff{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;align-items:end}.rbens-new-tariff input{min-height:40px}
@media(max-width:800px){.rbens-front-wrap,.rbens-admin-wrap{width:min(100% - 16px,1120px)!important;margin:16px auto!important}.rbens-app-hero{padding:22px!important}.rbens-form{padding:14px!important}.rbens-card{padding:18px!important}.rbens-grid-3,.rbens-grid-2{grid-template-columns:1fr!important}.rbens-history-card{grid-template-columns:1fr!important}.rbens-history-total{text-align:left!important}.rbens-history-heading{align-items:flex-start!important;flex-direction:column!important}.rbens-new-tariff{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.rbens-app-hero{align-items:flex-start!important}.rbens-brand-mark{width:52px!important;height:52px!important;flex-basis:52px!important}.rbens-form-actions{flex-direction:column-reverse!important}.rbens-primary-button,.rbens-secondary-button{width:100%!important}.rbens-price-summary>div,.rbens-payment-summary>div{align-items:flex-start!important}.rbens-new-tariff{grid-template-columns:1fr}}


/* Inserción inmediata del presupuesto recién guardado */
.rbens-history-card-new{opacity:0;transform:translateY(-10px);transition:opacity .28s ease,transform .28s ease;outline:2px solid rgba(203,166,24,.28)}
.rbens-history-card-new.is-visible{opacity:1;transform:translateY(0)}

/* Barra de administración visible dentro de la página pública */
.rbens-front-wrap .rbens-owner-toolbar,
.rbens-admin-wrap .rbens-owner-toolbar {
  max-width: 980px !important;
  margin: 0 auto 18px !important;
  padding: 18px 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  background: #ffffff !important;
  border: 1px solid rgba(211, 167, 17, .42) !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 38px rgba(18, 40, 51, .12) !important;
  color: #18303e !important;
}
.rbens-owner-toolbar-copy { display:flex !important; flex-direction:column !important; gap:3px !important; min-width:240px !important; flex:1 1 320px !important; }
.rbens-owner-toolbar-copy strong { font-size:17px !important; line-height:1.2 !important; color:#18303e !important; }
.rbens-owner-toolbar-copy span { font-size:13px !important; line-height:1.45 !important; color:#63717a !important; }
.rbens-owner-toolbar-actions { display:flex !important; gap:8px !important; flex-wrap:wrap !important; justify-content:flex-end !important; }
.rbens-owner-button {
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  min-height:42px !important; padding:10px 14px !important; border-radius:10px !important;
  border:1px solid #d9d4ca !important; background:#fff !important; color:#18303e !important;
  font-size:13px !important; font-weight:800 !important; text-decoration:none !important;
}
.rbens-owner-button:hover { border-color:#d3a711 !important; transform:translateY(-1px) !important; }
.rbens-owner-button-primary { background:#d3a711 !important; border-color:#d3a711 !important; color:#122b39 !important; }
@media (max-width: 720px) {
  .rbens-owner-toolbar-actions { width:100% !important; justify-content:stretch !important; }
  .rbens-owner-button { width:100% !important; }
}


/* ===== Panel de configuración / Tarifario v3.3 ===== */
.rbens-pricing-admin{
  max-width:1440px;
  margin:24px 24px 80px 4px;
  color:#20313b;
}
.rbens-admin-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:28px 30px;
  margin-bottom:24px;
  border-radius:18px;
  background:linear-gradient(135deg,#344750,#455962);
  color:#fff;
  box-shadow:0 14px 40px rgba(33,48,57,.15);
}
.rbens-admin-hero h1{
  margin:3px 0 7px;
  color:#fff;
  font-size:32px;
}
.rbens-admin-hero p{margin:0;color:rgba(255,255,255,.76);font-size:15px}
.rbens-admin-kicker{
  color:#e1bd39;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:11px;
  font-weight:800;
}
.rbens-admin-hero .button{
  margin-top:4px;
  background:#fff;
  border-color:#fff;
  color:#344750;
}
.rbens-admin-section{
  margin:0 0 24px;
  padding:26px;
  background:#fff;
  border:1px solid #ddd7cb;
  border-radius:18px;
  box-shadow:0 9px 30px rgba(39,48,54,.07);
}
.rbens-admin-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.rbens-admin-section-head>div:first-child{
  display:grid;
  grid-template-columns:36px 1fr;
  column-gap:12px;
}
.rbens-admin-section-head>div:first-child>span{
  grid-row:1/3;
  color:#cda718;
  font-weight:900;
  padding-top:5px;
}
.rbens-admin-section-head h2{
  margin:0 0 5px;
  font-size:23px;
  color:#22333d;
}
.rbens-admin-section-head p{margin:0;color:#6a747b}
.rbens-catalog-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.rbens-catalog-card{
  border:1px solid #e0d9cd;
  border-radius:15px;
  overflow:hidden;
  background:#fbfaf7;
}
.rbens-catalog-title{
  display:flex;
  gap:12px;
  align-items:center;
  padding:17px 18px;
  background:#354750;
  color:#fff;
}
.rbens-catalog-title .dashicons{color:#deb92f;font-size:23px;width:23px;height:23px}
.rbens-catalog-title h3{margin:0 0 2px;color:#fff;font-size:17px}
.rbens-catalog-title p{margin:0;color:rgba(255,255,255,.65);font-size:12px}
.rbens-catalog-fields{padding:17px;display:grid;gap:13px}
.rbens-catalog-fields label>span,
.rbens-new-tariff-card label>span{
  display:block;
  margin-bottom:6px;
  color:#657077;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.rbens-catalog-fields input,
.rbens-new-tariff-card input,
.rbens-price-tools select,
.rbens-price-table input{
  width:100%;
  min-height:41px;
  border:1px solid #cfd4d6;
  border-radius:9px;
  background:#fff;
  padding:7px 10px;
}
.rbens-catalog-fields input:focus,
.rbens-new-tariff-card input:focus,
.rbens-price-table input:focus{
  border-color:#cda718;
  box-shadow:0 0 0 2px rgba(205,167,24,.14);
  outline:none;
}
.rbens-apartment-edit{
  display:grid;
  grid-template-columns:1fr 90px;
  gap:9px;
}
.rbens-capacity-field input{text-align:center}
.rbens-price-head{align-items:end}
.rbens-price-tools label{font-size:12px;font-weight:700;color:#5e6970}
.rbens-price-tools select{display:block;margin-top:5px;min-width:230px}
.rbens-season-groups{display:grid;gap:14px}
.rbens-season-card{
  border:1px solid #ddd7cb;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.rbens-season-card summary{
  list-style:none;
  cursor:pointer;
  padding:16px 18px;
  background:#f6f3ec;
  border-bottom:1px solid transparent;
}
.rbens-season-card[open] summary{border-bottom-color:#ddd7cb}
.rbens-season-card summary::-webkit-details-marker{display:none}
.rbens-season-card summary,
.rbens-season-card summary>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.rbens-season-card summary>div{justify-content:flex-start}
.rbens-season-card summary .dashicons{color:#cda718}
.rbens-season-card summary strong{font-size:16px}
.rbens-season-card summary small{
  padding:4px 8px;
  border-radius:999px;
  background:#e8e3d8;
  color:#657077;
}
.rbens-summary-hint{font-size:11px;color:#788187}
.rbens-price-table-wrap{overflow-x:auto}
.rbens-price-table{width:100%;border-collapse:collapse}
.rbens-price-table th{
  padding:11px 12px;
  background:#faf9f6;
  color:#657077;
  font-size:11px;
  text-align:left;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.rbens-price-table td{
  padding:11px 12px;
  border-top:1px solid #eeeae2;
  vertical-align:middle;
}
.rbens-price-table tbody tr:hover{background:#fffdf5}
.rbens-price-table td:nth-child(1){width:64px}
.rbens-price-table td:nth-child(3){width:75px;text-align:center}
.rbens-price-table td:nth-child(5){width:135px}
.rbens-price-table td:nth-child(6){width:180px}
.rbens-price-table td:nth-child(7){width:105px}
.rbens-small-input{max-width:120px}
.rbens-money-input{
  display:flex;
  align-items:center;
  border:1px solid #cfd4d6;
  border-radius:9px;
  overflow:hidden;
  background:#fff;
}
.rbens-money-input span{
  padding:8px 9px;
  background:#f0ede5;
  color:#6b747a;
  font-size:11px;
  font-weight:800;
}
.rbens-money-input input{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.rbens-switch input{display:none}
.rbens-switch span{
  display:block;
  width:42px;
  height:23px;
  border-radius:99px;
  background:#b9c0c4;
  position:relative;
  transition:.2s;
}
.rbens-switch span:after{
  content:"";
  position:absolute;
  width:17px;height:17px;
  top:3px;left:3px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 4px #0003;
  transition:.2s;
}
.rbens-switch input:checked+span{background:#49765f}
.rbens-switch input:checked+span:after{left:22px}
.rbens-delete-link{
  display:inline-flex;
  gap:4px;
  align-items:center;
  color:#b43e36;
  text-decoration:none;
  font-size:12px;
}
.rbens-delete-link .dashicons{font-size:16px;width:16px;height:16px}
.rbens-sticky-save{
  position:sticky;
  bottom:12px;
  z-index:20;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-top:20px;
  padding:15px 18px;
  border:1px solid #d5c678;
  border-radius:14px;
  background:#fff8d9;
  box-shadow:0 12px 35px rgba(36,45,50,.16);
}
.rbens-sticky-save strong{display:block}
.rbens-sticky-save span{display:block;color:#6c7479;font-size:12px;margin-top:2px}
.rbens-new-tariff-card{
  display:grid;
  grid-template-columns:1.25fr 1.25fr .55fr 1fr .75fr .8fr auto;
  gap:12px;
  align-items:end;
}
.rbens-new-tariff-card .button{min-height:41px}
.rbens-danger-zone{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:19px 22px;
  border:1px solid #e2c4c0;
  border-radius:14px;
  background:#fff7f6;
}
.rbens-danger-zone strong{color:#8e3d36}
.rbens-danger-zone p{margin:3px 0 0;color:#777;font-size:12px}

@media (max-width:1100px){
  .rbens-catalog-grid{grid-template-columns:1fr}
  .rbens-new-tariff-card{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:782px){
  .rbens-pricing-admin{margin-right:10px}
  .rbens-admin-hero,.rbens-admin-section-head,.rbens-sticky-save,.rbens-danger-zone{flex-direction:column;align-items:stretch}
  .rbens-price-tools select{min-width:0;width:100%}
  .rbens-price-table thead{display:none}
  .rbens-price-table,.rbens-price-table tbody,.rbens-price-table tr,.rbens-price-table td{display:block;width:100%!important}
  .rbens-price-table tr{padding:12px;border-top:1px solid #ddd7cb}
  .rbens-price-table td{display:grid;grid-template-columns:120px 1fr;gap:10px;border:0;padding:6px 0;text-align:left!important}
  .rbens-price-table td:before{content:attr(data-label);font-size:11px;font-weight:800;color:#68737a;text-transform:uppercase}
  .rbens-small-input{max-width:none}
  .rbens-new-tariff-card{grid-template-columns:1fr}
}


/* ===== Configuración e historial v3.4 ===== */
.rbens-settings-admin,
.rbens-history-admin{
  max-width:1440px;
  margin:24px 24px 80px 4px;
}
.rbens-settings-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 370px;
  gap:24px;
  align-items:start;
}
.rbens-settings-main{min-width:0}
.rbens-settings-section{margin-bottom:20px}
.rbens-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.rbens-field-wide{grid-column:1/-1}
.rbens-form-grid label>span,
.rbens-commercial-grid label>span,
.rbens-textarea-field>span{
  display:block;
  margin-bottom:7px;
  color:#4e5d65;
  font-size:12px;
  font-weight:800;
}
.rbens-form-grid input,
.rbens-commercial-grid input,
.rbens-textarea-field textarea{
  width:100%;
  min-height:44px;
  border:1px solid #ccd3d6;
  border-radius:10px;
  background:#fff;
  padding:9px 12px;
}
.rbens-textarea-field{
  display:block;
  margin-top:18px;
}
.rbens-textarea-field textarea{resize:vertical}
.rbens-textarea-field small{
  display:block;
  margin-top:6px;
  color:#79848a;
}
.rbens-copy-block{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:14px;
  align-items:start;
  padding:18px;
  margin-bottom:12px;
  border:1px solid #e1dcd2;
  border-radius:14px;
  background:#fbfaf7;
}
.rbens-copy-block:last-child{margin-bottom:0}
.rbens-copy-number{
  width:38px;height:38px;
  display:grid;place-items:center;
  border-radius:10px;
  background:#354750;
  color:#e1bd39;
  font-weight:900;
}
.rbens-commercial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.rbens-input-suffix{
  display:flex;
  align-items:stretch;
  overflow:hidden;
  border:1px solid #ccd3d6;
  border-radius:10px;
  background:#fff;
}
.rbens-input-suffix input{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.rbens-input-suffix b{
  display:flex;
  align-items:center;
  padding:0 12px;
  background:#f1eee7;
  color:#657078;
  white-space:nowrap;
}
.rbens-settings-preview{
  position:relative;
}
.rbens-preview-sticky{
  position:sticky;
  top:48px;
}
.rbens-preview-label{
  display:flex;
  align-items:center;
  gap:7px;
  margin:0 0 10px;
  color:#5e6970;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.rbens-preview-card{
  overflow:hidden;
  border:1px solid #d9d2c5;
  border-radius:18px;
  background:#eee8dc;
  box-shadow:0 18px 50px rgba(34,47,55,.13);
}
.rbens-preview-card header{
  padding:22px;
  background:#3c515b;
  color:#fff;
}
.rbens-preview-card header>span{
  color:#e0bb31;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}
.rbens-preview-card header h2{
  margin:3px 0 4px;
  color:#fff;
  font-family:Georgia,serif;
  font-size:27px;
}
.rbens-preview-card header p{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:11px;
}
.rbens-preview-content{padding:18px}
.rbens-preview-section{
  display:grid;
  grid-template-columns:25px 1fr;
  gap:8px;
  padding:14px;
  border-radius:12px;
  background:#fff;
}
.rbens-preview-section+ .rbens-preview-section{margin-top:12px}
.rbens-preview-section small{
  color:#d1a915;
  font-weight:900;
}
.rbens-preview-section h3{
  margin:0 0 2px;
  font-family:Georgia,serif;
  font-size:18px;
}
.rbens-preview-section p{margin:0;color:#6b767c;font-size:10px}
.rbens-preview-fields{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  margin:-7px 14px 12px;
}
.rbens-preview-fields i{
  display:block;
  height:24px;
  border:1px solid #d9dee0;
  border-radius:7px;
  background:#fff;
}
.rbens-preview-price{
  margin-top:12px;
  padding:15px;
  border:1px solid #ecd580;
  border-radius:12px;
  background:#fff8df;
}
.rbens-preview-price span{font-size:11px}
.rbens-preview-price strong{
  display:block;
  margin:2px 0;
  color:#b75b00;
  font-size:20px;
}
.rbens-preview-price small{color:#526068}
.rbens-preview-note{
  min-height:38px;
  margin:12px 3px;
  color:#69757c;
  font-size:9px;
  text-align:center;
}
.rbens-preview-content button{
  width:100%;
  padding:11px;
  border:0;
  border-radius:9px;
  background:#d6b118;
  color:#1d2f39;
  font-weight:900;
  text-transform:uppercase;
}
.rbens-preview-help{
  color:#737d83;
  font-size:11px;
  line-height:1.5;
}

/* History */
.rbens-history-stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-bottom:22px;
}
.rbens-history-stats article{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:92px;
  padding:18px;
  border:1px solid #ddd7cb;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 25px rgba(39,48,54,.06);
}
.rbens-history-stats .dashicons{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:11px;
  background:#f5efd9;
  color:#b68d00;
  font-size:22px;
}
.rbens-history-stats small{
  display:block;
  color:#738087;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.rbens-history-stats strong{
  display:block;
  margin-top:3px;
  color:#253740;
  font-size:23px;
}
.rbens-hero-action{
  display:inline-flex!important;
  align-items:center;
  gap:6px;
  margin-top:3px!important;
  background:#d7b31d!important;
  border-color:#d7b31d!important;
  color:#21333d!important;
  font-weight:800!important;
}
.rbens-history-section{padding:0;overflow:hidden}
.rbens-history-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,1fr) 210px auto;
  gap:14px;
  align-items:end;
  padding:18px 20px;
  border-bottom:1px solid #e2ddd3;
  background:#fbfaf7;
}
.rbens-history-search{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 12px;
  border:1px solid #ccd3d6;
  border-radius:10px;
  background:#fff;
}
.rbens-history-search .dashicons{color:#7a858b}
.rbens-history-search input{
  flex:1;
  min-width:0;
  border:0;
  box-shadow:none!important;
  outline:none;
}
.rbens-history-filter span{
  display:block;
  margin-bottom:5px;
  color:#6b757c;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}
.rbens-history-filter select{
  width:100%;
  min-height:44px;
  border:1px solid #ccd3d6;
  border-radius:10px;
}
.rbens-history-counter{
  display:flex;
  align-items:baseline;
  gap:5px;
  min-height:44px;
  padding:9px 14px;
  border-radius:10px;
  background:#354750;
  color:#fff;
}
.rbens-history-counter strong{font-size:20px;color:#e2bd32}
.rbens-history-counter span{font-size:11px}
.rbens-history-table-wrap{overflow-x:auto}
.rbens-history-table{
  width:100%;
  border-collapse:collapse;
}
.rbens-history-table th{
  padding:12px 14px;
  background:#fff;
  color:#69757c;
  font-size:10px;
  text-align:left;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.rbens-history-table td{
  padding:14px;
  border-top:1px solid #eeeae2;
  vertical-align:middle;
}
.rbens-history-table tbody tr:hover{background:#fffdf6}
.rbens-quote-number{
  display:flex;
  align-items:center;
  gap:8px;
}
.rbens-quote-number .dashicons{color:#c8a31c}
.rbens-client-cell strong,
.rbens-package-cell strong,
.rbens-total-cell strong,
.rbens-date-cell strong{display:block}
.rbens-client-cell span,
.rbens-package-cell span,
.rbens-total-cell span,
.rbens-date-cell span{
  display:block;
  margin-top:3px;
  color:#66737a;
  font-size:12px;
}
.rbens-client-cell small,
.rbens-package-cell small{
  display:block;
  margin-top:2px;
  color:#8a9297;
}
.rbens-status-select{
  min-width:118px;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:800!important;
}
.rbens-status-draft{background:#f1f2f3!important;color:#56636b!important}
.rbens-status-sent{background:#e9f0f7!important;color:#3d6787!important}
.rbens-status-accepted{background:#e4efe8!important;color:#3d7159!important}
.rbens-status-expired{background:#fff1d9!important;color:#9a6812!important}
.rbens-status-cancelled{background:#f5e4e2!important;color:#963f39!important}
.rbens-row-actions{
  display:flex;
  align-items:center;
  gap:7px;
}
.rbens-pdf-button{
  display:inline-flex!important;
  align-items:center;
  gap:5px;
}
.rbens-icon-delete{
  width:34px;height:34px;
  display:grid;place-items:center;
  border:1px solid #e2c7c4;
  border-radius:8px;
  background:#fff7f6;
  color:#ad443d;
}
.rbens-history-empty,
.rbens-no-filter-results{
  padding:70px 24px;
  text-align:center;
}
.rbens-empty-icon{
  width:68px;height:68px;
  display:grid;place-items:center;
  margin:0 auto 15px;
  border-radius:18px;
  background:#f4eed9;
  color:#bd9410;
}
.rbens-empty-icon .dashicons{font-size:32px;width:32px;height:32px}
.rbens-history-empty h2{margin:0 0 8px;font-size:25px}
.rbens-history-empty p{
  max-width:550px;
  margin:0 auto 20px;
  color:#6c777d;
}
.rbens-no-filter-results .dashicons{
  display:block;
  width:34px;height:34px;
  margin:0 auto 8px;
  color:#b39116;
  font-size:34px;
}
.rbens-no-filter-results strong{display:block;font-size:18px}
.rbens-no-filter-results p{margin:4px 0;color:#717b81}

@media(max-width:1150px){
  .rbens-settings-layout{grid-template-columns:1fr}
  .rbens-settings-preview{display:none}
  .rbens-history-stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:782px){
  .rbens-settings-admin,.rbens-history-admin{margin-right:10px}
  .rbens-form-grid,.rbens-commercial-grid{grid-template-columns:1fr}
  .rbens-field-wide{grid-column:auto}
  .rbens-copy-block{grid-template-columns:1fr}
  .rbens-history-stats{grid-template-columns:1fr}
  .rbens-history-toolbar{grid-template-columns:1fr}
  .rbens-history-table thead{display:none}
  .rbens-history-table,.rbens-history-table tbody,.rbens-history-table tr,.rbens-history-table td{display:block;width:100%}
  .rbens-history-table tr{padding:14px;border-top:1px solid #ddd7cb}
  .rbens-history-table td{
    display:grid;
    grid-template-columns:115px 1fr;
    gap:10px;
    border:0;
    padding:7px 0;
  }
  .rbens-history-table td:before{
    content:attr(data-label);
    color:#69757c;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
  }
}


/* Eliminación dinámica v3.5 */
.rbens-history-card,
.rbens-history-table tbody tr{
  transition:opacity .18s ease,transform .18s ease;
}
.rbens-removing{
  opacity:0!important;
  transform:translateX(12px);
  pointer-events:none;
}
.rbens-delete-quote.is-loading,
.rbens-icon-delete.is-loading{
  opacity:.7;
  cursor:wait;
}
.rbens-spin{
  animation:rbens-spin .75s linear infinite;
}
@keyframes rbens-spin{
  to{transform:rotate(360deg)}
}


/* Navegación consistente entre web y wp-admin v3.6 */
.rbens-create-admin{
  max-width:1280px;
}
.rbens-admin-view-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px 0;
  padding:15px 18px;
  border:1px solid #d8c36b;
  border-radius:12px;
  background:#fff8d9;
  color:#263943;
}
.rbens-admin-view-note strong,
.rbens-admin-view-note span{
  display:block;
}
.rbens-admin-view-note span{
  margin-top:3px;
  color:#647178;
  font-size:12px;
}
.rbens-admin-view-note .button{
  flex:0 0 auto;
}
@media(max-width:782px){
  .rbens-admin-view-note{
    align-items:stretch;
    flex-direction:column;
  }
}


/* Corrección de navegación pública v3.7 */
.rbens-admin-hero .button,
.rbens-owner-toolbar-actions a{
  text-decoration:none;
}

/* Descuento opcional y tipo de presupuesto v3.9 */
.rbens-quote-type-badge{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:-2px 0 22px;
  padding:12px 15px;
  border:1px solid rgba(211,174,24,.38);
  border-radius:12px;
  background:#fff9df;
}
.rbens-quote-type-badge span{
  color:#6c7479;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.rbens-quote-type-badge strong{color:#243640}
.rbens-discount-control{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:22px 0 14px;
  padding:16px 18px;
  border:1px solid #dcd7cd;
  border-radius:14px;
  background:#faf9f6;
}
.rbens-discount-toggle{
  display:flex!important;
  align-items:center;
  gap:12px;
  margin:0!important;
  cursor:pointer;
}
.rbens-discount-toggle>input{display:none!important}
.rbens-discount-toggle>span:last-child strong,
.rbens-discount-toggle>span:last-child small{display:block}
.rbens-discount-toggle>span:last-child small{
  margin-top:2px;
  color:#778188;
  font-size:12px;
}
.rbens-discount-switch{
  width:46px;
  height:25px;
  border-radius:999px;
  background:#b9c1c5;
  position:relative;
  transition:.2s ease;
  flex:0 0 auto;
}
.rbens-discount-switch:after{
  content:"";
  position:absolute;
  width:19px;
  height:19px;
  left:3px;
  top:3px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 5px #0003;
  transition:.2s ease;
}
.rbens-discount-toggle input:checked+.rbens-discount-switch{background:#4d7a61}
.rbens-discount-toggle input:checked+.rbens-discount-switch:after{left:24px}
.rbens-discount-percent{
  display:flex!important;
  align-items:center;
  gap:10px;
  margin:0!important;
}
.rbens-discount-percent>span{font-size:12px;font-weight:800;color:#536169}
.rbens-discount-percent>div{
  display:flex;
  overflow:hidden;
  border:1px solid #cfd5d8;
  border-radius:10px;
  background:#fff;
}
.rbens-discount-percent input{
  width:84px!important;
  min-height:42px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-align:right;
}
.rbens-discount-percent b{
  display:flex;
  align-items:center;
  padding:0 11px;
  background:#f0ede5;
  color:#5e6970;
}
.rbens-discount-row{
  color:#087531;
  background:#edf7f1;
  margin-left:-10px;
  margin-right:-10px;
  padding:9px 10px!important;
  border-radius:9px;
}
.rbens-discount-row strong{color:#087531!important}
@media(max-width:680px){
  .rbens-discount-control{
    align-items:stretch;
    flex-direction:column;
  }
  .rbens-discount-percent{justify-content:space-between}
  .rbens-quote-type-badge{align-items:flex-start;flex-direction:column;gap:3px}
}


/* Solapas y presupuesto particular v4.0 */
.rbens-budget-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:18px 28px 0;
  background:#efe8d9;
}
.rbens-budget-tab{
  min-height:54px;
  border:1px solid #d7cebc;
  border-bottom:3px solid transparent;
  border-radius:13px 13px 5px 5px;
  background:#fff;
  color:#334650;
  font-weight:900;
  font-size:15px;
}
.rbens-budget-tab.is-active{
  border-color:#d2ad1d;
  border-bottom-color:#d2ad1d;
  background:#344a55;
  color:#fff;
}
.rbens-tab-pane{display:none}
.rbens-tab-pane.is-active{display:block}
.rbens-discount-always{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:20px;
}
.rbens-discount-always>div:first-child strong,
.rbens-discount-always>div:first-child small{display:block}
.rbens-discount-always>div:first-child small{margin-top:3px;color:#728087}
.rbens-discount-always .rbens-discount-percent{display:block!important;min-width:180px}
.rbens-particular-note{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:18px 0;
  padding:14px 16px;
  border:1px solid #e1c75f;
  border-radius:12px;
  background:#fff8d9;
}
.rbens-particular-note strong,
.rbens-particular-note span{display:block}
.rbens-particular-note span{color:#67747b;font-size:12px;margin-top:2px}
@media(max-width:700px){
  .rbens-budget-tabs{grid-template-columns:1fr;padding:14px 14px 0}
  .rbens-discount-always{align-items:stretch;flex-direction:column}
  .rbens-discount-always .rbens-discount-percent{min-width:0;width:100%}
}


/* =========================================================
   REDISEÑO PREMIUM COMPLETO v4.1
   ========================================================= */
#rbens-quote-app.rbens-app{
  --rbens-deep:#263a45;
  --rbens-deep-2:#334d59;
  --rbens-gold:#d6ad19;
  --rbens-gold-soft:#f2df93;
  --rbens-cream:#f4efe4;
  --rbens-paper:#fffefa;
  --rbens-ink:#1d303a;
  --rbens-muted:#6c7a82;
  --rbens-border:#ded7ca;
  --rbens-green:#2f7255;
  max-width:1120px;
  margin-inline:auto;
  overflow:hidden;
  border:1px solid rgba(214,173,25,.38);
  border-radius:30px;
  background:var(--rbens-cream);
  box-shadow:0 34px 90px rgba(22,37,45,.22);
}
#rbens-quote-app .rbens-owner-toolbar{
  padding:18px 22px;
  border-bottom:1px solid #e3dccf;
  background:linear-gradient(180deg,#fff,#fbfaf6);
}
#rbens-quote-app .rbens-owner-toolbar-copy strong{
  color:var(--rbens-ink);
  font-size:17px;
}
#rbens-quote-app .rbens-owner-toolbar-copy span{
  color:var(--rbens-muted);
}
#rbens-quote-app .rbens-owner-toolbar-actions{
  gap:8px;
}
#rbens-quote-app .rbens-owner-button{
  min-height:40px;
  padding:10px 14px;
  border-radius:10px;
  border-color:#ddd6c9;
  background:#fff;
  color:var(--rbens-ink);
  box-shadow:0 3px 10px rgba(31,48,58,.04);
}
#rbens-quote-app .rbens-owner-button:hover{
  transform:translateY(-1px);
  border-color:var(--rbens-gold);
}
#rbens-quote-app .rbens-owner-button-primary{
  background:var(--rbens-gold);
  border-color:var(--rbens-gold);
  color:#172a34;
}
#rbens-quote-app .rbens-app-hero{
  min-height:174px;
  padding:34px 44px;
  background:
    radial-gradient(circle at 92% 18%,rgba(242,223,147,.11),transparent 28%),
    linear-gradient(135deg,var(--rbens-deep),var(--rbens-deep-2));
}
#rbens-quote-app .rbens-brand-mark{
  width:78px;height:78px;
  border-radius:22px;
  border:1px solid var(--rbens-gold);
  background:rgba(255,255,255,.025);
  color:var(--rbens-gold-soft);
  font-size:29px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
}
#rbens-quote-app .rbens-app-hero h1{
  font-size:clamp(2.7rem,4.3vw,4.2rem);
  letter-spacing:-.025em;
}
#rbens-quote-app .rbens-app-hero p{
  color:rgba(255,255,255,.72);
  font-size:15px;
}
#rbens-quote-app .rbens-budget-tabs{
  padding:20px 28px;
  gap:14px;
  background:#e9e2d5;
  border-bottom:1px solid #d8cfbf;
}
#rbens-quote-app .rbens-budget-tab{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:78px;
  padding:14px 18px;
  text-align:left;
  border:1px solid #d8d0c1;
  border-radius:16px;
  background:rgba(255,255,255,.8);
  color:#324650;
  box-shadow:0 8px 24px rgba(34,52,62,.055);
  transition:.2s ease;
}
#rbens-quote-app .rbens-budget-tab:hover{
  transform:translateY(-2px);
  border-color:#c7a51e;
}
#rbens-quote-app .rbens-budget-tab.is-active{
  border-color:var(--rbens-gold);
  background:var(--rbens-deep);
  color:#fff;
  box-shadow:0 14px 34px rgba(38,58,69,.2);
}
#rbens-quote-app .rbens-tab-icon{
  width:42px;height:42px;
  display:grid;place-items:center;
  flex:0 0 42px;
  border:1px solid currentColor;
  border-radius:12px;
  color:var(--rbens-gold);
  font:700 19px Georgia,serif;
}
#rbens-quote-app .rbens-budget-tab strong,
#rbens-quote-app .rbens-budget-tab small{
  display:block;
}
#rbens-quote-app .rbens-budget-tab strong{
  font-size:15px;
}
#rbens-quote-app .rbens-budget-tab small{
  margin-top:3px;
  color:#748087;
  font-size:11px;
  font-weight:600;
}
#rbens-quote-app .rbens-budget-tab.is-active small{
  color:rgba(255,255,255,.62);
}
#rbens-quote-app .rbens-form{
  padding:28px 30px 34px;
}
#rbens-quote-app .rbens-card{
  padding:28px 30px;
  margin-bottom:20px;
  border:1px solid var(--rbens-border);
  border-radius:22px;
  background:var(--rbens-paper);
  box-shadow:0 14px 40px rgba(30,45,54,.065);
}
#rbens-quote-app .rbens-section-head{
  margin-bottom:24px;
}
#rbens-quote-app .rbens-section-head>span{
  width:38px;height:38px;
  display:grid;place-items:center;
  padding:0;
  border-radius:11px;
  background:#f5edcf;
  color:#b68c00;
  font-size:12px;
}
#rbens-quote-app .rbens-section-head h2{
  color:var(--rbens-ink);
  font-size:clamp(2rem,3vw,2.85rem);
  letter-spacing:-.025em;
}
#rbens-quote-app .rbens-section-head p{
  margin-top:5px;
  color:var(--rbens-muted);
}
#rbens-quote-app label{
  color:#263943;
  font-weight:800;
}
#rbens-quote-app input,
#rbens-quote-app select,
#rbens-quote-app textarea{
  min-height:50px;
  margin-top:7px;
  border:1px solid #ccd4d7;
  border-radius:12px;
  background:#fff;
  color:#1d303a;
  padding:11px 14px;
  box-shadow:inset 0 1px 1px rgba(20,35,43,.02);
  transition:border-color .18s,box-shadow .18s,background .18s;
}
#rbens-quote-app input:focus,
#rbens-quote-app select:focus,
#rbens-quote-app textarea:focus{
  border-color:var(--rbens-gold);
  outline:none;
  box-shadow:0 0 0 3px rgba(214,173,25,.14);
  background:#fffefa;
}
#rbens-quote-app .rbens-quote-type-badge{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 20px;
  padding:12px 15px;
  border:1px solid #dbc76a;
  border-radius:12px;
  background:#fff8d9;
}
#rbens-quote-app .rbens-quote-type-badge span{
  color:#6c7479;
  font-size:12px;
}
#rbens-quote-app .rbens-quote-type-badge strong{
  padding:6px 10px;
  border-radius:999px;
  background:var(--rbens-deep);
  color:#fff;
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
#rbens-quote-app .rbens-discount-control{
  margin:20px 0 14px;
  padding:16px 18px;
  border:1px solid #e2d7ad;
  border-radius:14px;
  background:#fcf9ee;
}
#rbens-quote-app .rbens-discount-percent>div{
  overflow:hidden;
  border:1px solid #cfd5d8;
  border-radius:10px;
  background:#fff;
}
#rbens-quote-app .rbens-discount-percent input{
  min-height:42px;
  margin:0;
  border:0;
  border-radius:0;
}
#rbens-quote-app .rbens-price-summary{
  overflow:hidden;
  border:1px solid #ead47d;
  border-radius:17px;
  background:linear-gradient(180deg,#fff9e2,#fff6d5);
}
#rbens-quote-app .rbens-price-summary>div{
  padding:10px 18px;
}
#rbens-quote-app .rbens-price-summary>div+div{
  border-top:1px solid rgba(196,157,16,.15);
}
#rbens-quote-app .rbens-price-summary strong{
  color:#20343f;
}
#rbens-quote-app .rbens-price-summary .rbens-discount-row strong{
  color:#a54b32;
}
#rbens-quote-app .rbens-price-summary .rbens-total-row{
  padding-top:15px;
  padding-bottom:15px;
  background:rgba(255,255,255,.4);
}
#rbens-quote-app .rbens-price-summary .rbens-total-row strong{
  color:#b85b00;
  font-size:28px;
}
#rbens-quote-app .rbens-payment-summary{
  margin-top:14px;
  padding:16px 18px;
  border:1px solid #d7e0e3;
  border-radius:15px;
  background:#f2f6f7;
}
#rbens-quote-app .rbens-payment-summary>div+div{
  margin-top:8px;
}
#rbens-quote-app .rbens-payment-summary>div:first-child strong{
  color:var(--rbens-green);
}
#rbens-quote-app .rbens-particular-note{
  border-color:#d9c36c;
  border-radius:14px;
  background:#fff8da;
}
#rbens-quote-app .rbens-form-actions{
  gap:12px;
  margin-top:4px;
}
#rbens-quote-app .rbens-primary-button,
#rbens-quote-app .rbens-secondary-button{
  min-height:54px;
  border-radius:12px;
  font-size:13px;
  letter-spacing:.04em;
  text-transform:uppercase;
  transition:.18s;
}
#rbens-quote-app .rbens-primary-button{
  background:linear-gradient(180deg,#dcb725,#cca512);
  color:#182b35;
  box-shadow:0 10px 22px rgba(204,165,18,.22);
}
#rbens-quote-app .rbens-primary-button:hover{
  transform:translateY(-1px);
  box-shadow:0 13px 28px rgba(204,165,18,.28);
}
#rbens-quote-app .rbens-secondary-button:hover{
  border-color:#bfa025;
}

/* Historial reciente */
.rbens-history-panel{
  max-width:1120px;
  margin:26px auto 0;
  padding:25px;
  border:1px solid #ddd6c9;
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 55px rgba(29,44,52,.13);
}
.rbens-history-list{
  display:grid;
  gap:10px;
}
.rbens-history-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:18px;
  align-items:center;
  padding:15px 16px;
  border:1px solid #e4dfd6;
  border-radius:14px;
  background:#fbfaf7;
}
.rbens-history-card:hover{
  border-color:#cfa91a;
  background:#fffdf6;
}
.rbens-history-main{
  min-width:0;
}
.rbens-history-main>strong,
.rbens-history-main>span:not(.rbens-source-badge){
  display:block;
}
.rbens-history-main>strong{
  margin-top:7px;
  color:#20333e;
  font-size:15px;
}
.rbens-history-main>span:last-child{
  margin-top:2px;
  color:#748087;
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rbens-source-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:5px 8px;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.rbens-source-badge.kmb{
  background:#fff1b8;
  color:#8b6800;
  border:1px solid #e4c23d;
}
.rbens-source-badge.particular{
  background:#dfecef;
  color:#315c68;
  border:1px solid #a9c9d1;
}
.rbens-history-total strong{
  font-size:16px;
  color:#1e323d;
}
.rbens-history-actions{
  display:flex;
  gap:7px;
}
.rbens-history-actions a,
.rbens-history-actions button{
  min-height:36px;
  border-radius:9px;
}

/* Historial administrador */
.rbens-history-toolbar{
  grid-template-columns:minmax(240px,1fr) 170px 170px auto;
}
.rbens-history-table td{
  vertical-align:middle;
}
.rbens-history-table .rbens-source-badge{
  white-space:nowrap;
}
.rbens-package-cell span{
  max-width:280px;
}
.rbens-quote-number strong{
  white-space:nowrap;
}

/* Panel de particulares */
.rbens-pricing-admin .rbens-price-table input{
  min-width:100px;
}
.rbens-pricing-admin .rbens-price-table td{
  background:#fff;
}

/* Responsive */
@media(max-width:900px){
  #rbens-quote-app .rbens-owner-toolbar{
    align-items:stretch;
  }
  #rbens-quote-app .rbens-owner-toolbar-actions{
    width:100%;
  }
  #rbens-quote-app .rbens-owner-button{
    flex:1 1 180px;
    text-align:center;
  }
  .rbens-history-card{
    grid-template-columns:1fr auto;
  }
  .rbens-history-actions{
    grid-column:1/-1;
  }
}
@media(max-width:700px){
  #rbens-quote-app.rbens-app{
    border-radius:18px;
  }
  #rbens-quote-app .rbens-app-hero{
    padding:26px 22px;
  }
  #rbens-quote-app .rbens-brand-mark{
    width:60px;height:60px;
    border-radius:17px;
    font-size:23px;
  }
  #rbens-quote-app .rbens-budget-tabs{
    padding:14px;
  }
  #rbens-quote-app .rbens-budget-tab{
    min-height:70px;
  }
  #rbens-quote-app .rbens-form{
    padding:16px;
  }
  #rbens-quote-app .rbens-card{
    padding:20px 17px;
    border-radius:17px;
  }
  #rbens-quote-app .rbens-section-head{
    align-items:flex-start;
  }
  #rbens-quote-app .rbens-section-head h2{
    font-size:2rem;
  }
  .rbens-history-panel{
    padding:18px;
    border-radius:18px;
  }
  .rbens-history-card{
    grid-template-columns:1fr;
  }
  .rbens-history-total,
  .rbens-history-actions{
    grid-column:auto;
  }
  .rbens-history-actions{
    width:100%;
  }
  .rbens-history-actions a,
  .rbens-history-actions button{
    flex:1;
  }
}


/* Acceso privado en navegación v4.2 */
.rbens-navbar-settings select{
  width:100%;
  min-height:44px;
  border:1px solid #ccd3d6;
  border-radius:10px;
  background:#fff;
}
.rbens-navbar-settings label small{
  display:block;
  margin-top:6px;
  color:#78848a;
  font-size:11px;
  line-height:1.45;
}
.rbens-navbar-toggle{
  display:flex!important;
  align-items:center;
  gap:13px;
  margin-bottom:20px;
  padding:16px 18px;
  border:1px solid #d9c66b;
  border-radius:14px;
  background:#fff8d9;
  cursor:pointer;
}
.rbens-navbar-toggle>input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.rbens-navbar-toggle>span{
  width:46px;
  height:25px;
  flex:0 0 46px;
  border-radius:999px;
  background:#aeb8bd;
  position:relative;
  transition:.2s;
}
.rbens-navbar-toggle>span:after{
  content:"";
  position:absolute;
  left:3px;
  top:3px;
  width:19px;
  height:19px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 6px #0003;
  transition:.2s;
}
.rbens-navbar-toggle>input:checked+span{
  background:#3f735a;
}
.rbens-navbar-toggle>input:checked+span:after{
  transform:translateX(21px);
}
.rbens-navbar-toggle strong,
.rbens-navbar-toggle small{
  display:block;
}
.rbens-navbar-toggle small{
  margin-top:3px!important;
}
.rbens-navbar-grid{
  margin-bottom:16px;
}
.rbens-inline-check{
  display:flex!important;
  align-items:center;
  gap:9px;
  margin:5px 0 18px;
  color:#42535c;
}
.rbens-inline-check input{
  width:18px;
  height:18px;
  margin:0;
}
.rbens-navbar-security-note{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px 16px;
  border:1px solid #cbdbe0;
  border-radius:12px;
  background:#f2f7f8;
}
.rbens-navbar-security-note .dashicons{
  color:#356879;
}
.rbens-navbar-security-note strong{
  display:block;
  color:#2c4e59;
}
.rbens-navbar-security-note p{
  margin:3px 0 0;
  color:#68777e;
  font-size:12px;
}


/* Compatibilidad de navbar con Elementor v4.3 */
.elementor-nav-menu .rbens-private-nav-item{
  display:flex!important;
  align-items:center!important;
}
.elementor-nav-menu .rbens-private-nav-item > a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.elementor-nav-menu .rbens-private-nav-gold > a{
  padding:10px 17px!important;
  border:1px solid #d2ad1d!important;
  border-radius:10px!important;
  background:#d2ad1d!important;
  color:#223640!important;
  font-weight:800!important;
  line-height:1.1!important;
}
.elementor-nav-menu .rbens-private-nav-gold > a:hover{
  background:#dfbd35!important;
  color:#192b34!important;
}
.elementor-nav-menu .rbens-private-nav-outline > a{
  padding:9px 16px!important;
  border:1px solid #d2ad1d!important;
  border-radius:10px!important;
  color:#d2ad1d!important;
}
.elementor-nav-menu .rbens-private-nav-link > a{
  color:#d2ad1d!important;
  font-weight:800!important;
}


/* Tarifario vivo sin caché v4.5 */
#rbens-quote-app select:disabled{
  opacity:.65;
  cursor:wait;
}


/* =========================================================
   WORKSPACE HORIZONTAL PREMIUM v4.6
   Aprovecha el ancho de pantalla y reduce el scroll vertical
   ========================================================= */

/* Rompe el ancho angosto del contenedor de Elementor, sin afectar móviles */
.rbens-front-wrap{
  width:min(1500px, calc(100vw - 56px));
  max-width:none!important;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  margin:0 auto;
}

.rbens-front-wrap #rbens-quote-app.rbens-app{
  max-width:none;
  width:100%;
  border-radius:24px;
  box-shadow:0 30px 85px rgba(22,37,45,.20);
}

/* Barra administrativa compacta y horizontal */
.rbens-front-wrap #rbens-quote-app .rbens-owner-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(640px,1.5fr);
  align-items:center;
  gap:22px;
  padding:15px 20px;
}
.rbens-front-wrap #rbens-quote-app .rbens-owner-toolbar-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  width:100%;
}
.rbens-front-wrap #rbens-quote-app .rbens-owner-button{
  min-width:0;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:9px 11px;
  text-align:center;
  line-height:1.15;
}

/* Hero mucho menos alto */
.rbens-front-wrap #rbens-quote-app .rbens-app-hero{
  min-height:124px;
  padding:24px 34px;
}
.rbens-front-wrap #rbens-quote-app .rbens-app-hero>div{
  display:flex;
  align-items:center;
  gap:20px;
}
.rbens-front-wrap #rbens-quote-app .rbens-brand-mark{
  width:66px;
  height:66px;
  flex:0 0 66px;
  border-radius:18px;
}
.rbens-front-wrap #rbens-quote-app .rbens-app-hero h1{
  font-size:clamp(2.3rem,3.2vw,3.45rem);
}
.rbens-front-wrap #rbens-quote-app .rbens-app-hero p{
  margin-top:2px;
}

/* Solapas más compactas */
.rbens-front-wrap #rbens-quote-app .rbens-budget-tabs{
  padding:15px 22px 12px;
  gap:12px;
}
.rbens-front-wrap #rbens-quote-app .rbens-budget-tab{
  min-height:66px;
  padding:11px 15px;
}
.rbens-front-wrap #rbens-quote-app .rbens-tab-icon{
  width:38px;
  height:38px;
  flex-basis:38px;
  border-radius:10px;
}

/* Guía visual horizontal */
#rbens-quote-app .rbens-workspace-hint{
  display:flex;
  justify-content:center;
  gap:32px;
  padding:10px 22px 14px;
  border-bottom:1px solid #d7cfc0;
  background:#e9e2d5;
  color:#65747b;
  font-size:11px;
  font-weight:700;
}
#rbens-quote-app .rbens-workspace-hint span{
  display:flex;
  align-items:center;
  gap:7px;
}
#rbens-quote-app .rbens-workspace-hint b{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#344a55;
  color:#f2d76a;
  font-size:10px;
}

/* Formulario en formato escritorio: cliente arriba, trabajo y adicionales lado a lado */
.rbens-front-wrap #rbens-quote-app .rbens-form{
  display:grid;
  grid-template-columns:minmax(0,2.15fr) minmax(330px,.85fr);
  gap:18px;
  align-items:start;
  padding:20px 22px 24px;
}
.rbens-front-wrap #rbens-quote-app .rbens-client-card{
  grid-column:1 / -1;
}
.rbens-front-wrap #rbens-quote-app .rbens-main-card{
  grid-column:1;
  grid-row:2 / span 2;
}
.rbens-front-wrap #rbens-quote-app .rbens-optional-card{
  grid-column:2;
  grid-row:2;
  margin:0;
  position:sticky;
  top:28px;
}
.rbens-front-wrap #rbens-quote-app .rbens-form-actions{
  grid-column:2;
  grid-row:3;
  margin:0;
  display:grid;
  grid-template-columns:.7fr 1.3fr;
  gap:9px;
}
.rbens-front-wrap #rbens-quote-app .rbens-message{
  grid-column:1 / -1;
}

/* Tarjetas más compactas y mejor jerarquía */
.rbens-front-wrap #rbens-quote-app .rbens-card{
  margin:0;
  padding:22px 24px;
  border-radius:18px;
}
.rbens-front-wrap #rbens-quote-app .rbens-section-head{
  margin-bottom:17px;
}
.rbens-front-wrap #rbens-quote-app .rbens-section-head h2{
  font-size:clamp(1.72rem,2.1vw,2.35rem);
}
.rbens-front-wrap #rbens-quote-app .rbens-section-head>span{
  width:34px;
  height:34px;
}
.rbens-front-wrap #rbens-quote-app input,
.rbens-front-wrap #rbens-quote-app select{
  min-height:47px;
}
.rbens-front-wrap #rbens-quote-app textarea{
  min-height:92px;
}

/* Configuración, descuento y resumen aprovechan dos columnas */
.rbens-front-wrap #rbens-quote-app .rbens-main-card .rbens-grid-2{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.rbens-front-wrap #rbens-quote-app .rbens-main-card .rbens-quote-type-badge{
  margin-bottom:15px;
}
.rbens-front-wrap #rbens-quote-app .rbens-main-card .rbens-discount-control{
  display:grid;
  grid-template-columns:1fr 190px;
  align-items:center;
  margin:15px 0 12px;
  padding:13px 15px;
}
.rbens-front-wrap #rbens-quote-app .rbens-price-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-radius:14px;
}
.rbens-front-wrap #rbens-quote-app .rbens-price-summary>div{
  min-height:76px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding:12px 15px;
  border-top:0!important;
  border-right:1px solid rgba(196,157,16,.16);
}
.rbens-front-wrap #rbens-quote-app .rbens-price-summary>div:nth-child(4){
  border-right:0;
}
.rbens-front-wrap #rbens-quote-app .rbens-price-summary .rbens-total-row{
  grid-column:1 / -1;
  min-height:70px;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  border-top:1px solid rgba(196,157,16,.20)!important;
  border-right:0;
}
.rbens-front-wrap #rbens-quote-app .rbens-price-summary .rbens-total-row strong{
  font-size:30px;
}
.rbens-front-wrap #rbens-quote-app .rbens-payment-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  padding:0;
  overflow:hidden;
}
.rbens-front-wrap #rbens-quote-app .rbens-payment-summary>div{
  margin:0!important;
  padding:14px 17px;
}
.rbens-front-wrap #rbens-quote-app .rbens-payment-summary>div+div{
  border-left:1px solid #d7e0e3;
}

/* Particular: seis campos en tres columnas */
.rbens-front-wrap #rbens-particular-form .rbens-main-card .rbens-grid-2{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

/* Historial reciente también ancho y menos alto */
.rbens-front-wrap .rbens-history-panel{
  max-width:none;
  width:100%;
  margin-top:20px;
  padding:20px 22px;
  border-radius:20px;
}
.rbens-front-wrap .rbens-history-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.rbens-front-wrap .rbens-history-card{
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
}
.rbens-front-wrap .rbens-history-actions{
  grid-column:1 / -1;
  justify-content:flex-end;
}

/* Ajuste para el ancho del área administrativa */
.rbens-create-admin #rbens-quote-app.rbens-app{
  max-width:1440px;
}
.rbens-create-admin #rbens-quote-app .rbens-form{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(320px,.9fr);
  gap:18px;
}

/* Tablets vuelven a una sola columna para no apretar */
@media(max-width:1120px){
  .rbens-front-wrap{
    width:min(980px, calc(100vw - 34px));
  }
  .rbens-front-wrap #rbens-quote-app .rbens-owner-toolbar{
    grid-template-columns:1fr;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-owner-toolbar-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .rbens-front-wrap #rbens-quote-app .rbens-form,
  .rbens-create-admin #rbens-quote-app .rbens-form{
    grid-template-columns:1fr;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-client-card,
  .rbens-front-wrap #rbens-quote-app .rbens-main-card,
  .rbens-front-wrap #rbens-quote-app .rbens-optional-card,
  .rbens-front-wrap #rbens-quote-app .rbens-form-actions{
    grid-column:1;
    grid-row:auto;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-optional-card{
    position:static;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-main-card .rbens-grid-2,
  .rbens-front-wrap #rbens-particular-form .rbens-main-card .rbens-grid-2{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .rbens-front-wrap .rbens-history-list{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){
  .rbens-front-wrap{
    width:calc(100vw - 20px);
  }
  #rbens-quote-app .rbens-workspace-hint{
    display:none;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-owner-toolbar-actions{
    grid-template-columns:1fr;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-app-hero{
    padding:22px 18px;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-app-hero>div{
    align-items:flex-start;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-form{
    padding:13px;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-card{
    padding:18px 15px;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-main-card .rbens-grid-2,
  .rbens-front-wrap #rbens-particular-form .rbens-main-card .rbens-grid-2{
    grid-template-columns:1fr;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-main-card .rbens-discount-control{
    grid-template-columns:1fr;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-price-summary{
    grid-template-columns:1fr 1fr;
  }
  .rbens-front-wrap #rbens-quote-app .rbens-price-summary>div{
    border-bottom:1px solid rgba(196,157,16,.16);
  }
  .rbens-front-wrap #rbens-quote-app .rbens-price-summary .rbens-total-row{
    grid-column:1 / -1;
  }
}


/* =========================================================
   CORRECCIÓN REAL DE ANCHO EN ELEMENTOR v4.7
   ========================================================= */
@media(min-width:1121px){
  html,body{
    overflow-x:clip;
  }

  /* Ancestros marcados por JavaScript */
  .rbens-wide-ancestor{
    max-width:none!important;
    width:100%!important;
    overflow:visible!important;
  }
  .rbens-wide-ancestor.e-con,
  .rbens-wide-ancestor.e-con-inner{
    --container-max-width:100%!important;
  }

  /*
   * La aplicación se centra respecto del viewport, no respecto
   * del contenedor angosto de Elementor.
   */
  .rbens-front-wrap{
    width:calc(100vw - 72px)!important;
    max-width:1500px!important;
    min-width:0!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    margin-left:calc((100% - min(1500px, calc(100vw - 72px))) / 2)!important;
    margin-right:0!important;
  }

  /* Cuando Elementor centra el widget, compensamos exactamente */
  .elementor-widget-container>.rbens-front-wrap,
  .elementor-shortcode>.rbens-front-wrap{
    margin-left:calc((100% - min(1500px, calc(100vw - 72px))) / 2)!important;
  }

  .rbens-front-wrap #rbens-quote-app.rbens-app,
  .rbens-front-wrap .rbens-history-panel{
    width:100%!important;
    max-width:none!important;
  }

  /* En pantallas grandes se aprovecha todavía más el espacio */
  @media(min-width:1500px){
    .rbens-front-wrap{
      width:calc(100vw - 96px)!important;
      max-width:1560px!important;
      margin-left:calc((100% - min(1560px, calc(100vw - 96px))) / 2)!important;
    }
    .elementor-widget-container>.rbens-front-wrap,
    .elementor-shortcode>.rbens-front-wrap{
      margin-left:calc((100% - min(1560px, calc(100vw - 96px))) / 2)!important;
    }
  }
}


/* =========================================================
   V5.0 — CENTRO DE PRESUPUESTOS ADMINISTRATIVO
   ========================================================= */
.rbens-front-wrap{
  width:min(1480px,calc(100vw - 64px))!important;
  max-width:none!important;
  margin:0 auto!important;
  left:auto!important;
  transform:none!important;
}
#rbens-quote-app.rbens-dashboard{
  --bens-navy:#263b46;
  --bens-navy-2:#314d59;
  --bens-gold:#d5ad1c;
  --bens-bg:#eef1f2;
  --bens-panel:#ffffff;
  --bens-border:#dce2e5;
  --bens-text:#20343e;
  --bens-muted:#708087;
  max-width:none!important;
  width:100%!important;
  overflow:hidden;
  border:1px solid rgba(213,173,28,.35);
  border-radius:22px;
  background:var(--bens-bg);
  box-shadow:0 30px 85px rgba(24,39,47,.22);
}
#rbens-quote-app .rbens-dashboard-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:20px 24px;
  background:linear-gradient(135deg,var(--bens-navy),var(--bens-navy-2));
  color:#fff;
}
#rbens-quote-app .rbens-dashboard-brand{
  display:flex;
  align-items:center;
  gap:15px;
}
#rbens-quote-app .rbens-dashboard-logo{
  width:56px;height:56px;
  display:grid;place-items:center;
  flex:0 0 56px;
  border:1px solid var(--bens-gold);
  border-radius:15px;
  color:#f2d568;
  font:700 22px Georgia,serif;
}
#rbens-quote-app .rbens-dashboard-brand span{
  color:#e9c84b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}
#rbens-quote-app .rbens-dashboard-brand h1{
  margin:2px 0 1px;
  color:#fff;
  font:700 28px Georgia,serif;
}
#rbens-quote-app .rbens-dashboard-brand p{
  margin:0;color:rgba(255,255,255,.62);font-size:11px
}
#rbens-quote-app .rbens-dashboard-tools{
  display:grid;
  grid-template-columns:repeat(4,minmax(88px,1fr));
  gap:7px;
}
#rbens-quote-app .rbens-dashboard-tools a{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-height:60px;
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:11px;
  background:rgba(255,255,255,.055);
  color:#fff;
  text-decoration:none;
  transition:.18s ease;
}
#rbens-quote-app .rbens-dashboard-tools a:hover{
  transform:translateY(-2px);
  border-color:var(--bens-gold);
  background:rgba(213,173,28,.13);
}
#rbens-quote-app .rbens-dashboard-tools .dashicons{color:#e8c847}
#rbens-quote-app .rbens-dashboard-tools b{font-size:9px;text-align:center}

#rbens-quote-app .rbens-type-switcher{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:13px 17px;
  border-bottom:1px solid var(--bens-border);
  background:#fff;
}
#rbens-quote-app .rbens-type-switcher .rbens-budget-tab{
  display:flex;
  align-items:center;
  gap:11px;
  min-height:60px;
  padding:10px 13px;
  border:1px solid #d9e0e3;
  border-radius:12px;
  background:#f7f9fa;
  color:#314750;
  text-align:left;
  box-shadow:none;
}
#rbens-quote-app .rbens-type-switcher .rbens-budget-tab.is-active{
  border-color:var(--bens-gold);
  background:#fff9e5;
  color:#243943;
  box-shadow:0 7px 20px rgba(191,151,8,.1);
}
#rbens-quote-app .rbens-type-symbol{
  width:37px;height:37px;
  display:grid;place-items:center;
  flex:0 0 37px;
  border:1px solid var(--bens-gold);
  border-radius:9px;
  color:#a47b00;
  font:700 16px Georgia,serif;
}
#rbens-quote-app .rbens-type-switcher strong,
#rbens-quote-app .rbens-type-switcher small{display:block}
#rbens-quote-app .rbens-type-switcher strong{font-size:13px}
#rbens-quote-app .rbens-type-switcher small{margin-top:2px;color:#76838a;font-size:10px}

#rbens-quote-app .rbens-dashboard-form{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 350px!important;
  gap:18px!important;
  align-items:start;
  padding:18px!important;
  background:var(--bens-bg);
}
#rbens-quote-app .rbens-form-main{
  display:grid;
  gap:14px;
}
#rbens-quote-app .rbens-panel{
  padding:20px;
  border:1px solid var(--bens-border);
  border-radius:15px;
  background:var(--bens-panel);
  box-shadow:0 7px 24px rgba(30,48,57,.055);
}
#rbens-quote-app .rbens-panel-title{
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:16px;
}
#rbens-quote-app .rbens-panel-title>span{
  width:32px;height:32px;
  display:grid;place-items:center;
  flex:0 0 32px;
  border-radius:9px;
  background:#f4eccd;
  color:#a57c00;
  font-size:10px;
  font-weight:900;
}
#rbens-quote-app .rbens-panel-title h2{
  margin:0;
  color:var(--bens-text);
  font:700 22px Georgia,serif;
}
#rbens-quote-app .rbens-panel-title p{
  margin:2px 0 0;
  color:var(--bens-muted);
  font-size:10px;
}
#rbens-quote-app .rbens-origin-pill{
  margin-left:auto;
  padding:5px 8px;
  border-radius:999px;
  font-size:8px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.08em;
}
#rbens-quote-app .rbens-origin-pill.kmb{
  border:1px solid #e0bf3a;background:#fff2ba;color:#856300
}
#rbens-quote-app .rbens-origin-pill.particular{
  border:1px solid #accbd2;background:#e2f0f2;color:#325c67
}
#rbens-quote-app .rbens-grid{
  display:grid;
  gap:12px;
}
#rbens-quote-app .rbens-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
#rbens-quote-app .rbens-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
#rbens-quote-app label{
  color:#314650;
  font-size:10px;
  font-weight:800;
}
#rbens-quote-app input,
#rbens-quote-app select,
#rbens-quote-app textarea{
  width:100%;
  min-height:44px;
  margin-top:6px;
  padding:9px 11px;
  border:1px solid #cfd8dc;
  border-radius:9px;
  background:#fff;
  color:#1f333d;
  font-size:13px;
  box-shadow:none;
}
#rbens-quote-app textarea{min-height:78px;resize:vertical}
#rbens-quote-app input:focus,
#rbens-quote-app select:focus,
#rbens-quote-app textarea:focus{
  outline:none;
  border-color:var(--bens-gold);
  box-shadow:0 0 0 3px rgba(213,173,28,.13);
}
#rbens-quote-app .rbens-inline-notice{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-top:13px;
  padding:11px 12px;
  border:1px solid #dfcc77;
  border-radius:10px;
  background:#fff9df;
}
#rbens-quote-app .rbens-inline-notice .dashicons{color:#a78000}
#rbens-quote-app .rbens-inline-notice strong{display:block;color:#5d520f;font-size:10px}
#rbens-quote-app .rbens-inline-notice p{margin:2px 0 0;color:#766f48;font-size:9px}

#rbens-quote-app .rbens-quote-sidebar{
  position:sticky;
  top:22px;
}
#rbens-quote-app .rbens-summary-card{
  overflow:hidden;
  border:1px solid #d1dadd;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 34px rgba(29,46,55,.1);
}
#rbens-quote-app .rbens-summary-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 17px;
  background:linear-gradient(135deg,#2b424d,#365561);
  color:#fff;
}
#rbens-quote-app .rbens-summary-head span{
  color:#e7c74b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
}
#rbens-quote-app .rbens-summary-head h2{
  margin:2px 0 0;color:#fff;font:700 21px Georgia,serif
}
#rbens-quote-app .rbens-summary-head i{
  width:8px;height:8px;border-radius:50%;background:#6dd89c;
  box-shadow:0 0 0 5px rgba(109,216,156,.12)
}
#rbens-quote-app .rbens-discount-box{
  display:grid;
  grid-template-columns:1fr 96px;
  align-items:center;
  gap:10px;
  margin:14px;
  padding:11px 12px;
  border:1px solid #ead58a;
  border-radius:10px;
  background:#fff9e5;
}
#rbens-quote-app .rbens-discount-box strong,
#rbens-quote-app .rbens-discount-box small{display:block}
#rbens-quote-app .rbens-discount-box strong{font-size:11px;color:#374a53}
#rbens-quote-app .rbens-discount-box small{margin-top:2px;color:#7c8171;font-size:8px}
#rbens-quote-app .rbens-discount-box label{
  display:flex;
  align-items:center;
  overflow:hidden;
  border:1px solid #d4dadd;
  border-radius:8px;
  background:#fff;
}
#rbens-quote-app .rbens-discount-box input{
  min-height:38px;
  margin:0;
  border:0;
  border-radius:0;
  text-align:center;
}
#rbens-quote-app .rbens-discount-box b{
  padding:0 10px;color:#53646c;font-size:11px
}
#rbens-quote-app .rbens-summary-lines{
  padding:0 16px;
}
#rbens-quote-app .rbens-summary-lines>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid #edf0f1;
}
#rbens-quote-app .rbens-summary-lines span{
  color:#68777e;font-size:10px
}
#rbens-quote-app .rbens-summary-lines strong{
  color:#263b45;font-size:12px
}
#rbens-quote-app .rbens-summary-lines .rbens-discount-row strong{color:#23804f}
#rbens-quote-app .rbens-grand-total{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin:13px 14px;
  padding:15px;
  border:1px solid #e2c34e;
  border-radius:11px;
  background:linear-gradient(135deg,#fff8d7,#fff2b8);
}
#rbens-quote-app .rbens-grand-total span{
  color:#6b5b14;font-size:9px;font-weight:900;letter-spacing:.08em
}
#rbens-quote-app .rbens-grand-total strong{
  color:#ad5700;font-size:25px;line-height:1
}
#rbens-quote-app .rbens-payment-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  margin:0 14px;
  overflow:hidden;
  border:1px solid #dce3e6;
  border-radius:10px;
  background:#f5f8f9;
}
#rbens-quote-app .rbens-payment-split>div{padding:11px 12px}
#rbens-quote-app .rbens-payment-split>div+div{border-left:1px solid #dce3e6}
#rbens-quote-app .rbens-payment-split span,
#rbens-quote-app .rbens-payment-split strong{display:block}
#rbens-quote-app .rbens-payment-split span{color:#758188;font-size:8px}
#rbens-quote-app .rbens-payment-split strong{margin-top:3px;color:#2d4853;font-size:12px}
#rbens-quote-app .rbens-payment-note{
  margin:11px 15px 0;
  color:#78848a;
  font-size:8px;
  line-height:1.45;
}
#rbens-quote-app .rbens-form-actions{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:8px;
  margin:14px;
}
#rbens-quote-app .rbens-primary-button,
#rbens-quote-app .rbens-secondary-button{
  min-height:43px;
  border-radius:9px;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
#rbens-quote-app .rbens-primary-button{
  border:1px solid var(--bens-gold);
  background:var(--bens-gold);
  color:#20333d;
}
#rbens-quote-app .rbens-secondary-button{
  border:1px solid #ccd5d9;
  background:#fff;
  color:#52636b;
}
#rbens-quote-app .rbens-message{margin:0 14px 14px}

/* Historial reciente integrado al estilo administrativo */
.rbens-front-wrap .rbens-history-panel{
  max-width:none!important;
  width:100%!important;
  margin:18px auto 0!important;
  padding:19px!important;
  border:1px solid #dbe1e4;
  border-radius:18px;
  background:#fff;
  box-shadow:0 16px 48px rgba(28,45,54,.12);
}
.rbens-front-wrap .rbens-history-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.rbens-front-wrap .rbens-history-card{
  border-radius:11px;
  background:#f9fbfb;
}

/* Responsive */
@media(max-width:1100px){
  .rbens-front-wrap{width:min(980px,calc(100vw - 32px))!important}
  #rbens-quote-app .rbens-dashboard-header{align-items:flex-start;flex-direction:column}
  #rbens-quote-app .rbens-dashboard-tools{width:100%}
  #rbens-quote-app .rbens-dashboard-form{grid-template-columns:1fr!important}
  #rbens-quote-app .rbens-quote-sidebar{position:static}
}
@media(max-width:700px){
  .rbens-front-wrap{width:calc(100vw - 18px)!important}
  #rbens-quote-app.rbens-dashboard{border-radius:15px}
  #rbens-quote-app .rbens-dashboard-header{padding:17px}
  #rbens-quote-app .rbens-dashboard-brand h1{font-size:22px}
  #rbens-quote-app .rbens-dashboard-tools{grid-template-columns:repeat(2,1fr)}
  #rbens-quote-app .rbens-type-switcher{grid-template-columns:1fr;padding:10px}
  #rbens-quote-app .rbens-dashboard-form{padding:10px!important}
  #rbens-quote-app .rbens-panel{padding:15px}
  #rbens-quote-app .rbens-grid-3,
  #rbens-quote-app .rbens-grid-2{grid-template-columns:1fr}
  #rbens-quote-app .rbens-panel-title h2{font-size:19px}
  .rbens-front-wrap .rbens-history-list{grid-template-columns:1fr}
}


/* =========================================================
   V5.1 — AJUSTE DE ESTRUCTURA Y TERMINACIÓN PROFESIONAL
   Corrige espacios vacíos, alineaciones y jerarquía visual.
   ========================================================= */

@media(min-width:1101px){
  .rbens-front-wrap{
    width:min(1360px,calc(100vw - 72px))!important;
  }

  /* La estructura ahora usa tres filas claras:
     1. Cliente a todo el ancho
     2. Configuración + resumen
     3. Información adicional a todo el ancho */
  #rbens-quote-app .rbens-dashboard-form{
    grid-template-columns:minmax(0,1fr) 340px!important;
    grid-template-rows:auto auto auto!important;
    gap:16px!important;
    align-items:start!important;
    padding:18px!important;
  }

  #rbens-quote-app .rbens-form-main{
    display:contents!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(1){
    grid-column:1 / -1!important;
    grid-row:1!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2){
    grid-column:1!important;
    grid-row:2!important;
    align-self:stretch!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3){
    grid-column:1 / -1!important;
    grid-row:3!important;
  }

  #rbens-quote-app .rbens-quote-sidebar{
    grid-column:2!important;
    grid-row:2!important;
    position:relative!important;
    top:auto!important;
    align-self:stretch!important;
  }

  #rbens-quote-app .rbens-summary-card{
    height:100%;
    display:flex;
    flex-direction:column;
  }

  #rbens-quote-app .rbens-summary-lines{
    flex:1 0 auto;
  }

  #rbens-quote-app .rbens-form-actions{
    margin-top:auto;
  }
}

/* Encabezado mejor equilibrado */
#rbens-quote-app .rbens-dashboard-header{
  min-height:106px;
}
#rbens-quote-app .rbens-dashboard-brand{
  min-width:330px;
}
#rbens-quote-app .rbens-dashboard-tools{
  grid-template-columns:repeat(4,112px);
}
#rbens-quote-app .rbens-dashboard-tools a{
  min-height:58px;
}

/* Paneles más parejos */
#rbens-quote-app .rbens-panel{
  box-sizing:border-box;
}
#rbens-quote-app .rbens-panel-title{
  min-height:38px;
}
#rbens-quote-app .rbens-panel>label{
  display:block!important;
  width:100%!important;
  margin-top:14px;
}
#rbens-quote-app .rbens-panel textarea{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:100%!important;
  min-height:105px!important;
  box-sizing:border-box!important;
  resize:vertical!important;
}

/* Información adicional compacta y horizontal */
@media(min-width:1101px){
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3){
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:18px;
  }
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3) .rbens-panel-title{
    grid-column:1 / -1;
  }
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3)>.rbens-grid{
    grid-column:1;
    align-content:start;
  }
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3)>label{
    grid-column:2;
    margin-top:0;
  }
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3) textarea{
    min-height:106px!important;
  }
}

/* Resumen derecho mejor cerrado */
#rbens-quote-app .rbens-summary-card{
  border-radius:15px;
}
#rbens-quote-app .rbens-summary-head{
  min-height:74px;
}
#rbens-quote-app .rbens-summary-lines>div{
  min-height:42px;
}
#rbens-quote-app .rbens-grand-total{
  margin-top:12px;
}
#rbens-quote-app .rbens-payment-note{
  padding:0 2px;
}
#rbens-quote-app .rbens-form-actions{
  grid-template-columns:1fr 1.25fr;
}
#rbens-quote-app .rbens-primary-button,
#rbens-quote-app .rbens-secondary-button{
  white-space:nowrap;
}

/* Historial reciente como lista administrativa, no como tarjetas sueltas */
.rbens-front-wrap .rbens-history-panel{
  width:min(1360px,calc(100vw - 72px))!important;
  padding:20px!important;
}
.rbens-front-wrap .rbens-history-heading{
  margin-bottom:14px;
}
.rbens-front-wrap .rbens-history-list{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.rbens-front-wrap .rbens-history-card{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) 190px 220px!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  padding:13px 15px!important;
  border:1px solid #dde3e5!important;
  border-radius:11px!important;
  background:#fafcfc!important;
}
.rbens-front-wrap .rbens-history-card:hover{
  border-color:#d2ad1d!important;
  background:#fffdf5!important;
}
.rbens-front-wrap .rbens-history-main>strong{
  margin-top:5px;
}
.rbens-front-wrap .rbens-history-total{
  padding-left:16px;
  border-left:1px solid #e2e7e9;
}
.rbens-front-wrap .rbens-history-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
  grid-column:auto!important;
  justify-content:stretch!important;
}
.rbens-front-wrap .rbens-history-actions a,
.rbens-front-wrap .rbens-history-actions button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  min-height:36px!important;
  margin:0!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  font-size:9px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.rbens-front-wrap .rbens-history-pdf{
  border:1px solid #c9d4d8!important;
  background:#fff!important;
  color:#334c57!important;
}
.rbens-front-wrap .rbens-history-actions .rbens-delete-quote{
  border:1px solid #efceca!important;
  background:#fff7f6!important;
  color:#a23e34!important;
}
.rbens-front-wrap .rbens-history-actions .dashicons{
  width:14px!important;
  height:14px!important;
  font-size:14px!important;
}

/* Evita que el botón flotante de WhatsApp tape guardar */
@media(min-width:1101px){
  #rbens-quote-app .rbens-quote-sidebar{
    padding-bottom:18px;
  }
}

/* Tablets */
@media(max-width:1100px){
  #rbens-quote-app .rbens-form-main{
    display:grid!important;
  }
  .rbens-front-wrap .rbens-history-card{
    grid-template-columns:minmax(0,1fr) 170px!important;
  }
  .rbens-front-wrap .rbens-history-actions{
    grid-column:1 / -1!important;
  }
}

/* Celulares */
@media(max-width:700px){
  #rbens-quote-app .rbens-dashboard-header{
    min-height:0;
  }
  #rbens-quote-app .rbens-dashboard-brand{
    min-width:0;
  }
  #rbens-quote-app .rbens-dashboard-tools{
    grid-template-columns:repeat(2,1fr);
  }
  .rbens-front-wrap .rbens-history-panel{
    width:calc(100vw - 18px)!important;
  }
  .rbens-front-wrap .rbens-history-card{
    grid-template-columns:1fr!important;
  }
  .rbens-front-wrap .rbens-history-total{
    padding-left:0;
    border-left:0;
  }
}


/* =========================================================
   V5.2 — CORRECCIÓN DE BLOQUE CONFIGURACIÓN + RESUMEN
   ========================================================= */

@media(min-width:1101px){

  #rbens-quote-app .rbens-dashboard-form{
    align-items:start!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2){
    align-self:start!important;
    min-height:0!important;
    height:auto!important;
    padding:20px 22px 22px!important;
    background:linear-gradient(180deg,#ffffff 0%,#ffffff 75%,#fbfcfc 100%)!important;
  }

  #rbens-quote-app .rbens-quote-sidebar{
    align-self:start!important;
    height:auto!important;
  }

  #rbens-quote-app .rbens-summary-card{
    height:auto!important;
    min-height:0!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) .rbens-panel-title{
    margin-bottom:18px!important;
    padding-bottom:14px!important;
    border-bottom:1px solid #edf0f1!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) .rbens-grid{
    gap:14px 16px!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) label{
    position:relative;
    padding:12px 13px 13px;
    border:1px solid #e1e6e8;
    border-radius:11px;
    background:#fbfcfc;
    transition:.18s ease;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) label:focus-within{
    border-color:#d5ad1c;
    background:#fffdf6;
    box-shadow:0 0 0 3px rgba(213,173,28,.09);
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) label select,
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) label input{
    margin-top:7px!important;
    background:#fff!important;
  }

  #rbens-quote-app .rbens-summary-head{
    min-height:66px!important;
    padding:14px 16px!important;
  }

  #rbens-quote-app .rbens-discount-box{
    margin:12px!important;
    padding:10px 11px!important;
  }

  #rbens-quote-app .rbens-summary-lines{
    padding:0 14px!important;
  }

  #rbens-quote-app .rbens-summary-lines>div{
    min-height:38px!important;
    padding:8px 0!important;
  }

  #rbens-quote-app .rbens-grand-total{
    margin:11px 12px!important;
    padding:13px 14px!important;
  }

  #rbens-quote-app .rbens-grand-total strong{
    font-size:24px!important;
  }

  #rbens-quote-app .rbens-payment-split{
    margin:0 12px!important;
  }

  #rbens-quote-app .rbens-payment-split>div{
    padding:10px 11px!important;
  }

  #rbens-quote-app .rbens-payment-note{
    margin:10px 13px 0!important;
    line-height:1.35!important;
  }

  #rbens-quote-app .rbens-form-actions{
    margin:12px!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3){
    margin-top:0!important;
  }
}

#rbens-quote-app .rbens-origin-pill{
  white-space:nowrap;
}

#rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) select{
  cursor:pointer;
}

#rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) select:hover{
  border-color:#aebcc2;
}

@media(max-width:1100px){
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2) label{
    padding:0;
    border:0;
    background:transparent;
  }
}

@media(max-width:700px){
  #rbens-quote-app .rbens-summary-card{
    border-radius:13px;
  }
}


/* =========================================================
   V5.3 — ESTRUCTURA DINÁMICA REAL
   La columna izquierda crece por su contenido y el resumen
   derecho permanece independiente.
   ========================================================= */

@media(min-width:1101px){

  #rbens-quote-app .rbens-dashboard-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 340px!important;
    grid-template-rows:auto!important;
    align-items:start!important;
    gap:16px!important;
  }

  /* Restablece la columna izquierda como contenedor real */
  #rbens-quote-app .rbens-form-main{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
  }

  /* Elimina ubicaciones rígidas heredadas de la versión anterior */
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(1),
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(2),
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3){
    grid-column:auto!important;
    grid-row:auto!important;
    align-self:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
  }

  /* Información adicional vuelve a ser una sección normal */
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3){
    display:block!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3) .rbens-panel-title,
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3)>.rbens-grid,
  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3)>label{
    grid-column:auto!important;
    display:block!important;
    width:100%!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3)>label{
    margin-top:14px!important;
  }

  #rbens-quote-app .rbens-form-main>.rbens-panel:nth-child(3) textarea{
    min-height:92px!important;
  }

  /* El resumen ya no define la altura de ninguna fila */
  #rbens-quote-app .rbens-quote-sidebar{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    position:sticky!important;
    top:22px!important;
    height:auto!important;
  }

  #rbens-quote-app .rbens-summary-card{
    height:auto!important;
    min-height:0!important;
  }
}

/* En pantallas medianas y móviles todo fluye en una sola columna */
@media(max-width:1100px){
  #rbens-quote-app .rbens-dashboard-form{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  #rbens-quote-app .rbens-form-main{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  #rbens-quote-app .rbens-quote-sidebar{
    position:static!important;
    grid-column:auto!important;
    grid-row:auto!important;
  }
}


/* =========================================================
   V5.4 — ESTRUCTURA EXACTA SOLICITADA
   Header > Solapas > Cliente > [Izquierda + Resumen] > Historial
   ========================================================= */

#rbens-quote-app .rbens-dashboard-form{
  display:block!important;
  padding:18px!important;
}

#rbens-quote-app .rbens-client-wide{
  width:100%!important;
  margin:0 0 16px!important;
}

#rbens-quote-app .rbens-workspace-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 350px;
  gap:16px;
  align-items:stretch;
}

#rbens-quote-app .rbens-workspace-left{
  display:grid;
  grid-template-rows:auto auto;
  gap:16px;
  min-width:0;
}

#rbens-quote-app .rbens-workspace-left>.rbens-panel{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
}

#rbens-quote-app .rbens-quote-sidebar{
  position:relative!important;
  top:auto!important;
  height:100%!important;
  align-self:stretch!important;
}

#rbens-quote-app .rbens-summary-card{
  height:100%!important;
  min-height:100%!important;
  display:flex!important;
  flex-direction:column!important;
}

#rbens-quote-app .rbens-summary-lines{
  flex:1 0 auto;
}

#rbens-quote-app .rbens-form-actions{
  margin-top:auto!important;
}

/* El panel de información adicional ocupa exactamente la segunda fila izquierda */
#rbens-quote-app .rbens-workspace-left>.rbens-panel:last-child{
  display:block!important;
}

#rbens-quote-app .rbens-workspace-left>.rbens-panel:last-child>label{
  display:block!important;
  width:100%!important;
  margin-top:14px!important;
}

#rbens-quote-app .rbens-workspace-left>.rbens-panel:last-child textarea{
  width:100%!important;
  max-width:none!important;
  min-height:92px!important;
  box-sizing:border-box!important;
}

/* Historial a todo el ancho del mismo sistema */
.rbens-front-wrap .rbens-history-panel{
  width:100%!important;
  max-width:none!important;
  margin:18px auto 0!important;
}

/* Escritorio */
@media(min-width:1101px){
  .rbens-front-wrap{
    width:min(1360px,calc(100vw - 72px))!important;
  }

  #rbens-quote-app .rbens-client-wide .rbens-grid-3{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  #rbens-quote-app .rbens-workspace-left>.rbens-panel:first-child .rbens-grid-2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  #rbens-quote-app .rbens-workspace-left>.rbens-panel:last-child .rbens-grid-2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Tablet */
@media(max-width:1100px){
  #rbens-quote-app .rbens-workspace-grid{
    grid-template-columns:1fr!important;
  }

  #rbens-quote-app .rbens-quote-sidebar{
    height:auto!important;
  }

  #rbens-quote-app .rbens-summary-card{
    height:auto!important;
    min-height:0!important;
  }
}

/* Móvil */
@media(max-width:700px){
  #rbens-quote-app .rbens-dashboard-form{
    padding:10px!important;
  }

  #rbens-quote-app .rbens-workspace-left{
    gap:10px;
  }

  #rbens-quote-app .rbens-client-wide{
    margin-bottom:10px!important;
  }
}


/* Tarifario particular por posada y temporada v5.6 */
#rbens-quote-app input[readonly]{
  background:#f4f7f8!important;
  color:#2a4652!important;
  font-weight:800!important;
  cursor:default;
}
#rbens-quote-app .rbens-particular-pricing-grid{
  align-items:end;
}
.rbens-money-input{
  display:flex;
  align-items:center;
  overflow:hidden;
  min-width:150px;
  border:1px solid #ccd4d7;
  border-radius:9px;
  background:#fff;
}
.rbens-money-input span{
  padding:10px;
  background:#f1eee5;
  color:#4d626c;
  font-weight:900;
}
.rbens-money-input input{
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  min-width:90px!important;
}
.rbens-pricing-admin .rbens-season-card{
  margin:12px 0;
  border:1px solid #ded7ca;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.rbens-pricing-admin .rbens-season-card summary{
  padding:14px 16px;
  cursor:pointer;
  background:#f8f5ed;
  color:#263b46;
}


/* Editor completo de particulares v5.7 */
.rbens-markup-editor{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.rbens-markup-card{
  padding:17px;
  border:1px solid #ddd6c8;
  border-radius:14px;
  background:#fff;
}
.rbens-markup-card h3{
  margin:0 0 13px;
  color:#263b46;
}
.rbens-markup-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px;
  gap:10px;
  margin-top:9px;
}
.rbens-percent-input{
  display:flex;
  overflow:hidden;
  border:1px solid #ccd4d7;
  border-radius:9px;
  background:#fff;
}
.rbens-percent-input input{
  margin:0!important;
  border:0!important;
  border-radius:0!important;
}
.rbens-percent-input b{
  display:grid;
  place-items:center;
  padding:0 11px;
  background:#f1eee5;
}
.rbens-season-label-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.rbens-season-label-grid label span{
  display:block;
  margin-bottom:5px;
  color:#77848a;
  font-size:10px;
}
.rbens-code-input{
  margin-top:6px!important;
  background:#f3f6f7!important;
  color:#617078!important;
  font-family:monospace;
  font-size:11px!important;
}
.rbens-units-table td{
  vertical-align:top!important;
}
.rbens-delete-link{
  display:inline-flex;
  padding:8px 10px;
  border:1px solid #efcbc7;
  border-radius:8px;
  background:#fff7f6;
  color:#a43b31;
  text-decoration:none;
}
.rbens-add-combination{
  margin-top:16px;
  border:1px solid #d9d2c4;
  border-radius:13px;
  background:#faf8f2;
}
.rbens-add-combination summary{
  padding:14px 16px;
  cursor:pointer;
  font-weight:800;
}
.rbens-add-combination>div,
.rbens-add-combination>button{
  margin:0 16px 16px;
}
.rbens-add-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.rbens-sticky-actions{
  display:flex;
  gap:10px;
  align-items:center;
}
.rbens-season-card summary{
  display:flex;
  justify-content:space-between;
  gap:15px;
}
.rbens-season-card summary span{
  color:#7b878d;
  font-size:11px;
  font-weight:400;
}
@media(max-width:900px){
  .rbens-markup-editor,
  .rbens-season-label-grid,
  .rbens-add-grid{
    grid-template-columns:1fr;
  }
  .rbens-markup-row{
    grid-template-columns:1fr;
  }
}
