/* Meraki World V34 - PWA, velocidad final y experiencia móvil */
:root{
  --mw-v34-ink:#101828;
  --mw-v34-muted:#667085;
  --mw-v34-line:#e5e7eb;
  --mw-v34-bg:#f8fafc;
  --mw-v34-brand:#111827;
  --mw-v34-accent:#ec4899;
  --mw-v34-ok:#067647;
  --mw-v34-warn:#b54708;
  --mw-v34-danger:#b42318;
  --mw-v34-radius:24px;
  --mw-v34-shadow:0 18px 55px rgba(15,23,42,.12);
}
html{scroll-behavior:smooth;}
body.mw-v34-pwa-velocidad{overflow-x:hidden;}
body.mw-v34-pwa-velocidad img{max-width:100%;height:auto;}
body.mw-v34-pwa-velocidad img[loading="lazy"]{content-visibility:auto;}
body.mw-v34-pwa-velocidad .mw-main-v12,
body.mw-v34-pwa-velocidad .main-content{max-width:100vw;}
body.mw-v34-pwa-velocidad table{max-width:100%;}
body.mw-v34-pwa-velocidad .table-responsive,
body.mw-v34-pwa-velocidad .mw-perf-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
body.mw-v34-pwa-velocidad .mw-v15-float-btn,
body.mw-v34-pwa-velocidad .mw-floating-cart,
body.mw-v34-pwa-velocidad .mw-v24-icon-btn,
body.mw-v34-pwa-velocidad .mw-v24-admin-user{touch-action:manipulation;}
.mw-v34-install-card{position:fixed;left:16px;right:16px;bottom:18px;z-index:2147483000;display:none;max-width:520px;margin:auto;background:rgba(17,24,39,.96);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:14px;box-shadow:0 24px 70px rgba(15,23,42,.3);backdrop-filter:blur(18px);}
.mw-v34-install-card.is-visible{display:flex;gap:12px;align-items:center;}
.mw-v34-install-icon{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,#ec4899,#f59e0b);display:grid;place-items:center;flex:0 0 auto;font-size:23px;}
.mw-v34-install-card strong{display:block;font-size:14px;line-height:1.15;}
.mw-v34-install-card small{display:block;color:rgba(255,255,255,.72);font-weight:700;margin-top:2px;}
.mw-v34-install-card .mw-v34-install-copy{min-width:0;flex:1;}
.mw-v34-install-actions{display:flex;gap:8px;align-items:center;}
.mw-v34-install-actions button{border:0;border-radius:999px;min-height:38px;padding:0 13px;font-weight:900;cursor:pointer;}
.mw-v34-install-actions [data-mw-v34-install]{background:#fff;color:#111827;}
.mw-v34-install-actions [data-mw-v34-dismiss]{background:rgba(255,255,255,.12);color:#fff;}
.mw-v34-offline-pill{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:2147483000;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:999px;padding:9px 14px;font-weight:950;box-shadow:0 16px 45px rgba(15,23,42,.16);display:none;}
.mw-v34-offline-pill.is-visible{display:block;}
.mw-v34-pwa-panel{padding:8px 0 36px;color:var(--mw-v34-ink);}
.mw-v34-pwa-hero{background:radial-gradient(circle at top left,rgba(236,72,153,.28),transparent 32%),linear-gradient(135deg,#111827,#1f2937 54%,#7c2d55);color:#fff;border-radius:32px;padding:28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;box-shadow:var(--mw-v34-shadow);overflow:hidden;}
.mw-v34-pwa-hero h1{font-size:clamp(32px,5vw,62px);line-height:.94;letter-spacing:-.065em;margin:8px 0 10px;font-weight:950;}
.mw-v34-kicker{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);border-radius:999px;padding:8px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;}
.mw-v34-pwa-hero p{max-width:760px;color:rgba(255,255,255,.76);font-weight:750;margin:0;font-size:16px;}
.mw-v34-score{width:132px;height:132px;border-radius:50%;background:#fff;color:#111827;display:grid;place-items:center;text-align:center;box-shadow:inset 0 0 0 9px #f3f4f6;}
.mw-v34-score strong{font-size:36px;letter-spacing:-.04em;line-height:1;}
.mw-v34-score span{font-size:11px;text-transform:uppercase;color:#667085;font-weight:950;letter-spacing:.08em;}
.mw-v34-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px;}
.mw-v34-grid.two{grid-template-columns:1.08fr .92fr;align-items:start;}
.mw-v34-card{background:#fff;border:1px solid var(--mw-v34-line);border-radius:26px;padding:18px;box-shadow:0 12px 34px rgba(15,23,42,.06);min-width:0;}
.mw-v34-card.stat small{font-size:12px;color:#667085;font-weight:950;text-transform:uppercase;letter-spacing:.06em;}
.mw-v34-card.stat strong{display:block;font-size:30px;letter-spacing:-.04em;margin-top:4px;}
.mw-v34-card.stat span{display:block;color:#667085;font-weight:750;font-size:13px;}
.mw-v34-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px;}
.mw-v34-title i{width:42px;height:42px;border-radius:15px;background:#fdf2f8;color:#be185d;display:grid;place-items:center;flex:0 0 auto;font-size:20px;}
.mw-v34-title h2{font-size:22px;margin:0;font-weight:950;letter-spacing:-.035em;}
.mw-v34-title p{margin:3px 0 0;color:#667085;font-weight:700;}
.mw-v34-checklist{display:grid;gap:10px;margin:0;padding:0;list-style:none;}
.mw-v34-checklist li{display:flex;gap:10px;align-items:flex-start;border:1px solid #eef0f3;border-radius:18px;padding:12px;background:#f8fafc;font-weight:800;}
.mw-v34-checklist li::before{content:'✓';width:24px;height:24px;border-radius:999px;background:#dcfae6;color:#067647;display:grid;place-items:center;flex:0 0 auto;font-size:13px;font-weight:950;}
.mw-v34-checklist li.warn::before{content:'!';background:#fef0c7;color:#b54708;}
.mw-v34-actions{display:grid;gap:10px;}
.mw-v34-action{display:flex;gap:12px;align-items:center;border:1px solid #e4e7ec;border-radius:18px;background:#fff;padding:13px 14px;color:#111827;text-decoration:none;font-weight:900;transition:transform .16s ease, box-shadow .16s ease,border-color .16s ease;}
.mw-v34-action:hover{transform:translateY(-1px);box-shadow:0 14px 36px rgba(15,23,42,.09);border-color:#d0d5dd;color:#111827;}
.mw-v34-action i{width:36px;height:36px;border-radius:13px;background:#111827;color:#fff;display:grid;place-items:center;}
.mw-v34-action span{display:block;color:#667085;font-size:12px;font-weight:750;margin-top:1px;}
.mw-v34-table-wrap{overflow:auto;border:1px solid #eef0f3;border-radius:18px;}
.mw-v34-table{width:100%;border-collapse:collapse;min-width:680px;}
.mw-v34-table th,.mw-v34-table td{padding:12px 14px;border-bottom:1px solid #eef0f3;text-align:left;vertical-align:middle;}
.mw-v34-table th{background:#f8fafc;color:#475467;text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:950;}
.mw-v34-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:950;white-space:nowrap;}
.mw-v34-badge.ok{background:#dcfae6;color:#067647;}
.mw-v34-badge.warn{background:#fef0c7;color:#b54708;}
.mw-v34-badge.bad{background:#fee4e2;color:#b42318;}
.mw-v34-code{display:block;background:#f8fafc;border:1px solid #eef0f3;border-radius:16px;padding:12px;white-space:pre-wrap;overflow:auto;color:#344054;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;}
.mw-v34-note{background:#f8fafc;border:1px solid #e4e7ec;border-radius:20px;padding:14px;color:#475467;font-weight:750;}
@media(max-width:1100px){.mw-v34-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.mw-v34-grid.two{grid-template-columns:1fr}.mw-v34-pwa-hero{grid-template-columns:1fr}.mw-v34-score{width:100%;height:auto;border-radius:22px;padding:18px}}
@media(max-width:680px){.mw-v34-grid{grid-template-columns:1fr}.mw-v34-pwa-hero{padding:22px;border-radius:24px}.mw-v34-card{border-radius:22px;padding:15px}.mw-v34-install-card{bottom:12px;border-radius:20px}.mw-v34-install-card.is-visible{align-items:flex-start}.mw-v34-install-actions{flex-direction:column}.mw-v34-install-actions button{width:100%;min-width:84px}.mw-v34-install-icon{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
