
:root { --shine-brand-logo: url("data:image/png;base64,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"); }



  :root {
    color-scheme: light;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #173d33;
    background: #f4f7f5;
  }
  * { box-sizing: border-box; }
  body { margin: 0; min-height: 100vh; }
  button, input { font: inherit; }
  .hidden { display: none !important; }
  .page-shell {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 28px 18px;
    background:
      radial-gradient(circle at 12% 16%, rgba(255, 235, 59, .26), transparent 32%),
      radial-gradient(circle at 88% 86%, rgba(11, 77, 59, .18), transparent 34%),
      linear-gradient(135deg, #fdf8c8 0%, #f7f7ed 46%, #edf5f1 100%);
  }
  .access-card, .native-app {
    width: min(100%, 460px);
    padding: 36px;
    border: 1px solid rgba(11, 77, 59, .12);
    border-radius: 24px;
    background: rgba(255,255,255,.97);
    box-shadow: 0 24px 70px rgba(11,77,59,.14), 0 8px 24px rgba(0,0,0,.06);
  }
  .access-header { text-align: center; margin-bottom: 26px; }
  .access-logo, .success-icon {
    width: 66px; height: 66px; margin: 0 auto 18px;
    display: grid; place-items: center; border-radius: 20px;
    background: linear-gradient(145deg, #0b5b42, #073d2e);
    color: #fff28b; font-size: 26px; font-weight: 900;
    box-shadow: 0 12px 26px rgba(11,77,59,.25);
  }
  
  .eyebrow { margin: 0 0 8px; color: #3158db; font-size: 12px; font-weight: 900; letter-spacing: .1em; }
  h1 { margin: 0 0 8px; font-size: 29px; line-height: 1.12; letter-spacing: -.03em; }
  h2 { margin: 0 0 6px; font-size: 22px; }
  p { color: #667b74; line-height: 1.55; }
  .access-form { animation: enter .22s ease; }
  @keyframes enter { from { opacity: 0; transform: translateY(7px); } }
  .form-heading { text-align: center; margin-bottom: 22px; }
  .form-heading p { margin: 0; font-size: 13px; }
  .field { display: block; margin-bottom: 17px; color: #294f44; font-size: 13px; font-weight: 750; }
  .field > span { display: block; margin-bottom: 7px; }
  .field input, .input-wrap {
    width: 100%; min-height: 50px; border: 1px solid #d6e2de; border-radius: 13px;
    background: #f8faf9; outline: none;
  }
  .field > input { padding: 0 14px; }
  .field input:focus, .input-wrap:focus-within { border-color: #0b5b42; box-shadow: 0 0 0 3px rgba(11,91,66,.12); background: white; }
  .input-wrap { display: flex; align-items: center; gap: 10px; padding: 0 12px; }
  .input-wrap input { min-height: 46px; padding: 0; border: 0; background: transparent; box-shadow: none; }
  .password-toggle { border: 0; background: transparent; cursor: pointer; padding: 6px; }
  .primary-button, .secondary-button {
    width: 100%; min-height: 50px; border-radius: 13px; cursor: pointer; font-weight: 850;
  }
  .primary-button { border: 0; color: white; background: #086044; box-shadow: 0 10px 22px rgba(8,96,68,.18); }
  .primary-button:hover { background: #064d37; }
  .primary-button:disabled { opacity: .62; cursor: wait; }
  .secondary-button { margin-top: 10px; border: 1px solid #cbdad5; color: #17483a; background: white; }
  .access-links { display: flex; justify-content: center; gap: 10px; margin-top: 20px; font-size: 12px; }
  .access-links button { border: 0; color: #086044; background: transparent; cursor: pointer; font-weight: 750; }
  .message { min-height: 0; margin: 0 0 14px; padding: 0; border-radius: 11px; font-size: 13px; line-height: 1.45; }
  .message:not(:empty) { padding: 11px 12px; border: 1px solid; }
  .message.error:not(:empty) { color: #9d2727; background: #fff0f0; border-color: #ffc9c9; }
  .message.success:not(:empty) { color: #17613d; background: #eefaf4; border-color: #b8e5cc; }
  
  
  
  dt { margin-bottom: 6px; color: #73867f; font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
  dd { margin: 0; font-weight: 800; overflow-wrap: anywhere; }
  @media (max-width: 560px) {
    .access-card, .native-app { padding: 26px 20px; }
    
  }

/* ==================================================
   PREVENTA / DEMO OPERATIONS v1.1
================================================== */
body.presales-workspace #openAdminButton:not(.hidden){display:none!important}


/* Panel de administración: aislado del bootstrap y adaptable a pantallas pequeñas. */

























  .page-shell:has(.workspace-screen:not(.hidden)) { width:min(1480px,100%); padding:22px; }
  .workspace-screen{width:100%;min-height:calc(100vh - 44px);background:#f5f7fb;border:1px solid #dbe3ef;border-radius:26px;overflow:hidden;box-shadow:0 24px 70px rgba(15,23,42,.14)}
  .workspace-topbar{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 30px;background:#fff;border-bottom:1px solid #e4e9f2}
  .workspace-topbar h1{margin:4px 0 6px;font-size:clamp(1.8rem,3vw,2.7rem);color:#0e4435}
  .workspace-subtitle{margin:0;color:#68758a}.workspace-user-area{display:flex;align-items:center;gap:12px}
  .secondary-button.compact{width:auto;margin:0;padding:11px 15px}.secondary-button.danger{color:#a62020;border-color:#efb6b6}
  .connection-badge,.widget-badge{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#e8f6ee;color:#12603f;font-weight:800;font-size:.8rem;white-space:nowrap}
  
  
  .native-empty{display:grid;place-items:center;text-align:center;min-height:170px;color:#768397}.native-empty strong{display:block;color:#2a4f45;margin-bottom:6px}.native-loading{display:flex;gap:7px;align-items:center;justify-content:center;min-height:170px;color:#69778b}.native-loading span{width:8px;height:8px;border-radius:50%;background:#1b6f50;animation:pulse 1s infinite alternate}.native-loading span:nth-child(2){animation-delay:.15s}.native-loading span:nth-child(3){animation-delay:.3s}@keyframes pulse{to{opacity:.25;transform:translateY(-4px)}}
  @media(max-width:980px){.workspace-topbar{align-items:flex-start;flex-direction:column}.workspace-user-area{width:100%;flex-wrap:wrap}}
  @media(max-width:620px){.page-shell:has(.workspace-screen:not(.hidden)){padding:0}.workspace-screen{border-radius:0;min-height:100vh}.workspace-topbar,.dashboard-shell{padding:20px}}



:root {
  --bg: #FFF389;
  --card: rgba(255,255,255,0.86);
  --text: #0e4e29;
  --muted: #0e4e29;
  --line: #0e4e29;
  --accent: #0e4e29;
  --soft: #c9cfd3;
  --shadow: 0 24px 70px rgba(31, 41, 51, 0.12);
  --radius: 24px;
  --tabs-border-color: #ABCDEF;
  --tabs-border-size: 3px;
  --tabs-text-color: white;
  --tabs-dark-color: #012345;
  --tabs-lite-color: #345678;
  --tabs-width: 120px;
  --tabs-height: 40px;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--bg);
  color: var(--text);
}











.hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: center;
  gap: 40px;
  margin-bottom: 22px;
  background: var(--card);
  border: 1px solid rgba(255,255,255,0.7);
  box-shadow: var(--shadow);
  border-radius: var(--radius);
  padding: clamp(18px, 3vw, 30px);
  backdrop-filter: blur(14px);
}

.hero-content {
    min-width: 0;
}

.hero-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 18px;
    width: 100%;
}



.hero-button {
  position: static;
  width: auto;
  height: auto;
  padding: 14px 22px;
  border: 3px solid;
  border-radius: var(--radius) var(--radius) var(--radius) var(--radius);
  background: var(--text);
  color: var(--card);
  font-size: 20px;
  font-weight: 700;
  cursor: pointer;
}



#generateBudgetBtn {
    width: 100%;
    min-height: 54px;
}

.eyebrow {
  margin: 0 0 8px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 12px;
  font-weight: 700;
}

h1 {
  margin: 0;
  font-size: clamp(30px, 5vw, 54px);
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.subtitle {
  max-width: 660px;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.5;
}



.grid {
  display: grid;
  gap: 16px;
  margin-bottom: 16px;
}

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

.field span {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 750;
  color: #374151;
}



.doble {
  display: flex;
  justify-content: space-between;
}



.doble input {
  max-width: 60%;
}

.tabla {
  display: grid;
  grid-template-columns: minmax(110px, 1fr) minmax(120px, 1fr);
  gap: 14px 16px;
  align-items: center;
}

.tabla .total-title,
.tabla .total-value,
.tabla .right-column {
  grid-column: 1 / -1;
  justify-self: center;
  text-align: center;
}

.tabla .label {
  border-bottom: 1px solid #003b6f;
  padding: 12px 18px;
}

.tabla input {
  width: 100%;
  box-sizing: border-box;
}

.total-title,
.total-value {
  justify-self: center;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

select, input {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 15px 16px;
  background: #fff;
  color: var(--text);
  font-size: 16px;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}

select:focus, input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 4px rgba(17,24,39,0.08);
}

.hidden {
  display: none;
}

.notice {
  display: none;
  margin: 6px 0 18px;
  padding: 14px 16px;
  border-radius: 16px;
  background: var(--soft);
  color: #4b5563;
  font-size: 14px;
  line-height: 1.45;
}

.notice.visible { display: block; }





h2 {
  margin: 0;
  font-size: clamp(34px, 6vw, 64px);
  line-height: 1;
  letter-spacing: -0.05em;
}

#resultSubtitle {
  margin: 10px 0 0;
  color: rgba(255,255,255,0.7);
}

button {
  border: 0;
  border-radius: 999px;
  padding: 13px 18px;
  background: #fff;
  color: #111827;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
}



.row {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 18px;
  border-bottom: 1px solid var(--line);
}

.row:last-child { border-bottom: 0; }
.row span { color: var(--muted); }
.row strong { text-align: right; }

@media (max-width: 680px) {
  .grid.two { grid-template-columns: 1fr; }
  .hero { display: block; }
  
  button { width: 100%; }
}
.info-modal.hidden {
  display: none;
}

@media (max-width: 760px) {
    .hero {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .hero-actions {
        max-width: 320px;
        justify-self: center;
    }

    
}

.info-modal {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}

.info-modal-card {
  width: min(760px, 100%);
  max-height: 85vh;
  overflow-y: auto;
  background: #ffffff;
  color: #111827;
  border-radius: 20px;
  padding: 28px;
  position: relative;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.25);
}

.info-close {
  position: absolute;
  top: 16px;
  right: 18px;
  border: 0;
  background: transparent;
  font-size: 30px;
  cursor: pointer;
}

.info-button {
  border: 0;
  border-radius: 12px;
  padding: 12px 16px;
  cursor: pointer;
  font-weight: 600;
  background: var(--muted);
  color: var(--card);
}

.info-app-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 20px 0;
}

.info-app-btn {
  border: 1px solid #d1d5db;
  background: #f9fafb;
  border-radius: 999px;
  padding: 9px 14px;
  cursor: pointer;
  font-weight: 600;
}

.info-app-btn.active {
  background: #111827;
  color: #ffffff;
  border-color: #111827;
}

.info-content {
  display: none;
  border-top: 1px solid #e5e7eb;
  padding-top: 18px;
  line-height: 1.6;
}

.info-content.active {
  display: block;
}

.accordion-item {
  border: 1px solid #ddd;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

.accordion-header {
  width: 100%;
  padding: 14px 16px;
  background: #f7f7f7;
  border: 0;
  text-align: left;
  font-weight: 600;
  cursor: pointer;
}

.accordion-content {
  display: none;
  padding: 16px;
  background: white;
}

.accordion-item.active .accordion-content {
  display: block;
}













.erp-calculator {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.erp-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.erp-title {
  margin: 0;
  color: var(--text);
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: -0.03em;
}

.erp-subtitle {
  margin: 10px 0 0;
  color: var(--muted);
}

.erp-plan-summary {
  overflow: hidden;
  border: 1px solid #d9e2ef;
  border-radius: 18px;
  background: #fff;
}

.erp-pricing-block {
  padding: 18px;
  border-bottom: 1px solid #d9e2ef;
}

.erp-pricing-head,
.erp-base-row {
  display: grid;
  grid-template-columns:
    minmax(110px, 0.8fr)
    minmax(190px, 1.2fr)
    90px
    minmax(150px, 0.9fr);

  gap: 16px;
  align-items: center;
}

.erp-pricing-head {
  margin-bottom: 10px;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.erp-pricing-head span:last-child {
  text-align: right;
}

.erp-plan-summary strong {
  color: var(--text);
  font-size: 20px;
}

.erp-table-card {
  overflow: hidden;
  border: 1px solid #d9e2ef;
  border-radius: 20px;
  background: #fff;
  margin-top: 4px;
}

.erp-table-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 18px 20px;
  background: var(--text);
  color: #fff;
}

.erp-table-title h3 {
  margin: 0;
  font-size: 16px;
}

.erp-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  font-size: 12px;
}

.erp-legend span {
  display: flex;
  align-items: center;
  gap: 6px;
}

.status {
  display: inline-block;
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
}

.status.included {
  border-radius: 50%;
  background: var(--bg);
}

.erp-table-title .status.included {
  background: var(--bg);
}

.status.optional {
  border: 2px solid var(--bg);
  border-radius: 50%;
  background: transparent;
}

.erp-table-title .status.optional {
  border-color: var(--bg);
}

.status.unavailable {
  position: relative;
}

.status.unavailable::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 10px;
  height: 2px;
  background: var(--bg);
}

.erp-feature-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(120px, auto);
  align-items: center;
  gap: 20px;
  padding: 13px 20px;
  border-bottom: 1px solid #e5eaf1;
}

.erp-feature-row:last-child {
  border-bottom: 0;
}

.erp-feature-name {
  color: var(--text);
  font-weight: 600;
}

.erp-feature-value {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  color: var(--text);
  font-weight: 700;
  text-align: right;
}

.erp-extras-list {
  display: flex;
  flex-direction: column;
}

.erp-extra-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 15px 20px;
  border-bottom: 1px solid #e5eaf1;
}

.erp-extra-row:last-child {
  border-bottom: 0;
}

.erp-extra-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
}

.erp-extra-description {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.erp-extra-description small {
  color: #64748b;
}



#budgetNotes {
  width: 100%;
  min-height: 110px;
  padding: 12px 14px;
  font: inherit;
  line-height: 1.5;
  resize: vertical;
  border: 1px solid #d7e0db;
  border-radius: 10px;
  background: #ffffff;
}

#budgetNotes:focus {
  outline: none;
  border-color: #38775a;
  box-shadow: 0 0 0 3px rgba(56, 119, 90, 0.12);
}





.erp-result {
  overflow: hidden;
  border-radius: 20px;
  background: #111827;
  color: #fff;
  margin-top: 4px;
}

.erp-result > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 15px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.erp-result > div:last-child {
  border-bottom: 0;
}

.erp-result-total {
  padding: 22px 20px !important;
}

.erp-result-total-anual {
  padding: 22px 20px !important;
}

.erp-result-total-anual span {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.erp-result-total span {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.erp-result-total strong {
  font-size: 28px;
}

@media (max-width: 700px) {
  .erp-plan-summary {
    grid-template-columns: 1fr;
  }

  .erp-plan-summary > div {
    border-right: 0;
    border-bottom: 1px solid #d9e2ef;
  }

  .erp-plan-summary > div:last-child {
    border-bottom: 0;
  }

  .erp-table-title {
    align-items: flex-start;
    flex-direction: column;
  }

  .erp-feature-row {
    grid-template-columns: 1fr auto;
  }
}

.erp-layout {
  display: grid;
  grid-template-columns: minmax(520px, 1.6fr) minmax(360px, 1fr);
  gap: 24px;
}

.erp-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.erp-main > .grid {
  margin-bottom: 0;
}

.erp-side-panel {
  min-width: 0;
  position: sticky;
  top: 24px;
  align-self: start;
}

.erp-side-panel .erp-table-card {
  max-height: calc(100vh - 48px);
  overflow: hidden;
}

.erp-side-panel .erp-features-table {
  max-height: calc(100vh - 130px);
  overflow-y: auto;
}

.erp-side-panel .erp-feature-row {
  grid-template-columns: minmax(150px, 1fr) auto;
  gap: 12px;
  padding: 11px 16px;
}

.erp-side-panel .erp-feature-name {
  font-size: 13px;
}

.erp-side-panel .erp-feature-value {
  font-size: 12px;
}



@media (max-width: 1050px) {
  .erp-layout {
    grid-template-columns: 1fr;
  }

  .erp-side-panel {
    position: static;
  }

  .erp-side-panel .erp-table-card,
  .erp-side-panel .erp-features-table {
    max-height: none;
  }
}

.tab-container {
  position: relative;
  padding-top: 0;
}

.tab {
  display: none;
}

.tab.active {
  display: block;
}

.tab-content {
  display: block;
  padding: 28px;
  background: rgba(255, 255, 255, 0.88);
  border-radius: 0 0 22px 22px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
}

.tab-button{
  position:relative;
  padding:0;
  background:none;
  border:none;
  color:rgba(255,255,255,.72);
  font-size:16px;
  font-weight:700;
  transition:.25s;
}

.tab-button:hover{
  color:white;
}

.tab-button.active{
  color:white;
}

.tab-button.active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-18px;
  height:4px;
  border-radius:50px;
  background:#FFF389;
}

.tab.active .tab-button {
  color: var(--text);
  background: transparent;
  border-bottom-color: var(--accent);
}


.tabs {
  padding: 0;
}

.tabs-header {
  display: flex;
  align-items: center;
  gap: 34px;
  min-height: 62px;
  padding: 0 28px;
  background: linear-gradient(180deg, #0b5b42, #083c2d);
  border-radius: 22px 22px 0 0;
}

.tab-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: auto;
  padding: 20px 2px;
  color: rgba(255, 255, 255, 0.68);
  font-family: inherit;
  font-size: 16px;
  font-weight: 750;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  transition: color 0.2s ease, transform 0.2s ease;
}

.tab-button:hover {
  color: #ffffff;
  transform: translateY(-1px);
}

.tab-button.active {
  color: #ffffff;
  background: transparent;
  box-shadow: none;
}

.tab-button.active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 4px;
  background: #fff389;
  border-radius: 999px 999px 0 0;
}

.tab-button-icon {
  font-size: 17px;
}

.erp-extra-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  cursor: pointer;
}

.erp-extra-toggle input {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

.erp-extra-toggle span {
  font-size: 12px;
  font-weight: 700;
}

.erp-extra-row {
  display: grid;
  grid-template-columns:
    28px
    minmax(150px, 1fr)
    minmax(150px, 0.9fr)
    minmax(130px, 0.8fr)
    90px
    minmax(110px, 0.7fr);
  gap: 12px;
  align-items: center;
  padding: 14px 18px;
  border-bottom: 1px solid #e5eaf1;
}

.erp-extra-original-price {
  color: #64748b;
  font-size: 13px;
  text-align: center;
  white-space: nowrap;
}

.erp-extra-final-price {
  text-align: right;
  color: var(--text);
  font-size: 16px;
  white-space: nowrap;
}

.erp-extra-discount-type,
.erp-extra-discount-value {
  padding: 9px 10px;
  border-radius: 10px;
  font-size: 13px;
}

@media (max-width: 900px) {
  .erp-extra-row {
    grid-template-columns: auto 1fr;
  }

  .erp-extra-original-price,
  .erp-extra-discount-type,
  .erp-extra-discount-value,
  .erp-extra-final-price {
    grid-column: 2;
  }

  .erp-extra-final-price {
    text-align: left;
  }
}

.erp-base-row {
    display: grid;
    grid-template-columns:
      1fr
      230px
      90px
      1fr;
    align-items: center;
    gap: 16px;
}

.erp-base-row > strong:first-child {
  text-align: left;
}

.erp-base-row > strong:last-child {
  text-align: right;
  font-size: 18px;
}

.erp-base-row select,
.erp-base-row input {
  width: 100%;
  min-width: 0;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 14px;
}

.erp-users-block {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-users-block > div {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px;
}

.erp-users-block > div:first-child {
  border-right: 1px solid #d9e2ef;
}

.erp-users-block strong {
  font-size: 20px;
}

.erp-base-original,
.erp-base-row strong {
  white-space: nowrap;
}

.erp-base-row strong {
  text-align: right;
  font-size: 18px;
}

@media (max-width: 750px) {
  .erp-pricing-head {
    display: none;
  }

  .erp-base-row {
    grid-template-columns: 1fr;
  }

  .erp-base-row > strong:last-child {
    text-align: left;
  }

  .erp-users-block {
    grid-template-columns: 1fr;
  }

  .erp-users-block > div:first-child {
    border-right: 0;
    border-bottom: 1px solid #d9e2ef;
  }
}
.erp-plan-summary {
  overflow: hidden;
  border: 1px solid #d9e2ef;
  border-radius: 18px;
  background: #fff;
}

/* Bloque superior: precio y descuento */

.erp-pricing-block {
  padding: 18px;
  border-bottom: 1px solid #d9e2ef;
}

.erp-pricing-head,
.erp-base-row {
  display: grid;
  grid-template-columns:
    minmax(110px, 1fr)
    minmax(180px, 1.2fr)
    90px
    minmax(140px, 1fr);
  gap: 16px;
  align-items: center;
}

.erp-pricing-head {
  margin-bottom: 10px;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.erp-pricing-head span:nth-child(2),
.erp-pricing-head span:nth-child(3) {
  text-align: left;
}

.erp-pricing-head span:last-child {
  text-align: right;
}

.erp-base-row strong {
  color: var(--text);
  font-size: 18px;
  white-space: nowrap;
}

.erp-base-row > strong:first-child {
  text-align: left;
}

.erp-base-row > strong:last-child {
  text-align: right;
}

.erp-base-row select,
.erp-base-row input {
  width: 100%;
  min-width: 0;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 14px;
}

/* Bloque inferior: usuarios */

.erp-users-block {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-users-block > div {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px;
}

.erp-users-block > div:first-child {
  border-right: 1px solid #d9e2ef;
}

.erp-summary-label {
  display: block;
  margin: 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.erp-users-block strong {
  color: var(--text);
  font-size: 20px;
}

.erp-extra-tier-select,
.erp-extra-discount-type,
.erp-extra-discount-value {
  width: 100%;
  min-width: 0;
  padding: 9px 10px;
  border-radius: 10px;
  font-size: 13px;
}






























/* ==================================================
   MICRODATA - DISEÑO UNIFICADO CON ERP
================================================== */
.microdata-calculator {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.microdata-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
}

.microdata-title {
  margin: 0;
  color: var(--text);
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: -0.03em;
}

.microdata-subtitle {
  margin: 10px 0 0;
  color: var(--muted);
}

.microdata-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, 0.75fr);
  gap: 24px;
  align-items: start;
}

.microdata-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.microdata-side-panel {
  position: sticky;
  top: 24px;
  align-self: start;
}

.microdata-config-card,
.microdata-table-card {
  overflow: hidden;
  border: 1px solid #d9e2ef;
  border-radius: 20px;
  background: #fff;
}

.microdata-config-card {
  padding: 20px;
}

.microdata-options-grid {
  align-items: start;
  margin-bottom: 0;
}

.microdata-extra-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 100%;
  padding: 14px 16px;
  border: 1px solid #d9e2ef;
  border-radius: 16px;
  background: #f8fafc;
}

.microdata-check-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  font-weight: 700;
}

.microdata-check-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

















.microdata-result-card {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  overflow: hidden;
  border-radius: 20px;
  background: #111827;
  color: #fff;
}

.microdata-result-card > div {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px;
  border-right: 1px solid rgba(255,255,255,.13);
}

.microdata-result-card > div:last-of-type {
  border-right: 0;
}

.microdata-result-card span {
  color: rgba(255,255,255,.68);
}

.microdata-result-card strong {
  font-size: 24px;
}

#microdataBudgetNotes {
  width: 100%;
  min-height: 110px;
  padding: 12px 14px;
  border: 1px solid #d7e0db;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  line-height: 1.5;
  resize: vertical;
}

#microdataBudgetNotes:focus {
  outline: none;
  border-color: #38775a;
  box-shadow: 0 0 0 3px rgba(56,119,90,.12);
}

@media (max-width: 1050px) {
  .microdata-layout {
    grid-template-columns: 1fr;
  }

  .microdata-side-panel {
    position: static;
  }
}

@media (max-width: 760px) {
  .microdata-header,
  .microdata-table-title {
    align-items: flex-start;
    flex-direction: column;
  }

  

  .microdata-totals,
  .microdata-result-card {
    grid-template-columns: 1fr;
  }

  .microdata-totals > div,
  .microdata-result-card > div {
    border-right: 0;
    border-bottom: 1px solid #d9e2ef;
  }
}

/* ==================================================
   MICRODATA - PRESUPUESTO
================================================== */

.microdata-budget-card{
    background:#fff;
    border:1px solid var(--border-color);
    border-radius:16px;
    padding:24px;
    display:flex;
    flex-direction:column;
    gap:20px;
}

.microdata-budget-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
}

.microdata-budget-header h3{
    margin:4px 0;
}

.microdata-item-count{
    background:#eef5ff;
    color:var(--primary-color);
    padding:8px 14px;
    border-radius:999px;
    font-weight:600;
    white-space:nowrap;
}

.microdata-empty-state{
    border:2px dashed #d9e3f2;
    border-radius:12px;
    padding:40px;
    text-align:center;
    color:#667085;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.microdata-budget-table-wrapper{
  border:none;
  border-radius:0;
  overflow:visible;
}

.microdata-budget-items{
  display:flex;
  flex-direction:column;
  gap:14px;
}









.microdata-item-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  background:#eef5ff;
  color:var(--primary-color);
  font-size:.78rem;
  font-weight:600;
}





.microdata-item-action{
  width:36px;
  height:36px;
  border:1px solid var(--border-color);
  border-radius:9px;
  background:#fff;
  color:#475467;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:
    background .2s ease,
    border-color .2s ease,
    color .2s ease;
}

.microdata-item-action:hover{
  background:#f4f7fb;
  border-color:#c8d7eb;
  color:var(--primary-color);
}

.microdata-item-action.delete:hover{
  background:#fff1f1;
  border-color:#f5baba;
  color:#c62828;
}

.microdata-item-values {
  display: grid;
  grid-template-columns: repeat(
    auto-fit,
    minmax(210px, 1fr)
  );
  gap: 12px;
}

.microdata-item-value{
  min-width:0;
  padding:12px 14px;
  border-radius:10px;
  background:#f8fafc;
  display:flex;
  flex-direction:column;
  gap:5px;
}

.microdata-item-value span{
  color:#667085;
  font-size:.8rem;
}

.microdata-item-value strong{
  color:var(--text-color);
  font-size:1rem;
  overflow-wrap:anywhere;
}

.microdata-item-value.is-empty strong{
  color:#98a2b3;
  font-weight:500;
}



@media (max-width:780px){

  

  

  .microdata-item-values{
    grid-template-columns:1fr;
  }
}





.microdata-result-row{
  background:#ffffff;
  border:1px solid var(--border-color);
  border-radius:14px;
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:16px;
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    transform .2s ease;
}

.microdata-result-row:hover{
  border-color:#c8d7eb;
  box-shadow:0 8px 24px rgba(30, 64, 104, .08);
  transform:translateY(-1px);
}

.microdata-result-row:last-child{
    border-bottom:none;
}















.microdata-totals span,
.microdata-result-card span {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
}

/* ==================================================
   MICRODATA V2 - CONSTRUCTOR DE PRESUPUESTOS
================================================== */
.microdata-budget-card{background:#fff;border:1px solid #d9e2df;border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:18px}
.microdata-budget-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.microdata-budget-header h3{margin:3px 0 6px;font-size:20px}.microdata-budget-header p:last-child{margin:0;color:#64748b}
.microdata-item-count{padding:8px 13px;border-radius:999px;background:#edf4ef;color:var(--text);font-size:13px;font-weight:800;white-space:nowrap}
.microdata-empty-state{padding:38px 20px;border:2px dashed #d7e0db;border-radius:16px;text-align:center;color:#64748b;display:flex;flex-direction:column;gap:7px}
.microdata-empty-state strong{color:var(--text)}
.microdata-budget-table-wrapper{border:0!important;overflow:visible!important}.microdata-budget-items{display:flex;flex-direction:column;gap:14px}
.microdata-result-row{display:flex!important;flex-direction:column!important;gap:16px!important;padding:18px!important;border:1px solid #d9e2df!important;border-radius:16px!important;background:#fff!important;transition:border-color .2s,box-shadow .2s,transform .2s}
.microdata-result-row:hover{border-color:#9eb9aa!important;box-shadow:0 10px 28px rgba(6,77,48,.08);transform:translateY(-1px)}
.microdata-item-detail{color:#64748b;margin-top:3px}.microdata-item-badge,.microdata-item-quantity{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:750}.microdata-item-badge{background:#edf4ef;color:var(--text)}.microdata-period-badge{background:#fff8cf}
.microdata-item-action{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #d9e2df;border-radius:10px;background:#fff;color:var(--text);font-size:18px}.microdata-item-action:hover{background:#edf4ef}.microdata-item-action.delete:hover{background:#fff0f0;border-color:#efb5b5;color:#a02222}
.microdata-item-values{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding-top:14px;border-top:1px solid #e7ece9}.microdata-item-value{padding:14px;border-radius:13px;background:#f8faf9;display:flex;flex-direction:column;gap:10px}.microdata-item-value.is-empty{opacity:.65}.microdata-amount-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.microdata-amount-heading span{color:#64748b;font-size:13px;font-weight:700}.microdata-amount-heading strong{color:var(--text);font-size:17px}.microdata-discount-controls{display:grid;grid-template-columns:1fr 108px 86px;gap:8px;align-items:center}.microdata-original-price{color:#64748b;font-size:12px}.microdata-discount-controls select,.microdata-discount-controls input{min-width:0;padding:8px 9px;border-radius:9px;font-size:12px}
.microdata-budget-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:4px}.microdata-total-chip{padding:14px;border:1px solid #d9e2df;border-radius:14px;background:#f8faf9;display:flex;flex-direction:column;gap:5px}.microdata-total-chip span{color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.microdata-total-chip strong{color:var(--text);font-size:18px}
.microdata-builder-actions{display:flex;gap:10px;align-items:center}.microdata-add-button{background:var(--text);color:#fff;border-radius:14px;padding:13px 18px}.microdata-cancel-edit{border:1px solid #d9e2df;border-radius:14px;background:#fff;color:var(--text)}
#microdataBudgetNotes{width:100%;min-height:110px;padding:12px 14px;font:inherit;line-height:1.5;resize:vertical;border:1px solid #d7e0db;border-radius:10px;background:#fff}
.microdata-result-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border-radius:20px;background:#0e4e29;color:#fff}.microdata-result-card>div{display:flex;flex-direction:column;gap:7px;padding:18px 20px;border-right:1px solid rgba(255,255,255,.15)}.microdata-result-card>div:last-of-type{border-right:0}.microdata-result-card span{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.72)}.microdata-result-card strong{font-size:24px}
@media(max-width:980px){.microdata-budget-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.microdata-item-values{grid-template-columns:1fr!important}.microdata-discount-controls{grid-template-columns:1fr 110px 90px}}
@media(max-width:640px){.microdata-budget-header,.microdata-item-main{flex-direction:column}.microdata-budget-totals,.microdata-result-card{grid-template-columns:1fr}.microdata-result-card>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.microdata-result-card>div:last-of-type{border-bottom:0}.microdata-discount-controls{grid-template-columns:1fr}.microdata-builder-actions{flex-direction:column;align-items:stretch}}


/* ==================================================
   MICRODATA V3 - EDITOR + PRESUPUESTO LATERAL
================================================== */
.microdata-workspace{
  grid-template-columns:minmax(0,1.45fr) minmax(390px,.85fr);
  gap:26px;
  align-items:start;
}

.microdata-editor{
  min-width:0;
}

.microdata-budget-sidebar{
  position:sticky;
  top:24px;
  align-self:start;
  min-width:0;
}

.microdata-budget-sidebar .microdata-budget-card{
  max-height:calc(100vh - 48px);
  padding:20px;
  gap:16px;
  overflow:hidden;
  box-shadow:0 18px 42px rgba(14,78,41,.10);
}

.microdata-budget-sidebar .microdata-budget-header{
  align-items:center;
}

.microdata-budget-sidebar .microdata-budget-header h3{
  margin:2px 0 0;
  font-size:22px;
}

.microdata-budget-sidebar .microdata-budget-header p:not(.eyebrow){
  display:none;
}

.microdata-budget-sidebar .microdata-empty-state{
  padding:26px 18px;
}

.microdata-budget-sidebar .microdata-budget-table-wrapper{
  min-height:0;
  max-height:clamp(220px,38vh,430px);
  overflow-y:auto;
  padding-right:4px;
}

.microdata-budget-sidebar .microdata-budget-items{
  gap:10px;
}

.microdata-budget-sidebar .microdata-result-row{
  padding:14px;
  gap:12px;
  border-radius:14px;
}







.microdata-budget-sidebar .microdata-item-badge,
.microdata-budget-sidebar .microdata-item-quantity{
  min-height:24px;
  padding:3px 8px;
  font-size:11px;
}

.microdata-budget-sidebar .microdata-item-action{
  width:32px;
  height:32px;
}

.microdata-budget-sidebar .microdata-item-values {
  grid-template-columns: repeat(
    auto-fit,
    minmax(220px, 1fr)
  );
}

.microdata-budget-sidebar .microdata-item-value{
  padding:10px;
}

.microdata-budget-sidebar .microdata-amount-heading{
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.microdata-budget-sidebar .microdata-amount-heading strong{
  font-size:15px;
}

.microdata-budget-sidebar .microdata-discount-controls{
  grid-template-columns:1fr 92px 72px;
  gap:6px;
}

.microdata-budget-sidebar .microdata-original-price{
  font-size:11px;
}

.microdata-budget-sidebar .microdata-discount-controls select,
.microdata-budget-sidebar .microdata-discount-controls input{
  padding:7px 8px;
  font-size:12px;
}

.microdata-budget-sidebar .microdata-budget-totals{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.microdata-budget-sidebar .microdata-total-chip{
  padding:10px 12px;
}

.microdata-budget-sidebar .microdata-total-chip span{
  font-size:11px;
}

.microdata-budget-sidebar .microdata-total-chip strong{
  font-size:15px;
}

.microdata-sidebar-summary{
  grid-template-columns:1fr;
  border-radius:15px;
  flex-shrink:0;
}

.microdata-sidebar-summary > div{
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  padding:11px 14px;
  border-right:0;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.microdata-sidebar-summary > div:last-of-type{
  border-bottom:0;
}

.microdata-sidebar-summary strong{
  font-size:18px;
  text-align:right;
}

.microdata-generate-button{
  width:100%;
  min-height:50px;
  border-radius:14px;
  background:var(--text);
  color:#fff;
  font-size:15px;
  box-shadow:0 10px 22px rgba(14,78,41,.20);
}

.microdata-generate-button:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(14,78,41,.25);
}

.microdata-notes-card{
  padding:20px;
  border:1px solid #d9e2ef;
  border-radius:20px;
  background:#fff;
}

.microdata-notes-card label{
  display:block;
  margin-bottom:8px;
  font-size:13px;
  font-weight:750;
  color:#374151;
}

#microdataBudgetNotes{
  width:100%;
  min-height:120px;
  padding:14px 16px;
  border:1px solid #d7e0db;
  border-radius:14px;
  font:inherit;
  line-height:1.5;
  resize:vertical;
}

#microdataBudgetNotes:focus{
  outline:none;
  border-color:#38775a;
  box-shadow:0 0 0 3px rgba(56,119,90,.12);
}

@media(max-width:1120px){
  .microdata-workspace{
    grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);
  }
}

@media(max-width:980px){
  .microdata-workspace{
    grid-template-columns:1fr;
  }

  .microdata-budget-sidebar{
    position:static;
  }

  .microdata-budget-sidebar .microdata-budget-card{
    max-height:none;
  }

  .microdata-budget-sidebar .microdata-budget-table-wrapper{
    max-height:none;
  }
}

/* ==================================================
   MICRODATA V4 - CARRITO ACORDEON
================================================== */

.microdata-budget-items{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.microdata-accordion-item{
  overflow:hidden;
  border:1px solid #d8e3dd;
  border-radius:14px;
  background:#fff;
  box-shadow:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}

.microdata-accordion-item:hover,
.microdata-accordion-item.is-open{
  border-color:#a9c6b7;
  box-shadow:0 8px 20px rgba(14,78,41,.07);
}

.microdata-accordion-trigger{
  display:grid;
  grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:72px;
  padding:13px 14px;
  border:0;
  border-radius:0;
  background:#fff;
  color:var(--text);
  text-align:left;
}

.microdata-accordion-trigger:hover{
  background:#fbfdfc;
}

.microdata-accordion-chevron{
  font-size:25px;
  line-height:1;
  transform:rotate(0deg);
  transition:transform .2s ease;
}

.microdata-accordion-item.is-open .microdata-accordion-chevron{
  transform:rotate(90deg);
}

.microdata-accordion-summary{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}

.microdata-accordion-summary strong{
  overflow:hidden;
  color:var(--text);
  font-size:15px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.microdata-accordion-summary small{
  overflow:hidden;
  color:#64748b;
  font-size:11px;
  font-weight:600;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.microdata-accordion-price{
  max-width:150px;
  color:var(--text);
  font-size:12px;
  font-weight:800;
  text-align:right;
}

.microdata-accordion-panel{
  padding:0 14px 14px;
  border-top:1px solid #edf2ef;
  animation:microdataPanelIn .2s ease;
}

@keyframes microdataPanelIn{
  from{opacity:0; transform:translateY(-4px)}
  to{opacity:1; transform:translateY(0)}
}

.microdata-accordion-details{
  padding:12px 0 10px;
}

.microdata-accordion-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.microdata-accordion-details .microdata-item-detail{
  margin:9px 0 0;
  color:#64748b;
  font-size:12px;
  line-height:1.4;
}

.microdata-accordion-item .microdata-item-values{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:0;
  border:0;
}

.microdata-accordion-item .microdata-item-value{
  min-width:0;
  padding:11px 12px;
  border:1px solid #e7eeea;
  border-radius:10px;
  background:#f8faf9;
}

.microdata-accordion-item .microdata-item-value.is-empty{
  display:none;
}

.microdata-accordion-item .microdata-amount-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.microdata-accordion-item .microdata-amount-heading span{
  color:#64748b;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.microdata-accordion-item .microdata-amount-heading strong{
  color:var(--text);
  font-size:14px;
}

.microdata-accordion-item .microdata-discount-controls{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:10px;
  margin-top:8px;
}

.microdata-discount-fields{
  display:grid;
  grid-template-columns:minmax(100px,1fr) 68px;
  gap:6px;
  width:min(220px,100%);
}

.microdata-accordion-item .microdata-discount-fields select,
.microdata-accordion-item .microdata-discount-fields input{
  min-width:0;
  padding:8px 9px;
  border-radius:9px;
  font-size:11px;
}

.microdata-accordion-item .microdata-original-price{
  color:#84928b;
  font-size:10px;
  white-space:nowrap;
}

.microdata-accordion-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding-top:12px;
}

.microdata-accordion-actions .microdata-item-action{
  width:auto;
  height:34px;
  padding:0 11px;
  gap:6px;
  border-radius:9px;
  font-size:12px;
}

.microdata-accordion-actions .microdata-item-action span{
  display:inline;
}

.microdata-budget-sidebar .microdata-budget-card{
  max-height:calc(100vh - 32px);
  overflow:hidden;
}

.microdata-budget-sidebar .microdata-budget-table-wrapper{
  max-height:calc(100vh - 445px);
  overflow-y:auto;
  padding-right:3px;
  scrollbar-width:thin;
}

@media (max-width:1150px){
  .microdata-budget-sidebar .microdata-budget-card,
  .microdata-budget-sidebar .microdata-budget-table-wrapper{
    max-height:none;
    overflow:visible;
  }
}

@media (max-width:520px){
  .microdata-accordion-trigger{
    grid-template-columns:18px minmax(0,1fr);
  }

  .microdata-accordion-price{
    grid-column:2;
    max-width:none;
    text-align:left;
  }

  .microdata-accordion-item .microdata-discount-controls{
    align-items:stretch;
    flex-direction:column;
  }

  .microdata-discount-fields{
    width:100%;
  }
}

/* ==================================================
   MICRODATA V4.1 - ACORDEON COMPACTO ADAPTADO
================================================== */

.microdata-accordion-panel{
  padding:0 14px 14px;
}

.microdata-accordion-details{
  padding:12px 0;
}

.microdata-accordion-item .microdata-item-values{
  gap:10px;
}

.microdata-accordion-item .microdata-item-value{
  width:100%;
  padding:12px;
}

.microdata-accordion-item .microdata-amount-heading{
  align-items:flex-start;
}

.microdata-accordion-item .microdata-amount-heading strong{
  flex:0 0 auto;
  max-width:55%;
  text-align:right;
  overflow-wrap:anywhere;
}

.microdata-accordion-item .microdata-discount-controls{
  display:block;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #e3ebe6;
}

.microdata-accordion-item .microdata-original-price{
  display:block;
  margin-bottom:8px;
  white-space:normal;
  line-height:1.35;
}

.microdata-discount-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) 86px;
  gap:8px;
  width:100%;
}

.microdata-discount-field{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:5px;
}

.microdata-discount-field > span{
  color:#64748b;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.microdata-accordion-item .microdata-discount-fields select,
.microdata-accordion-item .microdata-discount-fields input{
  width:100%;
  min-width:0;
  height:38px;
  padding:8px 10px;
  font-size:12px;
}

.microdata-discount-value-field.is-disabled{
  opacity:.55;
}

.microdata-accordion-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding-top:12px;
}

.microdata-accordion-actions .microdata-item-action{
  width:100%;
  min-width:0;
  height:38px;
  justify-content:center;
}

@media (max-width:430px){
  .microdata-accordion-trigger{
    grid-template-columns:18px minmax(0,1fr);
  }

  .microdata-accordion-price{
    grid-column:2;
    max-width:none;
    text-align:left;
  }

  .microdata-discount-fields{
    grid-template-columns:1fr;
  }

  .microdata-accordion-actions{
    grid-template-columns:1fr;
  }
}

/* ==================================================
   MICRODATA V4.2/V4.3 - LAYOUT AMPLIO Y ALTURA FLUIDA
================================================== */



.tab-content{
  padding:32px;
}

.microdata-workspace{
  grid-template-columns:minmax(0, 1.55fr) minmax(500px, .95fr);
  gap:30px;
}

.microdata-budget-sidebar .microdata-budget-card{
  padding:22px;
  height:auto;
  max-height:none;
  overflow:visible;
}

.microdata-budget-sidebar .microdata-budget-table-wrapper{
  height:auto;
  max-height:none;
  overflow:visible;
  padding-right:0;
}

.microdata-budget-sidebar .microdata-budget-items{
  height:auto;
  overflow:visible;
}

.microdata-budget-sidebar .microdata-item-values {
  grid-template-columns: repeat(
    auto-fit,
    minmax(220px, 1fr)
  );
}

.microdata-budget-sidebar .microdata-item-value:last-child:nth-child(odd){
  grid-column:1 / -1;
}

.microdata-budget-sidebar .microdata-discount-controls{
  grid-template-columns:minmax(145px, 1fr) 94px 76px;
  gap:8px;
}

.microdata-accordion-item,
.microdata-accordion-panel{
  position:relative;
}

.microdata-budget-totals,
.microdata-sidebar-summary,
.microdata-generate-button{
  position:relative;
  flex-shrink:0;
}

@media(max-width:1380px){
  

  .microdata-workspace{
    grid-template-columns:minmax(0, 1.35fr) minmax(440px, .9fr);
    gap:24px;
  }

  .microdata-budget-sidebar .microdata-item-values{
    grid-template-columns:1fr;
  }

  .microdata-budget-sidebar .microdata-item-value:last-child:nth-child(odd){
    grid-column:auto;
  }
}

@media(min-width:1151px){
  .microdata-budget-sidebar{
    position:sticky;
    top:24px;
  }
}

@media(max-width:1100px){
  .tab-content{
    padding:24px;
  }

  .microdata-workspace{
    grid-template-columns:1fr;
  }

  .microdata-budget-sidebar{
    position:static;
  }
}

@media(max-width:680px){
  

  .tab-content{
    padding:16px;
  }
}





  .primary-button.compact{width:auto;min-height:auto;padding:12px 16px}
  .calculator-native-message{margin:18px 30px 0}.calculator-native-content{padding:0 30px 34px;overflow:auto}.calculator-native-content #calculatorSection{display:block!important}
  .calculator-native-loader{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#31584b}
  .calculator-native-loader.hidden,.calculator-native-content.hidden{display:none!important}
  
  .calculator-native-content .hero{margin-top:24px}.calculator-native-content .hero-button[data-native-pending="true"],.calculator-native-content [data-native-pending="true"]{opacity:.65}
  .calculator-native-content .tabs{margin-bottom:30px}
  @media(max-width:720px){.calculator-native-content{padding:0 14px 24px}.calculator-native-message{margin:14px}.calculator-native-topbar{align-items:flex-start}.calculator-native-topbar .workspace-user-area{width:100%}}


  .page-shell:has(.workspace-screen:not(.hidden)){width:min(1820px,100%);max-width:none;margin:0 auto;padding:12px}
  .workspace-screen{max-width:1780px;margin:0 auto}.calculator-native-content{padding:0 18px 32px}.calculator-native-content .hero{max-width:none}.calculator-native-content .tabs{max-width:none}.tab-content{padding:30px 22px}
  .native-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.55);backdrop-filter:blur(5px)}
  .native-modal-panel{width:min(980px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:24px;box-shadow:0 30px 90px rgba(15,23,42,.3)}
  .native-modal-header{display:flex;justify-content:space-between;gap:20px;padding:24px 26px;border-bottom:1px solid #e7ebf1}.native-modal-header h2{font-size:2rem;color:#0c4d37}.native-modal-header p{margin:4px 0 0}.native-modal-body{padding:24px 26px}.native-icon-button{width:42px;height:42px;border:1px solid #d7e1dd;border-radius:12px;background:#fff;font-size:24px;cursor:pointer}
  
  .native-form-grid{display:grid;gap:14px}.native-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.native-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.native-modal-actions .primary-button,.native-modal-actions .secondary-button{width:auto;margin:0}
  .history-native-shell{padding:28px 30px 36px}.history-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px}.history-toolbar .field{flex:1;max-width:520px}.history-native-list{display:grid;gap:12px}.history-native-card{display:flex;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid #e0e7e4;border-radius:18px;background:#fff;cursor:pointer;box-shadow:0 6px 18px rgba(15,23,42,.04)}.history-native-card:hover{transform:translateY(-1px);border-color:#9fcbbd}.history-native-card h3{margin:2px 0 6px;color:#153f34}.history-native-card p{margin:0}.history-card-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.history-status{padding:5px 9px;border-radius:999px;background:#eaf6ef;color:#17603f;font-size:.8rem;font-weight:800}
  .history-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.history-detail-grid>div,.history-notes{padding:14px;border:1px solid #e2e8e5;border-radius:14px;background:#f8faf9}.history-detail-grid span,.history-notes span{display:block;color:#75847e;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.history-detail-grid strong{display:block;margin-top:5px}.history-notes{margin-top:14px}.history-notes p{white-space:pre-wrap;color:#254c41}
  @media(max-width:760px){.native-form-grid.two,.history-detail-grid{grid-template-columns:1fr}.history-native-card{flex-direction:column}.history-card-meta{align-items:flex-start}.history-toolbar{align-items:stretch;flex-direction:column}.history-toolbar .field{max-width:none}.page-shell:has(.workspace-screen:not(.hidden)){padding:0}.calculator-native-content{padding:0 8px 22px}.tab-content{padding:18px 12px}}



.native-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.native-empty.compact{min-height:120px}@media(max-width:640px){.customer-detail-grid,.customer-summary-grid,.native-form-grid{grid-template-columns:1fr}}












/* Shine Sales Workspace v0.9.6 — Core UI */
.workspace-toast-host {
  position: fixed;
  top: 22px;
  right: 22px;
  z-index: 5000;
  display: grid;
  gap: 12px;
  width: min(390px, calc(100vw - 32px));
  pointer-events: none;
}
.workspace-toast {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 28px;
  align-items: start;
  gap: 12px;
  padding: 15px 14px;
  border: 1px solid rgba(148, 163, 184, .32);
  border-left-width: 4px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 18px 48px rgba(15, 23, 42, .18);
  opacity: 0;
  transform: translateY(-10px) scale(.98);
  transition: opacity .2s ease, transform .2s ease;
  pointer-events: auto;
}
.workspace-toast.is-visible { opacity: 1; transform: translateY(0) scale(1); }
.workspace-toast-success { border-left-color: #16a34a; }
.workspace-toast-error { border-left-color: #dc2626; }
.workspace-toast-warning { border-left-color: #d97706; }
.workspace-toast-info { border-left-color: #2563eb; }
.workspace-toast-icon {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 800;
}
.workspace-toast-success .workspace-toast-icon { background: #ecfdf5; color: #15803d; }
.workspace-toast-error .workspace-toast-icon { background: #fef2f2; color: #b91c1c; }
.workspace-toast-warning .workspace-toast-icon { background: #fffbeb; color: #b45309; }
.workspace-toast-copy { display: grid; gap: 3px; min-width: 0; }
.workspace-toast-copy strong { color: #0f172a; font-size: .92rem; }
.workspace-toast-copy span { color: #475569; font-size: .86rem; line-height: 1.42; overflow-wrap: anywhere; }
.workspace-toast-close {
  border: 0;
  background: transparent;
  color: #64748b;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}
.workspace-global-loader {
  position: fixed;
  inset: 0;
  z-index: 30000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(15, 23, 42, .28);
  backdrop-filter: blur(3px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease, visibility .18s ease;
}
.workspace-global-loader.is-visible { opacity: 1; visibility: visible; }
.workspace-loader-card {
  display: grid;
  justify-items: center;
  gap: 10px;
  min-width: min(320px, 90vw);
  padding: 28px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .25);
  color: #0f172a;
}
.workspace-loader-card small { color: #64748b; }
.workspace-loader-spinner {
  width: 38px;
  height: 38px;
  border: 4px solid #dbeafe;
  border-top-color: #2563eb;
  border-radius: 50%;
  animation: workspace-spin .8s linear infinite;
}
@keyframes workspace-spin { to { transform: rotate(360deg); } }
.workspace-dialog-overlay {
  position: fixed;
  inset: 0;
  z-index: 5100;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(15, 23, 42, .42);
  backdrop-filter: blur(4px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease, visibility .18s ease;
}
.workspace-dialog-overlay.is-visible { opacity: 1; visibility: visible; }
.workspace-dialog {
  width: min(500px, 100%);
  overflow: hidden;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .3);
  transform: translateY(8px) scale(.98);
  transition: transform .18s ease;
}
.workspace-dialog-overlay.is-visible .workspace-dialog { transform: translateY(0) scale(1); }
.workspace-dialog header { display: flex; gap: 16px; padding: 24px; }
.workspace-dialog-symbol {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 1.25rem;
  font-weight: 800;
}
.workspace-dialog h2 { margin: 0 0 7px; color: #0f172a; font-size: 1.15rem; }
.workspace-dialog p { margin: 0; color: #475569; line-height: 1.55; }
.workspace-dialog footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 16px 24px 22px;
  border-top: 1px solid #e2e8f0;
  background: #f8fafc;
}
.danger-button { background: #b91c1c !important; border-color: #b91c1c !important; }
button.is-busy { cursor: wait; opacity: .72; }
.workspace-skeleton-list { display: grid; gap: 12px; padding: 8px 0; }
.workspace-skeleton-row {
  display: block;
  height: 74px;
  border-radius: 13px;
  background: linear-gradient(90deg, #eef2f7 25%, #f8fafc 45%, #eef2f7 65%);
  background-size: 200% 100%;
  animation: workspace-skeleton 1.25s ease-in-out infinite;
}
@keyframes workspace-skeleton { to { background-position: -200% 0; } }
.workspace-empty-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0 auto 10px;
  border-radius: 50%;
  background: #eff6ff;
  color: #2563eb;
  font-weight: 800;
}
.workspace-error-state .workspace-empty-icon { background: #fef2f2; color: #b91c1c; }
@media (max-width: 640px) {
  .workspace-toast-host { top: 12px; right: 12px; width: calc(100vw - 24px); }
  .workspace-dialog footer { flex-direction: column-reverse; }
  .workspace-dialog footer button { width: 100%; }
}








































































/* Sales Assistant Core v0.9.8 */







































/* Notification Center v0.9.9 */






@keyframes workspace-notification-enter { from { transform: translateX(24px); opacity: .45; } }























body.workspace-notifications-open { overflow: hidden; }









  :root {
    --ws-sidebar-width: 248px;
    --ws-sidebar-collapsed-width: 84px;
    --ws-topbar-height: 74px;
    --ws-bg: #f4f7f6;
    --ws-surface: #ffffff;
    --ws-sidebar: #073f31;
    --ws-sidebar-strong: #052f25;
    --ws-accent: #fff06a;
    --ws-accent-strong: #f5df2f;
    --ws-text: #143d33;
    --ws-muted: #70827c;
    --ws-line: #e2e9e6;
    --ws-focus: rgba(255, 240, 106, .42);
  }

  body:has(.workspace-application.is-visible) { background: var(--ws-bg); }
  .page-shell:has(.workspace-application.is-visible) { width: 100%; max-width: none; min-height: 100vh; padding: 0; display: block; }
  .workspace-application { display: none; min-height: 100vh; background: var(--ws-bg); color: var(--ws-text); }
  .workspace-application.is-visible { display: grid; grid-template-columns: var(--ws-sidebar-width) minmax(0, 1fr); }

  
  
  
  
  
  
  
  
  

  
  
  

  
  
  
  
  
  
  
  
  

  .workspace-stage { grid-column: 2; min-width: 0; min-height: 100vh; transition: margin .2s ease; }
  
  
  
  
  
  
  
  
  
  
  
  
  
  

  .workspace-content { min-width: 0; padding: 26px 28px 38px; }
  .workspace-content > .workspace-screen { width: 100%; min-height: auto; max-width: 1540px; margin: 0 auto; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  
  
  
  
  
  
  
  
  
  

  
  
  
  
  
  
  
  

  @media (max-width: 900px) {
    
    
    .workspace-application.is-visible, .workspace-sidebar-collapsed .workspace-application.is-visible { grid-template-columns: 1fr; }
    
    
    .workspace-stage { grid-column: 1; }
    
    
    
    .workspace-content { padding: 22px 18px 32px; }
  }

  @media (max-width: 620px) {
    
    
    
    
    .workspace-content { padding: 18px 12px 28px; }
    
    
    
    
  }



  
  kbd { display: inline-grid; min-width: 22px; min-height: 20px; place-items: center; padding: 1px 6px; border: 1px solid #cbd5e1; border-bottom-width: 2px; border-radius: 6px; background: #fff; color: #64748b; font: 700 10px/1.2 inherit; box-shadow: 0 1px 1px rgba(15,23,42,.04); }

  
  
  
  
  

  
  
  
  
  @keyframes workspace-command-enter { from { transform: translateY(-8px) scale(.985); opacity: .45; } }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  body.workspace-command-open { overflow: hidden; }

  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

  
  
  
  
  
  
  
  
  @keyframes workspace-spin { to { transform: rotate(360deg); } }

  .workspace-skeleton-list { display: grid; gap: 1px; overflow: hidden; }
  .workspace-skeleton-row { min-height: 63px; display: grid; grid-template-columns: 34px minmax(0,1fr) 56px; gap: 11px; align-items: center; padding: 10px 4px; border-bottom: 1px solid #edf2f7; }
  .workspace-skeleton-row > span, .workspace-skeleton-row i, .workspace-skeleton-row em { display: block; border-radius: 999px; background: linear-gradient(90deg,#eef2f7 25%,#f8fafc 50%,#eef2f7 75%); background-size: 200% 100%; animation: workspace-shimmer 1.25s ease-in-out infinite; animation-delay: var(--skeleton-delay,0ms); }
  .workspace-skeleton-row > span { width: 34px; height: 34px; border-radius: 10px; }
  .workspace-skeleton-row > div { display: grid; gap: 7px; }
  .workspace-skeleton-row i:first-child { width: 56%; height: 10px; }
  .workspace-skeleton-row i:last-child { width: 82%; height: 8px; }
  .workspace-skeleton-row em { width: 48px; height: 9px; }
  @keyframes workspace-shimmer { to { background-position: -200% 0; } }

  
  



/* Sprint 11.3 · Module Experience */
























/* Sprint 11.4 · V11 Release Readiness */






:where(button, a, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid rgba(37, 99, 235, .38);
  outline-offset: 2px;
}





















@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}



/* Sprint visual 11.5: notification drawer constrained to the visible workspace. */








@keyframes workspace-notification-enter-v0915 {
  from { transform: translateX(28px); opacity: 0; }
  to { transform: translateX(0); opacity: 1; }
}





















body.workspace-notifications-open {
  overflow: hidden;
  overscroll-behavior: none;
}

/* Prevent a wide child in the underlying application from widening the viewport. */
body:has(.workspace-application.is-visible),
.page-shell:has(.workspace-application.is-visible),
.workspace-application,
.workspace-stage,
.workspace-content {
  max-width: 100%;
  overflow-x: clip;
}









/* Shine Sales Workspace v0.9.16 — module header scale and adaptive actions */










/* Override the legacy full-width button rule only for module header actions. */


/* Existing module title bars rendered by the underlying screens. */
.workspace-screen .workspace-topbar h1,
.workspace-screen .native-section-header h2,
.native-module-shell > header h1 {
  font-size: clamp(1.65rem, 2.4vw, 2.15rem);
  line-height: 1.12;
  letter-spacing: -.03em;
}

.workspace-screen .workspace-topbar {
  gap: 18px;
}

.workspace-screen .workspace-topbar .primary-button,
.workspace-screen .workspace-topbar .secondary-button {
  width: auto;
  min-width: 0;
}



@media (max-width: 480px) {
  

  .workspace-screen .workspace-topbar h1,
  .workspace-screen .native-section-header h2,
  .native-module-shell > header h1 {
    font-size: 1.65rem;
  }
}


 
  
  



  /* El área de trabajo aprovecha todo el espacio disponible después del sidebar. */
  :root {
    --ws-content-gutter: clamp(14px, 1.8vw, 30px);
    --ws-content-max: 1920px;
  }

  .workspace-stage {
    width: 100%;
    min-width: 0;
  }

  .workspace-content {
    width: 100%;
    max-width: none;
    padding: clamp(18px, 2vw, 30px) var(--ws-content-gutter) clamp(28px, 3vw, 46px);
  }

  .workspace-content > .workspace-screen {
    width: min(100%, var(--ws-content-max));
    max-width: var(--ws-content-max);
    margin-inline: auto;
  }

  .workspace-content .module-experience-card,
  .workspace-content .native-module-shell,
  .workspace-content .agenda-viewbar,
  .workspace-content .agenda-calendar-toolbar,
  .workspace-content .agenda-calendar-shell,
  .workspace-content .dashboard-shell,
  .workspace-content .calculator-native-content {
    width: 100%;
    max-width: none;
  }

  /* La agenda deja de parecer una columna estrecha en monitores grandes. */
  
  
  

  

  @media (max-width: 1100px) {
    :root { --ws-content-gutter: 16px; }
    .workspace-content { padding-top: 18px; }
    
    
  }

  @media (max-width: 900px) {
    .workspace-content { padding: 16px 12px 26px; }
    .workspace-content > .workspace-screen { width: 100%; }
    
    
    
  }

  @media (max-width: 620px) {
    .workspace-content { padding: 12px 8px 22px; }
    
    
    
    
    
  }




  /*
   * V0.9.21 · Regla global de anchura
   * Escritorio: 5% de margen por lado (18/20 partes para contenido).
   * Tablet: se aprovecha progresivamente más espacio.
   * Móvil: ancho completo con una separación mínima de seguridad.
   */
  :root {
    --workspace-content-ratio: 90%;
    --workspace-content-max: none;
    --workspace-content-gutter: clamp(14px, 2vw, 34px);
  }

  .workspace-content {
    width: 100%;
    min-width: 0;
    padding-inline: var(--workspace-content-gutter);
  }

  .workspace-content > .workspace-screen,
  .workspace-content > [data-workspace-screen],
  .workspace-content > section:not(.hidden) {
    width: var(--workspace-content-ratio) !important;
    max-width: var(--workspace-content-max) !important;
    min-width: 0;
    margin-inline: auto !important;
  }

  /* Los shells internos deben usar todo el ancho de la pantalla común,
     no volver a aplicar un segundo margen o un máximo diferente. */
  .workspace-screen .app-shell,
  .workspace-screen .help-center-shell,
  .workspace-screen .assistant-shell,
  .workspace-screen .history-native-shell,
  .workspace-screen .calculator-native-content,
  .workspace-screen .dashboard-shell,
  .workspace-screen .workspace-module-screen,
  .workspace-screen .workspace-module-toolbar,
  .workspace-screen .actions-native-shell,
  .workspace-screen .opportunities-native-shell,
  .workspace-screen .customers-native-shell,
  .workspace-screen .agenda-calendar-shell,
  .workspace-screen .agenda-calendar-workspace {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
    min-width: 0;
    box-sizing: border-box;
  }

  /* Cabeceras, tarjetas y tablas no pueden forzar el ancho del viewport. */
  .workspace-screen,
  .workspace-screen > *,
  .workspace-module-heading,
  .workspace-module-controls,
  .dashboard-page-header,
  .calculator-native-topbar,
  .agenda-calendar-shell,
  .agenda-calendar-grid,
  .history-table-card,
  .opportunities-board,
  .actions-list,
  .customer-list {
    min-width: 0;
    box-sizing: border-box;
  }

  @media (max-width: 1380px) {
    :root { --workspace-content-ratio: 94%; }
  }

  @media (max-width: 1100px) {
    :root {
      --workspace-content-ratio: 96%;
      --workspace-content-gutter: 16px;
    }
  }

  @media (max-width: 900px) {
    :root {
      --workspace-content-ratio: 100%;
      --workspace-content-gutter: 14px;
    }

    .workspace-content > .workspace-screen,
    .workspace-content > [data-workspace-screen],
    .workspace-content > section:not(.hidden) {
      width: 100% !important;
    }
  }

  @media (max-width: 620px) {
    :root { --workspace-content-gutter: 10px; }

    .workspace-content {
      padding-inline: var(--workspace-content-gutter) !important;
    }

    .workspace-module-toolbar,
    .dashboard-hero,
    .calculator-native-content,
    .history-native-shell {
      border-radius: 16px;
    }
  }



  /*
   * V0.9.22 · Columna fluida única
   * La proporción se aplica sobre el área útil real, después del sidebar.
   */
  :root {
    --ws-page-width: 90%;
    --ws-page-gutter: clamp(12px, 1.4vw, 28px);
  }

  .workspace-main,
  .workspace-app,
  .workspace-content {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  

  /* Todas las pantallas incluidas directamente en AppIndex comparten columna. */
  #workspaceContent > .workspace-screen,
  #workspaceContent > section.workspace-screen,
  #dashboardScreen,
  #calculatorScreen,
  #historyScreen,
  #customersScreen,
  #opportunitiesScreen,
  #actionsScreen,
  #assistantScreen,
  #helpCenterScreen {
    width: var(--ws-page-width) !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-inline: auto !important;
    box-sizing: border-box !important;
  }

  /* Evita una segunda columna limitada dentro de cada módulo. */
  #workspaceContent > .workspace-screen > *,
  #dashboardScreen :where(.dashboard-shell,.dashboard-page-header,.dashboard-content,.native-module-shell),
  #customersScreen :where(.customers-native-shell,.customers-layout,.customers-toolbar-card,.workspace-module-screen,.native-module-shell),
  #actionsScreen :where(.actions-native-shell,.agenda-calendar-workspace,.agenda-calendar-shell,.workspace-module-screen,.native-module-shell),
  #historyScreen :where(.history-native-shell,.history-container,.history-table-card,.workspace-module-screen,.native-module-shell),
  #assistantScreen :where(.assistant-shell,.sales-assistant-shell,.workspace-module-screen,.native-module-shell),
  #helpCenterScreen :where(.help-center-shell,.help-center-page,.workspace-module-screen,.native-module-shell),
  #calculatorScreen :where(.calculator-native-content,.native-module-shell) {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-inline: 0 !important;
    box-sizing: border-box !important;
  }

  /* Compatibilidad con nombres de pantalla de versiones anteriores. */
  #dashboardView,
  #customersView,
  #actionsView,
  #historyView,
  #assistantView,
  #helpView {
    width: var(--ws-page-width) !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-inline: auto !important;
    box-sizing: border-box !important;
  }

  #dashboardView > *,
  #customersView > *,
  #actionsView > *,
  #historyView > *,
  #assistantView > *,
  #helpView > * {
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Ayuda debe nacer ya con ancho correcto, incluso antes de hidratar datos. */
  

  

  @media (max-width: 1380px) {
    :root { --ws-page-width: 94%; }
  }

  @media (max-width: 1100px) {
    :root {
      --ws-page-width: 96%;
      --ws-page-gutter: 16px;
    }
  }

  @media (max-width: 900px) {
    :root {
      --ws-page-width: calc(100% - 24px);
      --ws-page-gutter: 12px;
    }
  }

  @media (max-width: 620px) {
    :root {
      --ws-page-width: calc(100% - 16px);
      --ws-page-gutter: 8px;
    }
  }



  /*
   * V0.9.24 · Root width and login mode fix
   * El Workspace deja de calcularse por el ancho intrinseco de sus hijos.
   * No depende de :has(), que puede comportarse de forma distinta en el iframe
   * de Google Apps Script.
   */
  html.workspace-mode,
  body.workspace-mode {
    width: 100%;
    max-width: none;
    min-width: 0;
    overflow-x: hidden;
  }

  body.workspace-mode > .page-shell,
  .page-shell.workspace-page-shell {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 100vh !important;
    padding: 0 !important;
    display: block !important;
    place-items: initial !important;
  }

  body.workspace-mode .workspace-application,
  .page-shell.workspace-page-shell > .workspace-application,
  .workspace-application.is-visible {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.workspace-mode .workspace-stage,
  body.workspace-mode .workspace-main,
  body.workspace-mode #workspaceContent {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  /* La columna real conserva el reparto 1/20 + 18/20 + 1/20. */
  

  

  

  

  



  /*
   * V0.9.25 · Bloque de usuarios adicionales
   * Mantiene la informacion, el control y el importe en una composicion clara.
   */
  .erp-extra-users-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
    align-items: end;
    gap: 22px;
    margin-top: 18px;
    padding: 18px 20px;
    border: 1px solid rgba(7, 83, 51, 0.16);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(7, 83, 51, 0.045), rgba(255, 255, 255, 0.96));
  }

  .erp-extra-users-block.hidden {
    display: none !important;
  }

  .erp-extra-users-info {
    display: grid;
    gap: 6px;
    min-width: 0;
  }

  .erp-extra-users-info strong {
    display: block;
    color: #064d30;
    font-size: 1rem;
    line-height: 1.25;
  }

  .erp-extra-users-info span {
    color: #486557;
    font-size: 0.92rem;
    line-height: 1.5;
  }

  .erp-extra-users-controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 8px 12px;
    min-width: 0;
  }

  .erp-extra-users-controls label {
    grid-column: 1 / -1;
    margin: 0;
    color: #173f2e;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    text-transform: uppercase;
  }

  .erp-extra-users-controls input {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    margin: 0;
    padding: 0 14px;
    border: 1px solid rgba(7, 83, 51, 0.3);
    border-radius: 13px;
    background: #fff;
    color: #123c2a;
    font: inherit;
    font-weight: 700;
  }

  .erp-extra-users-controls input:focus {
    border-color: #075333;
    outline: none;
    box-shadow: 0 0 0 4px rgba(7, 83, 51, 0.1);
  }

  #erpExtraUsersPrice {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    min-width: 112px;
    padding: 0 14px;
    border-radius: 13px;
    background: #075333;
    color: #fff;
    font-size: 0.92rem;
    font-weight: 850;
    white-space: nowrap;
  }

  @media (max-width: 860px) {
    .erp-extra-users-block {
      grid-template-columns: 1fr;
      align-items: stretch;
    }
  }

  @media (max-width: 520px) {
    .erp-extra-users-block {
      gap: 16px;
      padding: 16px;
    }

    .erp-extra-users-controls {
      grid-template-columns: 1fr;
    }

    .erp-extra-users-controls label,
    #erpExtraUsersPrice {
      grid-column: auto;
    }

    #erpExtraUsersPrice {
      width: 100%;
    }
  }



/* Sprint 13 - Entornos, versionado y Acerca de */

























html.workspace-dialog-open { overflow: hidden; }






/* Sprint 15 - Smart Dashboard & Sales Intelligence */









/* Sprint 16.1 — Customer 360 Header */
/* RC2 polish — compact customer selector + full-width Customer 360 */







































/* v0.9.31 - Customer Activity Feed */


























/* PR-16.3 · Customer Intelligence */





/* PR-16.4 · Customer Business Panel */




/* RC2 smoke fix: contain Customer 360 inside narrow embedded viewports. */







/* Sprint 14 · Sales Pipeline & Daily Focus
 * Copia canónica restaurada tras eliminar las duplicaciones históricas.
 */
























/* RC2 polish: compact ERP extras while preserving the final amount column. */
.erp-extra-row {
  grid-template-columns:
    24px
    minmax(0, 1.25fr)
    minmax(0, .85fr)
    minmax(0, .9fr)
    minmax(0, .6fr)
    minmax(0, .85fr);
  gap: 8px;
  padding: 12px 14px;
}
.erp-extra-row > * { min-width: 0; }
.erp-extra-tier-select,
.erp-extra-discount-type,
.erp-extra-discount-value {
  padding: 8px;
  font-size: 12px;
}
.erp-extra-original-price {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
}
.erp-extra-final-price {
  overflow: hidden;
  font-size: 14px;
  text-overflow: ellipsis;
}

/* Keep every opportunity card readable inside a slightly wider Kanban column. */




















/* Embedded Shine by Cegid brand asset. */
.shine-brand-logo {
  display: inline-block;
  flex: 0 0 auto;
  background-image: var(--shine-brand-logo);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.shine-brand-logo--topbar {
  width: 118px;
  height: 40px;
  background-position: left center;
}




@media (max-width: 900px) {
  .erp-extra-row {
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 9px 12px;
  }
  .erp-extra-original-price,
  .erp-extra-tier-select,
  .erp-extra-discount-type,
  .erp-extra-discount-value,
  .erp-extra-final-price {
    grid-column: 2;
    width: min(100%, 240px);
  }
  .erp-extra-final-price { text-align: left; }
}






/* Preventa · Centro de Consultas */














/* v1.1.3 — Form UI Polish
   Controles multilínea fluidos y consistentes en todo el Workspace. */
:where(.field, .field2) textarea,
:where(.modal, .drawer, .native-module, .workspace-panel, .admin-panel) textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 112px;
  box-sizing: border-box;
  padding: 12px 14px;
  border: 1px solid #d6e2de;
  border-radius: 12px;
  background: #f8faf9;
  color: inherit;
  font: inherit;
  font-size: 14px;
  line-height: 1.5;
  resize: vertical;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
:where(.field, .field2) textarea:hover,
:where(.modal, .drawer, .native-module, .workspace-panel, .admin-panel) textarea:hover {
  border-color: #b9ccc5;
}
:where(.field, .field2) textarea:focus,
:where(.modal, .drawer, .native-module, .workspace-panel, .admin-panel) textarea:focus {
  border-color: #0b5b42;
  box-shadow: 0 0 0 3px rgba(11,91,66,.12);
  background: #fff;
}
:where(.field, .field2) textarea::placeholder,
:where(.modal, .drawer, .native-module, .workspace-panel, .admin-panel) textarea::placeholder {
  color: #899791;
}
:where(.field, .field2) textarea:disabled,
:where(.modal, .drawer, .native-module, .workspace-panel, .admin-panel) textarea:disabled {
  cursor: not-allowed;
  background: #f1f4f3;
  color: #64716d;
}
/* Los formularios de Demo y Knowledge necesitan más espacio para contenido narrativo. */

@media (max-width: 720px) {
  :where(.field, .field2) textarea,
  :where(.modal, .drawer, .native-module, .workspace-panel, .admin-panel) textarea {
    min-height: 120px;
    font-size: 16px;
  }
  
}

/* v1.1.4 — Demo Analytics */













/* v1.1.5.3 Calendly dynamic booking form */































/* v1.1.6 — Flujo Comercial Ágil */







/* v1.1.6.1 — Customer Solution Footprint */






























/* v1.1.7 — Importación masiva de clientes */





























/* v1.1.8 — Reporting comercial */




















html.workspace-is-busy,
html.workspace-is-busy body { cursor: progress !important; }
.workspace-global-loader { pointer-events: all; user-select: none; }
.workspace-global-loader.is-visible { cursor: progress; }
.workspace-global-loader.is-visible::after {
  content: "Espera a que finalice la operación";
  position: fixed;
  left: 50%;
  bottom: 28px;
  transform: translateX(-50%);
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(15,23,42,.82);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
}
















/* Opportunities UI refresh */
































/* v1.3.0.1 — UI hotfix */







/* Identity icons beside the main page title. */
#dashboardTitle,#customersTitle,#opportunitiesTitle,#actionsTitle,#demosTitle,#historyNativeTitle,#reportsTitle,#assistantTitle,#helpCenterTitle,#adminTitle,#calculatorNativeTitle,#presalesTitle{
  display:flex;
  align-items:center;
  gap:9px;
}





#historyNativeTitle::before{content:"↺"}




#calculatorNativeTitle::before{content:"€"}








/* Assistant mini chat */
































/* Sales Toolkit v2 — minimización de datos y accesos directos */
.budget-privacy-note{margin:12px 0;padding:10px 12px;border:1px solid #dce9e3;border-radius:10px;background:#f7fbf9;color:#53685e;font-size:11px;line-height:1.45}




/* v2.3.1.0 Calendly booking UI refresh */




























/* Commercial Wiki v1. Calendly demo tabs intentionally untouched: preserve wrapped 2–3 row layout. */



/* Commercial Wiki v1.1 — lightweight visual article editor */
























/* Preserve the user's Calendly tabs layout: wrapped into 2–3 rows, never horizontal scrolling. */




/* v2.6.1.1 — Wiki renderer/layout hotfix */




























/* Preserve manually adjusted Calendly tabs: wrap into 2–3 rows, no horizontal scroll. */




/* v2.7.0.0 — Wiki content blocks v2 */




























/* Editor toolbar stays usable as it grows. */


/* Preserve compact reader typography and wrapped Calendly tabs. */





/* v2.8.0.0 — Wiki + Assistant deep integration */












/* Preserve compact Wiki typography and manually wrapped Calendly tabs. */





/* v2.8.0.1 — Assistant layout + Wiki links hotfix */
















/* v2.8.1.1 — linked Wiki images keep size/alignment controls */





/* v2.8.2.0 — Wiki CSV table helper */





/* v2.8.2.1 — Wiki Calendly embed */




/* Preserve compact Wiki typography and manually wrapped Calendly tabs. */





/* v2.8.3.0 — Nested Wiki blocks */






/* Preserve compact Wiki typography and manually wrapped Calendly tabs. */






 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  


/* Shine Sales Toolkit v2.9.0.1 - Inicio: legibilidad +2px */













 v2/**/.9/**/.4/**/.0 · Extras ERP con matriz de dos filtros -->

.erp-extra-matrix-controls{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:7px;min-width:300px}
.erp-extra-matrix-controls select{width:100%;min-width:0;border:1px solid #cfded7;border-radius:9px;padding:8px 9px;background:#fff;color:#153f33;font:inherit;font-size:.82rem}
.erp-extra-matrix-controls select:disabled{background:#f5f8f6;color:#83958e}
@media(max-width:900px){.erp-extra-matrix-controls{grid-template-columns:1fr;min-width:0}}


 




/* ==================================================
   v2.10.1.0 · Importación histórica de Leads
================================================== */















 












 



















/* v2.12.0.0 · Demos unificadas · ficha por bloques */
























/* v2.14.0.0 — Manager Reports · Demos */






/* Contrato ERP */
.erp-contract-modal {
  width: min(94vw, 680px);
  max-height: 90vh;
  overflow-y: auto;
}

.erp-contract-review {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e5e7eb;
}

.erp-contract-review h3,
.erp-contract-signer h3 {
  margin: 0 0 8px;
  font-size: 16px;
}

.erp-contract-review p,
.erp-contract-signer p {
  margin: 0 0 16px;
  color: #64748b;
  font-size: 14px;
}

.erp-contract-downloads {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.erp-contract-signer {
  margin-bottom: 20px;
}


.workspace-application.is-visible{display:block!important}.workspace-stage{grid-column:auto!important;margin-left:0!important}
.presupuestos-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 28px;background:#fff;border-bottom:1px solid #dce3ea}
.presupuestos-header nav,.presupuestos-header>div{display:flex;align-items:center;gap:12px}.presupuestos-version{color:#657083;font-size:12px}
.presupuestos-header button{margin:0}.access-card{max-width:480px;margin:auto}.presupuestos-header strong{font-size:20px}
@media(max-width:700px){.presupuestos-header{flex-wrap:wrap;padding:16px}.presupuestos-header nav{order:3;width:100%}.presupuestos-header strong{font-size:18px}}
.microdata-selection-preview{
  margin-top:18px;
  padding:18px;
  border:1px solid #d9e2df;
  border-radius:16px;
  background:linear-gradient(
    135deg,
    #f8faf9,
    #ffffff
  );
}

.microdata-selection-preview-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}

.microdata-selection-preview-header h4{
  margin:2px 0 4px;
  color:#173d33;
  font-size:18px;
}

.microdata-selection-preview-header p:last-child{
  margin:0;
  color:#64748b;
  font-size:13px;
}

.microdata-preview-badge{
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:#edf4ef;
  color:#0e4e29;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.microdata-selection-preview-grid{
  display:grid;
  grid-template-columns:
    repeat(4,minmax(0,1fr));
  gap:10px;
}

.microdata-selection-preview-grid>div{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:13px 14px;
  border:1px solid #e3eae6;
  border-radius:13px;
  background:#fff;
}

.microdata-selection-preview-grid span{
  color:#64748b;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.microdata-selection-preview-grid strong{
  color:#173d33;
  font-size:17px;
}

.microdata-selection-preview-grid .is-empty{
  opacity:.45;
}

.microdata-preview-addons{
  display:grid;
  gap:8px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #e3eae6;
}

.microdata-preview-addons-title{
  color:#64748b;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.microdata-preview-addon-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:10px 12px;
  border-radius:11px;
  background:#f8faf9;
}

.microdata-preview-addon-row>div{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.microdata-preview-addon-row span{
  color:#64748b;
  font-size:12px;
}

.microdata-preview-addon-row b{
  align-self:center;
  color:#173d33;
  font-size:12px;
  text-align:right;
}

@media(max-width:760px){
  .microdata-selection-preview-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .microdata-selection-preview-header,
  .microdata-preview-addon-row{
    flex-direction:column;
  }

  .microdata-preview-addon-row b{
    align-self:flex-start;
    text-align:left;
  }
}

@media(max-width:480px){
  .microdata-selection-preview-grid{
    grid-template-columns:1fr;
  }
}

.history-erp-reference{display:grid;gap:5px;width:100%;min-width:220px;color:#436256;font-size:11px;font-weight:700}
.history-erp-reference input{height:36px;padding:0 10px;border:1px solid #c9d8d1;border-radius:9px;color:#173d33;background:#fff}
.history-toolbar-new{flex-wrap:wrap;align-items:end}.history-toolbar-new .history-type-field{max-width:200px;flex:0 1 200px}
.history-toolbar-new .history-type-field select{height:42px;min-width:165px;padding:8px;border:1px solid #ceddd7;border-radius:10px;background:white}
.history-archive-hint,.history-document-warning{padding:9px 12px;margin:12px 0;color:#536b60;background:#f4f8f5;border:1px solid #dce8e1;border-radius:10px;font-size:12px}
.history-document-card{cursor:default}.history-document-main{min-width:0}.history-document-main h3{overflow-wrap:anywhere}
.history-document-id{font-size:10px;color:#71847a;overflow-wrap:anywhere}
.history-document-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end;margin-top:9px}
.history-document-actions button{margin:0!important;white-space:nowrap}
.history-detail-panel{max-width:780px}
@media(max-width:760px){.history-toolbar-new .history-type-field{max-width:none;flex:1 1 100%}.history-document-actions{justify-content:flex-start}}
/* Modulo propio de Administracion. No altera el estilo funcional de AppStyles. */
.sp-admin-container{max-width:1500px;margin:0 auto;padding:20px 26px 34px}
.sp-admin-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px;border-bottom:1px solid #d8e4dc;padding-bottom:12px}
.sp-admin-tabs button{padding:10px 14px;border:1px solid #dce8e1;border-radius:10px;background:#fff;color:#315747;font-weight:750;cursor:pointer}
.sp-admin-tabs button.is-active{background:#e6f3eb;color:#0b4d2d;border-color:#a8cfb6}
.sp-admin-panel{border-radius:16px;background:#fff;padding:20px;border:1px solid #dfebe4;box-shadow:0 2px 10px rgba(26,58,41,.04)}
.sp-admin-panel.hidden,.sp-admin-modal.hidden{display:none!important}
.sp-admin-panel-header{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:16px}
.sp-admin-panel-header h2{margin:0 0 4px;font-size:19px;color:#173d33}
.sp-admin-panel-header p{margin:0;color:#657b70;font-size:13px;line-height:1.5}
.sp-admin-actions{display:flex;flex-wrap:wrap;gap:8px}
.sp-admin-toolbar{display:flex;align-items:center;gap:15px;margin:8px 0 14px;flex-wrap:wrap;color:#64766b;font-size:12px}
.sp-admin-toolbar input{flex:1;max-width:450px;min-width:210px;border:1px solid #ccdcd3;border-radius:10px;padding:10px 12px;background:white}
.sp-admin-catalog-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px}
.sp-admin-catalog-menu{display:flex;flex-direction:column;gap:7px}
.sp-admin-catalog-menu button{background:#f8faf8;border:1px solid #e0eae3;border-radius:11px;text-align:left;padding:12px;color:#244b3a;font-weight:700;cursor:pointer}
.sp-admin-catalog-menu button small{display:block;font-weight:400;margin-top:4px;color:#6d8478}
.sp-admin-catalog-menu button.is-active{border-color:#70b38a;background:#ebf8ef}
.sp-admin-table-wrap{overflow-x:auto;border:1px solid #e3ece6;border-radius:12px;min-width:0}
.sp-admin-table-wrap table{border-collapse:collapse;width:100%;font-size:12px;min-width:650px}
.sp-admin-table-wrap th{background:#f3f8f4;text-align:left;color:#446251;font-size:11px;white-space:nowrap}
.sp-admin-table-wrap th,.sp-admin-table-wrap td{padding:11px 12px;border-bottom:1px solid #e8eee9;vertical-align:middle;word-break:break-word}
.sp-admin-table-wrap tr:last-child td{border-bottom:0}
.sp-admin-table-wrap .sp-admin-row-actions{display:flex;gap:6px;flex-wrap:wrap}
.sp-admin-table-wrap button{margin:0}
.sp-admin-status{padding:4px 9px;border-radius:100px;font-size:11px;font-weight:700}
.sp-admin-status.sp-on{background:#e6f5e9;color:#146236}.sp-admin-status.sp-off{background:#f2f2f2;color:#737373}
.sp-admin-empty{padding:22px;color:#61766b;font-size:13px}
.sp-admin-hint{color:#607669;background:#f5faf6;border-radius:10px;padding:10px;font-size:12px;margin:0 0 12px}
.sp-admin-modal-panel{max-width:800px;width:min(96vw,800px);max-height:90vh;overflow-y:auto}
.sp-admin-reset-panel{max-width:520px;width:min(96vw,520px)}
.sp-admin-editor{padding:18px 22px 24px}.sp-admin-editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.sp-admin-editor .field{display:flex;flex-direction:column;gap:5px;min-width:0}
.sp-admin-editor .field input,.sp-admin-editor .field select{width:100%;padding:10px;border:1px solid #cbdcd0;border-radius:9px;background:white;color:#173d33}
.sp-admin-editor .field input[readonly]{background:#f2f5f3;color:#6c7c73}
.sp-admin-editor .field small{font-size:11px;color:#778579;line-height:1.3}
.sp-admin-editor .sp-admin-check{flex-direction:row;align-items:center;gap:8px}.sp-admin-check input{width:auto!important}
.sp-admin-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
@media(max-width:750px){.sp-admin-catalog-layout{grid-template-columns:minmax(0,1fr)}.sp-admin-catalog-menu{flex-direction:row;overflow-x:auto}.sp-admin-catalog-menu button{min-width:155px}.sp-admin-editor-fields{grid-template-columns:1fr}.sp-admin-panel-header{flex-direction:column}.sp-admin-container{padding:12px}}



/* INICIO TEMA SHINE FASE 1 - append-only; estilos anteriores intactos */

/* Shine Presupuestos - fase 1. Estilos aislados, sin modificar logica. */
:root{
 --shine-green:#003725;--shine-blue:#3A66EB;--shine-blue-pale:#C2D4FB;
 --shine-cream:#FEFCE8;--shine-yellow:#FFF389;--shine-brown:#432913;
 --shine-ink:#19322e;--shine-muted:#62766e;--shine-line:#dce6e1;
 --shine-page:#f7f9f7;--shine-shadow:0 12px 30px rgba(0,55,37,.06),0 2px 8px rgba(0,55,37,.025);
}
.page-shell:has(.workspace-application.is-visible){display:block!important;place-items:initial!important;width:100%!important;max-width:none!important;padding:0!important;min-height:100vh;background:var(--shine-page)!important}
.workspace-application.is-visible{display:block!important;width:100%;min-width:0;background:var(--shine-page);color:var(--shine-ink)}
.workspace-application .workspace-stage{width:100%;min-width:0;background:var(--shine-page)}
.workspace-application .workspace-content{width:100%;min-width:0;padding:20px clamp(14px,2.4vw,32px) 42px}
.workspace-application .workspace-content>.workspace-screen{width:100%!important;max-width:1720px!important;margin-inline:auto!important;background:transparent;box-shadow:none}
/* Cabecera: logo y navegacion originales, sin alterar botones. */
.workspace-application .presupuestos-header{position:relative;z-index:30;min-height:72px;padding:12px clamp(18px,3vw,48px);background:var(--shine-green);border-bottom:1px solid rgba(255,255,255,.12);color:white;box-shadow:0 6px 18px rgba(0,55,37,.1);flex-wrap:wrap;gap:14px 26px}
.workspace-application .presupuestos-header .sp-brand{display:flex;align-items:center;gap:12px;min-width:0}
.workspace-application .presupuestos-header .shine-brand-logo--header{display:block;width:110px;height:42px;background-position:left center;filter:brightness(0) invert(1)}
.workspace-application .sp-brand-copy{display:grid;gap:1px;padding-left:12px;border-left:1px solid rgba(255,255,255,.24)}
.workspace-application .sp-brand-copy strong{font-size:15px;font-weight:780;letter-spacing:-.01em;color:white}
.workspace-application .sp-brand-copy small{font-size:11px;color:rgba(255,255,255,.72)}
.workspace-application .presupuestos-version{align-self:center;margin-left:2px;color:rgba(255,255,255,.64);font-size:11px}
.workspace-application .presupuestos-header nav{display:flex;align-items:center;gap:5px;padding:5px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.065)}
.workspace-application .presupuestos-header nav button,.workspace-application .presupuestos-header #logoutButton{width:auto;min-height:37px;padding:9px 14px;margin:0;border:1px solid transparent;border-radius:9px;background:transparent;color:rgba(255,255,255,.86);box-shadow:none;font-size:12px;font-weight:750;line-height:1.2;white-space:nowrap;transition:background .16s ease,color .16s ease}
.workspace-application .presupuestos-header nav button:hover,.workspace-application .presupuestos-header #logoutButton:hover{color:white;background:rgba(255,255,255,.14)}
.workspace-application .presupuestos-header nav button.primary-button{color:var(--shine-green);background:white}
.workspace-application .presupuestos-header nav button.primary-button:hover{background:var(--shine-cream)}
.workspace-application #workspaceCommercial{color:rgba(255,255,255,.9);font-size:12px;font-weight:650}
.workspace-application #logoutButton{border-color:rgba(255,255,255,.28)!important}
/* Titulos secundarios */
.workspace-application .workspace-topbar{background:transparent;border-bottom:0;padding:15px 12px 10px;gap:16px;box-shadow:none}
.workspace-application .workspace-topbar h1{color:var(--shine-green);font-size:clamp(21px,2.3vw,29px);line-height:1.15;margin:3px 0 5px}
.workspace-application .workspace-topbar .eyebrow{color:#59736a}
.workspace-application .workspace-subtitle{color:var(--shine-muted);font-size:13px;margin:0}
.workspace-application .calculator-native-topbar .shine-brand-logo--topbar{width:94px;height:32px;opacity:.9}
.workspace-application .calculator-native-content{padding:0 8px 30px!important;overflow:visible}
/* Dos tarjetas en lugar de un hero gigante con acciones flotantes. */
.workspace-application .calculator-native-content .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,330px);align-items:stretch;gap:16px;margin:10px 0 20px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.workspace-application .calculator-native-content .hero-content{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:224px;padding:26px clamp(22px,2.8vw,38px);border:1px solid #dce7fa;border-radius:18px;background:linear-gradient(117deg,#edf4ff 0%,#f5f8ff 64%,#e6effe 100%);box-shadow:var(--shine-shadow)}
.workspace-application .calculator-native-content .hero-content::after{content:"";pointer-events:none;position:absolute;width:205px;height:205px;right:-95px;bottom:-115px;border:38px solid rgba(58,102,235,.105);border-radius:50%}
.workspace-application .calculator-native-content .hero .eyebrow{color:var(--shine-green);letter-spacing:.105em;font-size:10px;font-weight:850;margin-bottom:10px}
.workspace-application .calculator-native-content .hero h1{font-size:clamp(30px,3vw,43px);line-height:1.08;color:var(--shine-ink);letter-spacing:-.045em;margin:0 0 12px}
.workspace-application .calculator-native-content .hero .subtitle{color:#3b5751;line-height:1.5;max-width:56ch;font-size:13px;margin:0}
.workspace-application .calculator-native-content .hero-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:9px;width:100%;max-width:none;padding:18px 20px;border:1px solid var(--shine-line);border-radius:18px;background:white;box-shadow:var(--shine-shadow)}
.workspace-application .hero-actions-label{font-size:15px;line-height:1.25;font-weight:780;color:var(--shine-green);margin:0 0 3px}
.workspace-application .calculator-native-content .hero-actions button{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;height:auto;margin:0!important;padding:10px 14px;font-size:12px;line-height:1.25;font-weight:800;border-radius:10px;border:1px solid #cbdad5;background:white;color:var(--shine-green);box-shadow:none;white-space:normal;text-align:center;transition:transform .16s ease,background .16s ease,border-color .16s ease}
.workspace-application .calculator-native-content .hero-actions button:hover:not(:disabled){transform:translateY(-1px);background:#f6faf7;border-color:#98b5a8}
.workspace-application .calculator-native-content #generateBudgetBtn{background:var(--shine-green);border-color:var(--shine-green);color:white;min-height:43px;box-shadow:0 5px 13px rgba(0,55,37,.12)}
.workspace-application .calculator-native-content #generateBudgetBtn:hover:not(:disabled){background:#07523c;color:white}
.workspace-application .history-erp-reference{display:grid;gap:5px;width:100%;margin:4px 0 0;color:#48665c;font-size:10px;font-weight:750}
.workspace-application .history-erp-reference input{width:100%;min-width:0;height:38px;border:1px solid #d5e1db;border-radius:9px;background:white;color:var(--shine-ink);padding:8px 11px;font-size:12px}
/* Pestañas de aplicaciones reales: ERP y Microdata, nunca colores como productos. */
.workspace-application .tabs{margin:0 0 28px;padding:0}
.workspace-application .tabs-header{display:flex;align-items:center;gap:8px;min-height:57px;padding:7px 10px;border:1px solid var(--shine-line);border-radius:16px 16px 0 0;background:white}
.workspace-application .tabs-header .tab-button{width:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 21px;margin:0;font-size:13px;font-weight:770;color:#59736a;background:transparent;border:1px solid transparent;border-radius:10px;box-shadow:none;white-space:nowrap;transform:none}
.workspace-application .tabs-header .tab-button:hover{color:var(--shine-green);background:#f5f8f7}
.workspace-application .tabs-header .tab-button.active{color:var(--shine-green);background:#edf3ff;border-color:#d6e2fb}
.workspace-application .tabs-header .tab-button.active::after{display:none}
.workspace-application .tab-content{padding:clamp(16px,2.4vw,30px);background:white;border:1px solid var(--shine-line);border-top:0;border-radius:0 0 16px 16px;box-shadow:var(--shine-shadow)}
/* Formularios: no se altera el modelo ni los identificadores. */
.workspace-application .microdata-title,.workspace-application .erp-title{font-size:clamp(22px,2vw,31px);letter-spacing:-.035em;color:var(--shine-green)}
.workspace-application .microdata-subtitle,.workspace-application .erp-subtitle{color:var(--shine-muted);font-size:13px;line-height:1.5}
.workspace-application .microdata-header,.workspace-application .erp-header{gap:18px;margin-bottom:18px}
.workspace-application :is(.erp-plan-summary,.erp-table-card,.microdata-config-card,.microdata-budget-card,.microdata-selection-preview,.microdata-notes-card){border-color:var(--shine-line);border-radius:15px;box-shadow:0 4px 18px rgba(0,55,37,.035)}
.workspace-application .erp-table-title{background:var(--shine-green);color:white}
.workspace-application .erp-pricing-block{background:#fafcfb;border-color:var(--shine-line)}
.workspace-application .erp-users-block{background:#f3f7ff}
.workspace-application .erp-result-total{background:var(--shine-cream)}
.workspace-application .erp-result-total-anual{background:#eff4ff}
.workspace-application .microdata-result-card,.workspace-application .microdata-sidebar-summary{border-color:var(--shine-line)}
.workspace-application :is(.microdata-add-button,.microdata-generate-button,.primary-button:not(.compact)){border-radius:11px}
.workspace-application :is(.microdata-add-button,.microdata-generate-button){box-shadow:0 6px 16px rgba(0,55,37,.1)}
.workspace-application :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea):focus-visible{outline:3px solid rgba(58,102,235,.16);outline-offset:1px;border-color:var(--shine-blue)}
.workspace-application input[type="checkbox"],.workspace-application input[type="radio"]{accent-color:var(--shine-blue)}
.workspace-application :is(button,a,input,select,textarea):focus-visible{outline:3px solid rgba(58,102,235,.32);outline-offset:2px}
/* Historial y Administracion. */
.workspace-application .history-native-shell,.workspace-application .sp-admin-container{padding:16px 12px 32px}
.workspace-application .history-native-card,.workspace-application .sp-admin-panel{background:white;border-color:var(--shine-line);border-radius:18px;box-shadow:var(--shine-shadow)}
.workspace-application .history-native-card:hover{border-color:var(--shine-blue-pale)}
.workspace-application .history-status{background:#eaf3ff;color:#214a9d}
.workspace-application .sp-admin-tabs{gap:8px}
.workspace-application .sp-admin-tabs button{border:1px solid #dce7e2;border-radius:10px;color:#315747;background:white}
.workspace-application .sp-admin-tabs button.is-active{background:#eaf1ff;color:#173f7c;border-color:var(--shine-blue-pale)}
.workspace-application .sp-admin-panel{padding:22px}
.workspace-application .sp-admin-table-wrap th{background:#f2f6fe;color:#39555d}
.workspace-application .sp-admin-catalog-menu button.is-active{background:#ebf2ff;border-color:var(--shine-blue-pale)}
.workspace-application .sp-admin-toolbar input{min-height:42px}
.native-modal .native-modal-panel{border-radius:18px}
.native-modal .native-modal-header{border-color:var(--shine-line)}
.native-modal .native-modal-header h2{font-size:clamp(22px,2vw,28px)}
/* Tablet y movil: botones, sin scroll horizontal. */
@media(max-width:1060px){
 .workspace-application .calculator-native-content .hero{grid-template-columns:minmax(0,1fr) minmax(250px,300px)}
 .workspace-application .calculator-native-content .hero-content{min-height:205px}
}
@media(max-width:790px){
 .workspace-application .presupuestos-header nav{order:3;width:100%;justify-content:center}
 .workspace-application .calculator-native-content .hero{grid-template-columns:1fr}
 .workspace-application .calculator-native-content .hero-content{min-height:180px;padding:25px 24px}
 .workspace-application .calculator-native-content .hero-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:9px}
 .workspace-application .hero-actions-label,.workspace-application .history-erp-reference{grid-column:1 / -1}
 .workspace-application .workspace-content{padding:12px 10px 30px}
 .workspace-application .workspace-content>.workspace-screen{width:100%!important}
}
@media(max-width:550px){
 .workspace-application .presupuestos-header{padding:12px 14px}
 .workspace-application .presupuestos-header .shine-brand-logo--header{width:92px;height:35px}
 .workspace-application .sp-brand-copy small,.workspace-application .presupuestos-version{display:none}
 .workspace-application .presupuestos-header nav{gap:2px;justify-content:space-between}
 .workspace-application .presupuestos-header nav button{flex:1;padding:9px 7px;font-size:11px}
 .workspace-application .presupuestos-header>div:last-child{width:100%;justify-content:space-between}
 .workspace-application .calculator-native-content .hero .subtitle{font-size:12px}
 .workspace-application .calculator-native-content .hero h1{font-size:29px}
 .workspace-application .calculator-native-content .hero-actions{grid-template-columns:1fr;padding:16px}
 .workspace-application .hero-actions-label,.workspace-application .history-erp-reference{grid-column:auto}
 .workspace-application .tab-content{padding:16px 12px}
 .workspace-application .tabs-header{gap:6px}
 .workspace-application .tabs-header .tab-button{flex:1;padding:10px 14px}
 .workspace-application .sp-admin-panel{padding:14px}
}
@media(prefers-reduced-motion:reduce){.workspace-application .presupuestos-header button,.workspace-application .hero-actions button{transition:none}}

/* Contraste de los totales ERP: el fondo claro nunca conserva texto blanco. */
.workspace-application .erp-result{background:var(--shine-green);color:#fff}
.workspace-application .erp-result-total{background:var(--shine-cream);color:var(--shine-green)}
.workspace-application .erp-result-total-anual{background:#eff4ff;color:var(--shine-green)}
.workspace-application .erp-result-one-time{color:white}
/* El elemento activo de navegacion responde al modulo visible, sin JS nuevo. */
.workspace-application:has(#historyScreen:not(.hidden)) #openCalculatorButton,
.workspace-application:has(#adminScreen:not(.hidden)) #openCalculatorButton{color:rgba(255,255,255,.82);background:transparent}
.workspace-application:has(#historyScreen:not(.hidden)) #openHistoryButton,
.workspace-application:has(#adminScreen:not(.hidden)) #openAdminButton{color:var(--shine-green);background:white}
.workspace-application:has(#historyScreen:not(.hidden)) #openHistoryButton:hover,
.workspace-application:has(#adminScreen:not(.hidden)) #openAdminButton:hover{color:var(--shine-green);background:var(--shine-cream)}

/* FIN TEMA SHINE FASE 1 */


/* ============================================================
   SHINE PRESUPUESTOS - FASE 2 VISUAL
   Solo presentacion. IDs, logica, formularios y catalogos intactos.
   ============================================================ */
:root { --shine-surface:#fff; --shine-focus:#3a66eb; --shine-soft-blue:#edf3ff; --shine-soft-cream:#fefce8; }
/* Recupera el logo usando los recursos de marca ya cargados.
   AppIndex.html permanece exactamente igual que la version estable. */
.workspace-application .presupuestos-header{min-height:66px;padding:10px clamp(16px,2.4vw,38px);gap:14px 20px}
.workspace-application .presupuestos-header > div:first-child{display:flex;align-items:center;gap:11px;min-width:0}
.workspace-application .presupuestos-header > div:first-child::before{content:"";display:block;flex:0 0 77px;width:77px;height:39px;background-image:var(--shine-brand-logo);background-repeat:no-repeat;background-position:center;background-size:contain;filter:brightness(0) invert(1)}
.workspace-application .presupuestos-header > div:first-child strong{font-size:13px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;padding-left:12px;border-left:1px solid rgba(255,255,255,.27);color:#fff}
.workspace-application .presupuestos-version{font-size:11px;white-space:nowrap}
.workspace-application .presupuestos-header nav{margin-left:auto;margin-right:auto}
.workspace-application .presupuestos-header nav button{font-size:12px;letter-spacing:.01em}
.workspace-application .presupuestos-header > div:last-child{display:flex;align-items:center;gap:12px}
/* El encabezado secundario pasa a una barra de estado discreta. */
.workspace-application #calculatorScreen{width:100%!important;max-width:1660px!important}
.workspace-application #historyScreen,.workspace-application #adminScreen{width:100%!important;max-width:1660px!important}
.workspace-application .calculator-native-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 10px 14px;min-height:52px;border:0!important;background:transparent!important}
.workspace-application .calculator-native-topbar > div:first-child{display:flex;align-items:center;gap:11px;min-width:0}
.workspace-application .calculator-native-topbar .shine-brand-logo--topbar{display:none}
.workspace-application .calculator-native-topbar > div:first-child::before{content:"";width:31px;height:31px;flex:0 0 31px;border:1px solid #d8e6dd;border-radius:10px;background:linear-gradient(135deg,#e5f3eb,#f5faf7)}
.workspace-application .calculator-native-topbar h1{margin:0 0 2px!important;font-size:13px!important;line-height:1.15;letter-spacing:-.01em;color:var(--shine-green)}
.workspace-application .calculator-native-topbar .workspace-subtitle{font-size:11px;color:#718279}
.workspace-application .calculator-native-topbar .workspace-user-area{display:flex;align-items:center;gap:9px}
.workspace-application .calculator-native-topbar #backToDashboardButton{font-size:11px;min-height:34px;padding:7px 11px;background:white;border:1px solid var(--shine-line);color:var(--shine-green);box-shadow:none}
.workspace-application .calculator-native-topbar #calculatorCatalogStatus{font-size:10px;padding:6px 10px;border-radius:999px}
/* Cabecera principal: dos piezas proporcionales, mucho menos espacio vacio. */
.workspace-application .calculator-native-content .hero{grid-template-columns:minmax(0,1fr) minmax(294px,356px);gap:17px;margin:4px 0 16px}
.workspace-application .calculator-native-content .hero-content{min-height:230px;padding:25px clamp(25px,3.2vw,43px);background:linear-gradient(115deg,#eaf3ff 0%,#f0f6ff 57%,#e0edff 100%);border-color:#dbe6fb;border-radius:18px}
.workspace-application .calculator-native-content .hero-content::after{width:250px;height:250px;right:-95px;bottom:-155px;border:34px solid rgba(58,102,235,.11);border-radius:45% 55% 52% 48%;transform:rotate(36deg)}
.workspace-application .calculator-native-content .hero-content::before{content:"";pointer-events:none;position:absolute;width:105px;height:105px;right:30px;bottom:-62px;border:24px solid rgba(58,102,235,.07);border-radius:45%;transform:rotate(-25deg)}
.workspace-application .calculator-native-content .hero .eyebrow,.workspace-application .calculator-native-content .hero h1,.workspace-application .calculator-native-content .hero .subtitle{position:relative;z-index:1}
.workspace-application .calculator-native-content .hero h1{font-size:clamp(30px,3.2vw,45px);max-width:700px;margin-bottom:13px;letter-spacing:-.048em}
.workspace-application .calculator-native-content .hero .subtitle{max-width:63ch;font-size:13px;line-height:1.65;color:#36565a}
.workspace-application .calculator-native-content .hero-actions{gap:8px;padding:17px 20px;border-radius:18px}
.workspace-application .calculator-native-content .hero-actions .hero-actions-label{font-size:14px;font-weight:800;margin:0 0 4px}
.workspace-application .calculator-native-content .hero-actions button{display:flex;justify-content:space-between;align-items:center;gap:11px;min-height:42px;padding:8px 12px;border-radius:10px;text-align:left;font-size:12px;box-sizing:border-box}
.workspace-application .calculator-native-content .hero-actions .shine-action-icon{display:grid;flex:0 0 20px;width:20px;height:20px;place-items:center;color:inherit}
.workspace-application .calculator-native-content .hero-actions .shine-action-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.workspace-application .calculator-native-content .hero-actions .shine-action-label{flex:1;min-width:0;text-align:left}
.workspace-application .calculator-native-content .hero-actions .shine-action-arrow{font-size:22px;line-height:1;font-weight:400;opacity:.72}
.workspace-application .calculator-native-content .hero-actions #generateBudgetBtn{background:var(--shine-green);color:white;border-color:var(--shine-green)}
.workspace-application .calculator-native-content .hero-actions #generateBudgetBtn:hover:not(:disabled){background:#07523b;color:white}
.workspace-application .calculator-native-content .history-erp-reference{margin-top:6px;gap:6px;font-size:10.5px}
.workspace-application .calculator-native-content .history-erp-reference input{height:39px;font-size:12px;border-radius:9px}
/* Pasos visuales de orientacion, no controles nuevos. */
.workspace-application .shine-workflow-strip{display:flex;align-items:center;justify-content:center;gap:20px;margin:0 0 18px;padding:12px 23px;border:1px solid var(--shine-line);border-radius:14px;background:white;box-shadow:0 3px 12px rgba(0,55,37,.025)}
.workspace-application .shine-workflow-step{display:flex;align-items:center;gap:11px;min-width:0;flex:1}
.workspace-application .shine-workflow-number{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;color:white;background:var(--shine-green);border-radius:50%;font-size:12px;font-weight:850}
.workspace-application .shine-workflow-step strong{display:block;color:#173e34;font-size:12px;line-height:1.25;font-weight:800}
.workspace-application .shine-workflow-step small{display:block;color:#6a7b76;font-size:10.5px;line-height:1.5;margin-top:2px}
.workspace-application .shine-workflow-divider{height:1px;flex:0 1 46px;background:#cfddd6}
/* Espacios de calculadora independientes, como el diseno aprovado. */
.workspace-application .tabs{padding:0;border:0;background:transparent}
.workspace-application .tabs-header{border-radius:15px;border:1px solid var(--shine-line);min-height:54px;padding:6px 8px;margin-bottom:13px;box-shadow:0 4px 13px rgba(0,55,37,.025)}
.workspace-application .tabs-header .tab-button{min-height:39px;padding:9px 20px;font-size:13px}
.workspace-application .tabs-header .tab-button.active{border-color:#c6d7fa;background:#eaf1ff;color:#123d6a;box-shadow:0 2px 7px rgba(58,102,235,.06)}
.workspace-application .tab-content{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.workspace-application .erp-header,.workspace-application .microdata-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;padding:6px 6px 4px;gap:16px}
.workspace-application .erp-title,.workspace-application .microdata-title{font-size:clamp(22px,2.3vw,30px);line-height:1.15;letter-spacing:-.04em}
.workspace-application .erp-header .eyebrow,.workspace-application .microdata-header .eyebrow{font-size:10px;letter-spacing:.1em;color:#5c746d;margin-bottom:6px}
.workspace-application .erp-subtitle,.workspace-application .microdata-subtitle{font-size:12px;margin-top:6px}
.workspace-application .erp-layout{grid-template-columns:minmax(0,1.62fr) minmax(320px,.95fr);align-items:start;gap:17px}
.workspace-application .erp-main{background:white;border:1px solid var(--shine-line);border-radius:17px;padding:22px 22px 24px;box-shadow:var(--shine-shadow);gap:20px}
.workspace-application .erp-side-panel .erp-table-card{margin:0;border:1px solid var(--shine-line);border-radius:17px;box-shadow:var(--shine-shadow)}
.workspace-application .erp-table-card{border-radius:13px}
.workspace-application .erp-table-title{background:#f3f7ff;color:var(--shine-green);border-bottom:1px solid #e3eafa;padding:15px 18px}
.workspace-application .erp-table-title h3{font-size:14px;color:var(--shine-green);font-weight:850}
.workspace-application .erp-legend{color:#50726c;font-size:10px;gap:8px 11px}
.workspace-application .erp-legend > span{white-space:nowrap}
.workspace-application .erp-plan-summary{border-radius:13px;border-color:var(--shine-line)}
.workspace-application .erp-pricing-head{color:#6c7e8b;font-size:10.5px}
.workspace-application .erp-base-row strong{font-size:17px}
.workspace-application .erp-users-block{background:#f4f7ff}
.workspace-application .erp-result{border:1px solid var(--shine-line);border-radius:14px;color:var(--shine-green);background:white}
.workspace-application .erp-result .shine-result-heading{margin:0;padding:15px 18px 12px;font-size:14px;font-weight:850;color:var(--shine-green);border-bottom:1px solid #e7eeeb}
.workspace-application .erp-result > div{padding:12px 18px;border-bottom:1px solid #e7eeeb;color:#31584a;background:white;font-size:12px}
.workspace-application .erp-result > .erp-result-total{background:#fff9d6!important;color:var(--shine-green)!important;border-color:#f8edb5}
.workspace-application .erp-result-total strong{font-size:25px}
.workspace-application .erp-result > .erp-result-total-anual{background:#eaf1ff!important;color:#113b58!important}
.workspace-application .erp-result > .erp-result-one-time{color:#31584a!important}
.workspace-application .erp-result > .erp-result-total-anual strong,.workspace-application .erp-result > .erp-result-total strong{color:inherit}
/* Microdata: mismo acabado con los configuradores que ya existen. */
.workspace-application .microdata-config-card,.workspace-application .microdata-budget-card{border-radius:16px;background:white;box-shadow:var(--shine-shadow)}
.workspace-application .microdata-selection-preview{background:#f5f8ff;border-color:#dae6fa}
.workspace-application .microdata-preview-badge{background:#edf3ff;color:#174575}
.workspace-application .microdata-budget-header{border-bottom:1px solid #e7eeeb;padding-bottom:12px}
.workspace-application .microdata-result-card{background:#f3f7ff;border-color:#dbe7fa}
.workspace-application :is(#erp .field input,#erp .field select,#microdata .field input,#microdata .field select){border-radius:10px}
/* Historial y Administracion comparten superficies y botones. */
.workspace-application .history-native-card,.workspace-application .sp-admin-panel{box-shadow:var(--shine-shadow);border-color:var(--shine-line)}
.workspace-application .sp-admin-tabs{background:white;border:1px solid var(--shine-line);border-radius:13px;padding:6px;gap:5px;margin-bottom:14px}
.workspace-application .sp-admin-tabs button{border-color:transparent;background:transparent}
.workspace-application .sp-admin-tabs button.is-active{background:#eaf1ff;border-color:#d3e1ff;color:#173f7c}
.workspace-application .sp-admin-table-wrap tr:hover td{background:#fbfdfc}
/* No crear scroll horizontal en la navegacion ni en las pestañas. */
@media(max-width:1100px){
 .workspace-application .presupuestos-header{gap:11px 17px}
 .workspace-application .presupuestos-header > div:first-child::before{flex-basis:68px;width:68px;height:35px}
 .workspace-application .erp-layout{grid-template-columns:minmax(0,1fr)}
 .workspace-application .erp-side-panel{position:static}
 .workspace-application .erp-side-panel .erp-table-card,.workspace-application .erp-side-panel .erp-features-table{max-height:none}
}
@media(max-width:820px){
 .workspace-application .calculator-native-content .hero{grid-template-columns:minmax(0,1fr)}
 .workspace-application .calculator-native-content .hero-content{min-height:190px}
 .workspace-application .calculator-native-content .hero-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
 .workspace-application .hero-actions-label,.workspace-application .history-erp-reference{grid-column:1/-1}
 .workspace-application .shine-workflow-strip{gap:9px;padding:11px 12px}
 .workspace-application .shine-workflow-divider{flex-basis:15px}
 .workspace-application .erp-main{padding:18px}
}
@media(max-width:620px){
 .workspace-application .workspace-content{padding:12px 12px 32px}
 .workspace-application .calculator-native-topbar{align-items:flex-start;flex-wrap:wrap;gap:10px}
 .workspace-application .calculator-native-topbar .workspace-user-area{width:100%;justify-content:space-between;flex-wrap:wrap}
 .workspace-application .calculator-native-content .hero{margin-top:3px}
 .workspace-application .calculator-native-content .hero-content{min-height:168px;padding:25px 22px}
 .workspace-application .calculator-native-content .hero h1{font-size:30px}
 .workspace-application .calculator-native-content .hero-actions{display:flex;flex-direction:column;padding:16px}
 .workspace-application .hero-actions-label,.workspace-application .history-erp-reference{grid-column:auto}
 .workspace-application .shine-workflow-strip{display:grid;grid-template-columns:1fr;align-items:start;gap:11px}
 .workspace-application .shine-workflow-divider{display:none}
 .workspace-application .shine-workflow-step{gap:12px}
 .workspace-application .presupuestos-header{padding:10px 12px}
 .workspace-application .presupuestos-header>div:first-child::before{flex-basis:57px;width:57px;height:34px}
 .workspace-application .presupuestos-header>div:first-child strong{font-size:12px;padding-left:8px}
 .workspace-application .presupuestos-header nav{margin:0;width:100%;order:3;justify-content:space-between}
 .workspace-application .presupuestos-header nav button{flex:1;min-width:0;padding:8px 7px}
 .workspace-application .erp-main{padding:15px;gap:15px}
 .workspace-application .erp-pricing-head,.workspace-application .erp-base-row{gap:7px}
 .workspace-application .erp-side-panel .erp-table-title{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){.workspace-application *{scroll-behavior:auto!important}}

/* Ajuste del formulario ERP en pantallas estrechas: sin campos recortados. */
.workspace-application .erp-mobile-price-label{display:none}
.workspace-application .erp-base-row > #erpBasePrice{text-align:left}
.workspace-application .calculator-native-topbar > div:first-child::before{display:none!important;content:none!important}
@media(max-width:620px){
 .workspace-application .erp-pricing-block{padding:12px 13px}
 .workspace-application .erp-pricing-head{display:none!important}
 .workspace-application .erp-base-row{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1.2fr)!important;gap:9px 10px;align-items:center}
 .workspace-application .erp-mobile-price-label{display:block;min-width:0;color:#687d8a;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
 .workspace-application .erp-base-row select,.workspace-application .erp-base-row input{width:100%;min-width:0;max-width:100%;padding:8px 9px;font-size:12px}
 .workspace-application .erp-base-row strong{min-width:0;font-size:16px;text-align:left!important}
 .workspace-application .erp-result-total strong{font-size:21px;white-space:nowrap;flex:0 0 auto}
 .workspace-application .erp-result > div{gap:10px;padding:11px 12px}
 .workspace-application .erp-result > div span{min-width:0;overflow-wrap:anywhere}
 .workspace-application .erp-result > div strong{white-space:nowrap;flex:0 0 auto}
}

/* Contraste: las cantidades del resumen Microdata son legibles sobre azul claro. */
.workspace-application .microdata-result-card,.workspace-application .microdata-sidebar-summary{color:var(--shine-green)!important;background:#eff4ff!important;border-color:#d7e3fa!important}
.workspace-application .microdata-result-card span,.workspace-application .microdata-sidebar-summary span{color:#506b78!important}
.workspace-application .microdata-result-card strong,.workspace-application .microdata-sidebar-summary strong{color:#173d33!important}
.workspace-application .microdata-result-card > div,.workspace-application .microdata-sidebar-summary > div{border-color:#d9e5f5!important}

/* Shine Sales - ajustes de identidad y acciones (fase 2.1) */
.workspace-application .calculator-native-content .hero {
  grid-template-columns: minmax(0, 3fr) minmax(300px, 2fr);
  align-items: stretch;
  gap: 18px;
  margin-bottom: 17px;
}
.workspace-application .calculator-native-content .hero-content {
  min-height: 190px;
  padding: 28px clamp(24px, 3.1vw, 46px);
  background: linear-gradient(115deg,#eaf3ff,#e8f1ff);
}
/* Logo corporativo tenue en lugar de círculos decorativos. */
.workspace-application .calculator-native-content .hero-content::after {
  content: "";
  position: absolute;
  width: min(38%, 260px);
  height: 77%;
  top: 12%;
  right: 3%;
  bottom: auto;
  border: 0;
  border-radius: 0;
  transform: none;
  background-image: var(--shine-brand-logo);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  opacity: .12;
  filter: grayscale(1);
  pointer-events: none;
}
.workspace-application .calculator-native-content .hero-content::before {content:none;display:none}
.workspace-application .calculator-native-content .hero h1 {
  font-size: clamp(34px,3.25vw,49px);
  margin: 0 0 9px;
  position: relative;
  z-index: 1;
}
.workspace-application .calculator-native-content .hero .subtitle {
  font-size: 15px;
  font-weight: 550;
  line-height: 1.5;
  margin: 0;
  position: relative;
  z-index: 1;
}
.workspace-application .calculator-native-content .hero-actions {
  justify-content: center;
  gap: 11px;
  padding: 20px 23px;
}
.workspace-application .calculator-native-content .hero-actions button {min-height: 46px}
/* Las funciones heredadas se conservan para no afectar a los flujos antiguos. */
.workspace-application .calculator-native-content #generateBudgetBtn {display:none !important}
.workspace-application .calculator-native-content .hero-actions #generateErpContractBtn {
  color: white;
  background: var(--shine-green);
  border-color: var(--shine-green);
}
.workspace-application .calculator-native-content .hero-actions #generateErpContractBtn:hover:not(:disabled) {
  color: white;
  background: #07523b;
  border-color: #07523b;
}
.workspace-application .shine-workflow-strip {display:none !important}
/* Avisos contextuales: no desplazan el contenido, aparecen arriba a la derecha. */
.workspace-application #calculatorNativeMessage:not(:empty) {
  position: fixed;
  top: 88px;
  right: 22px;
  left: auto;
  bottom: auto;
  z-index: 1500;
  width: min(380px, calc(100vw - 32px));
  margin: 0;
  padding: 13px 17px;
  border: 1px solid #d3e0da;
  border-radius: 12px;
  box-shadow: 0 12px 36px rgba(0,55,37,.16);
  background: white;
}
.workspace-application #calculatorNativeMessage:empty {display:none !important}
@media(max-width:900px) {
  .workspace-application .calculator-native-content .hero {grid-template-columns: minmax(0,1fr)}
  .workspace-application .calculator-native-content .hero-content {min-height:175px}
  .workspace-application .calculator-native-content .hero-actions {display:flex;flex-direction:column}
  .workspace-application .calculator-native-content .hero-actions button {width:100%}
}
@media(max-width:620px) {
  .workspace-application .calculator-native-content .hero-content {min-height:160px;padding:26px 23px}
  .workspace-application .calculator-native-content .hero h1 {font-size:36px}
  .workspace-application .calculator-native-content .hero .subtitle {font-size:14px}
  .workspace-application .calculator-native-content .hero-content::after {width:41%;right:-3%;opacity:.075}
  .workspace-application #calculatorNativeMessage:not(:empty) {top:70px;right:12px}
}



/* ===========================================================
   SHINE SALES - REBRANDING FASE 3
   Solo presentacion: Historial, Administracion, modales, acceso.
   Cambios append-only; sin IDs nuevos, sin cambios de funcionalidad.
   =========================================================== */

/* Sistema compartido de superficies, etiquetas y controles */
.workspace-application #historyScreen,
.workspace-application #adminScreen{--shine-panel-line:#dce7e2;--shine-panel-shadow:0 12px 32px rgba(0,55,37,.05),0 2px 7px rgba(0,55,37,.025);min-width:0}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar{
  position:relative;align-items:center;margin:5px 8px 18px;padding:24px clamp(20px,2.2vw,34px);
  background:linear-gradient(112deg,#eaf3ff 0%,#f4f8ff 75%,#edf4ff 100%);
  border:1px solid #dce7f7;border-radius:18px;box-shadow:var(--shine-shadow);overflow:hidden
}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar:after{
  content:"";position:absolute;right:19%;top:14%;width:180px;height:75%;
  background:var(--shine-brand-logo) no-repeat center/contain;opacity:.075;filter:grayscale(1);pointer-events:none
}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar>div{position:relative;z-index:1;min-width:0}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar h1{
  margin:2px 0 8px;font-size:clamp(27px,2.7vw,37px);line-height:1.15;letter-spacing:-.04em;color:var(--shine-ink)
}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar .eyebrow{
  margin:0 0 5px;color:#315c50;letter-spacing:.085em;font-size:10px;font-weight:850
}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar .workspace-subtitle{
  max-width:66ch;font-size:12.5px;line-height:1.55;color:#47645b
}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-user-area{flex-wrap:wrap;justify-content:flex-end}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-user-area button{
  min-height:39px;border-radius:10px;font-size:12px;font-weight:750;background:#fff;border-color:#cbdcd6;
  box-shadow:0 2px 5px rgba(0,55,37,.025)
}
.workspace-application :is(#historyScreen,#adminScreen) .workspace-user-area button:hover{background:#f5faf7;border-color:#97b9ac}
.workspace-application :is(#historyScreen,#adminScreen) :is(input[type="text"],input[type="search"],input[type="email"],input[type="password"],select,textarea){
  color:var(--shine-ink);background:#fff;border:1px solid #d1dfd9;border-radius:11px;
  font-family:inherit;transition:border-color .15s,box-shadow .15s
}
.workspace-application :is(#historyScreen,#adminScreen) :is(input,select,textarea):focus{
  outline:none;border-color:var(--shine-blue);box-shadow:0 0 0 3px rgba(58,102,235,.12)
}
.workspace-application :is(#historyScreen,#adminScreen) :is(.primary-button,.secondary-button){font-size:12px;border-radius:10px;font-weight:780;white-space:normal}
.workspace-application :is(#historyScreen,#adminScreen) .primary-button{background:var(--shine-green);color:white;box-shadow:0 5px 14px rgba(0,55,37,.12)}
.workspace-application :is(#historyScreen,#adminScreen) .primary-button:hover{background:#07543d}
.workspace-application :is(#historyScreen,#adminScreen) .secondary-button{background:#fff;color:#244c3e;border-color:#d3e1d9}
.workspace-application :is(#historyScreen,#adminScreen) .secondary-button:hover{background:#f4f9f6;border-color:#93b7a7}

/* HISTORIAL: busqueda contenida, archivo bien identificado y descargas visibles */
.workspace-application #historyScreen .history-native-shell{padding:0 8px 36px}
.workspace-application #historyScreen .history-toolbar-new{
  display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,230px) auto;
  gap:14px;align-items:end;margin:0 0 12px;padding:20px;
  background:#fff;border:1px solid var(--shine-panel-line);border-radius:17px;box-shadow:var(--shine-panel-shadow)
}
.workspace-application #historyScreen .history-toolbar-new .field{margin:0;max-width:none;min-width:0;font-size:12px;font-weight:750}
.workspace-application #historyScreen .history-toolbar-new .field>span{margin:0 0 8px;color:#426457}
.workspace-application #historyScreen #historySearch,
.workspace-application #historyScreen #historyTypeFilter{height:44px;min-height:44px;width:100%;padding:9px 13px;font-size:13px}
.workspace-application #historyScreen .history-toolbar-new .history-type-field{max-width:none;flex:initial}
.workspace-application #historyScreen #historyCount{
  align-self:center;justify-self:end;min-width:fit-content;margin:0;background:#eaf1ff;color:#25498a;font-size:11px
}
.workspace-application #historyScreen .history-archive-hint{
  margin:0 0 18px;padding:12px 15px;border-radius:12px;border:1px solid #d9e7dd;
  border-left:3px solid var(--shine-green);background:#f5faf7;color:#4c6a5d;line-height:1.6;font-size:12px
}
.workspace-application #historyScreen .history-native-list{gap:12px}
.workspace-application #historyScreen .history-native-card{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  gap:20px;padding:20px 22px 19px 25px;margin:0;border:1px solid var(--shine-panel-line);
  border-radius:16px;background:#fff;box-shadow:var(--shine-panel-shadow);transform:none;transition:border-color .16s,box-shadow .16s
}
.workspace-application #historyScreen .history-native-card:before{
  content:"";position:absolute;left:0;top:19px;bottom:19px;width:4px;
  background:var(--shine-blue);border-radius:0 4px 4px 0
}
.workspace-application #historyScreen .history-native-card:hover{transform:none;border-color:#bbcef4;box-shadow:0 14px 30px rgba(0,55,37,.075)}
.workspace-application #historyScreen .history-document-main{min-width:0}
.workspace-application #historyScreen .history-document-main .eyebrow{font-size:10px;letter-spacing:.08em;color:#3869ab;margin:0 0 7px}
.workspace-application #historyScreen .history-document-main h3{
  margin:0 0 6px;color:#123d30;font-size:17px;font-weight:820;line-height:1.35;letter-spacing:-.015em
}
.workspace-application #historyScreen .history-document-main p{color:#61796e;font-size:12px;line-height:1.5;margin:0 0 6px}
.workspace-application #historyScreen .history-document-id{display:block;color:#87968f;font-size:10px}
.workspace-application #historyScreen .history-card-meta{display:grid;grid-template-columns:repeat(2,auto);align-items:center;justify-content:end;gap:7px 14px;min-width:290px;text-align:right}
.workspace-application #historyScreen .history-card-meta>strong{grid-column:1/-1;font-size:17px;line-height:1.2;color:var(--shine-green);font-variant-numeric:tabular-nums}
.workspace-application #historyScreen .history-card-meta>span:not(.history-status){color:#7b8d84;font-size:11px}
.workspace-application #historyScreen .history-card-meta>.history-status{grid-column:1/-1;justify-self:end;
  border:1px solid #d8e3fa;background:#edf3ff;color:#315ba8;font-size:10px;padding:5px 10px}
.workspace-application #historyScreen .history-document-actions{grid-column:1/-1;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px;margin-top:6px}
.workspace-application #historyScreen .history-document-actions button{min-height:34px;padding:7px 11px;margin:0;white-space:normal}
.workspace-application #historyScreen #historyMessage:empty{display:none}
.workspace-application #historyScreen .history-native-list>.native-empty{
  padding:42px 22px;min-height:180px;background:#fff;border:1px dashed #cbdbd3;border-radius:16px
}

/* ADMINISTRACION: tabs, menu de hojas, tablas y auditoria */
.workspace-application #adminScreen .sp-admin-container{max-width:none;padding:0 8px 36px}
.workspace-application #adminScreen .sp-admin-tabs{
  display:inline-flex;max-width:100%;flex-wrap:wrap;gap:5px;padding:6px;margin:0 0 18px;
  background:#fff;border:1px solid var(--shine-panel-line);border-radius:14px;box-shadow:var(--shine-panel-shadow)
}
.workspace-application #adminScreen .sp-admin-tabs button{min-height:39px;padding:9px 16px;margin:0;
  border:1px solid transparent;background:transparent;border-radius:9px;color:#496858;font-size:12px;font-weight:760}
.workspace-application #adminScreen .sp-admin-tabs button.is-active{
  background:#eaf1ff;border-color:#d2e0fd;color:#204b9a;box-shadow:inset 0 -2px 0 rgba(58,102,235,.25)
}
.workspace-application #adminScreen .sp-admin-tabs button:hover:not(.is-active){background:#f5f8f6;color:#003725}
.workspace-application #adminScreen .sp-admin-panel{
  padding:clamp(16px,2vw,27px);background:#fff;border:1px solid var(--shine-panel-line);
  border-radius:17px;box-shadow:var(--shine-panel-shadow)
}
.workspace-application #adminScreen .sp-admin-panel-header{margin:0 0 22px;align-items:center;gap:15px}
.workspace-application #adminScreen .sp-admin-panel-header h2{
  margin:0 0 5px;color:var(--shine-green);font-size:20px;letter-spacing:-.025em
}
.workspace-application #adminScreen .sp-admin-panel-header p{color:#6a8175;font-size:12px;max-width:74ch;line-height:1.5}
.workspace-application #adminScreen .sp-admin-panel-header .primary-button,
.workspace-application #adminScreen .sp-admin-panel-header .secondary-button{min-height:39px;margin:0;padding:9px 15px}
.workspace-application #adminScreen .sp-admin-toolbar{gap:11px;margin:0 0 15px;color:#6a8175;font-size:11px}
.workspace-application #adminScreen .sp-admin-toolbar input{max-width:510px;min-height:44px;padding:10px 14px;background:#fbfcff}
.workspace-application #adminScreen .sp-admin-toolbar>span{margin-left:auto;padding:6px 10px;border-radius:999px;background:#edf3ff;color:#365c99;font-weight:750}
.workspace-application #adminScreen .sp-admin-table-wrap{border:1px solid #e1e9e7;border-radius:13px;overflow-x:auto;background:#fff}
.workspace-application #adminScreen .sp-admin-table-wrap table{width:100%;min-width:680px;border-collapse:separate;border-spacing:0;font-size:12px}
.workspace-application #adminScreen .sp-admin-table-wrap th{
  padding:14px 15px;background:#f3f7fc;color:#567083;text-transform:uppercase;
  font-size:10px;letter-spacing:.065em;font-weight:850;text-align:left;border-bottom:1px solid #e2eaf4
}
.workspace-application #adminScreen .sp-admin-table-wrap td{padding:13px 15px;border-bottom:1px solid #eaf0ed;color:#315347}
.workspace-application #adminScreen .sp-admin-table-wrap tbody tr:hover td{background:#f8fbff}
.workspace-application #adminScreen .sp-admin-table-wrap td strong{color:#173d33}
.workspace-application #adminScreen .sp-admin-table-wrap .sp-admin-row-actions{gap:7px}
.workspace-application #adminScreen .sp-admin-table-wrap button{min-height:31px;padding:6px 10px;font-size:11px;border-radius:8px}
.workspace-application #adminScreen .sp-admin-status{display:inline-flex;align-items:center;gap:6px;padding:5px 10px}
.workspace-application #adminScreen .sp-admin-status.sp-on{background:#e7f7ee;color:#09673d}
.workspace-application #adminScreen .sp-admin-status.sp-off{background:#f0f2f3;color:#60706b}
.workspace-application #adminScreen .sp-admin-catalog-layout{grid-template-columns:minmax(190px,215px) minmax(0,1fr);gap:18px}
.workspace-application #adminScreen .sp-admin-catalog-menu{gap:8px}
.workspace-application #adminScreen .sp-admin-catalog-menu button{
  padding:13px 14px;margin:0;background:#f8faf9;border:1px solid #e1ebe5;border-radius:11px;
  color:#365748;transition:border-color .16s,background .16s
}
.workspace-application #adminScreen .sp-admin-catalog-menu button:hover{border-color:#b6c9bc;background:#f2f8f4}
.workspace-application #adminScreen .sp-admin-catalog-menu button.is-active{
  border-color:#bdd0ee;background:#edf3ff;color:#194b86;box-shadow:inset 3px 0 0 var(--shine-blue)
}
.workspace-application #adminScreen .sp-admin-catalog-menu button small{font-size:10px;line-height:1.4;color:#6c8077}
.workspace-application #adminScreen .sp-admin-catalog-main{min-width:0}
.workspace-application #adminScreen .sp-admin-hint{padding:11px 14px;background:#f1f6ff;color:#49617d;border:1px solid #dfebfb}
.workspace-application #adminScreen .sp-admin-empty{padding:32px;color:#718478;text-align:center}

/* MODALES: cabeceras, campos, revision de documentos y acciones. */
.native-modal{background:rgba(0,30,23,.62);backdrop-filter:blur(5px)}
.native-modal .native-modal-panel{
  width:min(94vw,890px);max-height:min(92vh,940px);
  border:1px solid #d7e4df;border-radius:19px;background:#fff;
  box-shadow:0 32px 85px rgba(0,35,25,.27);overflow-y:auto
}
.native-modal .native-modal-header{
  position:relative;align-items:flex-start;padding:22px clamp(17px,2.1vw,27px);
  background:linear-gradient(110deg,#eef5ff 0%,#f7faff 100%);border-bottom:1px solid #dfe8f2
}
.native-modal .native-modal-header>div{min-width:0}
.native-modal .native-modal-header .eyebrow{margin:0 0 7px;color:#3b69ab;font-size:10px;letter-spacing:.1em}
.native-modal .native-modal-header h2{margin:0 0 6px;color:var(--shine-green);font-size:clamp(21px,2.2vw,27px);line-height:1.18;letter-spacing:-.025em}
.native-modal .native-modal-header p:not(.eyebrow){font-size:12px;color:#5b756b;line-height:1.55;margin:0;max-width:70ch}
.native-modal .native-icon-button{display:grid;place-items:center;flex:none;width:36px;height:36px;
  padding:0;border:1px solid #d0e0d8;border-radius:10px;background:white;color:#47675b;
  font-size:22px;font-weight:400;line-height:1;box-shadow:none}
.native-modal .native-icon-button:hover{background:#eaf1ff;border-color:#b5c9ec;color:#153f7a}
.native-modal .native-modal-body{padding:clamp(17px,2.4vw,27px)}
.native-modal .field{margin:0;min-width:0;font-size:12px;font-weight:750;color:#385b4d}
.native-modal .field>span{margin-bottom:7px}
.native-modal .field>input,.native-modal .field>select,.native-modal .field>textarea{
  width:100%;min-height:43px;border:1px solid #d1dfda;border-radius:10px;padding:9px 12px;
  background:#fff;color:#1e4236;font:inherit;font-weight:500
}
.native-modal .field :is(input,select,textarea):focus{outline:none;border-color:var(--shine-blue);box-shadow:0 0 0 3px rgba(58,102,235,.12)}
.native-modal .native-form-grid.two{gap:15px 18px}
.native-modal :is(.native-modal-actions,.sp-admin-form-actions){
  display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;margin-top:22px;padding-top:17px;border-top:1px solid #e5eeea
}
.native-modal :is(.native-modal-actions,.sp-admin-form-actions) :is(.primary-button,.secondary-button){
  margin:0;min-height:40px;min-width:125px;width:auto;padding:9px 16px;border-radius:10px;font-size:12px;font-weight:800
}
.native-modal .primary-button{color:#fff;background:var(--shine-green);box-shadow:0 5px 12px rgba(0,55,37,.13)}
.native-modal .primary-button:hover{background:#07553e}
.native-modal .secondary-button{color:#2e5848;border:1px solid #ccddd4;background:#fff}
.native-modal .secondary-button:hover{background:#f1f8f4}
.native-modal .budget-privacy-note{padding:12px 15px;margin:15px 0;
  border:1px solid #dbe9e1;border-left:3px solid #83a89a;border-radius:11px;
  background:#f6faf7;color:#536e60;font-size:11.5px;line-height:1.6}
.native-modal .erp-contract-modal{width:min(94vw,720px);max-height:min(92vh,900px)}
.native-modal .erp-contract-review{margin:0 0 16px;padding:0 0 18px;border-bottom:1px solid #e7efeb}
.native-modal :is(.erp-contract-review,.erp-contract-signer) h3{
  color:var(--shine-green);font-size:15px;font-weight:820;margin:0 0 7px
}
.native-modal :is(.erp-contract-review,.erp-contract-signer) p{color:#6d8278;font-size:12.5px;line-height:1.5;margin:0 0 13px}
.native-modal .erp-contract-downloads{gap:9px}
.native-modal .erp-contract-downloads button{width:auto;min-width:150px;margin:0;padding:10px 14px;min-height:40px;font-size:12px}
.native-modal #erpContractSepaSection{
  padding:15px 17px!important;margin:0 0 20px!important;border:1px solid #dbe7f8!important;
  border-radius:12px!important;background:#f5f8ff
}
.native-modal #erpContractSepaSection strong{color:#24527b;font-size:13px}
.native-modal #erpContractSepaSection small{font-size:11.5px;line-height:1.5;color:#647b86!important}
.native-modal #erpContractSepaSection input[type="checkbox"]{accent-color:var(--shine-blue)}
.native-modal .erp-contract-signer{margin:0 0 17px}
.native-modal .erp-contract-signer .native-form-grid{margin-top:12px}
.native-modal .history-detail-panel{width:min(94vw,800px)}
.native-modal .history-detail-grid{gap:10px}
.native-modal .history-detail-grid>div,.native-modal .history-notes{
  padding:14px 15px;border:1px solid #e2eaf0;border-radius:12px;background:#f9fbff
}
.native-modal .history-detail-grid span,.native-modal .history-notes span{
  color:#637b86;font-size:10px;font-weight:800;letter-spacing:.055em
}
.native-modal .history-detail-grid strong{color:#1b483b;font-size:13px;overflow-wrap:anywhere}
.native-modal .history-notes p{color:#355b4c;font-size:12px;line-height:1.65}
.native-modal .history-document-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:19px}
.native-modal .sp-admin-modal-panel{width:min(94vw,820px)}
.native-modal .sp-admin-reset-panel{width:min(94vw,520px)}
.native-modal .sp-admin-editor{padding:20px clamp(17px,2vw,26px) 23px}
.native-modal .sp-admin-editor-fields{gap:15px 17px}
.native-modal .sp-admin-editor .sp-admin-check{align-items:center;gap:10px;padding:10px 0}
.native-modal .sp-admin-editor .sp-admin-check input{width:18px!important;height:18px;accent-color:var(--shine-blue)}

/* Acceso: mismo sistema de identidad, sin modificar AppIndex.html. */
.page-shell:has(#accessCard:not(.hidden)){
  background:radial-gradient(circle at 13% 19%,rgba(194,212,251,.35),transparent 32%),
    linear-gradient(135deg,#f8faff,#f8faf6 60%,#eef6f1)
}
#accessCard.access-card{border:1px solid #dae6e2;border-radius:22px;background:#fff;
  box-shadow:0 24px 70px rgba(0,55,37,.12),0 4px 20px rgba(0,55,37,.04)}
#accessCard .access-logo{
  width:113px;height:57px;margin-bottom:17px;border-radius:12px;background:var(--shine-green);
  font-size:0;box-shadow:0 9px 24px rgba(0,55,37,.13)
}
#accessCard .access-logo:before{content:"";display:block;width:100px;height:45px;
  background:var(--shine-brand-logo) no-repeat center/contain;filter:brightness(0) invert(1)}
#accessCard .access-header h1{color:var(--shine-green);font-size:27px;letter-spacing:-.04em}
#accessCard .access-header .eyebrow{color:#4a6b5d;font-size:10px}
#accessCard .access-header p:last-child{font-size:12px;color:#70857a}
#accessCard .field input,#accessCard .input-wrap{background:#fff;border-color:#d5e2dc}
#accessCard .primary-button{background:var(--shine-green);box-shadow:0 7px 18px rgba(0,55,37,.12)}
#accessCard .primary-button:hover{background:#07533d}
#accessCard .secondary-button{border-color:#cbddd4;background:#fff;color:#264a3c}

/* Ajustes de tablet y movil sin romper controles ni tablas horizontales extensas. */
@media(max-width:1000px){
 .workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar{align-items:flex-start;flex-direction:column}
 .workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar .workspace-user-area{width:100%;justify-content:flex-start}
 .workspace-application #historyScreen .history-toolbar-new{grid-template-columns:minmax(0,1fr) minmax(170px,.55fr)}
 .workspace-application #historyScreen #historyCount{grid-column:1/-1;justify-self:start}
 .workspace-application #adminScreen .sp-admin-catalog-layout{grid-template-columns:minmax(0,1fr)}
 .workspace-application #adminScreen .sp-admin-catalog-menu{flex-direction:row;overflow-x:auto;padding:3px}
 .workspace-application #adminScreen .sp-admin-catalog-menu button{min-width:155px}
}
@media(max-width:710px){
 .workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar{margin:4px 0 14px;padding:20px 18px}
 .workspace-application :is(#historyScreen,#adminScreen) .workspace-topbar:after{right:1%;opacity:.045}
 .workspace-application #historyScreen .history-native-shell,.workspace-application #adminScreen .sp-admin-container{padding:0 0 24px}
 .workspace-application #historyScreen .history-toolbar-new{grid-template-columns:minmax(0,1fr);gap:13px;padding:16px}
 .workspace-application #historyScreen #historyCount{grid-column:auto}
 .workspace-application #historyScreen .history-native-card{grid-template-columns:minmax(0,1fr);padding:18px 18px 18px 20px;gap:12px}
 .workspace-application #historyScreen .history-card-meta{min-width:0;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;text-align:left}
 .workspace-application #historyScreen .history-card-meta>strong{grid-column:1/-1}
 .workspace-application #historyScreen .history-card-meta>.history-status{justify-self:start}
 .workspace-application #historyScreen .history-document-actions{justify-content:flex-start}
 .workspace-application #adminScreen .sp-admin-panel{padding:15px}
 .workspace-application #adminScreen .sp-admin-panel-header{align-items:flex-start;flex-direction:column}
 .workspace-application #adminScreen .sp-admin-toolbar input{min-width:0;width:100%;max-width:none}
 .workspace-application #adminScreen .sp-admin-tabs{display:flex;width:100%;gap:4px}
 .workspace-application #adminScreen .sp-admin-tabs button{flex:1 1 auto;padding:8px 10px;font-size:11px}
 .native-modal{padding:10px}
 .native-modal .native-modal-panel{width:100%;max-height:calc(100dvh - 20px);border-radius:15px}
 .native-modal .native-modal-header{padding:18px}
 .native-modal .native-modal-body{padding:18px}
 .native-modal .native-form-grid.two,.native-modal .history-detail-grid,.native-modal .sp-admin-editor-fields{grid-template-columns:minmax(0,1fr)}
 .native-modal :is(.native-modal-actions,.sp-admin-form-actions){justify-content:stretch}
 .native-modal :is(.native-modal-actions,.sp-admin-form-actions) button{flex:1 1 130px}
}
@media(prefers-reduced-motion:reduce){
 .workspace-application #historyScreen .history-native-card,
 .workspace-application #adminScreen .sp-admin-catalog-menu button{transition:none}
}

/* Afinado responsive: encabezado limpio y usuarios legibles en movil. */
.workspace-application #historyScreen #historyNativeTitle::before{content:none!important;display:none!important}
@media(max-width:620px){
 .workspace-application #adminScreen .sp-admin-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
 .workspace-application #adminScreen .sp-admin-tabs button{padding:9px 4px;font-size:10px;line-height:1.35;min-width:0}
 .workspace-application #adminScreen #spAdminUsersTable{overflow:visible;border:0;border-radius:0}
 .workspace-application #adminScreen #spAdminUsersTable table{min-width:0;display:block}
 .workspace-application #adminScreen #spAdminUsersTable thead{display:none}
 .workspace-application #adminScreen #spAdminUsersTable tbody{display:grid;gap:11px}
 .workspace-application #adminScreen #spAdminUsersTable tr{
   display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;border:1px solid #e0eae6;
   border-radius:12px;background:#fcfdfd
 }
 .workspace-application #adminScreen #spAdminUsersTable tr td{
   display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:0;border:0;
   min-width:0;overflow-wrap:anywhere;font-size:12px
 }
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(1):before{content:"USUARIO"}
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(2):before{content:"NOMBRE"}
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(3):before{content:"ROL"}
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(4):before{content:"CORREO"}
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(5):before{content:"ACCESO"}
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(6):before{content:"ACCIONES"}
 .workspace-application #adminScreen #spAdminUsersTable tr td:before{
   display:block;color:#6e8590;font-size:9px;font-weight:820;letter-spacing:.07em
 }
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(4),
 .workspace-application #adminScreen #spAdminUsersTable tr td:nth-child(6){grid-column:1/-1}
 .workspace-application #adminScreen #spAdminUsersTable tr td.sp-admin-row-actions{flex-direction:row;flex-wrap:wrap;gap:7px}
 .workspace-application #adminScreen #spAdminUsersTable tr td.sp-admin-row-actions:before{flex-basis:100%}
 .workspace-application #adminScreen #spAdminUsersTable tr:hover td{background:transparent}
}

