/* A01_LinkeiaWhois — estilos de la página pública /whois */

.lkw-wrap{
  --lkw-accent:#17364D;
  --lkw-radius:999px;            /* "Redondos" por defecto */
  --lkw-ok:#1f9d57;
  --lkw-reg:#2b6cb0;
  --lkw-warn:#c47d00;
  --lkw-bg:#ffffff;
  --lkw-soft:#f3f5f7;
  --lkw-line:#e3e8ee;
  --lkw-text:#1f2a37;
  --lkw-muted:#64748b;
  max-width:860px;
  margin:0 auto;
  padding:8px 16px 48px;
  color:var(--lkw-text);
  font-size:16px;
  line-height:1.6;
}
.lkw-wrap[data-shape="redondeados"]{ --lkw-radius:14px; }
.lkw-wrap[data-shape="cuadrados"]{ --lkw-radius:0px; }

@media (prefers-color-scheme: dark){
  .lkw-wrap{
    --lkw-bg:#111b26; --lkw-soft:#17222f; --lkw-line:#263445;
    --lkw-text:#e7edf3; --lkw-muted:#9fb0c3;
  }
}

/* Hero */
.lkw-hero{ text-align:center; padding:24px 0 8px; }
.lkw-hero h1{
  font-size:clamp(1.8rem,4vw,2.4rem);
  margin:0 0 10px;
  color:var(--lkw-accent);
  font-weight:800;
  letter-spacing:-.01em;
}
@media (prefers-color-scheme: dark){ .lkw-hero h1{ color:#9fd0ec; } }
.lkw-sub{ font-size:1.06rem; color:var(--lkw-muted); max-width:680px; margin:0 auto 20px; }
.lkw-sub strong{ color:var(--lkw-text); }

/* Formulario: campo + botón combinados */
.lkw-form{ margin:0 auto; max-width:640px; }
.lkw-hp{ position:absolute!important; left:-9999px!important; width:1px; height:1px; opacity:0; }
.lkw-search{
  display:flex; align-items:center;
  background:var(--lkw-bg);
  border:2px solid var(--lkw-line);
  border-radius:var(--lkw-radius);
  padding:6px;
  overflow:hidden;                 /* evita que el botón asome fuera del borde redondeado */
  transition:border-color .15s ease, box-shadow .15s ease;
}
.lkw-search:focus-within{
  border-color:var(--lkw-accent);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--lkw-accent) 18%, transparent);
}
.lkw-search input[type=text]{
  flex:1 1 auto; min-width:0;
  border:0; outline:0; background:transparent; color:var(--lkw-text);
  font-size:1.2rem; padding:16px 20px;
}
.lkw-search-btn{
  flex:0 0 auto; cursor:pointer; border:0;
  background:var(--lkw-accent); color:#fff;
  font-size:1.05rem; font-weight:700; padding:15px 28px;
  border-radius:var(--lkw-radius);
  transition:filter .15s ease, transform .06s ease;
  white-space:nowrap;
}
.lkw-search-btn:hover{ filter:brightness(1.1); }
.lkw-search-btn:active{ transform:translateY(1px); }

.lkw-hint{ font-size:.95rem; color:var(--lkw-muted); margin:12px 0 0; }
.lkw-ex{
  background:var(--lkw-soft); border:1px solid var(--lkw-line); color:var(--lkw-text);
  border-radius:999px; padding:3px 12px; font-size:.9rem; cursor:pointer; margin:0 3px;
}
.lkw-ex:hover{ border-color:var(--lkw-accent); }

/* Botones de acción */
.lkw-btn{
  display:inline-block; cursor:pointer; text-decoration:none; text-align:center;
  font-size:1.05rem; font-weight:600; padding:13px 22px; border-radius:var(--lkw-radius);
  border:2px solid transparent; transition:transform .06s ease, filter .15s ease, background .15s ease;
}
.lkw-btn:active{ transform:translateY(1px); }
.lkw-btn-primary{ background:var(--lkw-accent); color:#fff !important; }
.lkw-btn-primary:hover{ filter:brightness(1.1); color:#fff !important; }
.lkw-btn-lg{ font-size:1.15rem; padding:15px 28px; }
.lkw-btn-ghost{ background:transparent; border-color:var(--lkw-line); color:var(--lkw-text); }
.lkw-btn-ghost:hover{ border-color:var(--lkw-accent); color:var(--lkw-text); }

/* Resultado inline — reservamos espacio para evitar saltos */
.lkw-result{ min-height:0; margin:22px auto 0; max-width:720px; }
.lkw-result.is-loading{ min-height:160px; }
.lkw-skeleton{ border:1px solid var(--lkw-line); border-radius:16px; padding:22px; background:var(--lkw-soft); }
.lkw-skeleton .bar{ height:14px; border-radius:7px; background:linear-gradient(90deg,var(--lkw-line),transparent,var(--lkw-line)); background-size:200% 100%; animation:lkwsh 1.1s infinite; margin:10px 0; }
.lkw-skeleton .bar.w40{ width:40%; } .lkw-skeleton .bar.w70{ width:70%; } .lkw-skeleton .bar.w90{ width:90%; }
@keyframes lkwsh{ 0%{background-position:200% 0;} 100%{background-position:-200% 0;} }

/* Modal */
.lkw-modal{ position:fixed; inset:0; z-index:99990; display:flex; align-items:center; justify-content:center; padding:18px; }
.lkw-modal[hidden]{ display:none; }
.lkw-modal-backdrop{ position:absolute; inset:0; background:rgba(8,18,30,.55); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); }
.lkw-modal-box{
  position:relative; z-index:1; width:100%; max-width:660px; max-height:86vh; overflow:auto;
  background:var(--lkw-bg); border-radius:18px; box-shadow:0 24px 70px rgba(0,0,0,.4); padding:10px;
  animation:lkwpop .22s ease;
}
@keyframes lkwpop{ from{opacity:0; transform:translateY(12px) scale(.985);} to{opacity:1; transform:none;} }
.lkw-modal-x{ position:absolute; top:8px; right:12px; z-index:2; border:0; background:transparent; font-size:2rem; line-height:1; color:var(--lkw-muted); cursor:pointer; padding:2px 10px; border-radius:10px; }
.lkw-modal-x:hover{ background:var(--lkw-soft); color:var(--lkw-text); }
.lkw-modal .lkw-result{ margin:0; }
.lkw-modal .lkw-card{ border:0; box-shadow:none; padding:18px; }

/* Tarjeta */
.lkw-card{
  border:1px solid var(--lkw-line); border-radius:16px; padding:24px;
  background:var(--lkw-bg); box-shadow:0 6px 24px rgba(16,32,52,.06);
  animation:lkwin .25s ease;
}
@keyframes lkwin{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:none;} }
.lkw-card h3{ margin:10px 0 6px; font-size:1.4rem; }
.lkw-dom{ font-weight:800; font-size:1.14em; word-break:break-all; }

/* Pestañas (Datos / WHOIS completo) — control segmentado */
.lkw-tabs{ display:inline-flex; gap:4px; margin:16px 0 6px; padding:4px;
  background:var(--lkw-soft); border:1px solid var(--lkw-line); border-radius:12px; }
.lkw-tab{ -webkit-appearance:none; appearance:none; border:0 !important; outline:0; background:transparent;
  cursor:pointer; font-size:.96rem; font-weight:600; color:var(--lkw-muted); padding:8px 18px;
  border-radius:9px; line-height:1.2; transition:background .15s ease, color .15s ease, box-shadow .15s ease; }
.lkw-tab:hover{ color:var(--lkw-text); }
.lkw-tab.is-active{ background:var(--lkw-bg); color:var(--lkw-accent); box-shadow:0 1px 4px rgba(16,32,52,.14); }
@media (prefers-color-scheme: dark){ .lkw-tab.is-active{ color:#9fd0ec; } }
.lkw-tabpanel{ padding-top:10px; }
.lkw-tabpanel[hidden]{ display:none; }
.lkw-rawpre{ margin:4px 0 0; background:#0b1b2b; color:#cfe3f2; padding:16px; border-radius:12px;
  overflow:auto; max-height:48vh; font-size:.86rem; line-height:1.5; white-space:pre-wrap; word-break:break-word; }
.lkw-ok{ border-top:4px solid var(--lkw-ok); }
.lkw-info{ border-top:4px solid var(--lkw-reg); }
.lkw-neutral{ border-top:4px solid var(--lkw-muted); }
.lkw-warn{ border-top:4px solid var(--lkw-warn); }
.lkw-modal .lkw-card{ border-top-width:4px; }

.lkw-badge{ display:inline-block; font-size:.8rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  padding:4px 12px; border-radius:999px; background:var(--lkw-soft); color:var(--lkw-muted); }
.lkw-badge-ok{ background:color-mix(in srgb,var(--lkw-ok) 16%,transparent); color:var(--lkw-ok); }
.lkw-badge-reg{ background:color-mix(in srgb,var(--lkw-reg) 16%,transparent); color:var(--lkw-reg); }
.lkw-badge-warn{ background:color-mix(in srgb,var(--lkw-warn) 18%,transparent); color:var(--lkw-warn); }

.lkw-price{ font-size:1.15rem; margin:14px 0; }
.lkw-price strong{ color:var(--lkw-accent); font-size:1.35rem; }
@media (prefers-color-scheme: dark){ .lkw-price strong{ color:#9fd0ec; } }
.lkw-price span{ color:var(--lkw-muted); font-size:1rem; }

.lkw-actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:18px; }

/* Tabla de datos */
.lkw-table{ width:100%; border-collapse:collapse; margin-top:8px; }
.lkw-table th, .lkw-table td{ text-align:left; padding:11px 8px; border-bottom:1px solid var(--lkw-line); vertical-align:top; font-size:1rem; }
.lkw-table th{ width:200px; color:var(--lkw-muted); font-weight:600; }
.lkw-table a{ color:var(--lkw-reg); word-break:break-all; }
.lkw-ns div{ font-family:ui-monospace,Menlo,Consolas,monospace; font-size:.95rem; }
.lkw-chips{ line-height:2; }
.lkw-chip{ display:inline-block; background:var(--lkw-soft); border:1px solid var(--lkw-line);
  border-radius:8px; padding:2px 10px; margin:2px 4px 2px 0; font-size:.88rem; }
.lkw-chip-ok{ background:var(--lkw-ok); border-color:var(--lkw-ok); color:#fff; font-weight:600; }
.lkw-src{ color:var(--lkw-muted); font-size:.9rem; margin:14px 0 0; }

.lkw-raw{ margin-top:16px; }
.lkw-raw summary{ cursor:pointer; color:var(--lkw-reg); font-weight:600; }
.lkw-raw pre{ margin-top:10px; background:#0b1b2b; color:#cfe3f2; padding:16px; border-radius:12px;
  overflow:auto; max-height:360px; font-size:.86rem; line-height:1.5; white-space:pre-wrap; word-break:break-word; }

/* SEO / FAQ */
.lkw-seo{ margin-top:44px; border-top:1px solid var(--lkw-line); padding-top:24px; }
.lkw-seo h2{ font-size:1.3rem; color:var(--lkw-accent); margin:22px 0 8px; }
@media (prefers-color-scheme: dark){ .lkw-seo h2{ color:#9fd0ec; } }
.lkw-seo p{ color:var(--lkw-text); }
.lkw-faq details{ border:1px solid var(--lkw-line); border-radius:12px; padding:12px 16px; margin:10px 0; background:var(--lkw-bg); }
.lkw-faq summary{ cursor:pointer; font-weight:600; font-size:1.05rem; }
.lkw-faq details[open]{ background:var(--lkw-soft); }
.lkw-faq p{ margin:10px 0 2px; color:var(--lkw-muted); }

@media (max-width:560px){
  .lkw-search{ flex-direction:column; align-items:stretch; padding:10px; gap:8px; }
  .lkw-search input[type=text]{ text-align:center; padding:12px; }
  .lkw-search-btn{ width:100%; }
  .lkw-table th{ width:auto; display:block; padding-bottom:0; border:0; }
  .lkw-table td{ display:block; padding-top:2px; }
  .lkw-actions .lkw-btn{ width:100%; }
}
