*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#061019;color:#f7f9fb;font-family:Arial,sans-serif}a{text-decoration:none;color:inherit}.hidden{display:none!important}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px 4vw;background:#030a0f;border-bottom:1px solid #233541}.brand{font-size:20px;font-weight:900}.brand small{font-size:10px;color:#ff7410;margin-left:8px}.fire{filter:drop-shadow(0 0 8px #ff6a00)}nav{display:flex;gap:20px;font-weight:700}.authbar{display:flex;gap:8px}button,.wa,.btnLink{border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}.primary{background:linear-gradient(135deg,#ff5a00,#ff8917);color:#fff}.hero{min-height:560px;display:grid;grid-template-columns:1.4fr .6fr;gap:40px;align-items:center;padding:70px 5vw;background:radial-gradient(circle at 82% 30%,rgba(255,100,0,.28),transparent 30%),radial-gradient(circle at 18% 40%,rgba(0,139,255,.13),transparent 28%),linear-gradient(120deg,#071722,#150d08)}.hero h1{font-size:68px;line-height:.93;margin:14px 0;text-shadow:0 0 30px rgba(255,100,0,.12)}.hero h1 span{color:#ff6a00}.eyebrow{color:#ff7410;font-weight:900;letter-spacing:.06em}.heroBadges{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.heroBadges span{background:#0a1721;border:1px solid #29404f;padding:8px 12px;border-radius:999px}.search{display:flex;max-width:700px;margin-top:24px}.search input{flex:1;border:0;padding:16px;border-radius:10px 0 0 10px}.search button{border-radius:0 10px 10px 0}.section{max-width:1280px;margin:auto;padding:50px 4vw}.sectionHead{display:flex;align-items:end;justify-content:space-between}.compactHead{align-items:center}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card,.panel,.stat,.featureCard{background:linear-gradient(180deg,#0b1822,#08131c);border:1px solid #2a3f4f;border-radius:16px;padding:20px}.card{min-height:280px;display:flex;flex-direction:column}.card p{color:#aebcc6;flex:1}.price,.bigMoney{font-size:29px;font-weight:900;color:#ff7917;margin:12px 0}.columns{display:grid;grid-template-columns:1fr 1.4fr;gap:18px}.panel input,.panel textarea,.panel select,.modalCard input,.modalCard textarea{width:100%;margin:7px 0;padding:12px;border-radius:9px;border:1px solid #304657;background:#07121a;color:#fff}.smallInput{max-width:260px}.panel textarea,.modalCard textarea{min-height:90px}.full{width:100%;display:inline-block;text-align:center}.wa{background:#12c85a;color:#fff}.floating{position:fixed;right:20px;bottom:20px;background:#12c85a;padding:14px 18px;border-radius:999px;font-weight:900}.order,.clientRow,.svcRow,.txRow,.rechargeRow{border:1px solid #2a3f4f;border-radius:11px;padding:12px;margin:10px 0}.muted{color:#9baab5;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.stat span{display:block;color:#9eacb7;font-size:13px}.stat strong{display:block;font-size:30px;margin-top:8px}.adminTabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.tab.active{background:#ff6a00;color:#fff}.rowBtns{display:flex;gap:8px}.check{display:block;margin:10px 0}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.76);align-items:center;justify-content:center;padding:18px;z-index:20}.modal.show{display:flex}.modalCard{position:relative;background:#0a1721;border:1px solid #2a3f4f;border-radius:16px;padding:24px;width:min(460px,100%)}.close{position:absolute;right:10px;top:8px;background:transparent;color:#fff;font-size:28px}.statusPill{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.st-received,.st-pending{background:#243746;color:#d7e3ea}.st-processing{background:#3b2d0a;color:#ffd777}.st-completed,.st-approved{background:#0f3b25;color:#7cf3ad}.st-rejected{background:#431717;color:#ff9f9f}.st-cancelled{background:#2b2532;color:#d3b9ef}.orderHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.orderMeta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.copyBtn{padding:8px 10px;font-size:12px}.miniTitle{margin-top:18px;font-weight:800}.stack{margin-top:8px}.txCredit{color:#75f3a6}.txDebit{color:#ffae7b}.brandStrip{display:flex;gap:10px;overflow:auto;padding:18px 4vw;border-top:1px solid #1f303d;border-bottom:1px solid #1f303d;background:#07111a}.brandChip{white-space:nowrap;background:#0a1721;color:#dfe9ef;border:1px solid #2c4352}.brandChip.active{background:#ff6a00;color:white}.featureGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.featureCard .icon{font-size:40px}.promo{max-width:1180px;margin:10px auto 50px;padding:30px;border-radius:18px;border:1px solid #6a3a13;background:radial-gradient(circle at 85% 20%,rgba(255,113,0,.28),transparent 30%),#120d08;display:flex;align-items:center;justify-content:space-between;gap:30px}.glowIcon{font-size:42px;filter:drop-shadow(0 0 10px #ff6a00)}@media(max-width:900px){nav{display:none}.hero,.columns{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.featureGrid{grid-template-columns:1fr}.promo{margin:10px 18px 40px;flex-direction:column;align-items:flex-start}}@media(max-width:600px){.hero h1{font-size:42px}.grid,.stats{grid-template-columns:1fr}.search{flex-direction:column;gap:8px}.search input,.search button{border-radius:10px}.brand small{display:none}.orderMeta{grid-template-columns:1fr}.sectionHead{align-items:flex-start;gap:10px;flex-direction:column}.smallInput{max-width:none}}
.receiptCard{width:min(900px,96vw);max-height:92vh;overflow:auto}
.receiptPreview{display:flex;align-items:center;justify-content:center;min-height:320px;background:#030a0f;border:1px solid #2a3f4f;border-radius:14px;overflow:hidden;margin:14px 0}
.receiptPreview img{display:block;max-width:100%;max-height:65vh;object-fit:contain}
.receiptPreview iframe{width:100%;height:65vh;border:0;background:white}
.receiptInfo{margin:10px 0 14px;color:#c7d2da}
@media(max-width:600px){.receiptCard{padding:18px}.receiptPreview{min-height:240px}.receiptPreview iframe{height:55vh}}

.fieldLabel{display:block;margin-top:10px;margin-bottom:2px;color:#9fb0bb;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.order textarea{width:100%;min-height:72px;margin:7px 0;padding:12px;border-radius:9px;border:1px solid #304657;background:#07121a;color:#fff;resize:vertical}

.orderActions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.waMini{background:#12c85a;color:#fff}
.statusButtons{display:flex;gap:8px;flex-wrap:wrap;margin:7px 0 10px}
.statusButtons button{background:#132431;color:#d9e4ea;border:1px solid #314a5a}
.statusButtons button:hover{border-color:#ff7a18}
.statusButtons .activeStatus{background:#ff6a00;color:#fff;border-color:#ff6a00}
.inlineMsg{min-height:20px;margin-top:8px;font-size:13px}
.successMsg{color:#77f2a6}
.errorMsg{color:#ff9f9f}

.phoneBox{margin:14px 0 6px;padding:12px;border:1px solid #2a3f4f;border-radius:12px;background:#07121a}
.phoneBox input{margin-bottom:8px}

.navBadge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff5a00;color:#fff;font-size:11px;font-weight:900;margin-left:4px}
.notifyRow{display:flex;justify-content:space-between;gap:12px;border:1px solid #2a3f4f;border-radius:11px;padding:12px;margin:9px 0;background:#08131c}
.notifyRow.unread{border-color:#ff6a00;background:#11150f}
.notifyRow.read{opacity:.78}
.dot{width:10px;height:10px;border-radius:50%;background:#ff6a00;flex:0 0 auto;margin-top:5px;box-shadow:0 0 10px rgba(255,106,0,.7)}
.adminNoticePanel{margin:18px 0}

.notifyToggle{margin-top:16px;background:#0d1d28;color:#fff;border:1px solid #304657;text-align:left;display:flex;align-items:center;justify-content:space-between}
.notifyToggle:hover{border-color:#ff6a00}
#myNotificationsPanel{margin-top:10px}
.notifPanelHead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.notifAdminActions{display:flex;gap:8px;flex-wrap:wrap}
.notifType{display:inline-block;margin-bottom:5px;padding:4px 8px;border-radius:999px;background:#162a38;color:#8ed4ff;font-size:11px;font-weight:900}
.notifyTabBtn{display:inline-flex;align-items:center;gap:6px}

.notifyMain{flex:1}
.notifRowActions{margin-top:9px}
.notifActionBtn{background:#ff6a00;color:#fff;border:0;border-radius:9px;padding:8px 12px;font-weight:800;cursor:pointer}
.flashTarget{outline:2px solid #ff6a00;box-shadow:0 0 0 4px rgba(255,106,0,.16),0 0 28px rgba(255,106,0,.35);transition:.25s}

.notifToolbar,.notifPanelActions{display:flex;gap:8px;flex-wrap:wrap}
.notifPanelActions{margin:8px 0 12px}
.notifFilter{background:#12222e;color:#dbe6ec;border:1px solid #2d4556}
.notifFilter.active{background:#ff6a00;color:#fff;border-color:#ff6a00}
.dangerBtn,.notifDeleteBtn{background:#3b1717;color:#ffb0b0;border:1px solid #6b2a2a}
.notifDeleteBtn{padding:8px 12px;border-radius:9px;font-weight:800;cursor:pointer}
.notifDeleteBtn:hover,.dangerBtn:hover{background:#591d1d;color:#fff}

.notifIcon{width:38px;height:38px;flex:0 0 38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#10202c;border:1px solid #2b4353;font-size:20px}
.moreNotifBtn{display:block;margin:12px auto 0;background:#12222e;color:#fff;border:1px solid #2d4556}
.moreNotifBtn:hover{border-color:#ff6a00}

.inboxPanel{background:linear-gradient(180deg,#0a1721,#08131c);border:1px solid #2a3f4f;border-radius:18px;padding:18px}
.adminInbox{padding:22px}
.inboxHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.inboxHeader h2,.inboxHeader h3{margin:5px 0}
.compactActions{justify-content:flex-end}
.inboxFilters{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #1d2d38;border-bottom:1px solid #1d2d38;margin-bottom:10px}
.inboxLegend{display:flex;gap:18px;flex-wrap:wrap;color:#9fb0bb;font-size:12px;margin:8px 0 12px}
.legendDot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
.legendDot.high{background:#ff6a00;box-shadow:0 0 8px rgba(255,106,0,.55)}
.legendDot.normal{background:#506575}
.compactInbox .notifyRow{margin:0;border-radius:0;border-left:0;border-right:0;border-top:0;background:transparent}
.compactInbox .notifyRow:first-child{border-top:1px solid #233744}
.inboxItem{padding:14px 10px;align-items:flex-start;transition:.2s}
.inboxItem:hover{background:#0b1a24}
.inboxItem.priority-high{border-left:3px solid #ff6a00!important}
.inboxItem.priority-important{border-left:3px solid #24c76a!important}
.inboxItem.priority-normal{border-left:3px solid transparent!important}
.inboxTitleRow{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.timeChip{font-size:11px;color:#8295a2;white-space:nowrap}
.clientLine{font-size:13px;color:#d6e1e7;margin-top:4px}
.inboxMessage{color:#9fb0bb;margin-top:4px;line-height:1.35}
.emptyInbox{padding:28px;text-align:center;color:#7f929f;border:1px dashed #29404f;border-radius:12px}
.notifRowActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}
.notifActionBtn,.notifDeleteBtn{font-size:12px;padding:7px 10px}
.moreNotifBtn{min-width:140px}
@media(max-width:700px){
  .inboxHeader{flex-direction:column}
  .compactActions{justify-content:flex-start}
  .inboxTitleRow{flex-direction:column;gap:4px}
  .timeChip{white-space:normal}
}

.notificationsModalCard{
  width:min(900px,94vw);
  max-height:88vh;
  overflow:auto;
  padding:24px;
}
.modalNotifList{max-height:58vh;overflow:auto;padding-right:4px}
#notificationsModal .inboxHeader{padding-right:34px}
#notificationsModal .notifyRow{background:#0a1721}
#notificationsModal .notifyRow:hover{background:#0d1d28}
#notificationsModal .moreNotifBtn{margin-top:14px}
@media(max-width:700px){
  .notificationsModalCard{width:96vw;max-height:92vh;padding:18px}
  #notificationsModal .inboxHeader{padding-right:28px}
  .modalNotifList{max-height:56vh}
}

/* ===== TECNICELL FINAL POLISH ===== */
:root{
  --bg:#061019;
  --panel:#0a1822;
  --panel2:#0d1e2a;
  --line:#2a4050;
  --text:#f3f7fa;
  --muted:#94a8b5;
  --accent:#ff6a00;
  --success:#16c864;
  --danger:#d44747;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text)}
button,a,input,textarea,select{transition:.18s ease}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--accent);outline-offset:2px
}
button{cursor:pointer}
.panel,.order,.rechargeRow,.clientRow,.stat,.modalCard{
  box-shadow:0 10px 30px rgba(0,0,0,.12)
}
.order:hover,.rechargeRow:hover,.clientRow:hover{
  border-color:#3f5f73
}
.siteFooter{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:22px 6vw;border-top:1px solid #1c2e39;background:#050d13;font-size:13px
}
.primary,.activeStatus,.notifActionBtn{box-shadow:0 6px 16px rgba(255,106,0,.16)}
.wa,.waMini{box-shadow:0 6px 16px rgba(18,200,90,.14)}
.statusPill{font-weight:900}
input,textarea,select{
  border:1px solid #29404f;background:#07131c;color:#fff
}
input::placeholder,textarea::placeholder{color:#78909f}
.modal{backdrop-filter:blur(4px)}
.modalCard{border:1px solid #35566a}
.notificationsModalCard{scrollbar-width:thin}
.compactInbox .notifyRow{min-height:88px}
.notifyRow.unread{background:rgba(255,106,0,.035)}
.adminTabs{position:sticky;top:64px;z-index:10;background:var(--bg);padding:8px 0}
@media(max-width:900px){
  .hero,.accountGrid,.orderMeta,.stats{grid-template-columns:1fr!important}
  nav{gap:10px!important;flex-wrap:wrap}
  .adminTabs{top:0}
}
@media(max-width:640px){
  header{padding:10px 14px!important}
  .brand{font-size:18px!important}
  nav a{font-size:13px!important}
  main,.section{padding-left:14px!important;padding-right:14px!important}
  .order,.rechargeRow,.clientRow,.panel{padding:14px!important}
  .orderActions,.statusButtons,.notifPanelActions,.inboxFilters{gap:6px}
  .statusButtons button,.orderActions button,.notifPanelActions button,.inboxFilters button{flex:1 1 auto}
  .bigMoney{font-size:30px!important}
  .modalCard{width:96vw!important}
}

/* ===== ADMIN DASHBOARD ===== */
.dashboardPanel{margin:18px 0 22px}
.dashboardHead{align-items:flex-start}
.dashPeriods{display:flex;gap:7px;flex-wrap:wrap}
.dashPeriod{background:#10212d;color:#dce8ef;border:1px solid #30495a}
.dashPeriod.active{background:#ff6a00;color:#fff;border-color:#ff6a00}
.dashboardMetrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:16px 0;
}
.metricCard{
  border:1px solid #294352;
  border-radius:14px;
  padding:16px;
  background:linear-gradient(145deg,#0b1a25,#08141d);
}
.metricCard span{display:block;color:#9fb2be;font-size:13px;margin-bottom:6px}
.metricCard strong{display:block;font-size:27px;line-height:1.1}
.metricCard small{display:block;color:#7f94a1;margin-top:7px}
.metricMain{border-color:#744018;background:linear-gradient(145deg,#1a140d,#0b1720)}
.metricMain strong{color:#ff7a18}
.dashboardSplit{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:14px;
  margin-top:12px;
}
.dashBox{border:1px solid #273e4d;border-radius:14px;padding:15px;background:#08151e}
.dashBox h4{margin:0 0 13px}
.dashBarRow{
  display:grid;
  grid-template-columns:92px 1fr 34px;
  gap:10px;
  align-items:center;
  margin:11px 0;
  font-size:13px;
}
.dashBar{height:9px;background:#132733;border-radius:999px;overflow:hidden}
.dashBar i{display:block;height:100%;width:0;background:#ff6a00;border-radius:999px;transition:width .35s ease}
.dashBarRow:nth-child(3) .dashBar i{background:#d79b16}
.dashBarRow:nth-child(4) .dashBar i{background:#429bd6}
.dashBarRow:nth-child(5) .dashBar i{background:#b94545}
.quickActions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.quickActions button{text-align:left;background:#10232f;color:#fff;border:1px solid #304a5a}
.quickActions button:hover{border-color:#ff6a00}
.ordersFilters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.ordersFilters .smallInput{min-width:150px}
@media(max-width:900px){
  .dashboardMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboardSplit{grid-template-columns:1fr}
}
@media(max-width:580px){
  .dashboardMetrics{grid-template-columns:1fr}
  .quickActions{grid-template-columns:1fr}
  .dashBarRow{grid-template-columns:82px 1fr 28px}
  .ordersFilters{width:100%}
  .ordersFilters .smallInput{width:100%;min-width:0}
}

/* ===== LICENCIAS ===== */
.licenseFilters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.licenseFilters input{flex:1 1 300px}
.licenseFilters select{min-width:190px}
.licenseGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.licenseCard{
  border:1px solid #294251;border-radius:16px;padding:18px;background:linear-gradient(145deg,#0b1a24,#08131c);
  display:flex;flex-direction:column;min-height:290px
}
.licenseCard:hover{border-color:#ff6a00;transform:translateY(-2px)}
.licenseTop,.licenseCardBottom{display:flex;justify-content:space-between;align-items:center;gap:10px}
.licenseIcon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#182732;font-size:23px}
.availabilityBadge{font-size:11px;font-weight:900;color:#73efa1;background:#0e3620;padding:6px 9px;border-radius:999px}
.licenseCard h3{font-size:21px;margin:12px 0 7px}
.licenseCard p{color:#a5b5bf;line-height:1.45;flex:1}
.licenseFacts{display:flex;gap:8px;flex-wrap:wrap;color:#9fb1bc;font-size:12px;margin:10px 0}
.licenseFacts span{padding:6px 8px;border-radius:8px;background:#0e202c}
.licenseCardBottom{margin-top:10px}
.emptyLicenseCatalog{grid-column:1/-1;padding:35px;text-align:center;border:1px dashed #2c4656;border-radius:14px;color:#8296a3}
.licenseModalCard{width:min(560px,94vw)}
.licenseMeta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.licenseMeta span{background:#102430;border:1px solid #294759;border-radius:999px;padding:6px 9px;color:#b5c8d3;font-size:12px}
.licensePurchaseInfo{display:flex;justify-content:space-between;align-items:center;padding:12px;margin:10px 0;background:#091923;border:1px solid #2b4656;border-radius:12px}
.licenseHistoryTitle{margin-top:24px}
.myLicenseRow,.licenseOrderAdmin{border:1px solid #2b4352;border-radius:13px;padding:14px;margin:10px 0;background:#091720}
.licenseUserGrid,.licenseAdminMeta{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0;color:#c6d4dc}
.deliveryBox{margin:10px 0;padding:11px;border-radius:10px;background:#0e291a;border:1px solid #225b37;word-break:break-word}
.license-status-pending{background:#594510;color:#ffd964}
.license-status-processing{background:#554000;color:#ffdc5d}
.license-status-delivered{background:#0b512b;color:#77efa4}
.license-status-rejected{background:#681f1f;color:#ffb0b0}
.licenseSalesPanel{margin-top:18px}
.licenseOrderAdmin textarea{width:100%;min-height:72px}
.licenseStatusButtons{margin-top:10px}
#adminLicenseProducts .svcRow{margin-bottom:10px}
@media(max-width:900px){.licenseGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.licenseGrid{grid-template-columns:1fr}.licenseFilters>*{width:100%}}

/* ===== SERVICIOS Y LICENCIAS SEPARADOS ===== */
#servicios,#licencias{scroll-margin-top:96px}
.servicesSection{padding-bottom:60px}
.servicesSection:after{
  content:"";display:block;height:1px;margin-top:52px;
  background:linear-gradient(90deg,transparent,#3a5261,transparent)
}
.licenseSection{
  max-width:1280px;margin:36px auto 60px;padding:0 4vw 46px;
  border:1px solid #304858;border-radius:22px;
  background:radial-gradient(circle at 90% 5%,rgba(255,106,0,.17),transparent 27%),
             linear-gradient(180deg,#0b1822,#07131c);
  overflow:hidden
}
.licenseHero{
  margin:0 -4vw 24px;padding:30px 4vw;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  border-bottom:1px solid #304858;
  background:linear-gradient(120deg,rgba(255,106,0,.12),rgba(10,24,34,.25))
}
.licenseHero h2{font-size:32px;margin:7px 0}
.licenseHero p{max-width:760px;color:#b7c5ce;line-height:1.5;margin:0}
.licenseHeroActions{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:190px}
.licenseSectionBadge{
  display:inline-block;font-size:11px;letter-spacing:.08em;font-weight:900;
  color:#ffb16f;border:1px solid #7b431c;background:#28180c;
  padding:7px 10px;border-radius:999px
}
.licenseFilters{
  padding:14px;border:1px solid #273f4f;border-radius:14px;background:#07131c
}
header nav a.navActive{color:#ff7815}
@media(max-width:700px){
  #servicios,#licencias{scroll-margin-top:78px}
  .licenseSection{margin:20px 12px 45px;padding:0 14px 32px}
  .licenseHero{margin:0 -14px 18px;padding:22px 14px;flex-direction:column;align-items:flex-start}
  .licenseHero h2{font-size:26px}
  .licenseHeroActions{align-items:flex-start;min-width:0;width:100%}
}

/* ===== RUTAS DE CATÁLOGO: separación real ===== */
body.route-services #licencias{display:none!important}
body.route-licenses #servicios{display:none!important}
body.route-services #servicios,
body.route-licenses #licencias{display:block!important}

/* When one catalog is the selected route, remove excessive top gap. */
body.route-services #servicios,
body.route-licenses #licencias{
  margin-top:18px!important;
}

/* License route gets its own clean page-like entrance. */
body.route-licenses #licencias{
  min-height:calc(100vh - 95px);
}

.autofillTrap{
  position:fixed!important;
  left:-9999px!important;
  top:-9999px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

/* ===== PROVEEDORES / API ===== */
.providersIntro{margin-bottom:18px}
.securityBanner{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;margin-top:14px;background:#0a2117;border:1px solid #23553a;border-radius:12px}
.securityIcon{font-size:24px}
.providersColumns{align-items:start}
.providerCard{border:1px solid #294452;border-radius:14px;padding:14px;margin:10px 0;background:#091720}
.providerMeta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;color:#9fb1bd;font-size:12px}
.providerMeta span{background:#0d202b;padding:6px 8px;border-radius:8px}
.providerActive{background:#0d512c;color:#78efa4}
.providerInactive{background:#4a2730;color:#ffb2bf}
.providerMappingPanel,.providerLogsPanel{margin-top:18px}
.mappingControls{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}
.mappingRow{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(150px,1fr) 130px minmax(160px,1fr) auto;gap:9px;align-items:center;padding:11px 0;border-bottom:1px solid #213744}
.apiLogRow{padding:12px 0;border-bottom:1px solid #213744}
.apiLogMeta{margin-top:6px;color:#9eb0ba;font-size:13px}
.logSuccess{background:#0d512c;color:#78efa4}
.logError{background:#682222;color:#ffb0b0}
@media(max-width:900px){.mappingRow{grid-template-columns:1fr 1fr}.mappingRow button{width:100%}}
@media(max-width:600px){.mappingRow{grid-template-columns:1fr}.mappingControls>*{width:100%}}


/* ============================================================
   TECNICELL FASE 1 — LANDING PÚBLICA, FIEL AL CONCEPTO PRINCIPAL
   ============================================================ */
:root{
  --p1-bg:#020b12;
  --p1-panel:#071824;
  --p1-panel2:#0a1c29;
  --p1-line:#213c4e;
  --p1-orange:#ff6a00;
  --p1-orange2:#ff891d;
  --p1-blue:#00a8ff;
  --p1-green:#17cf62;
  --p1-text:#f7fafc;
}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 10% 4%,rgba(0,124,255,.07),transparent 23%),
    radial-gradient(circle at 88% 9%,rgba(255,96,0,.08),transparent 20%),
    var(--p1-bg);
}
.phase1Header{
  position:sticky;top:0;z-index:50;
  min-height:70px;padding:8px 3vw;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;
  background:rgba(1,8,13,.96);
  border-bottom:1px solid #1c3444;
  box-shadow:0 8px 32px rgba(0,0,0,.34);
  backdrop-filter:blur(16px);
}
.phase1Brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none}
.phase1BrandMark{font-size:29px;filter:drop-shadow(0 0 12px #ff5900)}
.phase1BrandText{display:flex;flex-direction:column;line-height:.9}
.phase1BrandText b{
  font-size:27px;font-style:italic;letter-spacing:-.04em;
  text-shadow:0 0 12px rgba(255,105,0,.24)
}
.phase1BrandText small{color:#ff7b18;font-size:9px;letter-spacing:.18em;margin-top:5px;font-weight:900}
.phase1Nav{display:flex;justify-content:center;gap:4px;flex-wrap:wrap}
.phase1Nav a{padding:10px 11px;border-radius:9px;color:#eef5f8;text-decoration:none;font-size:13px;font-weight:800}
.phase1Nav a:hover,.phase1Nav a.navActive{color:#fff;background:#ff6a00}
.phase1Actions{display:flex;gap:8px}
.phase1Actions button{border-radius:10px;padding:10px 15px}
.phase1Actions .primary{background:linear-gradient(135deg,#ff5d00,#ff871b);border-color:#ff6a00}

.phase1Hero{
  position:relative;min-height:560px;padding:38px 4vw 32px;
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.8fr) minmax(250px,.55fr);
  gap:18px;align-items:center;overflow:hidden;
  background:
    linear-gradient(90deg,rgba(2,14,23,.98) 0%,rgba(5,17,26,.94) 48%,rgba(25,12,4,.92) 100%),
    radial-gradient(circle at 76% 28%,rgba(255,89,0,.25),transparent 28%);
  border-bottom:1px solid #243d4c;
}
.heroBackdropGrid{position:absolute;inset:0;opacity:.17;pointer-events:none;background:
  linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:34px 34px}
.heroLeft,.heroCenter,.heroRight{position:relative;z-index:2}
.heroKicker{color:#ff7920;font-weight:1000;letter-spacing:.08em;font-size:16px;margin-bottom:12px}
.heroLogoBlock{margin:4px 0 18px}
.heroMainLogo{
  font-size:72px;font-weight:1000;font-style:italic;letter-spacing:-.055em;line-height:.86;color:#fff;
  text-shadow:0 3px 0 #5e5e5e,0 0 22px rgba(255,105,0,.18)
}
.heroMainSub{font-size:27px;font-weight:1000;letter-spacing:.14em;color:#fff;margin-top:9px}
.heroPhrase{font-size:20px;color:#d5e0e7;max-width:650px;margin:0 0 22px}
.heroBenefits{display:flex;gap:28px;margin:0 0 22px}
.heroBenefits>div{display:flex;align-items:center;gap:8px;color:#fff}
.heroBenefits span{font-size:25px}.heroBenefits b{font-size:14px}
.heroSearchLabel{font-size:18px;font-weight:1000;color:#fff;margin-bottom:7px}
.phase1Search{
  display:flex;max-width:700px;background:#fff;border-radius:12px;padding:5px;
  box-shadow:0 18px 50px rgba(0,0,0,.38),0 0 22px rgba(255,96,0,.13)
}
.phase1Search input{flex:1;background:#fff!important;color:#17212a!important;border:0!important;padding:14px 15px!important;font-size:14px}
.phase1Search button{width:68px;border-radius:9px;font-size:29px}

.heroCenter{min-height:420px}
.heroGlow{position:absolute;inset:40px 0 10px;border-radius:50%;background:radial-gradient(circle,rgba(255,98,0,.20),transparent 58%);filter:blur(8px)}
.heroPhoneSet{position:absolute;inset:20px 0 0}
.heroPhone{
  position:absolute;width:125px;height:255px;border-radius:25px;border:2px solid #587084;
  background:linear-gradient(160deg,#07131d,#0a1f31);box-shadow:0 24px 50px rgba(0,0,0,.5);overflow:hidden
}
.heroPhoneCam{position:absolute;top:12px;left:12px;width:38px;height:38px;border-radius:12px;background:radial-gradient(circle at 35% 35%,#657d90 0 12%,#111d26 14% 36%,#283947 38% 100%)}
.heroPhoneScreen{position:absolute;inset:58px 9px 12px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;background:radial-gradient(circle at 50% 30%,rgba(255,105,0,.4),transparent 45%),linear-gradient(180deg,#091827,#050b10)}
.heroPhoneScreen b{font-size:12px;letter-spacing:.08em}.flameMini{font-size:32px}
.heroPhoneScreenBlue{background:radial-gradient(circle at 50% 30%,rgba(0,145,255,.35),transparent 45%),linear-gradient(180deg,#0c1d31,#050b10)}
.heroPhoneScreenPurple{background:radial-gradient(circle at 50% 30%,rgba(137,79,255,.35),transparent 45%),linear-gradient(180deg,#141128,#050b10)}
.heroPhoneOne{left:70px;bottom:18px;transform:rotate(-8deg);z-index:3}
.heroPhoneTwo{left:178px;bottom:72px;transform:rotate(5deg);z-index:2}
.heroPhoneThree{left:224px;bottom:10px;transform:rotate(10deg);z-index:1}
.heroCoreBadge{
  position:absolute;left:0;top:38px;width:140px;height:140px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;flex-direction:column;
  background:radial-gradient(circle,#ff7a17 0 18%,#27150a 20% 45%,#071018 48% 100%);
  border:1px solid #6f451f;box-shadow:0 0 30px rgba(255,106,0,.18)
}
.heroCoreBadge span{font-size:31px;font-weight:1000}.heroCoreBadge small{font-size:8px;letter-spacing:.12em;margin-top:5px}

.heroRight{align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:16px}
.heroChecklist{font-size:13px;font-weight:1000;line-height:1.8;color:#f4f7fa}
.heroChecklist div{color:#fff}.heroChecklist div::first-letter{color:#ff6a00}
.heroShield{
  width:150px;min-height:155px;display:flex;align-items:center;justify-content:center;flex-direction:column;align-self:center;
  border-radius:50%;background:radial-gradient(circle,#6f3a0c,#291607 48%,#0b1217 70%);
  border:2px solid #a85a13;box-shadow:0 0 32px rgba(255,108,0,.2)
}
.heroShield span{font-size:38px}.heroShield b{color:#ffb354;margin-top:4px}.heroShield small{text-align:center;font-size:9px;color:#e8d7c8;padding:0 14px}
.phase1AccountCard{padding:15px 16px;border-radius:15px;background:rgba(6,22,34,.88);border:1px solid #315164}
.miniLabel{font-size:10px;letter-spacing:.14em;color:#87a6ba;font-weight:900}.phase1AccountCard p{margin:5px 0}.phase1AccountCard .bigMoney{font-size:26px;margin:5px 0}

.phase1BrandStrip{
  max-width:1280px;margin:12px auto 24px;padding:0 18px;
  display:grid;grid-template-columns:repeat(10,minmax(90px,1fr));gap:10px
}
.phase1BrandStrip .brandChip,.phase1Shortcut{
  min-height:100px;border-radius:13px;border:1px solid #2a4354;background:linear-gradient(180deg,#0d1f2c,#07141d);
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:#fff;text-decoration:none;
  box-shadow:0 12px 28px rgba(0,0,0,.23)
}
.phase1BrandStrip .brandChip:hover,.phase1Shortcut:hover,.phase1BrandStrip .brandChip.active{transform:translateY(-3px);border-color:#ff6a00}
.p1BrandIcon{
  width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:#11283a;border:1px solid #375268
}
.p1BrandIcon img{width:31px;height:31px;object-fit:contain}.allBrand{font-size:22px}.licenseBrand{background:#5f1c10}.remoteBrand{background:#141c6c}
.phase1BrandStrip b{font-size:10px;text-transform:uppercase}

.phase1Section{max-width:1280px;margin:0 auto;padding:34px 20px}
.phase1SectionHead{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}
.phase1TitleRow{display:flex;align-items:center;gap:10px}.phase1TitleRow h2{font-size:28px;margin:0}.sectionFire,.sectionGear{font-size:31px}
#serviceGrid.grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.p1ServiceCard{
  border:1px solid #284354;border-radius:15px;overflow:hidden;background:linear-gradient(180deg,#0a1a25,#06131c);
  box-shadow:0 10px 26px rgba(0,0,0,.2);transition:.2s
}
.p1ServiceCard:hover{transform:translateY(-5px);border-color:#ff6a00;box-shadow:0 22px 42px rgba(0,0,0,.32)}
.p1ServiceVisual{height:145px;position:relative;background:radial-gradient(circle at 72% 32%,rgba(0,143,255,.25),transparent 35%),linear-gradient(145deg,#0d2232,#06121b)}
.svcBrandLogoBox{position:absolute;left:14px;top:14px;width:54px;height:54px;border-radius:12px;background:#0b1b29;border:1px solid #365268;display:flex;align-items:center;justify-content:center}
.svcBrandLogoImg{width:33px;height:33px}.svcFallbackLogo{font-size:18px;font-weight:1000}
.svcPhoneMock{position:absolute;right:22px;bottom:9px;width:84px;height:122px;border-radius:17px;border:2px solid #536d81;background:linear-gradient(180deg,#07131f,#0b2d4d);box-shadow:0 16px 24px rgba(0,0,0,.36)}
.svcPhoneCamera{position:absolute;left:8px;top:8px;display:grid;grid-template-columns:repeat(2,7px);gap:3px}.svcPhoneCamera i{width:7px;height:7px;border-radius:50%;background:#091019;border:1px solid #698195}.svcScreenGlow{position:absolute;inset:30px 6px 7px;border-radius:10px;background:radial-gradient(circle at 50% 25%,rgba(255,105,0,.2),transparent 45%),linear-gradient(180deg,rgba(0,146,255,.13),transparent)}
.p1ServiceBody{padding:14px}.p1ServiceBody h3{font-size:17px;margin:0 0 5px}.p1ServiceBody p{min-height:42px;color:#a9bac5;font-size:13px;line-height:1.35;margin:0}
.p1ServiceBadges{display:flex;gap:7px;flex-wrap:wrap;margin:11px 0}.onlineBadge,.timeBadge{font-size:10px;border-radius:999px;padding:5px 8px}.onlineBadge{background:#0b4b27;color:#83f2a0}.timeBadge{background:#102330;color:#c4d2da}
.p1Price{font-size:24px;font-weight:1000;margin:5px 0 10px}.p1ServiceBtn{width:100%;border-radius:8px}

.licenseSection{border:0!important;background:transparent!important;max-width:1280px!important;margin:0 auto!important;padding:34px 20px!important}
.licensePhaseHead{margin-bottom:16px}.licenseGrid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
.p1LicenseCard{min-height:280px!important;background:linear-gradient(180deg,#0a1924,#06131c)!important;border:1px solid #2a4354!important;border-radius:15px!important;padding:15px!important}
.p1LicenseCard:hover{border-color:#ff6a00!important;transform:translateY(-4px)}
.p1LicenseCard .price{font-size:23px}

.phase1PromoGrid{max-width:1240px;margin:24px auto 24px;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.phase1Promo{
  min-height:170px;border:1px solid #2a4455;border-radius:16px;padding:24px;
  display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;overflow:hidden
}
.remotePromo{background:radial-gradient(circle at 82% 32%,rgba(0,142,255,.25),transparent 34%),linear-gradient(135deg,#061927,#071018);border-color:#07577f}
.balancePromo{background:radial-gradient(circle at 83% 30%,rgba(255,111,0,.25),transparent 34%),linear-gradient(135deg,#191006,#071018);border-color:#774114}
.promoLeftIcon{font-size:35px}.promoLabel{font-size:17px;font-weight:1000;color:#ff7b1b}.cyanText{color:#10baff}.phase1Promo h3{font-size:21px;margin:5px 0}.phase1Promo p{font-size:13px;color:#afbec7;margin:0 0 12px}.phase1Promo a,.phase1Promo button{display:inline-block;background:transparent;border:1px solid currentColor;color:#fff;border-radius:9px;padding:9px 13px;text-decoration:none}.remotePromo a{color:#4bcaff}.balancePromo button{color:#ff8a2d}.promoDevice,.promoBalanceVisual{font-size:70px;opacity:.27}.promoBalanceVisual{font-weight:1000;color:#ff6a00}
.phase1Stats{max-width:1180px;margin:0 auto 24px;padding:0 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.phase1Stats>div{min-height:90px;padding:15px;border-radius:14px;border:1px solid #294352;background:#081722;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.phase1Stats span{grid-row:1/3;font-size:28px}.phase1Stats b{font-size:17px}.phase1Stats small{color:#8ea3af}
.phase1BottomTrust{border-top:1px solid #213845;padding:22px 4vw 28px;display:flex;justify-content:center;gap:42px;flex-wrap:wrap;color:#dce5ea;font-size:12px}

@media(max-width:1180px){
  .phase1Hero{grid-template-columns:1.2fr .8fr}.heroRight{display:none}
  .phase1BrandStrip{grid-template-columns:repeat(5,1fr)}
  #serviceGrid.grid{grid-template-columns:repeat(3,1fr)}
  .licenseGrid{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:860px){
  .phase1Header{grid-template-columns:1fr auto}.phase1Nav{grid-column:1/-1;order:3;overflow-x:auto;justify-content:flex-start;flex-wrap:nowrap}
  .phase1Hero{grid-template-columns:1fr;min-height:auto}.heroCenter{min-height:330px;max-width:480px;width:100%;margin:auto}
  .heroMainLogo{font-size:58px}.heroMainSub{font-size:21px}
  #serviceGrid.grid{grid-template-columns:repeat(2,1fr)}
  .phase1PromoGrid{grid-template-columns:1fr}.phase1Stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .phase1Header{padding:7px 12px}.phase1BrandText b{font-size:20px}
  .phase1Hero{padding:28px 15px}.heroMainLogo{font-size:46px}.heroMainSub{font-size:17px}.heroPhrase{font-size:16px}.heroBenefits{gap:16px}.heroCenter{min-height:260px}
  .heroPhone{transform:scale(.76)!important}.heroPhoneOne{left:42px;bottom:-8px}.heroPhoneTwo{left:130px;bottom:25px}.heroPhoneThree{left:190px;bottom:-12px}.heroCoreBadge{width:100px;height:100px;left:0}.heroCoreBadge span{font-size:22px}
  .phase1BrandStrip{grid-template-columns:repeat(2,1fr);padding:0 12px}.phase1Section{padding:26px 12px}
  #serviceGrid.grid{grid-template-columns:1fr}.licenseGrid{grid-template-columns:1fr!important}
  .phase1PromoGrid{padding:0 12px}.phase1Promo{grid-template-columns:auto 1fr}.promoDevice,.promoBalanceVisual{display:none}
  .phase1Stats{grid-template-columns:1fr 1fr;padding:0 12px}.phase1BottomTrust{gap:16px;padding:20px 12px}
}


/* ============================================================
   FASE 1.1 — ACABADO VISUAL
   ============================================================ */
.phase1Header{
  grid-template-columns:minmax(205px,auto) 1fr auto;
  padding-left:3.5vw;padding-right:3.5vw;
}
.phase1BrandText b{font-size:29px}
.phase1Nav a{font-size:13px;white-space:nowrap}

.phase1Hero{
  min-height:575px;
  grid-template-columns:minmax(0,1.03fr) minmax(380px,.82fr) minmax(245px,.5fr);
  padding-left:4.2vw;padding-right:4.2vw;
}
.heroMainLogo{
  font-size:78px;
  background:linear-gradient(180deg,#fff 0%,#f6f7f8 48%,#aeb5ba 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 7px 1px rgba(0,0,0,.45));
}
.heroMainSub{font-size:29px;letter-spacing:.16em}
.heroPhrase{font-size:21px}
.heroCoreBadge{
  background:
    radial-gradient(circle at 50% 50%,#ff8b27 0 17%,#5c2808 18% 31%,#0b1c28 32% 55%,#061019 56% 100%);
  box-shadow:0 0 38px rgba(255,105,0,.22),inset 0 0 25px rgba(0,150,255,.05);
}
.heroPhone{border-color:#577083}
.heroPhoneOne{transform:rotate(-10deg)}
.heroPhoneTwo{transform:rotate(4deg)}
.heroPhoneThree{transform:rotate(11deg)}
.heroChecklist{padding:10px 0}
.heroChecklist div{border-bottom:1px solid rgba(255,255,255,.045);padding:2px 0}
.heroShield{box-shadow:0 0 42px rgba(255,100,0,.22),inset 0 0 28px rgba(255,155,55,.08)}
.phase1AccountCard{box-shadow:0 18px 38px rgba(0,0,0,.24)}

.phase1BrandStrip{gap:11px;margin-top:14px}
.phase1BrandStrip .brandChip,.phase1Shortcut{
  min-height:108px;
  background:linear-gradient(180deg,#0c1c28,#06121b);
  box-shadow:0 12px 24px rgba(0,0,0,.24),inset 0 0 22px rgba(0,130,255,.025);
}
.p1BrandIcon.officialLogo{
  width:62px;height:58px;padding:8px;
  background:#f5f7f9;border-color:#80909c;
  box-shadow:0 5px 14px rgba(0,0,0,.25);
}
.p1BrandIcon.officialLogo img{
  max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
}
.p1BrandIcon.wideLogo img{width:100%;max-height:30px}
.phase1BrandStrip .brandChip[data-brand="Xiaomi"] .officialLogo{background:#ff6900}
.phase1BrandStrip .brandChip[data-brand="Tecno"] .officialLogo{background:#f8fbff}
.phase1BrandStrip b{font-size:11px;letter-spacing:.03em}

.p1ServiceCard{min-height:390px}
.p1ServiceVisual{height:154px}
.svcBrandLogoBox{
  width:68px;height:55px;padding:7px;background:#f5f7f9;border-color:#7a8b98;
}
.svcBrandLogoImg{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.p1ServiceBody h3{font-size:18px}
.p1Price{color:#fff;font-size:26px}
.p1ServiceBtn{
  background:linear-gradient(90deg,#ff5a00,#ff8519);
  box-shadow:0 8px 18px rgba(255,106,0,.14);
}

.licenseSection{padding-top:26px!important}
.phase11LicenseFilters{
  background:#071722;border:1px solid #294455;border-radius:13px;padding:10px;margin-bottom:16px;
}
.phase11LicenseFilters input,.phase11LicenseFilters select{background:#091823}
.p1LicenseCard{
  min-height:305px!important;
  display:flex;flex-direction:column;
  box-shadow:0 10px 25px rgba(0,0,0,.2);
}
.p1LicenseCard h3{font-size:17px;margin:11px 0 6px}
.p1LicenseCard p{font-size:12px;line-height:1.38;flex:1}
.p1LicenseCard .licenseCardBottom{margin-top:auto}
.p1LicenseBuy{width:100%;background:linear-gradient(90deg,#ff5a00,#ff861b)}
.licenseIcon{
  width:58px!important;height:58px!important;background:#091b28!important;
  border:1px solid #2d4657;border-radius:13px!important;
}
.licMark{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:20px;font-weight:1000;color:#fff}
.unlockMark{font-size:35px;color:#ff7a18}
.chimeraMark{font-size:26px;color:#db9b35}
.dftMark{color:#28a8ff}
.griffinMark{font-size:28px;color:#dfa84d}
.eftMark{color:#ef4343}.pandoraMark{color:#45d77c}

.phase11PromoGrid{
  max-width:1240px;margin:20px auto 25px;padding:0 20px;
  display:grid;grid-template-columns:1fr 1fr;gap:14px
}
.phase11Promo{
  position:relative;min-height:175px;overflow:hidden;
  display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;
  border-radius:16px;padding:24px;border:1px solid #2a4555;
}
.remote11{
  border-color:#09577e;
  background:radial-gradient(circle at 83% 25%,rgba(0,153,255,.25),transparent 33%),linear-gradient(135deg,#061b2a,#071018);
}
.recharge11{
  border-color:#754014;
  background:radial-gradient(circle at 85% 25%,rgba(255,106,0,.26),transparent 33%),linear-gradient(135deg,#1a1006,#071018);
}
.promo11Icon{font-size:36px}
.promo11Label{font-weight:1000;font-size:17px}.promo11Label.blue{color:#11b9ff}.promo11Label.orange{color:#ff7b18}
.promo11Copy h3{font-size:21px;margin:5px 0 8px}.promo11Copy p{font-size:13px;color:#acbcc5;line-height:1.45;margin:0 0 12px}
.promo11Copy a,.promo11Copy button{
  display:inline-block;background:transparent;border:1px solid currentColor;border-radius:9px;padding:9px 13px;color:#fff;text-decoration:none;font-weight:800;
}
.remote11 a{color:#42c9ff}.recharge11 button{color:#ff8a2a}
.promo11Decor{font-size:85px;font-weight:1000;opacity:.19}

.phase11Trust{
  max-width:1180px;margin:0 auto 38px;padding:0 20px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:11px
}
.phase11Trust>div{
  min-height:90px;padding:15px;border:1px solid #294352;border-radius:14px;background:#081722;
  display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center
}
.phase11Trust span{grid-row:1/3;font-size:27px}.phase11Trust b{font-size:15px}.phase11Trust small{color:#8ea3af;font-size:11px}

@media(max-width:1180px){
  .phase1Hero{grid-template-columns:1.15fr .85fr}.heroRight{display:none}
  .licenseGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:850px){
  .phase11PromoGrid{grid-template-columns:1fr}
  .phase11Trust{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .phase1BrandText b{font-size:21px}
  .heroMainLogo{font-size:49px}.heroMainSub{font-size:18px}
  .phase1BrandStrip .brandChip,.phase1Shortcut{min-height:94px}
  .phase11Promo{grid-template-columns:auto 1fr}.promo11Decor{display:none}
  .phase11Trust{grid-template-columns:1fr 1fr;padding:0 12px}
}

/* ============================================================
   FASE 1.2 — LOGO PRINCIPAL + HERO MÁS IMPACTANTE
   ============================================================ */
.heroLogoBlock{
  position:relative;
  display:inline-block;
  padding:4px 8px 8px 0;
}
.heroLogoBlock::before{
  content:"";
  position:absolute;
  left:-18px;
  top:4px;
  width:84%;
  height:62%;
  background:
    radial-gradient(ellipse at 45% 50%,rgba(255,114,0,.25),transparent 62%);
  filter:blur(16px);
  pointer-events:none;
}
.heroLogoBlock::after{
  content:"";
  position:absolute;
  left:0;
  right:12%;
  top:7px;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),rgba(255,171,92,.92),transparent);
  opacity:.75;
  filter:blur(.2px);
  pointer-events:none;
}

.heroMainLogo{
  position:relative;
  z-index:2;
  font-size:82px;
  font-weight:1000;
  font-style:italic;
  letter-spacing:-.06em;
  line-height:.86;
  color:#ffffff;
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #ffffff 20%,
      #eef1f3 41%,
      #ffffff 53%,
      #c9ced2 71%,
      #8c949a 88%,
      #f6f6f6 100%
    );
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:
    0 1px 0 rgba(255,255,255,.45),
    0 4px 0 rgba(44,48,52,.85),
    0 7px 14px rgba(0,0,0,.72),
    0 0 10px rgba(255,255,255,.23),
    0 0 22px rgba(255,111,0,.32),
    0 0 42px rgba(255,83,0,.18);
  filter:
    drop-shadow(0 0 8px rgba(255,255,255,.15))
    drop-shadow(0 0 16px rgba(255,98,0,.19));
}
.heroMainLogo::selection{background:#ff6a00;color:#fff}

.heroMainSub{
  position:relative;
  z-index:2;
  margin-top:12px;
  padding-left:4px;
  color:#ffffff;
  font-size:30px;
  letter-spacing:.18em;
  font-weight:1000;
  text-shadow:
    0 2px 0 rgba(0,0,0,.72),
    0 0 10px rgba(255,255,255,.17),
    0 0 19px rgba(255,106,0,.17);
}

.heroKicker{
  position:relative;
  z-index:3;
  color:#ff7b18;
  text-shadow:0 0 14px rgba(255,106,0,.24);
}

.phase1Hero{
  background:
    radial-gradient(circle at 33% 28%,rgba(0,132,255,.055),transparent 24%),
    radial-gradient(circle at 76% 32%,rgba(255,89,0,.29),transparent 27%),
    linear-gradient(90deg,rgba(2,14,23,.99) 0%,rgba(5,17,26,.95) 49%,rgba(27,12,4,.94) 100%);
}
.phase1Hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(110deg,transparent 0 45%,rgba(255,255,255,.012) 45% 46%,transparent 46% 100%),
    radial-gradient(circle at 39% 46%,rgba(255,255,255,.03),transparent 30%);
}
.heroLeft{
  padding-top:5px;
}
.heroPhrase{
  color:#f1f6f9;
  text-shadow:0 1px 0 #000;
}
.heroBenefits>div{
  padding:6px 10px 6px 0;
}
.heroBenefits span{
  filter:drop-shadow(0 0 9px rgba(255,106,0,.15));
}
.heroBenefits>div:nth-child(2) span{
  filter:drop-shadow(0 0 9px rgba(0,158,255,.22));
}
.heroBenefits>div:nth-child(3) span{
  filter:drop-shadow(0 0 9px rgba(255,255,255,.12));
}
.phase1Search{
  box-shadow:
    0 18px 50px rgba(0,0,0,.42),
    0 0 0 1px rgba(255,255,255,.05),
    0 0 28px rgba(255,97,0,.18);
}
.phase1Search button{
  background:linear-gradient(135deg,#ff5c00,#ff8b21);
  box-shadow:0 0 18px rgba(255,106,0,.22);
}

.heroCoreBadge{
  border-color:#88511f;
  box-shadow:
    0 0 40px rgba(255,106,0,.24),
    inset 0 0 30px rgba(0,150,255,.06);
}
.heroCoreBadge span{
  text-shadow:0 0 12px rgba(255,255,255,.22);
}
.heroPhone{
  box-shadow:
    0 26px 54px rgba(0,0,0,.54),
    0 0 0 1px rgba(255,255,255,.03),
    inset 0 0 24px rgba(0,130,255,.03);
}
.heroPhoneOne{
  filter:drop-shadow(0 0 14px rgba(255,100,0,.11));
}
.heroPhoneTwo{
  filter:drop-shadow(0 0 14px rgba(0,135,255,.10));
}
.heroPhoneThree{
  filter:drop-shadow(0 0 14px rgba(138,74,255,.09));
}

.heroChecklist{
  text-shadow:0 1px 0 #000;
}
.heroChecklist div{
  position:relative;
  padding-left:3px;
}
.heroChecklist div::before{
  content:"";
  position:absolute;
  left:-10px;
  top:50%;
  width:4px;height:4px;border-radius:50%;
  background:#ff6a00;
  box-shadow:0 0 9px #ff6a00;
}
.heroShield{
  border-color:#ba661b;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,147,58,.23),transparent 34%),
    radial-gradient(circle,#6b3509,#251307 52%,#091117 74%);
}
.heroShield span{
  filter:drop-shadow(0 0 10px rgba(255,106,0,.3));
}

.phase1AccountCard{
  background:linear-gradient(180deg,rgba(7,26,39,.94),rgba(5,19,29,.91));
  border-color:#35586c;
  box-shadow:
    0 18px 38px rgba(0,0,0,.28),
    inset 0 0 24px rgba(0,155,255,.025);
}

@media(max-width:860px){
  .heroMainLogo{font-size:63px}
  .heroMainSub{font-size:23px}
}
@media(max-width:560px){
  .heroMainLogo{font-size:51px}
  .heroMainSub{font-size:18px;letter-spacing:.13em}
  .heroLogoBlock::after{right:0}
}

/* ============================================================
   FASE 1.3 — CARGA Y ACABADO DE CATÁLOGOS
   ============================================================ */
.catalogLoading,.catalogError{
  grid-column:1/-1;
  min-height:130px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  border:1px dashed #2e4b5c;
  border-radius:14px;
  background:#07141d;
  color:#a9bdc9;
  text-align:center;
  padding:24px;
}
.catalogLoading::before{
  content:"";
  width:28px;height:28px;margin-bottom:12px;border-radius:50%;
  border:3px solid #284554;border-top-color:#ff6a00;
  animation:p1spin .9s linear infinite;
}
.catalogError{border-color:#6b3030;color:#ffb3b3}
.catalogError small{margin-top:7px;color:#9faeb7;max-width:720px}
@keyframes p1spin{to{transform:rotate(360deg)}}

#serviceGrid.grid,#licenseGrid.licenseGrid{
  align-items:stretch;
}
.p1ServiceCard,.p1LicenseCard{
  position:relative;
}
.p1ServiceCard::after,.p1LicenseCard::after{
  content:"";
  position:absolute;left:12px;right:12px;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);
}
.p1ServiceCard:hover::before,.p1LicenseCard:hover::before{
  content:"";
  position:absolute;inset:-1px;z-index:-1;border-radius:16px;
  background:linear-gradient(135deg,rgba(255,106,0,.28),rgba(0,151,255,.08),transparent 65%);
  filter:blur(8px);
}
.p1ServiceVisual{
  background:
    radial-gradient(circle at 72% 34%,rgba(0,143,255,.28),transparent 34%),
    radial-gradient(circle at 31% 82%,rgba(255,105,0,.10),transparent 32%),
    linear-gradient(145deg,#0c2130,#06121a);
}
.p1ServiceBody{display:flex;flex-direction:column;min-height:238px}
.p1ServiceBody p{flex:1}
.p1ServiceBtn{margin-top:auto}

.p1LicenseCard .licenseTop{margin-bottom:8px}
.p1LicenseCard .availabilityBadge{
  background:#0d4a29;color:#75f19d;border:1px solid #1a6538;
}
.p1LicenseCard .licenseFacts{
  display:flex;flex-direction:column;gap:5px;
  color:#9db2be;font-size:11px;margin:10px 0;
}
.p1LicenseCard .licenseCardBottom{
  display:flex;flex-direction:column;gap:8px;margin-top:auto;
}
.p1LicenseCard .price{margin:0;font-size:25px}

.phase1SectionHead .ghostBtn{
  min-width:106px;
  background:#f3f5f6;color:#101820;border:0;
  font-weight:900;
}
.phase1SectionHead .ghostBtn:hover{background:#ff6a00;color:#fff}

@media(max-width:560px){
  .catalogLoading,.catalogError{min-height:105px}
}

/* ============================================================
   FASE 2 — PANEL PRIVADO / ADMIN
   ============================================================ */
.phase2Account,.phase2Admin{
  max-width:1320px!important;
  margin:0 auto!important;
  padding:34px 28px 60px!important;
}
.phase2PageHead{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #203846;
}
.phase2PageHead h2{font-size:32px;margin:4px 0 6px}
.p2RefreshBtn{
  background:#f2f4f5;color:#0d161d;border:0;border-radius:10px;
  font-weight:900;padding:12px 16px;
}
.p2RefreshBtn:hover{background:#ff6a00;color:#fff}

.p2AccountSummary{display:grid;grid-template-columns:1.45fr .85fr;gap:16px;margin-bottom:18px}
.p2ProfileHero{
  min-height:180px;padding:22px;border-radius:18px;border:1px solid #2c495b;
  display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;
  background:
    radial-gradient(circle at 82% 32%,rgba(255,107,0,.18),transparent 28%),
    linear-gradient(135deg,#0a1d2a,#07131c);
  box-shadow:0 16px 38px rgba(0,0,0,.25);
}
.p2Avatar{
  width:78px;height:78px;border-radius:22px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,#ff5d00,#ff8c22);font-size:27px;font-weight:1000;color:#fff;
  box-shadow:0 0 28px rgba(255,106,0,.2)
}
.p2ProfileIdentity h3{font-size:25px;margin:3px 0}.p2Mini{font-size:10px;letter-spacing:.14em;color:#8eacbd;font-weight:900}
.p2Email{color:#a8bac4;font-size:13px}.p2RolePill{display:inline-block;margin-top:9px;border-radius:999px;padding:5px 9px;background:#0c3146;color:#69d5ff;font-size:10px;font-weight:900;text-transform:uppercase}
.p2BalanceBlock{text-align:right;min-width:190px}.p2BalanceBlock small{font-size:10px;color:#9bb0bb;letter-spacing:.12em}.p2BalanceBlock strong{display:block;font-size:35px;color:#ff7615;margin:5px 0 9px}
.p2RechargeMain{background:linear-gradient(90deg,#08b84d,#15d463)!important;color:#fff!important;border:0!important;border-radius:9px!important;padding:10px 13px!important;font-weight:900}

.p2QuickCards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.p2QuickCard{
  min-height:84px;padding:13px;border-radius:14px;border:1px solid #294657!important;
  background:linear-gradient(180deg,#0b1d29,#07141d)!important;color:#fff!important;
  display:grid;grid-template-columns:auto 1fr;column-gap:9px;text-align:left!important;
  align-items:center;box-shadow:0 10px 24px rgba(0,0,0,.16)
}
.p2QuickCard:hover{border-color:#ff6a00!important;transform:translateY(-2px)}
.p2QuickCard>span{grid-row:1/3;font-size:23px}.p2QuickCard b{font-size:13px}.p2QuickCard small{font-size:10px;color:#8fa5b2}

.p2AccountGrid{display:grid;grid-template-columns:365px 1fr;gap:16px;align-items:start}
.p2AccountSidebar{display:flex;flex-direction:column;gap:14px}
.p2AccountMain{display:flex;flex-direction:column;gap:14px}
.p2SettingsCard,.p2SidebarSection,.p2MainCard{
  background:linear-gradient(180deg,#0a1b26,#07141d)!important;
  border-color:#294758!important;border-radius:16px!important;
}
.p2PanelTitle{display:flex;gap:10px;align-items:center;margin-bottom:14px;padding-bottom:11px;border-bottom:1px solid #203844}
.p2PanelTitle>span{font-size:22px}.p2PanelTitle b{display:block;font-size:15px}.p2PanelTitle small{display:block;font-size:10px;color:#8fa3af;margin-top:2px}
.p2InfoRow{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed #223945;font-size:12px}.p2InfoRow span{color:#829aa8}.p2InfoRow b{font-size:12px;text-align:right;word-break:break-word}
.p2SettingsCard input{margin-top:6px}
.p2SettingsCard button{margin-top:8px}
.p2CardHead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #223b49}.p2CardHead h3{margin:3px 0}.p2StatusHint{font-size:10px;color:#84a1b1;border:1px solid #294858;padding:6px 8px;border-radius:999px}

.phase2Admin{max-width:1380px!important}
.p2AdminHead{margin-bottom:18px}
.p2AdminStats{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;margin-bottom:16px
}
.p2AdminStats .stat{
  min-height:112px;border-radius:15px!important;border:1px solid #294758!important;
  background:linear-gradient(180deg,#0a1b26,#07141d)!important;
  padding:14px!important;display:grid!important;grid-template-columns:auto 1fr!important;
  grid-template-rows:auto auto auto!important;column-gap:10px!important;align-items:center!important;
  box-shadow:0 10px 24px rgba(0,0,0,.16)
}
.p2AdminStats .stat i{grid-row:1/4;font-style:normal;font-size:27px}
.p2AdminStats .stat span{font-size:11px;color:#8ca5b3}
.p2AdminStats .stat strong{font-size:28px}
.p2AdminStats .stat small{font-size:9px;color:#6e8998}
.p2AdminTabs{
  display:flex!important;gap:7px!important;overflow-x:auto!important;flex-wrap:nowrap!important;
  padding:8px!important;margin:0 0 14px!important;border:1px solid #274454;border-radius:14px;
  background:#07151e;
  scrollbar-width:thin;
}
.p2AdminTabs .tab{
  flex:0 0 auto!important;border-radius:9px!important;padding:10px 13px!important;
  background:#e9edef!important;color:#121b21!important;font-weight:900!important;
}
.p2AdminTabs .tab.active{background:linear-gradient(90deg,#ff5d00,#ff851a)!important;color:#fff!important}
.phase2Admin .tabPane>.panel,.phase2Admin .dashboardPanel{
  border-radius:16px!important;border-color:#294758!important;background:linear-gradient(180deg,#091a25,#07141d)!important;
}
.phase2Admin .dashboardPanel{box-shadow:0 14px 30px rgba(0,0,0,.18)}
.phase2Admin .metricCard{
  border-radius:13px!important;background:#0b1c27!important;border:1px solid #294555!important;
}
.phase2Admin .metricMain{background:linear-gradient(145deg,#17150f,#101b21)!important;border-color:#8c4b0f!important}
.phase2Admin input,.phase2Admin select,.phase2Admin textarea,
.phase2Account input,.phase2Account select,.phase2Account textarea{
  border-radius:9px!important;background:#081722!important;border-color:#2c4859!important;
}
.phase2Admin button,.phase2Account button{transition:.18s ease}
.phase2Admin button:hover,.phase2Account button:hover{transform:translateY(-1px)}

@media(max-width:1100px){
  .p2AccountSummary{grid-template-columns:1fr}
  .p2AccountGrid{grid-template-columns:320px 1fr}
  .p2AdminStats{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:800px){
  .phase2Account,.phase2Admin{padding:24px 14px 50px!important}
  .phase2PageHead{align-items:flex-start;flex-direction:column}
  .p2ProfileHero{grid-template-columns:auto 1fr}.p2BalanceBlock{grid-column:1/-1;text-align:left;padding-top:12px;border-top:1px solid #24404f}
  .p2AccountGrid{grid-template-columns:1fr}
  .p2AdminStats{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:520px){
  .p2QuickCards{grid-template-columns:1fr 1fr}
  .p2ProfileHero{padding:15px}.p2Avatar{width:60px;height:60px;border-radius:17px;font-size:21px}
  .p2ProfileIdentity h3{font-size:20px}.p2BalanceBlock strong{font-size:31px}
  .p2AdminStats{grid-template-columns:1fr 1fr!important}
  .p2AdminStats .stat{min-height:95px}
}

/* ============================================================
   FASE 2.1 — NAVEGACIÓN ACTIVA + ACABADO PRIVADO
   ============================================================ */

/* Navigation: only the current section gets the orange pill. */
.phase1Nav a{
  position:relative;
  background:transparent!important;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.phase1Nav a:hover{
  background:#12222d!important;
  color:#fff!important;
}
.phase1Nav a.navActive,
.phase1Nav a[aria-current="page"]{
  background:linear-gradient(135deg,#ff5d00,#ff8419)!important;
  color:#fff!important;
  box-shadow:0 7px 18px rgba(255,106,0,.18);
}
.phase1Nav a.navActive::after,
.phase1Nav a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:18%;right:18%;bottom:-5px;height:2px;border-radius:99px;
  background:#ff8b2c;
  box-shadow:0 0 9px rgba(255,106,0,.55);
}

/* Better separation when arriving at private sections. */
.phase2Account,.phase2Admin{
  scroll-margin-top:86px;
}
.phase2Account::before,.phase2Admin::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,#2e4a59,transparent);
}
.phase2Account,.phase2Admin{position:relative}

/* Account visual polish */
.p2ProfileHero{
  overflow:hidden;
}
.p2ProfileHero::after{
  content:"";
  position:absolute;
  right:-85px;top:-110px;width:270px;height:270px;border-radius:50%;
  border:1px solid rgba(255,116,0,.10);
  box-shadow:
    0 0 0 34px rgba(255,106,0,.025),
    0 0 0 68px rgba(0,145,255,.02);
  pointer-events:none;
}
.p2ProfileHero>*{position:relative;z-index:1}
.p2BalanceBlock strong{
  text-shadow:0 0 20px rgba(255,106,0,.16);
}
.p2QuickCard{
  position:relative;overflow:hidden;
}
.p2QuickCard::after{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:transparent;transition:.18s ease;
}
.p2QuickCard:hover::after,.p2QuickCard.p2QuickActive::after{
  background:#ff6a00;box-shadow:0 0 12px rgba(255,106,0,.45)
}
.p2QuickCard.p2QuickActive{
  border-color:#ff6a00!important;
  background:linear-gradient(180deg,#122633,#091922)!important;
}
.p2MainCard,.p2SidebarSection,.p2SettingsCard{
  box-shadow:0 12px 28px rgba(0,0,0,.13);
}
.p2MainCard:hover,.p2SidebarSection:hover,.p2SettingsCard:hover{
  border-color:#34566a!important;
}

/* Orders in account: stronger card hierarchy without changing JS. */
.phase2Account #myOrders>div,
.phase2Account #myLicenses>div,
.phase2Account #myRecharges>div,
.phase2Account #myTransactions>div{
  transition:border-color .18s ease,transform .18s ease,background .18s ease;
}
.phase2Account #myOrders>div:hover,
.phase2Account #myLicenses>div:hover{
  transform:translateY(-1px);
}

/* Admin polish */
.p2AdminStats .stat{
  position:relative;overflow:hidden;
}
.p2AdminStats .stat::after{
  content:"";position:absolute;right:-30px;bottom:-45px;width:100px;height:100px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,106,0,.07),transparent 68%);
}
.p2AdminStats .stat:hover{
  border-color:#3b6074!important;
  transform:translateY(-2px);
}
.p2AdminTabs{
  position:sticky;
  top:78px;
  z-index:20;
  box-shadow:0 10px 24px rgba(0,0,0,.24);
}
.p2AdminTabs .tab{
  transition:.18s ease!important;
}
.p2AdminTabs .tab:hover{
  background:#fff!important;
  transform:translateY(-1px);
}
.p2AdminTabs .tab.active{
  box-shadow:0 7px 16px rgba(255,106,0,.20);
}

/* Cleaner section titles in admin panes */
.phase2Admin .tabPane>.panel>h3,
.phase2Admin .tabPane .compactHead h3{
  letter-spacing:-.01em;
}
.phase2Admin .tabPane>.panel{
  box-shadow:0 14px 30px rgba(0,0,0,.14);
}

/* Improve notification and status visual density. */
.phase2Admin .navBadge,.phase2Account .navBadge{
  box-shadow:0 0 0 2px rgba(2,10,16,.85);
}

/* On smaller screens, active navigation remains visible. */
@media(max-width:860px){
  .phase1Nav a.navActive,
  .phase1Nav a[aria-current="page"]{
    flex:0 0 auto;
  }
  .p2AdminTabs{
    top:116px;
  }
}
@media(max-width:560px){
  .phase1Nav a{padding:8px 10px}
  .phase1Nav a.navActive::after,
  .phase1Nav a[aria-current="page"]::after{display:none}
  .p2AdminTabs{top:108px}
}

/* ============================================================
   FASE 2.2 — PEDIDOS + RECARGAS
   ============================================================ */
.p22OpsPanel{padding:20px!important;background:linear-gradient(180deg,#091a25,#07141d)!important}
.p22ModuleHead{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding-bottom:15px;margin-bottom:14px;border-bottom:1px solid #223c4a}
.p22ModuleHead h3{font-size:24px;margin:4px 0}
.p22Refresh{background:#eef1f2!important;color:#101920!important;border:0!important;font-weight:900!important;border-radius:9px!important;padding:10px 14px!important}
.p22Refresh:hover{background:#ff6a00!important;color:#fff!important}

.p22MiniStats{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:13px}
.p22RechargeStats{grid-template-columns:repeat(4,1fr)}
.p22MiniStat{position:relative;min-height:72px;padding:11px 13px!important;border-radius:12px!important;border:1px solid #294657!important;background:#0a1a25!important;color:#fff!important;text-align:left!important;overflow:hidden}
.p22MiniStat span{display:block;color:#8fa9b7;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.p22MiniStat strong{display:block;font-size:25px;margin-top:3px}
.p22MiniStat::after{content:"";position:absolute;right:-20px;bottom:-35px;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.05),transparent 68%)}
.p22MiniStat:hover,.p22MiniStat.active{border-color:#ff6a00!important;transform:translateY(-1px)}
.p22MiniStat.received strong{color:#65caff}.p22MiniStat.processing strong{color:#ffc331}.p22MiniStat.completed strong{color:#62eb91}.p22MiniStat.rejected strong{color:#ff7b7b}

.p22Filters{display:grid;grid-template-columns:minmax(240px,1.8fr) repeat(3,minmax(135px,.7fr)) auto;gap:8px;padding:10px;border:1px solid #284453;border-radius:13px;background:#07151f}
.rechargeFilters{grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(140px,.72fr)) auto}
.p22Filters input,.p22Filters select{width:100%;height:40px!important;margin:0!important}
.p22SearchBox{position:relative}.p22SearchBox>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#7895a5;z-index:2}.p22SearchBox input{padding-left:34px!important}
.p22ClearBtn{height:40px!important;background:#12232d!important;color:#dce6eb!important;border:1px solid #345061!important;border-radius:9px!important}

.p22ResultsBar{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 3px 8px;font-size:11px;color:#b9c8d0}
.p22ResultsBar>span:first-child{font-weight:900;color:#fff}

.p22OrdersList,.p22RechargeList{display:flex;flex-direction:column;gap:11px}
.p22OrderCard,.p22RechargeCard{border:1px solid #294858;border-radius:15px;padding:15px;background:linear-gradient(180deg,#0a1b26,#07141d);box-shadow:0 9px 22px rgba(0,0,0,.14)}
.p22OrderCard:hover,.p22RechargeCard:hover{border-color:#3a6074}
.p22CardTop{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.p22OrderIdentity{display:flex;gap:11px;min-width:0}
.p22OrderIcon{flex:0 0 43px;width:43px;height:43px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#102637;border:1px solid #33566c;font-size:20px}
.rechargeIcon{background:#0c2932}
.p22OrderIdentity small{color:#829eac;font-size:10px}.p22OrderIdentity h4{font-size:17px;margin:3px 0 2px}.p22OrderClient{color:#9ab0bb;font-size:11px}
.p22CardRight{text-align:right;display:flex;align-items:flex-end;flex-direction:column;gap:7px}.p22CardRight strong{font-size:24px;color:#fff}

.p22InfoGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0}
.p22InfoGrid>div{min-height:54px;padding:9px 10px;border-radius:10px;background:#071722;border:1px solid #203b4b}
.p22InfoGrid span,.p22RechargeNote span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#7896a6}
.p22InfoGrid b,.p22RechargeNote b{display:block;margin-top:4px;font-size:11px;word-break:break-word}

.p22ActionStrip,.p22RechargeActions{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.p22ActionStrip button,.p22RechargeActions button{border-radius:8px!important;padding:8px 11px!important;font-size:11px!important;font-weight:900!important}
.p22ReceiptBtn{background:#0a2b40!important;color:#5bd0ff!important;border:1px solid #176087!important}
.p22ApproveBtn{background:#0ca94c!important;color:#fff!important;border:1px solid #1cc663!important}
.p22RejectBtn{background:#5c2025!important;color:#ffbbbb!important;border:1px solid #8c333b!important}

.p22OrderEditor{display:grid;grid-template-columns:.9fr 1.3fr;gap:13px;border-top:1px solid #213c49;padding-top:12px}
.p22StatusButtons{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:6px!important}.p22StatusButtons button{margin:0!important;width:100%!important}
.p22OrderEditor textarea{min-height:78px!important;margin:0!important}
.p22SaveRow{display:flex;align-items:center;gap:10px;margin-top:7px}.p22SaveRow button{flex:0 0 auto}

.p22RechargeNote{padding:10px 11px;margin:12px 0;border-radius:10px;background:#071722;border:1px solid #203b4b}
.p22RechargeCard>input{margin:5px 0 0!important}

.p22Empty,.p22Loading{min-height:110px;border:1px dashed #2d4b5c;border-radius:13px;display:flex;align-items:center;justify-content:center;color:#8fa6b3;text-align:center;padding:20px}
.p22Empty.error{border-color:#713439;color:#ffb8b8}
.p22Loading::before{content:"";width:22px;height:22px;margin-right:10px;border-radius:50%;border:3px solid #294656;border-top-color:#ff6a00;animation:p22spin .85s linear infinite}
@keyframes p22spin{to{transform:rotate(360deg)}}

@media(max-width:1050px){
  .p22Filters,.rechargeFilters{grid-template-columns:1fr 1fr 1fr}
  .p22SearchBox{grid-column:1/-1}
  .p22MiniStats{grid-template-columns:repeat(3,1fr)}
  .p22RechargeStats{grid-template-columns:repeat(4,1fr)}
  .p22InfoGrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .p22ModuleHead{align-items:flex-start;flex-direction:column}
  .p22MiniStats,.p22RechargeStats{grid-template-columns:repeat(2,1fr)}
  .p22Filters,.rechargeFilters{grid-template-columns:1fr 1fr}
  .p22SearchBox{grid-column:1/-1}
  .p22OrderEditor{grid-template-columns:1fr}
}
@media(max-width:500px){
  .p22OpsPanel{padding:12px!important}
  .p22Filters,.rechargeFilters{grid-template-columns:1fr}
  .p22Filters>*{grid-column:1!important}
  .p22InfoGrid{grid-template-columns:1fr}
  .p22CardTop{flex-direction:column}.p22CardRight{text-align:left;align-items:flex-start}
  .p22ResultsBar{align-items:flex-start;flex-direction:column}
}

/* ============================================================
   FASE 2.2.1 — FIX DE ANCHO / SCROLL HORIZONTAL
   ============================================================ */
html,body{
  max-width:100%;
  overflow-x:hidden!important;
}
*,
*::before,
*::after{
  box-sizing:border-box;
}
.phase1Header,
.phase1Hero,
.phase1BrandStrip,
.phase1Section,
.phase2Account,
.phase2Admin,
.phase11PromoGrid,
.phase11Trust{
  max-width:100%;
}
.phase1Nav,
.phase1Actions,
.heroLeft,
.heroCenter,
.heroRight,
.p2AccountSummary,
.p2AccountGrid,
.p2AccountMain,
.p2AccountSidebar,
.p22OpsPanel,
.p22Filters,
.p22OrdersList,
.p22RechargeList{
  min-width:0;
}
.phase1BrandStrip{
  width:min(1280px,100%);
}
.p1ServiceCard,
.p1LicenseCard,
.p22OrderCard,
.p22RechargeCard{
  min-width:0;
}
.p22Filters select,
.p22Filters input{
  min-width:0!important;
}
.p22InfoGrid>div,
.p22OrderIdentity,
.p22CardTop,
.p22OrderEditor>div{
  min-width:0;
}
.p22InfoGrid b,
.p22OrderClient,
.p22OrderIdentity h4{
  overflow-wrap:anywhere;
}
.floating{
  max-width:calc(100vw - 24px);
}
@media(max-width:900px){
  .phase1Header{
    width:100%;
  }
  .phase1Nav{
    max-width:100vw;
    overflow-x:auto!important;
    scrollbar-width:none;
  }
  .phase1Nav::-webkit-scrollbar{display:none}
}

/* ============================================================
   FASE 2.3 — NOTIFICACIONES + CLIENTES / SALDO
   ============================================================ */
.p23NotifPanel,.p23ClientsPanel,.p23ClientDetail{
  background:linear-gradient(180deg,#091a25,#07141d)!important;
  border-color:#294858!important;
}
.p23ModuleHead{
  display:flex;justify-content:space-between;align-items:flex-end;gap:18px;
  padding-bottom:15px;margin-bottom:14px;border-bottom:1px solid #223c49;
}
.p23ModuleHead h3{font-size:24px;margin:4px 0}
.p23TopActions{display:flex;gap:7px;flex-wrap:wrap}
.p23TopActions button{border-radius:8px!important;font-size:11px!important;font-weight:900!important}

.p23NotifStats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:12px}
.p23NotifStat{
  min-height:68px;border-radius:12px!important;border:1px solid #294757!important;
  background:#0a1b26!important;color:#fff!important;text-align:left!important;padding:10px 13px!important
}
.p23NotifStat span{display:block;color:#8da6b3;font-size:10px;text-transform:uppercase}
.p23NotifStat strong{display:block;font-size:25px;margin-top:2px}
.p23NotifStat.unread strong{color:#ffb02e}.p23NotifStat.read strong{color:#6fe59a}
.p23NotifStat.active{border-color:#ff6a00!important;box-shadow:0 0 18px rgba(255,106,0,.08)}

.p23NotifToolbar{
  display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:center;
  padding:10px;border:1px solid #294656;border-radius:12px;background:#07151f
}
.p23SearchBox{position:relative}.p23SearchBox span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#7895a4}
.p23SearchBox input{margin:0!important;padding-left:34px!important}
.p23TypeFilters{display:flex;gap:6px;flex-wrap:wrap}
.p23TypeFilters button{margin:0!important}
.p23NotifLegend{display:flex;align-items:center;gap:16px;padding:10px 3px;font-size:10px;color:#8fa5b2}
.p23NotifLegend>span:last-child{margin-left:auto;color:#fff;font-weight:900}

.p23NotifList{display:flex;flex-direction:column;gap:9px}
.p23NotifItem{
  position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;
  padding:14px;border:1px solid #294657;border-radius:13px;background:#081722
}
.p23NotifItem.unread{border-color:#6a4a1e;background:linear-gradient(90deg,rgba(255,106,0,.07),#081722 34%)}
.p23NotifItem.read{opacity:.82}
.p23NotifIcon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#102635;border:1px solid #335365;font-size:20px}
.p23NotifTitleRow{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.p23NotifTitleRow h4{font-size:15px;margin:2px 0}.p23NotifTitleRow time{font-size:9px;color:#8098a6;white-space:nowrap}
.p23NotifType{font-size:9px;color:#ff8a2a;text-transform:uppercase;font-weight:900;letter-spacing:.06em}
.p23NotifClient{font-size:10px;color:#81a0b0}.p23NotifBody p{margin:7px 0 9px;color:#b5c3cb;font-size:11px;line-height:1.4}
.p23NotifActions{display:flex;gap:7px;flex-wrap:wrap}.p23NotifActions button{font-size:10px!important;padding:7px 9px!important;border-radius:7px!important}
.p23UnreadDot{position:absolute;right:10px;top:10px;width:8px;height:8px;border-radius:50%;background:#ff780e;box-shadow:0 0 11px #ff780e}

.p23ClientsLayout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);gap:14px;align-items:start}
.p23ClientStats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:11px}
.p23ClientStats>div{padding:11px;border:1px solid #284555;border-radius:11px;background:#081722}
.p23ClientStats span{display:block;font-size:9px;text-transform:uppercase;color:#7897a7}.p23ClientStats strong{display:block;font-size:20px;margin-top:3px}

.p23ClientSearch{position:relative;margin-bottom:10px}.p23ClientSearch span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#7895a5}.p23ClientSearch input{margin:0!important;padding-left:34px!important}
.p23ClientList{display:flex;flex-direction:column;gap:7px;max-height:640px;overflow:auto;padding-right:3px}
.p23ClientRow{
  width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;
  padding:11px!important;border-radius:11px!important;border:1px solid #284555!important;
  background:#081722!important;color:#fff!important;text-align:left!important
}
.p23ClientRow:hover,.p23ClientRow.selected{border-color:#ff6a00!important;background:#0b1d29!important}
.p23ClientRowAvatar{width:42px;height:42px;border-radius:11px;background:linear-gradient(145deg,#12334a,#0b1f2c);display:flex;align-items:center;justify-content:center;font-weight:1000;color:#fff}
.p23ClientRowMain b{display:block;font-size:13px}.p23ClientRowMain small,.p23ClientRowMain em{display:block;font-size:9px;color:#819aa8;font-style:normal;margin-top:2px}
.p23ClientRowBalance{font-size:17px;font-weight:1000;color:#ff7a18}

.p23ClientDetail{position:sticky;top:145px;padding:17px!important}
.p23NoClient{text-align:center;padding:55px 24px;color:#95a9b4}.p23NoClientIcon{font-size:45px}.p23NoClient h3{color:#fff;margin:10px 0 5px}.p23NoClient p{font-size:12px}
.p23SelectedHead{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding-bottom:13px;border-bottom:1px solid #23404e}
.p23ClientAvatar{width:54px;height:54px;border-radius:14px;background:linear-gradient(145deg,#ff5e00,#ff8b20);display:flex;align-items:center;justify-content:center;font-weight:1000;font-size:20px}
.p23SelectedHead small{font-size:9px;color:#7f9cac;letter-spacing:.08em}.p23SelectedHead h3{margin:2px 0;font-size:18px}
.p23RoleBadge{border-radius:999px;background:#0a3348;color:#63d0ff;padding:5px 8px;font-size:9px;font-weight:900}

.p23ClientMetrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}
.p23ClientMetrics>div{padding:9px;border-radius:10px;border:1px solid #254352;background:#071722}
.p23ClientMetrics span{display:block;font-size:8px;color:#7895a4;text-transform:uppercase}.p23ClientMetrics strong{display:block;font-size:17px;margin-top:3px}
.p23ClientMetrics>div:first-child strong{color:#ff7a18}

.p23ContactBlock{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border-radius:10px;background:#071722;border:1px solid #254352;margin-bottom:12px}
.p23ContactBlock span{display:block;font-size:8px;color:#7895a4;text-transform:uppercase}.p23ContactBlock b{font-size:11px}
.p23AdjustCard,.p23ActivityCard{padding-top:12px;margin-top:12px;border-top:1px solid #23404e}
.p23AmountRow{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0}
.p23AmountPreset{background:#0d2939!important;color:#cde8f7!important;border:1px solid #31586d!important;border-radius:7px!important;padding:8px!important;font-size:11px!important}
.p23AmountPreset.negative{background:#321a1d!important;color:#ffb4b4!important;border-color:#663038!important}
.p23BalancePreview{display:flex;justify-content:space-between;align-items:center;padding:9px 10px;margin:8px 0;border-radius:9px;background:#0b1d27;border:1px solid #294755}
.p23BalancePreview span{font-size:9px;color:#859eab;text-transform:uppercase}.p23BalancePreview strong{font-size:18px;color:#ff7a18}
.p23ActivityHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.p23ActivityHead small{font-size:9px;color:#7f98a6}
.p23ActivityRow{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px dashed #213b49}
.p23ActivityRow>span{font-size:17px}.p23ActivityRow b{display:block;font-size:10px}.p23ActivityRow small{display:block;font-size:8px;color:#7894a3;margin-top:2px}.p23ActivityRow strong{font-size:10px}.p23ActivityRow strong.positive{color:#65e390}.p23ActivityRow strong.negative{color:#ff8a72}

@media(max-width:1050px){
  .p23ClientsLayout{grid-template-columns:1fr}
  .p23ClientDetail{position:static}
}
@media(max-width:760px){
  .p23ModuleHead{flex-direction:column;align-items:flex-start}
  .p23NotifToolbar{grid-template-columns:1fr}
  .p23NotifStats{grid-template-columns:repeat(3,1fr)}
  .p23ClientStats{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:520px){
  .p23TopActions{width:100%}.p23TopActions button{flex:1}
  .p23NotifTitleRow{flex-direction:column}.p23NotifTitleRow time{white-space:normal}
  .p23ClientStats,.p23ClientMetrics{grid-template-columns:1fr 1fr}
  .p23ClientStats>div:last-child,.p23ClientMetrics>div:last-child{grid-column:1/-1}
  .p23SelectedHead{grid-template-columns:auto 1fr}.p23RoleBadge{grid-column:1/-1;width:max-content}
}

/* ============================================================
   FASE 2.4 — LICENCIAS + SEGURIDAD ADMIN
   ============================================================ */
.p24SecurityStrip{
  display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;
  margin:0 0 13px;padding:11px 13px;border:1px solid #24583d;border-radius:13px;
  background:linear-gradient(90deg,#08261a,#081821 65%);
}
.p24SecurityIcon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#0c3b25;border:1px solid #176239;font-size:20px}
.p24SecurityText b{display:block;color:#86f0a6;font-size:13px}.p24SecurityText span{display:block;color:#8ca7b3;font-size:10px;margin-top:2px}
.p24SecurityIdentity{text-align:right}.p24SecurityIdentity small{display:block;font-size:8px;color:#718b98;letter-spacing:.08em}.p24SecurityIdentity b{display:block;font-size:10px;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.p24LockBtn{background:#2d2021!important;color:#ffc0c0!important;border:1px solid #69343a!important;border-radius:8px!important;font-size:10px!important;font-weight:900!important}

.p24LicensePanel,.p24LicenseSalesPanel{background:linear-gradient(180deg,#091a25,#07141d)!important;border-color:#294858!important}
.p24ModuleHead{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding-bottom:14px;margin-bottom:13px;border-bottom:1px solid #223c49}
.p24ModuleHead h3{font-size:24px;margin:4px 0}.p24HeadActions{display:flex;gap:7px}.p24HeadActions button{font-size:11px!important;border-radius:8px!important}

.p24LicenseStats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:13px}
.p24LicenseStat{min-height:70px;padding:10px 12px;border-radius:11px;border:1px solid #294758;background:#081722;color:#fff;text-align:left!important}
button.p24LicenseStat{cursor:pointer}
.p24LicenseStat span{display:block;font-size:9px;text-transform:uppercase;color:#7e9ba9}.p24LicenseStat strong{display:block;font-size:24px;margin-top:3px}
.p24LicenseStat.available strong,.p24LicenseStat.delivered strong{color:#66e991}.p24LicenseStat.hiddenStat strong{color:#91a4af}.p24LicenseStat.pending strong{color:#ffc347}
button.p24LicenseStat.active,button.p24LicenseStat:hover{border-color:#ff6a00!important}

.p24LicenseWorkspace{display:grid;grid-template-columns:370px 1fr;gap:13px}
.p24LicenseEditor,.p24ProductCatalog{border:1px solid #294657;border-radius:14px;background:#07151f;padding:14px;min-width:0}
.p24EditorHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.p24EditorHead small{font-size:9px;color:#7896a6}.p24EditorHead h4{font-size:18px;margin:2px 0}
.p24EditBadge{font-size:8px;font-weight:900;letter-spacing:.07em;padding:5px 7px;border-radius:999px;background:#0b3147;color:#68d1ff}.p24EditBadge.editing{background:#542d08;color:#ffc178}
.p24TwoCols{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.p24AvailabilityToggle{display:flex;align-items:center;gap:10px;margin:10px 0;padding:10px;border:1px solid #2a4859;border-radius:10px;background:#081923}
.p24AvailabilityToggle input{width:auto!important}.p24AvailabilityToggle b{display:block;font-size:11px}.p24AvailabilityToggle small{display:block;font-size:9px;color:#7e99a7}
.p24LicenseWarning{padding:9px 10px;margin:8px 0;border-radius:9px;border:1px solid #7f3d25;background:#2d1810;color:#ffc19d;font-size:10px}
.p24EditorActions button{flex:1}

.p24CatalogToolbar{display:grid;grid-template-columns:1fr 170px;gap:8px;margin-bottom:10px}
.p24SearchBox{position:relative}.p24SearchBox span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#7591a0;z-index:2}.p24SearchBox input{margin:0!important;padding-left:34px!important}
.p24CatalogToolbar select,.p24SalesFilters select{margin:0!important}
.p24ProductList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.p24ProductCard{padding:12px;border:1px solid #294758;border-radius:12px;background:#081722;min-width:0}
.p24ProductCard.hiddenProduct{opacity:.7}
.p24ProductTop{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}
.p24ProductMark{width:42px;height:42px;border-radius:10px;background:#102535;border:1px solid #315267;display:flex;align-items:center;justify-content:center}
.p24ProductTitle small{font-size:8px;color:#7793a1}.p24ProductTitle h4{font-size:14px;margin:2px 0}
.p24Availability{font-size:8px;font-weight:900;padding:5px 7px;border-radius:999px}.p24Availability.on{background:#0b4627;color:#7af09b}.p24Availability.off{background:#2c3033;color:#aeb7bd}
.p24ProductCard p{font-size:10px;color:#92a8b4;min-height:30px}
.p24ProductMeta{display:flex;gap:7px;flex-wrap:wrap;font-size:9px;color:#a7b8c0}.p24ProductMeta span{padding:5px 6px;background:#0a1d29;border-radius:7px}
.p24ProductActions{display:flex;gap:6px;margin-top:10px}.p24ProductActions button{flex:1;font-size:9px!important;padding:7px!important;border-radius:7px!important}
.dangerSoft{background:#321c1e!important;color:#ffb5b5!important;border-color:#653038!important}.successSoft{background:#0b3b24!important;color:#83efa2!important;border-color:#1d6540!important}

.p24OrderStats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:11px}
.p24OrderStat{min-height:62px;text-align:left!important;padding:9px 11px!important;border:1px solid #294657!important;border-radius:10px!important;background:#081722!important;color:#fff!important}
.p24OrderStat span{display:block;font-size:8px;color:#7995a4;text-transform:uppercase}.p24OrderStat strong{display:block;font-size:20px;margin-top:2px}.p24OrderStat.active,.p24OrderStat:hover{border-color:#ff6a00!important}.p24OrderStat.pending strong,.p24OrderStat.processing strong{color:#ffc247}.p24OrderStat.delivered strong{color:#63e98f}.p24OrderStat.rejected strong{color:#ff7b7b}
.p24SalesFilters{display:grid;grid-template-columns:1fr 180px 170px;gap:8px;padding:9px;border:1px solid #294657;border-radius:11px;background:#07151f;margin-bottom:10px}
.p24LicenseOrders{display:flex;flex-direction:column;gap:10px}
.p24LicenseOrderCard{padding:14px;border:1px solid #294758;border-radius:13px;background:#081722}
.p24LicenseOrderTop{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.p24LicenseOrderTop small{font-size:9px;color:#7995a4}.p24LicenseOrderTop h4{font-size:16px;margin:2px 0}.p24OrderCustomer{font-size:10px;color:#90a6b2}.p24LicenseOrderPrice{text-align:right;display:flex;align-items:flex-end;flex-direction:column;gap:6px}.p24LicenseOrderPrice strong{font-size:22px}
.p24OrderMeta{display:grid;grid-template-columns:1fr 1fr 2fr;gap:7px;margin:11px 0}.p24OrderMeta>div{padding:8px 9px;border:1px solid #223e4c;border-radius:9px;background:#07151f}.p24OrderMeta span{display:block;font-size:8px;text-transform:uppercase;color:#7894a2}.p24OrderMeta b{display:block;font-size:10px;margin-top:3px}
.p24DeliveryGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.p24DeliveryGrid textarea{min-height:74px!important;margin:0!important}
.p24OrderActions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.p24OrderActions button{font-size:9px!important;border-radius:7px!important;padding:8px 10px!important}.p24DeliverBtn{background:#0b4a28!important;color:#83efa2!important;border-color:#1a6a3b!important}.p24RefundBtn{background:#431f22!important;color:#ffb9b9!important;border-color:#793139!important}

@media(max-width:1100px){
  .p24SecurityStrip{grid-template-columns:auto 1fr auto}.p24SecurityIdentity{display:none}
  .p24LicenseWorkspace{grid-template-columns:330px 1fr}
  .p24ProductList{grid-template-columns:1fr}
}
@media(max-width:820px){
  .p24SecurityStrip{grid-template-columns:auto 1fr}.p24LockBtn{grid-column:1/-1}
  .p24LicenseStats,.p24OrderStats{grid-template-columns:repeat(3,1fr)}
  .p24LicenseWorkspace{grid-template-columns:1fr}
  .p24SalesFilters{grid-template-columns:1fr 1fr}.p24SearchBox{grid-column:1/-1}
}
@media(max-width:560px){
  .p24ModuleHead{align-items:flex-start;flex-direction:column}.p24HeadActions{width:100%}.p24HeadActions button{flex:1}
  .p24LicenseStats,.p24OrderStats{grid-template-columns:1fr 1fr}
  .p24TwoCols,.p24DeliveryGrid,.p24OrderMeta{grid-template-columns:1fr}
  .p24CatalogToolbar,.p24SalesFilters{grid-template-columns:1fr}.p24SearchBox{grid-column:auto}
  .p24ProductTop{grid-template-columns:auto 1fr}.p24Availability{grid-column:1/-1;width:max-content}
  .p24LicenseOrderTop{flex-direction:column}.p24LicenseOrderPrice{text-align:left;align-items:flex-start}
}

/* ============================================================
   FASE 2.5 — SEGURIDAD Y ESTABILIDAD
   ============================================================ */
.p25SecurityPanel{
  background:linear-gradient(180deg,#091a25,#07141d)!important;
  border-color:#294858!important;
}
.p25SecurityHead{
  display:flex;justify-content:space-between;align-items:flex-end;gap:18px;
  padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #223c49;
}
.p25SecurityHead h3{font-size:24px;margin:4px 0}
.p25SecurityScore{
  display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:center;
  padding:14px;border:1px solid #28513d;border-radius:14px;
  background:linear-gradient(90deg,#082319,#081722);margin-bottom:12px;
}
.p25ScoreRing{
  width:84px;height:84px;border-radius:50%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;border:5px solid #1f7145;
  box-shadow:inset 0 0 22px rgba(28,207,99,.08),0 0 20px rgba(28,207,99,.08)
}
.p25ScoreRing strong{font-size:22px}.p25ScoreRing small{font-size:8px;color:#83a794;text-transform:uppercase}
.p25SecurityScore>b,.p25SecurityScore div>b{font-size:17px}.p25SecurityScore p{font-size:11px;color:#91a8b3;margin:4px 0 0;line-height:1.45}

.p25ChecksGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.p25Check{
  position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;
  min-height:76px;padding:11px;border:1px solid #294657;border-radius:11px;background:#081722
}
.p25CheckIcon{font-size:21px}.p25Check b{display:block;font-size:11px}.p25Check small{display:block;font-size:9px;color:#7e98a6;margin-top:2px}
.p25Check em{font-style:normal;font-size:9px;font-weight:900;color:#8199a6}
.p25Check.ok{border-color:#246641;background:linear-gradient(90deg,rgba(24,170,83,.07),#081722)}
.p25Check.ok em{color:#70e797}.p25Check.fail{border-color:#74333b;background:linear-gradient(90deg,rgba(210,52,65,.08),#081722)}.p25Check.fail em{color:#ff858c}
.p25Check.checking em{color:#ffc047}

.p25SecurityNotes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px}
.p25SecurityNotes>div{padding:12px;border:1px solid #284554;border-radius:11px;background:#07151f}
.p25SecurityNotes b{font-size:11px}.p25SecurityNotes p{font-size:9px;color:#829ca9;line-height:1.5;margin:4px 0}.p25SecurityNotes code{color:#ff9a4c}

.p25DangerZone{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  padding:12px;border:1px solid #65323a;border-radius:11px;background:#231317
}
.p25DangerZone b{display:block;font-size:11px;color:#ffb8bd}.p25DangerZone small{display:block;font-size:9px;color:#9c7b7e;margin-top:2px}
@media(max-width:900px){.p25ChecksGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){
  .p25SecurityHead{flex-direction:column;align-items:flex-start}
  .p25ChecksGrid,.p25SecurityNotes{grid-template-columns:1fr}
  .p25DangerZone{flex-direction:column;align-items:flex-start}.p25DangerZone button{width:100%}
}

/* ============================================================
   FASE 3.1 — ARQUITECTURA DE PROVEEDORES
   ============================================================ */
.p31ProviderHero{background:linear-gradient(180deg,#091a25,#07141d)!important;border-color:#294858!important}
.p31ProviderHead{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;padding-bottom:14px;border-bottom:1px solid #233f4e}
.p31ProviderHead h2{font-size:27px;margin:4px 0}.p31HeadActions{display:flex;gap:7px;flex-wrap:wrap}.p31HeadActions button{font-size:10px!important;border-radius:8px!important}
.p31ProviderStats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:13px 0}
.p31ProviderStats>div{padding:11px 12px;border:1px solid #294758;border-radius:11px;background:#081722}
.p31ProviderStats span{display:block;font-size:8px;color:#7b98a7;text-transform:uppercase;letter-spacing:.05em}.p31ProviderStats strong{display:block;font-size:23px;margin-top:3px}.p31ProviderStats>div:last-child strong{color:#69e993}
.p31ArchitectureFlow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:7px;align-items:center;padding:11px;border:1px solid #294657;border-radius:12px;background:#07151f;margin-bottom:11px}
.p31ArchitectureFlow>div{min-height:58px;padding:8px;border-radius:9px;background:#0a1d28;display:flex;gap:7px;align-items:center}
.p31ArchitectureFlow b{width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:#ff6a00;display:flex;align-items:center;justify-content:center;font-size:10px}.p31ArchitectureFlow span{font-size:9px;color:#c3d0d6}.p31ArchitectureFlow i{font-style:normal;color:#ff7a18;font-weight:1000}
.p31SecurityBanner{margin-top:0!important}.p31ReadinessSummary{margin-top:10px;padding:10px 12px;border-radius:10px;border:1px solid #33505f;background:#091a24}.p31ReadinessSummary b{display:block;font-size:11px}.p31ReadinessSummary span{display:block;font-size:9px;color:#8ca5b2;margin-top:3px}.p31ReadinessSummary.ok{border-color:#256640;background:#092219}.p31ReadinessSummary.warn{border-color:#79501f;background:#261a0c}

.p31FormHint{font-size:9px;color:#829ba8;margin:-4px 0 10px}
.p31ProviderReadiness{padding:10px;border:1px solid #294657;border-radius:10px;background:#07151f;margin:10px 0}
.p31ProviderReadinessHead{display:flex;justify-content:space-between;gap:10px;align-items:center}.p31ProviderReadinessHead b{font-size:10px}.p31ProviderReadinessHead span{font-size:8px;padding:4px 7px;border-radius:999px;background:#25323a;color:#adc0c9;font-weight:900}.p31ProviderReadinessHead span.ready{background:#0b4829;color:#78efa0}.p31ProviderReadinessHead span.warning{background:#5b330d;color:#ffc27e}.p31ProviderReadinessHead span.manual{background:#17354b;color:#77d0ff}
#p31FormReadinessChecks{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px}#p31FormReadinessChecks span{font-size:8px;color:#839ba7}#p31FormReadinessChecks span.ok{color:#6fe596}

.p31ProviderCard{border:1px solid #294657;border-radius:12px;padding:12px;margin-bottom:8px;background:#081722}
.p31ProviderBadges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.p31ReadyBadge{font-size:8px;padding:5px 7px;border-radius:999px;font-weight:900}.p31ReadyBadge.ready{background:#0b4829;color:#7af0a0}.p31ReadyBadge.pending{background:#4b2b10;color:#ffc07d}
.p31ProviderChecklist{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.p31ProviderChecklist span{font-size:8px;padding:4px 6px;border-radius:6px;background:#131f27;color:#78919e}.p31ProviderChecklist span.ok{background:#0b3521;color:#70e99a}

.p31MappingLegend{display:flex;gap:14px;flex-wrap:wrap;font-size:9px;color:#899faa;margin:7px 0 10px}.p31Dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.p31Dot.manual{background:#58b9ed}.p31Dot.automatic{background:#ff7a18}
.p31MappingRow{align-items:center}.p31MappingStatus{display:inline-block;margin-top:5px;font-size:8px;font-weight:900;padding:4px 6px;border-radius:999px}.p31MappingStatus.ready{background:#0c4227;color:#75eda0}.p31MappingStatus.pending{background:#552d0b;color:#ffc17a}
.p31LogStats{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 10px}.p31LogStats span{font-size:9px;padding:6px 8px;border-radius:7px;background:#081722;border:1px solid #294657}.p31LogStats b{color:#fff}

@media(max-width:1050px){
  .p31ProviderStats{grid-template-columns:repeat(3,1fr)}
  .p31ArchitectureFlow{grid-template-columns:1fr 1fr}.p31ArchitectureFlow i{display:none}
}
@media(max-width:650px){
  .p31ProviderHead{align-items:flex-start;flex-direction:column}.p31HeadActions{width:100%}.p31HeadActions button{flex:1}
  .p31ProviderStats{grid-template-columns:1fr 1fr}.p31ProviderStats>div:last-child{grid-column:1/-1}
  .p31ArchitectureFlow{grid-template-columns:1fr}
}

/* ============================================================
   FASE 3.2 — DHRU FUSION / SERVERGATOCELL
   ============================================================ */
.p32DhruPanel{border-color:#39556a!important;background:linear-gradient(180deg,#081922,#07131b)!important}
.p32DhruHeader{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid #294657}
.p32DhruHeader h3{font-size:21px;margin:4px 0}
.p32DhruState{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #294657;border-radius:999px;background:#07151f;font-size:9px;white-space:nowrap}
.p32Dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#738692;box-shadow:0 0 0 3px rgba(115,134,146,.12)}
.p32Dot.ok{background:#55e78c;box-shadow:0 0 0 3px rgba(85,231,140,.12)}.p32Dot.error{background:#ff6262;box-shadow:0 0 0 3px rgba(255,98,98,.12)}.p32Dot.working{background:#ff8a25;box-shadow:0 0 0 3px rgba(255,138,37,.12)}
.p32EndpointCard{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.p32EndpointCard>div{border:1px solid #294657;border-radius:10px;background:#081722;padding:10px}.p32EndpointCard small{display:block;color:#72909f;font-size:7px;font-weight:900;letter-spacing:.08em;margin-bottom:4px}.p32EndpointCard b{font-size:10px;color:#dce8ed;word-break:break-word}
.p32SecurityNote{display:flex;gap:10px;padding:11px;border:1px solid #365c4a;border-radius:10px;background:#082019}.p32SecurityNote>span{font-size:20px}.p32SecurityNote b{font-size:10px;color:#85efaa}.p32SecurityNote p{font-size:9px;line-height:1.5;color:#86a69a;margin:4px 0 0}
.p32Actions{display:flex;gap:7px;flex-wrap:wrap;margin:11px 0}.p32Actions button{font-size:9px!important}
.p32Result{min-height:74px;border:1px dashed #355061;border-radius:10px;background:#061119;padding:11px}
.p32Empty,.p32Success,.p32Error{display:flex;flex-direction:column;gap:3px}.p32Empty b,.p32Success b,.p32Error b{font-size:10px}.p32Empty span,.p32Success span,.p32Error span,.p32Error small{font-size:9px;color:#8097a3}.p32Success b{color:#70e99a}.p32Error b{color:#ff8a8a}
.p32AccountResult{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.p32AccountResult>div{padding:9px;border-radius:8px;background:#091a24;border:1px solid #294657}.p32AccountResult small{display:block;font-size:7px;color:#7592a1;font-weight:900}.p32AccountResult b,.p32AccountResult strong{display:block;font-size:10px;margin-top:4px}.p32AccountResult strong{font-size:18px;color:#70e99a}
.p32ServicesPreview{margin-top:12px;border-top:1px solid #294657;padding-top:12px}.p32PreviewHead{display:flex;justify-content:space-between;gap:10px;align-items:center}.p32PreviewHead b{display:block;font-size:11px}.p32PreviewHead span{display:block;font-size:8px;color:#78929f;margin-top:2px}
.p32ServiceRow{display:grid;grid-template-columns:80px minmax(0,1fr) 110px 100px;gap:8px;align-items:center;padding:8px;border-bottom:1px solid #17303e;font-size:9px}.p32ServiceId{font-family:monospace;color:#ff9a4c}.p32ServiceMain{min-width:0}.p32ServiceMain b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p32ServiceMain small{display:block;color:#708a97;margin-top:2px}.p32ServicePrice{font-weight:900;text-align:right}.p32ServiceTime{color:#7e96a2;text-align:right}
@media(max-width:800px){.p32EndpointCard{grid-template-columns:1fr}.p32AccountResult{grid-template-columns:1fr 1fr}.p32ServiceRow{grid-template-columns:64px minmax(0,1fr) 80px}.p32ServiceTime{display:none}}
@media(max-width:520px){.p32DhruHeader{flex-direction:column}.p32AccountResult{grid-template-columns:1fr}.p32PreviewHead{flex-direction:column;align-items:stretch}}

/* ============================================================
   FASE 3.3 — IMPORTAR / ASIGNAR DHRU
   ============================================================ */
.p33ImportPanel{border-color:rgba(255,116,0,.34);background:linear-gradient(180deg,rgba(7,30,41,.97),rgba(5,23,32,.97))}
.p33State{padding:7px 11px;border:1px solid #244756;border-radius:999px;font-size:12px;color:#9fc2d2;white-space:nowrap}
.p33State.ready{border-color:rgba(63,221,143,.42);color:#66eda7;background:rgba(23,112,72,.12)}
.p33State.working{border-color:rgba(255,125,28,.5);color:#ff9b50;background:rgba(255,113,0,.08)}
.p33Empty{border:1px dashed #2b5060;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:5px;color:#d9e7ed;background:rgba(2,17,24,.35)}
.p33Empty span{font-size:12px;color:#89a9b8}
.p33Editor{display:flex;flex-direction:column;gap:15px}.p33Editor.hidden{display:none}
.p33SelectedService{display:grid;grid-template-columns:120px minmax(280px,1fr) 150px 140px;gap:10px;padding:13px;border:1px solid #284a58;border-radius:14px;background:#071d27}
.p33SelectedService>div{display:flex;flex-direction:column;gap:5px}.p33SelectedService small{font-size:9px;letter-spacing:.12em;color:#77a7bc;font-weight:800}.p33SelectedService b{color:#f4fbff}.p33SelectedService strong{font-size:18px;color:#6ef4b3}.p33SelectedName span{font-size:11px;color:#7fa8b8}
.p33FormGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.p33FormGrid label,.p33DescriptionLabel{display:flex;flex-direction:column;gap:6px}.p33FormGrid label>span:first-child,.p33DescriptionLabel>span{font-size:10px;font-weight:800;letter-spacing:.07em;color:#8db4c5;text-transform:uppercase}.p33FormGrid .smallInput{width:100%;box-sizing:border-box}.p33Publish .check{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #284a58;border-radius:10px;background:#061c26;text-transform:none;letter-spacing:0;color:#d8e9f0;font-size:12px}
.p33DescriptionLabel textarea{min-height:72px}
.p33MarginBox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p33MarginBox>div{border:1px solid #294b59;border-radius:12px;padding:11px;background:#071b24;display:flex;flex-direction:column;gap:4px}.p33MarginBox small{font-size:9px;color:#7fa8b8;letter-spacing:.09em}.p33MarginBox b,.p33MarginBox strong{font-size:18px}.p33MarginBox strong{color:#63eda5}
.p33Actions{display:flex;gap:10px;flex-wrap:wrap}.p33SelectBtn{padding:6px 10px!important;font-size:11px!important;min-width:auto!important;background:#ff6a00!important;color:white!important;border-color:#ff6a00!important}
.p32ServiceRow{grid-template-columns:80px minmax(0,1fr) 100px 105px 90px!important;align-items:center}
@media(max-width:980px){.p33SelectedService{grid-template-columns:1fr 1fr}.p33FormGrid{grid-template-columns:1fr 1fr}.p33MarginBox{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.p33SelectedService,.p33FormGrid,.p33MarginBox{grid-template-columns:1fr}.p32ServiceRow{grid-template-columns:65px 1fr!important}.p32ServicePrice,.p32ServiceTime,.p33SelectBtn{grid-column:2}}


/* FASE 3.6.1 — navegación de tarjetas */
.p361AdminShortcut{cursor:pointer;user-select:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.p361AdminShortcut:hover,.p361AdminShortcut:focus-visible{transform:translateY(-2px);border-color:#ff7410;box-shadow:0 0 0 2px rgba(255,116,16,.12),0 10px 24px rgba(0,0,0,.22);outline:none}
.p361AdminShortcut:active,.p361AdminShortcut.p361ShortcutActive{transform:translateY(0);background:linear-gradient(180deg,#122331,#0a1721);border-color:#ff7410}
.p361AdminShortcut small{transition:color .16s ease}.p361AdminShortcut:hover small{color:#ff9b55}
.p361TargetFlash{animation:p361flash 1.1s ease}
@keyframes p361flash{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 2px rgba(255,116,16,.45),0 0 28px rgba(255,116,16,.18)}}
\n\n/* FASE 3.8 · Auditoría de producción */\n.p38AuditPanel{display:grid;gap:18px}.p38AuditHead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.p38HeadActions{display:flex;gap:10px;flex-wrap:wrap}.p38HeadActions select{min-width:130px}.p38Stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.p38Stats article,.p38Block{background:#071b26;border:1px solid #244657;border-radius:14px;padding:16px}.p38Stats small,.p38BlockHead small{display:block;color:#7fb7d1;font-size:11px}.p38Stats strong{display:block;font-size:27px;margin:5px 0}.p38Stats span{font-size:12px;color:#9cc0d0}.p38Grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.p38BlockHead{padding-bottom:12px;border-bottom:1px solid #214251;margin-bottom:8px}.p38List{display:grid;gap:8px;max-height:520px;overflow:auto}.p38Row,.p38Alert{border:1px solid #1d3c4b;border-radius:11px;padding:12px;background:#061721}.p38Row{display:flex;justify-content:space-between;gap:12px;align-items:center}.p38Row small,.p38Alert small{display:block;color:#83aebe;margin-top:4px}.p38Credit{color:#34e58a}.p38Debit{color:#ff7c5c}.p38Alert{display:grid;gap:7px}.p38AlertTop{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.p38Empty{padding:22px;text-align:center;color:#8fb0bf;border:1px dashed #2d5465;border-radius:10px}@media(max-width:900px){.p38Stats{grid-template-columns:1fr 1fr}.p38Grid{grid-template-columns:1fr}.p38AuditHead{flex-direction:column}}@media(max-width:560px){.p38Stats{grid-template-columns:1fr}.p38HeadActions{width:100%}.p38HeadActions>*{flex:1}.p38Row{align-items:flex-start}}\n
/* FASE 3.8.2 · Recuperación de contraseña */
.authRecoveryBtn{width:100%;margin-top:10px;background:transparent;border:1px solid #27485a;color:#9fd8f5;font-weight:800;cursor:pointer}
.authRecoveryBtn:hover{border-color:#ff6a00;color:#fff}
.resetPasswordCard{max-width:470px}
#resetPasswordMessage{margin-top:12px;line-height:1.45}
#resetPasswordMessage.successMsg{color:#49e68e}
#resetPasswordMessage.errorMsg{color:#ff7474}


/* FASE 3.9 · experiencia de cliente lista para producción */
.p39OrderCard{position:relative;overflow:hidden}.p39StatusLine{margin:8px 0 2px;color:#8fb8ca;font-size:.78rem}.p39ClientResult{margin-top:12px;padding:12px 14px;border:1px solid #1d5065;border-radius:12px;background:#071c27;line-height:1.5;color:#d9f4ff}.p39ClientResult b{display:block;color:#7ddcff;margin-bottom:5px}.p39ClientResult.isCompleted{border-color:#176642;background:#06251a}.p39ClientResult.isCompleted b{color:#5cf3a5}.p39ClientResult.isRejected{border-color:#6b3030;background:#291010}.p39ClientResult.isRejected b{color:#ff9a9a}.p39RefundBadge{display:inline-flex;margin-top:10px;padding:6px 10px;border-radius:999px;background:#0a472f;color:#71f4ad;font-size:.75rem;font-weight:800}.p39TxRow{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center}.p39TxIcon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#0b2633;border:1px solid #1f4a5d}.p39TxBody{min-width:0}.p39TxTop{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.p39TxType{font-size:.62rem;padding:3px 7px;border-radius:999px;border:1px solid #2c4b5a;color:#9ac0d0}.p39TxType.credit,.p39TxType.refund{border-color:#176642;color:#63eea2;background:#06251a}.p39TxType.debit{border-color:#734323;color:#ffc17d;background:#2a1607}.p39TxAmount{font-weight:900;white-space:nowrap}.p39RechargeNote{margin-top:6px;color:#acd0df;font-size:.78rem}.p39EmptyState,.p39EmptyError{padding:18px;border:1px dashed #285064;border-radius:12px;color:#86adbd;text-align:center}.p39EmptyError{border-color:#703637;color:#ff9f9f;background:#241011}@media(max-width:640px){.p39TxRow{grid-template-columns:30px minmax(0,1fr) auto}.p39TxType{display:none}.p39ClientResult{font-size:.86rem}}


/* FASE 4.2.4 · Avisos instantáneos */
.p424ToastHost{
  position:fixed;right:18px;top:88px;z-index:99999;
  display:flex;flex-direction:column;gap:10px;width:min(390px,calc(100vw - 28px));
}
.p424Toast{
  width:100%;border:1px solid #28526a;background:#071c27;color:#fff;
  border-radius:16px;padding:14px 16px;display:flex;gap:12px;text-align:left;
  box-shadow:0 18px 48px rgba(0,0,0,.38);cursor:pointer;
  opacity:0;transform:translateY(-10px);transition:.25s ease;
}
.p424Toast.show{opacity:1;transform:translateY(0)}
.p424ToastIcon{font-size:24px;line-height:1}
.p424Toast b{display:block;font-size:14px;margin-bottom:4px}
.p424Toast small{display:block;color:#b8d1df;line-height:1.35;font-size:12px}
.p424EnableAlerts{
  border:1px solid #315267;background:#102733;color:#fff;border-radius:10px;
  padding:9px 12px;font-weight:800;cursor:pointer;margin-left:8px;
}
.p424EnableAlerts:hover{border-color:#ff6a00;color:#ff8b3d}
@media(max-width:720px){
  .p424ToastHost{right:10px;top:74px;width:calc(100vw - 20px)}
  .p424EnableAlerts{margin:8px 0 0 0;width:100%}
}


/* FASE 4.2.5 · Telegram */
.p425TelegramHost{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:9px}
.p425TelegramHost small{color:#9fc0d1;font-size:11px;max-width:310px;line-height:1.3}
.p425TelegramBtn{border:1px solid #229ed9;background:#0b6f9c;color:#fff;border-radius:10px;padding:10px 14px;font-weight:900;cursor:pointer}
.p425TelegramBtn:hover{filter:brightness(1.08)}
.p425TelegramBtn.linked{background:#0b7547;border-color:#12a365}
@media(max-width:720px){.p425TelegramHost{display:block}.p425TelegramBtn{width:100%;margin-bottom:6px}}


/* FASE 4.4.2 · Simulación de precios */
.p442Panel{margin-top:18px}
.p442Safety{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border:1px solid #205d48;background:#08291f;padding:12px 14px;border-radius:12px;color:#7ff0b8;margin:12px 0}
.p442Safety span{color:#b8d7cb}
.p442Safety code{color:#fff}
.p442Controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}
.p442Legend{margin-left:auto;display:flex;gap:12px;flex-wrap:wrap;color:#9ec1d2;font-size:12px}
.p442Dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
.p442Dot.ok{background:#18c979}.p442Dot.warn{background:#ff9f1c}.p442Dot.danger{background:#ff4d5a}
.p442Summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.p442Summary>div{border:1px solid #244a5c;background:#071d28;border-radius:12px;padding:12px}
.p442Summary small{display:block;color:#6ebee7;font-size:10px}.p442Summary b{display:block;font-size:24px;margin-top:3px}
.p442Results{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.p442Row{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;border:1px solid #244a5c;background:#071b25;border-radius:14px;padding:13px}
.p442Row.warn{border-color:#74511d}.p442Row.danger{border-color:#74323a}
.p442Main{min-width:0;flex:1}
.p442Title{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.p442Title b{font-size:14px}.p442Title span{color:#69bde9;font-size:11px}
.p442Grid{display:grid;grid-template-columns:repeat(6,minmax(95px,1fr));gap:8px}
.p442Grid>div{background:#0b2633;border-radius:9px;padding:8px 9px}.p442Grid small{display:block;color:#79b8d5;font-size:9px;margin-bottom:3px}.p442Grid b,.p442Grid strong{font-size:12px}
.p442Badge{white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}
.p442Badge.ok{background:#0d5638;color:#8ff4c3}.p442Badge.warn{background:#65420e;color:#ffd18a}.p442Badge.danger{background:#67212a;color:#ffb0b8}
@media(max-width:980px){.p442Grid{grid-template-columns:repeat(3,1fr)}.p442Summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.p442Grid{grid-template-columns:repeat(2,1fr)}.p442Row{display:block}.p442Badge{display:inline-block;margin-top:10px}.p442Legend{margin-left:0}.p442Summary{grid-template-columns:1fr 1fr}}


/* FASE 4.4.3 · Control de margen */
.p443Panel{margin-top:18px}
.p443Example{border:1px solid #5a4720;background:#2b2109;color:#ffd98f;border-radius:12px;padding:12px 14px;margin:12px 0}
.p443Toolbar{margin:12px 0}.p443Toolbar input{width:100%;max-width:520px}
.p443List{display:flex;flex-direction:column;gap:12px}
.p443Card{border:1px solid #244a5c;background:#071b25;border-radius:14px;padding:14px}
.p443Top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.p443Top b{font-size:14px}.p443Top small{display:block;color:#77b9d7;margin-top:4px}
.p443Active,.p443Inactive{border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900}.p443Active{background:#0d5638;color:#8ff4c3}.p443Inactive{background:#4d2727;color:#ffaaaa}
.p443Stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.p443Stats>div{background:#0b2633;border-radius:9px;padding:9px}.p443Stats small{display:block;color:#79b8d5;font-size:9px}.p443Stats strong{display:block;margin-top:3px}
.p443EditGrid{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr auto;gap:9px;align-items:end}.p443EditGrid label{font-size:10px;color:#9bc4d7}.p443EditGrid input[type=number]{display:block;width:100%;margin-top:4px}.p443Check{display:flex;align-items:center;gap:7px;padding-bottom:11px}.p443Check input{width:auto}
@media(max-width:980px){.p443EditGrid{grid-template-columns:repeat(2,1fr)}.p443Stats{grid-template-columns:repeat(2,1fr)}} 
@media(max-width:600px){.p443EditGrid{grid-template-columns:1fr}.p443Stats{grid-template-columns:1fr 1fr}.p443Top{display:block}.p443Active,.p443Inactive{display:inline-block;margin-top:7px}}


/* FASE 4.4.5 */
.p445Panel{margin-top:18px}.p445Toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.p445Toolbar input{flex:1;min-width:240px}.p445Toolbar select{min-width:230px}.p445Summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.p445Summary>div{border:1px solid #244a5c;background:#071d28;border-radius:12px;padding:12px}.p445Summary small{display:block;color:#6ebee7;font-size:10px}.p445Summary b{display:block;font-size:23px;margin-top:4px}.p445List{display:flex;flex-direction:column;gap:10px;margin-top:10px}.p445Row{border:1px solid #244a5c;background:#071b25;border-radius:14px;padding:13px}.p445Head{display:flex;justify-content:space-between;gap:12px}.p445Head small{display:block;color:#77b9d7;margin-top:4px}.p445Badge{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900}.p445Badge.ok{background:#0d5638;color:#8ff4c3}.p445Badge.neutral{background:#183646;color:#b8d8e8}.p445Badge.down{background:#104f49;color:#9af3df}.p445Badge.warn{background:#65420e;color:#ffd18a}.p445Badge.danger{background:#67212a;color:#ffb0b8}.p445Badge.manual{background:#423777;color:#d5ccff}.p445Grid{display:grid;grid-template-columns:repeat(6,minmax(100px,1fr));gap:8px;margin-top:10px}.p445Grid>div{background:#0b2633;border-radius:9px;padding:8px 9px}.p445Grid small{display:block;color:#79b8d5;font-size:9px}.p445Note{margin-top:10px;padding:8px 10px;border-radius:9px;background:#0b202b;color:#9fc3d5;font-size:11px}@media(max-width:980px){.p445Grid{grid-template-columns:repeat(3,1fr)}.p445Summary{grid-template-columns:repeat(2,1fr)}}


/* FASE 4.4.6 · Estado Telegram por cliente */
.p23ClientStats{grid-template-columns:repeat(4,minmax(0,1fr))}
.p446ClientMini{display:inline-flex;width:max-content;margin-top:6px;padding:4px 7px;border-radius:999px;font-size:9px;font-style:normal;font-weight:900}
.p446ClientMini.linked{background:#0c5139;color:#8ef2c2}
.p446ClientMini.unlinked{background:#3e2f18;color:#ffc873}
.p446TelegramDetail{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #244a5c;background:#071d28;border-radius:12px;padding:12px 14px;margin:10px 0 14px}
.p446TelegramDetail span:first-child{display:block;color:#78b9d8;font-size:10px;margin-bottom:3px}
.p446TelegramDetail b{display:block}
.p446TelegramDetail small{display:block;color:#7fa1b1;margin-top:4px;max-width:420px}
.p446Badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;white-space:nowrap}
.p446Badge.linked{background:#0c5a3b;color:#92f5c6}
.p446Badge.unlinked{background:#5a3715;color:#ffd18e}
.p446Badge.pending{background:#203b49;color:#bfd4df}
@media(max-width:800px){.p23ClientStats{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* FASE 4.4.7 · Salud del sistema */
.p447Panel{margin-top:4px}
.p447Overall{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #294858;background:#071c27;border-radius:14px;padding:16px;margin:14px 0}
.p447Overall.ok{border-color:#17613f;background:#08271d}.p447Overall.fail{border-color:#723039;background:#2a1015}
.p447Overall span:first-child{display:block;color:#78b9d8;font-size:10px}.p447Overall b{display:block;font-size:19px;margin-top:3px}.p447Overall small{display:block;color:#86a7b6;margin-top:5px}
.p447Badge,.p447Status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900}
.p447Badge.ok,.p447Status.ok{background:#0d5a3b;color:#97f5c9}.p447Badge.fail,.p447Status.fail{background:#6b232d;color:#ffb2bb}.p447Badge.warn,.p447Status.warn{background:#66430d;color:#ffd48b}.p447Badge.unknown,.p447Status.unknown{background:#203844;color:#bfd2dc}
.p447Grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.p447Card{border:1px solid #244a5c;background:#071d28;border-radius:12px;padding:13px}
.p447Card>span{display:block;color:#89b8cd;font-size:11px;margin-bottom:8px}
.p447Meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.p447Meta>div{background:#091f2a;border-radius:10px;padding:11px;border:1px solid #1e3f4e}
.p447Meta span{display:block;color:#78a8bd;font-size:10px}.p447Meta b{display:block;margin-top:4px}
@media(max-width:900px){.p447Grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.p447Grid,.p447Meta{grid-template-columns:1fr}.p447Overall{display:block}.p447Badge{margin-top:10px}}


/* FASE 4.4.8 · Detalle de errores y alertas */
.p448Block{margin-top:18px;border-top:1px solid #244a5c;padding-top:16px}
.p448Head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.p448Head>div>span{display:block;color:#ff7a00;font-weight:900;font-size:13px}
.p448Head small{display:block;color:#87a9b9;margin-top:3px}
.p448Filters{display:flex;gap:10px;margin:12px 0;flex-wrap:wrap}
.p448Filters select{min-width:220px}.p448Filters input{flex:1;min-width:250px}
.p448List{display:flex;flex-direction:column;gap:9px}
.p448Event{border:1px solid #284959;background:#071d28;border-radius:12px;padding:12px}
.p448Event.warning{border-color:#69501c}.p448Event.error{border-color:#74303a}.p448Event.critical{border-color:#8e2532;background:#291015}.p448Event.info{border-color:#255268}
.p448EventHead{display:flex;justify-content:space-between;gap:12px}
.p448EventHead b{font-size:12px}.p448EventHead small{display:block;color:#75abc4;margin-top:4px}
.p448Badge{border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900;white-space:nowrap}
.p448Badge.warning{background:#63450e;color:#ffd58f}.p448Badge.error{background:#6a2630;color:#ffb3bc}.p448Badge.critical{background:#8c1f2d;color:white}.p448Badge.info{background:#164962;color:#b9e8ff}
.p448Message{margin-top:9px;background:#081923;border-radius:8px;padding:9px;color:#b9d0db;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
@media(max-width:640px){.p448Head,.p448EventHead{display:block}.p448Badge{display:inline-block;margin-top:8px}}


/* FASE 4.4.8.1 · Navegación Admin arriba y fija */
.phase2Admin .p448AdminStickyNavWrap{
  position:sticky;
  top:70px;
  z-index:35;
  margin:-18px 0 16px;
  padding:8px 0;
  background:linear-gradient(180deg,#061019 78%,rgba(6,16,25,.90) 90%,rgba(6,16,25,0));
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow-x:auto!important;
  margin:0!important;
  padding:8px!important;
  border:1px solid #294758!important;
  border-radius:14px!important;
  background:#07151e!important;
  box-shadow:0 10px 26px rgba(0,0,0,.30);
  scrollbar-width:thin;
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs .tab{
  flex:0 0 auto!important;
  padding:10px 13px!important;
  border-radius:9px!important;
  background:#f0f2f3!important;
  color:#111a20!important;
  font-weight:900!important;
  white-space:nowrap;
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs .tab.active{
  background:linear-gradient(90deg,#ff5d00,#ff851a)!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(255,106,0,.22);
}
/* Solo afecta la ventana Admin. */
@media(max-width:900px){
  .phase2Admin .p448AdminStickyNavWrap{top:64px}
}


/* FASE 4.4.9 · botón eliminar servicio */
.phase2Admin .svcDeleteBtn{
  border:1px solid #c83e3e!important;
  background:#2b1114!important;
  color:#ff8c8c!important;
  font-weight:900!important;
}
.phase2Admin .svcDeleteBtn:hover{
  background:#4a171b!important;
  color:#fff!important;
}


/* FASE 4.5.0 · parámetros dinámicos DHRU */
.providerDynamicFields{
  margin:10px 0 12px;
  padding:12px;
  border:1px solid #315062;
  border-radius:12px;
  background:#071923;
}
.providerDynamicFields.hidden{display:none!important}
.p450FieldsTitle{
  font-weight:900;
  margin-bottom:10px;
  color:#fff;
}
.p450Field{
  display:block;
  margin:10px 0;
}
.p450Field>span{
  display:block;
  margin-bottom:6px;
  font-size:.92rem;
  font-weight:800;
}
.p450Field input,
.p450Field select,
.p450Field textarea{
  width:100%;
  box-sizing:border-box;
}
.p450Field small{
  display:block;
  margin-top:5px;
  color:#8fb3c7;
  line-height:1.35;
}
.p450Required{color:#ff6a3d}
.p450FieldsWarning{
  color:#ffd27a;
  font-size:.9rem;
  line-height:1.4;
}


/* FASE 4.5.1 · FIX scroll del modal de pedido */
#orderModal{
  overflow-y:auto!important;
  overscroll-behavior:contain;
  padding:20px 12px!important;
}
#orderModal .modalCard,
#orderModal .modal-content,
#orderModal > div{
  max-height:calc(100vh - 40px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}
#orderModal .modalCard,
#orderModal .modal-content{
  scrollbar-width:thin;
}
@media(max-width:700px){
  #orderModal{
    align-items:flex-start!important;
    padding:10px 8px!important;
  }
  #orderModal .modalCard,
  #orderModal .modal-content,
  #orderModal > div{
    max-height:calc(100vh - 20px)!important;
  }
}


/* FASE 4.6.0 · niveles de clientes y precios */
.p460RulesCard{
  display:flex;align-items:end;gap:10px;flex-wrap:wrap;
  margin:12px 0;padding:12px;border:1px solid #294758;border-radius:12px;background:#071923;
}
.p460RulesCard>div{min-width:210px;flex:1}
.p460RulesCard small{display:block;color:#8fb3c7;margin-top:4px}
.p460RulesCard label{font-size:.82rem;font-weight:800}
.p460RulesCard input{width:72px;margin-left:5px}
.p460RulesCard button{font-weight:900}
.p460TierCard{
  margin:12px 0;padding:14px;border:1px solid #3b5666;border-radius:12px;background:#071923;
}
.p460TierCard select{width:100%;margin:10px 0}
.p460TierInfo{margin:5px 0 10px}
.p460ClientMini{
  display:inline-block;margin-top:5px;padding:3px 7px;border-radius:999px;
  background:#4a2a08;color:#ffbe70;font-style:normal;font-size:.72rem;font-weight:900;
}
.p460PublicTier{
  margin-top:-5px;margin-bottom:10px;color:#ffa44f;font-size:.78rem;font-weight:900;
}


/* FASE 4.6.1 · precios manuales por nivel */
.p461ManualInfo{
  margin:12px 0;padding:12px;border:1px solid #294758;border-radius:12px;background:#071923;
}
.p461ManualInfo b{display:block;margin-bottom:4px}
.p461ManualInfo small{color:#8fb3c7}
.p461PriceGrid{
  display:grid;
  grid-template-columns:repeat(4,minmax(110px,1fr));
  gap:8px;
  align-items:end;
  margin:10px 0;
  padding:10px;
  border:1px solid #294758;
  border-radius:10px;
  background:#06131b;
}
.p461PriceGrid label{
  font-size:.78rem;
  font-weight:900;
}
.p461PriceGrid input{
  width:100%;
  box-sizing:border-box;
  margin-top:4px;
}
.p461SavePrice{
  min-height:42px;
  font-weight:900!important;
  background:#ff6a00!important;
  color:#fff!important;
}
@media(max-width:850px){
  .p461PriceGrid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .p461PriceGrid{grid-template-columns:1fr}
}


/* FASE 4.6.2 · aviso de protección automática */
.p462AutoNote{
  grid-column:1/-1;
  color:#8fd6a9;
  font-size:.72rem;
  line-height:1.35;
}


/* FASE 4.6.3 · costo real del proveedor junto al precio */
.p463ServiceHeading{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:8px;
}
.p463ProviderCost{
  min-width:180px;
  padding:8px 10px;
  border:1px solid #1f7f4d;
  border-radius:10px;
  background:#082117;
  text-align:right;
}
.p463ProviderCost span,
.p463ProviderCost small{
  display:block;
  color:#8fc7a7;
  font-size:.72rem;
}
.p463ProviderCost b{
  display:block;
  color:#5df09d;
  margin:2px 0;
}
.p463ProviderCost.missing{
  border-color:#66521f;
  background:#231c08;
}
.p463ProviderCost.missing b{color:#ffd36a}
@media(max-width:700px){
  .p463ServiceHeading{flex-direction:column}
  .p463ProviderCost{
    width:100%;
    box-sizing:border-box;
    text-align:left;
  }
}


/* FASE 4.6.4 · archivo de servicios */
.p464ArchiveToolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0 14px}
.p464ArchiveToolbar button{font-weight:900}
.p464ArchiveToolbar button.active{background:#ff6a00!important;color:#fff!important}
.p464ArchiveBtn{border:1px solid #82651d!important;background:#2b2209!important;color:#ffd66f!important;font-weight:900!important}
.p464ArchivedRow{border-style:dashed!important;opacity:.92}
.p464ArchivedNotice{margin:8px 0 12px;padding:10px;border:1px solid #82651d;border-radius:10px;background:#211b08;color:#ffd66f}
.p464RestoreBtn{background:#11301d!important;color:#82f0ab!important;border:1px solid #28794a!important;font-weight:900!important}


/* FASE 4.6.5 · saldo del cliente visible arriba */
.p465TopBalance{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid #2e7f57;
  border-radius:11px;
  background:#082319;
  box-shadow:0 0 0 1px rgba(35,220,122,.04),0 6px 16px rgba(0,0,0,.18);
  white-space:nowrap;
}
.p465TopBalance span{
  color:#9ed8b8;
  font-size:.76rem;
  font-weight:800;
}
.p465TopBalance b{
  color:#55ef9a;
  font-size:1rem;
}
.p465TopBalance.hidden{display:none!important}

@media(max-width:980px){
  .phase1Header{align-items:flex-start}
  .phase1Actions{flex-wrap:wrap;justify-content:flex-end}
  .p465TopBalance{order:-1}
}
@media(max-width:650px){
  .p465TopBalance{
    padding:7px 9px;
  }
  .p465TopBalance span{
    font-size:0;
  }
  .p465TopBalance span::before{
    content:"💰";
    font-size:.95rem;
  }
}

/* FASE 4.7.0 · aprobación de clientes */
.p470ApprovalBanner{position:sticky;top:0;z-index:60;padding:10px 16px;text-align:center;background:#332507;border-bottom:1px solid #8a6b1f;color:#ffd86b;font-weight:900}
.p470ApprovalBanner.hidden{display:none!important}
.p470ApprovalCard{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:14px;border:1px solid #345266;border-radius:12px;background:#071923}
.p470ApprovalCard small{display:block;margin-top:4px;color:#8fb3c7}
.p470ApproveBtn{background:#126837!important;color:#fff!important;border:1px solid #39a966!important;font-weight:900!important}
.p470SuspendBtn{background:#3a1818!important;color:#ff9a9a!important;border:1px solid #a54141!important;font-weight:900!important}
.p470ClientApproval{display:inline-block;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:.72rem;font-weight:900}
.p470ClientApproval.approved{background:#0d3d25;color:#73e7a4}
.p470ClientApproval.pending{background:#3a2c08;color:#ffd66f}


/* FASE 4.7.0.1 · FIX scroll de resultados largos en Mi cuenta */
#cuenta,
.phase2Account{
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
}

.p39OrderCard{
  overflow:visible!important;
}

.p39ClientResult{
  max-height:62vh!important;
  overflow-y:auto!important;
  overflow-x:auto!important;
  overscroll-behavior:contain;
  padding-right:10px!important;
  scrollbar-width:thin;
  word-break:break-word;
  white-space:normal;
}

.p39ClientResult > div{
  min-width:0;
  overflow-wrap:anywhere;
}

@media(max-width:700px){
  .p39ClientResult{
    max-height:55vh!important;
  }
}


/* FASE 4.7.1 · Telegram: solo Admin desvincula */
.p471TelegramAdminActions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}
.p471UnlinkBtn{
  background:#3a1616!important;
  color:#ff9c9c!important;
  border:1px solid #a74343!important;
  font-weight:900!important;
  padding:8px 10px!important;
  border-radius:9px!important;
}
.p471UnlinkBtn:hover{
  background:#521b1b!important;
}
.p425TelegramBtn:disabled{
  cursor:default!important;
  opacity:1!important;
}


/* FASE 4.7.3 · archivar clientes */
.p473ClientArchiveToolbar{
  display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0;
}
.p473ClientArchiveToolbar button{font-weight:900}
.p473ClientArchiveToolbar button.active{
  background:#ff6a00!important;color:#fff!important;border-color:#ff6a00!important;
}
.p473ArchiveClientCard{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:14px;margin:12px 0;border:1px solid #65521e;border-radius:12px;background:#201a08;
}
.p473ArchiveClientCard small{display:block;margin-top:4px;color:#c9b978}
.p473ArchiveClientBtn{
  background:#3a2d09!important;color:#ffd66f!important;border:1px solid #8b6d20!important;font-weight:900!important;
}
.p473RestoreClientBtn{
  background:#11301d!important;color:#83efaa!important;border:1px solid #287a4a!important;font-weight:900!important;
}
.p473ArchivedBadge{
  display:inline-block;margin-top:5px;padding:3px 7px;border-radius:999px;
  background:#3a2d09;color:#ffd66f;font-size:.72rem;font-weight:900;
}
.p473ArchivedClientRow{
  border-style:dashed!important;opacity:.9;
}


#p473ArchiveClientBtn:active,
#p473ShowActiveClients:active,
#p473ShowArchivedClients:active{
  transform:translateY(1px);
}

#p473ArchiveClientBtn{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:5!important;
}


/* FASE 4.7.3.3 · estado visual de cuenta archivada */
.p470ArchivedApprovalBtn{
  background:#2a2a2a!important;
  color:#aaa!important;
  border:1px solid #555!important;
  cursor:not-allowed!important;
  font-weight:900!important;
}


/* FASE 4.7.4 · revisión y aceptación antes del pedido */
.p474OrderCard{max-width:640px!important}
.p474OrderReview{
  margin:14px 0;
  padding:15px;
  border:1px solid #345263;
  border-radius:14px;
  background:#071922;
}
.p474ReviewTitle{
  color:#ff7417;
  font-weight:1000;
  margin-bottom:12px;
  letter-spacing:.02em;
}
.p474ReviewGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.p474ReviewGrid>div{
  padding:10px;
  border:1px solid #203d4d;
  border-radius:10px;
  background:#091f2a;
  min-width:0;
}
.p474ReviewGrid .wide{grid-column:1/-1}
.p474ReviewGrid span{
  display:block;
  color:#8fb4c8;
  font-size:.72rem;
  text-transform:uppercase;
  margin-bottom:4px;
}
.p474ReviewGrid b{
  display:block;
  color:#fff;
  overflow-wrap:anywhere;
}
.p474ReviewExtras>div{
  display:grid;
  grid-template-columns:minmax(110px,.65fr) 1.35fr;
  gap:10px;
  padding:5px 0;
  border-bottom:1px dashed #24404d;
}
.p474ReviewExtras>div:last-child{border-bottom:0}
.p474ReviewExtras>div span{
  text-transform:none;
  margin:0;
}
.p474Terms{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:14px 0 8px;
  padding:12px;
  border:1px solid #76561b;
  border-radius:11px;
  background:#2b2109;
  color:#ffe5a0;
  cursor:pointer;
}
.p474Terms input{
  width:19px!important;
  height:19px!important;
  min-width:19px;
  margin:1px 0 0!important;
  accent-color:#ff6a00;
}
.p474Terms span{
  font-size:.86rem;
  line-height:1.35;
}
.p474ReviewActions{
  display:flex;
  justify-content:flex-start;
  margin-top:8px;
}
#p474EditOrder{
  background:#eef3f6;
  color:#101820;
  font-weight:900;
}
@media(max-width:620px){
  .p474ReviewGrid{grid-template-columns:1fr}
  .p474ReviewGrid .wide{grid-column:auto}
}


/* FASE 4.7.5 · Agregar / Quitar saldo */
.p475BalanceMode{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin:10px 0;
}
.p475BalanceMode button{
  padding:11px 10px;
  border-radius:10px;
  font-weight:1000;
  background:#10232d;
  color:#dbe8ee;
  border:1px solid #31505f;
}
#p475AddBalanceMode.active{
  background:#0e4b2a!important;
  color:#8dffb4!important;
  border-color:#238f50!important;
}
#p475RemoveBalanceMode.active{
  background:#4a1717!important;
  color:#ffabab!important;
  border-color:#a43e3e!important;
}
.p475BalanceHint{
  padding:9px 11px;
  border-radius:9px;
  font-size:.83rem;
  margin-bottom:10px;
}
.p475BalanceHint.add{
  background:#0c2a1c;
  border:1px solid #245a3a;
  color:#91e9ad;
}
.p475BalanceHint.remove{
  background:#301414;
  border:1px solid #6e3030;
  color:#ffb2b2;
}
.p475BalanceSummary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:12px 0;
}
.p475BalanceSummary>div{
  padding:10px;
  background:#091a23;
  border:1px solid #294654;
  border-radius:9px;
}
.p475BalanceSummary>div.result{
  grid-column:1/-1;
  border-color:#ff6a00;
}
.p475BalanceSummary span{
  display:block;
  font-size:.72rem;
  color:#8fb1c3;
  text-transform:uppercase;
}
.p475BalanceSummary strong{
  display:block;
  margin-top:4px;
  font-size:1.05rem;
}
.p475BalanceSummary strong.positive{color:#54ef94}
.p475BalanceSummary strong.negative{color:#ff8585}
.p475RemoveSubmit{
  background:#8e2525!important;
  border-color:#b44242!important;
}
@media(max-width:560px){
  .p475BalanceMode,.p475BalanceSummary{grid-template-columns:1fr}
  .p475BalanceSummary>div.result{grid-column:auto}
}


/* FASE 4.7.9 · Crear cliente desde Admin */
.p479ClientTopActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.p479CreateClientCard{max-width:560px!important}
.p479PasswordRow{display:grid;grid-template-columns:1fr auto;gap:8px}
.p479PasswordRow button{font-weight:900}
.p479ApproveOption{
  display:flex;gap:10px;align-items:flex-start;padding:12px;margin:12px 0;
  border:1px solid #31505f;border-radius:10px;background:#0b1c25;cursor:pointer
}
.p479ApproveOption input{
  width:19px!important;height:19px!important;min-width:19px;margin:2px 0 0!important;accent-color:#ff6a00
}
.p479ApproveOption span{display:block}
.p479ApproveOption small{display:block;margin-top:3px;color:#93afbe;line-height:1.3}
.p479CreateNotice{
  padding:11px 12px;margin:12px 0;border-radius:10px;border:1px solid #6e5724;
  background:#2b2109;color:#ffe0a0;font-size:.84rem;line-height:1.35
}
@media(max-width:560px){.p479PasswordRow{grid-template-columns:1fr}}


/* TECNICELL 4.7.9.2 — Solo interfaz: scroll modal y listas plegables */
#p479CreateClientModal { overflow-y:auto; overscroll-behavior:contain; align-items:flex-start; }
#p479CreateClientModal .p479CreateClientCard { width:min(560px,100%); max-height:calc(100dvh - 36px); overflow-y:auto; overscroll-behavior:contain; margin:auto; scrollbar-width:thin; }
@supports not (height:100dvh) { #p479CreateClientModal .p479CreateClientCard { max-height:calc(100vh - 36px); } }
.p479CollapsibleHistory {border:1px solid #315064;border-radius:12px;background:#0a1b26;margin-top:14px;overflow:hidden;}
.p479CollapsibleHistory>summary {cursor:pointer; padding:15px 16px; color:#fff; font-weight:800; list-style-position:inside;}
.p479CollapsibleHistory>summary span {display:block; margin:5px 0 0 22px; color:#a7bdca; font-size:12px; font-weight:normal;}
.p479CollapsibleHistory[open]>summary {border-bottom:1px solid #315064;color:#ff8c38;}
.p479CollapsibleHistory>div, .p479CollapsibleHistory>button {margin:12px;}

/* FASE 4.7.9.3: historial de cuenta plegado hasta que el usuario lo solicite */
#p479MyOrdersCollapse { margin-top: 8px; }
#p479MyOrdersCollapse>div { margin: 0; padding: 12px; }
#p479MyOrdersCollapse:not([open]) { margin-bottom: 0; }

/* FASE 4.7.9.6 — Modo compacto de panel Admin */
.tcAdminHeadControls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#tcAdminSummary[hidden]{display:none!important}
#tcCompactToggle{cursor:pointer}
@media(max-width:700px){.tcAdminHeadControls{width:100%}.tcAdminHeadControls button{flex:1}}

/* FASE 4.7.9.7 — Navegación visual Admin. Sin alterar lógica ni datos. */
.phase2Admin .p448AdminStickyNavWrap{
  border:1px solid #294758;
  border-radius:14px;
  background:#081923;
  box-shadow:0 9px 24px rgba(0,0,0,.25);
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs{
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
  scrollbar-color:#537082 #081923;
  overscroll-behavior-x:contain;
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs .tab{
  scroll-snap-align:start;
  white-space:nowrap;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs .tab.active{
  box-shadow:0 0 0 1px rgba(255,161,84,.5),0 4px 12px rgba(255,95,0,.16);
}
.phase2Admin .p448AdminStickyNavWrap .adminTabs .tab:focus-visible,
.phase2Admin .p2AdminHead button:focus-visible,
.phase2Admin .p479CollapsibleHistory>summary:focus-visible{
  outline:3px solid #ffb36b;
  outline-offset:3px;
}
.phase2Admin .p2AdminHead{gap:12px}
@media(max-width:720px){
  .phase2Admin .p448AdminStickyNavWrap{border-radius:10px}
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab{min-height:40px}
  .phase2Admin .tcAdminHeadControls{gap:8px}
}
@media(prefers-reduced-motion:reduce){
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab{transition:none}
}

/* FASE 4.7.9.8 — volver al menú de administración */
#tcAdminReturnNav{position:fixed;right:18px;bottom:90px;z-index:18;background:#ff7410;color:#09131a;border:1px solid #ffb46f;border-radius:999px;padding:12px 17px;font-weight:900;box-shadow:0 6px 24px rgba(0,0,0,.36);cursor:pointer}
#tcAdminReturnNav[hidden]{display:none!important}
#tcAdminReturnNav:focus-visible{outline:3px solid #fff;outline-offset:3px}
.phase2Admin .p448AdminStickyNavWrap{scroll-margin-top:10px}
@media(max-width:600px){#tcAdminReturnNav{right:12px;bottom:86px;padding:11px 13px;font-size:12px}}

/* FASE 4.7.9.9 — pequeños ajustes de comodidad móvil (solo interfaz) */
@media (max-width: 720px) {
  /* Controles de navegación con área táctil accesible. */
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab { min-height: 44px; }
  #tcCompactToggle, #tcAdminReturnNav { min-height: 44px; }
  .phase2Admin .p2AdminHead button { min-height: 44px; }
  /* Evitar que los botones del encabezado se desborden en pantallas angostas. */
  .phase2Admin .tcAdminHeadControls { max-width: 100%; }
  .phase2Admin .tcAdminHeadControls > button { max-width: 100%; }
  /* El contenido del modal puede desplazarse sin afectar la página trasera. */
  #p479CreateClientModal .p479CreateClientCard { max-height: calc(100dvh - 24px); }
}
@media (prefers-reduced-motion: reduce) {
  #tcAdminReturnNav { scroll-behavior: auto; }
}

/* FASE 4.7.9.10 — Pestañas de Admin siempre arriba, sin desplazamiento previo.
   Cambio exclusivamente visual: se mantienen los eventos y módulos actuales. */
.phase2Admin:not(.hidden) .p448AdminStickyNavWrap{
  position:fixed;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:min(1280px, calc(100vw - 16px));
  max-width:100%;
  z-index:35;
  margin:0;
  padding:5px;
  box-sizing:border-box;
}
.phase2Admin:not(.hidden){
  padding-top:90px;
}
@media(max-width:720px){
  .phase2Admin:not(.hidden) .p448AdminStickyNavWrap{width:calc(100vw - 8px);padding:3px}
  .phase2Admin:not(.hidden){padding-top:86px}
}

/* TECNICELL 2026-10-20: modal de pedido por encima de la barra fija de admin.
   Solo estilos: sin cambios de navegación, importes o envío de pedidos. */
#orderModal.modal {
  z-index: 100100 !important;
  position: fixed !important;
  inset: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  overflow-y: auto !important;
}
#orderModal .modalCard.p474OrderCard {
  position: relative !important;
  max-height: calc(100dvh - 28px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  margin: auto !important;
  isolation: isolate;
}
#orderModal .modalCard.p474OrderCard > button.close {
  position: sticky !important;
  top: 0 !important;
  right: 0 !important;
  float: right;
  z-index: 5 !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: -9px -9px 0 6px !important;
  border-radius: 10px !important;
  background: #152d3b !important;
  border: 1px solid #547184 !important;
  color: #fff !important;
  font-size: 30px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
@media(max-width:700px) {
  #orderModal.modal { padding: 8px !important; }
  #orderModal .modalCard.p474OrderCard {
    max-height: calc(100dvh - 16px) !important;
    margin: auto !important;
  }
}

/* Campos iguales a los que ServerGatoCell exige: IMEI + personalizados de DHRU. */
.pExactProviderInfo{margin:12px 0;padding:13px;border:1px solid #33576a;border-radius:10px;background:#071923;color:#e5f5ff;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
.pExactProviderInfo.hidden{display:none!important}
.pExactProviderInfo strong{display:block;margin-bottom:7px;color:#fff}
.pExactInstructions{white-space:pre-wrap}

/* TECNICELL: finanzas compactas */
.tcFinanceTableWrap{overflow-x:auto;border:1px solid #294253;border-radius:12px;margin-top:10px}
.tcFinanceTable{width:100%;border-collapse:collapse;min-width:650px;font-size:13px;line-height:1.35}
.tcFinanceTable th,.tcFinanceTable td{padding:10px 12px;text-align:left;border-bottom:1px solid #243746;vertical-align:top}
.tcFinanceTable th{background:#102433;color:#a9dfff;font-weight:700;white-space:nowrap}
.tcFinanceTable tbody tr:nth-child(even){background:#0b1d28}
.tcFinanceTable tbody tr:hover{background:#173143}
.tcFinanceTable .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tcFinanceTable .tcServiceName{max-width:265px;min-width:155px;overflow-wrap:anywhere}

/* TECNICELL: reportes administrativos */
.tcReportsPanel{margin:24px 0 8px;padding:16px;border:1px solid rgba(125,180,220,.28);border-radius:14px;background:rgba(10,32,47,.5)}
.tcReportsToolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0}
.tcReportsToolbar label{display:flex;flex-direction:column;gap:6px}
.tcReportsToolbar select{min-width:180px}
.tcReportsPanel .tcFinanceTableWrap{margin-top:12px;overflow-x:auto}
.tcReportsPanel table{width:100%;min-width:730px}

/* Editor de campos para administración */
.tcFieldEditor{margin-top:14px;padding:14px;border:1px solid rgba(150,170,190,.35);border-radius:12px}.tcFieldEditor h4{margin:0 0 8px}.tcFieldRow{display:grid;grid-template-columns:minmax(140px,2fr) minmax(100px,1fr) auto auto;gap:8px;align-items:center;margin:8px 0}.tcFieldRow input:not([type=checkbox]),.tcFieldRow select{width:100%;min-width:0}.tcFieldRow label{white-space:nowrap}.tcFieldEditor #tcFieldMessage{min-height:20px}@media(max-width:620px){.tcFieldRow{grid-template-columns:1fr 1fr}.tcFieldRow label{white-space:normal}}


/* TECNICELL ONLINE | Móvil 4.8.0 | CSS exclusivamente visual */
@media (max-width: 720px) {
  /* La barra de navegación horizontal permanece accesible sin encoger enlaces. */
  .phase1Nav {
    display:flex!important;
    flex-wrap:nowrap!important;
    width:100%;
    max-width:100%;
    overflow-x:auto!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }
  .phase1Nav a {
    flex:0 0 auto;
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    scroll-snap-align:start;
  }
  .phase1Actions {gap:6px;min-width:0;max-width:100%;}
  .phase1Actions button {min-height:44px;}
  .phase1Header {min-width:0;}

  /* Navegación administrativa deslizable, sin ocultar pestañas. */
  .phase2Admin:not(.hidden) .p448AdminStickyNavWrap {max-width:calc(100vw - 8px);}
  .phase2Admin .p448AdminStickyNavWrap .adminTabs {
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
  }
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab {
    scroll-snap-align:start;
    min-height:44px!important;
    touch-action:manipulation;
  }

  /* Controles cómodos sin modificar eventos de compra. */
  .phase2Admin input:not([type=checkbox]):not([type=radio]),
  .phase2Admin select,
  .phase2Admin textarea,
  #orderModal input:not([type=checkbox]):not([type=radio]),
  #orderModal select,
  #orderModal textarea {font-size:16px;max-width:100%;}
  .phase2Admin button, #orderModal button {touch-action:manipulation;}
  #orderModal .modalCard.p474OrderCard {width:min(100%,560px);overscroll-behavior:contain;}
  .phase2Admin .tcFinanceTableWrap,
  .phase2Admin .tcReportsPanel,
  .phase2Admin .tcReportsPanel .tcFinanceTableWrap {
    max-width:100%;min-width:0;
  }
  .phase2Admin .tcFinanceTableWrap,
  .phase2Admin .tcReportsPanel .tcFinanceTableWrap {
    overflow-x:auto;-webkit-overflow-scrolling:touch;
  }
  .tcFieldRow {min-width:0;}
}
@media (max-width: 380px) {
  .phase2Admin:not(.hidden) {padding-top:94px;}
  .phase2Admin .p448AdminStickyNavWrap .adminTabs {gap:5px!important;padding:5px!important;}
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab {padding:9px 10px!important;}
  #orderModal.modal {padding:6px!important;}
}

/* TECNICELL ONLINE 4.8.1 — ajuste exclusivo de presentación en móvil.
   Evita superposiciones de la cabecera visual, buscador y beneficios. */
@media (max-width: 720px) {
  .phase1Hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 24px 16px 28px !important;
    overflow: hidden !important;
  }
  .phase1Hero .heroLeft {
    width: 100% !important;
    min-width: 0 !important;
    z-index: 4 !important;
  }
  .phase1Hero .heroMainLogo {font-size:clamp(31px, 9vw, 46px) !important;max-width:100%;overflow-wrap:anywhere;}
  .phase1Hero .heroMainSub {font-size:clamp(14px,4vw,18px)!important;letter-spacing:.09em!important;}
  .phase1Hero .heroPhrase {max-width:100%!important;}
  .phase1Hero .heroBenefits {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
  }
  .phase1Hero .heroBenefits > div {min-width:0!important;gap:5px!important;padding:4px 0!important;justify-content:center;}
  .phase1Hero .heroBenefits span {font-size:clamp(18px,5vw,23px)!important;flex:0 0 auto;}
  .phase1Hero .heroBenefits b {font-size:clamp(10px,3vw,13px)!important;white-space:normal!important;overflow-wrap:anywhere;}
  .phase1Hero .phase1Search {display:flex!important;align-items:stretch!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;gap:4px!important;overflow:hidden!important;}
  .phase1Hero .phase1Search input {flex:1 1 0!important;width:0!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;font-size:16px!important;padding:12px!important;}
  .phase1Hero .phase1Search button {flex:0 0 54px!important;width:54px!important;max-width:54px!important;min-width:54px!important;min-height:50px!important;margin:0!important;padding:4px!important;box-sizing:border-box!important;}
  .phase1Hero .heroCenter {
    position:relative!important;
    width:100%!important;
    max-width:360px!important;
    min-height:205px!important;
    height:205px!important;
    margin:2px auto 0!important;
    overflow:hidden!important;
    z-index:1!important;
  }
  .phase1Hero .heroRight {display:none!important;}
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab {padding:9px 12px!important;font-size:12px!important;white-space:nowrap!important;}
}
@media(max-width:380px){
  .phase1Hero .heroBenefits {grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .phase1Hero .heroBenefits > div {flex-direction:column!important;text-align:center!important;}
  .phase1Hero .heroCenter {height:180px!important;min-height:180px!important;}
}

/* TECNICELL ONLINE 4.8.2 — iPhone / mobile hero: prevent desktop phone art
   from overlaying or obscuring the brand and text. CSS only. */
@media (max-width: 720px) {
  .phase1Hero { min-height:0!important; height:auto!important; }
  .phase1Hero .heroCenter,
  .phase1Hero .heroRight { display:none!important; }
  .phase1Hero .heroLeft { position:relative!important; width:100%!important; max-width:100%!important; }
  .phase1Hero .phase1Search { isolation:isolate; }
}

/* TECNICELL ONLINE 4.8.3 — mobile-only floating WhatsApp and order cards */
@media (max-width: 720px) {
  a.floating {
    position:fixed!important;right:12px!important;bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;
    width:52px!important;height:52px!important;min-width:52px!important;max-width:52px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    padding:0!important;border-radius:50%!important;overflow:hidden!important;
    font-size:0!important;line-height:1!important;z-index:12!important;
    box-shadow:0 4px 16px rgba(0,0,0,.38)!important;
  }
  a.floating::before {content:"☎";font-size:25px!important;line-height:1!important;color:white!important;}
  .phase2Account #myOrders .p39OrderCard {padding:14px!important;min-width:0!important;overflow-wrap:anywhere;}
  .phase2Account #myOrders .p39OrderCard .orderHead {gap:8px!important;min-width:0!important;}
  .phase2Account #myOrders .p39OrderCard .orderHead>div {min-width:0!important;overflow-wrap:anywhere;}
  .phase2Account #myOrders .p39OrderCard .orderMeta {display:grid!important;grid-template-columns:1fr!important;gap:6px!important;}
  .phase2Account #myOrders .p39OrderCard .p39ClientResult {overflow-wrap:anywhere!important;word-break:break-word!important;}
}

/* TECNICELL ONLINE 4.8.4 — filtros y tarjetas administrativas en iPhone. */
@media (max-width: 720px) {
  #ordersTab .p22Filters {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;padding:12px!important;min-width:0!important;max-width:100%!important;}
  #ordersTab .p22Filters > * {grid-column:1 / -1!important;min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;}
  #ordersTab .p22Filters select {height:auto!important;min-height:52px!important;line-height:1.4!important;padding:12px 36px 12px 14px!important;font-size:16px!important;appearance:auto!important;-webkit-appearance:menulist!important;overflow:visible!important;color:#f3f7f9!important;background-color:#0a1d28!important;}
  #ordersTab .p22Filters .p22SearchBox {display:flex!important;align-items:center!important;min-height:52px!important;overflow:hidden!important;}
  #ordersTab .p22Filters .p22SearchBox input {min-width:0!important;width:100%!important;min-height:48px!important;height:auto!important;font-size:16px!important;}
  #ordersTab .p22Filters .p22ClearBtn {min-height:48px!important;}
  #ordersTab .p22InfoGrid {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  #ordersTab .p22InfoGrid:empty {display:none!important;}
  #ordersTab .p22InfoGrid > div {min-width:0!important;min-height:0!important;overflow-wrap:anywhere!important;}
  #ordersTab .p22OrderCard {min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
}
@media (max-width: 380px) {#ordersTab .p22InfoGrid {grid-template-columns:minmax(0,1fr)!important;}}

/* v4.9.0: imágenes individuales de servicios */
.tcCatalogPhoto{position:absolute;right:12px;top:10px;bottom:10px;left:92px;display:flex;justify-content:center;align-items:center;overflow:hidden;border-radius:12px}
.tcCatalogPhoto img{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:9px}
.tcCatalogPhoto img[hidden]{display:none}
.tcCatalogPhoto span{display:block;color:#b8c9d3;font-weight:600;font-size:13px}
.tcCatalogPhoto span[hidden]{display:none}
.tcPhotoEditor{border:1px solid #294456;padding:14px;border-radius:12px;margin:16px 0;display:flex;flex-direction:column;gap:10px}
.tcPhotoEditor h4{margin:0}
.tcPhotoEditor img{max-width:220px;max-height:150px;object-fit:contain;border-radius:9px;background:#081b26}
.tcPhotoEditor img[hidden]{display:none}
.tcPhotoEditor input{max-width:100%}
.tcPhotoEditor button{align-self:flex-start}
@media(max-width:600px){.tcCatalogPhoto{left:70px}.tcPhotoEditor button{width:100%}}

/* TECNICELL 4.9.1 — imágenes amplias en tarjetas, solo presentación. */
.p1ServiceVisual{height:190px;overflow:hidden}
.p1ServiceVisual .tcCatalogPhoto{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;padding:8px;border-radius:0;background:radial-gradient(circle at center,#173249 0%,#071722 80%)}
.p1ServiceVisual .tcCatalogPhoto img:not([hidden]){width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;border-radius:7px}
.p1ServiceVisual:has(.tcCatalogPhoto img:not([hidden])) .svcBrandLogoBox{display:none}
.p1ServiceVisual .tcCatalogPhoto:has(img[hidden]){left:80px;background:transparent}
@media(max-width:600px){.p1ServiceVisual{height:164px}.p1ServiceVisual .tcCatalogPhoto:has(img[hidden]){left:70px}}

/* 4.9.2: Licencias y Todos usan el mismo catálogo de servicios filtrado. */
body.route-licenses #servicios { display:block!important; margin-top:18px!important; }
body.route-licenses #licencias { display:none!important; }

/* TECNICELL 4.9.3 — licencias organizadas por herramienta */
#serviceGrid.grid:has(.tcLicenseGroup){display:block}
.tcLicenseGroup{margin:0 0 30px;width:100%;min-width:0}
.tcLicenseGroupHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:10px 4px 12px;border-bottom:1px solid rgba(138,179,207,.26)}
.tcLicenseGroupHeading h3{font-size:22px;color:#ff852d;margin:0;font-weight:800}
.tcLicenseGroupHeading span{font-size:13px;color:#bdd5e8;white-space:nowrap}
.tcLicenseGroupCards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
@media(max-width:1200px){.tcLicenseGroupCards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.tcLicenseGroupCards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.tcLicenseGroupCards{grid-template-columns:1fr}.tcLicenseGroupHeading h3{font-size:19px}}

/* Catálogo agrupado 4.9.4: mismas tarjetas para Todos y Licencias */
#serviceGrid.grid:has(.tcLicenseGroup){display:block}

/* TECNICELL 4.9.5: indicador discreto de tarifa. El admin también ve el nombre. */
.p460PublicTier{display:flex;align-items:center;gap:8px;min-height:14px;margin-top:-3px;margin-bottom:10px;}
.tcTierDot{display:inline-block;width:11px;height:11px;flex:0 0 11px;border-radius:50%;border:1px solid rgba(255,255,255,.5);box-shadow:0 0 0 2px rgba(255,255,255,.05);}
.tcTierReseller{background:#ef4444;}
.tcTierFrequent{background:#f59e0b;}
.tcTierNormal{background:#22c55e;}
.tcTierAdminLabel{color:#ffa44f;font-size:.78rem;font-weight:900;}

/* TECNICELL 4.9.6 — Agrupación visual de clientes; sin cambios de permisos ni saldos */
.tcTierFilterWrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}
.tcTierFilterWrap label{font-weight:800;color:#c3d8e5;font-size:13px}
.tcTierFilterWrap select{min-height:42px;padding:9px 15px;border:1px solid #31556b;border-radius:10px;background:#0b202d;color:#fff;flex:1;min-width:180px}
.tcTierGroup{margin:16px 0 24px}
.tcTierGroupTitle{display:flex;align-items:center;gap:9px;padding:12px;background:#0b2230;border:1px solid #29475d;border-radius:10px;margin-bottom:8px}
.tcTierGroupTitle b{font-size:15px;color:#fff}
.tcTierGroupTitle>span:last-child{margin-left:auto;color:#b0c4cf;font-size:12px}
.tcTierDot{display:inline-block;flex:0 0 auto;height:11px;width:11px;border-radius:100%;background:#22c55e;box-shadow:0 0 0 2px #ffffff1a}
.tcTier-reseller .tcTierDot{background:#ef4444}.tcTier-frequent .tcTierDot{background:#f59e0b}.tcTier-normal .tcTierDot{background:#22c55e}
.tcTierBadge{display:inline-flex!important;align-items:center;gap:6px}
.tcTierBadge .tcTierDot{height:9px;width:9px}
.tcTierGroupRows{display:grid;gap:7px}
@media(max-width:600px){.tcTierGroupTitle{flex-wrap:wrap}.tcTierFilterWrap select{width:100%}}


/* TECNICELL ONLINE 4.9.7 — Catálogo compacto inspirado en la distribución de servicios del proveedor.
   Solo afecta las tarjetas del catálogo, nunca los formularios de pedido o el panel de clientes. */
#serviceGrid .tcLicenseGroupCards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}
#serviceGrid .p1ServiceCard{display:grid;grid-template-columns:64px minmax(0,1fr);min-height:158px!important;height:auto;border-radius:10px;box-shadow:none;transition:border-color .15s,background .15s;overflow:hidden}
#serviceGrid .p1ServiceCard:hover{transform:none;box-shadow:0 0 0 1px rgba(255,106,0,.18)}
#serviceGrid .p1ServiceVisual{height:auto!important;min-height:100%;background:transparent;overflow:hidden;position:relative}
#serviceGrid .svcBrandLogoBox{position:absolute;top:14px;left:9px;width:47px;height:56px;padding:4px;border-radius:6px;box-sizing:border-box;background:#f5f7f9}
#serviceGrid .svcBrandLogoImg{max-width:100%;max-height:100%;object-fit:contain}
#serviceGrid .p1ServiceVisual .tcCatalogPhoto{position:absolute;inset:14px 8px auto 8px!important;width:auto!important;height:56px!important;padding:0!important;border-radius:6px!important;background:transparent!important}
#serviceGrid .p1ServiceVisual .tcCatalogPhoto img:not([hidden]){height:100%;width:100%;object-fit:contain}
#serviceGrid .p1ServiceVisual .tcCatalogPhoto:has(img[hidden]){display:none!important}
#serviceGrid .p1ServiceBody{min-height:0!important;padding:12px 12px 10px 6px;display:flex;flex-direction:column;gap:5px}
#serviceGrid .p1ServiceBody h3{font-size:13px!important;line-height:1.28;margin:0;font-weight:850;overflow-wrap:anywhere}
#serviceGrid .p1ServiceBody p{font-size:11px;line-height:1.3;min-height:0;max-height:29px;flex:none;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#9fb5c4}
#serviceGrid .p1ServiceBadges{margin:2px 0;gap:5px}
#serviceGrid .onlineBadge,#serviceGrid .timeBadge{padding:3px 6px;font-size:9px}
#serviceGrid .tc497Footer{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:auto;flex-wrap:wrap}
#serviceGrid .tc497PriceArea{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0}
#serviceGrid .p1Price{font-size:18px!important;line-height:1.2;margin:0!important;color:#fff}
#serviceGrid .p460PublicTier{margin:0;min-height:0;gap:4px}
#serviceGrid .tcTierDot{width:9px;height:9px;flex-basis:9px}
#serviceGrid .tcTierAdminLabel{font-size:10px}
#serviceGrid .p1ServiceBtn{width:auto;min-width:92px;min-height:30px;padding:6px 10px;border-radius:6px;font-size:11px;line-height:1.15;margin:0;box-shadow:none;white-space:nowrap}
#serviceGrid .tcLicenseGroup{margin-bottom:20px}
#serviceGrid .tcLicenseGroupHeading{margin-bottom:10px;padding:7px 4px 9px}
#serviceGrid .tcLicenseGroupHeading h3{font-size:20px}
@media(max-width:1020px){#serviceGrid .tcLicenseGroupCards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
 #serviceGrid .tcLicenseGroupCards{grid-template-columns:minmax(0,1fr);gap:9px}
 #serviceGrid .p1ServiceCard{grid-template-columns:62px minmax(0,1fr);min-height:140px!important}
 #serviceGrid .p1ServiceBody{padding:10px 10px 10px 4px}
 #serviceGrid .tcLicenseGroupHeading h3{font-size:17px}
}

/* TECNICELL ONLINE 4.9.8 — miniaturas más legibles sin regresar a las tarjetas altas. */
#serviceGrid .p1ServiceCard{grid-template-columns:124px minmax(0,1fr);min-height:164px!important}
#serviceGrid .p1ServiceVisual{min-height:155px!important;display:flex;align-items:center;justify-content:center}
#serviceGrid .svcBrandLogoBox{top:14px;left:12px;width:100px;height:112px;padding:6px;border-radius:9px}
#serviceGrid .p1ServiceVisual .tcCatalogPhoto{inset:14px 9px auto 9px!important;width:106px!important;height:114px!important;padding:3px!important;box-sizing:border-box;background:rgba(255,255,255,.05)!important;border-radius:9px!important}
#serviceGrid .p1ServiceVisual .tcCatalogPhoto img:not([hidden]){width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
#serviceGrid .p1ServiceBody{padding:11px 12px 11px 2px}
@media(max-width:650px){
 #serviceGrid .p1ServiceCard{grid-template-columns:108px minmax(0,1fr);min-height:152px!important}
 #serviceGrid .p1ServiceVisual{min-height:146px!important}
 #serviceGrid .svcBrandLogoBox{left:9px;top:12px;width:88px;height:105px}
 #serviceGrid .p1ServiceVisual .tcCatalogPhoto{inset:12px 7px auto 7px!important;width:94px!important;height:108px!important}
 #serviceGrid .p1ServiceBody{padding:10px 9px 10px 2px}
}

/* 4.9.9: precios solo para usuarios registrados y aprobados */
#serviceGrid .tc499PriceLocked{font-size:11px;line-height:1.3;font-weight:750;color:#8ea9bb;max-width:205px;}

/* TECNICELL 4.9.10: fotografía en el detalle de pedido */
#orderModal .tc4910OrderPhoto{width:100%;height:188px;max-height:28vh;margin:12px 0 14px;background:linear-gradient(135deg,#0a2535,#07131d);border:1px solid #28495b;border-radius:12px;overflow:hidden;align-items:center;justify-content:center;padding:10px;box-sizing:border-box}
#orderModal .tc4910OrderPhoto:not([hidden]){display:flex}
#orderModal .tc4910OrderPhoto[hidden]{display:none!important}
#orderModal .tc4910OrderPhoto img{height:100%;width:100%;object-fit:contain;display:block}
@media(max-width:600px){#orderModal .tc4910OrderPhoto{height:155px;max-height:24vh}}

/* TECNICELL 4.9.11 — pedido de dos columnas y condiciones editables */
#orderModal .modalCard.p474OrderCard{width:min(940px,calc(100vw - 30px))!important;max-width:940px!important;padding:22px!important;}
#orderModal #orderTitle{font-size:21px;line-height:1.25;margin:6px 52px 18px 0;overflow-wrap:anywhere;}
.tc4911OrderColumns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start;}
.tc4911OrderFields,.tc4911OrderDetail{min-width:0;}
.tc4911OrderFields{border-right:1px solid #294758;padding-right:20px;}
.tc4911OrderDetail{display:flex;flex-direction:column;gap:10px;}
.tc4911ColumnHeading{font-size:15px;color:#f1f7ff;margin:0 0 10px;}
#orderModal .tc4911OrderDetail .tc4910OrderPhoto{margin:0!important;min-height:0!important;max-height:210px!important;padding:8px!important;}
#orderModal .tc4911OrderDetail .tc4910OrderPhoto img{max-height:190px!important;max-width:100%!important;object-fit:contain!important;}
.tc4911Time{background:#143027;border:1px solid #296a4d;color:#a2f2c8;border-radius:8px;padding:9px 11px;font-size:13px;font-weight:700;}
.tc4911OrderDescription[hidden]{display:none!important;}
#orderModal .tc4911OrderDetail .pExactProviderInfo{margin:0!important;max-height:340px;overflow-y:auto;}
.tc4911InfoSeparator{border:0;border-top:1px solid #365467;margin:13px 0;}
.tc4911PriceLabel{font-size:12px;color:#a9c7d8;font-weight:700;}
#orderModal .tc4911OrderDetail .bigMoney{margin:0 0 8px;font-size:29px;}
.tc4911ManualLabel{display:block;font-weight:800;margin:12px 0 5px;color:#ffab73;}
@media(max-width:720px){
 #orderModal .modalCard.p474OrderCard{width:calc(100vw - 12px)!important;padding:15px!important;}
 .tc4911OrderColumns{grid-template-columns:minmax(0,1fr);gap:12px;}
 .tc4911OrderFields{border-right:0;padding-right:0;border-bottom:1px solid #294758;padding-bottom:12px;}
 .tc4911OrderDetail{gap:8px;}
 #orderModal #orderTitle{font-size:18px;}
 #orderModal .tc4911OrderDetail .tc4910OrderPhoto{max-height:160px!important;}
 #orderModal .tc4911OrderDetail .tc4910OrderPhoto img{max-height:142px!important;}
}

/* TECNICELL 4.9.12: catálogo admin por tipo y editor enfocado */
.tc4912AdminColumns{display:block!important}
.tc4912AdminColumns>.panel:not(#tc4912EditorPanel){width:100%!important;max-width:none!important}
.tc4912CatalogHead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tc4912CatalogHead button{background:#ff7200;color:white;border:0;border-radius:11px;padding:11px 17px;font-weight:800;cursor:pointer}
.tc4912CatalogFilters{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.tc4912CatalogFilters button{background:#14283a;border:1px solid #335169;border-radius:10px;color:#e8f3ff;padding:10px 15px;cursor:pointer;font-weight:800}
.tc4912CatalogFilters button.active{background:#ff7200;border-color:#ff7200;color:#fff}
.tc4912CatalogFilters span{font-size:11px;opacity:.85;margin-left:4px}
.tc4912EditorModal[hidden]{display:none!important}
.tc4912EditorModal{position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.tc4912EditorDialog{background:#061724;border:1px solid #3c6679;border-radius:17px;width:min(780px,100%);max-height:92vh;overflow:auto;padding:14px 18px}
.tc4912ModalBar{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-14px;background:#061724;padding:10px 0;z-index:2;border-bottom:1px solid #244455;margin-bottom:12px}
.tc4912ModalBar button{background:#20384a;color:#fff;border:1px solid #497083;border-radius:9px;padding:10px 14px;cursor:pointer}
.tc4912EditorDialog #tc4912EditorPanel{width:100%;max-width:none;box-sizing:border-box}
.tc4912NoScroll{overflow:hidden!important}
@media(max-width:600px){.tc4912EditorModal{padding:5px}.tc4912EditorDialog{max-height:98dvh;padding:10px}.tc4912CatalogFilters button{flex:1 1 40%}}

/* 4.9.13: categorías administrables */
.tc4913Box{border:1px solid #285066;background:#081d2b;border-radius:15px;padding:17px;margin-bottom:18px}.tc4913Title{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:10px}.tc4913Title h3{margin:0}.tc4913Rows{display:grid;gap:8px;margin:12px 0}.tc4913Row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:9px 10px;border:1px solid #234356;border-radius:9px}.tc4913Row strong{min-width:135px}.tc4913Row small{flex:1;min-width:120px;color:#a1b8c8}.tc4913Row button{padding:6px 9px!important;font-size:12px!important}.tc4913Form{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:9px;border-top:1px solid #29485a;padding-top:13px}.tc4913Form label{display:grid;gap:4px;font-size:12px}.tc4913Form input,.tc4913Form select{width:100%;min-width:0;padding:10px;color:#e8f4fb;background:#051622;border:1px solid #355269;border-radius:9px}.tc4913Form .tc4913Check{display:flex;align-items:center;gap:7px}.tc4913Check input{width:auto}.tc4913Actions{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.tc4913Actions button{padding:11px!important}.tc4913Row .tc4913Off{opacity:.65}.tc4913CatFallback{opacity:.8}

/* 4.9.14: logos originales y etiquetas sin desbordamiento */
#tcCategoryStrip.phase1BrandStrip{
 display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px;
 align-items:stretch;max-width:1280px;margin-inline:auto;
}
#tcCategoryStrip .brandChip{
 box-sizing:border-box;min-width:0;width:100%;min-height:112px;max-width:100%;
 padding:10px 7px;white-space:normal;gap:7px;overflow:hidden;
}
#tcCategoryStrip .brandChip b{
 width:100%;max-width:100%;min-width:0;display:block;text-align:center;
 overflow-wrap:anywhere;word-break:normal;white-space:normal;hyphens:auto;
 font-size:10px;line-height:1.3;letter-spacing:.01em;
}
#tcCategoryStrip .p1BrandIcon{flex:0 0 auto;max-width:100%}
#tcCategoryStrip .p1BrandIcon.officialLogo{width:62px;height:58px;background:#f5f7f9}
#tcCategoryStrip .brandChip[data-tc4913]:has(img[src*="Xiaomi_logo"]) .officialLogo{background:#ff6900}
@media(max-width:600px){
 #tcCategoryStrip.phase1BrandStrip{grid-template-columns:repeat(auto-fill,minmax(103px,1fr));gap:9px;padding-inline:12px}
 #tcCategoryStrip .brandChip{min-height:105px;padding:8px 5px}
}

/* TECNICELL 4.9.15: portada rotativa */
.tc415HeroCenter{display:flex;align-items:center;justify-content:center;min-width:0;padding:12px 0}
.tc415HeroWindow{width:100%;max-width:475px;min-height:345px;overflow:hidden;border-radius:20px;background:linear-gradient(150deg,#101d2b,#06131c);border:1px solid rgba(255,117,18,.63);box-shadow:0 18px 58px #0008,0 0 36px #ff6b151b;display:flex;flex-direction:column}
.tc415WindowBar{padding:12px 14px;display:flex;gap:12px;align-items:center;font-size:10px;letter-spacing:.08em;color:#aebdcd;border-bottom:1px solid #314453;background:#0c1d2c}.tc415WindowLights{color:#ff771c;white-space:nowrap}
.tc415Slides{flex:1;position:relative;min-height:256px}.tc415Slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:16px 22px;opacity:0;visibility:hidden;transform:translateX(14px);transition:opacity .55s ease,transform .55s ease,visibility .55s;box-sizing:border-box;text-align:center}
.tc415Slide.is-active{opacity:1;visibility:visible;transform:none}.tc415SlideArt{width:100%;height:145px;display:flex;align-items:center;justify-content:center;font-size:80px;overflow:hidden}.tc415SlideArt img{width:100%;height:100%;object-fit:contain;max-width:320px;border-radius:10px}.tc415Slide h3{font-size:23px;line-height:1.2;color:#fff;margin:4px 0 0}.tc415Slide p{font-size:13px;color:#becddd;margin:0;max-width:315px;line-height:1.35}.tc415SlideLink{margin-top:4px;background:#ff7212;border-radius:9px;padding:7px 16px;color:#fff;font-size:12px;text-decoration:none;font-weight:800}
.tc415SliderFooter{display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 12px 12px}.tc415SliderFooter>button{width:32px;height:29px;border-radius:8px;border:1px solid #345066;background:#102c3a;color:white;font-size:23px;cursor:pointer}.tc415Dots{display:flex;gap:7px}.tc415Dots button{border:0;width:8px;height:8px;border-radius:50%;background:#668091;padding:0;cursor:pointer}.tc415Dots button.is-active{background:#ff730d;width:23px;border-radius:8px}
.tc415AdminPanel{max-width:1050px}.tc415SlideList{display:grid;gap:9px;margin:15px 0}.tc415AdminRow{display:flex;align-items:center;gap:12px;border:1px solid #30465b;border-radius:12px;padding:9px;flex-wrap:wrap}.tc415AdminThumb{width:60px;height:48px;display:flex;align-items:center;justify-content:center;background:#122838;border-radius:8px;font-size:24px;overflow:hidden}.tc415AdminThumb img{width:100%;height:100%;object-fit:contain}.tc415AdminRowText{flex:1;min-width:150px}.tc415AdminRowText strong,.tc415AdminRowText small{display:block}.tc415AdminRowText small{color:#b5c7d8}.tc415AdminRow button{padding:8px;border-radius:7px}.tc415Form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.tc415Form label{display:flex;flex-direction:column;gap:5px;font-weight:700}.tc415Form input,.tc415Form textarea{width:100%;box-sizing:border-box}.tc415InlineCheck{flex-direction:row!important;align-items:center}.tc415InlineCheck input{width:auto!important}.tc415FormButtons{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.tc415FormButtons button{padding:12px;border-radius:9px}
@media(max-width:720px){.tc415HeroWindow{min-height:300px}.tc415Slides{min-height:236px}.tc415SlideArt{height:123px}.tc415Form{grid-template-columns:1fr}.tc415Slide h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.tc415Slide{transition:none}}

/* TECNICELL 4.9.16 — floating orbit hero */
.tc415HeroCenter{overflow:visible;padding:0;position:relative}
.tc415HeroWindow{max-width:none;width:100%;min-height:470px;background:transparent;border:0;box-shadow:none;overflow:visible}
.tc415WindowBar{background:transparent;border:0;font-weight:800;justify-content:center;color:#fb9f4c;font-size:10px}
.tc415WindowLights{display:none}
.tc415Slides{flex:1;min-height:408px;overflow:visible}
.tc416OrbitStage{height:405px;width:100%;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center}
.tc416OrbitRing{position:absolute;left:50%;top:43%;border:2px solid rgba(255,113,18,.5);border-radius:50%;transform:translate(-50%,-50%) rotate(-21deg);box-shadow:0 0 20px #ff6f234d, inset 0 0 18px #157de829;pointer-events:none}
.tc416RingOne{width:83%;height:55%}.tc416RingTwo{width:94%;height:72%;border-color:rgba(42,153,247,.3);transform:translate(-50%,-50%) rotate(27deg)}
.tc416CenterGlow{position:absolute;top:12%;left:21%;width:58%;height:65%;border-radius:50%;background:radial-gradient(circle,#ff6e2170,transparent 68%);filter:blur(22px);pointer-events:none}
.tc416CenterDevice{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%) rotate(-5deg);width:36%;height:46%;min-width:136px;border-radius:25px;border:2px solid #2a8bdb;background:linear-gradient(135deg,#102f4c,#05101e 70%);box-shadow:0 22px 35px #0009,0 0 30px #ed6b3366,inset 0 0 0 8px #071421;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:white;z-index:2}
.tc416CenterDevice .tc416Flame{font-size:56px;filter:drop-shadow(0 0 14px #ff891c)}.tc416CenterDevice strong{font-size:clamp(15px,1.6vw,24px);font-weight:950;letter-spacing:.03em}.tc416CenterDevice small{font-size:12px;color:#ff8517;letter-spacing:.25em;font-weight:900}
.tc416OrbitCard{position:absolute;z-index:3;width:39%;min-height:68px;box-sizing:border-box;border:1px solid #3581bc;border-radius:15px;background:linear-gradient(135deg,#152b40f2,#091827f5);box-shadow:0 13px 22px #000a,0 0 15px #ff741b3b;display:flex;gap:8px;align-items:center;padding:8px 10px;color:white;cursor:pointer;transition:transform .25s ease,border-color .25s ease}
.tc416OrbitCard:hover,.tc416OrbitCard:focus-visible{transform:scale(1.06);border-color:#ff8c30;outline:none;z-index:5}
.tc416OrbArt{flex:0 0 43px;height:43px;display:flex;align-items:center;justify-content:center;font-size:29px;background:#092034;border-radius:12px;overflow:hidden}.tc416OrbArt img{width:100%;height:100%;object-fit:contain}
.tc416OrbText{display:flex;flex-direction:column;min-width:0;gap:4px}.tc416OrbText strong{font-size:clamp(11px,1.05vw,15px);white-space:normal;overflow-wrap:anywhere;line-height:1.08}.tc416OrbText small{font-size:10px;line-height:1.2;color:#b4cadd;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tc416OrbLink{color:#ff8c23;text-decoration:none;font-size:19px;margin-left:auto}
.tc416Pos0{left:-2%;top:0;rotate:-5deg}.tc416Pos1{right:-1%;top:0;rotate:5deg}.tc416Pos2{right:-5%;top:29%;rotate:-3deg}.tc416Pos3{left:-4%;top:30%;rotate:3deg}.tc416Pos4{left:0;top:62%;rotate:-3deg}.tc416Pos5{right:-2%;top:62%;rotate:3deg}
.tc416Spotlight{position:absolute;z-index:4;bottom:0;left:19%;width:62%;padding:9px 14px;box-sizing:border-box;border-radius:13px;border:1px solid #ff7a23aa;background:#091b2bf2;display:flex;align-items:center;gap:11px;box-shadow:0 0 18px #f76c2050;color:white}
.tc416SpotArt{height:38px;width:38px;font-size:26px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.tc416SpotArt img{width:100%;height:100%;object-fit:contain}.tc416Spotlight div{min-width:0;display:flex;flex-direction:column;gap:2px}.tc416Spotlight small{font-size:9px;color:#ff9b52;letter-spacing:.08em}.tc416Spotlight strong{font-size:15px}.tc416Spotlight div>span{font-size:10px;color:#bfcede;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.tc415SliderFooter{z-index:2}
@media(max-width:1100px){.tc416OrbitCard{width:43%;padding:6px}.tc416OrbArt{flex-basis:34px;height:34px}.tc416OrbText small{font-size:9px}}
@media(max-width:820px){.tc415HeroWindow{min-height:420px}.tc415Slides{min-height:365px}.tc416OrbitStage{height:365px}.tc416CenterDevice{min-width:135px}.tc416OrbitCard{width:40%;min-height:60px}.tc416Spotlight{left:13%;width:74%}}
@media(max-width:480px){.tc415HeroWindow{min-height:400px}.tc416OrbitStage{height:340px}.tc415Slides{min-height:340px}.tc416CenterDevice{height:37%;top:39%;min-width:120px}.tc416CenterDevice .tc416Flame{font-size:38px}.tc416OrbitCard{width:43%;min-height:54px;gap:4px;padding:5px;border-radius:10px}.tc416OrbArt{flex:0 0 26px;height:26px;font-size:18px}.tc416OrbText strong{font-size:10px}.tc416OrbText small{display:none}.tc416Pos0{left:0}.tc416Pos1{right:0}.tc416Pos2{right:0}.tc416Pos3{left:0}.tc416Pos4{left:0}.tc416Pos5{right:0}.tc416Spotlight{left:5%;width:90%;bottom:0}}
@media(prefers-reduced-motion:no-preference){.tc416OrbitRing{animation:tc416Glow 6s ease-in-out infinite alternate}.tc416CenterDevice{animation:tc416Levitate 5s ease-in-out infinite}.tc416OrbitCard{animation:tc416Bob 4s ease-in-out infinite alternate}.tc416Pos1,.tc416Pos3,.tc416Pos5{animation-delay:-2s}}
@keyframes tc416Glow{from{opacity:.45}to{opacity:.95}}@keyframes tc416Levitate{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes tc416Bob{0%{translate:0 0}100%{translate:0 -8px}}


/* TECNICELL 4.9.18 — Portada única y catálogo inmediato */
.phase1Hero{margin-top:0!important;min-height:0!important;padding-top:25px!important;padding-bottom:22px!important}
.tc415HeroCenter{align-self:center!important}
.tc415HeroWindow{min-height:405px!important}
.phase1BrandStrip{margin-top:0!important}
@media(max-width:820px){.phase1Hero{padding:22px 14px!important}.tc415HeroWindow{min-height:355px!important}.tc416OrbitStage{height:340px!important}}
@media(max-width:480px){.tc415HeroWindow{min-height:305px!important}.tc416OrbitStage{height:315px!important}}

/* v4.9.19 — portada fiel al arte aprobado, conservando los componentes interactivos */
.phase1Hero{display:grid!important;grid-template-columns:minmax(0,43%) minmax(0,57%)!important;gap:0!important;align-items:center!important;min-height:555px!important;padding:34px 3.7vw 22px!important;background:radial-gradient(ellipse at 79% 49%,#e76a1730 0%,transparent 37%),radial-gradient(ellipse at 64% 80%,#156bc02c 0%,transparent 35%),linear-gradient(110deg,#03101a 0%,#071827 58%,#08111c 100%)!important;overflow:hidden}
.phase1Hero .heroRight{display:none!important}
.tc419Left{width:100%!important;max-width:100%!important;min-width:0;padding:0 15px 0 0;z-index:2}
.tc419Kicker{display:inline-block;border:1px solid #df741f72;border-radius:40px;background:#1c1816ba;padding:10px 20px;font-size:12px;color:#ff8a27;font-weight:900;letter-spacing:.06em}
.tc419Headline{font-family:Arial,sans-serif;color:#fff;font-size:clamp(31px,3.45vw,57px);line-height:1.02;font-weight:1000;letter-spacing:-.038em;margin:18px 0 17px;text-shadow:0 4px 12px #0008}
.tc419Headline em{font-style:normal;color:#ff7c1e}
.tc419Description{font-size:clamp(14px,1.15vw,18px);line-height:1.6;color:#c9d4df;max-width:575px;margin:0 0 21px}
.phase1Hero .tc419Search{display:flex;gap:0;max-width:630px;width:100%;height:68px;padding:5px 5px 5px 16px;align-items:center;background:#fff;border-radius:15px;box-shadow:0 0 28px #fa781933;overflow:hidden}
.phase1Hero .tc419Search span{font-size:27px;color:#12222d;margin-right:8px}
.phase1Hero .tc419Search input{min-width:0;flex:1;background:#fff;color:#1a2d39;border:none!important;outline:none!important;padding:12px 3px!important;font-size:15px;height:100%}
.phase1Hero .tc419Search button{background:#ff750c;color:white;font-size:30px;height:57px;width:67px;min-width:67px;border-radius:12px;padding:0}
.phase1Hero .tc419Benefits{display:flex!important;flex-direction:row!important;justify-content:space-between;gap:10px;margin-top:22px!important;max-width:620px;flex-wrap:wrap}
.phase1Hero .tc419Benefits>div{display:flex!important;flex-direction:row!important;align-items:center!important;text-align:left!important;gap:7px;padding:0!important;white-space:normal!important;background:transparent!important;border:0!important}
.phase1Hero .tc419Benefits>div span{font-size:25px;flex-shrink:0}.phase1Hero .tc419Benefits b{font-size:12px;line-height:1.3}.phase1Hero .tc419Benefits small{display:block;font-size:9px;color:#9aafbd;font-weight:500;margin-top:3px}
.phase1Hero .tc415HeroCenter{width:100%;max-width:none;min-width:0;align-self:stretch;display:flex!important;padding:0!important;align-items:center}
.phase1Hero .tc415HeroWindow{height:100%!important;min-height:510px!important;width:100%;max-width:none!important}
.phase1Hero .tc415Slides{width:100%;min-height:475px!important}
.phase1Hero .tc416OrbitStage{height:480px!important;width:100%;overflow:visible}
.tc416CenterDevice.tc419CenterArtwork{width:43%!important;height:67%!important;min-width:0!important;top:51%!important;left:50%!important;border:0!important;border-radius:0!important;transform:translate(-50%,-50%)!important;rotate:0!important;animation:tc416Levitate 5s ease-in-out infinite!important;background: url("data:image/webp;base64,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") center / contain no-repeat!important;box-shadow:none!important;z-index:2!important;pointer-events:none}
.phase1Hero .tc416OrbitRing{top:48%!important}.phase1Hero .tc416CenterGlow{top:15%;left:22%;width:56%;height:73%;background:radial-gradient(circle,#ff751677,transparent 70%)}
.phase1Hero .tc416OrbitCard{width:39%!important;min-height:77px!important;border-radius:15px!important;padding:8px 10px!important;gap:10px!important;box-shadow:0 0 0 1px #2e9eff33,0 0 20px #ff741a58,0 16px 22px #0009!important}
.phase1Hero .tc416OrbArt{width:51px;height:51px;flex:0 0 51px;font-size:34px}.phase1Hero .tc416OrbText strong{font-size:clamp(11px,1.17vw,18px)}.phase1Hero .tc416OrbText small{font-size:10px}
.phase1Hero .tc416Pos0{left:5%;top:2%}.phase1Hero .tc416Pos1{right:0;top:3%}.phase1Hero .tc416Pos2{right:-1%;top:36%}.phase1Hero .tc416Pos3{left:0;top:36%}.phase1Hero .tc416Pos4{left:2%;top:72%}.phase1Hero .tc416Pos5{right:0;top:72%}
.phase1Hero .tc416Spotlight{display:none!important}
.phase1Hero .tc415SliderFooter{z-index:5;position:relative;margin-top:-10px}
@media(max-width:980px){.phase1Hero{grid-template-columns:minmax(0,46%) minmax(0,54%)!important;padding:23px 2vw!important;min-height:470px!important}.tc419Headline{font-size:clamp(29px,3.6vw,45px)}.phase1Hero .tc416OrbitStage{height:410px!important}.phase1Hero .tc415Slides{min-height:410px!important}.phase1Hero .tc415HeroWindow{min-height:450px!important}.phase1Hero .tc416OrbitCard{width:43%!important;min-height:64px!important;padding:5px!important}.phase1Hero .tc416OrbArt{width:35px;height:35px;flex-basis:35px}.phase1Hero .tc416OrbText small{display:none}}
@media(max-width:720px){.phase1Hero{display:flex!important;flex-direction:column!important;gap:0!important;padding:24px 16px 16px!important;min-height:0!important}.tc419Left{width:100%!important;padding:0}.tc419Headline{font-size:clamp(32px,9vw,48px)}.phase1Hero .tc419Benefits{gap:12px}.phase1Hero .tc415HeroCenter{display:flex!important;width:100%;min-height:350px}.phase1Hero .tc415HeroWindow{min-height:360px!important}.phase1Hero .tc415Slides{min-height:350px!important}.phase1Hero .tc416OrbitStage{height:350px!important}.phase1Hero .tc416OrbitCard{width:42%!important;min-height:56px!important;gap:5px!important}.phase1Hero .tc416OrbArt{flex:0 0 26px;width:26px;height:26px;font-size:17px}.phase1Hero .tc416OrbText strong{font-size:10px}.phase1Hero .tc416Pos0{left:0}.phase1Hero .tc416Pos1{right:0}.phase1Hero .tc416Pos2{right:0}.phase1Hero .tc416Pos3{left:0}.phase1Hero .tc416Pos4{left:0}.phase1Hero .tc416Pos5{right:0}.phase1Hero .tc419Search{height:60px}.phase1Hero .tc419Search button{height:49px}}
@media(prefers-reduced-motion:reduce){.tc416CenterDevice.tc419CenterArtwork{animation:none!important}}

/* TECNICELL 4.9.20 — refinamiento visual sin cambios de lógica */
@media(min-width:981px){
.phase1Header{grid-template-columns:auto minmax(0,1fr) auto!important;gap:10px!important;padding:7px 1.5vw!important;min-height:68px!important}
.phase1BrandText b{font-size:clamp(19px,1.8vw,25px)!important}
.phase1BrandMark{font-size:25px!important}
.phase1Nav{flex-wrap:nowrap!important;justify-content:center!important;min-width:0;gap:1px!important}
.phase1Nav a{white-space:nowrap!important;padding:9px clamp(4px,.62vw,10px)!important;font-size:clamp(10px,.95vw,13px)!important}
.phase1Actions{flex-wrap:nowrap!important;align-items:center!important;white-space:nowrap!important;gap:5px!important}
.phase1Actions button{padding:8px 10px!important}
.phase1Hero{min-height:465px!important;padding:18px 2.5vw 12px!important;grid-template-columns:minmax(0,43%) minmax(0,57%)!important}
.tc419Headline{font-size:clamp(28px,3.05vw,47px)!important;margin:10px 0 10px!important;line-height:1.01!important}
.tc419Kicker{padding:7px 14px!important}
.tc419Description{font-size:clamp(13px,1vw,16px)!important;line-height:1.42!important;margin-bottom:12px!important}
.phase1Hero .tc419Search{height:58px!important}.phase1Hero .tc419Search button{height:48px!important;width:58px!important;min-width:58px!important}
.phase1Hero .tc419Benefits{margin-top:13px!important}
.phase1Hero .tc415HeroWindow{min-height:435px!important}
.phase1Hero .tc415Slides{min-height:410px!important}
.phase1Hero .tc416OrbitStage{height:412px!important;overflow:hidden!important}
.phase1Hero .tc416CenterDevice.tc419CenterArtwork{width:45%!important;height:78%!important;top:51%!important;z-index:3!important}
.phase1Hero .tc416OrbitCard{width:30%!important;min-height:63px!important;padding:6px!important;gap:6px!important;z-index:5!important}
.phase1Hero .tc416OrbArt{width:37px!important;height:37px!important;flex:0 0 37px!important;font-size:24px!important}
.phase1Hero .tc416OrbText strong{font-size:clamp(11px,1.08vw,15px)!important}
.phase1Hero .tc416OrbText small{font-size:9px!important}
.phase1Hero .tc416Pos0{left:0!important;top:3%!important}
.phase1Hero .tc416Pos1{right:0!important;top:3%!important}
.phase1Hero .tc416Pos2{right:0!important;top:40%!important}
.phase1Hero .tc416Pos3{left:0!important;top:40%!important}
.phase1Hero .tc416Pos4{left:0!important;top:78%!important}
.phase1Hero .tc416Pos5{right:0!important;top:78%!important}
.phase1Hero .tc415SliderFooter{margin-top:-5px!important}
}
@media(min-width:981px) and (max-width:1200px){
.phase1Nav a{font-size:10px!important;padding:8px 4px!important}
.phase1BrandText b{font-size:19px!important}
.phase1Hero .tc416OrbitCard{width:33%!important}
.phase1Hero .tc416CenterDevice.tc419CenterArtwork{width:40%!important}
}
@media(min-width:721px) and (max-width:980px){
.phase1Header{grid-template-columns:auto minmax(0,1fr) auto!important;gap:5px!important;padding:8px 12px!important}
.phase1Nav{flex-wrap:nowrap!important;overflow-x:auto!important;justify-content:flex-start!important;scrollbar-width:thin}
.phase1Nav a{white-space:nowrap!important;padding:8px 6px!important;font-size:11px!important}
.phase1BrandText b{font-size:19px!important}.phase1Actions{flex-wrap:nowrap!important}
.phase1Hero .tc416CenterDevice.tc419CenterArtwork{width:41%!important;height:64%!important}
.phase1Hero .tc416OrbitCard{width:32%!important}
}
@media(max-width:720px){.phase1Hero .tc416CenterDevice.tc419CenterArtwork{width:39%!important}.phase1Hero .tc416OrbitCard{width:32%!important}}

/* TECNICELL 4.9.22 — SOLO MOVIL. Conserva intacta la apariencia de escritorio. */
@media (max-width: 720px) {
  html, body {max-width:100%;overflow-x:clip}
  .phase2Admin .p448AdminStickyNavWrap {max-width:100%;overflow:hidden!important}
  .phase2Admin .p448AdminStickyNavWrap .adminTabs {
    display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;
    overflow-y:hidden!important;gap:6px!important;max-width:100%!important;
    padding:6px 7px 9px!important;scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
  }
  .phase2Admin .p448AdminStickyNavWrap .adminTabs .tab {
    flex:0 0 auto!important;scroll-snap-align:start;
    padding:10px 11px!important;font-size:12px!important;
    min-height:41px!important;line-height:1.15!important;
    border-radius:10px!important;white-space:nowrap!important;
  }
  .phase1Hero {width:100%!important;max-width:100%!important;overflow:hidden!important;
    padding:18px 12px 10px!important;gap:8px!important;}
  .phase1Hero .tc419Left {min-width:0!important;max-width:100%!important}
  .phase1Hero .tc419Headline {font-size:clamp(28px,7.8vw,43px)!important;line-height:1.08!important}
  .phase1Hero .tc419Description {font-size:13px!important;line-height:1.55!important}
  .phase1Hero .tc419Search {box-sizing:border-box!important;width:100%!important;max-width:100%!important;
    min-width:0!important;height:56px!important;padding:5px!important;gap:3px!important}
  .phase1Hero .tc419Search > span {font-size:21px!important;margin:0 3px!important}
  .phase1Hero .tc419Search input {box-sizing:border-box!important;min-width:0!important;width:0!important;
    flex:1 1 0!important;font-size:16px!important;padding:7px 2px!important;text-overflow:ellipsis}
  .phase1Hero .tc419Search button {flex:0 0 49px!important;width:49px!important;min-width:49px!important;
    height:46px!important;font-size:24px!important}
  .phase1Hero .tc419Benefits {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px 8px!important;margin:14px 0 8px!important;max-width:100%!important}
  .phase1Hero .tc419Benefits > div {display:flex!important;min-width:0!important;justify-content:flex-start!important;
    flex-direction:row!important;align-items:center!important;text-align:left!important;gap:7px!important}
  .phase1Hero .tc419Benefits > div span {font-size:20px!important}
  .phase1Hero .tc419Benefits b {font-size:12px!important;overflow-wrap:normal!important}
  .phase1Hero .tc419Benefits small {font-size:10px!important}
  .phase1Hero .tc415HeroCenter {min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
  .phase1Hero .tc415HeroWindow {height:auto!important;min-height:0!important;overflow:hidden!important}
  .phase1Hero .tc415Slides {min-height:0!important;overflow:hidden!important}
  .phase1Hero .tc416OrbitStage {height:285px!important;min-height:0!important;overflow:hidden!important}
  .phase1Hero .tc416CenterDevice.tc419CenterArtwork {width:37%!important;height:66%!important;top:49%!important}
  .phase1Hero .tc416OrbitCard {width:31%!important;min-height:47px!important;padding:5px!important;gap:3px!important;
    border-radius:10px!important}
  .phase1Hero .tc416OrbArt {width:21px!important;height:21px!important;flex:0 0 21px!important;font-size:15px!important}
  .phase1Hero .tc416OrbText strong {font-size:clamp(9px,2.4vw,11px)!important;line-height:1.12!important;overflow-wrap:anywhere}
  .phase1Hero .tc416OrbText small {display:none!important}
  .phase1Hero .tc416Pos0,.phase1Hero .tc416Pos1 {top:5%!important}
  .phase1Hero .tc416Pos2,.phase1Hero .tc416Pos3 {top:39%!important}
  .phase1Hero .tc416Pos4,.phase1Hero .tc416Pos5 {top:76%!important}
  .phase1Hero .tc415SliderFooter {margin-top:0!important}
  #tcCategoryStrip.phase1BrandStrip {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;padding:12px!important;max-width:100%!important}
  #tcCategoryStrip .brandChip,#tcCategoryStrip .phase1Shortcut {box-sizing:border-box!important;width:100%!important;
    min-width:0!important;max-width:100%!important;min-height:106px!important;padding:10px 8px!important}
  #tcCategoryStrip .brandChip b,#tcCategoryStrip .phase1Shortcut b {font-size:12px!important;
    line-height:1.25!important;overflow-wrap:break-word!important;hyphens:none!important;word-break:normal!important}
  .floating {right:14px!important;bottom:calc(15px + env(safe-area-inset-bottom,0px))!important;
    padding:11px 13px!important}
}
@media (max-width: 360px) {
  .phase1Hero .tc416OrbitStage {height:255px!important}
  .phase1Hero .tc419Benefits {gap:9px 5px!important}
}

/* Agrupación visual de herramientas en Admin > Servicios */
.tcAdminFamilyHeading{margin:28px 0 12px;padding:14px 17px;border:1px solid #39576b;border-left:5px solid #ff7917;border-radius:12px;background:#102331;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tcAdminFamilyHeading strong{color:#ff9d4c;font-size:17px;letter-spacing:.02em}
.tcAdminFamilyHeading span{color:#9fb4c3;font-size:12px}

/* TECNICELL 4.9.30: carpetas desplegables para Admin > Servicios; solo visual */
.tcAdminFamilyAccordion{margin:12px 0 18px;border:1px solid #294356;border-radius:13px;overflow:hidden;background:#081b27}
.tcAdminFamilyAccordion>.tcAdminFamilyHeading{margin:0;cursor:pointer;list-style:none;user-select:none;outline-offset:-3px}
.tcAdminFamilyAccordion>.tcAdminFamilyHeading::-webkit-details-marker{display:none}
.tcAdminFamilyAccordion>.tcAdminFamilyHeading:hover{background:#183144}
.tcAdminFamilyAccordion>.tcAdminFamilyHeading:focus-visible{outline:2px solid #ff9d4c}
.tcAdminFamilyAccordion .tcAdminFamilyArrow{display:inline-block;margin-left:9px;color:#ff9d4c;transition:transform .16s ease}
.tcAdminFamilyAccordion[open] .tcAdminFamilyArrow{transform:rotate(180deg)}
.tcAdminFamilyAccordion>.svcRow{margin:10px 12px}

/* TECNICELL - generador de estados (aislado del catálogo y precios) */
.tcWaServiceBtn{background:#137d67;color:white;border:1px solid #38be9c;border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700;margin:4px 6px 4px 0}
.tcWaOverlay{display:none;position:fixed;inset:0;background:#000c;z-index:999999;align-items:center;justify-content:center;padding:12px;overflow:auto}
.tcWaOverlay.show{display:flex}.tcWaDialog{background:#0c1b2a;border:1px solid #3e5768;border-radius:17px;padding:16px;color:#fff;max-width:440px;width:100%;max-height:96vh;overflow-y:auto;text-align:center;box-shadow:0 20px 90px #000b}
.tcWaBar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.tcWaBar button{background:#254056;color:white;border:0;padding:7px 12px;border-radius:7px;cursor:pointer}
#tcWaPreview{width:min(100%,280px);height:auto;aspect-ratio:9/16;display:block;margin:auto;border:1px solid #39516b;border-radius:8px}#tcWaHint{font-size:12px;color:#b4c9dc;margin:9px 0}.tcWaActions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}.tcWaActions button{border:none;border-radius:9px;background:#ff710b;color:#fff;padding:12px 14px;font-weight:bold;cursor:pointer}.tcWaActions button:last-child{background:#168463}

/* 4.9.33: el botón de enlace utiliza el diseño existente */
#tcWaCopyLink{background:#123c57;color:#fff;border:1px solid #3384a7;border-radius:9px;padding:12px 16px;font-weight:700;cursor:pointer}

/* TECNICELL 4.9.37: instrucciones manuales más legibles en editor y pedido */
#svcDescription {
  color: #77e8ff !important;
  -webkit-text-fill-color: #77e8ff;
  font-size: 15px;
  line-height: 1.65;
  font-weight: 600;
  letter-spacing: .1px;
  background-color: #071e2d;
  border-color: #3284a3;
}
#svcDescription::placeholder { color: #8aadc0 !important; -webkit-text-fill-color: #8aadc0; }
#svcDescription:focus { border-color: #61ddff !important; box-shadow: 0 0 0 2px rgba(97,221,255,.18); }
#orderModal #orderDesc.tc4911OrderDescription { color: #77e8ff !important; line-height: 1.65; }

/* TECNICELL 4.9.38 — instrucciones visibles al cliente en el formulario de pedido.
   Este es el bloque real que rellena app.js (#pExactProviderInfo); #orderDesc
   pertenece a otra pantalla y por eso el cambio anterior no se veía. */
#pExactProviderInfo .pExactInstructions,
#pExactProviderInfo .pExactInstructions * {
  color: #77e8ff !important;
  -webkit-text-fill-color: #77e8ff !important;
  font-size: 15px;
  line-height: 1.7;
  font-weight: 600;
}
#pExactProviderInfo > strong { color: #ffb16e !important; }
#pExactProviderInfo .pExactInstructions a,
#pExactProviderInfo .pExactInstructions a * {
  color: #b6f2ff !important;
  -webkit-text-fill-color: #b6f2ff !important;
  text-decoration: underline;
}

/* TECNICELL 4.9.39 — Admin y Mi cuenta como pantallas independientes */
body.tc439AdminOnly > main > :not(#admin),
body.tc439AccountOnly > main > :not(#cuenta) {
  display: none !important;
}
body.tc439AdminOnly #cuenta,
body.tc439AccountOnly #admin {
  display: none !important;
}
body.tc439AdminOnly #admin,
body.tc439AccountOnly #cuenta {
  margin-top: 0 !important;
  min-height: calc(100vh - 110px);
}
body.tc439AdminOnly .siteFooter,
body.tc439AccountOnly .siteFooter { display:none !important; }
/* Ocultar publicidad/promociones globales en las vistas privadas. */
body.tc439AdminOnly .phase1BrandStrip,
body.tc439AccountOnly .phase1BrandStrip { display:none !important; }

/* TECNICELL 4.9.40 — La barra fija solo existe dentro de la ruta Admin.
   El administrador puede visitar el catálogo sin que su panel lo cubra. */
body:not(.tc439AdminOnly) #admin,
body:not(.tc439AdminOnly) #admin .p448AdminStickyNavWrap {
  display: none !important;
}
/* Exclusión recíproca de las dos vistas privadas. */
body.tc439AdminOnly #cuenta,
body.tc439AccountOnly #admin { display:none !important; }

/* TECNICELL 4.9.48 - Solo administrador; el cliente no recibe datos del RPC. */
#serviceGrid .tcAdminCardCost{font-size:10px;font-weight:650;color:#8df3c4;line-height:1.35;letter-spacing:.05px}
#serviceGrid .tcAdminCardCost strong{font-size:12px;color:#64e3a4}

/* 4.9.50: rótulo exclusivo del administrador en tarjetas del catálogo; no modifica modal ni panel Admin. */
#serviceGrid .tc50SaleLabel{font-size:11px;font-weight:700;color:#ffb276}

/* TECNICELL 4.9.51 — Catálogo más denso (únicamente presentación).
   Cuatro servicios por fila en escritorio, tarjetas bajas y espacios compactos.
   No afecta panel Admin, modal del pedido, costos, tarifas ni lógica DHRU. */
@media (min-width:1150px){
  #serviceGrid .tcLicenseGroupCards{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
}
@media (min-width:800px) and (max-width:1149px){
  #serviceGrid .tcLicenseGroupCards{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
}
@media (min-width:560px) and (max-width:799px){
  #serviceGrid .tcLicenseGroupCards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
}
@media (max-width:559px){
  #serviceGrid .tcLicenseGroupCards{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
}
#serviceGrid .tcLicenseGroup{margin-bottom:12px!important}
#serviceGrid .tcLicenseGroupHeading{padding:4px 2px 6px!important;margin-bottom:6px!important}
#serviceGrid .tcLicenseGroupHeading h3{font-size:18px!important}
#serviceGrid .p1ServiceCard{grid-template-columns:81px minmax(0,1fr)!important;min-height:138px!important;height:auto!important}
#serviceGrid .p1ServiceVisual{min-height:135px!important}
#serviceGrid .svcBrandLogoBox{left:6px!important;top:10px!important;width:68px!important;height:76px!important;padding:4px!important}
#serviceGrid .p1ServiceVisual .tcCatalogPhoto{inset:10px 4px auto 4px!important;width:72px!important;height:80px!important;padding:3px!important}
#serviceGrid .p1ServiceBody{padding:8px 8px 8px 2px!important;gap:3px!important}
#serviceGrid .p1ServiceBody h3{font-size:12px!important;line-height:1.18!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#serviceGrid .p1ServiceBody p{font-size:10px!important;max-height:26px!important;-webkit-line-clamp:2}
#serviceGrid .p1ServiceBadges{margin:0!important}
#serviceGrid .tc497Footer{gap:5px!important}
#serviceGrid .p1ServiceBtn{min-height:27px!important;min-width:84px!important;padding:5px 7px!important;font-size:10px!important}
#serviceGrid .p1Price{font-size:16px!important}
#serviceGrid .tcAdminCardCost{font-size:10px!important}
@media (max-width:559px){
  #serviceGrid .p1ServiceCard{grid-template-columns:83px minmax(0,1fr)!important;min-height:145px!important}
}

/* Bloques principales del catalogo: IMEI, rentas y herramientas separados. */
.tcCatalogSection{grid-column:1/-1;min-width:0;width:100%;margin:0 0 22px}
.tcCatalogSectionHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin:8px 0 14px;border:1px solid #275163;border-left:4px solid #ff7900;border-radius:10px;background:#0b202b;color:#fff}
.tcCatalogSectionHeading h2{margin:0;font-size:19px;line-height:1.3}
.tcCatalogSectionHeading>span{color:#9fd7ed;font-size:12px;white-space:nowrap}
@media(max-width:600px){.tcCatalogSectionHeading{padding:10px}.tcCatalogSectionHeading h2{font-size:16px}}

/* El catalogo unificado superior reemplaza el antiguo listado duplicado. */
body #licencias.licenseSection{display:none!important}

.tcMfaPanel{border:1px solid #2d5667;border-radius:14px;padding:20px;margin:20px 0;background:#0b202b;color:#fff}
.tcMfaActions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.tcMfaPanel button,.tcMfaDialog button{background:#ff7900;color:#fff;border:0;border-radius:9px;padding:11px 16px;font-weight:700;cursor:pointer}
.tcMfaPanel button:disabled,.tcMfaDialog button:disabled{opacity:.45;cursor:not-allowed}
.tcMfaOverlay[hidden],.tcMfaOverlay [hidden],.tcMfaPanel[hidden],.tcMfaPanel [hidden]{display:none!important}
.tcMfaOverlay{position:fixed;inset:0;z-index:2147483000;background:rgba(0,8,14,.98);display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto}
.tcMfaDialog{background:#0b202b;border:1px solid #3b6070;border-radius:16px;max-width:500px;width:100%;max-height:95vh;overflow:auto;padding:24px;color:#fff;box-shadow:0 20px 80px #000}
.tcMfaDialog p{line-height:1.5}.tcMfaDialog small{display:block;color:#bad2dd;line-height:1.5}
.tcMfaDialog form{display:grid;gap:10px;margin:16px 0}.tcMfaDialog input{width:100%;box-sizing:border-box;padding:12px;border-radius:8px;background:#fff;color:#111;font-size:24px;letter-spacing:.25em}
#tcMfaQr{display:block;max-width:240px;width:100%;margin:16px auto;background:#fff;padding:10px;border-radius:8px}
#tcMfaSecret{overflow-wrap:anywhere;color:#fff;user-select:all}#tcMfaMessage{color:#ffd69b}body.tcMfaLocked{overflow:hidden!important}

/* Registro accesible en telefonos. hidden sigue controlado por la sesion. */
@media(max-width:560px){
  .phase1Header{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  .phase1Header .phase1Brand{grid-column:1!important;grid-row:1!important}
  .phase1Header .phase1Actions{grid-column:1!important;grid-row:2!important;justify-content:flex-start!important;flex-wrap:wrap!important;white-space:normal!important;max-width:100%!important}
  .phase1Header .phase1Nav{grid-column:1!important;grid-row:3!important;min-width:0!important;max-width:100%!important}
  .phase1Actions #registerBtn:not(.hidden){display:inline-flex;align-items:center;justify-content:center}
}
