:root{--red:#e30613;--black:#121212;--soft:#f4f5f7;--line:#e1e4e8;--text:#1f2328}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:#f6f7f9;color:var(--text)}.topbar{height:68px;background:#111;color:#fff;display:flex;align-items:center;padding:0 28px;gap:28px;box-shadow:0 1px 8px #0002}.brand{display:flex;align-items:center;gap:7px;text-decoration:none;color:#fff;font-size:23px}.brand span{background:var(--red);padding:3px 7px;border-radius:5px;font-size:12px}.topbar nav{display:flex;gap:8px;align-items:center;flex:1}.topbar nav a{color:#eee;text-decoration:none;padding:10px 12px;border-radius:7px;font-size:14px}.topbar nav a:hover{background:#ffffff14}.who{font-size:13px;color:#bbb}.container{max-width:1180px;margin:28px auto;padding:0 20px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 3px 12px #00000008}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.metric b{display:block;font-size:30px;margin-top:6px}.metric span{color:#69707a;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:11px 16px;background:#111;color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.btn.red{background:var(--red)}.btn.soft{background:#eee;color:#222}.btn.small{padding:7px 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}h1{margin:0 0 20px}h2{margin-top:0}.form{max-width:650px}.field{margin-bottom:15px}.field label{display:block;font-weight:700;font-size:13px;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #cfd5dc;border-radius:8px;font:inherit;background:#fff}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.alert{padding:12px 14px;border-radius:9px;margin-bottom:16px}.alert.error{background:#fdeaea;color:#8c1d1d}.alert.ok{background:#eaf6ec;color:#216e39}.alert.warn{background:#fff3cd;color:#6c5200}.tablewrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:12px 13px;border-bottom:1px solid #eceff2;text-align:left;vertical-align:top}th{background:#fafafa;font-size:12px;text-transform:uppercase;color:#68707a}.status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.status.pending{background:#fff3cd;color:#6c5200}.status.active,.status.completed{background:#e7f6eb;color:#216e39}.status.blocked{background:#fdeaea;color:#8c1d1d}.status.received,.status.review,.status.production,.status.ready,.status.shipped{background:#eef3ff;color:#274690}.actions{display:flex;gap:8px;flex-wrap:wrap}.muted{color:#6b7280}.hero{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.login-shell{max-width:460px;margin:55px auto}.login-shell .brandbig{font-size:32px;font-weight:900;margin-bottom:18px}.login-shell .brandbig span{color:var(--red)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-grid div{background:#fafafa;border:1px solid #eee;border-radius:9px;padding:12px}.detail-grid small{display:block;color:#737b85;margin-bottom:5px}.print-only{display:none}@media(max-width:800px){.grid,.admin-grid,.row,.detail-grid{grid-template-columns:1fr}.topbar{height:auto;align-items:flex-start;flex-wrap:wrap;padding:14px 18px}.topbar nav{order:3;width:100%;overflow:auto}.who{margin-left:auto}.container{margin-top:20px}}@media print{.topbar,.no-print{display:none!important}.container{max-width:none;margin:0;padding:0}.card{border:0;box-shadow:none}.print-only{display:block}}

.order-timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:18px 0}
.order-step{position:relative;text-align:center;color:#8a8a8a;font-size:12px;padding-top:28px}
.order-step:before{content:"";position:absolute;top:8px;left:-50%;right:50%;height:3px;background:#ddd}
.order-step:first-child:before{display:none}
.order-dot{position:absolute;top:1px;left:50%;transform:translateX(-50%);width:17px;height:17px;border-radius:50%;background:#ddd;border:3px solid #fff;box-shadow:0 0 0 1px #ccc}
.order-step.done{color:#222}.order-step.done:before{background:#e30613}.order-step.done .order-dot{background:#e30613;box-shadow:0 0 0 1px #e30613}.order-step.current b{color:#e30613}
.order-filters{display:flex;gap:7px;flex-wrap:wrap}
@media(max-width:760px){.order-timeline{grid-template-columns:1fr}.order-step{text-align:left;padding:5px 0 5px 30px}.order-step:before{left:7px;right:auto;top:-10px;width:3px;height:24px}.order-dot{left:8px;top:4px}}


/* NUCLEO PRO V1.4 · Inicio SOMOS IMAGEN */
.home-brand-card{background:#fff;border:1px solid #e4e4e4;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.07);margin-bottom:26px}
.home-brand-image{background:#111;display:flex;align-items:center;justify-content:center;padding:0;min-height:135px}
.home-brand-image img{display:block;width:100%;height:auto;max-height:190px;object-fit:contain;background:#111}
.home-brand-content{display:grid;grid-template-columns:1.05fr 1.45fr;gap:34px;align-items:center;padding:26px 30px}
.home-brand-copy h1{font-size:27px;line-height:1.12;margin:7px 0 9px;color:#141414}.home-brand-copy p{margin:0;color:#666;line-height:1.55;max-width:560px}
.eyebrow{display:inline-block;font-size:10px;font-weight:900;letter-spacing:.12em;color:#e30613}.eyebrow.darktext{color:#777}
.home-primary-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-action{min-height:82px;border-radius:12px;padding:15px 17px;text-decoration:none;display:flex;flex-direction:column;justify-content:center;transition:.18s transform,.18s box-shadow}
.home-action:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.08)}.home-action span{font-size:15px;font-weight:900}.home-action small{font-size:11px;margin-top:5px;opacity:.72}
.home-action.red{background:#e30613;color:#fff}.home-action.dark{background:#161616;color:#fff}.home-action.outline{background:#fff;border:1px solid #cfcfcf;color:#161616}
.home-section{margin:26px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:14px}.section-head h2{font-size:22px;margin:4px 0 0}.section-head>p{margin:0;color:#777;font-size:13px;max-width:440px;text-align:right}
.catalog-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.catalog-card{position:relative;display:block;text-decoration:none;color:#171717;background:#fff;border:1px solid #e3e3e3;border-radius:16px;padding:24px;min-height:180px;overflow:hidden;transition:.18s}.catalog-card:after{content:"";position:absolute;right:-40px;bottom:-45px;width:145px;height:145px;border-radius:50%;background:rgba(227,6,19,.06)}.catalog-card:hover{border-color:#e30613;transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.06)}.catalog-kicker{font-size:10px;font-weight:900;letter-spacing:.12em;color:#e30613}.catalog-card h3{font-size:24px;margin:8px 0}.catalog-card p{color:#666;line-height:1.5;max-width:500px}.catalog-link{display:inline-block;margin-top:8px;font-weight:900;color:#e30613;font-size:13px}
.home-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.home-metric{background:#fff;border:1px solid #e5e5e5;border-radius:14px;padding:20px;text-decoration:none;color:#171717;min-height:130px;display:flex;flex-direction:column}.home-metric:hover{border-color:#e30613}.home-metric span{color:#666;font-size:12px;font-weight:800;text-transform:uppercase}.home-metric b{font-size:34px;margin:7px 0}.home-metric .metric-account{font-size:18px;line-height:1.2;margin-top:12px}.home-metric small{margin-top:auto;color:#777}.home-metric.admin{background:#151515;color:#fff;border-color:#151515}.home-metric.admin span,.home-metric.admin small{color:#ccc}
.quick-admin{background:#fff;border:1px solid #e5e5e5;border-radius:16px;padding:22px;display:flex;justify-content:space-between;align-items:center;gap:25px}.quick-admin h2{margin:4px 0}.quick-admin p{margin:0;color:#777}
@media(max-width:950px){.home-brand-content{grid-template-columns:1fr}.home-primary-actions{grid-template-columns:1fr 1fr 1fr}.home-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-brand-content{padding:20px}.home-primary-actions,.catalog-grid,.home-metrics{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.section-head>p{text-align:left}.home-brand-image img{max-height:none}.quick-admin{align-items:flex-start;flex-direction:column}}


/* V1.6.4 · búsqueda, filtros y gestión de pedidos */
.status.cancelled{background:#f1f1f1;color:#555;border:1px solid #d6d6d6}
.row-cancelled{opacity:.72;background:#fafafa}
.row-cancelled td{text-decoration:none}
.search-panel{display:flex;align-items:end;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:10px;box-shadow:0 3px 12px #00000008}
.search-field{min-width:140px}.search-field.search-grow{flex:1 1 280px}
.search-field label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;color:#6b7280;margin-bottom:5px}
.search-field input,.search-field select{width:100%;padding:9px 10px;border:1px solid #cfd5dc;border-radius:8px;background:#fff;font:inherit}
.search-actions{display:flex;gap:7px;align-items:center}
.filter-summary{font-size:12px;color:#6b7280;margin:0 0 10px 4px}
.admin-order-actions{display:flex;flex-wrap:wrap;gap:6px;min-width:170px}
.admin-order-actions form{margin:0}
.cancel-btn{background:#ef9f18;color:#111}
.delete-btn{background:#8f1d1d;color:#fff}
.cancel-btn:hover,.delete-btn:hover{filter:brightness(.94)}
@media(max-width:760px){
 .search-panel{align-items:stretch}
 .search-field,.search-field.search-grow{width:100%;flex:1 1 100%}
 .search-actions{width:100%}
 .search-actions .btn{flex:1}
}


/* ============================================================
   NUCLEO PRO V1.6.5 · DASHBOARD VISUAL + REGISTRO CORPORATIVO
   ============================================================ */

.dashboard-dark{
  background:#090909;
  border-radius:18px;
  padding:18px;
  color:#fff;
  box-shadow:0 18px 45px rgba(0,0,0,.16);
}
.dashboard-dark .alert{margin-top:16px}
.portal-hero-v165{
  overflow:hidden;
  border:1px solid #2b2b2b;
  border-radius:18px;
  background:#0d0d0d;
  box-shadow:0 14px 35px rgba(0,0,0,.28);
}
.portal-hero-image-v165{
  display:block;
  width:100%;
  max-height:330px;
  object-fit:cover;
  object-position:center;
  background:#000;
}
.portal-hero-bottom-v165{
  display:grid;
  grid-template-columns:1.05fr 1.3fr;
  gap:26px;
  align-items:center;
  padding:24px 26px;
  border-top:1px solid #292929;
  background:linear-gradient(180deg,#141414 0%,#0d0d0d 100%);
}
.portal-hero-copy-v165 h1{
  color:#fff;
  margin:10px 0 8px;
  font-size:29px;
  line-height:1.08;
}
.portal-hero-copy-v165 p{color:#a9a9a9;margin:0;line-height:1.5}
.module-badge-v165{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  background:#e30613;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
}
.portal-hero-actions-v165{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.portal-main-btn-v165{
  min-height:76px;
  padding:14px;
  border:1px solid #3a3a3a;
  border-radius:12px;
  color:#fff;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#171717;
  transition:.18s;
}
.portal-main-btn-v165:hover{transform:translateY(-2px);border-color:#e30613}
.portal-main-btn-v165.red{background:#e30613;border-color:#e30613}
.portal-main-btn-v165 span{font-weight:900;font-size:14px}
.portal-main-btn-v165 small{margin-top:5px;color:#aaa;font-size:10px}
.portal-main-btn-v165.red small{color:#ffd8dc}

.dark-section-v165{margin-top:20px}
.dark-section-head-v165{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:20px;
  margin-bottom:12px;
}
.dark-section-head-v165 h2{margin:4px 0 0;color:#fff;font-size:22px}
.dark-section-head-v165>p{margin:0;color:#858585;font-size:12px;max-width:420px;text-align:right}
.dark-kicker-v165{font-size:10px;font-weight:900;letter-spacing:.13em;color:#e30613}

.dark-metrics-v165{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.dark-metric-v165{
  min-height:145px;
  border:1px solid #2b2b2b;
  border-radius:14px;
  padding:18px;
  background:linear-gradient(145deg,#181818,#101010);
  text-decoration:none;
  color:#fff;
  display:flex;
  flex-direction:column;
  transition:.18s;
}
.dark-metric-v165:hover{border-color:#e30613;transform:translateY(-2px)}
.dark-metric-v165>span{font-size:11px;color:#aaa;text-transform:uppercase;font-weight:800}
.dark-metric-v165>b{font-size:34px;margin:8px 0;color:#fff}
.dark-metric-v165>.dark-account-name-v165{font-size:18px;line-height:1.2}
.dark-metric-v165>small{margin-top:auto;color:#858585}
.admin-card-v165{border-color:#5f0710;background:linear-gradient(145deg,#29090d,#120d0e)}

.dark-catalog-grid-v165{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dark-catalog-card-v165{
  position:relative;
  overflow:hidden;
  padding:22px;
  min-height:168px;
  border:1px solid #2d2d2d;
  border-radius:14px;
  background:linear-gradient(145deg,#171717,#0e0e0e);
  text-decoration:none;
  color:#fff;
  transition:.18s;
}
.dark-catalog-card-v165:after{
  content:"";
  position:absolute;
  width:160px;height:160px;border-radius:50%;
  right:-60px;bottom:-70px;background:rgba(227,6,19,.12)
}
.dark-catalog-card-v165:hover{border-color:#e30613;transform:translateY(-2px)}
.dark-catalog-card-v165>span{font-size:9px;color:#e30613;font-weight:900;letter-spacing:.14em}
.dark-catalog-card-v165 h3{font-size:23px;margin:8px 0}
.dark-catalog-card-v165 p{color:#8e8e8e;line-height:1.45;max-width:440px}
.dark-catalog-card-v165 strong{color:#e30613;font-size:12px}

.dark-admin-box-v165{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  border:1px solid #2b2b2b;border-radius:14px;padding:20px;
  background:#111;
}
.dark-admin-box-v165 h2{color:#fff;margin:4px 0}
.dark-admin-box-v165 p{color:#858585;margin:0}

.dark-table-v165{overflow:auto;border:1px solid #292929;border-radius:14px;background:#111}
.dark-table-v165 table{color:#ddd}
.dark-table-v165 th{background:#171717;color:#8f8f8f;border-bottom-color:#2b2b2b}
.dark-table-v165 td{border-bottom-color:#222}
.dark-table-v165 tr:last-child td{border-bottom:0}

.future-modules-v165{
  margin-top:20px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:#777;
  border-top:1px solid #222;
  padding:16px 2px 2px;
  font-size:11px;
}
.future-modules-v165 strong{
  padding:5px 9px;border-radius:999px;background:#e30613;color:#fff;font-size:9px;letter-spacing:.1em
}
.future-modules-v165 em{font-style:normal;color:#555}

/* REGISTRO */
.register-page-v165{
  min-height:100vh;
  background:#050505;
  color:#fff;
}
.register-shell-v165{
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(430px,.75fr);
}
.register-visual-v165{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  background:#080808;
}
.register-visual-image-v165{
  position:absolute;
  inset:0;
  background-image:url('registro-profesional-visual.png');
  background-repeat:no-repeat;
  background-size:auto 100%;
  background-position:left center;
  filter:saturate(.95) contrast(1.04);
}
.register-visual-overlay-v165{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.28) 55%,rgba(0,0,0,.95) 100%),
    linear-gradient(0deg,rgba(0,0,0,.48),rgba(0,0,0,.02) 50%);
}
.register-visual-content-v165{
  position:absolute;
  z-index:2;
  left:7%;
  bottom:7%;
  width:min(560px,80%);
}
.register-visual-content-v165 h1{
  margin:16px 0 10px;
  font-size:44px;
  line-height:1.02;
  color:#fff;
  max-width:520px;
}
.register-visual-content-v165 h1 strong{color:#e30613}
.register-visual-content-v165>p{color:#c1c1c1;font-size:16px;line-height:1.5;max-width:480px}
.register-benefits-v165{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:24px;
}
.register-benefits-v165>div{
  border-left:2px solid #e30613;
  padding:5px 10px;
}
.register-benefits-v165 b{display:block;font-size:12px;color:#fff}
.register-benefits-v165 span{display:block;font-size:10px;color:#818181;margin-top:4px;line-height:1.35}

.register-form-side-v165{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px;
  background:linear-gradient(145deg,#111,#070707);
  border-left:1px solid #222;
}
.register-form-card-v165{
  width:min(100%,560px);
  background:rgba(18,18,18,.96);
  border:1px solid #303030;
  border-radius:18px;
  padding:28px;
  box-shadow:0 30px 60px rgba(0,0,0,.42);
}
.register-back-v165{display:inline-block;color:#858585;text-decoration:none;font-size:11px;margin-bottom:22px}
.register-back-v165:hover{color:#fff}
.register-kicker-v165{display:block;color:#e30613;font-size:10px;font-weight:900;letter-spacing:.15em}
.register-form-card-v165 h2{font-size:28px;margin:7px 0;color:#fff}
.register-lead-v165{margin:0 0 16px;color:#989898;line-height:1.45}
.register-status-v165{
  background:#1a1a1a;
  border:1px solid #303030;
  border-left:3px solid #e30613;
  color:#bdbdbd;
  padding:11px 12px;
  border-radius:8px;
  font-size:11px;
  margin-bottom:18px;
}
.register-form-card-v165 .field{margin-bottom:12px}
.register-form-card-v165 .field label{color:#bdbdbd;font-size:11px}
.register-form-card-v165 .field input{
  background:#151515;
  color:#fff;
  border-color:#343434;
  border-radius:9px;
  padding:12px 13px;
}
.register-form-card-v165 .field input:focus{
  outline:none;border-color:#e30613;box-shadow:0 0 0 3px rgba(227,6,19,.10)
}
.register-two-cols-v165{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.register-field-note-v165{display:block;margin-top:5px;color:#666;font-size:9px}
.register-submit-v165{
  width:100%;
  border:0;
  border-radius:9px;
  background:#e30613;
  color:#fff;
  padding:13px 16px;
  font-weight:900;
  cursor:pointer;
  margin-top:2px;
}
.register-submit-v165:hover{filter:brightness(.95)}
.register-login-link-v165{text-align:center;margin:16px 0 0;color:#777;font-size:11px}
.register-login-link-v165 a{color:#e30613;text-decoration:none;font-weight:800}

@media(max-width:1000px){
  .portal-hero-bottom-v165{grid-template-columns:1fr}
  .dark-metrics-v165{grid-template-columns:1fr 1fr}
  .register-shell-v165{grid-template-columns:1fr}
  .register-visual-v165{min-height:520px}
  .register-form-side-v165{border-left:0;border-top:1px solid #222}
}
@media(max-width:720px){
  .dashboard-dark{padding:10px;border-radius:12px}
  .portal-hero-image-v165{max-height:240px}
  .portal-hero-bottom-v165{padding:18px}
  .portal-hero-actions-v165,.dark-metrics-v165,.dark-catalog-grid-v165{grid-template-columns:1fr}
  .dark-section-head-v165{align-items:flex-start;flex-direction:column}
  .dark-section-head-v165>p{text-align:left}
  .dark-admin-box-v165{align-items:flex-start;flex-direction:column}
  .register-visual-v165{min-height:430px}
  .register-visual-content-v165 h1{font-size:34px}
  .register-benefits-v165{grid-template-columns:1fr}
  .register-form-side-v165{padding:18px}
  .register-form-card-v165{padding:22px}
  .register-two-cols-v165{grid-template-columns:1fr}
}


/* ============================================================
   NUCLEO PRO V1.6.5.1 · LOGIN CORPORATIVO
   ============================================================ */

.login-page-v1651{
  min-height:100vh;
  margin:0;
  background:#050505;
  color:#fff;
}
.login-shell-v1651{
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(420px,.75fr);
}
.login-visual-v1651{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  background:#080808;
}
.login-visual-image-v1651{
  position:absolute;
  inset:0;
  background-image:url('registro-profesional-visual.png');
  background-repeat:no-repeat;
  background-size:auto 100%;
  background-position:left center;
  filter:saturate(.95) contrast(1.04);
}
.login-visual-overlay-v1651{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.28) 55%,rgba(0,0,0,.97) 100%),
    linear-gradient(0deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.02) 58%);
}
.login-visual-content-v1651{
  position:absolute;
  z-index:2;
  left:7%;
  bottom:7%;
  width:min(590px,82%);
}
.login-visual-content-v1651 h1{
  margin:16px 0 10px;
  color:#fff;
  font-size:46px;
  line-height:1.02;
  max-width:570px;
}
.login-visual-content-v1651 h1 strong{color:#e30613}
.login-visual-content-v1651>p{
  margin:0;
  color:#c0c0c0;
  max-width:510px;
  line-height:1.55;
  font-size:15px;
}
.login-feature-grid-v1651{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:25px;
}
.login-feature-grid-v1651>div{
  padding:7px 11px;
  border-left:2px solid #e30613;
}
.login-feature-grid-v1651 b{
  display:block;
  color:#fff;
  font-size:12px;
}
.login-feature-grid-v1651 span{
  display:block;
  margin-top:4px;
  color:#858585;
  font-size:10px;
  line-height:1.4;
}

.login-form-side-v1651{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:36px;
  background:linear-gradient(145deg,#111,#070707);
  border-left:1px solid #222;
}
.login-form-card-v1651{
  width:min(100%,520px);
  background:rgba(18,18,18,.97);
  border:1px solid #303030;
  border-radius:18px;
  padding:32px;
  box-shadow:0 30px 65px rgba(0,0,0,.45);
}
.login-brand-v1651{
  padding-bottom:20px;
  margin-bottom:24px;
  border-bottom:1px solid #272727;
}
.login-somos-v1651{
  display:block;
  color:#aaa;
  font-weight:800;
  font-size:10px;
  letter-spacing:.15em;
  margin-bottom:8px;
}
.login-nucleo-v1651{
  color:#fff;
  font-weight:900;
  font-size:31px;
  line-height:1;
}
.login-nucleo-v1651 strong{
  display:inline-block;
  padding:4px 8px;
  margin-left:5px;
  background:#e30613;
  border-radius:5px;
  color:#fff;
  font-size:13px;
  vertical-align:middle;
}
.login-module-v1651{
  display:block;
  margin-top:8px;
  color:#777;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
}
.login-form-card-v1651 h2{
  color:#fff;
  margin:0 0 6px;
  font-size:29px;
}
.login-lead-v1651{
  color:#8d8d8d;
  margin:0 0 22px;
  line-height:1.45;
}
.login-form-card-v1651 .field{
  margin-bottom:14px;
}
.login-form-card-v1651 .field label{
  color:#bdbdbd;
  font-size:11px;
}
.login-form-card-v1651 .field input{
  background:#151515;
  color:#fff;
  border-color:#343434;
  border-radius:9px;
  padding:13px 14px;
}
.login-form-card-v1651 .field input:focus{
  outline:none;
  border-color:#e30613;
  box-shadow:0 0 0 3px rgba(227,6,19,.10);
}
.login-submit-v1651{
  width:100%;
  border:0;
  border-radius:9px;
  background:#e30613;
  color:#fff;
  padding:13px 16px;
  font-weight:900;
  cursor:pointer;
  margin-top:2px;
}
.login-submit-v1651:hover{filter:brightness(.95)}
.login-register-box-v1651{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:20px;
  padding:13px 14px;
  border:1px solid #2d2d2d;
  border-radius:10px;
  background:#111;
  color:#8d8d8d;
  font-size:11px;
}
.login-register-box-v1651 a{
  color:#e30613;
  text-decoration:none;
  font-weight:900;
  white-space:nowrap;
}
.login-links-v1651{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:18px;
  color:#555;
  font-size:10px;
}
.login-links-v1651 a{
  color:#777;
  text-decoration:none;
}
.login-links-v1651 a:hover{color:#fff}

@media(max-width:1000px){
  .login-shell-v1651{grid-template-columns:1fr}
  .login-visual-v1651{min-height:500px}
  .login-form-side-v1651{
    border-left:0;
    border-top:1px solid #222;
  }
}
@media(max-width:720px){
  .login-visual-v1651{min-height:420px}
  .login-visual-content-v1651 h1{font-size:34px}
  .login-feature-grid-v1651{grid-template-columns:1fr}
  .login-form-side-v1651{padding:18px}
  .login-form-card-v1651{padding:23px}
}


/* ============================================================
   V1.6.5.2 · LOGIN APROBADO + REGISTRO SIN SUPERPOSICIONES
   ============================================================ */

/* LOGIN */
.login-approved-page{
  min-height:100vh;
  margin:0;
  overflow:hidden;
  background:#050505;
}
.login-approved-bg{
  position:fixed;
  inset:0;
  background-image:url('login-aprobado.png');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.login-functional-card{
  position:fixed;
  left:36.1%;
  top:29.6%;
  width:27.2%;
  min-width:390px;
  padding:28px 38px 26px;
  background:#090909;
  border:1px solid #4a4a4a;
  border-radius:22px;
  color:#fff;
  box-shadow:0 18px 48px rgba(0,0,0,.48);
  z-index:5;
}
.login-functional-card h1{
  margin:0 0 24px;
  text-align:center;
  color:#fff;
  font-size:28px;
  font-weight:500;
}
.login-functional-card .field{
  margin-bottom:18px;
}
.login-functional-card .field label{
  color:#eee;
  font-size:13px;
  margin-bottom:7px;
}
.login-functional-card .field input{
  background:#0d0d0d;
  color:#fff;
  border:1px solid #4a4a4a;
  border-radius:9px;
  padding:13px 14px;
}
.login-functional-card .field input:focus{
  outline:none;
  border-color:#e30613;
  box-shadow:0 0 0 3px rgba(227,6,19,.12);
}
.login-approved-submit{
  width:100%;
  border:0;
  border-radius:8px;
  background:#ff0a0a;
  color:#fff;
  padding:13px 16px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
}
.login-approved-submit:hover{filter:brightness(.95)}
.login-approved-register{
  margin-top:18px;
  text-align:center;
  font-size:11px;
  color:#9b9b9b;
}
.login-approved-register span{display:block;margin-bottom:5px}
.login-approved-register a{
  color:#fff;
  text-decoration:none;
  font-weight:700;
}
.login-approved-register a:hover{color:#e30613}

/* REGISTRO */
.register-clean-page{
  min-height:100vh;
  margin:0;
  background:#050505;
  overflow:auto;
}
.register-clean-bg{
  position:fixed;
  inset:0;
  background-image:url('registro-fondo-limpio.png');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.register-clean-bg:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.04) 0%,
    rgba(0,0,0,.14) 48%,
    rgba(0,0,0,.86) 67%,
    rgba(0,0,0,.97) 100%
  );
}
.register-clean-panel{
  position:relative;
  z-index:5;
  width:min(520px,calc(100% - 40px));
  margin:4.5vh 5vw 4.5vh auto;
  padding:30px;
  background:#0a0a0a;
  border:1px solid #363636;
  border-radius:18px;
  box-shadow:0 24px 55px rgba(0,0,0,.5);
  color:#fff;
}
.register-clean-back{
  display:inline-block;
  margin-bottom:18px;
  color:#8f8f8f;
  text-decoration:none;
  font-size:11px;
}
.register-clean-back:hover{color:#fff}
.register-clean-brand{
  font-size:26px;
  font-weight:900;
  margin-bottom:8px;
}
.register-clean-brand strong{
  color:#e30613;
}
.register-clean-panel h1{
  margin:0 0 8px;
  color:#fff;
  font-size:27px;
}
.register-clean-lead{
  margin:0 0 22px;
  color:#999;
  line-height:1.5;
  font-size:13px;
}
.register-clean-panel .field{
  margin-bottom:13px;
}
.register-clean-panel .field label{
  color:#c7c7c7;
  font-size:11px;
}
.register-clean-panel .field input{
  background:#141414;
  color:#fff;
  border:1px solid #383838;
  border-radius:9px;
  padding:12px 13px;
}
.register-clean-panel .field input:focus{
  outline:none;
  border-color:#e30613;
  box-shadow:0 0 0 3px rgba(227,6,19,.10);
}
.register-clean-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
}
.register-clean-note{
  display:block;
  margin-top:5px;
  color:#666;
  font-size:9px;
}
.register-clean-submit{
  width:100%;
  border:0;
  border-radius:9px;
  background:#e30613;
  color:#fff;
  padding:13px 16px;
  font-weight:900;
  cursor:pointer;
  margin-top:2px;
}
.register-clean-submit:hover{filter:brightness(.95)}
.register-clean-login{
  margin:17px 0 0;
  text-align:center;
  color:#777;
  font-size:11px;
}
.register-clean-login a{
  color:#e30613;
  text-decoration:none;
  font-weight:800;
}

@media(max-width:1100px){
  .login-approved-bg{
    background-position:38% center;
  }
  .login-functional-card{
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:min(460px,calc(100% - 36px));
    min-width:0;
  }
}
@media(max-width:760px){
  .login-approved-bg{
    background-position:24% center;
  }
  .login-approved-bg:after{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.58);
  }
  .login-functional-card{
    padding:24px 22px;
  }

  .register-clean-bg{
    background-position:28% center;
  }
  .register-clean-bg:after{
    background:rgba(0,0,0,.7);
  }
  .register-clean-panel{
    margin:22px auto;
    padding:23px;
  }
  .register-clean-grid{
    grid-template-columns:1fr;
    gap:0;
  }
}


/* V1.6.6 · Condiciones de pago */
.payment-settings-admin{margin-bottom:18px}
.client-control-form{display:flex;gap:7px;align-items:center;flex-wrap:wrap;min-width:390px}
.client-control-form select{padding:7px;border:1px solid #cfd5dc;border-radius:8px;background:#fff}
.client-control-form .admin-discount-wrap{display:flex;align-items:center;gap:5px}
.client-control-form .admin-discount-wrap input{width:70px;padding:7px;border:1px solid #cfd5dc;border-radius:8px}
.payment-pill{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900}
.payment-pill.cash{background:#fff3cd;color:#6c5200}
.payment-pill.credit{background:#e7f6eb;color:#216e39}
.payment-section h2{margin-bottom:12px}
.payment-box{border-radius:11px;padding:15px 17px;line-height:1.5}
.payment-box b{font-size:15px}
.payment-box p{margin:7px 0 0}
.payment-box small{display:block;margin-top:8px;opacity:.72}
.payment-cash{background:#fff8e4;border:1px solid #eddca5;color:#5e4700}
.payment-credit{background:#eaf6ec;border:1px solid #cce8d2;color:#216e39}
.bank-number{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:800;letter-spacing:.03em}
@media print{
  .payment-section{break-inside:avoid}
}
@media(max-width:760px){
  .client-control-form{min-width:0}
  .client-control-form select{width:100%}
}


/* V1.6.6 · Sistema visual de iconos SOMOS IMAGEN */
.portal-line-icon{
  width:28px;
  height:28px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.metric-icon-circle,
.module-icon-circle-v166{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  flex:0 0 58px;
  border-radius:50%;
  background:#fff;
  color:#111!important;
  border:1px solid #e7e7e7;
  box-shadow:0 3px 12px rgba(0,0,0,.18);
}
.dark-metric-v165 .metric-icon-circle{
  margin-bottom:14px;
}
.dark-metric-v165:hover .metric-icon-circle,
.module-card-v166.active .module-icon-circle-v166,
.module-card-v166:hover .module-icon-circle-v166{
  box-shadow:0 0 0 3px rgba(227,6,19,.12);
}
.module-grid-v166{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.module-card-v166{
  min-height:118px;
  display:flex;
  align-items:center;
  gap:15px;
  padding:17px;
  border:1px solid #2d2d2d;
  border-radius:14px;
  background:linear-gradient(145deg,#171717,#0f0f0f);
  color:#fff;
  text-decoration:none;
  transition:.18s;
}
.module-card-v166.active{
  border-color:#e30613;
  background:linear-gradient(145deg,#1e1112,#101010);
}
.module-card-v166.external{
  cursor:pointer;
}
.module-card-v166.coming{
  opacity:.72;
}
.module-card-v166:hover{
  transform:translateY(-2px);
  border-color:#e30613;
}
.module-card-v166 b{
  display:block;
  font-size:14px;
  line-height:1.2;
}
.module-card-v166 small{
  display:block;
  margin-top:6px;
  color:#777;
  font-size:10px;
}
.module-card-v166.active small,
.module-card-v166.external small{
  color:#e30613;
}
.module-icon-circle-v166.small{
  width:46px;
  height:46px;
  flex-basis:46px;
  margin-bottom:12px;
}
.module-icon-circle-v166.small .portal-line-icon{
  width:23px;
  height:23px;
}

@media(max-width:980px){
  .module-grid-v166{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .module-grid-v166{grid-template-columns:1fr}
}

/* PAPELERÍA se identifica como módulo, sin óvalo/cápsula */
.module-label-v166{
  display:inline-block;
  color:#e30613;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  background:transparent;
  padding:0;
  border:0;
  border-radius:0;
}

/* V1.6.7 · Buscador de presupuestos */
.search-help{display:block;margin-top:5px;color:#8a8f96;font-size:10px;line-height:1.35}
.empty-search-result{text-align:center!important;padding:34px!important;color:#6b7280}
.empty-search-result b{display:block;color:#333;font-size:15px;margin-bottom:6px}
.empty-search-result span{font-size:12px}


/* ============================================================
   NUCLEO PRO V1.7.0 · ADMINISTRACIÓN AVANZADA
   ============================================================ */

.admin-page-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
}
.admin-page-head h1{margin:4px 0 6px;font-size:30px}
.admin-page-head p{margin:0;color:#6b7280}
.admin-eyebrow{
  display:block;
  color:#e30613;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.admin-kpi-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:14px;
  margin-bottom:18px;
}
.admin-kpi-grid.compact{grid-template-columns:repeat(4,1fr)}
.admin-kpi{
  min-height:122px;
  background:#fff;
  border:1px solid #e1e4e8;
  border-radius:14px;
  padding:18px;
  text-decoration:none;
  color:#1f2328;
  display:flex;
  flex-direction:column;
}
.admin-kpi span{font-size:11px;color:#69707a;text-transform:uppercase;font-weight:800}
.admin-kpi b{font-size:30px;line-height:1.1;margin:8px 0}
.admin-kpi small{margin-top:auto;color:#8a8f96}
.admin-kpi.live{border-color:#cce8d2;background:#f4fbf6}
.admin-kpi.live b{color:#188038}
.admin-kpi.money{border-color:#f0d6d8;background:#fff7f8}
.admin-kpi.money b{font-size:22px;color:#a8000b}

.admin-analytics-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-bottom:18px;
}
.admin-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:14px;
}
.admin-card-head h2{margin:4px 0 0}
.admin-card-head>a{font-size:12px;color:#e30613;text-decoration:none;font-weight:800}

.admin-chart-card{min-height:320px}
.admin-bar-chart{
  height:240px;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px;
  align-items:end;
  padding-top:18px;
}
.admin-bar-col{
  height:100%;
  display:grid;
  grid-template-rows:22px 1fr 18px 18px;
  text-align:center;
  gap:4px;
}
.admin-bar-value{font-size:9px;color:#6b7280;white-space:nowrap}
.admin-bar-track{
  position:relative;
  width:72%;
  margin:0 auto;
  background:#f0f1f3;
  border-radius:8px 8px 3px 3px;
  overflow:hidden;
}
.admin-bar{
  position:absolute;
  left:0;right:0;bottom:0;
  background:linear-gradient(180deg,#ef3340,#e30613);
  border-radius:8px 8px 3px 3px;
}
.admin-bar-col b{font-size:11px}
.admin-bar-col span{font-size:10px;color:#8a8f96}

.admin-horizontal-chart{display:grid;gap:12px}
.admin-hbar-row{
  display:grid;
  grid-template-columns:125px 1fr 34px;
  gap:10px;
  align-items:center;
}
.admin-hbar-row>span{font-size:11px;color:#555}
.admin-hbar-track{height:11px;border-radius:999px;background:#f0f1f3;overflow:hidden}
.admin-hbar{height:100%;border-radius:999px;background:#e30613}
.admin-hbar-row>b{text-align:right;font-size:12px}

.live-dot-label{font-size:10px;color:#6b7280;display:flex;align-items:center;gap:6px}
.live-dot-label i,.online-dot,.presence i{
  width:8px;height:8px;border-radius:50%;background:#23a559;display:inline-block;
  box-shadow:0 0 0 3px rgba(35,165,89,.12);
}
.online-users-list,.top-client-list,.admin-doc-list{display:grid;gap:2px}
.online-user-row,.top-client-row,.admin-doc-row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:10px;
  align-items:center;
  padding:11px 4px;
  border-bottom:1px solid #eceff2;
  color:#1f2328;
  text-decoration:none;
}
.online-user-row:last-child,.top-client-row:last-child,.admin-doc-row:last-child{border-bottom:0}
.online-user-row div:nth-child(2),.top-client-row>div:first-child,.admin-doc-row>div:first-child{min-width:0}
.online-user-row b,.top-client-row b,.admin-doc-row b{display:block;font-size:12px}
.online-user-row small,.top-client-row small,.admin-doc-row small{display:block;color:#7b8189;font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.online-page{font-size:10px;color:#8a8f96;white-space:nowrap}
.top-client-row{grid-template-columns:1fr auto}
.top-client-row>div:last-child,.admin-doc-row>div:last-child{text-align:right}
.top-client-row strong,.admin-doc-row strong{display:block;font-size:12px}
.top-client-row span,.admin-doc-row span{display:block;font-size:10px;color:#8a8f96;margin-top:3px}
.admin-doc-row{grid-template-columns:1fr auto}
.admin-empty{padding:20px;text-align:center;color:#8a8f96;font-size:12px}

.presence{
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:11px;
  font-weight:800;
}
.presence.online{color:#188038}
.presence.offline{color:#777}
.presence.offline i{background:#a9adb3;box-shadow:none}

.client-master-table td{vertical-align:middle}
.client-profile-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:18px;
  margin-bottom:18px;
}
.client-presence-line{
  display:flex;
  justify-content:space-between;
  gap:15px;
  align-items:center;
  margin-bottom:18px;
  padding-bottom:12px;
  border-bottom:1px solid #eceff2;
}
.client-presence-line small{color:#8a8f96}
.client-data-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.client-data-list>div{padding:11px;border:1px solid #eceff2;border-radius:10px;background:#fafafa}
.client-data-list span{display:block;font-size:10px;color:#7b8189;margin-bottom:4px}
.client-data-list b{font-size:12px;word-break:break-word}

.doc-kind{
  display:inline-block;
  padding:5px 8px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
}
.doc-kind.budget{background:#eef3ff;color:#274690}
.doc-kind.order{background:#fff1f2;color:#9c1220}

.admin-settings-details{margin-top:18px}
.admin-settings-details summary{cursor:pointer;font-weight:800}
.search-panel .search-field select{min-width:130px}

@media(max-width:1100px){
  .admin-kpi-grid{grid-template-columns:1fr 1fr 1fr}
  .admin-kpi-grid.compact{grid-template-columns:1fr 1fr}
  .admin-analytics-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .admin-page-head{align-items:flex-start;flex-direction:column}
  .admin-kpi-grid,.admin-kpi-grid.compact{grid-template-columns:1fr 1fr}
  .client-profile-grid{grid-template-columns:1fr}
  .client-data-list{grid-template-columns:1fr}
  .admin-bar-chart{gap:5px}
  .admin-bar-value{display:none}
  .admin-hbar-row{grid-template-columns:95px 1fr 28px}
}
@media(max-width:520px){
  .admin-kpi-grid,.admin-kpi-grid.compact{grid-template-columns:1fr}
}



/* ============================================================
   NUCLEO PRO V1.8.0 · DASHBOARDS LIMPIOS POR ROL
   ============================================================ */

.container-v180{max-width:1320px}
.topbar-v180{height:64px;padding:0 30px;border-bottom:1px solid #242424;box-shadow:none}
.topbar-v180 .brand{font-size:21px;letter-spacing:.02em}
.topbar-v180 .brand span{border-radius:4px;font-size:10px;padding:4px 7px}
.topbar-v180 nav{justify-content:center}
.topbar-v180 nav a{font-size:12px;color:#d4d4d4;padding:9px 11px}
.topbar-v180 .who{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.topbar-v180 .who small{font-size:8px;color:#777;letter-spacing:.13em}
.topbar-v180 .who b{font-size:11px;color:#fff;margin-top:3px}

/* jerarquía general */
.portal-home-v180,.admin-home-clean-v180{padding-bottom:20px}
.portal-eyebrow-v180{
  display:block;color:#e30613;font-size:9px;font-weight:900;
  letter-spacing:.16em;text-transform:uppercase;
}
.portal-section-v180{margin-top:26px}
.portal-section-head-v180{
  display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px
}
.portal-section-head-v180.compact{margin-bottom:12px}
.portal-section-head-v180 h2{margin:4px 0 0;font-size:21px;letter-spacing:-.02em}
.portal-section-head-v180 p{max-width:470px;margin:0;color:#7a8088;font-size:12px;line-height:1.45;text-align:right}
.clean-link-v180{font-size:11px;font-weight:800;color:#e30613;text-decoration:none}

/* bienvenida agencia */
.home-welcome-v180,.admin-welcome-v180{
  display:flex;justify-content:space-between;align-items:center;gap:28px;
  background:#111;color:#fff;border-radius:16px;padding:25px 28px;margin-bottom:15px;
  overflow:hidden;position:relative;
}
.home-welcome-v180:after,.admin-welcome-v180:after{
  content:"";position:absolute;width:230px;height:230px;border-radius:50%;
  right:-100px;top:-130px;background:rgba(227,6,19,.13)
}
.home-welcome-v180>*,.admin-welcome-v180>*{position:relative;z-index:1}
.home-welcome-v180 h1,.admin-welcome-v180 h1{font-size:30px;margin:5px 0 7px;letter-spacing:-.03em}
.home-welcome-v180 p,.admin-welcome-v180 p{margin:0;color:#aaa;font-size:13px}
.home-main-action-v180{gap:8px;white-space:nowrap}
.portal-line-icon.small{width:17px;height:17px}

/* información de cuenta agencia */
.agency-account-strip-v180{
  display:grid;grid-template-columns:1.5fr repeat(3,1fr);
  border:1px solid #e4e6e9;border-radius:13px;background:#fff;overflow:hidden;
}
.agency-account-strip-v180>div{padding:14px 16px;border-right:1px solid #eceef0}
.agency-account-strip-v180>div:last-child{border-right:0}
.agency-account-strip-v180 span{display:block;font-size:9px;text-transform:uppercase;color:#8a8f96;font-weight:800;letter-spacing:.06em}
.agency-account-strip-v180 b{display:block;margin-top:5px;font-size:13px}
.ok-text-v180{color:#188038}

/* módulos */
.module-grid-clean-v180{
  display:grid;grid-template-columns:repeat(4,1fr);gap:11px;
}
.module-card-clean-v180{
  min-height:98px;display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;
  padding:15px;border:1px solid #e3e5e8;border-radius:13px;background:#fff;
  color:#171717;text-decoration:none;transition:.16s ease;
}
.module-card-clean-v180:hover{border-color:#d0d3d7;box-shadow:0 7px 18px rgba(0,0,0,.05);transform:translateY(-1px)}
.module-card-clean-v180.active{border-color:#e30613}
.module-card-clean-v180.external{cursor:pointer}
.module-card-clean-v180.pending{opacity:.68}
.module-card-clean-v180>i{font-style:normal;color:#e30613;font-weight:900}
.module-card-clean-v180 b{display:block;font-size:13px}
.module-card-clean-v180 small{display:block;margin-top:4px;font-size:9px;color:#8a8f96}
.module-card-clean-v180.active small,.module-card-clean-v180.external small{color:#c70b16;font-weight:700}
.module-icon-clean-v180{
  width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid #e6e6e6;background:#fff;color:#121212;
}
.module-icon-clean-v180 .portal-line-icon{width:23px;height:23px;stroke-width:1.65}

/* KPIs agencia */
.agency-kpis-v180{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.agency-kpis-v180>a{
  display:flex;align-items:center;gap:13px;padding:15px;background:#fff;border:1px solid #e4e6e9;
  border-radius:12px;color:#1a1a1a;text-decoration:none;
}
.agency-kpis-v180>a>span{
  width:38px;height:38px;border-radius:10px;background:#f6f6f6;display:flex;align-items:center;justify-content:center;color:#222
}
.agency-kpis-v180 .portal-line-icon{width:20px;height:20px}
.agency-kpis-v180 small{display:block;color:#858b93;font-size:9px;text-transform:uppercase;font-weight:800}
.agency-kpis-v180 b{display:block;font-size:22px;margin-top:2px}

/* actividad */
.activity-card-v180,.clean-data-card-v180{box-shadow:none}
.activity-links-v180{display:flex;gap:12px}
.activity-links-v180 a{font-size:10px;color:#555;text-decoration:none;font-weight:800}
.activity-list-v180{display:grid}
.activity-list-v180>a{
  display:grid;grid-template-columns:90px minmax(0,1fr) 150px 110px;gap:12px;align-items:center;
  padding:12px 0;border-bottom:1px solid #eceef0;color:#1c1c1c;text-decoration:none
}
.activity-list-v180>a:last-child{border-bottom:0}
.activity-list-v180>a>div{min-width:0}
.activity-list-v180>a>div b{display:block;font-size:12px}
.activity-list-v180>a>div small{display:block;margin-top:3px;color:#858b93;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-list-v180>a>strong{text-align:right;font-size:12px}
.activity-type-v180{font-size:8px;font-weight:900;letter-spacing:.08em}
.activity-type-v180.budget{color:#31548f}
.activity-type-v180.order{color:#b70813}
.activity-status-v180{font-size:10px;color:#70767e}
.empty-clean-v180{padding:22px;text-align:center;color:#8a8f96;font-size:11px}

/* información agencia */
.agency-help-v180{
  margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:18px 20px;border:1px solid #e5e7ea;border-left:3px solid #e30613;border-radius:12px;background:#fff
}
.agency-help-v180 h3{font-size:14px;margin:5px 0 4px}
.agency-help-v180 p{margin:0;color:#757b83;font-size:11px;line-height:1.45}
.agency-help-v180>a{font-size:11px;color:#e30613;font-weight:800;text-decoration:none;white-space:nowrap}

/* administración */
.admin-management-v180{margin-top:24px}
.admin-menu-grid-v180{
  display:grid;grid-template-columns:repeat(3,1fr);gap:11px;
}
.admin-menu-grid-v180>a{
  min-height:86px;display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;
  padding:15px;background:#fff;border:1px solid #e3e5e8;border-radius:12px;color:#171717;text-decoration:none
}
.admin-menu-grid-v180>a:hover{border-color:#e30613}
.admin-menu-grid-v180>a>span{
  width:40px;height:40px;border-radius:10px;background:#f6f6f6;display:flex;align-items:center;justify-content:center
}
.admin-menu-grid-v180 .portal-line-icon{width:21px;height:21px}
.admin-menu-grid-v180 b{display:block;font-size:12px}
.admin-menu-grid-v180 small{display:block;margin-top:4px;color:#858b93;font-size:9px;line-height:1.35}
.admin-menu-grid-v180 i{font-style:normal;color:#e30613;font-weight:900}

.admin-kpis-clean-v180{
  display:grid;grid-template-columns:repeat(6,1fr);gap:10px
}
.admin-kpis-clean-v180>a,.admin-kpis-clean-v180>div{
  min-height:95px;padding:14px;background:#fff;border:1px solid #e4e6e9;border-radius:11px;
  color:#171717;text-decoration:none;display:flex;flex-direction:column
}
.admin-kpis-clean-v180 small{font-size:8px;color:#858b93;text-transform:uppercase;font-weight:900;letter-spacing:.05em}
.admin-kpis-clean-v180 b{font-size:23px;margin:6px 0}
.admin-kpis-clean-v180 span{margin-top:auto;color:#9499a0;font-size:9px}
.admin-kpis-clean-v180 .live{border-color:#cde7d4;background:#f7fcf8}
.admin-kpis-clean-v180 .live b{color:#188038}
.admin-kpis-clean-v180 .money b{font-size:17px;color:#a8000b}

.admin-data-grid-v180{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px
}
.clean-data-card-v180{padding:19px}
.clean-chart-v180{height:210px}
.admin-activity-v180>a{grid-template-columns:80px minmax(0,1fr) 160px 110px}

/* refinar tablas y fichas administrativas existentes */
.role-admin .card{box-shadow:none}
.role-admin .tablewrap{box-shadow:none}
.role-admin .search-panel{box-shadow:none}
.role-admin .admin-page-head{margin-top:2px}
.role-admin .admin-page-head h1{font-size:27px}
.role-admin .client-master-table table{font-size:12px}
.role-admin .client-master-table th{font-size:10px}
.role-admin .client-master-table td{padding:11px}

/* responsive */
@media(max-width:1120px){
  .module-grid-clean-v180{grid-template-columns:repeat(3,1fr)}
  .admin-kpis-clean-v180{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .module-grid-clean-v180{grid-template-columns:1fr 1fr}
  .admin-menu-grid-v180{grid-template-columns:1fr 1fr}
  .admin-data-grid-v180{grid-template-columns:1fr}
  .agency-account-strip-v180{grid-template-columns:1fr 1fr}
  .agency-account-strip-v180>div:nth-child(2){border-right:0}
  .agency-account-strip-v180>div:nth-child(-n+2){border-bottom:1px solid #eceef0}
}
@media(max-width:700px){
  .topbar-v180{height:auto}
  .topbar-v180 .who{display:none}
  .home-welcome-v180,.admin-welcome-v180{align-items:flex-start;flex-direction:column}
  .portal-section-head-v180{align-items:flex-start;flex-direction:column}
  .portal-section-head-v180 p{text-align:left}
  .module-grid-clean-v180,.admin-menu-grid-v180,.agency-kpis-v180{grid-template-columns:1fr}
  .admin-kpis-clean-v180{grid-template-columns:1fr 1fr}
  .activity-list-v180>a,.admin-activity-v180>a{grid-template-columns:80px minmax(0,1fr);gap:7px}
  .activity-status-v180,.activity-list-v180>a>strong{text-align:left}
  .agency-help-v180{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .agency-account-strip-v180,.admin-kpis-clean-v180{grid-template-columns:1fr}
  .agency-account-strip-v180>div{border-right:0;border-bottom:1px solid #eceef0}
  .agency-account-strip-v180>div:last-child{border-bottom:0}
}


/* ============================================================
   NUCLEO PRO V1.8.3 · RETORNO A ESTÉTICA OSCURA
   ============================================================ */

body.role-agency,
body.role-admin{
  background:#090909;
  color:#f1f1f1;
}

body.role-agency .container-v180,
body.role-admin .container-v180{
  max-width:1280px;
  margin-top:20px;
}

.portal-dark-v183{
  background:#0b0b0b;
  border:1px solid #1e1e1e;
  border-radius:18px;
  padding:16px;
  box-shadow:0 20px 50px rgba(0,0,0,.28);
}

.brand-hero-v183{
  overflow:hidden;
  border-radius:14px;
  border:1px solid #272727;
  background:#000;
  margin-bottom:14px;
}
.brand-hero-v183 img{
  display:block;
  width:100%;
  height:auto;
  max-height:230px;
  object-fit:cover;
  object-position:center;
}

/* cabecera principal */
body.role-agency .home-welcome-v180,
body.role-admin .admin-welcome-v180{
  background:linear-gradient(145deg,#171717,#0e0e0e);
  border:1px solid #292929;
  border-radius:14px;
  margin-bottom:12px;
  padding:21px 23px;
}
body.role-agency .home-welcome-v180:after,
body.role-admin .admin-welcome-v180:after{
  background:rgba(227,6,19,.09);
}
body.role-agency .home-welcome-v180 h1,
body.role-admin .admin-welcome-v180 h1{
  font-size:26px;
}
body.role-agency .home-welcome-v180 p,
body.role-admin .admin-welcome-v180 p{
  color:#8d8d8d;
}
body.role-agency .portal-eyebrow-v180,
body.role-admin .portal-eyebrow-v180{
  color:#e30613;
}

/* barra de cuenta */
body.role-agency .agency-account-strip-v180{
  background:#111;
  border-color:#282828;
}
body.role-agency .agency-account-strip-v180>div{
  border-color:#262626;
}
body.role-agency .agency-account-strip-v180 span{
  color:#777;
}
body.role-agency .agency-account-strip-v180 b{
  color:#fff;
}
body.role-agency .ok-text-v180{color:#62c878}

/* secciones */
body.role-agency .portal-section-head-v180 h2,
body.role-admin .portal-section-head-v180 h2{
  color:#fff;
}
body.role-agency .portal-section-head-v180 p,
body.role-admin .portal-section-head-v180 p{
  color:#707070;
}

/* módulos: estilo muy próximo a la versión anterior */
body.role-agency .module-card-clean-v180,
body.role-admin .module-card-clean-v180{
  background:linear-gradient(145deg,#171717,#101010);
  border-color:#292929;
  color:#fff;
  min-height:105px;
}
body.role-agency .module-card-clean-v180:hover,
body.role-admin .module-card-clean-v180:hover{
  border-color:#e30613;
  box-shadow:0 9px 20px rgba(0,0,0,.18);
}
body.role-agency .module-card-clean-v180.active,
body.role-admin .module-card-clean-v180.active{
  border-color:#e30613;
  background:linear-gradient(145deg,#241214,#111);
}
body.role-agency .module-card-clean-v180.pending,
body.role-admin .module-card-clean-v180.pending{
  opacity:.6;
}
body.role-agency .module-card-clean-v180 small,
body.role-admin .module-card-clean-v180 small{
  color:#777;
}
body.role-agency .module-card-clean-v180.active small,
body.role-agency .module-card-clean-v180.external small,
body.role-admin .module-card-clean-v180.active small,
body.role-admin .module-card-clean-v180.external small{
  color:#d86f76;
}
body.role-agency .module-icon-clean-v180,
body.role-admin .module-icon-clean-v180{
  background:#fff;
  color:#111;
  border-color:#fff;
}
body.role-agency .module-card-clean-v180>i,
body.role-admin .module-card-clean-v180>i{
  color:#e30613;
}

/* KPIs */
body.role-agency .agency-kpis-v180>a,
body.role-admin .admin-kpis-clean-v180>a,
body.role-admin .admin-kpis-clean-v180>div{
  background:#121212;
  border-color:#292929;
  color:#fff;
}
body.role-agency .agency-kpis-v180>a:hover,
body.role-admin .admin-kpis-clean-v180>a:hover{
  border-color:#e30613;
}
body.role-agency .agency-kpis-v180>a>span{
  background:#1d1d1d;
  color:#fff;
}
body.role-agency .agency-kpis-v180 small,
body.role-admin .admin-kpis-clean-v180 small{
  color:#777;
}
body.role-admin .admin-kpis-clean-v180 span{
  color:#686868;
}
body.role-admin .admin-kpis-clean-v180 .live{
  background:#101812;
  border-color:#244a2e;
}
body.role-admin .admin-kpis-clean-v180 .money{
  background:#1c1011;
  border-color:#4a2024;
}

/* actividad e información */
body.role-agency .activity-card-v180,
body.role-admin .clean-data-card-v180,
body.role-agency .agency-help-v180{
  background:#111;
  border-color:#292929;
  color:#fff;
}
body.role-agency .activity-list-v180>a,
body.role-admin .activity-list-v180>a{
  color:#e8e8e8;
  border-color:#242424;
}
body.role-agency .activity-list-v180>a>div small,
body.role-admin .activity-list-v180>a>div small,
body.role-agency .activity-status-v180,
body.role-admin .activity-status-v180{
  color:#777;
}
body.role-agency .agency-help-v180{
  border-left-color:#e30613;
}
body.role-agency .agency-help-v180 p{
  color:#777;
}

/* menú de administración */
body.role-admin .admin-menu-grid-v180>a{
  background:linear-gradient(145deg,#171717,#101010);
  border-color:#292929;
  color:#fff;
}
body.role-admin .admin-menu-grid-v180>a:hover{
  border-color:#e30613;
}
body.role-admin .admin-menu-grid-v180>a>span{
  background:#fff;
  color:#111;
}
body.role-admin .admin-menu-grid-v180 small{
  color:#777;
}

/* charts */
body.role-admin .admin-bar-track,
body.role-admin .admin-hbar-track{
  background:#242424;
}
body.role-admin .admin-hbar-row>span,
body.role-admin .admin-bar-value,
body.role-admin .admin-bar-col span{
  color:#777;
}
body.role-admin .admin-hbar-row>b,
body.role-admin .admin-bar-col>b{
  color:#fff;
}

/* usuarios y clientes */
body.role-admin .online-user-row,
body.role-admin .top-client-row,
body.role-admin .admin-doc-row{
  color:#e5e5e5;
  border-color:#242424;
}
body.role-admin .online-user-row small,
body.role-admin .top-client-row small,
body.role-admin .admin-doc-row small,
body.role-admin .online-page,
body.role-admin .top-client-row span,
body.role-admin .admin-doc-row span{
  color:#737373;
}

/* todas las páginas administrativas */
body.role-admin .card{
  background:#111;
  border-color:#292929;
  color:#f1f1f1;
}
body.role-admin .card h1,
body.role-admin .card h2,
body.role-admin h1,
body.role-admin h2{
  color:#fff;
}
body.role-admin .muted{
  color:#777;
}
body.role-admin .search-panel{
  background:#111;
  border-color:#292929;
}
body.role-admin .search-field label{
  color:#777;
}
body.role-admin .search-field input,
body.role-admin .search-field select,
body.role-admin .field input,
body.role-admin .field select,
body.role-admin .field textarea{
  background:#181818;
  color:#fff;
  border-color:#333;
}
body.role-admin .tablewrap{
  background:#111;
  border-color:#292929;
}
body.role-admin table{
  color:#dedede;
}
body.role-admin th{
  background:#171717;
  color:#777;
  border-color:#292929;
}
body.role-admin td{
  border-color:#232323;
}
body.role-admin a:not(.btn):not(.brand){
  color:#ef6068;
}
body.role-admin .client-data-list>div{
  background:#171717;
  border-color:#292929;
}
body.role-admin .client-data-list span{
  color:#777;
}
body.role-admin .client-data-list b{
  color:#fff;
}
body.role-admin .admin-settings-details{
  background:#111;
  border-color:#292929;
}

/* navegación más parecida al portal anterior */
body.role-agency .topbar-v180,
body.role-admin .topbar-v180{
  background:#0d0d0d;
  border-bottom:1px solid #262626;
}
body.role-agency .topbar-v180 nav a:hover,
body.role-admin .topbar-v180 nav a:hover{
  background:#1b1b1b;
}

/* reducimos ruido visual */
body.role-agency .portal-section-v180,
body.role-admin .portal-section-v180{
  margin-top:20px;
}
body.role-admin .admin-management-v180{
  margin-top:18px;
}
body.role-admin .admin-data-grid-v180{
  margin-top:20px;
}
body.role-admin .clean-data-card-v180,
body.role-agency .activity-card-v180{
  box-shadow:none;
}

/* responsive */
@media(max-width:700px){
  .portal-dark-v183{padding:10px;border-radius:13px}
  .brand-hero-v183 img{max-height:180px}
}


/* ============================================================
   NUCLEO PRO V1.8.6 · CESTA + PEDIDO MULTIARTÍCULO
   ============================================================ */
.cart-nav-count{
  display:inline-flex;min-width:18px;height:18px;padding:0 5px;align-items:center;justify-content:center;
  margin-left:4px;border-radius:999px;background:#e30613;color:#fff;font-size:9px;font-weight:900;
}

body.role-agency .cart-hero-v186,
body.role-agency .order-clean-hero-v186{
  padding:22px 24px;border:1px solid #292929;border-radius:14px;
  background:linear-gradient(145deg,#171717,#0e0e0e);color:#fff;
}
body.role-agency .cart-hero-v186 h1,
body.role-agency .order-clean-hero-v186 h1{margin-bottom:4px;color:#fff}
body.role-agency .cart-hero-v186 .muted,
body.role-agency .order-clean-hero-v186 .muted{color:#777}

.cart-layout-v186{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.cart-items-v186{min-width:0;display:grid;gap:14px}
body.role-agency .cart-module-v186,
body.role-agency .cart-summary-v186,
body.role-agency .checkout-v186,
body.role-agency .cart-empty-v186,
body.role-agency .order-status-card-v186,
body.role-agency .order-items-card-v186,
body.role-agency .order-delivery-v186,
body.role-agency .order-total-v186,
body.role-agency .payment-section{
  background:#111;border-color:#292929;color:#f1f1f1;box-shadow:none;
}
.cart-module-head-v186{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #252525}
.cart-module-head-v186 span{font-size:9px;font-weight:900;letter-spacing:.14em;color:#e30613}
.cart-module-head-v186 h2{margin:0!important;color:#fff!important;font-size:20px}
.cart-type-v186{padding-top:16px}
.cart-type-v186>h3{margin:0 0 8px;color:#8a8a8a;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.cart-line-v186{display:grid;grid-template-columns:minmax(0,1fr) 185px auto;gap:16px;align-items:center;padding:14px 0;border-top:1px solid #222}
.cart-type-v186 h3+.cart-line-v186{border-top:0}
.cart-line-main-v186{min-width:0}
.cart-line-main-v186>b{display:block;color:#fff;font-size:14px;margin-bottom:4px}
.cart-line-main-v186>span{display:block;color:#8a8a8a;font-size:12px;line-height:1.45;word-break:break-word}
.cart-line-main-v186>small{display:block;color:#565656;font-size:9px;margin-top:6px;text-transform:uppercase;letter-spacing:.05em}
.cart-line-price-v186{text-align:right}
.cart-line-price-v186 small{display:block;color:#777;font-size:9px;text-transform:uppercase}
.cart-line-price-v186 b{display:block;color:#fff;font-size:20px;margin:3px 0}
.cart-line-price-v186 span{display:block;color:#d86f76;font-size:9px}
.cart-line-actions-v186{display:flex;gap:6px;align-items:center}
.cart-line-actions-v186 form{margin:0}
.cart-remove-v186{background:#1a1a1a!important;color:#aaa!important;border:1px solid #343434!important}
.cart-remove-v186:hover{color:#fff!important;border-color:#e30613!important}
.cart-add-more-v186{justify-self:start;border:1px solid #303030!important;background:#151515!important;color:#eee!important}

.cart-summary-v186{position:sticky;top:82px}
.cart-summary-v186 h2{margin:5px 0 16px!important;color:#fff!important;font-size:18px}
.cart-total-row-v186{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #242424;color:#777;font-size:12px}
.cart-total-row-v186 b{color:#fff}
.cart-grand-v186{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:16px 0 8px;color:#fff}
.cart-grand-v186 span{font-weight:800}
.cart-grand-v186 b{font-size:26px;color:#fff}
.cart-summary-v186>small{display:block;color:#616161;font-size:10px;line-height:1.4}

.cart-empty-v186{text-align:center;padding:50px 24px!important}
.cart-empty-icon-v186{width:64px;height:64px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;color:#111}
.cart-empty-icon-v186 svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7}
.cart-empty-v186 h2{color:#fff!important;margin-bottom:7px}
.cart-empty-v186 p{max-width:520px;margin:0 auto 18px}

.checkout-v186{margin-top:18px}
.checkout-head-v186{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.checkout-head-v186 h2{margin:4px 0 0!important;color:#fff!important;font-size:21px}
.checkout-step-v186{padding:6px 9px;border:1px solid #3a2527;border-radius:6px;color:#d97980;background:#1c1112;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.delivery-options-v186{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.delivery-option-v186{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:82px;padding:14px;border:1px solid #303030;border-radius:11px;background:#161616;cursor:pointer}
.delivery-option-v186:hover{border-color:#575757}
.delivery-option-v186:has(input:checked){border-color:#e30613;background:#1f1112}
.delivery-option-v186 input{position:absolute;opacity:0;pointer-events:none}
.delivery-radio-v186{width:18px;height:18px;border:2px solid #555;border-radius:50%;display:block;position:relative}
.delivery-option-v186:has(input:checked) .delivery-radio-v186{border-color:#e30613}
.delivery-option-v186:has(input:checked) .delivery-radio-v186:after{content:"";position:absolute;inset:3px;border-radius:50%;background:#e30613}
.delivery-option-v186 div{min-width:0}
.delivery-option-v186 b{display:block;color:#fff;font-size:13px}
.delivery-option-v186 small{display:block;color:#737373;font-size:10px;line-height:1.35;margin-top:3px}
.delivery-option-v186 strong{color:#fff;font-size:13px;white-space:nowrap}
.shipping-band-v186{margin-top:12px;padding:14px;border:1px solid #2d2d2d;border-radius:11px;background:#0d0d0d;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.shipping-band-v186.hidden,.delivery-data-v186.hidden{display:none!important}
.shipping-band-v186 label{display:flex;gap:9px;align-items:center;padding:12px;border:1px solid #303030;border-radius:9px;background:#171717;cursor:pointer}
.shipping-band-v186 label:has(input:checked){border-color:#e30613;background:#1f1112}
.shipping-band-v186 input{accent-color:#e30613}
.shipping-band-v186 label span b{display:block;color:#fff;font-size:12px}
.shipping-band-v186 label span small{color:#818181;font-size:10px}
.shipping-band-v186 p{grid-column:1/-1;margin:2px 0 0;color:#6d6d6d;font-size:10px}
.delivery-data-v186{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;margin-top:16px;padding-top:16px;border-top:1px solid #272727}
.delivery-data-v186 .field{margin-bottom:12px}
.delivery-data-v186 .field-wide-v186{grid-column:1/-1}
body.role-agency .checkout-v186 .field label{color:#bdbdbd}
body.role-agency .checkout-v186 input,
body.role-agency .checkout-v186 textarea{background:#181818;color:#fff;border-color:#343434}
body.role-agency .checkout-v186 input:focus,
body.role-agency .checkout-v186 textarea:focus{outline:2px solid rgba(227,6,19,.25);border-color:#e30613}
.checkout-notes-v186{margin-top:6px}
.checkout-confirm-v186{display:flex;align-items:center;justify-content:flex-end;gap:24px;padding-top:18px;margin-top:10px;border-top:1px solid #292929}
.checkout-confirm-v186>div{text-align:right}
.checkout-confirm-v186 small{display:block;color:#777;font-size:9px;text-transform:uppercase}
.checkout-confirm-v186 b{display:block;color:#fff;font-size:26px;margin:2px 0}
.checkout-confirm-v186 span{display:block;color:#777;font-size:10px}
.checkout-submit-v186{min-height:48px;padding-left:24px!important;padding-right:24px!important}

.order-timeline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:18px 0 8px}
.order-step{position:relative;text-align:center;padding-top:27px;color:#626262;font-size:9px}
.order-step:before{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:#2d2d2d}
.order-step:first-child:before{left:50%}.order-step:last-child:before{right:50%}
.order-dot{position:absolute;top:2px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#272727;border:3px solid #111;box-shadow:0 0 0 1px #414141}
.order-step.done{color:#cfcfcf}.order-step.done:before{background:#e30613}.order-step.done .order-dot{background:#e30613;box-shadow:0 0 0 1px #e30613}
.order-step.current b{color:#fff}
.order-client-v186{display:grid;grid-template-columns:1.4fr 1fr 1.4fr;gap:14px;align-items:end;margin-bottom:16px}
.order-client-v186 h2{margin:3px 0 0!important;color:#fff!important}
.order-client-v186>div>small{display:block;color:#777;font-size:9px;text-transform:uppercase}
.order-client-v186>div>b{display:block;color:#fff;margin-top:4px;font-size:12px}
.order-section-head-v186{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #272727}
.order-section-head-v186 h2{margin:3px 0 0!important;color:#fff!important}
.order-section-head-v186>b{display:flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:#fff;color:#111}
.order-module-v186{padding-top:18px}
.order-module-v186>h3{margin:0 0 12px;color:#e30613;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.order-type-title-v186{color:#777;font-size:9px;text-transform:uppercase;font-weight:900;letter-spacing:.1em;margin:12px 0 3px}
.order-item-v186{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;padding:13px 0;border-bottom:1px solid #232323}
.order-item-v186>div:first-child>b{display:block;color:#fff;margin-bottom:4px}
.order-item-v186>div:first-child>span{display:block;color:#818181;font-size:11px;line-height:1.45}
.order-item-v186>div:first-child>small{display:block;color:#555;font-size:9px;margin-top:5px}
.order-item-price-v186{text-align:right}
.order-item-price-v186 small{display:block;color:#777;font-size:9px;text-transform:uppercase}
.order-item-price-v186 b{display:block;color:#fff;font-size:19px;margin:3px 0}
.order-item-price-v186 span{color:#c9656c;font-size:9px}
.order-bottom-grid-v186{display:grid;grid-template-columns:1.3fr .7fr;gap:16px;margin-top:16px}
.order-delivery-v186 h2,.order-total-v186 h2{color:#fff!important;margin:4px 0 15px!important}
.order-info-line-v186,.order-total-v186>div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #252525;color:#777;font-size:11px}
.order-info-line-v186 b,.order-total-v186>div b{color:#fff}
.delivery-address-v186{margin-top:14px;padding:13px;border:1px solid #2c2c2c;border-radius:9px;background:#171717}
.delivery-address-v186 b{display:block;color:#fff}.delivery-address-v186 span{display:block;color:#777;font-size:10px;margin-top:3px}.delivery-address-v186 p{margin:8px 0 0;color:#aaa;font-size:11px;line-height:1.45}
.delivery-note-v186{margin-top:12px}.delivery-note-v186 small{color:#777}.delivery-note-v186 p{color:#aaa;font-size:11px;line-height:1.45}
.order-total-grand-v186{padding-top:14px!important;border-bottom:0!important;align-items:flex-end}.order-total-grand-v186 span{color:#fff;font-weight:900}.order-total-grand-v186 b{font-size:25px!important}
.payment-section .payment-box{margin:0;background:#171717!important;border-color:#303030!important;color:#bbb!important}
.payment-section .payment-box b{color:#fff}.payment-section .bank-number{color:#fff}
.budget-row-actions-v186{display:flex;align-items:center;gap:6px;white-space:nowrap}.budget-row-actions-v186 form{margin:0}

body.role-admin .order-clean-hero-v186{padding:22px 24px;border:1px solid #292929;border-radius:14px;background:linear-gradient(145deg,#171717,#0e0e0e);color:#fff}
body.role-admin .order-client-v186,
body.role-admin .order-items-card-v186,
body.role-admin .order-status-card-v186,
body.role-admin .order-delivery-v186,
body.role-admin .order-total-v186{background:#111!important;border-color:#292929!important}

@media(max-width:980px){
  .cart-layout-v186{grid-template-columns:1fr}.cart-summary-v186{position:static}
  .delivery-options-v186{grid-template-columns:1fr}
  .order-bottom-grid-v186{grid-template-columns:1fr}
}
@media(max-width:720px){
  .cart-line-v186{grid-template-columns:1fr;gap:8px}.cart-line-price-v186{text-align:left}.cart-line-actions-v186{justify-content:flex-start}
  .delivery-data-v186{grid-template-columns:1fr}.delivery-data-v186 .field-wide-v186{grid-column:auto}
  .checkout-confirm-v186{align-items:stretch;flex-direction:column}.checkout-confirm-v186>div{text-align:left}.checkout-submit-v186{width:100%}
  .shipping-band-v186{grid-template-columns:1fr}.shipping-band-v186 p{grid-column:auto}
  .order-timeline{grid-template-columns:repeat(3,1fr);row-gap:16px}.order-step:before{display:none}
  .order-client-v186{grid-template-columns:1fr}.order-item-v186{grid-template-columns:1fr}.order-item-price-v186{text-align:left}
}


/* ============================================================
   NÚCLEO PRO V1.9.0 · BASE PREMIUM · PLV + BUSCADOR + LEGAL
   ============================================================ */
.portal-home-v180,.admin-home-clean-v180{position:relative}
.portal-premium-hero-v190{min-height:360px;border:1px solid #29292d;border-radius:28px;margin:4px 0 24px;padding:42px;position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;background:#070708 url('nucleo-premium-bg.png') center/cover no-repeat;box-shadow:0 34px 90px rgba(0,0,0,.34)}
.portal-premium-hero-v190:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.74) 42%,rgba(0,0,0,.22) 78%,rgba(0,0,0,.34) 100%),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.52))}
.portal-premium-hero-v190:after{content:"";position:absolute;left:42px;bottom:0;width:120px;height:4px;background:#e30613;border-radius:99px 99px 0 0;box-shadow:0 0 30px rgba(227,6,19,.4)}
.portal-premium-hero-content-v190,.portal-premium-account-v190{position:relative;z-index:1}
.portal-premium-hero-content-v190{max-width:660px}.portal-premium-kicker-v190{display:block;color:#ffb0b5;font-size:10px;font-weight:900;letter-spacing:.18em;margin-bottom:12px}.portal-premium-hero-content-v190 h1{margin:0;color:#fff;font-size:clamp(40px,5vw,70px);line-height:.92;letter-spacing:-.055em;max-width:640px}.portal-premium-hero-content-v190 p{max-width:560px;color:#c8c8cf;font-size:14px;line-height:1.55;margin:18px 0 0}.portal-premium-actions-v190{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.portal-premium-secondary-v190{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;backdrop-filter:blur(12px)}
.portal-premium-account-v190{min-width:225px;padding:18px 20px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(8,8,9,.64);backdrop-filter:blur(18px);box-shadow:0 18px 40px rgba(0,0,0,.22)}.portal-premium-account-v190 small{display:block;color:#7e7e88;font-size:9px;font-weight:900;letter-spacing:.16em}.portal-premium-account-v190 b{display:block;color:#fff;font-size:19px;margin-top:6px}.portal-premium-account-v190 span{display:block;color:#aaaab2;font-size:11px;margin-top:4px}
.portal-global-search-v190{display:grid;grid-template-columns:minmax(230px,.42fr) minmax(460px,1fr);gap:24px;align-items:center;margin:0 0 24px;padding:24px;border:1px solid #2a2a2f;border-radius:22px;background:linear-gradient(145deg,#111113,#0b0b0d);box-shadow:0 22px 60px rgba(0,0,0,.2);position:relative;z-index:8}.portal-search-copy-v190 h2{margin:5px 0 5px;color:#fff;font-size:23px;letter-spacing:-.035em}.portal-search-copy-v190 p{margin:0;color:#7f7f88;font-size:11.5px}.portal-search-ui-v190{position:relative}.portal-search-input-wrap-v190{height:52px;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #34343a;border-radius:14px;background:#0a0a0c;transition:.18s}.portal-search-input-wrap-v190:focus-within{border-color:rgba(227,6,19,.8);box-shadow:0 0 0 3px rgba(227,6,19,.08)}.portal-search-input-v190{flex:1;min-width:0;border:0!important;outline:0!important;background:transparent!important;color:#f7f7f8!important;font:inherit;padding:0!important}.portal-search-input-v190::placeholder{color:#66666f}.portal-search-clear-v190{appearance:none;border:0;background:transparent;color:#6d6d75;font-size:20px;cursor:pointer}.portal-search-results-v190{display:none;position:absolute;z-index:40;left:0;right:0;top:61px;border:1px solid #303036;border-radius:16px;background:#0c0c0e;box-shadow:0 26px 65px rgba(0,0,0,.48);overflow:hidden}.portal-search-results-v190.show{display:block}.portal-search-result-v190{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;color:#fff;border-bottom:1px solid #222226}.portal-search-result-v190:last-child{border-bottom:0}.portal-search-result-v190:hover{background:#151518}.portal-search-result-v190 span small{display:block;color:#e30613;font-size:8px;font-weight:900;letter-spacing:.10em;text-transform:uppercase}.portal-search-result-v190 span b{display:block;font-size:12.5px;margin-top:3px}.portal-search-result-v190 span em{display:block;color:#777780;font-size:10px;font-style:normal;margin-top:3px}.portal-search-result-v190 i{font-style:normal;color:#999}.portal-search-empty-v190{padding:16px;color:#85858e;font-size:11px}
.module-card-plv-v190{position:relative}.module-card-plv-v190:after{content:"NUEVO";position:absolute;right:12px;top:10px;padding:4px 6px;border-radius:999px;background:rgba(227,6,19,.14);border:1px solid rgba(227,6,19,.4);color:#ff9da4;font-size:7px;font-weight:900;letter-spacing:.1em}
.portal-legal-footer-v190{max-width:1480px;margin:0 auto;padding:0 24px 24px;color:#72727b;font-size:10.5px}.portal-legal-footer-v190>div{border-top:1px solid #252529;padding:18px 4px 0;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.portal-legal-footer-v190 a{color:#bbb;text-decoration:none}.portal-legal-footer-v190 a:hover{color:#fff}.portal-legal-meta-v190{margin-left:auto;color:#5d5d66}
.plv-portal-shell-v190{margin-top:8px}.plv-portal-heading-v190{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:8px 0 14px;padding:0 2px}.plv-portal-heading-v190 h1{margin:5px 0 0;font-size:34px;letter-spacing:-.045em}.plv-portal-heading-v190 p{margin:7px 0 0;color:#85858e;font-size:12px}.plv-portal-chip-v190{border:1px solid #303035;background:#111114;border-radius:999px;padding:9px 11px;color:#aaa;font-size:9px;font-weight:850;letter-spacing:.05em}.plv-frame-v190{display:block;width:100%;height:1200px;border:1px solid #28282d;border-radius:24px;background:#050505;box-shadow:0 30px 80px rgba(0,0,0,.3);overflow:hidden}
.legal-page-v190{max-width:1050px;margin:24px auto;padding:30px;border:1px solid #29292e;border-radius:22px;background:#0e0e10;color:#c5c5cc;line-height:1.65;font-size:13px}.legal-page-v190 h1{color:#fff;font-size:36px;letter-spacing:-.04em;margin-top:0}.legal-page-v190 h2,.legal-page-v190 h3{color:#fff;margin-top:25px}.legal-page-v190 a{color:#ff8f97}.legal-page-v190 strong{color:#f2f2f4}
@media(max-width:900px){.portal-premium-hero-v190{min-height:330px;padding:28px;align-items:flex-start;flex-direction:column;justify-content:flex-end}.portal-premium-account-v190{min-width:0;width:100%;max-width:360px}.portal-global-search-v190{grid-template-columns:1fr;gap:14px}.plv-portal-heading-v190{align-items:flex-start;flex-direction:column}.portal-legal-meta-v190{margin-left:0;width:100%}}
@media(max-width:560px){.portal-premium-hero-v190{padding:22px;border-radius:20px;background-position:44% center}.portal-premium-hero-v190:after{left:22px}.portal-premium-hero-content-v190 h1{font-size:40px}.portal-global-search-v190{padding:18px;border-radius:18px}.portal-legal-footer-v190{padding:0 14px 18px}.plv-frame-v190{border-radius:16px}}


/* V1.9.1 · Integración visible de cesta en Display / PLV */
.plv-heading-actions-v191{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.plv-cart-main-v191{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;border:1px solid rgba(227,6,19,.48);background:linear-gradient(180deg,rgba(227,6,19,.16),rgba(227,6,19,.09));border-radius:15px;padding:9px 11px;min-width:174px;box-shadow:0 12px 28px rgba(0,0,0,.18);transition:.18s ease}
.plv-cart-main-v191:hover{transform:translateY(-2px);border-color:rgba(227,6,19,.85);background:linear-gradient(180deg,rgba(227,6,19,.24),rgba(227,6,19,.12))}
.plv-cart-icon-v191{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#e30613;font-size:15px}
.plv-cart-main-v191 span:nth-child(2){display:flex;flex-direction:column;line-height:1.1;min-width:0;flex:1}.plv-cart-main-v191 small{font-size:8px;color:#d8a9ad;font-weight:900;letter-spacing:.12em}.plv-cart-main-v191 b{font-size:11.5px;margin-top:4px}.plv-cart-main-v191>strong{min-width:28px;height:28px;padding:0 7px;border-radius:999px;background:#fff;color:#111;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.cart-pulse-v191{animation:cartPulseV191 .65s ease}@keyframes cartPulseV191{0%{transform:scale(1)}45%{transform:scale(1.055);box-shadow:0 0 0 7px rgba(227,6,19,.10)}100%{transform:scale(1)}}
@media(max-width:760px){.plv-portal-heading-v190{align-items:flex-start!important}.plv-heading-actions-v191{width:100%;justify-content:flex-start}.plv-cart-main-v191{min-width:190px}}

/* ===== V1.9.2 · ACCESOS POR MÓDULO + AAFF ===== */
.nav-aaff-v192{border:1px solid rgba(227,6,19,.45)!important;background:rgba(227,6,19,.10)!important;color:#fff!important;border-radius:10px!important;padding:8px 10px!important}
.nav-aaff-v192:hover{background:rgba(227,6,19,.18)!important}
.client-commercial-v192 h3{margin:4px 0 6px;font-size:20px}.field-help-v192{display:block;margin-top:6px;color:#7e7e87;font-size:10px;line-height:1.4}
.module-access-head-v192{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:24px 0 12px;padding-top:18px;border-top:1px solid #26262b}.module-access-head-v192 p{margin:0;color:#83838c;font-size:11px;line-height:1.5;max-width:660px}.module-access-actions-v192{display:flex;gap:8px;flex-wrap:wrap}.module-access-grid-v192{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:13px}.module-access-row-v192{display:grid;grid-template-columns:auto 1fr 150px;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a30;border-radius:13px;background:#101012;transition:.18s}.module-access-row-v192.enabled{border-color:rgba(227,6,19,.34);background:linear-gradient(90deg,rgba(227,6,19,.07),#101012 30%)}.module-access-copy-v192 b{display:block;font-size:12.5px}.module-access-copy-v192 small{display:block;margin-top:3px;color:#777780;font-size:9.5px}.module-switch-v192{position:relative;width:40px;height:22px}.module-switch-v192 input{position:absolute;opacity:0;pointer-events:none}.module-switch-v192 span{position:absolute;inset:0;border-radius:999px;background:#2a2a30;border:1px solid #3a3a40;cursor:pointer;transition:.18s}.module-switch-v192 span:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#888;left:2px;top:2px;transition:.18s}.module-switch-v192 input:checked+span{background:rgba(227,6,19,.28);border-color:#e30613}.module-switch-v192 input:checked+span:after{left:20px;background:#fff}.module-discount-v192>label{display:block;color:#777780;font-size:8.5px;font-weight:900;letter-spacing:.08em;margin-bottom:4px}.module-discount-v192>div{display:flex;align-items:center;border:1px solid #313137;background:#0b0b0d;border-radius:10px;overflow:hidden}.module-discount-v192 input{border:0!important;background:transparent!important;padding:8px 9px!important;color:#fff!important;min-width:0}.module-discount-v192 span{padding-right:9px;color:#999;font-size:10px;font-weight:800}.module-note-v192{margin:0 0 16px;color:#85858e;font-size:10.5px;line-height:1.5}.agency-module-help-v192{align-items:center}.aaff-help-link-v192{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#e30613!important;color:#fff!important;border-radius:12px!important;padding:11px 14px!important;text-decoration:none!important;font-weight:900!important}

.aaff-page-v192{max-width:1320px;margin:auto}.aaff-page-head-v192{margin-bottom:16px}.aaff-grid-v192{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:16px}.aaff-card-title-v192{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.aaff-card-title-v192>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:rgba(227,6,19,.13);border:1px solid rgba(227,6,19,.35);color:#f59ba1;font-size:9px;font-weight:900}.aaff-card-title-v192 h2{margin:0 0 5px}.aaff-card-title-v192 p{margin:0;color:#81818a;font-size:10.5px;line-height:1.45}.aaff-send-card-v192 textarea{width:100%;resize:vertical;min-height:120px;padding:11px;border:1px solid #33343a;border-radius:10px;background:#0f0f11;color:#fff;font:inherit}.aaff-drop-v192{position:relative;display:flex;align-items:center;gap:13px;margin:14px 0;padding:16px;border:1px dashed #4a4a51;border-radius:14px;background:#0d0d0f;overflow:hidden}.aaff-drop-v192:hover{border-color:rgba(227,6,19,.7)}.aaff-drop-icon-v192{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:13px;background:rgba(227,6,19,.12);border:1px solid rgba(227,6,19,.3);font-size:10px;font-weight:900;color:#f3a0a6;letter-spacing:.08em}.aaff-drop-v192 b{display:block;font-size:12px}.aaff-drop-v192 span{display:block;color:#777780;font-size:9.5px;margin-top:4px}.aaff-drop-v192 input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.aaff-submit-v192{width:100%;padding:13px!important}.aaff-history-list-v192{display:grid;gap:8px}.aaff-history-list-v192>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid #28282d;border-radius:11px;background:#101012}.aaff-history-list-v192 section{min-width:0}.aaff-history-list-v192 b{display:block;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aaff-history-list-v192 small{display:block;color:#74747c;font-size:8.7px;margin-top:3px}.aaff-history-list-v192 time{color:#696971;font-size:8.5px}.aaff-status-v192{display:inline-flex;width:max-content;border-radius:999px;padding:5px 7px;font-size:7.5px;font-weight:900;letter-spacing:.08em}.aaff-status-v192.sent{background:rgba(45,168,87,.12);border:1px solid rgba(45,168,87,.28);color:#7bd69a}.aaff-status-v192.stored{background:rgba(222,164,31,.11);border:1px solid rgba(222,164,31,.28);color:#e6be5c}
.aaff-admin-list-v192{display:grid;gap:12px}.aaff-admin-card-v192{padding:18px!important}.aaff-admin-card-head-v192{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.aaff-admin-card-head-v192 h2{margin:8px 0 4px;font-size:18px}.aaff-admin-card-head-v192 p{margin:0;color:#777780;font-size:10px}.aaff-admin-card-head-v192 time{color:#73737b;font-size:9px;white-space:nowrap}.aaff-ref-v192{display:inline-flex;flex-direction:column;margin:14px 0 0;padding:8px 10px;border-radius:9px;background:#111114;border:1px solid #29292f}.aaff-ref-v192 small{font-size:7.5px;color:#74747c;font-weight:900;letter-spacing:.1em}.aaff-ref-v192 b{font-size:10.5px;margin-top:3px}.aaff-message-v192{margin:13px 0;color:#b0b0b7;font-size:10.5px;line-height:1.5}.aaff-files-v192{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.aaff-files-v192 a{display:flex;align-items:center;gap:9px;min-width:190px;padding:9px 10px;text-decoration:none;color:#fff;border:1px solid #2d2d33;background:#111113;border-radius:10px}.aaff-files-v192 a:hover{border-color:rgba(227,6,19,.55)}.aaff-files-v192 a>span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(227,6,19,.12);color:#f38e96}.aaff-files-v192 b{display:block;font-size:9.5px}.aaff-files-v192 small{display:block;color:#74747c;font-size:8px;margin-top:2px}
@media(max-width:900px){.aaff-grid-v192{grid-template-columns:1fr}.module-access-head-v192{align-items:flex-start;flex-direction:column}.module-access-row-v192{grid-template-columns:auto 1fr 125px}}
@media(max-width:580px){.module-access-row-v192{grid-template-columns:auto 1fr}.module-discount-v192{grid-column:2}.aaff-history-list-v192>div{grid-template-columns:1fr}.aaff-admin-card-head-v192{flex-direction:column}}
.plv-aaff-btn-v192{white-space:nowrap;align-self:stretch;display:inline-flex!important;align-items:center!important;justify-content:center!important}


/* ==========================================================
   V1.9.3 · TALLER · PRODUCCIÓN · CALENDARIO · DOCUMENTOS
   ========================================================== */
body.role-workshop{background:#080809;color:#eee}
body.role-workshop .container-v180{max-width:1540px}
body.role-workshop .topbar-v180{background:#09090a;border-bottom-color:#242429}
body.role-workshop .topbar-v180 nav a{color:#aaa}
body.role-workshop .topbar-v180 nav a:hover{color:#fff}
.workshop-shell-v193{padding-bottom:24px}
.workshop-hero-v193{min-height:190px;padding:28px 30px;margin-bottom:16px;border-radius:18px;border:1px solid #28282d;background:radial-gradient(600px 220px at 90% 0,rgba(227,6,19,.16),transparent 65%),linear-gradient(135deg,#121214,#080809);display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.workshop-hero-v193 h1{font-size:42px;letter-spacing:-.045em;margin:8px 0}.workshop-hero-v193 p{color:#8f8f98;max-width:760px;margin:0}
.workshop-user-v193{min-width:210px;padding:16px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.workshop-user-v193 small,.workshop-user-v193 span{display:block;color:#777;font-size:9px;letter-spacing:.1em}.workshop-user-v193 b{display:block;font-size:17px;margin:4px 0 6px}
.workshop-kpis-v193{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 14px}.workshop-kpis-v193>a,.workshop-kpis-v193>div{padding:15px 17px;border:1px solid #29292e;border-radius:14px;background:#111113;color:#fff;text-decoration:none}.workshop-kpis-v193 small{color:#7d7d86;font-size:9px;font-weight:900;letter-spacing:.08em}.workshop-kpis-v193 b{display:block;font-size:28px;margin-top:4px}.workshop-kpis-v193 .danger{border-color:#733038;background:#1a0d0f}
.workshop-filter-v193{background:#101012;border-color:#29292e}.workshop-job-grid-v193{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.workshop-job-v193{padding:17px;border:1px solid #29292e;border-top:3px solid #34343a;border-radius:15px;background:#111113;color:#eee}.workshop-job-v193.overdue{border-top-color:#e30613}.workshop-job-v193.today{border-top-color:#f1a521}.workshop-job-v193.soon{border-top-color:#d3b85b}
.workshop-job-top-v193{display:flex;align-items:center;justify-content:space-between;gap:12px}.workshop-job-top-v193>span{font-size:9px;color:#e36b73;font-weight:900;letter-spacing:.1em}.workshop-job-v193 h2{font-size:19px;letter-spacing:-.025em;margin:12px 0 6px}.workshop-job-client-v193{display:flex;justify-content:space-between;gap:10px;font-size:11px}.workshop-job-client-v193 span{color:#777}.workshop-job-v193>p{font-size:11px;color:#9b9ba3;line-height:1.45;min-height:44px}.workshop-job-v193>p span{color:#6f6f76}.workshop-due-v193{padding:10px 11px;border-radius:10px;background:#171719;border:1px solid #29292e;margin:12px 0}.workshop-due-v193 small{display:block;font-size:8px;color:#777;font-weight:900;letter-spacing:.08em}.workshop-due-v193 b{display:block;margin-top:3px}.workshop-due-v193.overdue{border-color:#6f262c;color:#ff949c}.workshop-due-v193.today{border-color:#74531b;color:#ffc45c}
body.role-workshop .field input,body.role-workshop .field select,body.role-workshop .field textarea{background:#18181b;color:#fff;border-color:#33343a}.workshop-save-v193{width:100%}
.prod-status-v193{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.035em;background:#eceef0;color:#555}.prod-status-v193.received{background:#eceff3;color:#59616d}.prod-status-v193.review{background:#fff4d8;color:#8a6513}.prod-status-v193.production,.prod-status-v193.finishing{background:#ffe4e6;color:#a61e27}.prod-status-v193.ready,.prod-status-v193.completed{background:#ddf5e4;color:#17783a}.prod-status-v193.shipped{background:#e3edff;color:#2c62a9}.prod-status-v193.cancelled{background:#eee;color:#777}
body.role-workshop .prod-status-v193.received{background:#23262b;color:#a8b1bd}.role-workshop .prod-status-v193.review{background:#322814;color:#e6c468}.role-workshop .prod-status-v193.production,.role-workshop .prod-status-v193.finishing{background:#391519;color:#ff979e}.role-workshop .prod-status-v193.ready{background:#14301d;color:#8cdfa6}

/* administración: operarios */
.workshop-admin-grid-v193{display:grid;grid-template-columns:360px minmax(0,1fr);gap:16px}.workshop-user-list-v193{display:flex;flex-direction:column;gap:9px}.workshop-user-row-v193{display:grid;grid-template-columns:10px 1fr 1.2fr 110px 1fr 120px auto;align-items:end;gap:9px;padding:12px;border:1px solid #e4e6e9;border-radius:12px;background:#fafafa}.workshop-user-row-v193 label{display:block;font-size:9px;color:#777;margin-bottom:4px}.workshop-user-row-v193 input,.workshop-user-row-v193 select{width:100%;padding:8px;border:1px solid #d7d9dd;border-radius:8px;background:#fff}.workshop-user-live-v193{width:9px;height:9px;border-radius:50%;align-self:center}.workshop-user-live-v193.on{background:#27aa55}.workshop-user-live-v193.off{background:#a4a4a4}.workshop-user-meta-v193 small,.workshop-user-meta-v193 b{display:block;font-size:9px}.workshop-user-meta-v193 b{font-size:10px;margin-top:4px}

/* planificación admin */
.production-admin-list-v193{display:flex;flex-direction:column;gap:10px}.production-admin-card-v193{display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.9fr);gap:18px;padding:15px;border:1px solid #e2e5e8;border-left:4px solid #cdd0d4;border-radius:13px;background:#fff}.production-admin-card-v193.overdue{border-left-color:#e30613}.production-admin-card-v193.today{border-left-color:#e59d19}.production-admin-main-v193 h3{font-size:16px;margin:6px 0}.production-admin-main-v193 p{font-size:11px;color:#777;margin:0}.production-module-v193{font-size:9px;color:#e30613;font-weight:900;letter-spacing:.09em}.production-admin-order-v193{display:flex;gap:10px;margin-top:9px;font-size:10px}.production-admin-order-v193 a{font-weight:900;color:#222}.production-admin-order-v193 span{color:#777}.production-admin-controls-v193{display:grid;grid-template-columns:150px 150px minmax(150px,1fr) auto;gap:9px;align-items:end}.production-admin-controls-v193 label{display:block;font-size:8px;color:#777;font-weight:900;margin-bottom:4px}.production-admin-controls-v193 input,.production-admin-controls-v193 select{width:100%;padding:8px;border:1px solid #d8dade;border-radius:8px;background:#fff}.production-admin-controls-v193 small{display:block;font-size:9px;margin-top:4px}.production-admin-controls-v193 small.overdue{color:#c91d29}.production-admin-controls-v193 small.today{color:#a46900}

/* calendario compartido */
.calendar-hero-v193{align-items:flex-end}.calendar-legend-v193{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 10px;font-size:10px;color:#777}.calendar-legend-v193 span{display:flex;align-items:center;gap:5px}.calendar-legend-v193 i{width:8px;height:8px;border-radius:50%;background:#aaa}.calendar-legend-v193 i.review{background:#d6a92f}.calendar-legend-v193 i.production,.calendar-legend-v193 i.finishing{background:#e30613}.calendar-legend-v193 i.ready{background:#29a65a}
.production-calendar-v193{border:1px solid #e0e3e6;border-radius:15px;overflow:hidden;background:#fff}.calendar-weekdays-v193{display:grid;grid-template-columns:repeat(7,1fr);background:#111;color:#fff}.calendar-weekdays-v193 b{padding:10px 12px;font-size:9px;letter-spacing:.08em;border-right:1px solid #2b2b2b}.calendar-grid-v193{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day-v193{min-height:142px;padding:8px;border-right:1px solid #eceef0;border-bottom:1px solid #eceef0;background:#fff}.calendar-day-v193.other{background:#f7f8f9;color:#aaa}.calendar-day-v193.today{box-shadow:inset 0 0 0 2px #e30613}.calendar-date-v193{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.calendar-date-v193>span{font-weight:900;font-size:12px}.calendar-date-v193>b{font-size:7px;color:#e30613;letter-spacing:.08em}.calendar-jobs-v193{display:flex;flex-direction:column;gap:4px}.calendar-job-v193{display:block;padding:6px 7px;border-radius:7px;text-decoration:none;background:#f3f4f5;color:#222;border-left:3px solid #a8adb4}.calendar-job-v193.review{border-left-color:#d7aa2c;background:#fff8e8}.calendar-job-v193.production,.calendar-job-v193.finishing{border-left-color:#e30613;background:#fff2f3}.calendar-job-v193.ready{border-left-color:#28a056;background:#edf9f0}.calendar-job-v193 small,.calendar-job-v193 span{display:block;font-size:7.5px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-job-v193 b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:1px 0}
.calendar-upcoming-v193{margin-top:14px}.calendar-list-v193>a{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #eceef0;text-decoration:none;color:#222}.calendar-list-v193>a:last-child{border-bottom:0}.calendar-list-date-v193{padding:6px 8px;border-radius:7px;background:#f1f2f4;text-align:center;font-size:10px;font-weight:900}.calendar-list-date-v193.overdue{background:#ffe7e9;color:#b21d27}.calendar-list-date-v193.today{background:#fff0d2;color:#8e5d00}.calendar-list-v193 small,.calendar-list-v193 span{display:block;color:#777;font-size:9px}.calendar-list-v193 b{font-size:11px}

/* Documento NÚCLEO PRO: misma base para presupuesto y pedido */
.doc-actions-v193{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px}.nucleo-document-v193{max-width:1180px;margin:0 auto 22px;border:1px solid #dfe2e5;border-radius:18px;background:#fff;color:#171719;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.13)}.nucleo-doc-head-v193{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:24px 28px;background:#0c0c0e;color:#fff;border-bottom:4px solid #e30613}.nucleo-doc-brand-v193 b{display:block;font-size:25px;letter-spacing:.13em}.nucleo-doc-brand-v193 b span{color:#e30613}.nucleo-doc-brand-v193 small{display:block;margin-top:5px;color:#777;font-size:8px;letter-spacing:.14em}.nucleo-doc-type-v193{text-align:right}.nucleo-doc-type-v193 small{display:block;color:#777;font-size:8px;letter-spacing:.14em}.nucleo-doc-type-v193 strong{display:block;font-size:24px;letter-spacing:.08em;margin:4px 0}.nucleo-doc-type-v193 span{font-size:11px;color:#aaa}
.nucleo-doc-meta-v193{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #e7e9ec}.nucleo-doc-meta-v193>div{padding:14px 18px;border-right:1px solid #e7e9ec}.nucleo-doc-meta-v193>div:last-child{border-right:0}.nucleo-doc-meta-v193 small,.nucleo-doc-party-v193 small{display:block;font-size:8px;color:#8a8f96;font-weight:900;letter-spacing:.1em;margin-bottom:5px}.nucleo-doc-meta-v193 b{font-size:11px}.nucleo-doc-party-v193{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:22px 28px;border-bottom:1px solid #e7e9ec}.nucleo-doc-party-v193 h2,.nucleo-doc-party-v193 h3{margin:0 0 5px}.nucleo-doc-party-v193 p{margin:0;color:#6d7278;font-size:11px;line-height:1.55}
.nucleo-doc-section-v193{padding:22px 28px;border-bottom:1px solid #e7e9ec}.nucleo-doc-section-v193.compact{border:1px solid #e4e6e9;border-radius:12px}.nucleo-doc-section-title-v193{display:flex;align-items:center;gap:11px;margin-bottom:16px}.nucleo-doc-section-title-v193>span{width:27px;height:27px;display:grid;place-items:center;border-radius:7px;background:#e30613;color:#fff;font-size:9px;font-weight:900}.nucleo-doc-section-title-v193 small{display:block;color:#9a9da2;font-size:7px;font-weight:900;letter-spacing:.12em}.nucleo-doc-section-title-v193 h2{font-size:16px;margin:2px 0 0}.nucleo-doc-config-v193{padding:16px;border-radius:10px;background:#f6f7f8;border:1px solid #eaebed;font-size:12px;line-height:1.65}
.nucleo-doc-finance-v193{display:grid;grid-template-columns:1fr 360px;gap:24px;padding:22px 28px}.nucleo-doc-prices-v193>div,.nucleo-doc-total-v193>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #eaebed;font-size:11px}.nucleo-doc-prices-v193 .accent{color:#e30613;font-weight:900}.nucleo-doc-total-v193 .grand{border-top:2px solid #171719;border-bottom:0;margin-top:4px;padding-top:13px}.nucleo-doc-total-v193 .grand b{font-size:20px}.nucleo-doc-total-v193.standalone{padding:16px;border:1px solid #e4e6e9;border-radius:12px}.nucleo-doc-foot-v193{display:flex;justify-content:space-between;gap:20px;padding:12px 28px;background:#f4f5f6;color:#8a8d93;font-size:8px}
.nucleo-live-v193{display:flex;align-items:center;gap:7px;font-size:9px;color:#777;margin:10px 0 0}.nucleo-live-v193 i{width:7px;height:7px;border-radius:50%;background:#28a65a;box-shadow:0 0 0 4px rgba(40,166,90,.10)}
.nucleo-order-jobs-v193{display:flex;flex-direction:column;gap:14px}.nucleo-order-module-v193>h3{font-size:11px;letter-spacing:.09em;color:#e30613;text-transform:uppercase;border-bottom:1px solid #e7e9ec;padding-bottom:7px}.nucleo-order-job-v193{display:grid;grid-template-columns:minmax(0,1fr) 150px 170px;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid #eceef0}.nucleo-order-job-v193:last-child{border-bottom:0}.nucleo-order-job-copy-v193 small{font-size:8px;color:#8a8e94;font-weight:900}.nucleo-order-job-copy-v193 h4{font-size:13px;margin:3px 0}.nucleo-order-job-copy-v193 p{font-size:10px;color:#777;margin:0;line-height:1.45}.nucleo-order-job-state-v193{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.nucleo-order-job-state-v193>small{font-size:7px;color:#999;font-weight:900;margin-top:5px}.nucleo-order-job-state-v193>b{font-size:11px}.nucleo-order-job-state-v193>b.overdue{color:#e30613}.nucleo-order-job-price-v193{text-align:right}.nucleo-order-job-price-v193 small,.nucleo-order-job-price-v193 span{display:block;color:#888;font-size:7.5px}.nucleo-order-job-price-v193 b{display:block;font-size:14px;margin:3px 0}.nucleo-doc-two-v193{display:grid;grid-template-columns:1fr 360px;gap:14px;padding:22px 28px}.nucleo-timeline-v193{margin-top:22px!important}
body.role-agency .nucleo-document-v193{background:#fafafa;color:#171719}body.role-agency .doc-actions-v193{max-width:1180px;margin-left:auto;margin-right:auto}

@media(max-width:1100px){.workshop-job-grid-v193{grid-template-columns:repeat(2,1fr)}.workshop-admin-grid-v193{grid-template-columns:1fr}.workshop-user-row-v193{grid-template-columns:10px 1fr 1fr}.workshop-user-meta-v193{display:none}.production-admin-card-v193{grid-template-columns:1fr}.production-admin-controls-v193{grid-template-columns:repeat(2,1fr)}.production-note-v193{grid-column:1/-1}.calendar-day-v193{min-height:115px}.nucleo-doc-finance-v193,.nucleo-doc-two-v193{grid-template-columns:1fr}.nucleo-order-job-v193{grid-template-columns:1fr 140px}.nucleo-order-job-price-v193{grid-column:1/-1;text-align:left}}
@media(max-width:720px){.workshop-hero-v193{flex-direction:column;align-items:flex-start}.workshop-kpis-v193{grid-template-columns:repeat(2,1fr)}.workshop-job-grid-v193{grid-template-columns:1fr}.production-admin-controls-v193{grid-template-columns:1fr}.calendar-weekdays-v193 b{font-size:7px;padding:7px 4px}.calendar-day-v193{min-height:90px;padding:4px}.calendar-job-v193 small,.calendar-job-v193 span{display:none}.calendar-job-v193 b{font-size:7px}.nucleo-doc-head-v193{align-items:flex-start}.nucleo-doc-meta-v193{grid-template-columns:repeat(2,1fr)}.nucleo-doc-meta-v193>div:nth-child(2){border-right:0}.nucleo-doc-party-v193{grid-template-columns:1fr}.nucleo-doc-finance-v193,.nucleo-doc-two-v193,.nucleo-doc-section-v193,.nucleo-doc-party-v193{padding:17px}.nucleo-order-job-v193{grid-template-columns:1fr}.nucleo-doc-foot-v193{flex-direction:column}}
@media print{.topbar,.portal-legal-footer-v190,.doc-actions-v193{display:none!important}.container-v180{max-width:none!important;padding:0!important}.nucleo-document-v193{box-shadow:none;border-radius:0;border:0;margin:0;max-width:none}.nucleo-doc-head-v193{-webkit-print-color-adjust:exact;print-color-adjust:exact}.prod-status-v193{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* V1.9.5.2 · DTF por metro */
.dtf-portal-shell-v1952{position:relative;padding-bottom:18px}.dtf-portal-heading-v1952{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:20px 22px;margin-bottom:12px;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:linear-gradient(135deg,rgba(16,16,18,.97),rgba(9,9,10,.93));box-shadow:0 18px 52px rgba(0,0,0,.22)}.dtf-portal-heading-v1952 h1{margin:4px 0 5px;color:#fff;font-size:30px;letter-spacing:-.035em}.dtf-portal-heading-v1952 p{margin:0;color:#84848d;font-size:11px}.dtf-heading-actions-v1952{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.dtf-portal-chip-v1952{display:inline-flex;align-items:center;min-height:36px;padding:0 11px;border:1px solid #34343a;border-radius:10px;background:#151517;color:#aaa;font-size:8px;font-weight:900;letter-spacing:.08em}.dtf-cart-main-v1952{display:flex;align-items:center;gap:9px;min-height:46px;padding:7px 9px;border:1px solid #34343a;border-radius:12px;background:#151517;text-decoration:none;color:#fff;transition:.18s}.dtf-cart-main-v1952:hover{border-color:rgba(227,6,19,.72);transform:translateY(-1px)}.dtf-cart-icon-v1952{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:rgba(227,6,19,.13);color:#fff}.dtf-cart-main-v1952 small{display:block;color:#777780;font-size:7px;font-weight:900;letter-spacing:.11em}.dtf-cart-main-v1952 b{display:block;font-size:10px;margin-top:1px}.dtf-cart-main-v1952>strong{display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:999px;background:#e30613;color:#fff;font-size:10px}.dtf-module-frame-wrap-v1952{overflow:hidden;border-radius:19px;border:1px solid rgba(255,255,255,.07);background:#080808;box-shadow:0 26px 70px rgba(0,0,0,.20)}.dtf-frame-v1952{display:block;width:100%;height:980px;border:0;background:#080808}.module-card-dtf-v1952{position:relative;overflow:hidden}.module-card-dtf-v1952:after{content:"75 CM";position:absolute;right:44px;bottom:10px;font-size:7px;font-weight:900;letter-spacing:.10em;color:#a44}.cart-module-actions-v1952,.cart-add-more-strip-v1952{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cart-add-more-strip-v1952{padding:10px 0}.cart-add-more-strip-v1952>span{font-size:10px;color:#777;font-weight:900;margin-right:2px}
@media(max-width:900px){.dtf-portal-heading-v1952{align-items:flex-start;flex-direction:column}.dtf-heading-actions-v1952{justify-content:flex-start}}@media(max-width:620px){.dtf-portal-heading-v1952{padding:16px}.dtf-portal-heading-v1952 h1{font-size:25px}.dtf-heading-actions-v1952{width:100%}.dtf-heading-actions-v1952 .btn,.dtf-cart-main-v1952{flex:1 1 auto}.dtf-frame-v1952{height:1180px}}

/* V1.9.5.4 · DTF integración visual y cesta desde Administración */
.dtf-portal-shell-v1954{padding:0 0 24px}.dtf-toolbar-v1954{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;margin-bottom:10px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:linear-gradient(135deg,#121214,#0b0b0c)}.dtf-toolbar-title-v1954{display:flex;align-items:center;gap:12px}.dtf-toolbar-title-v1954 h1{margin:2px 0 2px;color:#fff;font-size:21px;letter-spacing:-.025em}.dtf-toolbar-title-v1954 p{margin:0;color:#777780;font-size:9px}.dtf-toolbar-icon-v1954{display:grid;place-items:center;width:42px;height:42px;border:1px solid #303036;border-radius:12px;background:#18181a;color:#fff}.dtf-toolbar-icon-v1954 svg{width:22px;height:22px}.dtf-toolbar-actions-v1954{display:flex;gap:8px;align-items:center}.dtf-admin-context-v1954{display:grid;grid-template-columns:minmax(260px,1.4fr) auto auto;gap:10px;align-items:end;padding:11px 13px;margin-bottom:10px;border:1px solid #dfe3e9;border-radius:13px;background:#f8f9fb;color:#17171a}.dtf-admin-client-v1954>span{display:block;margin-bottom:5px;color:#7b7d83;font-size:8px;font-weight:900;letter-spacing:.10em}.dtf-admin-client-v1954 select{width:100%;height:40px;border:1px solid #d1d5dc;border-radius:9px;background:#fff;color:#18181b;padding:0 10px;font-weight:800;font-size:10px}.dtf-admin-data-v1954{display:flex;gap:8px}.dtf-admin-data-v1954>div{min-width:90px;padding:7px 9px;border:1px solid #e0e3e8;border-radius:9px;background:#fff}.dtf-admin-data-v1954 small{display:block;color:#8a8c91;font-size:7px;font-weight:900}.dtf-admin-data-v1954 b{display:block;margin-top:3px;font-size:9px}.dtf-admin-data-v1954 b.ok{color:#24824a}.dtf-admin-data-v1954 b.bad{color:#c62b36}.dtf-admin-actions-v1954{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.dtf-module-frame-wrap-v1954{overflow:hidden;border:1px solid #242428;border-radius:16px;background:#080808}.dtf-frame-v1954{display:block;width:100%;height:900px;border:0;background:#080808}.admin-client-cart-v1954{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px}.dtf-admin-context-v1954 .btn.disabled,.dtf-admin-context-v1954 .btn:disabled{opacity:.45;pointer-events:none}
@media(max-width:1050px){.dtf-admin-context-v1954{grid-template-columns:1fr}.dtf-admin-data-v1954{flex-wrap:wrap}.dtf-admin-actions-v1954{justify-content:flex-start}.admin-client-cart-v1954{grid-template-columns:1fr}}@media(max-width:700px){.dtf-toolbar-v1954{align-items:flex-start;flex-direction:column}.dtf-toolbar-actions-v1954{width:100%;flex-wrap:wrap}.dtf-toolbar-actions-v1954>*{flex:1}.dtf-admin-data-v1954>div{flex:1}.dtf-frame-v1954{height:1120px}}

/* V1.9.5.6 · módulos deshabilitados */
.module-disabled-doc-v1956{display:inline-flex;align-items:center;min-height:30px;padding:5px 8px;border:1px solid #e4c8c9;border-radius:8px;background:#fff6f6;color:#9a4d51;font-size:9px;font-weight:800}
body.role-agency .module-disabled-doc-v1956,body.role-retail .module-disabled-doc-v1956{border-color:#4b2a2d;background:#1d1112;color:#d7858b}

/* ==========================================================
   V1.9.5.8 · DTF · estética unificada
   ========================================================== */
.dtf-page-v1958{display:grid;gap:14px}
.dtf-hero-v1958{
  display:grid;grid-template-columns:minmax(0,1.2fr) 360px;gap:18px;
  padding:22px;border:1px solid rgba(255,255,255,.08);border-radius:20px;
  background:
    radial-gradient(1200px 280px at 15% -10%,rgba(227,6,19,.12),transparent 45%),
    linear-gradient(135deg,rgba(17,17,21,.98),rgba(9,9,11,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.18);
}
.dtf-hero-copy-v1958 h1{margin:6px 0 8px;font-size:34px;letter-spacing:-.04em;color:#fff}
.dtf-hero-copy-v1958 p{max-width:860px;margin:0;color:#8e8e96;font-size:12px;line-height:1.65}
.dtf-kpis-v1958{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.dtf-kpis-v1958>div,
.dtf-hero-panel-v1958,
.dtf-admin-bar-v1958,
.dtf-frame-shell-v1958,
.dtf-stage-head-v1958{
  border:1px solid rgba(255,255,255,.08);
  background:#101114;
}
.dtf-kpis-v1958>div{
  padding:13px 14px;border-radius:14px;
  background:linear-gradient(180deg,#121317,#0d0d10);
}
.dtf-kpis-v1958 small,.dtf-hero-user-v1958 small,.dtf-admin-state-v1958 small,.dtf-stage-head-v1958 small{display:block;color:#75757e;font-size:8px;font-weight:900;letter-spacing:.1em}
.dtf-kpis-v1958 b,.dtf-admin-state-v1958 b{display:block;margin-top:5px;color:#fff;font-size:15px}
.dtf-hero-panel-v1958{padding:16px;border-radius:18px;display:grid;gap:14px;align-content:start}
.dtf-hero-user-v1958 b{display:block;margin-top:5px;font-size:18px;color:#fff}
.dtf-hero-user-v1958 span{display:block;margin-top:5px;font-size:10px;color:#8c8c93;line-height:1.5}
.dtf-hero-actions-v1958{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dtf-hero-actions-v1958 .btn strong{display:inline-block;min-width:18px;margin-left:6px;padding:1px 5px;border-radius:999px;background:rgba(255,255,255,.12);font-size:9px}
.dtf-admin-bar-v1958{
  display:grid;grid-template-columns:minmax(250px,330px) 1fr auto;gap:14px;
  padding:16px;border-radius:18px;
}
.dtf-admin-field-v1958 label{display:block;margin-bottom:7px;color:#8d8d94;font-size:10px;font-weight:900;letter-spacing:.05em}
.dtf-admin-field-v1958 select{
  width:100%;min-height:48px;padding:0 14px;border-radius:12px;border:1px solid #2f3138;
  background:#0d0e11;color:#fff;font:inherit;outline:none;
}
.dtf-admin-field-v1958 select:focus{border-color:#e30613}
.dtf-admin-state-v1958{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dtf-admin-state-v1958>div{padding:12px 13px;border-radius:13px;background:linear-gradient(180deg,#14161b,#101115);border:1px solid #2b2f35}
.dtf-admin-state-v1958 b.ok{color:#94e4a8}
.dtf-admin-state-v1958 b.bad{color:#ff9da4}
.dtf-admin-actions-v1958{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.dtf-module-stage-v1958{display:grid;gap:10px}
.dtf-stage-head-v1958{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 16px;border-radius:16px;
}
.dtf-stage-head-v1958 b{display:block;margin-top:5px;font-size:16px;color:#fff}
.dtf-stage-head-v1958 span{max-width:640px;color:#8d8d94;font-size:10px;line-height:1.55;text-align:right}
.dtf-frame-shell-v1958{
  padding:16px;border-radius:20px;
  background:
    linear-gradient(180deg,rgba(12,12,14,.98),rgba(8,8,10,.98));
  box-shadow:0 24px 70px rgba(0,0,0,.20);
}
.dtf-frame-v1958{
  width:100%;height:980px;border:0;border-radius:16px;background:transparent;display:block;
}
@media(max-width:1100px){
  .dtf-hero-v1958{grid-template-columns:1fr}
  .dtf-admin-bar-v1958{grid-template-columns:1fr}
  .dtf-admin-state-v1958{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dtf-stage-head-v1958{align-items:flex-start;flex-direction:column}
  .dtf-stage-head-v1958 span{text-align:left}
}
@media(max-width:720px){
  .dtf-hero-v1958{padding:18px}
  .dtf-hero-copy-v1958 h1{font-size:29px}
  .dtf-kpis-v1958,.dtf-admin-state-v1958,.dtf-hero-actions-v1958{grid-template-columns:1fr}
  .dtf-frame-shell-v1958{padding:12px}
  .dtf-frame-v1958{height:1260px}
}

/* ==========================================================
   V1.9.5.9 · AUDITORÍA OPERATIVA · PAPELERÍA / CESTA / PLV
   ========================================================== */
.paper-admin-context-v1959,.plv-admin-context-v1959{
  max-width:1180px;margin:12px auto 0;padding:14px;
  display:grid;grid-template-columns:minmax(260px,330px) 1fr auto;gap:12px;align-items:end;
  border:1px solid #2b2d33;border-radius:15px;background:#101114;color:#fff;
}
.paper-admin-client-v1959 label,.plv-admin-context-v1959 label{display:block;margin-bottom:6px;color:#82828b;font-size:8px;font-weight:900;letter-spacing:.1em}
.paper-admin-client-v1959 select,.plv-admin-context-v1959 select{width:100%;min-height:44px;padding:0 12px;border:1px solid #34363d;border-radius:10px;background:#0b0c0e;color:#fff}
.paper-admin-meta-v1959{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.paper-admin-meta-v1959>div{padding:10px 11px;border:1px solid #2c2e34;border-radius:10px;background:#141519}
.paper-admin-meta-v1959 small{display:block;color:#73737c;font-size:7px;font-weight:900;letter-spacing:.08em}
.paper-admin-meta-v1959 b{display:block;margin-top:4px;font-size:10px;color:#fff}
.paper-admin-meta-v1959 b.ok,.plv-admin-summary-v1959 b.ok{color:#94dda8}.paper-admin-meta-v1959 b.bad,.plv-admin-summary-v1959 b.bad{color:#ff959d}
.paper-admin-context-actions-v1959{display:flex;gap:7px;flex-wrap:wrap}
.paperAdminCartLink-v1959{display:inline-flex;align-items:center;border:1px solid #43434a!important;background:#18181b!important;color:#fff!important;padding:8px 10px;border-radius:8px;text-decoration:none;font-size:10px;font-weight:800}
.paper-cart-cta-v1959{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:14px 15px;border:1px solid #34363c;border-left:4px solid #e30613;border-radius:12px;background:linear-gradient(90deg,#151518,#101012)}
.paper-cart-cta-v1959 small{display:block;color:#e87880;font-size:8px;font-weight:900;letter-spacing:.1em}.paper-cart-cta-v1959 b{display:block;margin-top:4px;color:#fff;font-size:12px}.paper-cart-cta-v1959 span{display:block;margin-top:3px;color:#85858e;font-size:9px}.paper-cart-cta-actions-v1959{display:flex;gap:8px;flex-wrap:wrap}
.plv-admin-summary-v1959{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.plv-admin-summary-v1959 span{color:#81818a;font-size:9px}.plv-admin-summary-v1959 b{display:block;margin-top:3px;color:#fff;font-size:11px}
@media(max-width:900px){.paper-admin-context-v1959,.plv-admin-context-v1959{grid-template-columns:1fr}.paper-admin-meta-v1959{grid-template-columns:repeat(2,minmax(0,1fr))}.paper-cart-cta-v1959{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.paper-admin-meta-v1959{grid-template-columns:1fr}.paper-cart-cta-actions-v1959{width:100%}.paper-cart-cta-actions-v1959 .btn{flex:1 1 auto}}


/* ==========================================================
   V1.9.5.11 · CALENDARIO / PLANNING · LEGIBILIDAD + UI PREMIUM
   ========================================================== */
.planning-shell-v194{
  display:grid;
  gap:14px;
}
.planning-hero-v194{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:
    radial-gradient(950px 240px at 12% -8%, rgba(227,6,19,.14), transparent 45%),
    linear-gradient(135deg, rgba(18,18,22,.98), rgba(9,9,11,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.18);
}
.planning-hero-v194 h1{
  margin:8px 0 6px;
  color:#fff;
  font-size:34px;
  letter-spacing:-.04em;
}
.planning-hero-v194 p{
  margin:0;
  color:#8d8d95;
  font-size:12px;
  line-height:1.6;
}
.planning-hero-actions-v194{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.planning-kpis-v194{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.planning-kpis-v194>a,
.planning-kpis-v194>div{
  display:block;
  padding:14px 15px;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:linear-gradient(180deg,#131417,#0d0e11);
  box-shadow:0 12px 32px rgba(0,0,0,.14);
}
.planning-kpis-v194>a:hover{
  border-color:rgba(227,6,19,.45);
  transform:translateY(-1px);
}
.planning-kpis-v194 small{
  display:block;
  color:#72727c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
}
.planning-kpis-v194 b{
  display:block;
  margin-top:8px;
  color:#fff;
  font-size:25px;
  line-height:1;
}
.planning-kpis-v194 span{
  display:block;
  margin-top:7px;
  color:#8a8a92;
  font-size:10px;
  line-height:1.45;
}
.planning-kpis-v194 .danger{
  border-color:rgba(255,120,128,.35);
  background:linear-gradient(180deg,#211214,#140b0c);
}
.planning-kpis-v194 .warning{
  border-color:rgba(232,179,63,.35);
  background:linear-gradient(180deg,#211b11,#14100b);
}

.planning-toolbar-v194{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(180deg,#131417,#0f1012);
}
.planning-view-tabs-v194{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.planning-view-tabs-v194 a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 15px;
  border:1px solid #303139;
  border-radius:12px;
  background:#121316;
  color:#c7c7cd;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  transition:.18s ease;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.planning-view-tabs-v194 a:hover{
  color:#fff;
  border-color:#4a4d57;
  transform:translateY(-1px);
}
.planning-view-tabs-v194 a.active{
  background:linear-gradient(180deg,#e30613,#b60610);
  border-color:#e30613;
  color:#fff;
  box-shadow:0 10px 24px rgba(227,6,19,.25);
}
.planning-period-nav-v194{
  display:flex;
  align-items:center;
  gap:8px;
}
.planning-period-nav-v194 a{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:11px;
  border:1px solid #303139;
  background:#111214;
  color:#fff;
  text-decoration:none;
  font-weight:900;
}
.planning-period-nav-v194 a:hover{
  border-color:#e30613;
}
.planning-period-nav-v194 b{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:#0f1012;
  color:#fff;
  font-size:11px;
  letter-spacing:.03em;
}

.planning-filters-v194{
  display:grid;
  grid-template-columns:minmax(240px,1.4fr) repeat(5,minmax(0,1fr)) auto auto;
  gap:10px;
  align-items:end;
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(180deg,#121316,#0d0e10);
}
.planning-search-v194{
  position:relative;
}
.planning-search-v194 span{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:#6f7078;
  font-size:12px;
  pointer-events:none;
}
.planning-filters-v194 input,
.planning-filters-v194 select,
.planning-search-v194 input{
  width:100%;
  min-height:44px;
  padding:0 12px;
  border:1px solid #2f3138;
  border-radius:12px;
  background:#0b0c0f;
  color:#fff;
  font:inherit;
  outline:none;
}
.planning-search-v194 input{
  padding-left:34px;
}
.planning-filters-v194 input:focus,
.planning-filters-v194 select:focus,
.planning-search-v194 input:focus{
  border-color:#e30613;
  box-shadow:0 0 0 1px rgba(227,6,19,.22);
}

.planning-week-v194{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:10px;
}
.planning-day-v194,
.planning-month-day-v194,
.planning-flow-col-v194,
.planning-list-v194>a,
.planning-list-v194>div{
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,#131417,#0d0e11);
}
.planning-day-v194{
  min-height:420px;
  border-radius:18px;
  padding:12px;
}
.planning-day-v194.today,
.planning-month-day-v194.today{
  box-shadow:inset 0 0 0 1px rgba(227,6,19,.65), 0 0 0 1px rgba(227,6,19,.18);
}
.planning-day-v194 header,
.planning-month-day-v194 header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.planning-day-v194 header small,
.planning-month-day-v194 header small{
  display:block;
  color:#70707a;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
}
.planning-day-v194 header b,
.planning-month-day-v194 header b{
  display:block;
  margin-top:4px;
  color:#fff;
  font-size:16px;
}
.planning-capacity-v194{
  min-width:115px;
}
.planning-capacity-v194 span{
  display:block;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:#202228;
  border:1px solid #2f3138;
}
.planning-capacity-v194 span i{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#b90b16,#ef2b36);
}
.planning-capacity-v194.over span i{
  background:linear-gradient(90deg,#d49a18,#ffbf37);
}
.planning-capacity-v194 small{
  display:block;
  margin-top:6px;
  color:#8c8c95;
  font-size:8px;
  text-align:right;
}

.planning-day-jobs-v194,
.planning-flow-col-v194>div{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.planning-drop-hint-v194,
.planning-flow-drop-v194{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  border:1px dashed #363942;
  border-radius:10px;
  color:#6f7078;
  font-size:9px;
  font-weight:800;
  letter-spacing:.06em;
  background:rgba(255,255,255,.01);
}
[data-drop-date].drag-over,
[data-drop-status].drag-over{
  box-shadow:inset 0 0 0 2px rgba(227,6,19,.55);
}

.planning-month-v194{
  display:grid;
  gap:10px;
}
.planning-month-weekdays-v194{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:10px;
}
.planning-month-weekdays-v194 b{
  display:grid;
  place-items:center;
  min-height:36px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:#101114;
  color:#84848d;
  font-size:9px;
  letter-spacing:.1em;
}
.planning-month-grid-v194{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:10px;
}
.planning-month-day-v194{
  min-height:180px;
  padding:10px;
  border-radius:16px;
}
.planning-month-day-v194.other{
  opacity:.62;
}
.planning-month-day-v194>div{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.planning-more-v194{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:9px;
  background:#0f1012;
  border:1px solid #2c2e35;
  color:#bdbdc4;
  font-size:9px;
  font-weight:800;
}

.planning-flow-v194{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.planning-flow-col-v194{
  border-radius:18px;
  padding:12px;
}
.planning-flow-col-v194>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.planning-flow-col-v194>header span{
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
}
.planning-flow-col-v194>header b{
  display:grid;
  place-items:center;
  min-width:28px;
  height:28px;
  padding:0 6px;
  border-radius:999px;
  background:#0d0e10;
  border:1px solid #2c2e35;
  color:#fff;
  font-size:11px;
}
.planning-flow-col-v194.status-received{box-shadow:inset 0 0 0 1px rgba(125,139,160,.22)}
.planning-flow-col-v194.status-review{box-shadow:inset 0 0 0 1px rgba(233,181,59,.22)}
.planning-flow-col-v194.status-production,
.planning-flow-col-v194.status-finishing{box-shadow:inset 0 0 0 1px rgba(227,6,19,.22)}
.planning-flow-col-v194.status-ready,
.planning-flow-col-v194.status-completed{box-shadow:inset 0 0 0 1px rgba(61,182,103,.22)}

.planning-list-v194{
  display:grid;
  gap:10px;
}
.planning-list-v194>a{
  display:grid;
  grid-template-columns:140px 1fr auto;
  gap:14px;
  align-items:center;
  padding:14px;
  text-decoration:none;
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}
.planning-list-v194>a:hover{
  border-color:rgba(227,6,19,.45);
}
.planning-list-v194 small{
  display:block;
  color:#7e7e87;
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
}
.planning-list-v194 b{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:14px;
}
.planning-list-v194 span{
  display:block;
  margin-top:4px;
  color:#9b9ba4;
  font-size:10px;
}
.planning-list-date-v194{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 12px;
  border-radius:12px;
  border:1px solid #2c2f37;
  background:#101114;
  color:#fff;
  font-size:10px;
  font-weight:900;
}
.planning-list-date-v194.overdue{border-color:rgba(255,117,126,.42); color:#ffb2b7}
.planning-list-date-v194.today{border-color:rgba(227,6,19,.42); color:#ffd7da}
.planning-list-date-v194.soon{border-color:rgba(233,181,59,.36); color:#ffd67d}

.planning-job-card-v194{
  display:block;
  width:100%;
  text-align:left;
  padding:12px;
  border:1px solid #2c2f37;
  border-left-width:4px;
  border-radius:14px;
  background:#0f1013;
  color:#fff;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(0,0,0,.10);
}
.planning-job-card-v194:hover{
  border-color:#3a3d46;
  transform:translateY(-1px);
}
.planning-job-card-v194.compact{
  padding:9px 10px;
  border-radius:11px;
}
.planning-job-card-v194 strong{
  display:block;
  color:#fff;
  font-size:11px;
  line-height:1.35;
}
.planning-job-card-v194 small{
  display:block;
  margin-top:4px;
  color:#8a8a93;
  font-size:9px;
}
.planning-card-top-v194,
.planning-card-meta-v194,
.planning-card-foot-v194{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.planning-card-top-v194{
  margin-bottom:8px;
}
.planning-card-meta-v194{
  margin-top:8px;
}
.planning-card-foot-v194{
  margin-top:9px;
}
.planning-card-top-v194 i,
.planning-card-top-v194 em,
.planning-card-meta-v194 i,
.planning-card-foot-v194 i{
  font-style:normal;
}
.planning-card-top-v194 i{
  display:inline-flex;
  align-items:center;
  min-height:21px;
  padding:0 8px;
  border-radius:999px;
  background:#17191d;
  color:#bdbdc4;
  font-size:8px;
  font-weight:900;
  letter-spacing:.06em;
}
.planning-card-top-v194 em{
  color:#d8d8de;
  font-size:8px;
  font-weight:900;
}
.planning-card-meta-v194 b{
  color:#fff;
  font-size:9px;
}
.planning-card-meta-v194 i,
.planning-card-foot-v194 i{
  color:#8e8f97;
  font-size:8px;
}
.planning-card-foot-v194 b{
  font-size:8px;
}
.planning-job-card-v194.received{
  border-left-color:#70829c;
  background:linear-gradient(180deg,#14171d,#0f1114);
}
.planning-job-card-v194.review{
  border-left-color:#e5b241;
  background:linear-gradient(180deg,#1a1710,#11100d);
}
.planning-job-card-v194.production,
.planning-job-card-v194.finishing{
  border-left-color:#e30613;
  background:linear-gradient(180deg,#1b1113,#120c0d);
}
.planning-job-card-v194.ready,
.planning-job-card-v194.completed{
  border-left-color:#2db167;
  background:linear-gradient(180deg,#101813,#0c110d);
}
.planning-job-card-v194.shipped{
  border-left-color:#3c7ddd;
  background:linear-gradient(180deg,#101521,#0c1017);
}
.planning-job-card-v194.cancelled{
  border-left-color:#767a81;
  background:linear-gradient(180deg,#161719,#111214);
}

.planning-modal-v194{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(3,4,6,.74);
  backdrop-filter:blur(5px);
  z-index:70;
}
.planning-modal-v194.show{
  display:flex;
}
.planning-modal-box-v194{
  width:min(860px,100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:linear-gradient(180deg,#15161a,#0f1012);
  box-shadow:0 24px 75px rgba(0,0,0,.32);
  color:#fff;
}
.planning-modal-close-v194{
  position:absolute;
  margin-top:-6px;
  right:30px;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid #343841;
  background:#121317;
  color:#fff;
  cursor:pointer;
}
.planning-edit-head-v194{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}
.planning-edit-head-v194 h2{
  margin:8px 0 5px;
  color:#fff;
  font-size:28px;
}
.planning-edit-ref-v194{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:12px;
}
.planning-edit-ref-v194 span{
  display:block;
  padding:12px;
  border:1px solid #2f3138;
  border-radius:12px;
  background:#0d0e11;
}
.planning-edit-ref-v194 small{
  display:block;
  color:#72727b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
}
.planning-edit-ref-v194 b{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:12px;
}
.planning-edit-form-v194{
  display:grid;
  gap:14px;
}
.planning-edit-grid-v194{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.planning-edit-grid-v194 .span2{
  grid-column:1/-1;
}
.planning-edit-grid-v194 label{
  display:block;
  margin-bottom:6px;
  color:#8a8a92;
  font-size:9px;
  font-weight:900;
  letter-spacing:.06em;
}
.planning-edit-grid-v194 input,
.planning-edit-grid-v194 select,
.planning-edit-grid-v194 textarea{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border:1px solid #2f3138;
  border-radius:12px;
  background:#0b0c0f;
  color:#fff;
  font:inherit;
  outline:none;
}
.planning-edit-grid-v194 textarea{
  min-height:104px;
  resize:vertical;
}
.planning-edit-grid-v194 input:focus,
.planning-edit-grid-v194 select:focus,
.planning-edit-grid-v194 textarea:focus{
  border-color:#e30613;
  box-shadow:0 0 0 1px rgba(227,6,19,.24);
}
.planning-modal-actions-v194,
.planning-delete-v194{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
}
.planning-portal-note-v194{
  margin-top:4px;
}
.planning-toast-v194{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:80;
  min-width:240px;
  max-width:360px;
  padding:12px 14px;
  border-radius:13px;
  border:1px solid #31343c;
  background:#101114;
  color:#fff;
  box-shadow:0 16px 42px rgba(0,0,0,.30);
  display:none;
}
.planning-toast-v194.show{
  display:block;
}
.planning-toast-v194.ok{
  border-color:#25563a;
  background:#101912;
}
.planning-toast-v194.error{
  border-color:#6d2b31;
  background:#1b1011;
}

/* cliente */
.planning-client-hero-v194{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding:20px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:
    radial-gradient(800px 220px at 12% -5%, rgba(227,6,19,.12), transparent 42%),
    linear-gradient(135deg, rgba(18,18,22,.98), rgba(9,9,11,.96));
}
.planning-client-hero-v194 h1{
  margin:7px 0 5px;
  color:#fff;
  font-size:30px;
  letter-spacing:-.04em;
}
.planning-client-hero-v194 .muted{
  color:#8d8d95;
}
.planning-client-month-title-v194{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:2px 2px 0;
}
.planning-client-month-title-v194 h2{
  margin:0;
  color:#fff;
  font-size:24px;
}
.planning-client-month-title-v194 span{
  color:#8b8b93;
  font-size:11px;
}

.production-calendar-v193.planning-calendar-v194{
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  overflow:hidden;
  background:#0f1012;
}
.planning-calendar-v194 .calendar-weekdays-v193{
  background:#131418;
}
.planning-calendar-v194 .calendar-weekdays-v193 b{
  border-right:1px solid #25272d;
  color:#8e8e96;
  font-size:8px;
}
.planning-calendar-v194 .calendar-grid-v193{
  background:#0f1012;
}
.planning-calendar-v194 .calendar-day-v193{
  min-height:152px;
  border-right:1px solid #23252a;
  border-bottom:1px solid #23252a;
  background:#111216;
  color:#fff;
}
.planning-calendar-v194 .calendar-day-v193.other{
  background:#0b0c0e;
  color:#5f6069;
}
.planning-calendar-v194 .calendar-date-v193>span{
  color:#fff;
}
.planning-calendar-v194 .calendar-job-v193{
  background:#17191d;
  color:#fff;
  border-left-color:#6d7788;
  border:1px solid #272b33;
  border-left-width:3px;
  border-radius:9px;
}
.planning-calendar-v194 .calendar-job-v193 small,
.planning-calendar-v194 .calendar-job-v193 span{
  color:#a5a6ad;
}
.planning-calendar-v194 .calendar-job-v193 b{
  color:#fff;
  font-size:9px;
}
.planning-calendar-v194 .calendar-job-v193.review{
  background:#1a1710;
  border-left-color:#d7aa2c;
}
.planning-calendar-v194 .calendar-job-v193.production,
.planning-calendar-v194 .calendar-job-v193.finishing{
  background:#1c1012;
  border-left-color:#e30613;
}
.planning-calendar-v194 .calendar-job-v193.ready{
  background:#101813;
  border-left-color:#28a056;
}
.planning-calendar-v194 .calendar-job-v193.shipped{
  background:#101521;
  border-left-color:#3b7bdd;
}
.planning-calendar-v194 .calendar-job-v193.cancelled{
  background:#17181a;
  border-left-color:#757983;
}
.planning-calendar-v194 .calendar-day-v193.today{
  box-shadow:inset 0 0 0 2px #e30613;
}
.calendar-list-v193{
  display:grid;
  gap:10px;
}
.calendar-list-v193>a{
  display:grid;
  grid-template-columns:130px 1fr auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:15px;
  background:linear-gradient(180deg,#121316,#0d0e10);
  color:#fff;
  text-decoration:none;
}
.calendar-list-v193>a:hover{
  border-color:rgba(227,6,19,.45);
}
.calendar-list-v193>div.empty-clean-v180{
  border:1px solid rgba(255,255,255,.08);
  border-radius:15px;
  background:#111214;
}
.calendar-list-date-v193{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 10px;
  border-radius:11px;
  background:#0d0e10;
  border:1px solid #2d2f36;
  color:#fff;
  font-size:10px;
  font-weight:900;
}
.calendar-list-date-v193.overdue{border-color:rgba(255,120,128,.42);color:#ffb0b6}
.calendar-list-date-v193.today{border-color:rgba(227,6,19,.42);color:#ffd7da}
.calendar-list-date-v193.soon{border-color:rgba(233,181,59,.36);color:#ffd77e}

/* estados más legibles sobre la base oscura */
.prod-status-v193{
  background:#15171b;
  color:#eef2f6;
  border:1px solid #2c3138;
}
.prod-status-v193.received{
  background:#151a21;
  color:#dce7f4;
  border-color:#344356;
}
.prod-status-v193.review{
  background:#241b0d;
  color:#ffd97f;
  border-color:#7b5d1d;
}
.prod-status-v193.production,
.prod-status-v193.finishing{
  background:#2a1013;
  color:#ffb9bf;
  border-color:#8b2930;
}
.prod-status-v193.ready,
.prod-status-v193.completed{
  background:#0f1f15;
  color:#9fe2b4;
  border-color:#285940;
}
.prod-status-v193.shipped{
  background:#102033;
  color:#a9cbff;
  border-color:#2f5c98;
}
.prod-status-v193.cancelled{
  background:#1a1b1f;
  color:#babcc3;
  border-color:#454850;
}
body.role-workshop .prod-status-v193.received{
  background:#151a21;
  color:#dce7f4;
}
.role-workshop .prod-status-v193.review{
  background:#241b0d;
  color:#ffd97f;
}
.role-workshop .prod-status-v193.production,
.role-workshop .prod-status-v193.finishing{
  background:#2a1013;
  color:#ffb9bf;
}
.role-workshop .prod-status-v193.ready{
  background:#0f1f15;
  color:#9fe2b4;
}

@media(max-width:1180px){
  .planning-kpis-v194{grid-template-columns:repeat(3,minmax(0,1fr))}
  .planning-filters-v194{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(0,1fr))}
  .planning-flow-v194{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:980px){
  .planning-hero-v194,
  .planning-client-hero-v194,
  .planning-toolbar-v194{
    align-items:flex-start;
    flex-direction:column;
  }
  .planning-week-v194,
  .planning-month-grid-v194,
  .planning-month-weekdays-v194{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .planning-filters-v194{grid-template-columns:1fr 1fr}
  .planning-flow-v194{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-list-v194>a,
  .calendar-list-v193>a{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .planning-kpis-v194,
  .planning-week-v194,
  .planning-month-grid-v194,
  .planning-month-weekdays-v194,
  .planning-flow-v194,
  .planning-edit-grid-v194{
    grid-template-columns:1fr;
  }
  .planning-filters-v194{
    grid-template-columns:1fr;
  }
  .planning-view-tabs-v194{
    width:100%;
  }
  .planning-view-tabs-v194 a{
    flex:1 1 auto;
  }
  .planning-period-nav-v194{
    width:100%;
    justify-content:space-between;
  }
  .planning-edit-ref-v194{
    grid-template-columns:1fr;
  }
  .planning-hero-v194,
  .planning-client-hero-v194{
    padding:18px;
  }
  .planning-hero-v194 h1,
  .planning-client-hero-v194 h1{
    font-size:28px;
  }
}


/* ==========================================================
   V1.9.5.12 · FORMULARIOS SOMOS IMAGEN · PRESUPUESTO / PEDIDO / OT
   ========================================================== */
.somos-doc-top-actions-v19512{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px}.somos-doc-top-actions-v19512 .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.somos-doc-workspace-v19512{display:grid;grid-template-columns:330px minmax(0,850px);gap:18px;align-items:start;justify-content:center}
.somos-doc-editor-v19512{position:sticky;top:84px;padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(180deg,#15161a,#0d0e10);box-shadow:0 20px 55px rgba(0,0,0,.18);color:#fff}
.somos-doc-editor-head-v19512 span{display:block;color:#e30613;font-size:8px;font-weight:900;letter-spacing:.13em}.somos-doc-editor-head-v19512 h2{margin:6px 0 6px;font-size:24px}.somos-doc-editor-head-v19512 p{margin:0;color:#8b8b94;font-size:10px;line-height:1.55}
.somos-doc-editor-grid-v19512{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.somos-doc-editor-grid-v19512 label{display:block}.somos-doc-editor-grid-v19512 label.span2{grid-column:1/-1}.somos-doc-editor-grid-v19512 label>span{display:block;margin-bottom:6px;color:#92929a;font-size:8px;font-weight:900;letter-spacing:.06em}.somos-doc-editor-grid-v19512 input,.somos-doc-editor-grid-v19512 textarea{width:100%;padding:10px 11px;border:1px solid #30323a;border-radius:11px;background:#0b0c0f;color:#fff;font:inherit;outline:none}.somos-doc-editor-grid-v19512 input:focus,.somos-doc-editor-grid-v19512 textarea:focus{border-color:#e30613;box-shadow:0 0 0 1px rgba(227,6,19,.2)}.somos-doc-editor-grid-v19512 textarea{resize:vertical}
.somos-doc-editor-help-v19512{margin-top:13px;padding:11px;border-left:3px solid #e30613;border-radius:8px;background:#101114}.somos-doc-editor-help-v19512 b{display:block;font-size:10px}.somos-doc-editor-help-v19512 span{display:block;margin-top:4px;color:#888891;font-size:9px;line-height:1.45}.somos-doc-meta-status-v19512{min-height:18px;margin-top:10px;font-size:9px;font-weight:800}.somos-doc-meta-status-v19512.ok{color:#8fdfa7}.somos-doc-meta-status-v19512.bad{color:#ff9aa1}

.somos-a4-v19512{width:210mm;min-height:297mm;margin:0 auto 28px;background:#fff;color:#151515;border:1px solid #d8dadd;box-shadow:0 26px 75px rgba(0,0,0,.22);overflow:hidden}
.somos-a4-head-v19512{height:52mm;background:#050505;overflow:hidden;display:flex;align-items:center}.somos-a4-head-v19512 img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.somos-a4-redline-v19512{height:3.5mm;background:#e30613}
.somos-a4-title-v19512{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:14mm 15mm 8mm}.somos-a4-title-v19512 small,.somos-a4-ref-v19512 small,.somos-a4-meta-v19512 small,.somos-a4-party-v19512 small,.somos-a4-observations-v19512 small,.somos-a4-workgrid-v19512 small{display:block;color:#96999e;font-size:7.5pt;font-weight:900;letter-spacing:.12em}.somos-a4-title-v19512 h1{margin:2mm 0 0;font-size:27pt;letter-spacing:.02em}.somos-a4-ref-v19512{text-align:right;padding:3mm 4mm;border:1px solid #e1e3e5;border-radius:3mm;background:#f6f7f8;min-width:48mm}.somos-a4-ref-v19512 b{display:block;margin-top:2mm;font-size:10pt}
.somos-a4-meta-v19512{display:grid;grid-template-columns:repeat(4,1fr);margin:0 15mm;border-top:1px solid #e4e5e7;border-bottom:1px solid #e4e5e7}.somos-a4-meta-v19512>div{padding:4mm 3mm;border-right:1px solid #e4e5e7}.somos-a4-meta-v19512>div:last-child{border-right:0}.somos-a4-meta-v19512 b{display:block;margin-top:1.7mm;font-size:8.8pt}
.somos-a4-party-v19512{display:grid;grid-template-columns:1.2fr .8fr;gap:12mm;padding:9mm 15mm;border-bottom:1px solid #e4e5e7}.somos-a4-party-v19512 h2,.somos-a4-party-v19512 h3{margin:2mm 0 1.5mm}.somos-a4-party-v19512 h2{font-size:16pt}.somos-a4-party-v19512 h3{font-size:12pt}.somos-a4-party-v19512 p{margin:0;color:#656970;font-size:8.7pt;line-height:1.55}
.somos-a4-section-v19512{padding:8mm 15mm;border-bottom:1px solid #e4e5e7}.somos-a4-section-head-v19512{display:flex;align-items:center;gap:3mm;margin-bottom:5mm}.somos-a4-section-head-v19512>span{width:8mm;height:8mm;display:grid;place-items:center;border-radius:2mm;background:#e30613;color:#fff;font-size:7pt;font-weight:900}.somos-a4-section-head-v19512 small{display:block;color:#9a9da1;font-size:7pt;font-weight:900;letter-spacing:.12em}.somos-a4-section-head-v19512 h2{margin:1mm 0 0;font-size:13pt}.somos-a4-config-v19512{padding:5mm;border:1px solid #e5e6e8;border-radius:3mm;background:#f7f7f8;font-size:9pt;line-height:1.62}
.somos-a4-finance-v19512{display:grid;grid-template-columns:1fr 72mm;gap:10mm;padding:8mm 15mm}.somos-a4-finance-v19512 h3{font-size:11pt;margin:0 0 3mm}.somos-a4-finance-v19512 p{font-size:8.7pt;color:#666a70}.somos-a4-line-v19512,.somos-a4-total-v19512>div{display:flex;align-items:center;justify-content:space-between;gap:8mm;padding:3mm 0;border-bottom:1px solid #e7e8ea;font-size:8.7pt}.somos-a4-line-v19512.accent{color:#e30613;font-weight:900}.somos-a4-total-v19512 .grand{border-top:2px solid #171719;border-bottom:0;margin-top:1.5mm;padding-top:4mm}.somos-a4-total-v19512 .grand b{font-size:15pt}
.somos-a4-observations-v19512{margin:0 15mm 8mm;padding:5mm;border:1px solid #e3e5e7;border-left:3px solid #e30613;border-radius:2.5mm;background:#fafafa}.somos-a4-observations-v19512 p{margin:2mm 0 0;color:#60646a;font-size:8.7pt;line-height:1.55}
.somos-a4-foot-v19512{display:flex;align-items:flex-end;justify-content:space-between;gap:10mm;margin-top:auto;padding:5mm 15mm;background:#f1f2f3;color:#777b81;font-size:7.2pt}.somos-a4-foot-v19512 b{display:block;color:#222;font-size:7.8pt}.somos-a4-foot-v19512 span{display:block;margin-top:1mm}
.somos-a4-timeline-v19512{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin-top:3mm}.somos-a4-timeline-v19512>div{position:relative;text-align:center;padding-top:8mm}.somos-a4-timeline-v19512>div:before{content:"";position:absolute;left:0;right:0;top:3.5mm;height:1px;background:#d8dadd}.somos-a4-timeline-v19512 i{position:absolute;top:1.5mm;left:50%;width:4mm;height:4mm;margin-left:-2mm;border-radius:50%;background:#d5d7da;border:1px solid #c9cbd0}.somos-a4-timeline-v19512 .done i{background:#e30613;border-color:#e30613}.somos-a4-timeline-v19512 .current b{color:#e30613}.somos-a4-timeline-v19512 b{display:block;font-size:7.2pt}
.somos-a4-order-list-v19512{display:flex;flex-direction:column;gap:0}.somos-a4-order-list-v19512 article{display:grid;grid-template-columns:minmax(0,1fr) 38mm 40mm;gap:5mm;align-items:center;padding:4mm 0;border-bottom:1px solid #e8e9eb}.somos-a4-order-list-v19512 article:last-child{border-bottom:0}.somos-a4-order-list-v19512 small{display:block;color:#8f9297;font-size:7pt;font-weight:900}.somos-a4-order-list-v19512 h4{margin:1mm 0;font-size:10pt}.somos-a4-order-list-v19512 p,.somos-a4-order-list-v19512 span{margin:0;color:#73777c;font-size:7.6pt;line-height:1.45}.somos-a4-order-list-v19512 .price{text-align:right}.somos-a4-order-list-v19512 .price b{display:block;margin:1mm 0;font-size:10pt}.somos-a4-ot-link-v19512{display:inline-flex;margin-top:2mm;color:#e30613;text-decoration:none;font-size:7pt;font-weight:900}
.somos-a4-workgrid-v19512{display:grid;grid-template-columns:repeat(2,1fr);gap:4mm}.somos-a4-workgrid-v19512>div{padding:4mm;border:1px solid #e2e4e6;border-radius:2.5mm;background:#f7f8f8}.somos-a4-workgrid-v19512 b{display:block;margin-top:2mm;font-size:9pt}
.somos-a4-sign-v19512{display:grid;grid-template-columns:repeat(4,1fr);gap:4mm;padding:7mm 15mm 10mm}.somos-a4-sign-v19512>div{height:24mm;border:1px solid #dfe1e4;border-radius:2.5mm;display:flex;align-items:flex-end;padding:3mm}.somos-a4-sign-v19512 span{font-size:6.8pt;color:#8e9298;font-weight:900;letter-spacing:.08em}
.somos-a4-alert-v19512{padding:4mm;border:1px solid #e5b3b7;border-radius:2mm;background:#fff4f4;color:#9e252d;font-size:9pt;font-weight:900}
.somos-a4-v19512.workorder .somos-a4-title-v19512 h1{font-size:23pt}

@media(max-width:1180px){.somos-doc-workspace-v19512{grid-template-columns:1fr}.somos-doc-editor-v19512{position:static;max-width:850px;margin:0 auto;width:100%}.somos-a4-v19512{width:min(100%,210mm);min-height:0}}
@media(max-width:720px){.somos-doc-top-actions-v19512{align-items:flex-start;flex-direction:column}.somos-doc-editor-grid-v19512{grid-template-columns:1fr}.somos-doc-editor-grid-v19512 label.span2{grid-column:auto}.somos-a4-meta-v19512,.somos-a4-party-v19512,.somos-a4-finance-v19512,.somos-a4-workgrid-v19512{grid-template-columns:1fr}.somos-a4-meta-v19512>div{border-right:0;border-bottom:1px solid #e4e5e7}.somos-a4-order-list-v19512 article{grid-template-columns:1fr}.somos-a4-order-list-v19512 .price{text-align:left}.somos-a4-timeline-v19512{grid-template-columns:repeat(3,1fr);row-gap:4mm}.somos-a4-sign-v19512{grid-template-columns:1fr 1fr}}

@media print{
  @page{size:A4;margin:0}
  html,body{background:#fff!important}
  .topbar,.portal-legal-footer-v190,.no-print,.somos-doc-editor-v19512{display:none!important}
  .container-v180{max-width:none!important;padding:0!important;margin:0!important}
  .somos-doc-workspace-v19512{display:block!important}
  .somos-a4-v19512{width:210mm!important;min-height:297mm!important;margin:0!important;border:0!important;box-shadow:none!important}
  .somos-a4-head-v19512,.somos-a4-redline-v19512,.somos-a4-section-head-v19512>span{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* V1.9.5.17 · Documentos de clientes en Administración */
.admin-doc-kpis-v19517{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.admin-doc-kpis-v19517>a,.admin-doc-kpis-v19517>div{padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:linear-gradient(180deg,#141518,#0e0f11);text-decoration:none;color:#fff}.admin-doc-kpis-v19517>a:hover{border-color:rgba(227,6,19,.45)}.admin-doc-kpis-v19517 small{display:block;color:#767680;font-size:8px;font-weight:900;letter-spacing:.1em}.admin-doc-kpis-v19517 b{display:block;margin-top:7px;font-size:26px}.admin-doc-kpis-v19517 span{display:block;margin-top:5px;color:#8c8c94;font-size:9px}
.admin-doc-list-v19517{display:grid;gap:10px}.admin-doc-row-v19517{display:grid;grid-template-columns:120px minmax(0,1fr) 150px auto;gap:14px;align-items:center;padding:14px 15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:linear-gradient(180deg,#131417,#0e0f11)}.admin-doc-row-v19517:hover{border-color:rgba(227,6,19,.35)}.admin-doc-type-v19517{display:grid;gap:7px;justify-items:start}.somos-form-badge-v19517{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;border:1px solid #43464e;background:#191b1f;color:#c7c8ce;font-size:7px;font-weight:900;letter-spacing:.06em}.admin-doc-main-v19517 small{display:block;color:#767780;font-size:8px;font-weight:900}.admin-doc-main-v19517 h3{margin:4px 0;color:#fff;font-size:14px}.admin-doc-main-v19517 p{margin:0;color:#a1a1a9;font-size:9px}.admin-doc-main-v19517 p b{color:#e6e6e9}.admin-doc-main-v19517>span,.admin-doc-main-v19517 em{display:block;margin-top:5px;color:#7f8088;font-size:8px;font-style:normal}.admin-doc-state-v19517 small{display:block;color:#73747c;font-size:7px;font-weight:900}.admin-doc-state-v19517 b{display:block;margin-top:5px;color:#fff;font-size:10px}.admin-doc-state-v19517 span{display:block;margin-top:7px;color:#fff;font-size:13px;font-weight:900}.admin-doc-actions-v19517{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}
.admin-client-documents-v19517{margin-top:16px}.admin-doc-dashboard-list-v19517{display:grid;gap:8px;margin-top:12px}.admin-doc-dashboard-list-v19517 article{display:grid;grid-template-columns:38px minmax(0,1fr) auto 90px auto;gap:10px;align-items:center;padding:11px;border:1px solid #292b31;border-radius:12px;background:#101114}.admin-doc-dash-icon-v19517{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#17191d;color:#fff}.admin-doc-dash-icon-v19517.order{background:#241014;color:#ffb7bd}.admin-doc-dash-icon-v19517 svg{width:19px;height:19px}.admin-doc-dash-copy-v19517 small{display:block;color:#777780;font-size:7px;font-weight:900}.admin-doc-dash-copy-v19517 b{display:block;margin-top:3px;color:#fff;font-size:10px}.admin-doc-dash-copy-v19517 span{display:block;margin-top:3px;color:#84858d;font-size:8px}.admin-doc-dashboard-list-v19517 em{padding:4px 7px;border:1px solid #34363d;border-radius:999px;color:#aeb0b7;font-size:7px;font-style:normal;font-weight:900}.admin-doc-dashboard-list-v19517>article>strong{color:#fff;font-size:11px;text-align:right}
@media(max-width:1000px){.admin-doc-kpis-v19517{grid-template-columns:repeat(2,1fr)}.admin-doc-row-v19517{grid-template-columns:100px 1fr}.admin-doc-state-v19517,.admin-doc-actions-v19517{grid-column:2}.admin-doc-dashboard-list-v19517 article{grid-template-columns:38px 1fr auto}.admin-doc-dashboard-list-v19517 em,.admin-doc-dashboard-list-v19517>article>strong{grid-column:2}}
@media(max-width:620px){.admin-doc-kpis-v19517{grid-template-columns:1fr}.admin-doc-row-v19517{grid-template-columns:1fr}.admin-doc-state-v19517,.admin-doc-actions-v19517{grid-column:auto}.admin-doc-actions-v19517{justify-content:flex-start}.admin-doc-dashboard-list-v19517 article{grid-template-columns:38px 1fr}.admin-doc-dashboard-list-v19517 article>a{grid-column:1/-1}.admin-doc-dashboard-list-v19517 em,.admin-doc-dashboard-list-v19517>article>strong{grid-column:2}}


/* V1.9.5.18 · Papelería · presupuesto comercial único SOMOS */
.actionRow .clientBtn{
  background:linear-gradient(180deg,#e30613,#b90610)!important;
  border:1px solid #e30613!important;
  color:#fff!important;
  border-radius:11px!important;
  font-weight:900!important;
  box-shadow:0 10px 24px rgba(227,6,19,.18)!important;
}
.actionRow .clientBtn:hover{
  transform:translateY(-1px);
  box-shadow:0 13px 30px rgba(227,6,19,.26)!important;
}


/* ==========================================================
   V1.9.5.19 · FORMULARIOS SOMOS · DISTRIBUCIÓN MÁS COMPACTA
   ========================================================== */
.somos-a4-v19512{
  min-height:0;
}
.somos-a4-head-v19512{
  height:38mm;
}
.somos-a4-title-v19512{
  padding:8mm 15mm 5mm;
  align-items:center;
}
.somos-a4-title-v19512 h1{
  margin-top:1.2mm;
  font-size:24pt;
}
.somos-a4-ref-v19512{
  padding:2.2mm 3mm;
  min-width:43mm;
}
.somos-a4-ref-v19512 b{
  margin-top:1.2mm;
}

.somos-a4-meta-v19512>div{
  padding:2.7mm 3mm;
}
.somos-a4-meta-v19512 b{
  margin-top:1mm;
}

.somos-a4-party-v19512{
  gap:7mm;
  padding:5.5mm 15mm;
}
.somos-a4-party-v19512 h2,
.somos-a4-party-v19512 h3{
  margin:1.2mm 0 1mm;
}
.somos-a4-party-v19512 h2{
  font-size:14pt;
}
.somos-a4-party-v19512 h3{
  font-size:11pt;
}
.somos-a4-party-v19512 p{
  line-height:1.35;
}

.somos-a4-section-v19512{
  padding:5.5mm 15mm;
}
.somos-a4-section-head-v19512{
  gap:2.2mm;
  margin-bottom:3mm;
}
.somos-a4-section-head-v19512>span{
  width:7mm;
  height:7mm;
}
.somos-a4-section-head-v19512 h2{
  margin-top:.6mm;
  font-size:12pt;
}
.somos-a4-config-v19512{
  padding:3.5mm 4mm;
  line-height:1.45;
}

.somos-a4-finance-v19512{
  gap:7mm;
  padding:5.5mm 15mm;
}
.somos-a4-finance-v19512 h3{
  margin-bottom:2mm;
}
.somos-a4-line-v19512,
.somos-a4-total-v19512>div{
  padding:2mm 0;
}
.somos-a4-total-v19512 .grand{
  margin-top:1mm;
  padding-top:3mm;
}
.somos-a4-total-v19512 .grand b{
  font-size:14pt;
}

.somos-a4-observations-v19512{
  margin:0 15mm 5mm;
  padding:3.5mm 4mm;
}
.somos-a4-observations-v19512 p{
  margin-top:1.2mm;
  line-height:1.4;
}

.somos-a4-order-list-v19512 article{
  gap:3.5mm;
  padding:2.8mm 0;
}
.somos-a4-order-list-v19512 h4{
  margin:.7mm 0;
}
.somos-a4-order-list-v19512 p,
.somos-a4-order-list-v19512 span{
  line-height:1.3;
}

.somos-a4-timeline-v19512>div{
  padding-top:6.5mm;
}
.somos-a4-timeline-v19512>div:before{
  top:3mm;
}
.somos-a4-timeline-v19512 i{
  top:1mm;
}

.somos-a4-workgrid-v19512{
  gap:2.8mm;
}
.somos-a4-workgrid-v19512>div{
  padding:3mm;
}
.somos-a4-workgrid-v19512 b{
  margin-top:1.2mm;
}

.somos-a4-sign-v19512{
  gap:3mm;
  padding:5mm 15mm 6mm;
}
.somos-a4-sign-v19512>div{
  height:18mm;
  padding:2.5mm;
}

.somos-a4-foot-v19512{
  padding:3.5mm 15mm;
}
.somos-a4-foot-v19512 span{
  margin-top:.5mm;
}

/* Editor también algo más compacto */
.somos-doc-editor-v19512{
  padding:15px;
}
.somos-doc-editor-grid-v19512{
  gap:8px;
  margin-top:13px;
}
.somos-doc-editor-grid-v19512 input,
.somos-doc-editor-grid-v19512 textarea{
  padding:8px 10px;
}
.somos-doc-editor-help-v19512{
  margin-top:10px;
  padding:9px 10px;
}

/* impresión: mantener A4 pero sin forzar altura sobrante */
@media print{
  .somos-a4-v19512{
    min-height:0!important;
  }
}


/* ==========================================================
   V1.9.5.20 · PAPELERÍA · ACCIONES BAJO PRECIOS + CONTRASTE
   ========================================================== */

/* Acciones comerciales integradas en el cuadro de presupuesto */
.paper-result-actions-v19520{
  margin-top:16px;
  padding:14px;
  border:1px solid #2f3138;
  border-radius:14px;
  background:linear-gradient(180deg,#131417,#0d0e10);
}
.paper-result-actions-head-v19520{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.paper-result-actions-head-v19520 small{
  display:block;
  color:#e30613;
  font-size:8px;
  font-weight:900;
  letter-spacing:.11em;
}
.paper-result-actions-head-v19520 b{
  display:block;
  margin-top:4px;
  color:#fff;
  font-size:12px;
}
.paper-result-actions-head-v19520>span{
  color:#81838b;
  font-size:9px;
  text-align:right;
}
.paper-result-reference-v19520{
  margin-bottom:10px;
}
.paper-result-reference-v19520 label{
  display:block;
  margin-bottom:6px;
  color:#9c9ea6!important;
  font-size:8px;
  font-weight:900;
  letter-spacing:.06em;
}
body.calculator-dark-v184 .paper-result-reference-v19520 input{
  width:100%;
  min-height:42px;
  padding:0 11px;
  border:1px solid #34363e!important;
  border-radius:10px;
  background:#191a1e!important;
  color:#fff!important;
}
.paper-result-buttons-v19520{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:8px;
}
.paper-action-btn-v19520{
  min-height:43px;
  padding:0 12px;
  border-radius:10px;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
  transition:.18s ease;
}
.paper-action-btn-v19520:hover{
  transform:translateY(-1px);
}
.paper-action-btn-v19520.secondary{
  border:1px solid #3a3d45!important;
  background:#1a1b1f!important;
  color:#fff!important;
}
.paper-action-btn-v19520.primary{
  border:1px solid #e30613!important;
  background:#e30613!important;
  color:#fff!important;
  box-shadow:0 9px 24px rgba(227,6,19,.18);
}
.paper-action-btn-v19520.pdf{
  border:1px solid #d6d7da!important;
  background:#f5f5f6!important;
  color:#151515!important;
}
.paper-action-btn-v19520:disabled{
  opacity:.5;
  cursor:not-allowed;
  transform:none;
}
.paper-result-status-v19520{
  display:block;
  min-height:18px;
  margin-top:9px;
  color:#a7a9b0!important;
}
.paper-result-status-v19520.ok{color:#8fdfa7!important}
.paper-result-status-v19520.bad{color:#ff999f!important}
.paper-result-status-v19520 a{
  color:inherit!important;
  font-weight:900;
}

/* Corrección de contraste.
   Antes .note conservaba fondo blanco (#f7f9fb) pero el tema oscuro le
   aplicaba texto gris muy claro, generando los bloques casi ilegibles. */
body.calculator-dark-v184 .note,
body.calculator-dark-v184 .why,
body.calculator-dark-v184 .ref{
  background:#17181b!important;
  border:1px solid #30323a!important;
  color:#b8bbc3!important;
}
body.calculator-dark-v184 .note b,
body.calculator-dark-v184 .note strong,
body.calculator-dark-v184 .why b,
body.calculator-dark-v184 .ref b{
  color:#f1f1f3!important;
}
body.calculator-dark-v184 .muted{
  color:#a1a3aa!important;
}

/* Protecciones extra para bloques claros que puedan aparecer en componentes
   heredados dentro de la calculadora. */
body.calculator-dark-v184 .card [style*="background:#fff"],
body.calculator-dark-v184 .card [style*="background: #fff"],
body.calculator-dark-v184 .card [style*="background:white"],
body.calculator-dark-v184 .card [style*="background: white"]{
  color:#30343a!important;
}
body.calculator-dark-v184 .card [style*="background:#fff"] small,
body.calculator-dark-v184 .card [style*="background: #fff"] small,
body.calculator-dark-v184 .card [style*="background:white"] small,
body.calculator-dark-v184 .card [style*="background: white"] small{
  color:#59606a!important;
}

@media(max-width:760px){
  .paper-result-actions-head-v19520{
    align-items:flex-start;
    flex-direction:column;
  }
  .paper-result-actions-head-v19520>span{text-align:left}
  .paper-result-buttons-v19520{grid-template-columns:1fr}
}


/* ==========================================================
   V1.9.5.21 · FORMULARIO ÚNICO SOMOS
   Cabecera y datos compactos + impresión idéntica a pantalla
   ========================================================== */

/* El documento en pantalla y el documento impreso comparten estas medidas. */
.somos-a4-v19512{
  width:210mm;
  min-height:0;
  background:#fff;
}
.somos-a4-head-v19512{
  height:26mm;
}
.somos-a4-redline-v19512{
  height:2mm;
}
.somos-a4-title-v19512{
  padding:5mm 12mm 3mm;
  gap:10mm;
  align-items:center;
}
.somos-a4-title-v19512 h1{
  margin:.8mm 0 0;
  font-size:19pt;
  line-height:1;
}
.somos-a4-title-v19512 small,
.somos-a4-ref-v19512 small,
.somos-a4-meta-v19512 small,
.somos-a4-party-v19512 small,
.somos-a4-observations-v19512 small,
.somos-a4-workgrid-v19512 small{
  font-size:6.7pt;
  letter-spacing:.09em;
}
.somos-a4-ref-v19512{
  min-width:39mm;
  padding:1.7mm 2.5mm;
  border-radius:2mm;
}
.somos-a4-ref-v19512 b{
  margin-top:.7mm;
  font-size:8.7pt;
}

/* Datos generales: fila muy más contenida. */
.somos-a4-meta-v19512{
  margin:0 12mm;
}
.somos-a4-meta-v19512>div{
  padding:1.7mm 2mm;
}
.somos-a4-meta-v19512 b{
  margin-top:.6mm;
  font-size:7.7pt;
  line-height:1.2;
}

/* Cliente y trabajo ocupan una única franja compacta. */
.somos-a4-party-v19512{
  grid-template-columns:1fr 1fr;
  gap:6mm;
  padding:3.3mm 12mm;
}
.somos-a4-party-v19512 h2,
.somos-a4-party-v19512 h3{
  margin:.7mm 0 .5mm;
  line-height:1.12;
}
.somos-a4-party-v19512 h2{
  font-size:11.5pt;
}
.somos-a4-party-v19512 h3{
  font-size:10pt;
}
.somos-a4-party-v19512 p{
  font-size:7.6pt;
  line-height:1.25;
}

/* Bloques del cuerpo más juntos. */
.somos-a4-section-v19512{
  padding:3.8mm 12mm;
}
.somos-a4-section-head-v19512{
  gap:1.8mm;
  margin-bottom:2mm;
}
.somos-a4-section-head-v19512>span{
  width:6mm;
  height:6mm;
  font-size:6pt;
}
.somos-a4-section-head-v19512 small{
  font-size:6.4pt;
}
.somos-a4-section-head-v19512 h2{
  margin:.3mm 0 0;
  font-size:10.5pt;
}
.somos-a4-config-v19512{
  padding:2.6mm 3.2mm;
  font-size:8pt;
  line-height:1.35;
  border-radius:2mm;
}

.somos-a4-finance-v19512{
  grid-template-columns:1fr 65mm;
  gap:6mm;
  padding:3.8mm 12mm;
}
.somos-a4-finance-v19512 h3{
  margin:0 0 1.2mm;
  font-size:9.5pt;
}
.somos-a4-finance-v19512 p{
  font-size:7.6pt;
}
.somos-a4-line-v19512,
.somos-a4-total-v19512>div{
  padding:1.4mm 0;
  font-size:7.8pt;
}
.somos-a4-total-v19512 .grand{
  margin-top:.5mm;
  padding-top:2mm;
}
.somos-a4-total-v19512 .grand b{
  font-size:12.5pt;
}

.somos-a4-observations-v19512{
  margin:0 12mm 3.5mm;
  padding:2.6mm 3.2mm;
}
.somos-a4-observations-v19512 p{
  margin:.7mm 0 0;
  font-size:7.7pt;
  line-height:1.3;
}
.somos-a4-foot-v19512{
  padding:2.5mm 12mm;
  font-size:6.6pt;
}
.somos-a4-foot-v19512 b{
  font-size:7.1pt;
}
.somos-a4-foot-v19512 span{
  margin-top:.3mm;
}

/* Pedido / OT: misma compactación de tablas y bloques. */
.somos-a4-order-list-v19512 article{
  grid-template-columns:minmax(0,1fr) 35mm 37mm;
  gap:3mm;
  padding:2.1mm 0;
}
.somos-a4-order-list-v19512 small{font-size:6.4pt}
.somos-a4-order-list-v19512 h4{
  margin:.4mm 0;
  font-size:8.8pt;
}
.somos-a4-order-list-v19512 p,
.somos-a4-order-list-v19512 span{
  font-size:7pt;
  line-height:1.2;
}
.somos-a4-workgrid-v19512{
  gap:2.2mm;
}
.somos-a4-workgrid-v19512>div{
  padding:2.4mm;
}
.somos-a4-workgrid-v19512 b{
  margin-top:.7mm;
  font-size:8pt;
}
.somos-a4-sign-v19512{
  gap:2.5mm;
  padding:3.5mm 12mm 4mm;
}
.somos-a4-sign-v19512>div{
  height:14mm;
  padding:2mm;
}
.somos-a4-v19512.workorder .somos-a4-title-v19512 h1{
  font-size:18pt;
}

/* Vista PDF: sigue siendo exactamente el mismo formulario.
   No existe una segunda plantilla ni una redistribución especial. */
@media print{
  @page{size:A4 portrait;margin:0}
  html,body{
    width:210mm!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }
  .topbar,
  .portal-legal-footer-v190,
  .no-print,
  .somos-doc-editor-v19512{
    display:none!important;
  }
  .container,
  .container-v180{
    width:210mm!important;
    max-width:210mm!important;
    margin:0!important;
    padding:0!important;
  }
  .somos-doc-workspace-v19512{
    display:block!important;
    width:210mm!important;
    margin:0!important;
  }
  .somos-a4-v19512{
    width:210mm!important;
    min-height:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  /* Repetición explícita de medidas para impedir que reglas responsive
     o estilos antiguos cambien el aspecto del PDF. */
  .somos-a4-head-v19512{height:26mm!important}
  .somos-a4-redline-v19512{height:2mm!important}
  .somos-a4-title-v19512{padding:5mm 12mm 3mm!important;gap:10mm!important}
  .somos-a4-title-v19512 h1{font-size:19pt!important}
  .somos-a4-ref-v19512{min-width:39mm!important;padding:1.7mm 2.5mm!important}
  .somos-a4-meta-v19512{margin:0 12mm!important;grid-template-columns:repeat(4,1fr)!important}
  .somos-a4-meta-v19512>div{padding:1.7mm 2mm!important;border-bottom:0!important}
  .somos-a4-party-v19512{grid-template-columns:1fr 1fr!important;gap:6mm!important;padding:3.3mm 12mm!important}
  .somos-a4-section-v19512{padding:3.8mm 12mm!important}
  .somos-a4-config-v19512{padding:2.6mm 3.2mm!important}
  .somos-a4-finance-v19512{grid-template-columns:1fr 65mm!important;gap:6mm!important;padding:3.8mm 12mm!important}
  .somos-a4-observations-v19512{margin:0 12mm 3.5mm!important;padding:2.6mm 3.2mm!important}
  .somos-a4-foot-v19512{padding:2.5mm 12mm!important}
  .somos-a4-order-list-v19512 article{grid-template-columns:minmax(0,1fr) 35mm 37mm!important}
  .somos-a4-workgrid-v19512{grid-template-columns:repeat(2,1fr)!important}
  .somos-a4-sign-v19512{grid-template-columns:repeat(4,1fr)!important}

  .somos-a4-head-v19512,
  .somos-a4-redline-v19512,
  .somos-a4-section-head-v19512>span,
  .somos-a4-config-v19512,
  .somos-a4-ref-v19512,
  .somos-a4-foot-v19512{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
}


/* ==========================================================
   V1.9.5.22 · CONTRASTE EN PANTALLAS CLARAS DE AGENCIA
   ==========================================================
   Problema:
   - en vistas de agencia con fondo general oscuro pero bloques blancos
     (Presupuestos, Pedidos, tablas, tarjetas legacy), el texto heredaba
     el color claro del body y quedaba casi blanco sobre blanco.
   Solución:
   - se fuerza tipografía oscura en paneles blancos y listados.
   - no se altera la estética oscura de los módulos premium.
*/

/* tarjetas blancas legacy en vista agencia */
body.role-agency .card{
  background:#fff;
  border-color:#e1e4e8;
  color:#1f2328;
}
body.role-agency .card h1,
body.role-agency .card h2,
body.role-agency .card h3,
body.role-agency .card h4{
  color:#111;
}
body.role-agency .card .muted,
body.role-agency .card small{
  color:#6b7280;
}

/* paneles de búsqueda blancos */
body.role-agency .search-panel{
  background:#fff;
  border-color:#e1e4e8;
  color:#1f2328;
  box-shadow:0 3px 12px #00000008;
}
body.role-agency .search-field label{
  color:#6b7280;
}
body.role-agency .search-field input,
body.role-agency .search-field select{
  background:#fff;
  color:#1f2328;
  border-color:#cfd5dc;
}
body.role-agency .search-field input::placeholder{
  color:#8b93a0;
}
body.role-agency .search-help,
body.role-agency .filter-summary{
  color:#7a818c;
}
body.role-agency .empty-search-result{
  color:#6b7280!important;
}
body.role-agency .empty-search-result b{
  color:#30343a!important;
}

/* tablas y listados blancos */
body.role-agency .tablewrap{
  background:#fff;
  border-color:#e1e4e8;
}
body.role-agency table{
  color:#1f2328;
}
body.role-agency th{
  background:#fafafa;
  color:#68707a;
  border-color:#eceff2;
}
body.role-agency td{
  color:#1f2328;
  border-color:#eceff2;
}
body.role-agency td .muted,
body.role-agency td small,
body.role-agency td span.muted{
  color:#6b7280!important;
}
body.role-agency td b{
  color:#101418;
}

/* estados y texto auxiliar dentro de listados */
body.role-agency .module-disabled-doc-v1956{
  color:#7a2228;
}
body.role-agency .budget-row-actions-v186 .btn.soft{
  background:#efefef;
  color:#1f2328;
}

/* protecciones adicionales para otras tablas blancas del portal */
body.role-agency .detail-grid div{
  background:#fafafa;
  border-color:#eceff2;
  color:#1f2328;
}
body.role-agency .detail-grid small{
  color:#6b7280;
}

/* formularios legacy blancos */
body.role-agency .field label{
  color:#374151;
}
body.role-agency .field input,
body.role-agency .field select,
body.role-agency .field textarea{
  color:#1f2328;
  background:#fff;
  border-color:#cfd5dc;
}


/* ==========================================================
   V1.9.5.23 · PANTALLAS SENSIBLES · LÍNEA PREMIUM OSCURA ÚNICA
   Presupuestos · Pedidos · Cesta · Histórico · Documentos
   ========================================================== */
.portal-list-page-v19523{display:grid;gap:14px}
.portal-list-hero-v19523,
body.role-agency .portal-list-hero-v19523,
body.role-admin .portal-list-hero-v19523{
  padding:20px 22px;margin-bottom:0;border:1px solid rgba(255,255,255,.08);border-radius:18px;
  background:radial-gradient(760px 180px at 10% -20%,rgba(227,6,19,.12),transparent 50%),linear-gradient(145deg,#17181b,#0e0f11);
  color:#fff
}
.portal-list-hero-v19523 h1{margin:0 0 5px;color:#fff!important;font-size:30px;letter-spacing:-.035em}
.portal-list-hero-v19523 .muted{color:#8b8d95!important}

.portal-list-search-v19523,
body.role-agency .portal-list-search-v19523,
body.role-admin .portal-list-search-v19523{
  background:linear-gradient(180deg,#141518,#101114)!important;border:1px solid #2b2d33!important;
  border-radius:16px!important;box-shadow:none!important;color:#fff!important
}
body.role-agency .portal-list-search-v19523 .search-field label,
body.role-admin .portal-list-search-v19523 .search-field label{color:#8b8d95!important}
body.role-agency .portal-list-search-v19523 input,
body.role-agency .portal-list-search-v19523 select,
body.role-admin .portal-list-search-v19523 input,
body.role-admin .portal-list-search-v19523 select{
  background:#0b0c0f!important;color:#fff!important;border-color:#343740!important
}
body.role-agency .portal-list-search-v19523 input::placeholder,
body.role-admin .portal-list-search-v19523 input::placeholder{color:#686b74!important}
.portal-list-search-v19523 .search-help{color:#737681!important}
.portal-list-page-v19523 .filter-summary{color:#858791!important}
.portal-list-page-v19523 .filter-summary b,
.portal-list-page-v19523 .filter-summary strong{color:#fff}

.portal-list-table-v19523,
body.role-agency .portal-list-table-v19523,
body.role-admin .portal-list-table-v19523{
  overflow:hidden;background:#111214!important;border:1px solid #2a2d33!important;border-radius:16px!important;box-shadow:none!important
}
.portal-list-table-v19523 table,
body.role-agency .portal-list-table-v19523 table,
body.role-admin .portal-list-table-v19523 table{color:#e9e9ed!important}
.portal-list-table-v19523 th,
body.role-agency .portal-list-table-v19523 th,
body.role-admin .portal-list-table-v19523 th{
  background:#17181c!important;color:#7f828b!important;border-color:#2a2d33!important;font-size:9px;letter-spacing:.08em
}
.portal-list-table-v19523 td,
body.role-agency .portal-list-table-v19523 td,
body.role-admin .portal-list-table-v19523 td{
  background:#111214!important;color:#e5e6ea!important;border-color:#24272d!important
}
.portal-list-table-v19523 tbody tr:hover td{background:#15171b!important}
.portal-list-table-v19523 td b{color:#fff!important}
.portal-list-table-v19523 td .muted,
.portal-list-table-v19523 td small{color:#777a84!important}
.portal-list-table-v19523 .row-cancelled td{background:#111214!important;opacity:.62}
.portal-list-table-v19523 .empty-search-result{background:#111214!important;color:#777a84!important}
.portal-list-table-v19523 .empty-search-result b{color:#fff!important}

.portal-list-page-v19523 .status{border:1px solid transparent}
.portal-list-page-v19523 .status.review{background:#201b0f;color:#ffd574;border-color:#5a4619}
.portal-list-page-v19523 .status.received{background:#151a22;color:#cdd9e8;border-color:#344153}
.portal-list-page-v19523 .status.production{background:#281114;color:#ffabb2;border-color:#76262d}
.portal-list-page-v19523 .status.ready,
.portal-list-page-v19523 .status.completed{background:#102017;color:#9cddb1;border-color:#285a3f}
.portal-list-page-v19523 .status.shipped{background:#102033;color:#a9cbff;border-color:#2e5d99}
.portal-list-page-v19523 .status.cancelled{background:#1a1b1f;color:#a9abb2;border-color:#41444c}

.portal-list-page-v19523 .budget-row-actions-v186 .btn.soft,
.portal-list-page-v19523 table .btn.soft{background:#202226;color:#fff;border:1px solid #343740}
.portal-list-page-v19523 .budget-row-actions-v186 .btn.soft:hover,
.portal-list-page-v19523 table .btn.soft:hover{border-color:#e30613}

body.role-agency .cart-page-v19523 .cart-module-v186,
body.role-agency .cart-page-v19523 .cart-summary-v186,
body.role-agency .cart-page-v19523 .checkout-v186,
body.role-agency .cart-page-v19523 .cart-empty-v186{
  background:linear-gradient(180deg,#141518,#0f1012)!important;border-color:#2b2e34!important;border-radius:16px!important
}
.cart-page-v19523 .cart-line-v186{background:#111214;border-color:#26292f}
.cart-page-v19523 .cart-line-v186:hover{border-color:#3a3d45}
.cart-page-v19523 .cart-line-main-v186 b,
.cart-page-v19523 .cart-line-price-v186 b{color:#fff}
.cart-page-v19523 .cart-line-main-v186 span,
.cart-page-v19523 .cart-line-main-v186 small,
.cart-page-v19523 .cart-line-price-v186 span{color:#7d8089}

.documents-page-v19523 .admin-doc-kpis-v19517>a,
.documents-page-v19523 .admin-doc-kpis-v19517>div{background:linear-gradient(180deg,#141518,#0f1012);border-color:#2b2e34}
.documents-page-v19523 .admin-doc-row-v19517{background:linear-gradient(180deg,#141518,#0f1012);border-color:#2b2e34}
.documents-page-v19523 .admin-doc-row-v19517:hover{border-color:rgba(227,6,19,.45)}

body.role-admin .admin-client-history-v19523{background:linear-gradient(180deg,#141518,#0f1012)!important;border-color:#2b2e34!important}
body.role-admin .admin-client-history-v19523 .tablewrap{background:#111214!important;border-color:#2a2d33!important}
body.role-admin .admin-client-history-v19523 table{color:#e7e8eb!important}
body.role-admin .admin-client-history-v19523 th{background:#17181c!important;color:#7f828b!important}
body.role-admin .admin-client-history-v19523 td{background:#111214!important;color:#e5e6ea!important;border-color:#24272d!important}
body.role-admin .admin-client-history-v19523 td b{color:#fff!important}

@media(max-width:760px){
  .portal-list-hero-v19523{align-items:flex-start;flex-direction:column;padding:17px}
  .portal-list-hero-v19523 h1{font-size:26px}
  .portal-list-search-v19523{padding:13px!important}
}


/* ==========================================================
   V1.9.5.24 · PAPELERÍA · BOTONES DE ACCIÓN PREMIUM
   ========================================================== */

.paper-result-actions-v19520{
  margin-top:18px;
  padding:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:
    radial-gradient(420px 120px at 8% -30%,rgba(227,6,19,.10),transparent 55%),
    linear-gradient(180deg,#15161a,#0f1013);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 14px 36px rgba(0,0,0,.22);
}
.paper-result-actions-head-v19520{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.paper-result-actions-head-v19520 small{
  display:block;
  margin:0;
  color:#e30613;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.paper-result-actions-head-v19520 b{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:16px;
  line-height:1.1;
  letter-spacing:-.02em;
}
.paper-result-actions-head-v19520>span{
  color:#8e9199;
  font-size:10px;
  text-align:right;
  line-height:1.3;
  max-width:220px;
}

.paper-result-reference-v19520{
  margin-bottom:12px;
}
.paper-result-reference-v19520 label{
  display:block;
  margin-bottom:7px;
  color:#9ea1aa!important;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.calculator-dark-v184 .paper-result-reference-v19520 input{
  width:100%;
  min-height:46px;
  padding:0 14px;
  border:1px solid #343842!important;
  border-radius:12px;
  background:#101115!important;
  color:#fff!important;
  font-size:16px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
body.calculator-dark-v184 .paper-result-reference-v19520 input::placeholder{
  color:#6f7480!important;
}

.paper-result-buttons-v19520{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.paper-result-buttons-v19520 .paper-action-btn-v19520{
  width:100%!important;
  min-height:48px!important;
  padding:0 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px;
  appearance:none;
  -webkit-appearance:none;
  border-radius:12px!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.01em;
  text-decoration:none!important;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease, color .16s ease;
}
.paper-result-buttons-v19520 .paper-action-btn-v19520:hover{
  transform:translateY(-1px);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520:active{
  transform:translateY(0);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520.secondary{
  border:1px solid #353943!important;
  background:linear-gradient(180deg,#1b1d22,#131418)!important;
  color:#f4f4f6!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 10px 22px rgba(0,0,0,.18);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520.secondary:hover{
  border-color:#4a4f5a!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 12px 26px rgba(0,0,0,.22);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520.primary{
  border:1px solid #e30613!important;
  background:linear-gradient(180deg,#ff1020,#d00412)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(227,6,19,.30), inset 0 1px 0 rgba(255,255,255,.16);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520.primary:hover{
  background:linear-gradient(180deg,#ff2634,#e30613)!important;
  box-shadow:0 14px 30px rgba(227,6,19,.34), inset 0 1px 0 rgba(255,255,255,.18);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520.pdf{
  border:1px solid #40444e!important;
  background:linear-gradient(180deg,#f3f4f6,#dfe2e7)!important;
  color:#181b20!important;
  box-shadow:0 10px 24px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.65);
}
.paper-result-buttons-v19520 .paper-action-btn-v19520.pdf:hover{
  border-color:#585d67!important;
  background:linear-gradient(180deg,#ffffff,#e8ebf0)!important;
}
.paper-result-buttons-v19520 .paper-action-btn-v19520:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none!important;
  box-shadow:none!important;
}

.paper-result-status-v19520{
  display:block;
  min-height:18px;
  margin-top:10px;
  color:#aab0bb!important;
  font-size:12px;
  line-height:1.3;
}
.paper-result-status-v19520.ok{color:#93e1a5!important}
.paper-result-status-v19520.bad{color:#ff9ba4!important}
.paper-result-status-v19520 a{
  color:inherit!important;
  font-weight:900;
  text-decoration:none;
}
.paper-result-status-v19520 a:hover{
  text-decoration:underline;
}

@media(max-width:920px){
  .paper-result-buttons-v19520{
    grid-template-columns:1fr;
  }
  .paper-result-actions-head-v19520{
    align-items:flex-start;
    flex-direction:column;
  }
  .paper-result-actions-head-v19520>span{
    text-align:left;
    max-width:none;
  }
}


/* ==========================================================
   V1.9.5.25 · PAPELERÍA · ACCIONES LIMPIAS
   Solo referencia + Guardar + Cesta + Crear PDF
   ========================================================== */
.paper-result-actions-v19525{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid #2a2d33;
}
.paper-result-actions-v19525 .paper-result-reference-v19520{
  margin-bottom:10px;
}
.paper-result-actions-v19525 .paper-result-reference-v19520 label{
  margin-bottom:6px;
  color:#9ea1aa!important;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.paper-result-actions-v19525 .paper-result-reference-v19520 input{
  min-height:44px!important;
  border-radius:11px!important;
}
.paper-result-actions-v19525 .paper-result-buttons-v19520{
  gap:9px;
}
.paper-result-actions-v19525 .paper-action-btn-v19520{
  min-height:46px!important;
  border-radius:11px!important;
  font-size:12px!important;
}
.paper-result-actions-v19525 .paper-result-status-v19520{
  min-height:16px;
  margin-top:8px;
  font-size:10px;
}


/* ==========================================================
   V1.9.5.26 · PAPELERÍA · ACCIONES CON ESTILO EXACTO DEL PORTAL
   ========================================================== */
.paper-result-actions-v19526{
  margin-top:16px;
  padding:14px;
  border:1px solid #2b2e34;
  border-radius:14px;
  background:linear-gradient(180deg,#141518,#101114);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.paper-result-actions-v19526 .paper-result-reference-v19520{
  margin-bottom:10px;
}
.paper-result-actions-v19526 .paper-result-reference-v19520 label{
  display:block;
  margin-bottom:6px;
  color:#8e9199!important;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.calculator-dark-v184 .paper-result-actions-v19526 .paper-result-reference-v19520 input{
  width:100%;
  min-height:42px;
  padding:0 12px;
  border:1px solid #33363d!important;
  border-radius:9px;
  background:#18191d!important;
  color:#fff!important;
}
body.calculator-dark-v184 .paper-result-actions-v19526 .paper-result-reference-v19520 input::placeholder{
  color:#70737b!important;
}

.paper-result-buttons-v19526{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
/* Importante: no se redefinen colores, tipografía, padding ni radios.
   Heredan exactamente .btn / .btn.soft / .btn.red del portal. */
.paper-result-buttons-v19526 .btn{
  width:100%;
}
.paper-result-actions-v19526 .paper-result-status-v19520{
  margin-top:8px;
  min-height:16px;
  font-size:10px;
}

@media(max-width:760px){
  .paper-result-buttons-v19526{grid-template-columns:1fr}
}


/* ==========================================================
   V1.9.5.27 · REF. CLIENTE GLOBAL
   ========================================================== */
.paper-result-ref-grid-v19527{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:9px;
}
.cart-client-ref-v19527{
  display:grid;
  grid-template-columns:auto minmax(120px,1fr) auto;
  align-items:center;
  gap:7px;
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid #25282e;
}
.cart-client-ref-v19527 label{
  color:#8d9099;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.cart-client-ref-v19527 input,
.checkout-client-ref-v19527 input{
  min-height:34px;
  padding:0 9px;
  border:1px solid #343740;
  border-radius:9px;
  background:#0e0f12;
  color:#fff;
}
.checkout-client-ref-v19527{
  margin-bottom:14px;
  padding:12px;
  border:1px solid #2b2e34;
  border-radius:12px;
  background:#111214;
}
.checkout-client-ref-v19527 label{
  color:#fff!important;
}
.checkout-client-ref-v19527 label span{
  color:#777b84;
  font-weight:500;
}
.somos-client-ref-label-v19527{
  margin-top:2mm!important;
  padding-top:1.5mm;
  border-top:1px solid #dde0e3;
}
.somos-client-ref-value-v19527{
  color:#e30613;
  font-size:8.6pt!important;
}
.somos-line-client-ref-v19527{
  display:block!important;
  margin:1mm 0 1.2mm!important;
  color:#e30613!important;
  font-size:7pt!important;
  font-weight:900;
  letter-spacing:.04em;
}
.admin-client-ref-v19527{
  color:#e26f77!important;
  font-weight:900;
}
@media(max-width:720px){
  .paper-result-ref-grid-v19527{grid-template-columns:1fr}
  .cart-client-ref-v19527{grid-template-columns:1fr}
}

.dashboard-client-ref-v19527{color:#e26f77!important;font-weight:900!important;letter-spacing:.04em}


/* ==========================================================
   V1.9.5.28 · FORMULARIOS SOMOS · CABECERA COMPACTA SIN CORTAR LOGOS
   ========================================================== */
/*
  La cabecera se mantiene compacta, pero la imagen corporativa deja de usar
  object-fit: cover, que recortaba SOMOS / NÚCLEO al reducir la altura.
  Se muestra el banner completo dentro de la franja negra, eliminando además
  visualmente las bandas blancas superior/inferior del PNG mediante clip-path.
*/
.somos-a4-head-v19512{
  height:30mm!important;
  padding:0!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#050505!important;
}
.somos-a4-head-v19512 img{
  display:block!important;
  width:auto!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center!important;
  clip-path:inset(7% 0 12% 0);
  transform:scale(1.24);
  transform-origin:center center;
}

/* Pantalla y PDF deben mostrar exactamente la misma cabecera. */
@media print{
  .somos-a4-head-v19512{
    height:30mm!important;
    padding:0!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#050505!important;
  }
  .somos-a4-head-v19512 img{
    width:auto!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center!important;
    clip-path:inset(7% 0 12% 0)!important;
    transform:scale(1.24)!important;
    transform-origin:center center!important;
  }
}


/* ==========================================================
   V1.9.5.29 · PAPELERÍA · BOTONES DE ACCIÓN ESTILO INICIO
   ========================================================== */
/* En lugar de los botones anteriores, el bloque de acciones del presupuesto
   adopta exactamente la lógica visual de las acciones rápidas de la pantalla
   principal: píldoras oscuras premium y CTA rojo destacado. */
.paper-result-buttons-v19529{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.paper-result-buttons-v19529 .paper-action-home-v19529{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px;
  min-height:44px;
  padding:0 15px!important;
  border-radius:12px!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:-.01em;
  text-decoration:none!important;
  white-space:nowrap;
  box-shadow:none;
  transition:.18s ease;
}
.paper-result-buttons-v19529 .paper-action-home-v19529:hover{
  transform:translateY(-1px);
}
.paper-result-buttons-v19529 .paper-action-home-v19529 .portal-line-icon{
  width:16px;
  height:16px;
  flex:0 0 16px;
}
.paper-result-buttons-v19529 .portal-premium-secondary-v190.paper-action-home-v19529{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  backdrop-filter:blur(12px);
}
.paper-result-buttons-v19529 .btn.red.paper-action-home-v19529{
  background:#e30613!important;
  border:1px solid #e30613!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(227,6,19,.20);
}
.paper-result-buttons-v19529 .btn.red.paper-action-home-v19529:hover{
  box-shadow:0 14px 30px rgba(227,6,19,.26);
}
.paper-result-actions-v19526 .paper-result-status-v19520{
  margin-top:10px;
}

@media(max-width:760px){
  .paper-result-buttons-v19529{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .paper-result-buttons-v19529 .paper-action-home-v19529{
    width:100%;
    justify-content:flex-start!important;
  }
}


/* ==========================================================
   NÚCLEO PRO V1.9.5.30 · UNIFICACIÓN VISUAL GLOBAL
   Pantalla principal como referencia para cliente + administración
   ========================================================== */

/* ---------- BASE ---------- */
body.role-agency,
body.role-admin,
body.role-workshop{
  background:
    radial-gradient(1100px 520px at 50% -180px,rgba(227,6,19,.055),transparent 64%),
    #09090a!important;
  color:#f4f4f6;
}
body.role-agency .container-v180,
body.role-admin .container-v180,
body.role-workshop .container-v180{
  max-width:1320px;
}

/* ---------- CABECERA / MENÚ ---------- */
.topbar-v180{
  min-height:58px!important;
  height:auto!important;
  padding:8px 18px!important;
  gap:18px!important;
  background:rgba(10,10,11,.96)!important;
  border-bottom:1px solid #27272c!important;
  box-shadow:0 10px 32px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(18px);
  position:sticky;
  top:0;
  z-index:120;
}
.topbar-v180 .brand{
  font-size:18px!important;
  letter-spacing:-.03em;
}
.topbar-v180 .brand span{
  border-radius:5px!important;
  padding:3px 7px!important;
}
.portal-main-nav-v19530{
  gap:5px!important;
  flex-wrap:wrap;
}
.portal-main-nav-v19530>a{
  min-height:34px;
  display:inline-flex!important;
  align-items:center;
  padding:0 10px!important;
  border:1px solid transparent;
  border-radius:10px!important;
  color:#c9c9cf!important;
  font-size:11px!important;
  font-weight:800;
  background:transparent!important;
  transition:.16s ease;
}
.portal-main-nav-v19530>a:hover{
  color:#fff!important;
  border-color:#34343a!important;
  background:rgba(255,255,255,.06)!important;
}
.portal-main-nav-v19530>a.active{
  color:#fff!important;
  border-color:rgba(227,6,19,.48)!important;
  background:rgba(227,6,19,.12)!important;
}
.portal-main-nav-v19530>a.nav-aaff-v192{
  border-color:rgba(227,6,19,.45)!important;
}
.topbar-v180 .who{
  padding:6px 9px;
  border:1px solid #2c2c31;
  border-radius:10px;
  background:#111113;
  line-height:1.15;
}
.topbar-v180 .who small{
  display:block;
  color:#696971;
  font-size:7px;
  font-weight:900;
  letter-spacing:.10em;
}
.topbar-v180 .who b{
  color:#fff;
  font-size:9px;
}

/* ---------- BOTONES ---------- */
body.role-agency .btn,
body.role-admin .btn,
body.role-workshop .btn{
  min-height:40px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:11px;
  background:rgba(255,255,255,.075);
  color:#fff;
  font-size:11px;
  font-weight:900;
  box-shadow:none;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
body.role-agency .btn:hover,
body.role-admin .btn:hover,
body.role-workshop .btn:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.34);
  background:rgba(255,255,255,.11);
}
body.role-agency .btn.soft,
body.role-admin .btn.soft,
body.role-workshop .btn.soft,
body.role-agency .portal-premium-secondary-v190,
body.role-admin .portal-premium-secondary-v190,
body.role-workshop .portal-premium-secondary-v190{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  color:#fff!important;
}
body.role-agency .btn.red,
body.role-admin .btn.red,
body.role-workshop .btn.red{
  background:#e30613!important;
  border-color:#e30613!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(227,6,19,.20);
}
body.role-agency .btn.red:hover,
body.role-admin .btn.red:hover,
body.role-workshop .btn.red:hover{
  background:#f20a18!important;
  box-shadow:0 14px 30px rgba(227,6,19,.26);
}
body.role-agency .btn.small,
body.role-admin .btn.small,
body.role-workshop .btn.small{
  min-height:32px;
  padding:0 9px;
  border-radius:9px;
  font-size:9.5px;
}
.btn.danger-v19530,
body.role-agency .btn.danger-v19530,
body.role-admin .btn.danger-v19530{
  background:rgba(227,6,19,.06)!important;
  border:1px solid rgba(227,6,19,.38)!important;
  color:#ff8c94!important;
  box-shadow:none!important;
}
.btn.danger-v19530:hover{
  background:rgba(227,6,19,.14)!important;
  border-color:#e30613!important;
  color:#fff!important;
}

/* ---------- HEROES / TARJETAS / BLOQUES ---------- */
body.role-agency .hero:not(.price-pvpr-v184),
body.role-admin .hero:not(.price-pvpr-v184),
body.role-workshop .hero:not(.price-pvpr-v184),
body.role-agency .card,
body.role-admin .card,
body.role-workshop .card{
  border:1px solid #292a30;
  background:linear-gradient(145deg,#151619,#0f1012);
  color:#f4f4f6;
  box-shadow:none;
}
body.role-agency .hero:not(.price-pvpr-v184),
body.role-admin .hero:not(.price-pvpr-v184),
body.role-workshop .hero:not(.price-pvpr-v184){
  padding:18px 20px;
  border-radius:16px;
}
body.role-agency .card,
body.role-admin .card,
body.role-workshop .card{
  border-radius:16px;
}
body.role-agency .card h1,
body.role-agency .card h2,
body.role-agency .card h3,
body.role-admin .card h1,
body.role-admin .card h2,
body.role-admin .card h3,
body.role-workshop .card h1,
body.role-workshop .card h2,
body.role-workshop .card h3{
  color:#fff;
}
body.role-agency .muted,
body.role-admin .muted,
body.role-workshop .muted{
  color:#81838c!important;
}

/* ---------- FORMULARIOS ---------- */
body.role-agency .field label,
body.role-admin .field label,
body.role-workshop .field label,
body.role-agency .search-field label,
body.role-admin .search-field label,
body.role-workshop .search-field label{
  color:#8e9099!important;
}
body.role-agency .field input,
body.role-agency .field select,
body.role-agency .field textarea,
body.role-admin .field input,
body.role-admin .field select,
body.role-admin .field textarea,
body.role-workshop .field input,
body.role-workshop .field select,
body.role-workshop .field textarea,
body.role-agency .search-field input,
body.role-agency .search-field select,
body.role-admin .search-field input,
body.role-admin .search-field select,
body.role-workshop .search-field input,
body.role-workshop .search-field select{
  border:1px solid #34363d!important;
  border-radius:10px!important;
  background:#0d0e10!important;
  color:#f8f8fa!important;
}
body.role-agency input:focus,
body.role-agency select:focus,
body.role-agency textarea:focus,
body.role-admin input:focus,
body.role-admin select:focus,
body.role-admin textarea:focus,
body.role-workshop input:focus,
body.role-workshop select:focus,
body.role-workshop textarea:focus{
  outline:0;
  border-color:rgba(227,6,19,.75)!important;
  box-shadow:0 0 0 3px rgba(227,6,19,.08);
}
body.role-agency input::placeholder,
body.role-admin input::placeholder,
body.role-workshop input::placeholder,
body.role-agency textarea::placeholder,
body.role-admin textarea::placeholder,
body.role-workshop textarea::placeholder{
  color:#61636b!important;
}

/* ---------- BÚSQUEDA / TABLAS ---------- */
body.role-agency .search-panel,
body.role-admin .search-panel,
body.role-workshop .search-panel{
  border:1px solid #2b2d33!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#141518,#101114)!important;
  box-shadow:none!important;
}
body.role-agency .tablewrap,
body.role-admin .tablewrap,
body.role-workshop .tablewrap{
  border:1px solid #2b2d33!important;
  border-radius:16px!important;
  background:#111214!important;
  box-shadow:none!important;
}
body.role-agency table,
body.role-admin table,
body.role-workshop table{
  color:#e9e9ed!important;
}
body.role-agency th,
body.role-admin th,
body.role-workshop th{
  background:#17181c!important;
  color:#858892!important;
  border-color:#292c32!important;
}
body.role-agency td,
body.role-admin td,
body.role-workshop td{
  background:#111214!important;
  color:#e3e4e8!important;
  border-color:#24272d!important;
}
body.role-agency tbody tr:hover td,
body.role-admin tbody tr:hover td,
body.role-workshop tbody tr:hover td{
  background:#16171b!important;
}

/* ---------- MENÚS / KPIs / TARJETAS ADMIN ---------- */
body.role-admin .admin-menu-grid-v180>a,
body.role-admin .admin-kpi,
body.role-admin .admin-kpis-clean-v180>a,
body.role-admin .admin-kpis-clean-v180>div,
body.role-admin .clean-data-card-v180,
body.role-admin .admin-doc-row-v19517,
body.role-agency .module-card-clean-v180,
body.role-agency .agency-kpis-v180>a{
  border:1px solid #292b31!important;
  background:linear-gradient(145deg,#151619,#101113)!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.role-admin .admin-menu-grid-v180>a:hover,
body.role-admin .admin-kpi:hover,
body.role-admin .admin-doc-row-v19517:hover,
body.role-agency .module-card-clean-v180:hover,
body.role-agency .agency-kpis-v180>a:hover{
  border-color:rgba(227,6,19,.55)!important;
  transform:translateY(-1px);
}

/* ---------- PLANNING ---------- */
.planning-toolbar-v194,
.planning-modal-panel-v194{
  border-color:#2b2d33!important;
  background:linear-gradient(180deg,#151619,#101114)!important;
  color:#f2f2f4!important;
}
.planning-modal-v194{
  backdrop-filter:blur(8px);
}
.planning-modal-panel-v194 label{
  color:#8b8e97!important;
}
.planning-modal-panel-v194 input,
.planning-modal-panel-v194 select,
.planning-modal-panel-v194 textarea{
  background:#0d0e10!important;
  color:#fff!important;
  border-color:#34363d!important;
}

/* ---------- ALERTAS ---------- */
body.role-agency .alert,
body.role-admin .alert,
body.role-workshop .alert{
  border:1px solid #2e3036;
  background:#141518;
  color:#d8d9dd;
}
body.role-agency .alert.ok,
body.role-admin .alert.ok{
  border-color:#244a31;
  background:#101812;
  color:#9ddcad;
}
body.role-agency .alert.error,
body.role-admin .alert.error{
  border-color:#5a242a;
  background:#1c1012;
  color:#ff9ea5;
}
.portal-toast-inline-v19530{
  margin:0!important;
}

/* ---------- PAPELERÍA: TARJETA DE ACCIONES ---------- */
.paper-result-actions-v19530{
  margin-top:18px;
  padding:14px;
  border:1px solid #2b2e34;
  border-radius:15px;
  background:
    radial-gradient(440px 110px at 10% -40%,rgba(227,6,19,.09),transparent 58%),
    linear-gradient(180deg,#151619,#101114);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.paper-result-actions-v19530 .paper-result-ref-grid-v19527{
  margin-bottom:10px;
}
.paper-result-actions-v19530 .paper-result-reference-v19520{
  margin-bottom:0;
}

/* ---------- DOCUMENTOS SOMOS ----------
   El formulario A4 permanece blanco por diseño corporativo. Solo unificamos
   el editor y las acciones externas, nunca el papel.
*/
body.role-agency .somos-doc-editor-v19512,
body.role-admin .somos-doc-editor-v19512{
  border-color:#292b31!important;
  background:linear-gradient(180deg,#151619,#101114)!important;
}
body.role-agency .somos-doc-top-actions-v19512,
body.role-admin .somos-doc-top-actions-v19512{
  border-color:#292b31!important;
  background:#0f1012!important;
}

/* Error seguro de borrado */
.portal-delete-error-v19530{
  max-width:720px;
  margin:30px auto;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .topbar-v180{
    position:relative;
  }
  .portal-main-nav-v19530{
    order:3;
    width:100%;
    overflow:auto;
    flex-wrap:nowrap!important;
    padding-bottom:2px;
  }
  .portal-main-nav-v19530>a{
    flex:0 0 auto;
  }
  .topbar-v180 .who{
    margin-left:auto;
  }
}


/* ==========================================================
   V1.9.5.31 · PAPELERÍA · BLOQUE DE ACCIONES PREMIUM
   Punto 2 ejecutado: bloque independiente, más premium y
   sin texto inferior plano.
   ========================================================== */
.paper-result-actions-v19531{
  margin-top:18px;
  padding:16px;
  border:1px solid #2c2f35;
  border-radius:18px;
  background:
    radial-gradient(520px 140px at 10% -30%,rgba(227,6,19,.11),transparent 58%),
    linear-gradient(180deg,#17181c,#101114);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.028),
    0 14px 34px rgba(0,0,0,.18);
}
.paper-result-actions-head-v19531{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.paper-actions-kicker-v19531{
  display:block;
  margin-bottom:3px;
  color:#ff3b47;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}
.paper-result-actions-head-v19531 h4{
  margin:0;
  color:#fff;
  font-size:16px;
  line-height:1.1;
  letter-spacing:-.02em;
}
.paper-result-actions-v19531 .paper-result-ref-grid-v19527{
  margin-bottom:12px;
}
.paper-result-actions-v19531 .paper-result-reference-v19520{
  margin-bottom:0;
}
.paper-result-actions-v19531 .paper-result-reference-v19520 label{
  color:#f2f2f5!important;
}
.paper-result-actions-v19531 .paper-result-reference-v19520 input{
  background:#101114!important;
  border:1px solid #363943!important;
  color:#fff!important;
}

.paper-result-buttons-v19531{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.paper-result-buttons-v19531 .paper-action-home-v19531{
  -webkit-appearance:none;
  appearance:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:46px;
  padding:0 14px;
  border-radius:12px;
  font-size:12px;
  font-weight:900;
  letter-spacing:-.01em;
  cursor:pointer;
  text-decoration:none;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}
.paper-result-buttons-v19531 .paper-action-home-v19531 .portal-line-icon{
  width:15px!important;
  height:15px!important;
  flex:0 0 15px!important;
}
.paper-result-buttons-v19531 .paper-action-home-v19531.is-dark{
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  backdrop-filter:blur(10px);
}
.paper-result-buttons-v19531 .paper-action-home-v19531.is-red{
  background:#e30613;
  border:1px solid #e30613;
  color:#fff;
  box-shadow:0 10px 24px rgba(227,6,19,.20);
}
.paper-result-buttons-v19531 .paper-action-home-v19531:hover{
  transform:translateY(-1px);
}
.paper-result-buttons-v19531 .paper-action-home-v19531.is-dark:hover{
  background:rgba(255,255,255,.11);
  border-color:rgba(255,255,255,.32);
}
.paper-result-buttons-v19531 .paper-action-home-v19531.is-red:hover{
  background:#f20a18;
  border-color:#f20a18;
  box-shadow:0 14px 30px rgba(227,6,19,.26);
}
.paper-result-buttons-v19531 .paper-action-home-v19531:disabled{
  opacity:.62;
  cursor:not-allowed;
  transform:none!important;
  box-shadow:none!important;
}

.paper-result-status-v19531{
  display:none;
  margin-top:12px;
}
.paper-result-status-v19531.ok,
.paper-result-status-v19531.bad,
.paper-result-status-v19531:not(:empty){
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.paper-status-chip-v19531{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid #2f333a;
  background:#111317;
  color:#d8d9dd;
  font-size:11px;
  font-weight:800;
}
.paper-result-status-v19531.ok .paper-status-chip-v19531{
  border-color:#2b5a37;
  background:#101913;
  color:#98dfab;
}
.paper-result-status-v19531.bad .paper-status-chip-v19531{
  border-color:#6a2930;
  background:#1b1012;
  color:#ff9ea8;
}
.paper-status-link-v19531{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.075);
  color:#fff!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:900;
  transition:.16s ease;
}
.paper-status-link-v19531:hover{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.32);
}

@media(max-width:860px){
  .paper-result-buttons-v19531{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   NÚCLEO PRO V1.9.5.32 · AUDITORÍA VISUAL TOTAL
   Referencia visual: HOME NÚCLEO PRO.
   Cliente + Administración + Taller.
   ========================================================== */

:root{
  --np-bg:#09090a;
  --np-panel:#111214;
  --np-panel-2:#16171a;
  --np-panel-3:#0d0e10;
  --np-line:#2b2d33;
  --np-line-soft:#24262b;
  --np-text:#f4f4f6;
  --np-muted:#858892;
  --np-red:#e30613;
  --np-red-soft:rgba(227,6,19,.12);
}

/* ----------------------------------------------------------
   01 · CABECERAS DE PÁGINA
   ---------------------------------------------------------- */
.portal-audited-v19532 .admin-page-head,
.portal-audited-v19532 .portal-list-hero-v19523,
.portal-audited-v19532 .planning-client-hero-v194{
  padding:20px 22px!important;
  border:1px solid var(--np-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(720px 180px at 8% -20%,rgba(227,6,19,.13),transparent 58%),
    linear-gradient(145deg,#17181b,#0e0f11)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.portal-audited-v19532 .admin-page-head{
  align-items:center;
}
.portal-audited-v19532 .admin-page-head h1,
.portal-audited-v19532 .planning-client-hero-v194 h1{
  color:#fff!important;
  letter-spacing:-.035em;
}
.portal-audited-v19532 .admin-page-head p{
  color:var(--np-muted)!important;
}

/* ----------------------------------------------------------
   02 · BOTONES / ICONOS
   ---------------------------------------------------------- */
.portal-audited-v19532 .btn{
  gap:7px;
}
.portal-audited-v19532 .btn .portal-line-icon,
.portal-audited-v19532 .plv-cart-icon-v191 .portal-line-icon{
  width:15px!important;
  height:15px!important;
  flex:0 0 15px!important;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.portal-audited-v19532 .cancel-btn{
  background:rgba(231,157,24,.08)!important;
  color:#f0bd61!important;
  border:1px solid rgba(231,157,24,.38)!important;
}
.portal-audited-v19532 .delete-btn,
.portal-audited-v19532 .cart-remove-v186{
  background:rgba(227,6,19,.06)!important;
  color:#ff9098!important;
  border:1px solid rgba(227,6,19,.36)!important;
}
.portal-audited-v19532 .delete-btn:hover,
.portal-audited-v19532 .cart-remove-v186:hover{
  background:rgba(227,6,19,.14)!important;
  border-color:#e30613!important;
  color:#fff!important;
}

/* ----------------------------------------------------------
   03 · PAPELERÍA
   ---------------------------------------------------------- */
body.calculator-dark-v184 .tabs{
  gap:7px!important;
}
body.calculator-dark-v184 .tab,
body.calculator-dark-v184 .scaleChip,
body.calculator-dark-v184 .budgetPdfBtn.secondary,
body.calculator-dark-v184 .settingsBtn{
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
  border-radius:10px!important;
}
body.calculator-dark-v184 .tab.active,
body.calculator-dark-v184 .tab:hover,
body.calculator-dark-v184 .scaleChip:hover{
  border-color:rgba(227,6,19,.62)!important;
  background:rgba(227,6,19,.11)!important;
}
body.calculator-dark-v184 #eMountWrap{
  background:#111214!important;
  border-color:#2b2d33!important;
  color:#fff!important;
}
body.calculator-dark-v184 .traffic.green,
body.calculator-dark-v184 .traffic.yellow,
body.calculator-dark-v184 .traffic.red{
  background:#111317!important;
}
body.calculator-dark-v184 .traffic.green{border-color:#295d39!important}
body.calculator-dark-v184 .traffic.yellow{border-color:#6e531e!important}
body.calculator-dark-v184 .traffic.red{border-color:#6a282f!important}

/* ----------------------------------------------------------
   04 · DISPLAY / PLV
   ---------------------------------------------------------- */
.portal-audited-v19532 .plv-portal-heading-v190{
  border:1px solid var(--np-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(560px 150px at 12% -25%,rgba(227,6,19,.12),transparent 58%),
    linear-gradient(145deg,#17181b,#0e0f11)!important;
}
.portal-audited-v19532 .plv-heading-copy-v191 h1{color:#fff!important}
.portal-audited-v19532 .plv-heading-copy-v191 p{color:var(--np-muted)!important}
.portal-audited-v19532 .plv-portal-chip-v190,
.portal-audited-v19532 .adminCalcNotice-v186{
  border-color:#34363d!important;
  background:#121317!important;
  color:#9a9da6!important;
}
.portal-audited-v19532 .plv-cart-main-v191{
  border-color:#34363d!important;
  background:rgba(255,255,255,.07)!important;
}
.portal-audited-v19532 .plv-cart-icon-v191{
  background:rgba(227,6,19,.13)!important;
  color:#fff!important;
}

/* ----------------------------------------------------------
   05 · DTF
   ---------------------------------------------------------- */
.portal-audited-v19532 .dtf-hero-v1958,
.portal-audited-v19532 .dtf-stage-head-v1958,
.portal-audited-v19532 .dtf-frame-shell-v1958{
  border-color:var(--np-line)!important;
}
.portal-audited-v19532 .dtf-hero-v1958{
  background:
    radial-gradient(720px 240px at 8% 0,rgba(227,6,19,.11),transparent 60%),
    linear-gradient(145deg,#151619,#0d0e10)!important;
}
.portal-audited-v19532 .dtf-hero-panel-v1958,
.portal-audited-v19532 .dtf-stage-head-v1958{
  background:linear-gradient(180deg,#151619,#101114)!important;
}
.portal-audited-v19532 .dtf-hero-actions-v1958 .btn{
  min-height:42px;
  justify-content:flex-start;
}

/* ----------------------------------------------------------
   06 · PRESUPUESTOS / PEDIDOS / DOCUMENTOS
   ---------------------------------------------------------- */
.portal-audited-v19532 .portal-list-table-v19523 td,
.portal-audited-v19532 .portal-list-table-v19523 th{
  vertical-align:middle;
}
.portal-audited-v19532 .budget-row-actions-v186,
.portal-audited-v19532 .admin-order-actions,
.portal-audited-v19532 .admin-doc-actions-v19517{
  align-items:center;
  gap:7px;
}
.portal-audited-v19532 .budget-row-actions-v186 form,
.portal-audited-v19532 .admin-order-actions form,
.portal-audited-v19532 .admin-doc-actions-v19517 form{
  margin:0;
}
.portal-audited-v19532 .module-disabled-doc-v1956{
  border-color:#4a2a2d!important;
  background:#1b1112!important;
  color:#dc8990!important;
}

/* ----------------------------------------------------------
   07 · CESTA
   ---------------------------------------------------------- */
.portal-audited-v19532 .cart-line-v186{
  border:1px solid var(--np-line-soft)!important;
  border-radius:13px!important;
  background:#111214!important;
}
.portal-audited-v19532 .cart-line-v186:hover{
  border-color:#3a3d44!important;
}
.portal-audited-v19532 .cart-client-ref-v19527{
  border-color:#292c31!important;
}
.portal-audited-v19532 .cart-client-ref-v19527 input{
  background:#0d0e10!important;
  border-color:#34363d!important;
  color:#fff!important;
}
.portal-audited-v19532 .cart-summary-v186{
  position:sticky;
  top:78px;
}
.portal-audited-v19532 .checkout-confirm-v186{
  border-color:#2b2d33!important;
  background:#0f1012!important;
}
.portal-audited-v19532 .delivery-option-v186{
  background:#121316!important;
  border-color:#30333a!important;
}
.portal-audited-v19532 .delivery-option-v186:hover{
  border-color:#484c55!important;
}
.portal-audited-v19532 .delivery-option-v186:has(input:checked){
  background:#1e1113!important;
  border-color:#e30613!important;
}

/* ----------------------------------------------------------
   08 · CALENDARIO CLIENTE
   ---------------------------------------------------------- */
.portal-audited-v19532 .planning-view-tabs-v194{
  border-color:var(--np-line)!important;
  background:#111214!important;
}
.portal-audited-v19532 .planning-view-tabs-v194 a{
  color:#8b8e97!important;
}
.portal-audited-v19532 .planning-view-tabs-v194 a.active{
  color:#fff!important;
  background:rgba(227,6,19,.12)!important;
  border-color:rgba(227,6,19,.45)!important;
}
.portal-audited-v19532 .production-calendar-v193,
.portal-audited-v19532 .production-calendar-v193.planning-calendar-v194{
  border-color:var(--np-line)!important;
  background:#111214!important;
}
.portal-audited-v19532 .calendar-day-v193{
  background:#111214!important;
  border-color:#272a30!important;
  color:#e8e8eb!important;
}
.portal-audited-v19532 .calendar-day-v193.other{
  background:#0d0e10!important;
  color:#5f626b!important;
}
.portal-audited-v19532 .calendar-job-v193{
  background:#17191d!important;
  color:#fff!important;
  border:1px solid #2e3137!important;
  border-left:3px solid #777!important;
}
.portal-audited-v19532 .calendar-job-v193.review{border-left-color:#d7aa2c!important}
.portal-audited-v19532 .calendar-job-v193.production,
.portal-audited-v19532 .calendar-job-v193.finishing{border-left-color:#e30613!important}
.portal-audited-v19532 .calendar-job-v193.ready{border-left-color:#28a056!important}
.portal-audited-v19532 .calendar-job-v193 small,
.portal-audited-v19532 .calendar-job-v193 span{color:#858892!important}
.portal-audited-v19532 .calendar-list-v193>a{
  color:#f1f1f3!important;
  border-color:#26292f!important;
}
.portal-audited-v19532 .calendar-list-v193>a:hover{
  background:#15171a!important;
}

/* ----------------------------------------------------------
   09 · PLANNING ADMIN / TALLER
   ---------------------------------------------------------- */
.portal-audited-v19532 .planning-hero-v194{
  border:1px solid var(--np-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(760px 220px at 10% -30%,rgba(227,6,19,.14),transparent 60%),
    linear-gradient(145deg,#17181b,#0d0e10)!important;
}
.portal-audited-v19532 .planning-kpis-v194>a,
.portal-audited-v19532 .planning-kpis-v194>div{
  border-color:var(--np-line)!important;
  background:linear-gradient(180deg,#151619,#101114)!important;
}
.portal-audited-v19532 .planning-filters-v194 input,
.portal-audited-v19532 .planning-filters-v194 select,
.portal-audited-v19532 .planning-search-v194{
  background:#0d0e10!important;
  border-color:#34363d!important;
  color:#fff!important;
}
.portal-audited-v19532 .planning-day-v194,
.portal-audited-v19532 .planning-month-day-v194,
.portal-audited-v19532 .planning-flow-column-v194{
  border-color:#2b2d33!important;
  background:#101114!important;
}
.portal-audited-v19532 .planning-job-card-v194{
  border-color:#30333a!important;
  background:#17191d!important;
  color:#fff!important;
}
.portal-audited-v19532 .planning-modal-panel-v194{
  box-shadow:0 30px 90px rgba(0,0,0,.48)!important;
}

/* ----------------------------------------------------------
   10 · AAFF CLIENTE / ADMIN
   ---------------------------------------------------------- */
.portal-audited-v19532 .aaff-send-card-v192,
.portal-audited-v19532 .aaff-history-v192,
.portal-audited-v19532 .aaff-admin-card-v192{
  border-color:var(--np-line)!important;
  background:linear-gradient(180deg,#151619,#101114)!important;
}
.portal-audited-v19532 .aaff-history-list-v192>div,
.portal-audited-v19532 .aaff-ref-v192,
.portal-audited-v19532 .aaff-files-v192 a{
  border-color:#2d3036!important;
  background:#101114!important;
}

/* ----------------------------------------------------------
   11 · ADMIN CLIENTES / FICHA CLIENTE
   ---------------------------------------------------------- */
.portal-audited-v19532 .client-profile-grid{
  gap:16px;
}
.portal-audited-v19532 .client-data-list>div{
  border-color:#292c31!important;
  background:#111214!important;
}
.portal-audited-v19532 .client-data-list span{
  color:#7e818a!important;
}
.portal-audited-v19532 .client-data-list b{
  color:#fff!important;
}
.portal-audited-v19532 .module-access-row-v192{
  border:1px solid #2b2e34!important;
  background:#111214!important;
}
.portal-audited-v19532 .module-access-row-v192.enabled{
  border-color:rgba(227,6,19,.40)!important;
  background:linear-gradient(90deg,rgba(227,6,19,.09),#111214 48%)!important;
}
.portal-audited-v19532 .module-access-copy-v192 b{color:#fff!important}
.portal-audited-v19532 .module-access-copy-v192 small{color:#777b84!important}
.portal-audited-v19532 .module-discount-v192>div{
  border-color:#33363d!important;
  background:#0d0e10!important;
}
.portal-audited-v19532 .module-discount-v192 input{
  background:transparent!important;
  color:#fff!important;
}
.portal-audited-v19532 .admin-settings-details{
  border-color:#2b2d33!important;
  background:linear-gradient(180deg,#151619,#101114)!important;
}
.portal-audited-v19532 .admin-settings-details summary{
  color:#fff!important;
}

/* controles compactos dentro de tablas admin */
.portal-audited-v19532 .client-control-form select,
.portal-audited-v19532 .client-control-form input,
.portal-audited-v19532 .admin-order-actions select,
.portal-audited-v19532 td select{
  border:1px solid #34363d!important;
  background:#0d0e10!important;
  color:#fff!important;
  border-radius:9px!important;
}

/* ----------------------------------------------------------
   12 · ADMIN TALLER
   ---------------------------------------------------------- */
.portal-audited-v19532 .workshop-user-row-v193{
  border-color:#2b2e34!important;
  background:#111214!important;
}
.portal-audited-v19532 .workshop-user-row-v193 label{
  color:#81848d!important;
}
.portal-audited-v19532 .workshop-user-row-v193 input,
.portal-audited-v19532 .workshop-user-row-v193 select{
  border-color:#34363d!important;
  background:#0d0e10!important;
  color:#fff!important;
}
.portal-audited-v19532 .workshop-user-meta-v193 small{color:#777b84!important}
.portal-audited-v19532 .workshop-user-meta-v193 b{color:#fff!important}

/* ----------------------------------------------------------
   13 · DOCUMENTOS SOMOS
   ---------------------------------------------------------- */
.portal-audited-v19532 .somos-doc-top-actions-v19512,
.portal-audited-v19532 .doc-actions-v193{
  padding:10px 12px;
  border:1px solid #2b2d33!important;
  border-radius:14px;
  background:#0f1012!important;
}
.portal-audited-v19532 .somos-doc-editor-v19512{
  border-radius:16px!important;
}
.portal-audited-v19532 .somos-doc-editor-v19512 label span{
  color:#8b8e97!important;
}

/* ----------------------------------------------------------
   14 · AVISO LEGAL
   ---------------------------------------------------------- */
.portal-audited-v19532 .legal-page-v190{
  max-width:1080px;
  margin:0 auto;
  padding:28px 30px!important;
  border:1px solid var(--np-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(720px 200px at 10% -50px,rgba(227,6,19,.09),transparent 58%),
    linear-gradient(180deg,#151619,#101114)!important;
  color:#d7d8dc!important;
}
.portal-audited-v19532 .legal-page-v190 h1{color:#fff!important}
.portal-audited-v19532 .legal-page-v190 p,
.portal-audited-v19532 .legal-page-v190 li{
  color:#b5b7be!important;
  line-height:1.65;
}
.portal-audited-v19532 .legal-page-v190 strong{
  color:inherit!important;
}
.portal-audited-v19532 .legal-page-v190 a{
  color:#ff6973!important;
}

/* ----------------------------------------------------------
   15 · LOGIN / REGISTRO
   ---------------------------------------------------------- */
body.login-approved-page,
body.register-clean-page{
  background:
    radial-gradient(1000px 520px at 50% -150px,rgba(227,6,19,.12),transparent 65%),
    #09090a!important;
  color:#fff!important;
}
.login-functional-card,
.register-clean-panel{
  border:1px solid #2b2d33!important;
  background:
    radial-gradient(520px 160px at 10% -30%,rgba(227,6,19,.08),transparent 60%),
    linear-gradient(180deg,#151619,#101114)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.30)!important;
}
.login-functional-card h1,
.register-clean-panel h1{color:#fff!important}
.login-functional-card .field label,
.register-clean-panel .field label{color:#9598a1!important}
.login-functional-card .field input,
.register-clean-panel .field input{
  border-color:#34363d!important;
  background:#0d0e10!important;
  color:#fff!important;
}
.login-approved-submit,
.register-clean-submit{
  border:1px solid #e30613!important;
  background:#e30613!important;
  color:#fff!important;
  border-radius:11px!important;
  box-shadow:0 12px 28px rgba(227,6,19,.22)!important;
}
.login-approved-register,
.register-clean-login,
.register-clean-lead,
.register-clean-note{color:#858892!important}
.login-approved-register a,
.register-clean-login a,
.register-clean-back{color:#ff6c75!important}

/* ----------------------------------------------------------
   16 · RESPONSIVE UNIFICADO
   ---------------------------------------------------------- */
@media(max-width:900px){
  .portal-audited-v19532 .admin-page-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .portal-audited-v19532 .admin-page-head .actions{
    width:100%;
  }
  .portal-audited-v19532 .cart-summary-v186{
    position:static;
  }
}


/* ==========================================================
   V1.9.5.33 · PAPELERÍA · BOTONES EXACTAMENTE ESTILO HOME
   ========================================================== */
.paper-result-buttons-v19533{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.paper-result-buttons-v19533 .paper-home-btn-v19533{
  min-height:44px;
  border-radius:12px!important;
  font-size:12px;
  font-weight:900;
  padding:0 16px;
  border:0;
  cursor:pointer;
  white-space:nowrap;
}
.paper-result-buttons-v19533 .paper-home-btn-v19533 .portal-line-icon{
  width:15px!important;
  height:15px!important;
  flex:0 0 15px!important;
}
.paper-result-buttons-v19533 .paper-home-btn-v19533:disabled{
  opacity:.58;
  cursor:not-allowed;
  box-shadow:none!important;
  transform:none!important;
}

.paper-result-status-v19533{
  min-height:0;
  margin-top:10px;
  display:none;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.paper-result-status-v19533.ok,
.paper-result-status-v19533.bad,
.paper-result-status-v19533:not(:empty){
  display:flex;
}
.paper-status-chip-v19533{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  border:1px solid #2e3137;
  background:#111317;
  color:#dadbe0;
  font-size:11px;
  font-weight:800;
}
.paper-result-status-v19533.ok .paper-status-chip-v19533{
  background:#101813;
  border-color:#2c5a37;
  color:#9fe0b1;
}
.paper-result-status-v19533.bad .paper-status-chip-v19533{
  background:#1b1012;
  border-color:#6a2930;
  color:#ff9ea8;
}
.paper-status-link-v19533{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  color:#fff!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:900;
}
.paper-status-link-v19533:hover{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.28);
}

@media(max-width:760px){
  .paper-result-buttons-v19533{
    display:grid;
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   V1.9.5.34 · FIABILIDAD VISUAL + PAPELERÍA HOME REAL
   ========================================================== */

/* El bloque usa directamente portal-premium-actions-v190 de la HOME.
   Solo controlamos distribución, no reinventamos el botón. */
.paper-result-buttons-v19534{
  margin-top:0!important;
}
.paper-result-buttons-v19534 .btn{
  min-height:44px;
}
.paper-result-buttons-v19534 .portal-line-icon{
  width:15px!important;
  height:15px!important;
  flex:0 0 15px!important;
}

/* El resultado de Guardar / Cesta / PDF deja de ocupar una línea debajo.
   Aparece temporalmente como aviso flotante. */
.paper-action-toast-v19534{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9999;
  display:none;
  align-items:center;
  gap:8px;
  max-width:min(520px,calc(100vw - 32px));
  padding:10px;
  border:1px solid #343740;
  border-radius:14px;
  background:rgba(14,15,18,.97);
  box-shadow:0 20px 55px rgba(0,0,0,.42);
  backdrop-filter:blur(18px);
}
.paper-action-toast-v19534:not(:empty){
  display:flex;
}
.paper-action-toast-v19534.ok{
  border-color:#315f3e;
}
.paper-action-toast-v19534.bad{
  border-color:#6c2b32;
}
.paper-toast-chip-v19534{
  color:#e7e8eb;
  font-size:11px;
  font-weight:800;
}
.paper-action-toast-v19534.ok .paper-toast-chip-v19534{
  color:#9fe0b1;
}
.paper-action-toast-v19534.bad .paper-toast-chip-v19534{
  color:#ff9ea8;
}
.paper-toast-link-v19534{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 11px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:10px;
  background:rgba(255,255,255,.08);
  color:#fff!important;
  text-decoration:none!important;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
}

/* Fallback adicional para cualquier icono del portal. */
.portal-line-icon{
  max-width:28px;
  max-height:28px;
}

/* Administración: formularios de borrado integrados sin margen extraño. */
.admin-client-history-v19523 td .actions form,
.admin-doc-actions-v19517 form,
.budget-row-actions-v186 form{
  margin:0;
}

@media(max-width:760px){
  .paper-result-buttons-v19534{
    display:grid!important;
    grid-template-columns:1fr;
  }
  .paper-result-buttons-v19534 .btn{
    width:100%;
    justify-content:flex-start;
  }
  .paper-action-toast-v19534{
    left:16px;
    right:16px;
    bottom:16px;
  }
}


/* ==========================================================
   V1.9.5.35 · PAPELERÍA · BOTONES IDÉNTICOS A FORMULARIOS
   ========================================================== */
.paper-result-buttons-v19535{
  margin-top:0!important;
  align-items:center;
}
.paper-result-buttons-v19535 .btn{
  min-height:44px;
}
@media(max-width:760px){
  .paper-result-buttons-v19535{
    display:grid!important;
    grid-template-columns:1fr;
  }
  .paper-result-buttons-v19535 .btn{
    width:100%;
  }
}


/* ==========================================================
   NÚCLEO PRO V1.9.5.38 · ACTUALIZACIÓN TRAS PRUEBA CLIENTE
   ========================================================== */

/* Papelería · edición / medidas */
.paper-editing-banner-v19538{
  max-width:1180px;
  margin:0 auto 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.paper-editing-banner-v19538 div{
  display:grid;
  gap:3px;
}
.paper-editing-banner-v19538 span{
  font-size:12px;
}
.paper-size-field-v19538 label b{
  margin-left:6px;
  color:#ff5e69;
  font-size:8px;
  letter-spacing:.08em;
}
.somos-a4-sizes-v19538{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  margin:0 0 5mm;
  border:1px solid #dfe1e5;
  border-radius:2.5mm;
  overflow:hidden;
  background:#fff;
}
.somos-a4-sizes-v19538>div{
  padding:3.4mm 4mm;
}
.somos-a4-sizes-v19538>div+div{
  border-left:1px solid #dfe1e5;
}
.somos-a4-sizes-v19538 small{
  display:block;
  margin-bottom:1mm;
  color:#777;
  font-size:7.5pt;
  font-weight:800;
  letter-spacing:.08em;
}
.somos-a4-sizes-v19538 b{
  color:#171717;
  font-size:12pt;
}
.somos-line-sizes-v19538{
  display:block;
  margin-top:5px;
  color:#242424;
  font-size:10px;
  font-weight:700;
}
.somos-line-sizes-v19538 b{color:#e30613;font-size:8px;letter-spacing:.06em}
.somos-line-sizes-v19538 i{font-style:normal;color:#aaa;padding:0 4px}

/* Planning · lista de trabajos: sin fondos blancos heredados */
body.role-admin .planning-list-v194,
body.role-workshop .planning-list-v194{
  display:grid;
  gap:8px;
  padding:0!important;
  background:transparent!important;
}
body.role-admin .planning-list-row-v194,
body.role-workshop .planning-list-row-v194{
  width:100%!important;
  border:1px solid #2d3036!important;
  border-left:4px solid #5a5e67!important;
  border-radius:13px!important;
  background:#111214!important;
  color:#f4f4f6!important;
  box-shadow:none!important;
}
body.role-admin .planning-list-row-v194:hover,
body.role-workshop .planning-list-row-v194:hover{
  border-color:#454952!important;
  background:#17191d!important;
}
body.role-admin .planning-list-row-v194>div,
body.role-workshop .planning-list-row-v194>div{
  background:transparent!important;
  color:#f4f4f6!important;
}
body.role-admin .planning-list-row-v194 small,
body.role-workshop .planning-list-row-v194 small,
body.role-admin .planning-list-row-v194 span,
body.role-workshop .planning-list-row-v194 span{
  color:#8d9099!important;
}
body.role-admin .planning-list-row-v194 b,
body.role-workshop .planning-list-row-v194 b{
  color:#f4f4f6!important;
}
body.role-admin .planning-list-row-v194.production,
body.role-workshop .planning-list-row-v194.production{border-left-color:#e30613!important}
body.role-admin .planning-list-row-v194.blocked,
body.role-workshop .planning-list-row-v194.blocked{border-left-color:#d69d1d!important}
body.role-admin .planning-list-row-v194.ready,
body.role-workshop .planning-list-row-v194.ready,
body.role-admin .planning-list-row-v194.completed,
body.role-workshop .planning-list-row-v194.completed{border-left-color:#2ca35b!important}

/* Estado completado */
.prod-status-v193.completed{
  border-color:rgba(50,173,93,.45)!important;
  background:rgba(50,173,93,.12)!important;
  color:#9ae2af!important;
}
.planning-job-card-v194.completed{
  opacity:.82;
  border-color:#315c3e!important;
}
.completed-action-v19538{
  background:rgba(50,173,93,.11)!important;
  border:1px solid rgba(50,173,93,.42)!important;
  color:#a4e6b6!important;
}
.completed-action-v19538:hover{
  background:rgba(50,173,93,.20)!important;
  border-color:#42b86c!important;
}

/* Selector de ficha cliente */
.planning-create-form-v194 select,
.planning-edit-form-v194 select{
  color:#fff;
}
.planning-create-form-v194 option,
.planning-edit-form-v194 option{
  background:#121316;
  color:#fff;
}
.manual-client-job-v19538{
  cursor:default;
}
.calendar-list-v193 .manual-client-list-v19538{
  display:grid;
  grid-template-columns:125px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:13px 14px;
  border-bottom:1px solid #26292f;
  color:#f1f1f3;
  background:#111214;
}
.calendar-list-v193 .manual-client-list-v19538:hover{
  background:#15171a;
}

@media(max-width:760px){
  .paper-editing-banner-v19538{
    align-items:flex-start;
    flex-direction:column;
  }
  .somos-a4-sizes-v19538{
    grid-template-columns:1fr;
  }
  .somos-a4-sizes-v19538>div+div{
    border-left:0;
    border-top:1px solid #dfe1e5;
  }
  .calendar-list-v193 .manual-client-list-v19538{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   NÚCLEO PRO V1.9.5.39 · PRESUPUESTO MULTILÍNEA
   ========================================================== */
.multi-budget-list-v19539{
  margin:0 0 18px;
  border:1px solid #2b2d33;
  border-radius:16px;
  overflow:hidden;
  background:#101114;
}
.multi-budget-list-head-v19539{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:16px 18px;
  border-bottom:1px solid #292c32;
  background:linear-gradient(180deg,#17181c,#121317);
}
.multi-budget-list-head-v19539 h2{margin:3px 0 0;color:#fff;font-size:18px}
.multi-budget-list-head-v19539>span{color:#858892;font-size:11px;font-weight:800}
.multi-budget-list-v19539>article{
  display:grid;
  grid-template-columns:minmax(0,1fr) 140px auto;
  gap:16px;
  align-items:center;
  padding:14px 18px;
  border-bottom:1px solid #25282e;
}
.multi-budget-list-v19539>article:last-child{border-bottom:0}
.multi-budget-list-v19539>article:hover{background:#15171a}
.multi-budget-list-v19539 h3{margin:3px 0;color:#fff;font-size:15px}
.multi-budget-list-v19539 p{margin:4px 0;color:#c9cbd1;font-size:12px}
.multi-budget-list-v19539 article small,
.multi-budget-list-v19539 article span{color:#858892;font-size:10px}
.multi-budget-summary-v19539{text-align:right}
.multi-budget-summary-v19539 b{display:block;color:#fff;font-size:22px}
.multi-budget-summary-v19539 span{display:block;margin-top:2px}
.inline-form-v19539{margin:0}

.multi-budget-editor-lines-v19539{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid #2a2d33;
}
.multi-budget-editor-lines-v19539>span{
  display:block;
  margin-bottom:8px;
  color:#858892;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
}
.multi-budget-editor-lines-v19539 article{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:10px 0;
  border-bottom:1px solid #282b30;
}
.multi-budget-editor-lines-v19539 article b{display:block;color:#fff;font-size:11px}
.multi-budget-editor-lines-v19539 article small{display:block;margin-top:2px;color:#858892;font-size:10px}
.multi-budget-editor-lines-v19539 article form{margin:0}

.multi-budget-lines-v19539 article{
  grid-template-columns:minmax(0,1fr) 31mm 37mm;
}
.multi-budget-lines-v19539 article>div:nth-child(2) b{
  display:block;
  margin:1mm 0;
  font-size:8.3pt;
}
.multi-budget-lines-v19539 article>div:nth-child(2) span{
  display:block;
  font-size:7pt;
}

@media(max-width:760px){
  .multi-budget-list-v19539>article{grid-template-columns:1fr}
  .multi-budget-summary-v19539{text-align:left}
}
@media print{
  .multi-budget-lines-v19539 article{
    break-inside:avoid;
    page-break-inside:avoid;
  }
}

/* V1.9.5.41 · Revistas + Cartas Menú · configurador profesional */
.product-builder-v19541{padding:18px!important;background:linear-gradient(145deg,#151619,#0f1012)!important}
.builder-title-v19541{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #2b2e34}.builder-title-v19541 h2{margin:4px 0 5px!important;color:#fff!important;font-size:22px!important}.builder-title-v19541 p{margin:0;max-width:740px;color:#969aa4;font-size:12px;line-height:1.55}.builder-kicker-v19541{color:#e30613;font-size:9px;font-weight:950;letter-spacing:.14em}.builder-badge-v19541{padding:6px 9px;border:1px solid rgba(227,6,19,.45);border-radius:999px;background:rgba(227,6,19,.08);color:#ff616b;font-size:9px;font-weight:950;letter-spacing:.1em}
.builder-step-v19541{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:15px 0;border-bottom:1px solid #272a30}.builder-step-v19541:last-of-type{border-bottom:0}.builder-step-number-v19541{display:grid;place-items:center;width:32px;height:32px;border:1px solid #3a3d44;border-radius:10px;background:#101114;color:#fff;font-size:11px;font-weight:950}.builder-step-body-v19541 h3{margin:4px 0 12px;color:#fff;font-size:13px}.builder-grid-v19541{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.builder-grid-v19541 .field{margin:0}.field-help-v19541{display:block;margin-top:5px;color:#777b85;font-size:9px}
.binding-options-v19541{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}.binding-options-v19541 label{cursor:pointer}.binding-options-v19541 input{position:absolute;opacity:0;pointer-events:none}.binding-options-v19541 label>span{display:grid;gap:4px;padding:13px 14px;border:1px solid #34373e;border-radius:12px;background:#0d0e10}.binding-options-v19541 label>span b{color:#fff;font-size:12px}.binding-options-v19541 label>span small{color:#858993;font-size:9px}.binding-options-v19541 input:checked+span{border-color:#e30613;background:rgba(227,6,19,.09);box-shadow:inset 0 0 0 1px rgba(227,6,19,.15)}
.binding-capacity-v19541{display:flex;align-items:center;gap:10px;margin-top:8px;padding:11px 13px;border:1px solid #32353b;border-radius:11px;background:#0e0f11;color:#aaa;font-size:10px}.binding-capacity-v19541 b{color:#fff;font-size:15px}.binding-capacity-v19541.ok{border-color:rgba(51,164,91,.45);background:rgba(51,164,91,.07)}.binding-capacity-v19541.ok b{color:#9de0b1}.binding-capacity-v19541.bad{border-color:rgba(227,6,19,.55);background:rgba(227,6,19,.08)}.pro-artwork-note-v19541{display:grid;gap:3px;margin-top:14px;padding:12px 14px;border:1px solid #2e3137;border-left:3px solid #e30613;border-radius:10px;background:#0e0f11}.pro-artwork-note-v19541 b{color:#fff;font-size:10px}.pro-artwork-note-v19541 span{color:#8c9099;font-size:10px;line-height:1.5}
@media(max-width:760px){.builder-grid-v19541,.binding-options-v19541{grid-template-columns:1fr}.builder-step-v19541{grid-template-columns:30px minmax(0,1fr)}.builder-step-number-v19541{width:28px;height:28px}.builder-title-v19541{flex-direction:column}}

/* ==========================================================
   NÚCLEO PRO V1.9.5.43 · ANALÍTICA Y SEGUIMIENTO DE CLIENTES
   ========================================================== */
.analytics-head-v19543{align-items:flex-end}
.analytics-toolbar-v19543{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;margin-bottom:16px;background:linear-gradient(145deg,#151619,#101113)!important;border:1px solid #2a2d33!important}
.analytics-toolbar-v19543 small,.analytics-start-v19543 small{display:block;color:#7f828b;font-size:8px;font-weight:900;letter-spacing:.12em;margin-bottom:7px}
.analytics-start-v19543{text-align:right}.analytics-start-v19543 b{color:#d9dbe0;font-size:11px}
.analytics-periods-v19543{display:flex;gap:6px;flex-wrap:wrap}.analytics-periods-v19543 a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border:1px solid #30333a;border-radius:9px;background:#111215;color:#a9abb2;font-size:10px;font-weight:900;text-decoration:none}.analytics-periods-v19543 a:hover{color:#fff;border-color:#4b4e57}.analytics-periods-v19543 a.active{background:#e30613;border-color:#e30613;color:#fff}
.analytics-kpis-v19543{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0 0 16px}.analytics-kpis-v19543 article{min-width:0;padding:13px 12px;border:1px solid #292c32;border-radius:13px;background:linear-gradient(180deg,#15161a,#101114)}.analytics-kpis-v19543 small{display:block;min-height:23px;color:#81848d;font-size:8px;font-weight:900;letter-spacing:.08em}.analytics-kpis-v19543 b{display:block;color:#fff;font-size:25px;line-height:1;margin:4px 0 6px}.analytics-kpis-v19543 span{display:block;color:#6f727b;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-kpis-v19543.client{grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0 16px}
.analytics-chart-card-v19543{padding:17px!important;margin-bottom:16px}.analytics-legend-v19543{display:flex;gap:12px;align-items:center}.analytics-legend-v19543 span{display:flex;align-items:center;gap:5px;color:#777a83;font-size:9px;font-weight:800}.analytics-legend-v19543 i{width:8px;height:8px;border-radius:999px;background:#4a4d56}.analytics-legend-v19543 i.budget{background:#9f1019}.analytics-legend-v19543 i.order{background:#e30613}
.analytics-bars-v19543{display:flex;align-items:stretch;gap:4px;height:210px;padding:18px 2px 0;border-top:1px solid #26292f}.analytics-bars-v19543.compact{height:180px}.analytics-day-v19543{flex:1;min-width:6px;display:flex;flex-direction:column;align-items:center;gap:6px}.analytics-bar-track-v19543{width:100%;max-width:22px;flex:1;display:flex;align-items:flex-end;border-radius:7px;background:#0c0d0f;overflow:hidden}.analytics-bar-v19543{position:relative;width:100%;min-height:3px;border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,#555963,#30333a);transition:height .2s ease}.analytics-bar-v19543 .budgets,.analytics-bar-v19543 .orders{position:absolute;left:0;right:0;bottom:0;background:#9f1019}.analytics-bar-v19543 .orders{background:#e30613}.analytics-day-v19543 small{color:#646771;font-size:7px;transform:rotate(-45deg);transform-origin:center;white-space:nowrap;margin-top:5px}
.analytics-two-v19543{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:16px}.analytics-two-v19543.client{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)}
.analytics-ranking-v19543{padding:0!important;overflow:hidden}.analytics-ranking-v19543>.admin-card-head{padding:15px 16px;border-bottom:1px solid #282b31;margin:0!important}.analytics-ranking-v19543>.admin-card-head>span{color:#777a83;font-size:9px}
.analytics-rank-list-v19543{display:grid}.analytics-rank-list-v19543 article{display:grid;grid-template-columns:28px minmax(0,1fr) auto 85px;gap:12px;align-items:center;padding:11px 14px;border-bottom:1px solid #25282e;background:#111214}.analytics-rank-list-v19543 article:last-child{border-bottom:0}.analytics-rank-list-v19543 article:hover{background:#15171a}.analytics-rank-list-v19543 article>strong{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#1c1e22;color:#8f929b;font-size:9px}.analytics-rank-list-v19543 article>div:nth-child(2) b{display:block;color:#f2f3f5;font-size:11px}.analytics-rank-list-v19543 article>div:nth-child(2) small{display:block;margin-top:3px;color:#737680;font-size:9px}.analytics-rank-metrics-v19543{display:flex;gap:10px;align-items:center}.analytics-rank-metrics-v19543 span{color:#777a83;font-size:8px;text-align:right}.analytics-rank-metrics-v19543 span b{display:block;color:#d9dbe0;font-size:11px}.analytics-conv-v19543{text-align:right}.analytics-conv-v19543 small{display:block;color:#696c75;font-size:7px}.analytics-conv-v19543 b{color:#fff;font-size:11px}.analytics-rank-list-v19543.modules article{grid-template-columns:28px minmax(0,1fr) auto}.analytics-rank-list-v19543.client-products article{grid-template-columns:28px minmax(0,1fr) auto}.analytics-rank-list-v19543.client-products .analytics-rank-metrics-v19543{font-size:8px}
.analytics-client-list-v19543{display:grid}.analytics-client-list-v19543>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border-bottom:1px solid #25282e;text-decoration:none;background:#111214}.analytics-client-list-v19543>a:last-child{border-bottom:0}.analytics-client-list-v19543>a:hover{background:#15171a}.analytics-client-list-v19543>a>div:first-child b{display:block;color:#f2f3f5;font-size:11px}.analytics-client-list-v19543>a>div:first-child small{display:block;margin-top:3px;color:#747780;font-size:9px}.analytics-client-list-v19543>a>div:last-child{display:flex;gap:11px}.analytics-client-list-v19543>a>div:last-child span{color:#737680;font-size:8px;text-align:right}.analytics-client-list-v19543>a>div:last-child b{display:block;color:#fff;font-size:11px}
.analytics-interest-v19543{display:grid}.analytics-interest-v19543 article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #25282e}.analytics-interest-v19543 article:last-child{border-bottom:0}.analytics-interest-v19543 article>div:first-child b{display:block;color:#fff;font-size:11px}.analytics-interest-v19543 article>div:first-child small{color:#737680;font-size:9px}.analytics-interest-v19543 article>div:last-child{display:flex;gap:10px;align-items:center}.analytics-interest-v19543 article>div:last-child span{color:#7d8089;font-size:8px}.analytics-interest-v19543 article>div:last-child strong{padding:5px 7px;border:1px solid rgba(227,6,19,.35);border-radius:8px;background:rgba(227,6,19,.08);color:#ff7b83;font-size:9px}
.analytics-timeline-v19543{padding:0!important;overflow:hidden;margin-bottom:18px}.analytics-timeline-v19543>.admin-card-head{padding:15px 16px;margin:0!important;border-bottom:1px solid #282b31}.analytics-events-v19543{display:grid;max-height:620px;overflow:auto}.analytics-events-v19543>a,.analytics-events-v19543>div:not(.empty-clean-v180){display:grid;grid-template-columns:118px 135px minmax(0,1fr) auto;gap:11px;align-items:center;padding:10px 14px;border-bottom:1px solid #24272d;text-decoration:none;background:#101114}.analytics-events-v19543>a:hover{background:#15171a}.analytics-events-v19543 time{color:#656873;font-size:8px;font-variant-numeric:tabular-nums}.analytics-event-type-v19543{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 7px;border:1px solid #30333a;border-radius:8px;background:#181a1e;color:#a9abb2;font-size:8px;font-weight:900;white-space:nowrap}.analytics-event-type-v19543.order_created,.analytics-event-type-v19543.order_item_created{border-color:rgba(65,182,104,.32);background:rgba(65,182,104,.08);color:#9bddb0}.analytics-event-type-v19543.budget_created,.analytics-event-type-v19543.quote_line_added{border-color:rgba(227,6,19,.35);background:rgba(227,6,19,.08);color:#ff838b}.analytics-event-type-v19543.login{border-color:rgba(100,135,255,.28);background:rgba(100,135,255,.07);color:#a8b8ff}.analytics-events-v19543 div>div b,.analytics-events-v19543 section b{display:block;color:#e7e8ea;font-size:10px}.analytics-events-v19543 div>div small,.analytics-events-v19543 section small{display:block;margin-top:2px;color:#70737c;font-size:8px}.analytics-events-v19543>a>strong,.analytics-events-v19543>div>strong{color:#fff;font-size:10px;text-align:right}
.client-activity-v19543{margin:18px 0}.client-activity-v19543>.portal-section-head-v180{margin-bottom:10px}.client-activity-v19543>.portal-section-head-v180 p{max-width:680px;color:#777a83;font-size:10px}
.admin-analytics-preview-v19543{margin-top:4px}.analytics-preview-kpis-v19543{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:10px}.analytics-preview-kpis-v19543>div{padding:12px;border:1px solid #292c32;border-radius:12px;background:#111214}.analytics-preview-kpis-v19543 small{display:block;color:#7e818a;font-size:8px;font-weight:900}.analytics-preview-kpis-v19543 b{display:block;margin-top:5px;color:#fff;font-size:22px}.analytics-preview-top-v19543{border:1px solid #292c32;border-radius:14px;overflow:hidden;background:#101114}.analytics-preview-top-v19543>.admin-card-head{padding:12px 14px;margin:0!important;border-bottom:1px solid #292c32}.analytics-preview-top-v19543>a{display:grid;grid-template-columns:30px minmax(0,1fr) 80px 80px 70px;gap:10px;align-items:center;padding:9px 13px;border-bottom:1px solid #24272c;color:#fff;text-decoration:none}.analytics-preview-top-v19543>a:last-of-type{border-bottom:0}.analytics-preview-top-v19543>a:hover{background:#15171a}.analytics-preview-top-v19543>a>strong{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#1b1d21;color:#878a93;font-size:8px}.analytics-preview-top-v19543>a div b{display:block;color:#f4f4f5;font-size:10px}.analytics-preview-top-v19543>a div small{display:block;color:#70737c;font-size:8px;margin-top:2px}.analytics-preview-top-v19543>a>span{color:#8b8e97;font-size:8px;text-align:right}

@media(max-width:1180px){.analytics-kpis-v19543{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-preview-kpis-v19543{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-rank-list-v19543 article{grid-template-columns:28px minmax(0,1fr) auto}.analytics-rank-list-v19543 .analytics-conv-v19543{display:none}}
@media(max-width:900px){.analytics-two-v19543,.analytics-two-v19543.client{grid-template-columns:1fr}.analytics-events-v19543>a,.analytics-events-v19543>div:not(.empty-clean-v180){grid-template-columns:100px 120px minmax(0,1fr)}.analytics-events-v19543>a>strong,.analytics-events-v19543>div>strong{display:none}.analytics-toolbar-v19543{align-items:flex-start;flex-direction:column}.analytics-start-v19543{text-align:left}.analytics-preview-top-v19543>a{grid-template-columns:26px minmax(0,1fr) 62px}.analytics-preview-top-v19543>a>span:nth-last-child(-n+2){display:none}}
@media(max-width:620px){.analytics-kpis-v19543,.analytics-kpis-v19543.client{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-preview-kpis-v19543{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-rank-list-v19543 article,.analytics-rank-list-v19543.modules article,.analytics-rank-list-v19543.client-products article{grid-template-columns:24px minmax(0,1fr)}.analytics-rank-metrics-v19543{grid-column:2;justify-content:flex-start}.analytics-client-list-v19543>a{grid-template-columns:1fr}.analytics-client-list-v19543>a>div:last-child{justify-content:flex-start}.analytics-events-v19543>a,.analytics-events-v19543>div:not(.empty-clean-v180){grid-template-columns:1fr;gap:5px}.analytics-day-v19543 small{display:none}.analytics-bars-v19543{height:150px}}
.analytics-budget-views-v19543{margin-bottom:16px}.analytics-client-list-v19543.budget-views>a{grid-template-columns:minmax(0,1fr) 100px}.analytics-client-list-v19543.budget-views>a>div:last-child{justify-content:flex-end}


/* V1.9.5.43 · registro completo de actividad por cliente */
.analytics-log-filter-v19543{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;margin-bottom:16px}
.analytics-log-filter-v19543>div{display:grid;gap:6px}.analytics-log-filter-v19543 small{color:#7f838c;font-size:9px;font-weight:900;letter-spacing:.09em}
.analytics-log-filter-v19543 select{min-height:42px;border:1px solid #34373e;border-radius:10px;background:#0d0e10;color:#fff;padding:0 10px}
.analytics-log-row-v19543{display:grid;grid-template-columns:125px 150px minmax(0,1fr) 110px;align-items:center;gap:12px;padding:11px 13px;border-bottom:1px solid #272a30;background:#111214;color:#f3f3f5}
.analytics-log-row-v19543:last-child{border-bottom:0}.analytics-log-row-v19543 time{color:#858892;font-size:10px;font-variant-numeric:tabular-nums}.analytics-log-row-v19543>div{min-width:0}.analytics-log-row-v19543>div b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-log-row-v19543>div small{display:block;margin-top:3px;color:#898d96;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-log-row-v19543>strong{text-align:right;color:#fff}
.analytics-pagination-v19543{display:flex;justify-content:center;align-items:center;gap:12px;padding:14px;border-top:1px solid #292c32}.analytics-pagination-v19543 span{color:#9498a1;font-size:11px;font-weight:800}
@media(max-width:900px){.analytics-log-filter-v19543{grid-template-columns:1fr 1fr}.analytics-log-row-v19543{grid-template-columns:105px 125px minmax(0,1fr)}.analytics-log-row-v19543>strong{display:none}}
@media(max-width:620px){.analytics-log-filter-v19543{grid-template-columns:1fr}.analytics-log-row-v19543{grid-template-columns:1fr;gap:5px}.analytics-log-row-v19543>div b,.analytics-log-row-v19543>div small{white-space:normal}}

/* ==========================================================
   NÚCLEO PRO V1.9.5.46 · PVPR SOBRE ROJO · TEXTO BLANCO
   ========================================================== */
/* El rótulo PVPR RECOMENDADO · SIN IGIC debe ser siempre blanco
   cuando aparece en el bloque rojo, independientemente del rol,
   módulo, tema o navegador. */
body.calculator-dark-v184 #resultCard .price-pvpr-v184,
body.calculator-dark-v184 #resultCard .price-pvpr-v184 small,
body.calculator-dark-v184 #resultCard .price-pvpr-v184 strong,
.price-pvpr-v184,
.price-pvpr-v184 small,
.price-pvpr-v184 strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}
