/* =================================================================
   ArgHosted - WHMCS (area de clientes y carrito)
   Estilos propios del template, sobre la base del sitio nuevo:
   mismos colores (variables de sitio.css), tipografia Figtree,
   modo claro por defecto y modo oscuro con el boton del menu.

   Orden de carga:  all.min.css (Bootstrap + Six, con los colores ya
   pasados a variables)  ->  sitio.css (menu, pie y encabezado del
   sitio)  ->  este archivo  ->  custom.css (tus retoques).
   ================================================================= */

/* ---------- variables que el sitio no tiene y WHMCS necesita ---------- */
:root{
  --ah-fill:#f1f4f9; --ah-fill-2:#e3e9f1; --ah-line-2:#c2cddc; --ah-faint:#9aa7b9; --ah-neutral:#64748b;
  --ah-on-brand:#fff; --ah-on-neutral:#fff;
  --ah-ok:#1f9d61;   --ah-ok-2:#17804e;   --ah-ok-soft:#e4f5ec;   --ah-ok-line:#b5e0c9;   --ah-ok-ink:#11663d;   --ah-on-ok:#fff;
  --ah-info:#0e8fb5; --ah-info-2:#0b7594; --ah-info-soft:#e2f3f8; --ah-info-line:#b2ddea; --ah-info-ink:#0a5d76; --ah-on-info:#fff;
  --ah-warn:#f2a61d; --ah-warn-2:#d98f0c; --ah-warn-soft:#fdf3dc; --ah-warn-line:#f3dba3; --ah-warn-ink:#8a5a00; --ah-on-warn:#3a2600;
  --ah-bad:#e5484d;  --ah-bad-2:#cc3338;  --ah-bad-soft:#fde9ea;  --ah-bad-line:#f5bfc1;  --ah-bad-ink:#a8262b;  --ah-on-bad:#fff;
  --ah-r:14px; --ah-r-sm:10px;
  --ah-sombra:0 1px 2px rgba(14,26,43,.05),0 6px 20px rgba(14,26,43,.05);
}
:root[data-theme="dark"]{
  --ah-fill:#162337; --ah-fill-2:#1d2d45; --ah-line-2:#31476a; --ah-faint:#5b6d87; --ah-neutral:#3b4d67;
  --ah-on-brand:#06111f;
  --ah-ok:#3cc483;   --ah-ok-2:#62d49c;   --ah-ok-soft:#0f2e20;   --ah-ok-line:#1e5a3d;   --ah-ok-ink:#7ee0ae;   --ah-on-ok:#04281a;
  --ah-info:#38bdf8; --ah-info-2:#6dcffb; --ah-info-soft:#0e2a3a; --ah-info-line:#1b4c64; --ah-info-ink:#8dd9fb; --ah-on-info:#04222e;
  --ah-warn:#f6b94a; --ah-warn-2:#f9ca72; --ah-warn-soft:#32260c; --ah-warn-line:#5b4517; --ah-warn-ink:#f6c669; --ah-on-warn:#2b1d00;
  --ah-bad:#f0676b;  --ah-bad-2:#f48a8d;  --ah-bad-soft:#391517;  --ah-bad-line:#6b2528;  --ah-bad-ink:#ffa0a3;  --ah-on-bad:#2a0507;
  --ah-sombra:0 1px 2px rgba(0,0,0,.35),0 6px 20px rgba(0,0,0,.25);
}

/* ---------- base ---------- */
html{-webkit-text-size-adjust:100%}
html,body{height:auto;min-height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 var(--f);-webkit-font-smoothing:antialiased}
body,input,button,select,textarea{font-family:var(--f)}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:var(--f);font-weight:700;letter-spacing:-.01em;color:var(--ink)}
h1,.h1{font-size:30px} h2,.h2{font-size:24px} h3,.h3{font-size:19px} h4,.h4{font-size:16px}
h1 small,h2 small,h3 small,h4 small{color:var(--muted);font-weight:500}
a{color:var(--brand-ink);transition:color .15s}
a:hover,a:focus{color:var(--brand)}
hr{border-color:var(--line)}
small,.small{font-size:87%}
.text-muted{color:var(--muted)}
code{background:var(--ah-fill);color:var(--ah-bad-ink);border-radius:6px;padding:2px 6px}
pre{background:var(--ah-fill);border-color:var(--line);color:var(--ink);border-radius:var(--ah-r-sm)}
kbd{border-radius:6px}
blockquote{border-left:3px solid var(--line);font-size:15.5px;color:var(--muted)}
::selection{background:color-mix(in srgb,var(--brand) 28%,transparent)}
::placeholder{color:var(--ah-faint)!important;opacity:1}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
img{max-width:100%}

/* el ancho de pagina sigue al del sitio (1180px) en vez de los escalones de Bootstrap */
.container{width:auto;max-width:1180px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}

/* ---------- menu del sitio dentro de WHMCS ---------- */
.ah-nav{z-index:1030}
.ah-topbar-right .caret{margin-left:2px}
.ah-topbar .ah-topbar-admin{opacity:1;color:var(--sun)}
.ah-topbar-right>a{display:inline-flex;align-items:center;gap:5px}
.ah-nav-drop-btn{font-family:var(--f)}
.ah-cli-sep{margin-top:10px!important;padding-top:12px!important;border-top:1px solid var(--line)!important}
.ah-cli-panel{max-height:calc(100vh - 130px);overflow-y:auto}
.ah-cli-cta.ah-cli-salir{margin-top:6px}
.ah-cli-alerta{align-items:flex-start!important}
.ah-cli-alerta span{font-size:13px;line-height:1.35;color:var(--muted)}
.ah-cli-alerta .ah-mi{background:var(--ah-info-soft);color:var(--ah-info-ink);font-size:12px}
.ah-cli-alerta-warning .ah-mi{background:var(--ah-warn-soft);color:var(--ah-warn-ink)}
.ah-cli-alerta-danger .ah-mi{background:var(--ah-bad-soft);color:var(--ah-bad-ink)}
.ah-cli-alerta-success .ah-mi{background:var(--ah-ok-soft);color:var(--ah-ok-ink)}
/* resguardo: solo si el menu llegara a salirse de la ventana, se ajusta de a un paso (lo decide js/arghosted.js) */
.ah-nav-justo .ah-nav-menu{gap:0}
.ah-nav-justo .ah-nav-in{gap:12px}
.ah-nav-justo .ah-nav-menu>a,.ah-nav-justo .ah-nav-menu>.ah-nav-drop>.ah-nav-drop-btn{padding:12px 7px;gap:6px}
.ah-nav-justo .ah-nav-end{gap:8px}
.ah-nav-justo .ah-nav-tema{padding:0 10px}
.ah-nav-sin-iconos .ah-nav-menu>a>.ah-ico,.ah-nav-sin-iconos .ah-nav-menu>.ah-nav-drop>.ah-nav-drop-btn>.ah-ico{display:none}
.ah-nav-muy-justo .ah-nav-menu>a,.ah-nav-muy-justo .ah-nav-menu>.ah-nav-drop>.ah-nav-drop-btn{font-size:14px;padding:12px 6px}
.ah-nav-muy-justo .ah-cli-nom{max-width:120px}
/* celular: la barra superior en un renglon y el menu con icono y texto juntos a la izquierda */
@media (max-width:900px){
  .ah-nav-menu>a,.ah-nav-drop-btn{justify-content:flex-start;gap:10px}
  .ah-nav-drop-btn>.ah-caret{margin-left:auto}
  .ah-nav-cli>.ah-nav-drop-btn>.ah-caret{margin-left:0}
}
@media (max-width:560px){
  .ah-topbar-links{flex-wrap:nowrap;gap:16px;white-space:nowrap;overflow:hidden}
  .ah-topbar-links a:nth-child(n+3){display:none}
  .ah-topbar-right{gap:14px}
}
.ah-cli-av p b{font-weight:700}
.ah-cli-avisos>.ah-w{gap:6px;padding-block:8px}
.ah-cli-av{padding:7px 12px;font-size:14px}
.ah-cli-av a.ah-btn{padding:6px 13px;font-size:13px;line-height:1.3}

/* ---------- menu de WHMCS (debajo del menu del sitio) ---------- */
section#main-menu{background:var(--surface);border-bottom:1px solid var(--line);position:relative;z-index:20}
.navbar-main{background:none;border:0;border-radius:0;min-height:0;margin:0;font:600 14.5px/1.2 var(--f)}
#main-menu .navbar-nav{margin-left:-12px;margin-right:-12px}
.navbar-main .navbar-nav>li>a{color:var(--muted);padding:15px 12px;background:none;transition:color .15s,box-shadow .15s}
.navbar-main .navbar-nav>li>a:hover,.navbar-main .navbar-nav>li>a:focus,
.navbar-main .navbar-nav>.active>a,.navbar-main .navbar-nav>.active>a:hover,.navbar-main .navbar-nav>.active>a:focus,
.navbar-main .navbar-nav>.open>a,.navbar-main .navbar-nav>.open>a:hover,.navbar-main .navbar-nav>.open>a:focus{color:var(--ink);background:none;box-shadow:inset 0 -2px 0 var(--brand)}
.navbar-main li.account{background:none}
.navbar-main .navbar-nav>li>a .caret{margin-left:1px;opacity:.6}
.navbar-main .navbar-nav>li>a .badge{background:var(--brand);color:var(--ah-on-brand)}
.dropdown-menu{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:6px;font-size:14px}
.navbar-main .dropdown-menu{border-top:1px solid var(--line);border-radius:12px;padding:6px;margin-top:4px;min-width:220px}
.dropdown-menu>li>a,.navbar-main .navbar-nav .dropdown-menu>li>a{padding:8px 12px;border-radius:8px;color:var(--ink);font-weight:500;line-height:1.35}
.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,
.navbar-main .dropdown-menu>li>a:hover,.navbar-main .navbar-nav .dropdown-menu>li>a:hover,.navbar-main .navbar-nav .dropdown-menu>li>a:focus{background:var(--brand-soft);color:var(--brand-ink)}
.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background:var(--brand);color:var(--ah-on-brand)}
.dropdown-menu .divider,.dropdown-menu .nav-divider{height:1px;margin:6px 4px;background:var(--line);overflow:hidden}
.dropdown-header{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:8px 12px}
.navbar-main .navbar-toggle{float:none;display:none;width:100%;margin:0;padding:13px 0;border:0;border-radius:0;background:none;align-items:center;justify-content:space-between;color:var(--ink);font:600 15px/1.2 var(--f)}
.navbar-main .navbar-toggle .ah-sub-barras{display:inline-flex;flex-direction:column;gap:4px}
.navbar-main .navbar-toggle .icon-bar{background:var(--muted);margin:0;width:20px}
.navbar-main .navbar-toggle:hover .icon-bar,.navbar-main .navbar-toggle:focus .icon-bar{background:var(--ink)}
@media (max-width:991px){
  .navbar-main .navbar-toggle{display:flex}
  .navbar-main .navbar-collapse{border-top:1px solid var(--line);box-shadow:none;padding:6px 0 12px;margin:0 -20px;padding-left:20px;padding-right:20px;max-height:none}
  #main-menu .navbar-nav{margin:0}
  .navbar-main .navbar-nav>li>a{padding:11px 4px;box-shadow:none!important;display:flex;justify-content:space-between;align-items:center}
  .navbar-main .navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin:0 0 6px;border:1px solid var(--line);box-shadow:none;background:var(--bg)}
  .navbar-main .navbar-nav .open .dropdown-menu>li>a{color:var(--ink);padding:9px 12px}
  .navbar-main .navbar-nav .open .dropdown-menu>li>a:hover{color:var(--brand-ink)}
}

/* ---------- fondo de toda la pagina: la red de nodos que sigue al mouse ----------
   Un solo lienzo fijo detras del contenido (z-index:-1): se ve desde el menu de WHMCS hasta el pie,
   en los margenes y entre las tarjetas. Lleva el mismo degradado del encabezado del sitio. */
.ah-red{position:fixed;inset:0;width:100%;height:100%;z-index:-1;display:block;pointer-events:none;background:var(--hero-bg)}
.ah-body .ah-hero{background:none;overflow:visible}
.ah-body .ah-hero:after{display:none}

/* ---------- encabezado de pagina (titulo) ---------- */
.ah-hero-wh .ah-hero-pag-in{padding-block:30px 34px}
.ah-hero-wh h1{font-size:clamp(25px,3.1vw,36px);font-weight:800;letter-spacing:-.02em;color:var(--hero-ink);margin:0}
.ah-hero-wh .ah-hero-lead{font-size:15.5px;margin-top:8px;max-width:760px}
.ah-hero-wh .ah-eyebrow{margin-bottom:8px}
.ah-hero .breadcrumb{background:none;padding:0;margin:0 0 8px;border-radius:0;display:flex;flex-wrap:wrap;gap:2px 0;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--hero-mu);list-style:none}
.ah-hero .breadcrumb>li{display:inline-flex;align-items:center}
.ah-hero .breadcrumb>li+li:before{content:"/";padding:0 9px;color:var(--hero-mu);opacity:.55}
.ah-hero .breadcrumb a{color:var(--hero-eb)}
.ah-hero .breadcrumb a:hover{text-decoration:underline}
.ah-hero .breadcrumb>.active{color:var(--hero-mu)}
.ah-hero-portada .ah-hero-pag-in{padding-block:52px 60px;text-align:center}
.ah-hero-portada h1{font-size:clamp(28px,4vw,44px)}
.ah-dominio{max-width:760px;margin:26px auto 0}
.ah-dominio .input-group{box-shadow:var(--shadow);border-radius:14px}
.ah-dominio .form-control{height:58px;border:1px solid var(--line);border-right:0;border-radius:14px 0 0 14px!important;font-size:17px;padding-left:20px}
.ah-dominio .btn{height:58px;padding:0 24px;font-size:16px;font-weight:700;border-radius:0;border:0}
.ah-dominio .btn.search{background:var(--brand);color:var(--ah-on-brand)}
.ah-dominio .btn.search:hover{background:var(--brand-ink)}
.ah-dominio .btn.transfer{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-left:0}
.ah-dominio .btn.transfer:hover{color:var(--brand-ink)}
.ah-dominio .input-group-btn>.btn:last-child{border-radius:0 14px 14px 0}
@media (max-width:640px){
  .ah-hero-wh .ah-hero-pag-in{padding-block:22px 24px}
  .ah-hero-portada .ah-hero-pag-in{padding-block:34px 38px}
  .ah-dominio .input-group{display:block;box-shadow:none}
  .ah-dominio .form-control{border-right:1px solid var(--line);border-radius:12px!important;margin-bottom:8px;float:none}
  .ah-dominio .input-group-btn{display:flex;width:100%;gap:8px}
  .ah-dominio .input-group-btn>.btn{flex:1;border-radius:12px!important;border:1px solid var(--line);margin:0}
}

/* accesos de la portada */
.home-shortcuts{background:none;color:var(--ink);margin:-26px 0 0;position:relative;z-index:2}
.home-shortcuts .lead{display:none}
.home-shortcuts ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:0;padding:0;list-style:none}
.home-shortcuts li,.home-shortcuts li:first-child{float:none;width:auto;padding:0;border:1px solid var(--line);border-radius:var(--ah-r);background:var(--surface);box-shadow:var(--ah-sombra);text-align:left;font-size:15px;white-space:normal;transition:transform .2s,border-color .2s}
.home-shortcuts li:hover{transform:translateY(-3px);border-color:var(--brand)}
.home-shortcuts li a{display:flex;align-items:center;gap:14px;padding:18px;color:var(--ink);font-weight:600}
.home-shortcuts li i{flex:none;width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:19px;background:var(--brand-soft);color:var(--brand-ink)}
.home-shortcuts li p{margin:0;text-transform:none}
.home-shortcuts li span{display:inline-block;color:var(--brand);opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}
.home-shortcuts li:hover span{opacity:1;transform:none}
@media (max-width:767px){.home-shortcuts li,.home-shortcuts li:first-child,.home-shortcuts li:last-child{display:block;border:1px solid var(--line)}}

/* ---------- cuerpo ---------- */
section#main-body{background:none;padding:28px 0 30px;min-height:420px}
.main-content{margin-bottom:34px;min-height:300px}
section#main-body.ah-sin-margen{padding:0}
div.header-lined h1{margin:0 0 16px;padding:0 0 10px;border-bottom:1px solid var(--line);font-size:22px;font-weight:700;color:var(--ink)}
div.header-lined h1 small{font-size:14px;font-weight:500;color:var(--muted)}
div.header-lined .breadcrumb{margin-top:-8px;color:var(--muted)}
div.header-lined .breadcrumb li a{color:var(--muted)}
div.header-lined .breadcrumb>.active{color:var(--ink)}
.breadcrumb{background:var(--ah-fill);border-radius:var(--ah-r-sm)}
.email-verification{background:var(--ah-warn-soft);color:var(--ah-warn-ink);border-bottom:1px solid var(--ah-warn-line)}
.email-verification.success{background:var(--ah-ok-soft);color:var(--ah-ok-ink);border-color:var(--ah-ok-line)}
.email-verification.failed{background:var(--ah-bad-soft);color:var(--ah-bad-ink);border-color:var(--ah-bad-line)}
.email-verification.failed .fas,.email-verification.failed .far{color:inherit}
.email-verification .btn,.email-verification .btn:active{background:var(--surface);border-color:var(--line);color:var(--ink)}

/* ---------- la luz que sigue al cursor (misma idea que los planes del sitio) ---------- */
.ah-luz{position:relative}
.ah-luz:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%),var(--spot),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.ah-luz:hover:after{opacity:1}

/* ---------- botones ---------- */
.btn{font:600 14px/20px var(--f);padding:9px 16px;border-radius:10px;border:1px solid transparent;box-shadow:none!important;text-shadow:none;transition:background .2s,border-color .2s,color .2s,transform .2s}
.btn:active{transform:translateY(1px)}
.btn:focus,.btn:active:focus,.btn.active:focus{outline:0}
.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.btn-lg,.btn-group-lg>.btn{padding:12px 22px;font-size:16px;line-height:22px;border-radius:12px}
.btn-sm,.btn-group-sm>.btn{padding:5px 12px;font-size:13px;line-height:20px;border-radius:8px}
.btn-xs,.btn-group-xs>.btn{padding:2px 9px;font-size:12px;line-height:18px;border-radius:7px}
.btn-default,.btn-default.disabled,.btn-default[disabled]{background:var(--surface);border-color:var(--line);color:var(--ink)}
.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default,
.btn-default:active:hover,.btn-default.active:hover,.btn-default:active:focus,.open>.dropdown-toggle.btn-default:hover,.open>.dropdown-toggle.btn-default:focus{background:var(--surface);border-color:var(--brand);color:var(--brand-ink)}
.btn-default.active,.btn-default:active{background:var(--brand-soft)}
.btn-primary,.btn-primary.disabled,.btn-primary[disabled]{background:var(--brand);border-color:var(--brand);color:var(--ah-on-brand)}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary,
.btn-primary:active:hover,.btn-primary:active:focus,.btn-primary.active:hover{background:var(--brand-ink);border-color:var(--brand-ink);color:var(--ah-on-brand)}
.btn-success:hover,.btn-info:hover,.btn-warning:hover,.btn-danger:hover{filter:none}
.btn-link{color:var(--brand-ink);font-weight:600}
.btn-link:hover,.btn-link:focus{color:var(--brand);text-decoration:none}
.btn.disabled,.btn[disabled],fieldset[disabled] .btn{opacity:.55}
.btn .badge{border-radius:999px}
.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}
.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}
.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}
.close{color:var(--ink);opacity:.45;text-shadow:none}
.close:hover,.close:focus{color:var(--ink);opacity:.9}

/* ---------- formularios ---------- */
label{font-weight:600;font-size:13.5px;color:var(--ink)}
.form-control{height:40px;padding:8px 12px;font-size:14.5px;line-height:22px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.form-control:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 22%,transparent)}
textarea.form-control,select[multiple].form-control,select[size].form-control{height:auto}
.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background:var(--ah-fill);color:var(--muted)}
.input-lg,.input-group-lg>.form-control{height:48px;padding:11px 16px;font-size:16px;border-radius:12px}
.input-sm,.input-group-sm>.form-control{height:32px;padding:4px 10px;font-size:13px;border-radius:8px}
select.input-sm{height:32px;line-height:22px}
select.input-lg{height:48px;line-height:24px}
.input-group-addon{background:var(--ah-fill);border:1px solid var(--line);color:var(--muted);border-radius:10px;font-size:14px}
.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child)>.btn{border-radius:0}
.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn{border-top-right-radius:0;border-bottom-right-radius:0}
.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn{border-top-left-radius:0;border-bottom-left-radius:0}
.help-block{color:var(--muted);font-size:13px}
.checkbox label,.radio label{font-weight:500;font-size:14.5px}
input[type=checkbox],input[type=radio]{accent-color:var(--brand)}
.has-error .form-control{border-color:var(--ah-bad)}
.has-error .form-control:focus{border-color:var(--ah-bad);box-shadow:0 0 0 3px color-mix(in srgb,var(--ah-bad) 22%,transparent)}
.has-success .form-control{border-color:var(--ah-ok)}
.has-success .form-control:focus{border-color:var(--ah-ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ah-ok) 22%,transparent)}
.has-warning .form-control{border-color:var(--ah-warn)}
.has-feedback label~.form-control-feedback{top:29px!important}
.form-control-feedback{width:40px;height:40px;line-height:40px}
legend{color:var(--ink);border-color:var(--line);font-size:18px;font-weight:700}
.sub-heading{display:flex;align-items:center;gap:14px;height:auto;border:0;margin:26px 0 22px;text-align:center}
.sub-heading:before,.sub-heading:after{content:"";flex:1;height:1px;background:var(--line)}
.sub-heading span{position:static;display:inline-block;padding:0;background:none;color:var(--brand-ink);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.field-icon i,#registration .field-icon i{color:var(--ah-faint)}
.bootstrap-switch{border-color:var(--line);border-radius:10px}
.bootstrap-switch .bootstrap-switch-label{background:var(--surface)}
.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-default,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-default{background:var(--ah-fill-2);color:var(--ink)}
.intl-tel-input .country-list{background:var(--surface);border-color:var(--line);color:var(--ink);border-radius:10px;box-shadow:var(--shadow)}
.intl-tel-input .country-list .country.highlight{background:var(--brand-soft)}
.intl-tel-input .country-list .divider{border-color:var(--line)}
.intl-tel-input .country-list .country .dial-code{color:var(--muted)}
.intl-tel-input .selected-flag .selected-dial-code{color:var(--ink)}

/* ---------- paneles ---------- */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--ah-r);box-shadow:var(--ah-sombra);font-size:14.5px;margin-bottom:22px}
.panel>.panel-heading{background:none;border-bottom:1px solid var(--line);color:var(--ink);padding:14px 18px;border-radius:var(--ah-r) var(--ah-r) 0 0}
.panel-title{font:700 15px/1.35 var(--f);color:inherit}
.panel-title>a{color:inherit}
.panel-body{padding:16px 18px}
.panel-footer{background:var(--ah-fill);border-top:1px solid var(--line);padding:12px 18px;border-radius:0 0 var(--ah-r) var(--ah-r)}
.panel-footer:empty{display:none}
.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-radius:0 0 var(--ah-r) var(--ah-r)}
.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-radius:0 0 var(--ah-r) var(--ah-r)}
.panel-primary,.panel-success,.panel-info,.panel-warning,.panel-danger{border-color:var(--line)}
.panel-primary>.panel-heading{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--line);--ah-on:var(--brand-ink)}
.panel-success>.panel-heading{background:var(--ah-ok-soft);color:var(--ah-ok-ink);border-color:var(--ah-ok-line)}
.panel-info>.panel-heading{background:var(--ah-info-soft);color:var(--ah-info-ink);border-color:var(--ah-info-line)}
.panel-warning>.panel-heading{background:var(--ah-warn-soft);color:var(--ah-warn-ink);border-color:var(--ah-warn-line)}
.panel-danger>.panel-heading{background:var(--ah-bad-soft);color:var(--ah-bad-ink);border-color:var(--ah-bad-line)}
.panel-group .panel{border-radius:var(--ah-r)}
.panel[class*="panel-accent-"]{border-top-width:3px}
.well{background:var(--ah-fill);border:1px solid var(--line);border-radius:var(--ah-r);box-shadow:none}
.jumbotron{background:var(--ah-fill);border-radius:var(--ah-r)}
.thumbnail{background:var(--surface);border-color:var(--line);border-radius:var(--ah-r-sm)}

/* listas */
.list-group{font-size:14.5px}
.list-group-item{background:none;border-color:var(--line);color:var(--ink);padding:10px 18px}
.list-group-item:first-child{border-top-left-radius:var(--ah-r-sm);border-top-right-radius:var(--ah-r-sm)}
.list-group-item:last-child{border-bottom-left-radius:var(--ah-r-sm);border-bottom-right-radius:var(--ah-r-sm)}
.panel>.list-group .list-group-item{border-left:0;border-right:0;border-radius:0}
a.list-group-item,button.list-group-item{color:var(--ink);transition:background .15s,color .15s}
a.list-group-item:hover,a.list-group-item:focus,button.list-group-item:hover{background:var(--ah-fill);color:var(--ink)}
.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus,
a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus,
.panel-sidebar a.list-group-item.active,.panel-sidebar a.list-group-item.active:hover,.panel-sidebar a.list-group-item.active:focus{background:var(--brand-soft);border-color:var(--line);color:var(--brand-ink);font-weight:600;box-shadow:inset 3px 0 0 var(--brand);--ah-on:var(--brand-ink)}
.list-group-item .badge{background:var(--ah-fill);color:var(--muted);border-radius:999px;font-weight:600}
.list-group-item.active>.badge,a.list-group-item.active>.badge{background:var(--brand);color:var(--ah-on-brand)}
.list-group-item>i.far.fa-circle{color:var(--ah-faint)}
.list-group-item.disabled,.list-group-item.disabled:hover{background:none;color:var(--ah-faint)}
div.sidebar .list-group-item-selected{background:var(--brand-soft);color:var(--brand-ink)}

/* columna lateral */
.sidebar .panel{font-size:14.5px}
.sidebar .panel>.panel-heading{padding:13px 18px}
.sidebar .panel-title{display:flex;align-items:center;gap:7px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sidebar .panel-title i:first-child{color:var(--brand);margin-right:2px}
.sidebar .panel-title .panel-minimise{margin-left:auto;font-size:12px;color:var(--ah-faint);cursor:pointer}
.sidebar .panel-title .badge{background:var(--brand);color:var(--ah-on-brand)}
.sidebar .panel>.list-group .list-group-item:first-child{border-top:0}
.sidebar .panel-body{color:var(--ink)}
.sidebar .list-group-item .title{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sidebar .list-group-item .title+br{display:none}
@media (min-width:992px){.sidebar .list-group-item .badge{margin-top:1px;padding:3px 9px;line-height:1.3;min-width:30px}}

/* ---------- tablas ---------- */
.table{color:var(--ink);margin-bottom:18px}
.table>thead>tr>th{border-bottom:1px solid var(--line);padding:11px 14px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th{border-top:1px solid var(--line);padding:11px 14px;vertical-align:middle}
.table>tbody+tbody{border-top:1px solid var(--line)}
.table-bordered,.table-bordered>thead>tr>th,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td{border-color:var(--line)}
.table-condensed>tbody>tr>td,.table-condensed>thead>tr>th{padding:7px 10px}
.table-responsive{border-color:var(--line)}
/* listados con buscador (servicios, facturas, tickets...) */
.table-container{padding:0 0 22px}
.dataTables_wrapper{background:var(--surface);border:1px solid var(--line);border-radius:var(--ah-r);box-shadow:var(--ah-sombra);overflow:hidden}
.dataTables_wrapper .dataTables_info,div.dataTables_wrapper div.dataTables_info{float:left;background:none;border:0;color:var(--muted);font-size:13.5px;font-weight:500;padding:19px 18px!important;border-radius:0;text-align:left}
.dataTables_wrapper .dataTables_filter{float:right}
.dataTables_wrapper .dataTables_filter label{margin:0;padding:11px 14px}
.dataTables_wrapper .dataTables_filter label .form-control{background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a98ad' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") no-repeat 11px 50%/17px;padding:8px 12px 8px 36px!important;border:1px solid var(--line);height:38px;width:230px;margin:0}
.dataTables_wrapper table.table-list{margin:0!important;border-top:1px solid var(--line);clear:both}
.dataTables_wrapper table.table-list thead th,.dataTables_wrapper table.table-list thead th:nth-child(even),table.table-list thead th{background:var(--ah-fill);border-bottom:1px solid var(--line);color:var(--muted);font-weight:700;padding:11px 14px;text-align:center}
.dataTables_wrapper table.table-list thead th.sorting_asc,.dataTables_wrapper table.table-list thead th.sorting_desc{background:var(--ah-fill);color:var(--brand-ink)}
table.table-list thead th:first-child,table.table-list tbody td:first-child{text-align:left}
table.table-list tbody td{padding:12px 14px;font-size:14.5px}
.table-list>tbody>tr>td,.table-list>tbody>tr:nth-child(even)>td{background:none;transition:background .15s}
.table-list>tbody>tr:hover>td{background:var(--ah-fill)}
.table-list>tbody>tr>td a.border-left{border-color:var(--line)}
table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after{opacity:.6}
.dataTables_wrapper .dataTables_length{float:left;background:none;font-size:13px;color:var(--muted)}
.dataTables_wrapper .dataTables_length label{padding:13px 18px;margin:0;font-weight:500}
.dataTables_wrapper .dataTables_length label .form-control{height:30px;padding:2px 6px;border:1px solid var(--line);border-radius:8px;margin:0 4px}
.dataTables_wrapper .dataTables_paginate{float:right;padding:10px 14px}
.dataTables_wrapper .dataTables_paginate .pagination{margin:0}
.dataTables_wrapper .dataTables_empty{padding:26px!important;color:var(--muted);text-align:center}
.dataTables_wrapper:after{content:"";display:table;clear:both}
.dataTables_wrapper .listtable{overflow-x:auto;border-bottom:1px solid var(--line)}
.dataTables_wrapper .listtable:last-child{border-bottom:0}
@media (max-width:600px){
  .dataTables_wrapper .dataTables_info,div.dataTables_wrapper div.dataTables_info{float:none;padding:14px 16px 0!important}
  .dataTables_wrapper .dataTables_filter{float:none;margin:0;width:auto}
  .dataTables_wrapper .dataTables_filter label{display:block;margin:0;padding:10px 14px}
  .dataTables_wrapper .dataTables_filter label .form-control{width:100%}
}

/* paginador */
.pagination{font-size:13.5px}
.pagination>li>a,.pagination>li>span{background:var(--surface);border-color:var(--line);color:var(--ink);padding:6px 12px;font-weight:600}
.pagination>li>a:hover,.pagination>li>a:focus{background:var(--ah-fill);border-color:var(--line);color:var(--brand-ink)}
.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>a:focus,.pagination>.active>span:hover,.pagination>.active>span:focus{background:var(--brand);border-color:var(--brand);color:var(--ah-on-brand)}
.pagination>.disabled>a,.pagination>.disabled>span,.pagination>.disabled>a:hover{background:var(--surface);border-color:var(--line);color:var(--ah-faint)}
.pagination>li:first-child>a,.pagination>li:first-child>span{border-radius:9px 0 0 9px}
.pagination>li:last-child>a,.pagination>li:last-child>span{border-radius:0 9px 9px 0}
.dataTables_wrapper .dataTables_paginate .pagination>li>a,.dataTables_wrapper .dataTables_paginate .pagination>li>span{padding:5px 11px}
.pager li>a,.pager li>span{background:var(--surface);border-color:var(--line);border-radius:10px;color:var(--ink);font-weight:600}

/* ---------- etiquetas y estados ---------- */
.label{border-radius:999px;padding:.32em .8em .34em;font-size:76%;font-weight:700;letter-spacing:.01em}
.badge{border-radius:999px;font-weight:700}
.label.status{background:var(--ah-fill);border:1px solid var(--line);color:var(--muted);font-size:12px;padding:4px 11px;display:inline-block}
.label.status:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:1px}
.status-active,.status-open,.status-completed,.status-paid,.status-accepted,.status-delivered{color:var(--ah-ok-ink)!important}
.label.status.status-active,.label.status.status-open,.label.status.status-completed,.label.status.status-paid,.label.status.status-accepted{background:var(--ah-ok-soft);border-color:var(--ah-ok-line)}
.status-pending,.status-unpaid,.status-collections,.status-inprogress,.status-fraud{color:var(--ah-bad-ink)!important}
.label.status.status-pending,.label.status.status-unpaid,.label.status.status-collections,.label.status.status-fraud{background:var(--ah-bad-soft);border-color:var(--ah-bad-line)}
.status-suspended,.status-customer-reply,.status-onhold,.status-pending.transfer,.status-draft{color:var(--ah-warn-ink)!important}
.label.status.status-suspended,.label.status.status-customer-reply,.label.status.status-onhold{background:var(--ah-warn-soft);border-color:var(--ah-warn-line)}
.status-answered,.status-refunded,.status-expired,.status-transferred.away{color:var(--ah-info-ink)!important}
.label.status.status-answered,.label.status.status-refunded{background:var(--ah-info-soft);border-color:var(--ah-info-line)}
.status-cancelled,.status-terminated,.status-closed,.status-lost,.status-dead{color:var(--muted)!important}
.status-custom{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:3px 10px}
.textgreen,.text-success{color:var(--ah-ok-ink)} .textred,.text-danger{color:var(--ah-bad-ink)} .text-warning{color:var(--ah-warn-ink)} .text-info{color:var(--ah-info-ink)} .text-primary{color:var(--brand-ink)}
.text-domain{color:var(--brand-ink)}

/* ---------- avisos ---------- */
.alert{border-radius:var(--ah-r-sm);border:1px solid;padding:13px 16px;font-size:14.5px}
.alert h2{font-size:17px;margin:0 0 4px;color:inherit}
.alert a,.alert .alert-link{color:inherit;font-weight:700;text-decoration:underline}
.alert .btn{text-decoration:none}
.alert-success{background:var(--ah-ok-soft);border-color:var(--ah-ok-line);color:var(--ah-ok-ink)}
.alert-info{background:var(--ah-info-soft);border-color:var(--ah-info-line);color:var(--ah-info-ink)}
.alert-warning{background:var(--ah-warn-soft);border-color:var(--ah-warn-line);color:var(--ah-warn-ink)}
.alert-danger{background:var(--ah-bad-soft);border-color:var(--ah-bad-line);color:var(--ah-bad-ink)}
.alert-bordered-left{border:0;border-left:3px solid;border-radius:0 var(--ah-r-sm) var(--ah-r-sm) 0}
.bg-primary{background:var(--brand);color:var(--ah-on-brand)} .bg-success{background:var(--ah-ok-soft)} .bg-info{background:var(--ah-info-soft)} .bg-warning{background:var(--ah-warn-soft)} .bg-danger{background:var(--ah-bad-soft)}
.progress{background:var(--ah-fill-2);border-radius:999px;box-shadow:none;height:14px}
.progress-bar{box-shadow:none;line-height:14px;font-size:11px}

/* ---------- pestanas ---------- */
.nav-tabs{border-bottom:1px solid var(--line)}
.nav-tabs>li>a{color:var(--muted);font-weight:600;border-radius:10px 10px 0 0;padding:10px 16px}
.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{background:var(--ah-fill);border-color:transparent transparent var(--line);color:var(--ink)}
.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{background:var(--surface);border-color:var(--line) var(--line) var(--surface);color:var(--brand-ink)}
.nav-pills>li>a{border-radius:10px;font-weight:600;color:var(--muted)}
.nav-pills>li>a:hover,.nav>li>a:hover,.nav>li>a:focus{background:var(--ah-fill)}
.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{background:var(--brand);color:var(--ah-on-brand)}
.tab-content.product-details-tab-container,div.product-details-tab-container{background:var(--surface);border:1px solid var(--line);border-top:0;border-radius:0 0 var(--ah-r) var(--ah-r);padding:20px}

/* ---------- ventanas, globos ---------- */
.modal-content{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.35);color:var(--ink);overflow:hidden}
.modal-content.panel{margin:0}
.modal-header{border-bottom:1px solid var(--line);padding:16px 20px}
.modal-title{font:700 17px/1.3 var(--f);color:inherit}
.modal-body{padding:20px}
.modal-footer{border-top:1px solid var(--line);padding:14px 20px;background:var(--ah-fill)}
.modal-backdrop.in{opacity:.6}
.popover{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);color:var(--ink);font-family:var(--f)}
.popover-title{background:var(--ah-fill);border-bottom:1px solid var(--line);border-radius:11px 11px 0 0;color:var(--ink);font-weight:700;font-size:14px}
.popover.top>.arrow{border-top-color:var(--line)} .popover.top>.arrow:after{border-top-color:var(--surface)}
.popover.bottom>.arrow{border-bottom-color:var(--line)} .popover.bottom>.arrow:after{border-bottom-color:var(--surface)}
.popover.left>.arrow{border-left-color:var(--line)} .popover.left>.arrow:after{border-left-color:var(--surface)}
.popover.right>.arrow{border-right-color:var(--line)} .popover.right>.arrow:after{border-right-color:var(--surface)}
.language-popover{background:var(--nav);background-image:none;border-color:var(--nav-line);max-width:420px}
.language-popover.popover.bottom>.arrow,.language-popover.popover.bottom>.arrow:after{border-bottom-color:var(--nav)}
.language-popover .popover-content li{padding:0 12px;width:50%}
.language-popover .popover-content li a{color:var(--nav-ink)}
.language-popover .popover-content li a:hover{color:#fff}
.tooltip-inner{border-radius:8px;padding:6px 10px;font:500 12.5px/1.4 var(--f)}

/* ---------- acceso ---------- */
.logincontainer{max-width:460px;margin:26px auto 60px;padding:30px 30px 26px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.logincontainer.with-social{max-width:760px}
.logincontainer .form-group{margin-bottom:16px}
.logincontainer .form-control{height:46px;font-size:15.5px}
.logincontainer .btn{padding:11px 20px;font-size:15px}
.logincontainer .btn-primary{min-width:150px}
.logincontainer .header-lined{display:none}
.logincontainer .checkbox{margin:4px 0 18px}
.logincontainer p{color:var(--muted)}
@media (min-width:768px){.logincontainer.with-social .login-form{border-right:1px solid var(--line)}}
@media (max-width:600px){.logincontainer{margin:6px auto 30px;padding:22px 18px}}
.social-signin-btns .btn{border-radius:10px}

/* ---------- panel del cliente ---------- */
.tiles{margin:0 0 22px}
.tiles .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:0}
.tiles .row:before,.tiles .row:after{display:none}
.tiles .tile{float:none;width:auto;padding:18px 20px;background:var(--surface);border:1px solid var(--line)!important;border-radius:var(--ah-r);box-shadow:var(--ah-sombra);transition:transform .2s,border-color .2s}
.tiles .tile:hover{background:var(--surface);transform:translateY(-3px);border-color:var(--brand)!important}
.tiles .tile a{display:block;color:var(--ink)}
.tile .icon{top:16px;right:16px;font-size:20px;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--brand-soft);color:var(--brand-ink)}
.tile .stat{margin-top:2px;font-size:38px;font-weight:800;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.tile .title{margin-top:6px;font-size:12px;letter-spacing:.08em;color:var(--muted)}
.tiles .tile .highlight{margin-top:12px;height:3px;border-radius:3px;opacity:.9}
@media (max-width:480px){.tiles .row{grid-template-columns:1fr 1fr}.tile .stat{font-size:30px}.tile .icon{display:none}}
.home-kb-search{margin-bottom:22px}
.home-kb-search .form-control{height:52px;padding-left:50px;background:var(--surface);border:1px solid var(--line);border-radius:var(--ah-r);color:var(--ink);font-weight:400;box-shadow:var(--ah-sombra)}
.home-kb-search .form-control:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 22%,transparent)}
.home-kb-search i{margin-top:-34px;margin-left:20px;color:var(--ah-faint);position:relative}
.client-home-panels .panel>.panel-heading{background:none;border-bottom:1px solid var(--line);font-weight:700}
.client-home-panels .panel>.panel-heading .panel-title .btn,.client-home-panels .panel>.panel-heading .panel-title .btn:hover{background:var(--ah-fill);border:1px solid var(--line);color:var(--ink);font-weight:600}
.client-home-panels .panel>.panel-heading .panel-title .btn:hover{border-color:var(--brand);color:var(--brand-ink)}
.client-home-panels .panel small{color:var(--muted)}
.client-home-panels .panel>.panel-body{max-height:190px}
.client-home-panels .panel>.panel-body p{padding:14px 18px;margin:0}
.client-home-panels .panel>.list-group{max-height:190px;border-top:0;border-bottom:0}
.client-home-panels .panel>.list-group .list-group-item{padding:10px 18px}
.client-home-panels .panel>.panel-footer{display:none}
.client-home-panels .panel .htframe{border-radius:0 0 var(--ah-r) var(--ah-r);display:block}
.client-home-panels .panel>.list-group:has(.htframe){max-height:none}

/* ---------- servicio ---------- */
div.product-details div.product-icon{background:var(--ah-fill);border:1px solid var(--line);border-radius:var(--ah-r);color:var(--brand-ink)}
.product-status{border-radius:var(--ah-r);overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.product-status-text{font-size:12px;font-weight:700;letter-spacing:.1em;padding:7px}
.product-status-active{background:var(--surface)} .product-status-active .product-status-text{background:var(--ah-ok);color:var(--ah-on-ok)}
.product-status-pending .product-status-text{background:var(--ah-warn);color:var(--ah-on-warn)}
.product-status-suspended .product-status-text{background:var(--ah-bad);color:var(--ah-on-bad)}
.product-status-terminated .product-status-text,.product-status-cancelled .product-status-text,.product-status-fraud .product-status-text{background:var(--ah-neutral);color:#fff}
.product-status-pending,.product-status-suspended,.product-status-terminated,.product-status-cancelled,.product-status-fraud{background:var(--surface)}
.module-client-area{background:var(--surface)}

/* ---------- tickets ---------- */
.ticket-reply{margin:0 0 16px;border:1px solid var(--line);border-radius:var(--ah-r);background:var(--surface);overflow:hidden;box-shadow:var(--ah-sombra)}
.ticket-reply.staff{border-color:color-mix(in srgb,var(--brand) 45%,var(--line))}
.ticket-reply .user{padding:10px 0;background:var(--ah-fill);border-bottom:1px solid var(--line)}
.ticket-reply.staff .user{background:var(--brand-soft)}
.ticket-reply .user i{float:left;width:38px;height:38px;margin:1px 12px 0 16px;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;background:var(--surface);border:1px solid var(--line);color:var(--muted)}
.ticket-reply.staff .user i{background:var(--brand);border-color:var(--brand);color:var(--ah-on-brand)}
.ticket-reply .user .name{font-size:14.5px;font-weight:700;color:var(--ink)}
.ticket-reply .user .type{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}
.ticket-reply .date{padding:14px 16px;font-size:12.5px;color:var(--muted)}
.ticket-reply .message{padding:16px 18px;font-size:15px}
.ticket-reply .attachments{border-top:1px dashed var(--line);background:var(--ah-fill);font-size:13px}
.ticket-reply .rating span.star:before,.ticket-reply .rating-done span.star:before{color:var(--ah-faint)}
.md-editor{border-color:var(--line);border-radius:var(--ah-r-sm);overflow:hidden;background:var(--surface)}
.md-editor>.md-header,.md-editor .md-footer{background:var(--ah-fill);border-color:var(--line)}
.md-editor>textarea,.md-editor>.md-preview{background:var(--surface);color:var(--ink);border-color:var(--line)}
.md-editor.active{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 22%,transparent)}
.markdown-content blockquote{border-color:var(--line)}

/* ---------- anuncios, guias, descargas ---------- */
.announcement-single{background:var(--surface);border:1px solid var(--line);border-radius:var(--ah-r);box-shadow:var(--ah-sombra);padding:20px 22px;margin:0 0 18px}
div.announcement-single blockquote{margin:14px 0 0;padding:0 0 0 14px;border-left:3px solid var(--sun);font-size:15px;color:var(--muted)}
.announcement-single h3{margin:0;font-size:18px;line-height:1.35}
.announcement-single h3 a,.announcement-single a.title{color:var(--ink)}
.announcement-single h3 a:hover,.announcement-single a.title:hover{color:var(--brand-ink);text-decoration:none}
.announcement-single .label-default{background:var(--sun);color:#3a2600;vertical-align:2px}
.announcement-single .label-warning{background:none;color:var(--brand-ink);padding:0;font-size:14px;white-space:nowrap}
.announcement-single .article-items,.announcement-single p{color:var(--muted)}
.kb-category a small,.kbarticles,.kb-article-details{color:var(--muted)}
.kbarticles{font-size:14px;padding:0 0 18px}
.kbarticles a{font-size:16px}
.kbarticles a .glyphicon,.kbarticles a .fa,.kbarticles a .fas,.kbarticles a .far{color:var(--brand)}
h3.kb-alsoread{background:var(--ah-fill);border-radius:var(--ah-r-sm)}
.kb-article-content{font-size:16px;line-height:1.7;font-weight:400}
.kb-rate-article{background:var(--brand-soft);color:var(--brand-ink);border-radius:var(--ah-r);font-size:16px;font-weight:600}
.kb-search .form-control{border-radius:12px 0 0 12px}
.kb-search>.input-group-btn>.btn{border-radius:0 12px 12px 0}

/* ---------- dominios ---------- */
.domain-checker-container{background:var(--hero-bg);border:1px solid var(--line);border-radius:var(--ah-r)}
.domain-checker-bg{background-image:none}
.domain-checker-container .input-group-box{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.domain-checker-available{color:var(--ah-ok-ink)} .domain-checker-unavailable,.domain-checker-invalid{color:var(--ah-bad-ink)}
div.domainresults div:not(.btn-group){background:var(--ah-fill);color:var(--ink)}
.domain-pricing .tld-pricing-header div,.tld-pricing-header .tld-column{border-color:var(--brand)!important}
.tld-filters a.badge-success,.tld-filters a.label-success{background:var(--brand);color:var(--ah-on-brand)}

/* ---------- varios ---------- */
div.credit-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--ah-r);overflow:hidden}
div.credit-card div.card-number{background:var(--ah-fill);color:var(--ink)}
.invoice-summary{background:var(--ah-fill);border:2px dashed var(--line);border-radius:var(--ah-r)}
.invoice-summary-table td.total-row{background:var(--ah-fill-2)}
.server-status-table,.table.server-status{background:var(--surface)}
.captchaimage,.g-recaptcha{margin:0 auto}

.error-container{text-align:center;max-width:640px;margin:10px auto 30px;padding:36px 30px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.error-container h1{margin:0 0 10px;font-size:28px}
.error-container h1 i{color:var(--ah-warn)}
.error-container h3{color:var(--muted);font-weight:500}
.error-container .buttons{margin:22px 0 0}
#popup-backdrop{background:var(--bg);padding:20px;height:auto}
#popup-backdrop .popup-header-padding{font-size:19px;margin:2px 0}
#popup-backdrop .panel-body{overflow-wrap:anywhere}

/* paginas de la tienda (MarketConnect): traen colores propios pensados para fondo claro */
.landing-page,.store-order-container{--bg:#f5f7fb;--surface:#fff;--ink:#0e1a2b;--muted:#56657c;--line:#dde4ee;--ah-fill:#f1f4f9;--brand-ink:#0f5ca6;background:var(--bg);color:var(--ink);color-scheme:light}

/* ---------- impresion: siempre en claro ---------- */
@media print{
  :root,:root[data-theme="dark"]{--bg:#fff;--surface:#fff;--ink:#000;--muted:#444;--line:#ccc;--ah-fill:#f4f4f4;--brand-ink:#0f5ca6;color-scheme:light}
  .ah-topbar,.ah-nav,.ah-hero,.ah-foot,.ah-wa,.ah-cli-avisos,.ah-red,#main-menu,.sidebar{display:none!important}
  section#main-body{padding:0}
}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
