/* Cabecera común con freemanlp.es: banner, avatar con anillo giratorio e identidad propia. */
.fl-hero,.fl-hero *{box-sizing:border-box}
.fl-hero{position:relative;isolation:isolate;width:100%;max-width:1180px;margin:18px auto 24px;overflow:hidden;border-radius:24px;color:#f4f7fc;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:#101c30 url("/bannertwitch.png") 50% 5%/cover no-repeat;box-shadow:0 16px 36px #0004}
.fl-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,#050816e0 0%,#05081699 55%,#05081655 100%)}
.fl-hero-in{display:flex;align-items:center;gap:32px;padding:28px 32px;min-width:0}
.fl-owner{display:flex;flex:0 0 140px;flex-direction:column;align-items:center;gap:12px;min-height:44px;color:#e5edf8!important;font-size:.78rem;line-height:1.4;text-align:center;text-decoration:none}
.fl-owner:hover .fl-volver{text-decoration:underline;text-underline-offset:3px}
.fl-owner:focus-visible{outline:3px solid #ffd400;outline-offset:4px;border-radius:12px}
.fl-avatar{position:relative;display:block;width:120px;height:120px;flex-shrink:0}
.fl-ring{position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 180deg,#fff,#1b3d9c,#ffd400,#fff);filter:blur(.8px);opacity:.95;animation:fl-giro 12s linear infinite}
.fl-avatar img{position:relative;display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;border:4px solid #050816;background:#000;box-shadow:0 12px 30px #000b}
@keyframes fl-giro{to{transform:rotate(360deg)}}
.fl-brand{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}
.fl-logo{display:block;width:min(440px,100%);height:115px;object-fit:contain;object-position:left center}
.fl-intro{max-width:750px;margin:0;color:#e2e8f0;font-size:1rem;line-height:1.6;text-shadow:0 0 14px #000c}
.fl-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.fl-tags li{padding:4px 11px;border:1px solid #94a3b88c;border-radius:999px;background:#0f172ac2;color:#dce7f6;font-size:.8rem;line-height:1.5}
@media(max-width:640px){.fl-hero{width:calc(100% - 20px);margin:10px auto 18px;border-radius:18px}.fl-hero-in{gap:16px;padding:18px 14px;align-items:flex-start}.fl-owner{flex-basis:88px;font-size:.68rem}.fl-avatar{width:84px;height:84px}.fl-logo{height:80px}.fl-intro{font-size:.88rem}.fl-tags{gap:5px}.fl-tags li{padding:3px 8px;font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.fl-ring{animation:none}}
@media(forced-colors:active){.fl-hero{border:1px solid CanvasText}.fl-ring{display:none}}

/* Entradas de estudio: misma identidad sobre la topbar propia, que conserva título, resumen y controles. */
.topbar.study-topbar.fl-study{position:relative;isolation:isolate;grid-template-columns:130px 200px minmax(0,1fr) auto;gap:24px;align-items:center;color:#f4f7fc;background:#101c30 url("/bannertwitch.png") 50% 5%/cover no-repeat}
.topbar.fl-study::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,#050816e6 0%,#050816b3 60%,#05081680 100%)}
.topbar.fl-study .fl-owner{flex-basis:auto}
.topbar.fl-study .fl-avatar{width:96px;height:96px}
.topbar.fl-study h1,.topbar.fl-study .eyebrow{color:#fff}
.topbar.fl-study .muted{color:#e2e8f0}
.topbar.fl-study .study-brand img{width:200px}
@media(max-width:1000px){.topbar.study-topbar.fl-study{grid-template-columns:110px minmax(0,1fr);gap:12px 16px}.topbar.fl-study .fl-owner{grid-row:1/span 2}.topbar.fl-study .study-brand{grid-column:2}.topbar.fl-study .study-heading{grid-column:2}.topbar.fl-study .summary{grid-column:1/-1}}
@media(max-width:640px){.topbar.study-topbar.fl-study{grid-template-columns:88px minmax(0,1fr)}.topbar.fl-study .fl-avatar{width:76px;height:76px}.topbar.fl-study .fl-owner{font-size:.68rem;grid-row:auto}.topbar.fl-study .study-brand img{width:min(170px,100%)}.topbar.fl-study .study-heading{grid-column:1/-1}}
@media print{.topbar.study-topbar.fl-study{background:none;color:#000}.topbar.fl-study::before,.topbar.fl-study .fl-owner{display:none}.topbar.fl-study h1,.topbar.fl-study .eyebrow,.topbar.fl-study .muted{color:#000}}

/* Temarios: identidad sobre la topbar propia; el título y el contenido no cambian. */
.topbar.fl-tema{position:relative;isolation:isolate;align-items:center;justify-content:flex-start;gap:24px;color:#f4f7fc;background:#101c30 url("/bannertwitch.png") 50% 5%/cover no-repeat}
.topbar.fl-tema::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,#050816e6 0%,#050816b3 60%,#05081680 100%)}
.topbar.fl-tema .fl-owner{flex:0 0 120px}
.topbar.fl-tema .fl-avatar{width:92px;height:92px}
.fl-marca{display:block;flex:0 0 180px;border-radius:8px}
.fl-marca img{display:block;width:100%;height:auto}
.fl-marca:focus-visible{outline:3px solid #ffd400;outline-offset:4px}
.topbar.fl-tema>div:not(.summary){flex:1;min-width:0;overflow-wrap:anywhere}.topbar.fl-tema>.summary{flex:0 0 auto}
.topbar.fl-tema h1,.topbar.fl-tema .eyebrow{color:#fff}
.topbar.fl-tema .muted{color:#e2e8f0}
@media(max-width:800px){.topbar.fl-tema{flex-wrap:wrap;gap:12px 16px;padding:16px 14px}.topbar.fl-tema .fl-owner{flex-basis:88px;font-size:.68rem}.topbar.fl-tema .fl-avatar{width:76px;height:76px}.fl-marca{flex:1 1 120px;max-width:170px}.topbar.fl-tema>div:not(.summary){flex-basis:100%}}
@media print{.topbar.fl-tema{background:none;color:#000}.topbar.fl-tema::before,.topbar.fl-tema .fl-owner,.fl-marca{display:none}.topbar.fl-tema h1,.topbar.fl-tema .eyebrow,.topbar.fl-tema .muted{color:#000}}

.topbar.fl-tema .pill{color:#fff;background:#0f172ac2;border:1px solid #94a3b88c;text-decoration:none}
.topbar.fl-tema .pill:hover{text-decoration:underline;text-underline-offset:3px}
.topbar.fl-tema .pill:focus-visible{outline:3px solid #ffd400;outline-offset:3px}
@media(max-width:800px){.topbar.fl-tema{flex-direction:row;align-items:center}.topbar.fl-tema .fl-owner{flex:0 0 76px;gap:8px;font-size:.62rem}.topbar.fl-tema .fl-avatar{width:62px;height:62px}.topbar.fl-tema .fl-marca{flex:1 1 110px;max-width:150px}.topbar.fl-tema h1{font-size:1.1rem;line-height:1.3}.topbar.fl-tema .muted{font-size:.85rem}.topbar.fl-tema>.summary{flex-basis:100%}}
