: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}}
