*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7fbfd;color:#102f41;font-family:kelson-sans,Helvetica,sans-serif}.digi-kb{max-width:1280px;margin:0 auto;padding:42px 22px 70px}.kb-hero{background:linear-gradient(135deg,#ffffff 0%,#eef9fd 100%);border:1px solid #d8eef6;border-radius:28px;padding:34px;box-shadow:0 14px 40px rgba(0,0,0,.06);margin-bottom:28px}.kb-label{display:inline-block;color:#e64398;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:13px;margin-bottom:10px}.kb-hero h1{margin:0 0 10px;color:#0879a7;font-size:44px;line-height:1.05}.kb-hero p{font-size:18px;line-height:1.6;max-width:780px;margin:0 0 24px}.kb-search-wrap{position:relative;max-width:780px}#faqSearch{width:100%;padding:17px 54px 17px 20px;border:2px solid #cfeaf4;border-radius:18px;font-size:17px;outline:none;background:white}#faqSearch:focus{border-color:#0879a7;box-shadow:0 0 0 4px rgba(8,121,167,.12)}#clearSearch{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:50%;background:#eef7fb;color:#0879a7;font-size:24px;line-height:1;cursor:pointer}.kb-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:28px;align-items:start}.kb-sidebar{position:sticky;top:24px;background:#fff;border:1px solid #d8eef6;border-radius:24px;padding:20px;box-shadow:0 14px 40px rgba(0,0,0,.06);max-height:calc(100vh - 48px);overflow:auto}.kb-sidebar h2{font-size:21px;margin:0 0 14px;color:#0879a7}.faq-list{display:flex;flex-direction:column;gap:10px}.faq-nav-item{width:100%;border:1px solid #d8eef6;background:#f4fbfe;color:#064f70;border-radius:16px;padding:14px 42px 14px 14px;text-align:left;font-weight:700;font-size:15.5px;line-height:1.25;cursor:pointer;position:relative;transition:.2s}.faq-nav-item:after{content:'+';position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:26px;color:#e64398}.faq-nav-item:hover{background:#e7f7fc}.faq-nav-item.active{background:#0879a7;color:white;border-color:#0879a7}.faq-nav-item.active:after{content:'−';color:white}.kb-main{min-width:0}.empty-state,.faq-content{background:white;border-radius:24px;border:1px solid #d8eef6;box-shadow:0 14px 40px rgba(0,0,0,.06)}.empty-state{padding:54px;text-align:center}.empty-state h2{color:#0879a7;margin-top:0}.faq-content{display:none;padding:34px;border-left:7px solid #e64398}.faq-content.show{display:block;animation:fadeUp .25s ease}@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.faq-content h2{color:#0879a7;font-size:34px;line-height:1.15;margin:0 0 18px}.faq-content h3{color:#e64398;font-size:25px;margin:30px 0 12px}.faq-content h4{color:#0879a7;font-size:20px;margin:22px 0 10px}.faq-content p,.faq-content li{font-size:18px;line-height:1.75}.faq-content p{margin:0 0 16px}.faq-content ul{margin:0 0 18px 22px;padding:0}.faq-content li{margin-bottom:10px}.video-box{margin:22px 0 28px;padding:16px;background:#f4fbfe;border:1px solid #d8eef6;border-radius:22px}.video-box strong{display:block;color:#0879a7;margin-bottom:12px}.video-frame{position:relative;width:100%;padding-top:56.25%;overflow:hidden;border-radius:18px;background:#d8eef6}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.source-note{border-top:1px solid #d8eef6;margin-top:30px;padding-top:16px;color:#466476;font-size:14px}.back-faqs{text-align:center;margin-top:28px}.back-button{display:inline-block;padding:13px 30px;background:#0879a7;color:#fff!important;border-radius:40px;text-decoration:none!important;font-weight:800;transition:.2s}.back-button:hover{background:#065f82;transform:translateY(-2px)}#faqBackTop{position:fixed;right:28px;bottom:86px;width:54px;height:54px;border-radius:50%;background:#e64398;color:#fff!important;display:none;align-items:center;justify-content:center;font-size:27px;font-weight:800;text-decoration:none!important;box-shadow:0 10px 25px rgba(0,0,0,.22);z-index:99999}.search-count{margin:0 0 12px;color:#466476;font-size:14px}.no-results{padding:20px;border:1px dashed #cfeaf4;border-radius:16px;background:#f8fcfe;color:#466476}@media(max-width:900px){.digi-kb{padding:28px 14px 60px}.kb-hero{padding:26px 20px}.kb-hero h1{font-size:34px}.kb-layout{grid-template-columns:1fr}.kb-sidebar{position:relative;top:auto;max-height:none}.faq-content{padding:24px}.faq-content h2{font-size:27px}.faq-content h3{font-size:22px}.faq-content p,.faq-content li{font-size:16.5px}.empty-state{display:none}#faqBackTop{right:18px;bottom:82px;width:48px;height:48px}}


/* === Adaptación exacta del diseño FAQ original al bloque HCP === */
.app{max-width:1280px;margin:0 auto;padding:42px 22px 70px}
.hero{background:linear-gradient(135deg,#ffffff 0%,#eef9fd 100%);border:1px solid #d8eef6;border-radius:28px;padding:34px;box-shadow:0 14px 40px rgba(0,0,0,.06);margin-bottom:28px}
.hero:before{content:'DIGI4MSK PRACTICAL GUIDE';display:inline-block;color:#e64398;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:13px;margin-bottom:10px}
.hero h1{margin:0 0 10px;color:#0879a7;font-size:44px;line-height:1.05}
.hero p{font-size:18px;line-height:1.6;max-width:780px;margin:0 0 24px}

#search{width:100%;max-width:780px;padding:17px 20px;border:2px solid #cfeaf4;border-radius:18px;font-size:17px;outline:none;background:white;margin:0 0 28px}
#search:focus{border-color:#0879a7;box-shadow:0 0 0 4px rgba(8,121,167,.12)}

.knowledge-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:28px;align-items:start}
.sidebar{position:sticky;top:24px;background:#fff;border:1px solid #d8eef6;border-radius:24px;padding:20px;box-shadow:0 14px 40px rgba(0,0,0,.06);max-height:calc(100vh - 48px);overflow:auto}
.sidebar h2{font-size:21px;margin:0 0 14px;color:#0879a7}

.topic-group{margin-bottom:10px}
.topic-head{width:100%;border:1px solid #d8eef6;background:#f4fbfe;color:#064f70;border-radius:16px;padding:14px 42px 14px 14px;text-align:left;font-weight:700;font-size:15.5px;line-height:1.25;cursor:pointer;position:relative;transition:.2s;display:block}
.topic-head:hover{background:#e7f7fc}
.topic-head.active{background:#0879a7;color:white;border-color:#0879a7}
.topic-title{display:block}
.topic-code{display:none}
.topic-symbol{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:26px;color:#e64398}
.topic-head.active .topic-symbol{color:white}

.subtopic-list{display:flex;flex-direction:column;gap:8px;padding:10px 0 2px 12px}
.case-btn{width:100%;border:1px solid #d8eef6;background:#fff;color:#064f70;border-radius:14px;padding:12px 14px;text-align:left;font-weight:700;font-size:14px;line-height:1.25;cursor:pointer;transition:.2s;margin:0}
.case-btn:hover{background:#e7f7fc}
.case-btn.active{background:#0879a7;color:#fff;border-color:#0879a7}

.article{min-width:0;background:white;border-radius:24px;border:1px solid #d8eef6;box-shadow:0 14px 40px rgba(0,0,0,.06);padding:34px;border-left:7px solid #e64398}
.article article{animation:fadeUp .25s ease}
.article-kicker{display:inline-block;color:#e64398;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:13px;margin-bottom:10px}
.article h2{color:#0879a7;font-size:34px;line-height:1.15;margin:0 0 18px}
.article h3{color:#e64398;font-size:25px;margin:30px 0 12px}
.article p,.article li{font-size:18px;line-height:1.75}
.article p{margin:0 0 16px}
.article ul{margin:0 0 18px 22px;padding:0}
.article li{margin-bottom:10px}

.language-downloads{border-top:1px solid #d8eef6;margin-top:30px;padding-top:20px;text-align:center}
.download-title{color:#0879a7;font-size:18px!important;font-weight:800;margin:0 0 18px!important}
.flag-row{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.flag-download{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 12px;border-radius:14px;color:#064f70;text-decoration:none!important;transition:.2s}
.flag-download:hover{background:#e7f7fc;transform:translateY(-2px)}
.flag-img{
    width:30px;
    height:30px;
    display:block;
    object-fit:contain;
    margin:0 auto 4px;
    transition:transform .2s ease;
}

.flag-download:hover .flag-img{
    transform:scale(1.08);
}
.lang-name{font-size:12px;font-weight:800}

.back{display:block;width:max-content;margin:28px auto 0;padding:13px 30px;background:#0879a7;color:#fff!important;border-radius:40px;text-decoration:none!important;font-weight:800;transition:.2s}
.back:hover{background:#065f82;transform:translateY(-2px)}
.up{position:fixed;right:28px;bottom:86px;width:54px;height:54px;border-radius:50%;background:#e64398;color:#fff!important;display:flex;align-items:center;justify-content:center;font-size:27px;font-weight:800;text-decoration:none!important;box-shadow:0 10px 25px rgba(0,0,0,.22);z-index:99999}

@media(max-width:900px){
  .app{padding:28px 14px 60px}
  .hero{padding:26px 20px}
  .hero h1{font-size:34px}
  .knowledge-layout{grid-template-columns:1fr}
  .sidebar{position:relative;top:auto;max-height:none}
  .article{padding:24px}
  .article h2{font-size:27px}
  .article h3{font-size:22px}
  .article p,.article li{font-size:16.5px}
  .up{right:18px;bottom:82px;width:48px;height:48px}
}


/* === Ajustes de jerarquía visual y numeración === */
.topic-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}

.topic-number{
  flex:0 0 auto;
  font-weight:800;
}

.subtopic-list{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  padding:10px 0 2px 16px!important;
  margin-left:8px!important;
  border-left:2px solid #d8eef6!important;
}

.case-btn{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  background:#fff!important;
  color:#466476!important;
  border:1px solid #e2eff5!important;
  border-radius:12px!important;
  padding:10px 12px!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.3!important;
  box-shadow:none!important;
}

.case-btn:hover{
  background:#eef8fc!important;
  color:#0879a7!important;
  border-color:#cfe7f1!important;
}

.case-btn.active{
  background:#e7f7fc!important;
  color:#0879a7!important;
  border-color:#bcddea!important;
  box-shadow:inset 3px 0 0 #e64398!important;
}

.case-number{
  flex:0 0 auto;
  color:#e64398!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.35!important;
}

.case-title{
  flex:1 1 auto;
}

/* Todos los acordeones empiezan cerrados */
.topic-group:first-child .subtopic-list{
  /* sin apertura forzada */
}

/* Estado inicial orientativo de profesionales */
.empty-state-professional{
  padding:44px 34px;
  text-align:center;
}
.empty-state-professional h2{
  color:#0879a7!important;
  font-size:28px!important;
  margin:0 0 12px!important;
}
.empty-state-professional p{
  color:#466476!important;
  font-size:16px!important;
  line-height:1.6!important;
  margin:0!important;
}