:root{font-family:'DM Sans',sans-serif;color:#1f1919;background:#faf6f6;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#1f1919;--muted:#7d827b;--green:#991b1b;--line:#e8e9e3;--paper:#fff;--serif:'Manrope',sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:320px}.demo-banner{height:29px;background:#fdf2f2;color:#991b1b;display:flex;align-items:center;justify-content:center;gap:8px;font-size:9px;font-weight:700;letter-spacing:1.25px}.demo-dot{width:6px;height:6px;background:#dc2626;border-radius:50%}.site-header{height:72px;border-bottom:1px solid #e9eae5;background:#fbfbf9;display:flex;align-items:center;padding:0 max(calc((100% - 1160px)/2),32px);gap:56px}.brand{display:inline-flex;align-items:center;gap:9px;font:800 19px var(--serif);letter-spacing:-1px;color:#7f1d1d;text-decoration:none;white-space:nowrap}.brand-light{font-weight:500;color:#5a6157}.brand-mark{width:24px;height:24px;display:flex;align-items:flex-end;gap:2px;padding:3px 2px}.brand-mark i{display:block;width:5px;background:#991b1b;border-radius:5px 5px 2px 2px;transform:skew(-23deg)}.brand-mark i:nth-child(1){height:10px}.brand-mark i:nth-child(2){height:17px}.brand-mark i:nth-child(3){height:13px}.main-nav{height:100%;display:flex;align-items:center;gap:30px}.main-nav a{height:100%;display:flex;align-items:center;position:relative;color:#5f665c;text-decoration:none;font-size:12px;font-weight:600}.main-nav .nav-active{color:#991b1b}.nav-active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#b91c1c;border-radius:3px}.location-button{margin-left:auto;border:1px solid #e4e6df;background:#fff;color:#434a43;border-radius:7px;padding:9px 11px;display:flex;align-items:center;gap:8px;font:600 11px 'DM Sans',sans-serif;cursor:pointer}.location-button svg{width:14px;height:14px;fill:none;stroke:#991b1b;stroke-width:1.7}.chevron{font-size:15px;color:#888}.main{max-width:1160px;margin:0 auto}main{max-width:1160px;margin:0 auto}.intro{padding:48px 0 27px;display:flex;justify-content:space-between;align-items:flex-end}.eyebrow{margin:0 0 12px;color:#5f665c;font-size:9px;font-weight:700;letter-spacing:1.5px}.eyebrow-line{display:inline-block;width:18px;height:1px;background:#719278;vertical-align:middle;margin-right:6px}.intro h1{font:700 47px/1.13 var(--serif);letter-spacing:-2.5px;margin:0;color:#241818}.intro h1 em{font-style:normal;color:#b91c1c}.intro-copy{margin:11px 0 0;font-size:13px;color:#5f665c}.intro-date{font-size:10px;color:#666d63;padding:0 1px 3px;display:flex;align-items:center;gap:7px}.date-icon{font-size:16px;color:#809080}.place-strip{display:flex;align-items:center;gap:16px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.place-label{font-size:10px;color:#535b52;font-weight:700;white-space:nowrap}.tiny-pin{font-size:15px;color:#b91c1c;vertical-align:-1px;margin-right:4px}.place-chips{display:flex;gap:6px;overflow:auto;scrollbar-width:none}.place-chips::-webkit-scrollbar{display:none}.place-chip{white-space:nowrap;border:1px solid transparent;color:#5f665c;background:transparent;border-radius:4px;padding:7px 9px;font:500 10px 'DM Sans',sans-serif;cursor:pointer}.place-chip.selected{border-color:#fca5a5;background:#fdf2f2;color:#991b1b;font-weight:700}.place-chip span{margin-left:4px}.manage-places{white-space:nowrap;margin-left:auto;border:0;background:none;color:#b91c1c;font:700 10px 'DM Sans',sans-serif;cursor:pointer}.manage-places span{text-decoration:underline;text-underline-offset:3px}.feed-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:50px;padding-top:35px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between}.small-eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:7px}.section-heading h2{font:700 23px var(--serif);letter-spacing:-.7px;margin:0;color:#241818}.sort-button{border:1px solid #e8e9e3;background:#fff;border-radius:5px;padding:7px 9px;color:#666e65;font:500 10px 'DM Sans',sans-serif}.sort-button span{font-size:14px;margin-left:12px}.topic-list{display:flex;gap:7px;margin:18px 0 17px;overflow:auto;scrollbar-width:none}.topic{border:1px solid #e6e8e1;background:transparent;color:#5f665c;border-radius:4px;padding:6px 11px;font:500 10px 'DM Sans',sans-serif;white-space:nowrap;cursor:pointer}.topic.active{border-color:#991b1b;background:#991b1b;color:#fff}.lead-story{background:var(--paper);border:1px solid #ebede7;border-radius:7px;overflow:hidden}.lead-art{height:184px;position:relative;overflow:hidden;background:linear-gradient(120deg,#d6e5df,#bfd8ce 54%,#afcabe)}.sun{position:absolute;right:18%;top:26px;width:54px;height:54px;border-radius:50%;background:#f6e6bd;opacity:.92}.coast{position:absolute;left:-4%;right:-4%;height:80px;border-radius:50% 42% 0 0 / 35% 46% 0 0}.coast-back{bottom:20px;background:#769a87;transform:rotate(-3deg);opacity:.74}.coast-front{bottom:-20px;height:78px;background:#507d6c;transform:rotate(2deg)}.lead-art:after{content:'';position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(170deg,transparent 45%,#9bb9ae 46%,#9bb9ae 48%,transparent 49%);opacity:.6}.art-caption{position:absolute;z-index:2;left:16px;bottom:13px;color:#fff;font-size:8px;font-weight:700;letter-spacing:1.2px}.lead-content{padding:19px 20px 17px}.story-meta{display:flex;align-items:center;gap:9px;color:#666d63;font-size:8px;font-weight:600;letter-spacing:.6px}.tag{font-size:8px;font-weight:700;letter-spacing:.8px}.tag-green{color:#dc2626}.tag-orange{color:#ad7942}.tag-purple{color:#806999}.tag-blue{color:#5c83a0}.lead-content h3{font:700 18px/1.35 var(--serif);letter-spacing:-.5px;margin:10px 0 8px;color:#261a1a;max-width:610px}.story-summary{margin:0;color:#71776f;font-size:11px;line-height:1.7;max-width:660px}.story-footer,.row-bottom{display:flex;align-items:center;gap:14px}.story-footer{margin-top:16px}.place-tag{color:#5f665c;font-size:9px;white-space:nowrap}.place-tag span{color:#729075;font-size:12px}.read-link{margin-left:auto;text-decoration:none;color:#991b1b;font-size:10px;font-weight:700}.read-link span{margin-left:5px}.story-list{margin-top:12px}.story-row{position:relative;display:flex;gap:13px;background:#fff;border:1px solid #ebede7;border-radius:6px;padding:16px 14px;margin-top:8px;align-items:flex-start}.row-icon{width:31px;height:31px;border-radius:6px;display:grid;place-items:center;flex:none;font-size:17px}.icon-gold{background:#f7f0e6;color:#b78649}.icon-purple{background:#f1eef5;color:#9079a4}.icon-blue{background:#edf3f6;color:#6c91aa}.row-copy{min-width:0;padding-right:20px;flex:1}.row-copy h3{font:700 13px/1.4 var(--serif);letter-spacing:-.1px;margin:6px 0 4px;color:#343a34}.row-summary{font-size:10px;color:#6b7168;margin:0;line-height:1.5}.row-bottom{margin-top:10px;gap:12px}.source-count{font-size:9px;color:#666d63}.source-count:before{content:'·';margin-right:6px;color:#a1a69e}.source-count.official{color:#4c7555}.row-arrow{position:absolute;right:14px;top:15px;color:#8c958b;text-decoration:none;font-size:13px}.load-more{display:block;margin:17px auto 0;border:1px solid #e3e6de;background:transparent;color:#55715b;border-radius:5px;padding:9px 13px;font:600 10px 'DM Sans',sans-serif;cursor:pointer}.load-more span{margin-left:12px}.empty-state{padding:24px;color:#666d63;text-align:center;font-size:12px}.sidebar{padding-top:0}.side-card{position:relative;background:#fff;border:1px solid #e9ebe4;border-radius:7px;padding:17px 17px 16px;overflow:hidden;margin-bottom:12px}.welcome-card{background:#fdf2f2;border-color:#e5ebe2}.side-card-top,.audio-heading,.service-heading{display:flex;align-items:center;gap:9px}.sun-mark{width:25px;height:25px;border-radius:50%;background:#fee2e2;color:#5a805e;display:grid;place-items:center;font-size:14px}.card-kicker{font-size:8px;letter-spacing:1.1px;font-weight:700;color:#5f665c;margin:0}.welcome-card h3{font:700 17px/1.35 var(--serif);letter-spacing:-.45px;max-width:220px;margin:17px 0 7px;color:#2e1e1e}.welcome-card>p,.service-card>p{font-size:10px;line-height:1.6;color:#5f665c;margin:0 0 14px;max-width:225px}.outline-button{position:relative;z-index:1;width:100%;display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #dce4db;color:#456d4e;border-radius:4px;padding:9px 10px;font:700 9px 'DM Sans',sans-serif;cursor:pointer}.outline-button span,.side-link span{font-size:14px}.card-decoration{position:absolute;width:110px;height:110px;right:-66px;bottom:-70px;border:1px solid #fecaca;border-radius:50%;box-shadow:0 0 0 13px #fef2f2,0 0 0 26px #fef2f2}.audio-card{padding-bottom:14px}.audio-icon,.service-icon{width:29px;height:29px;border-radius:6px;background:#f2eee4;color:#9a8054;display:grid;place-items:center;font-size:17px}.audio-heading .card-kicker,.service-heading .card-kicker{margin-bottom:3px}.audio-heading h3,.service-heading h3{font:700 12px var(--serif);margin:0;color:#343a34}.audio-description{font-size:10px;color:#6b7168;margin:11px 0 12px}.player-row{display:flex;align-items:center;gap:9px}.play-button{width:25px;height:25px;background:#991b1b;color:white;border:0;border-radius:50%;font-size:9px;padding-left:8px;cursor:pointer}.player-track{flex:1}.track-top{display:flex;justify-content:space-between;color:#90968e;font-size:8px;margin-bottom:5px}.track-line{height:3px;background:#e7e9e3;border-radius:3px}.track-line i{display:block;background:#dc2626;height:3px;width:36%;border-radius:3px}.audio-label{font-size:7px;font-weight:700;letter-spacing:.8px;color:#939990}.service-icon{background:#edf2ee;color:#5f8068}.service-card>p{margin:11px 0 10px}.service-status{display:flex;align-items:center;gap:6px;background:#f7f8f5;border-radius:4px;padding:8px;color:#5f665c;font-size:9px}.status-dot{width:6px;height:6px;background:#a3a99e;border-radius:50%}.side-link{display:flex;justify-content:space-between;align-items:center;margin-top:12px;color:#991b1b;text-decoration:none;font-size:9px;font-weight:700}.sidebar-note{font-size:9px;line-height:1.55;color:#6b7168;margin:15px 3px}.sidebar-note span{color:#66816a;margin-right:5px}.site-footer{max-width:1160px;border-top:1px solid #e7e9e2;margin:43px auto 0;padding:20px 0 24px;display:flex;align-items:center;color:#666d63;font-size:9px;gap:14px}.footer-brand{font-size:14px}.footer-brand .brand-mark{transform:scale(.82);transform-origin:left center;margin-right:-4px}.footer-status{margin-left:auto}.footer-status i{display:inline-block;width:6px;height:6px;background:#95a58d;border-radius:50%;margin-right:5px}.locality-dialog{width:min(480px,calc(100% - 28px));border:1px solid #e5e8df;border-radius:10px;padding:27px;background:#fbfcf9;color:var(--ink);box-shadow:0 20px 70px #1b302a25}.locality-dialog::backdrop{background:#18251db0;backdrop-filter:blur(2px)}.locality-dialog form{position:relative}.dialog-close{position:absolute;right:0;top:-7px;border:0;background:none;color:#7a8179;font-size:25px;cursor:pointer}.locality-dialog h2{font:700 23px var(--serif);letter-spacing:-.6px;margin:0 0 8px}.dialog-copy{font-size:11px;line-height:1.6;color:#5f665c;margin:0 0 17px}.dialog-places{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dialog-place{border:1px solid #e6e9e2;background:#fff;text-align:left;color:#596259;padding:10px;border-radius:5px;font:500 10px 'DM Sans',sans-serif;cursor:pointer}.dialog-place.selected{border-color:#dc2626;background:#fdf2f2;color:#991b1b}.dialog-actions{border-top:1px solid #e8eae4;margin-top:18px;padding-top:14px;display:flex;align-items:center;justify-content:space-between;color:#666d63;font-size:10px}.apply-button{border:0;border-radius:4px;background:#991b1b;color:white;padding:10px 12px;font:700 10px 'DM Sans',sans-serif;cursor:pointer}.apply-button span{margin-left:9px}

@media(max-width:1200px){main,.site-footer{margin-left:32px;margin-right:32px}.site-header{padding-left:32px;padding-right:32px}}@media(max-width:760px){.site-header{height:62px;padding:0 18px;gap:20px}.brand{font-size:17px}.brand-mark{transform:scale(.9);margin-right:-2px}.main-nav{gap:15px}.main-nav a{font-size:10px}.main-nav a:nth-child(n+2){display:none}.location-button{padding:8px;font-size:9px}.location-button svg{width:13px}.intro{padding:34px 0 22px;align-items:flex-start;flex-direction:column;gap:12px}.intro h1{font-size:39px}.intro-copy{font-size:11px}.intro-date{font-size:9px}.place-strip{margin:0 -18px;padding:11px 18px;gap:11px}.place-label{display:none}.manage-places{font-size:9px}.manage-places span{display:none}.feed-layout{display:block;padding-top:27px}.section-heading h2{font-size:20px}.topic-list{margin-top:14px}.lead-art{height:154px}.lead-content{padding:16px}.lead-content h3{font-size:16px}.story-summary{font-size:10px}.story-row{padding:13px 11px;gap:10px}.row-copy h3{font-size:12px}.row-summary{font-size:9px}.place-tag{font-size:8px}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:25px}.side-card{margin:0;padding:13px}.welcome-card{grid-column:1/-1}.welcome-card h3{font-size:16px;margin-top:12px}.sidebar-note{grid-column:1/-1;margin:2px 3px}.audio-description{font-size:9px}.service-status{font-size:8px}.site-footer{margin:32px 18px 0;padding:17px 0;gap:8px}.site-footer>span:nth-child(2){display:none}.footer-brand{font-size:13px}.footer-status{font-size:8px}}@media(max-width:390px){.location-button span:first-of-type{max-width:100px;overflow:hidden;text-overflow:ellipsis}.place-chip{padding:7px 8px}.row-bottom{gap:6px}.source-count{font-size:8px}}

/* Editorial detail and standalone sections */
.inner-page{min-height:calc(100vh - 170px);padding-top:32px}.page-back{margin-left:auto;text-decoration:none}.back-link,.return-feed{display:inline-block;color:#991b1b;text-decoration:none;font-size:11px;font-weight:700;margin-bottom:22px}.detail-layout{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:46px}.detail-article>h1{font:700 34px/1.22 var(--serif);letter-spacing:-1.3px;color:#241818;max-width:730px;margin:13px 0}.detail-deck{font-size:14px;line-height:1.65;color:#646b61;max-width:690px;margin:0 0 17px}.detail-byline{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);color:#6a7066;font-size:10px}.detail-art{height:275px;position:relative;overflow:hidden;border-radius:7px;background:linear-gradient(120deg,#d6e5df,#bfd8ce 54%,#afcabe);margin:10px 0 25px}.detail-art .sun{width:75px;height:75px}.detail-art .coast{height:115px}.detail-art .coast-front{height:105px}.detail-section{padding:0 0 17px}.detail-section h2,.sources-panel h2,.updates-panel h2{font:700 18px var(--serif);letter-spacing:-.3px;margin:0 0 8px;color:#303a31}.detail-section p,.updates-panel p{font-size:12px;line-height:1.75;color:#697168;margin:0}.uncertainty{background:#f0f2ed;border-left:3px solid #fca5a5;padding:14px 16px;margin:5px 0 22px}.sources-panel,.updates-panel{border-top:1px solid var(--line);padding:19px 0}.sources-title{display:flex;align-items:center;justify-content:space-between}.sources-title span{font-size:9px;color:#666d63}.source-placeholder{display:flex;gap:11px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:6px;padding:14px;margin-top:10px}.source-placeholder-icon{width:25px;height:25px;border-radius:5px;background:#eef3ed;color:#991b1b;display:grid;place-items:center;flex:none}.source-placeholder strong{font-size:11px;color:#3d2626}.source-placeholder p{font-size:10px;line-height:1.6;color:#666d63;margin:5px 0 0}.updates-panel{margin-bottom:35px}.detail-aside{padding-top:45px}.trust-card{background:#edf3ec;border:1px solid #e2e9df;border-radius:7px;padding:18px}.trust-symbol{display:grid;place-items:center;width:26px;height:26px;background:#fee2e2;border-radius:50%;color:#4d7654;font-weight:700}.trust-card .card-kicker{margin-top:14px}.trust-card h3{font:700 16px/1.4 var(--serif);color:#2e1e1e;margin:9px 0}.trust-card>p:last-child{font-size:10px;line-height:1.7;color:#727c72;margin:0}.back-feed-card{display:flex;gap:9px;margin-top:12px;padding:13px;background:#fff;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:#991b1b;font-size:10px;font-weight:700}.page-intro{padding:21px 0 24px}.page-intro h1{font:700 38px/1.2 var(--serif);letter-spacing:-1.4px;color:#29372d;margin:0 0 9px}.page-intro>p:last-child{font-size:13px;color:#71796f;margin:0}.service-notice{display:flex;align-items:flex-start;gap:13px;padding:17px;background:#f3f3ed;border:1px solid #e8e8de;border-radius:7px;margin:10px 0 21px}.notice-icon{width:25px;height:25px;display:grid;place-items:center;border:1px solid #b8bca9;border-radius:50%;color:#74785f;font-family:serif;flex:none}.service-notice strong{font-size:12px;color:#4c5146}.service-notice p{font-size:10px;line-height:1.6;color:#787d71;margin:5px 0 0}.service-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-option{display:flex;gap:12px;position:relative;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:7px;padding:17px}.service-option-icon{width:31px;height:31px;border-radius:6px;display:grid;place-items:center;flex:none;font-size:19px}.route-icon{background:#edf3f6;color:#6d8da0}.alert-icon{background:#f8f1e8;color:#b18a58}.service-option h2{font:700 14px var(--serif);margin:5px 0;color:#354036}.service-option p{font-size:10px;line-height:1.6;color:#7a8178;margin:0;max-width:240px}.coming-soon{position:absolute;top:17px;right:14px;background:#f5f6f2;padding:5px 7px;border-radius:4px;font-size:8px;color:#666d63}.service-option>div:nth-child(2){padding-right:56px}.service-principles{margin:28px 0 0;padding:20px;background:#fff;border:1px solid var(--line);border-radius:7px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:16px}.principle-grid>div>span{font-size:9px;color:#7e9a7e;font-weight:700}.principle-grid h3{font:700 12px var(--serif);margin:6px 0;color:#362222}.principle-grid p{font-size:10px;line-height:1.6;color:#7b8279;margin:0}.return-feed{margin-top:20px}.audio-page .page-intro{padding-bottom:30px}.audio-empty{min-height:310px;background:#fdf2f2;border:1px solid #e4ebe1;border-radius:9px;display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;padding:25px}.audio-empty-art{height:61px;display:flex;align-items:center;gap:4px;position:relative;margin-bottom:14px}.audio-empty-art span{position:absolute;left:-30px;top:18px;color:#991b1b;font-size:18px}.audio-empty-art i{display:block;width:4px;border-radius:5px;background:#fca5a5;height:15px}.audio-empty-art i:nth-child(2){height:30px}.audio-empty-art i:nth-child(3){height:44px}.audio-empty-art i:nth-child(4){height:25px}.audio-empty-art i:nth-child(5){height:37px}.audio-empty-art i:nth-child(6){height:19px}.audio-empty .card-kicker{color:#69816d}.audio-empty h2{font:700 20px var(--serif);letter-spacing:-.4px;color:#354339;margin:8px 0}.audio-empty>p:not(.card-kicker){font-size:11px;line-height:1.65;color:#737d73;max-width:410px;margin:0 0 16px}.audio-return{max-width:180px;text-decoration:none}.audio-info{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:25px 6px 10px}.audio-info>div{position:relative;padding-left:35px}.audio-info-icon{position:absolute;left:0;top:1px;color:#719078;font-size:17px}.audio-info h3{font:700 12px var(--serif);color:#485349;margin:0 0 5px}.audio-info p{font-size:10px;line-height:1.6;color:#81877f;margin:0}.site-footer{margin-top:35px}
@media(max-width:760px){.inner-page{padding-top:22px}.page-back{font-size:0;padding:8px}.page-back span{font-size:9px}.detail-layout{display:block}.detail-article>h1{font-size:27px}.detail-deck{font-size:12px}.detail-art{height:195px}.detail-aside{padding:0 0 24px}.trust-card{padding:15px}.page-intro h1{font-size:31px}.page-intro>p:last-child{font-size:11px}.service-options{grid-template-columns:1fr}.service-option p{max-width:none}.service-principles{padding:16px}.principle-grid{grid-template-columns:1fr;gap:14px}.audio-empty{min-height:280px;padding:20px}.audio-empty h2{font-size:18px}.audio-info{grid-template-columns:1fr;gap:17px;padding:22px 4px}.service-notice{padding:13px}.service-notice strong{font-size:11px}}
@media(max-width:760px){.site-header{height:auto;min-height:62px;padding:9px 18px 0;display:grid;grid-template-columns:1fr auto;gap:0 10px}.main-nav{grid-column:1/-1;grid-row:2;height:36px;gap:23px}.main-nav a:nth-child(n+2){display:flex}.location-button{margin:0}}
.ask-page{max-width:850px}.ask-panel{min-height:390px;margin:4px auto 0;background:#fff;border:1px solid var(--line);border-radius:9px;padding:38px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center}.ask-empty-icon{width:48px;height:48px;border-radius:50%;background:#edf3ec;color:#991b1b;display:grid;place-items:center;font:600 23px var(--serif);margin-bottom:18px}.ask-panel .card-kicker{color:#6c866f}.ask-panel h2{font:700 21px var(--serif);letter-spacing:-.5px;color:#2e1e1e;margin:9px 0}.ask-panel>p:not(.card-kicker){font-size:11px;line-height:1.75;color:#747d73;max-width:500px;margin:0}.ask-examples{width:min(510px,100%);margin-top:24px;text-align:left}.ask-examples>span{font-size:9px;font-weight:700;letter-spacing:.6px;color:#80877e}.ask-examples>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.ask-examples button{border:1px solid #e6e9e2;background:#f8f9f6;border-radius:20px;padding:8px 10px;color:#666d63;font:500 9px 'DM Sans',sans-serif}.ask-principle{display:flex;align-items:flex-start;gap:9px;margin:15px auto 0;background:#f1f3ee;border-radius:6px;padding:12px 14px}.ask-principle>span{color:#6b866e}.ask-principle p{font-size:10px;line-height:1.6;color:#737b71;margin:0}
@media(max-width:760px){.ask-panel{min-height:350px;padding:28px 18px}.ask-panel h2{font-size:19px}.ask-examples>div{flex-direction:column}.ask-examples button{text-align:left}}
.city-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.city-card{position:relative;display:block;min-height:170px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:7px;text-decoration:none;transition:border-color .15s,transform .15s}.city-card:hover{border-color:#fca5a5;transform:translateY(-2px)}.city-index{color:#7d8c7c;font-size:8px;font-weight:700;letter-spacing:1px}.city-pin{position:absolute;right:17px;top:14px;color:#7e9a7e;font-size:20px}.city-card h2{font:700 17px var(--serif);letter-spacing:-.3px;color:#2e1e1e;margin:21px 0 5px}.city-card p{font-size:10px;color:#666d63;margin:0}.city-action{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:11px;border-top:1px solid #eff0eb;color:#527455;font-size:9px;font-weight:700}.city-action b{font-size:14px;font-weight:500}.city-note{display:flex;align-items:flex-start;gap:8px;background:#f1f3ee;padding:12px;border-radius:5px;margin:15px 0;color:#738071}.city-note span{font-size:12px}.city-note p{font-size:10px;line-height:1.6;margin:0}.main-nav{overflow:auto;scrollbar-width:none;white-space:nowrap}.main-nav::-webkit-scrollbar{display:none}
@media(max-width:760px){.city-grid{grid-template-columns:1fr}.city-card{min-height:145px}.city-card h2{margin-top:14px}.main-nav{gap:18px}}

.feed-status{min-height:18px;font-size:10px;color:#5d645a;margin:10px 2px 0}
.dialog-place input{margin-right:6px}

/* ---------- Paso 6B: móvil, foco y movimiento ---------- */
:focus-visible {
  outline: 2px solid #991b1b;
  outline-offset: 2px;
  border-radius: 4px;
}
.place-chip, .topic, .load-more, .manage-places, .location-button, .dialog-place, .apply-button, .sort-button {
  min-height: 40px;
}
@media (max-width: 640px) {
  .locality-dialog {
    width: calc(100% - 20px);
    max-height: 82vh;
    overflow-y: auto;
    padding: 20px;
  }
  .dialog-places {
    grid-template-columns: 1fr;
    max-height: 44vh;
    overflow-y: auto;
  }
  .intro h1 { font-size: 34px; letter-spacing: -1.6px; }
  .row-copy h3 { font-size: 14px; }
  .site-header { gap: 18px; padding: 0 16px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.feed-note {
  font-size: 10px;
  color: #5d645a;
  margin: 6px 2px 0;
}
.install-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #d9dcd3;
  background: #fff;
  color: #41473f;
  border-radius: 5px;
  padding: 8px 12px;
  font-size: 10px;
  font-weight: 700;
}

/* ---------- Paso 7B: pantalla de servicios ---------- */
.tab-list{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:4px 0 0}
.tab-button{border:0;background:transparent;color:#5f665c;padding:11px 14px;font:700 11px 'DM Sans',sans-serif;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.tab-button[aria-selected="true"]{color:#991b1b;border-bottom-color:#b91c1c}
.tab-button:hover{color:#2e5c40}
.svc-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:16px 0 4px}
.svc-filter{display:flex;flex-direction:column;gap:5px;font-size:9px;font-weight:700;letter-spacing:.6px;color:#5f665c}
.svc-filter select,.svc-filter input{border:1px solid #e2e4dc;background:#fff;border-radius:5px;padding:9px 10px;color:#41473f;font:500 11px 'DM Sans',sans-serif;min-height:40px;min-width:170px}
.svc-refresh{margin-left:auto;border:1px solid #d9dcd3;background:#fff;color:#41473f;border-radius:5px;padding:9px 14px;font:700 10px 'DM Sans',sans-serif;cursor:pointer;min-height:40px}
.svc-refresh:hover{border-color:#fca5a5;color:#2e5c40}
.svc-spinner{display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid #cfd6cc;border-top-color:#991b1b;border-radius:50%;vertical-align:-2px;animation:svc-spin 1s linear infinite}
@keyframes svc-spin{to{transform:rotate(360deg)}}
.svc-banner{display:flex;align-items:flex-start;gap:9px;background:#f8f1e0;border:1px solid #e8d9b0;border-radius:6px;padding:11px 13px;margin:12px 0 0;color:#6b5310;font-size:10px;line-height:1.55}
.svc-banner span{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#6b5310;color:#f8f1e0;font-size:10px;font-weight:700;flex:none}
.svc-panel{margin-top:14px}
.svc-panel-info{background:#f1f3ee;border:1px solid #e4e7df;border-radius:7px;padding:20px}
.svc-panel-info h3{font:700 16px var(--serif);letter-spacing:-.3px;color:#3c473d;margin:0 0 8px}
.svc-panel-info p{font-size:11px;line-height:1.7;color:#6a7268;margin:0 0 6px;max-width:640px}
.svc-list{display:grid;gap:10px}
.svc-card{background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:16px 17px}
.svc-card-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.svc-card-head h3{font:700 15px var(--serif);letter-spacing:-.2px;color:#333d34;margin:0}
.svc-route-number{background:#edf3f6;color:#4a6e84;border-radius:4px;padding:4px 8px;font-size:9px;font-weight:700;letter-spacing:.5px}
.svc-tag{background:#f1f3ee;color:#5d645a;border-radius:4px;padding:4px 8px;font-size:9px;font-weight:700;letter-spacing:.5px}
.svc-card-body{margin-top:10px}
.svc-extremes{font-size:11px;font-weight:700;color:#4c554c;margin:0 0 8px}
.svc-field{font-size:11px;color:#41473f;margin:0 0 4px}
.svc-field-label{font-weight:700;color:#5d645a}
.svc-note{font-size:9px;color:#8a908a;margin:8px 0 0;line-height:1.5}
.svc-desc{font-size:11px;line-height:1.65;color:#5c645b;margin:10px 0 0}
.svc-line{font-size:10px;color:#6a7268;margin:4px 0 0}
.svc-line-muted{color:#8a908a;font-style:italic}
.svc-card-footer{margin-top:12px;padding-top:11px;border-top:1px solid #eff0eb;display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.svc-badge{display:inline-block;border-radius:4px;padding:4px 8px;font-size:9px;font-weight:700;letter-spacing:.4px;margin-bottom:4px}
.vigencia-current{background:#e5efe7;color:#1e5631}
.vigencia-stale{background:#f8f1e0;color:#6b4e0e}
.vigencia-unknown{background:#eef0f2;color:#48525c}
.vigencia-expired{background:#f9e9e6;color:#8c352a}
.vigencia-unavailable{background:#f0edf5;color:#54456e}
.alert-level-verde{background:#e5efe7;color:#1e5631}
.alert-level-amarillo{background:#f8f1e0;color:#6b4e0e}
.alert-level-naranja{background:#fbeadb;color:#8a4a12}
.alert-level-roja{background:#f9e9e6;color:#8c352a}
.alert-level-desconocido{background:#eef0f2;color:#48525c}
.svc-vigencia-aviso{font-size:9px;line-height:1.55;color:#8a6a1c;margin:6px 0 0}
.svc-source-row{margin:6px 0 0}
.svc-source{color:#991b1b;font-size:10px;font-weight:700}
@media(max-width:640px){.svc-refresh{margin-left:0;width:100%}.svc-filter select,.svc-filter input{min-width:0;flex:1}.svc-filter{flex:1}}

/* ---------- Paso 9B: Reproductor de Audio ---------- */
.audio-scope-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 15px 0 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}
.audio-scope-tabs {
  display: flex;
  gap: 8px;
}
.scope-tab {
  background: transparent;
  border: 1px solid var(--line);
  color: #5f665c;
  padding: 8px 16px;
  border-radius: 6px;
  font: 600 11px 'DM Sans', sans-serif;
  cursor: pointer;
  transition: all 0.15s ease;
}
.scope-tab.nav-tab-active {
  background: #991b1b;
  border-color: #991b1b;
  color: #fff;
}
.audio-filters {
  display: flex;
  gap: 10px;
}
.audio-select {
  border: 1px solid #d9dcd3;
  background: #fff;
  color: #3b423a;
  border-radius: 6px;
  padding: 8px 12px;
  font: 500 11px 'DM Sans', sans-serif;
  cursor: pointer;
  max-width: 260px;
}
.audio-alert {
  padding: 14px 18px;
  border-radius: 7px;
  font-size: 11px;
  line-height: 1.6;
  margin: 12px 0 20px;
}
.audio-alert-error {
  background: #fdf2f2;
  border: 1px solid #f8d7da;
  color: #842029;
}
.audio-alert-retraction {
  background: #fff3cd;
  border: 1px solid #ffeeba;
  color: #664d03;
  font-weight: 600;
}
.audio-player-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
.audio-player-container.is-retracted .player-card {
  opacity: 0.6;
  pointer-events: none;
}
.player-card {
  background: #fff;
  border: 1px solid #e3e6de;
  border-radius: 10px;
  padding: 24px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.03);
}
.player-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 10px;
  margin-bottom: 12px;
}
.player-live-badge {
  background: #e5efe7;
  color: #1e5631;
  padding: 3px 8px;
  border-radius: 4px;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.player-edition-meta {
  color: #727a70;
  font-weight: 500;
}
.player-now-playing {
  margin: 10px 0 18px;
}
.player-now-label {
  font-size: 9px;
  letter-spacing: 1px;
  font-weight: 700;
  color: #6a7368;
  margin: 0 0 4px;
}
.player-chapter-headline {
  font: 700 20px/1.3 var(--serif);
  color: #28342a;
  margin: 0;
}
.player-timeline {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0;
}
.time-label {
  font-size: 11px;
  font-weight: 600;
  color: #60685e;
  font-variant-numeric: tabular-nums;
  min-width: 32px;
}
.player-progress-bar {
  flex: 1;
  height: 6px;
  -webkit-appearance: none;
  appearance: none;
  background: #e6e8e2;
  border-radius: 3px;
  outline: none;
  cursor: pointer;
}
.player-progress-bar::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #991b1b;
  cursor: pointer;
}
.player-progress-bar::-moz-range-thumb {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #991b1b;
  border: none;
  cursor: pointer;
}
.player-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 16px 0;
  flex-wrap: wrap;
}
.player-control-btn {
  background: #f4f6f2;
  border: 1px solid #dcdfd8;
  border-radius: 6px;
  color: #3e483e;
  padding: 8px 12px;
  font: 600 11px 'DM Sans', sans-serif;
  cursor: pointer;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.player-speed-btn {
  font-weight: 700;
  min-width: 44px;
}
.player-play-btn {
  background: #991b1b;
  color: #fff;
  border: none;
  border-radius: 24px;
  padding: 10px 22px;
  font: 700 13px 'DM Sans', sans-serif;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  min-height: 44px;
  box-shadow: 0 3px 10px rgba(46,99,65,0.25);
}
.player-voice-notice {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #f0f1ec;
  font-size: 10px;
  color: #697267;
}
.section-title-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 12px;
}
.section-title-row h3 {
  font: 700 16px var(--serif);
  color: #2b362d;
  margin: 0;
}
.section-hint {
  font-size: 10px;
  color: #7d847a;
}
.chapter-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.chapter-item {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1px solid #e7eae2;
  border-radius: 7px;
  padding: 12px 14px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.chapter-item:hover, .chapter-item:focus-visible {
  border-color: #8da892;
  background: #fafbfa;
}
.chapter-item.chapter-active {
  border-color: #991b1b;
  background: #fdf2f2;
}
.chapter-order {
  font-size: 11px;
  font-weight: 700;
  color: #55775c;
  min-width: 18px;
}
.chapter-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.chapter-title {
  font-size: 12px;
  font-weight: 600;
  color: #313a32;
}
.chapter-duration {
  font-size: 10px;
  color: #727b6f;
}
.chapter-play-badge {
  color: #527a5b;
  font-size: 11px;
}
.chapter-sources-container {
  background: #fbfbf9;
  border: 1px solid #ebece6;
  border-radius: 8px;
  padding: 18px;
}
.chapter-sources-container h3 {
  font: 700 14px var(--serif);
  color: #323d33;
  margin: 0 0 10px;
}
.chapter-sources-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.chapter-source-item a {
  color: #2b613e;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}
.chapter-source-item a:hover {
  text-decoration: underline;
}
.source-title {
  font-size: 11px;
  color: #596156;
}
.source-empty-note {
  font-size: 11px;
  color: #737c70;
  font-style: italic;
}
.transcript-wrapper {
  margin-top: 10px;
}
.transcript-toggle-button {
  width: 100%;
  text-align: center;
  background: #f5f7f2;
  border: 1px solid #e1e4dc;
  border-radius: 7px;
  padding: 12px;
  font: 600 11px 'DM Sans', sans-serif;
  color: #3c5240;
  cursor: pointer;
}
.transcript-body {
  background: #fff;
  border: 1px solid #e5e8df;
  border-radius: 7px;
  padding: 20px;
  margin-top: 10px;
}
.transcript-disclosure {
  font-size: 10px;
  color: #6a7467;
  padding-bottom: 12px;
  margin-bottom: 14px;
  border-bottom: 1px solid #eff1eb;
}
.transcript-chapter-block {
  margin-bottom: 16px;
  padding: 10px 12px;
  border-radius: 6px;
  border-left: 3px solid transparent;
}
.transcript-chapter-block.transcript-chapter-active {
  background: #fdf2f2;
  border-left-color: #991b1b;
}
.transcript-chapter-title {
  font: 700 12px var(--serif);
  color: #2d382f;
  margin: 0 0 6px;
}
.transcript-text {
  font-size: 11px;
  line-height: 1.7;
  color: #4b5449;
  margin: 0;
}
@media(max-width: 640px) {
  .player-card {
    padding: 18px 14px;
  }
  .player-controls {
    gap: 8px;
  }
  .player-control-btn {
    padding: 6px 10px;
    font-size: 10px;
  }
  .player-play-btn {
    padding: 9px 18px;
  }
}

/* ==========================================================================
   Paso 10B: Estilos del Asistente y Búsqueda Pública («Preguntale a Chubut»)
   ========================================================================== */
.chat-banner {
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 6px 16px;
  font-size: 10px;
  font-weight: 600;
  text-align: center;
}
.banner-enabled {
  background: #eaf3eb;
  color: #991b1b;
  border-bottom: 1px solid #d5e5d8;
}
.banner-simulated {
  background: #fdf6e7;
  color: #8c6218;
  border-bottom: 1px solid #fae6b8;
}
.banner-disabled {
  background: #f1f3ee;
  color: #5f665c;
  border-bottom: 1px solid #e2e5dd;
}
.banner-error {
  background: #fbeee9;
  color: #9c3f25;
  border-bottom: 1px solid #f3d4ca;
}

.mode-selector-section {
  margin: 18px 0 20px;
}
.mode-tabs {
  display: flex;
  gap: 8px;
  border-bottom: 2px solid var(--line);
}
.mode-tab {
  background: transparent;
  border: none;
  border-bottom: 3px solid transparent;
  padding: 10px 18px;
  font: 700 13px 'DM Sans', sans-serif;
  color: #636b60;
  cursor: pointer;
  margin-bottom: -2px;
  transition: all 0.15s ease;
}
.mode-tab:hover {
  color: #991b1b;
}
.mode-tab.active {
  color: #991b1b;
  border-bottom-color: #991b1b;
}
.mode-tab:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.ask-form-container {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 24px;
}
.input-row {
  display: flex;
  gap: 10px;
}
.query-input {
  flex: 1;
  border: 1px solid #dcdfd6;
  border-radius: 6px;
  padding: 12px 16px;
  font: 500 13px 'DM Sans', sans-serif;
  color: #1f1919;
  background: #fafbf9;
}
.query-input:focus {
  outline: 2px solid #991b1b;
  background: #fff;
}
.submit-btn {
  background: #991b1b;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 0 24px;
  font: 700 12px 'DM Sans', sans-serif;
  cursor: pointer;
  white-space: nowrap;
}
.submit-btn:hover {
  background: #1e4d35;
}
.submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.filters-row {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #f1f3ed;
  flex-wrap: wrap;
}
.filter-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 10px;
  font-weight: 700;
  color: #5f665c;
}
.filter-select {
  border: 1px solid #dcdfd6;
  background: #fff;
  border-radius: 5px;
  padding: 8px 10px;
  font: 500 11px 'DM Sans', sans-serif;
  color: #41473f;
  min-width: 170px;
}
.actions-group {
  margin-left: auto;
  display: flex;
  gap: 8px;
}
.secondary-btn {
  border: 1px solid #d9dcd3;
  background: #fff;
  color: #485045;
  border-radius: 5px;
  padding: 8px 12px;
  font: 600 10px 'DM Sans', sans-serif;
  cursor: pointer;
}
.secondary-btn:hover {
  background: #f6f8f4;
  border-color: #bcc4b6;
}

.status-live {
  font-size: 11px;
  font-weight: 600;
  color: #3b5f44;
  margin: 10px 0;
  min-height: 20px;
}
.loading-active::before {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-right: 8px;
  border: 2px solid #b7cebc;
  border-top-color: #991b1b;
  border-radius: 50%;
  vertical-align: -2px;
  animation: svc-spin 1s linear infinite;
}

.error-banner {
  background: #fdf2ef;
  border: 1px solid #f2c7bb;
  border-radius: 6px;
  padding: 12px 14px;
  margin: 12px 0 20px;
  color: #92341b;
  font-size: 11px;
  line-height: 1.5;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.error-icon {
  font-size: 14px;
  font-weight: 700;
}

.operational-notice {
  background: #eef5f8;
  border: 1px solid #cce0eb;
  border-radius: 7px;
  padding: 14px 16px;
  margin: 14px 0 20px;
  display: flex;
  gap: 12px;
}
.op-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #d8eaf3;
  color: #31627c;
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 12px;
  flex: none;
}
.op-content strong {
  display: block;
  font-size: 12px;
  color: #274d62;
  margin-bottom: 4px;
}
.op-content p {
  font-size: 11px;
  color: #4b6777;
  margin: 0 0 8px;
  line-height: 1.5;
}
.op-link {
  font-size: 11px;
  font-weight: 700;
  color: #205c7c;
  text-decoration: none;
}
.op-link:hover {
  text-decoration: underline;
}

.results-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}
.results-count {
  font: 700 16px var(--serif);
  color: #2e3830;
  margin: 0;
}
.applied-filters-badge {
  background: #edf3ec;
  border: 1px solid #d9e6d8;
  color: #31583b;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 9px;
  font-weight: 600;
}

.results-list {
  display: grid;
  gap: 12px;
}
.search-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 16px 18px;
}
.search-card-meta {
  font-size: 9px;
  color: #6a7268;
  margin-bottom: 6px;
}
.search-card-title {
  font: 700 15px/1.35 var(--serif);
  margin: 0 0 8px;
}
.search-card-title a {
  color: #2b352c;
  text-decoration: none;
}
.search-card-title a:hover {
  color: #991b1b;
}
.search-card-summary {
  font-size: 11px;
  line-height: 1.65;
  color: #5c655b;
  margin: 0 0 10px;
}
.search-card-sources {
  font-size: 10px;
  color: #6a7467;
  border-top: 1px solid #f1f3ed;
  padding-top: 8px;
}
.search-card-sources a {
  color: #3d6849;
  text-decoration: none;
  font-weight: 600;
}
.search-card-sources a:hover {
  text-decoration: underline;
}

.empty-results-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 30px 20px;
  text-align: center;
  color: #5d665b;
}
.empty-results-card p {
  margin: 0 0 6px;
  font-size: 12px;
}
.empty-hint {
  font-size: 11px;
  color: #7b8479;
}

/* Burbujas del chat */
.chat-messages {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 250px;
  margin-bottom: 24px;
}
.chat-empty-state {
  text-align: center;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 40px 20px;
}
.chat-empty-state h2 {
  font: 700 20px var(--serif);
  color: #2f382f;
  margin: 12px 0 8px;
}
.chat-empty-state p {
  font-size: 11px;
  color: #6a7468;
  max-width: 440px;
  margin: 0 auto 20px;
  line-height: 1.6;
}
.sample-questions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}
.sample-q-btn {
  border: 1px solid #dbe2d8;
  background: #f7faf6;
  border-radius: 20px;
  padding: 8px 12px;
  color: #3b5f43;
  font: 500 10px 'DM Sans', sans-serif;
  cursor: pointer;
}
.sample-q-btn:hover {
  background: #ebf3ea;
  border-color: #b5cbb6;
}

.chat-bubble {
  border-radius: 8px;
  padding: 16px 18px;
  max-width: 85%;
}
.user-bubble {
  align-self: flex-end;
  background: #991b1b;
  color: #fff;
}
.user-bubble .bubble-sender {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: #b3d6c1;
  margin-bottom: 6px;
}
.user-bubble .bubble-text {
  font-size: 13px;
  line-height: 1.55;
  margin: 0;
}

.assistant-bubble {
  align-self: flex-start;
  background: #fff;
  border: 1px solid var(--line);
  color: #242c23;
  box-shadow: 0 2px 6px #0000000a;
}
.assistant-bubble .bubble-sender {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: #3c654b;
  margin-bottom: 6px;
}
.assistant-bubble .bubble-text {
  font-size: 13px;
  line-height: 1.65;
  margin: 0 0 12px;
}
.bubble-limitations {
  background: #f7f9f5;
  border-left: 3px solid #8ba48f;
  padding: 8px 10px;
  font-size: 10px;
  color: #555f53;
  margin: 10px 0;
  line-height: 1.5;
}
.bubble-citations {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #f1f3ed;
}
.citations-heading {
  font-size: 10px;
  font-weight: 700;
  color: #636c61;
  margin: 0 0 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.citation-card {
  background: #fafbf9;
  border: 1px solid #e7ebe3;
  border-radius: 5px;
  padding: 10px 12px;
  margin-bottom: 8px;
}
.citation-title {
  font: 700 12px var(--serif);
  margin: 0 0 4px;
}
.citation-title a {
  color: #275239;
  text-decoration: none;
}
.citation-title a:hover {
  text-decoration: underline;
}
.citation-date {
  font-size: 9px;
  color: #7b8478;
  display: block;
  margin-bottom: 4px;
}
.citation-sources {
  font-size: 9px;
  color: #6a7468;
}
.citation-sources a {
  color: #396346;
  text-decoration: none;
  font-weight: 600;
}
.citation-sources a:hover {
  text-decoration: underline;
}
.bubble-footer {
  font-size: 9px;
  color: #8c9589;
  margin-top: 10px;
  text-align: right;
}

.error-bubble {
  border-color: #f2cfc5;
  background: #fdf5f3;
}
.error-bubble .bubble-sender {
  color: #a43e25;
}

@media(max-width: 640px) {
  .input-row {
    flex-direction: column;
  }
  .submit-btn {
    padding: 12px;
    height: 42px;
  }
  .filters-row {
    flex-direction: column;
    align-items: stretch;
  }
  .actions-group {
    margin-left: 0;
    margin-top: 8px;
    justify-content: flex-end;
  }
  .chat-bubble {
    max-width: 95%;
  }
  .mode-tab {
    padding: 10px 12px;
    font-size: 11px;
  }
}

.source-meta-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}
.source-name {
  font-size: 12px;
  font-weight: 700;
  color: #2e3b30;
}
.source-type-tag {
  font-size: 9px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  padding: 2px 7px;
  border-radius: 4px;
  background: #edf3ec;
  color: #4b6e51;
}
.source-original-title {
  font-size: 11px !important;
  font-weight: 500;
  color: #49544a;
  margin: 3px 0 6px !important;
}
.source-link-p {
  margin: 4px 0 0 !important;
}

/* Síntesis completa y Síntesis breve en detalle de noticias */
.detail-body {
  margin: 18px 0 26px;
}
.detail-paragraph {
  font-size: 15px;
  line-height: 1.78;
  color: #313a32;
  margin: 0 0 16px;
  max-width: 720px;
}
.brief-synthesis-badge {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #f2f5f1;
  border: 1px solid #dce4da;
  border-radius: 6px;
  padding: 8px 12px;
  margin: 10px 0 16px;
  max-width: 720px;
}
.brief-synthesis-note {
  font-size: 11px;
  color: #556054;
  line-height: 1.4;
}
.read-original-box {
  margin: 18px 0 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.read-original-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #991b1b;
  color: #ffffff !important;
  text-decoration: none !important;
  font: 600 12px 'DM Sans', sans-serif;
  padding: 10px 16px;
  border-radius: 6px;
  transition: background 0.15s ease, transform 0.1s ease;
}
.read-original-cta:hover {
  background: #1c4933;
  transform: translateY(-1px);
}
.legal-disclaimer-box {
  margin: 22px 0 18px;
  padding: 14px 16px;
  background: #f6f7f4;
  border: 1px solid #dfe3da;
  border-left: 3px solid #4b6e51;
  border-radius: 6px;
  max-width: 720px;
}
.legal-disclaimer-title {
  display: block;
  font-size: 11px;
  font-weight: 700;
  color: #2f3b31;
  margin-bottom: 5px;
}
.legal-disclaimer-text {
  font-size: 11px;
  line-height: 1.55;
  color: #556054;
  margin: 0 0 8px;
}
.legal-disclaimer-actions {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.legal-sep {
  color: #98a296;
  font-size: 11px;
}
.legal-takedown-link {
  font-size: 11px;
  font-weight: 600;
  color: #991b1b;
  text-decoration: underline;
}
.legal-takedown-link:hover {
  color: #183f2b;
}

/* Footer legal enriquecido y página legal.html (Modelo Lisa AI) */
.site-footer {
  flex-direction: column;
  align-items: stretch;
  gap: 14px;
}
.footer-top-row {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
}
.footer-legal-row {
  border-top: 1px solid #eceee8;
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.footer-disclaimer {
  margin: 0;
  font-size: 10px;
  line-height: 1.55;
  color: #6a7267;
  max-width: 960px;
}
.footer-legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.footer-legal-links a {
  color: #385e43;
  font-size: 10px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.footer-legal-links a:hover {
  color: #1c442c;
}

.legal-page {
  max-width: 880px;
}
.legal-grid {
  display: grid;
  gap: 16px;
  margin: 8px 0 28px;
}
.legal-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 20px 22px;
}
.legal-kicker {
  display: block;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.9px;
  color: #4d7556;
  margin-bottom: 6px;
}
.legal-card h2 {
  font: 700 18px/1.3 var(--serif);
  color: #28352a;
  margin: 0 0 10px;
}
.legal-card p {
  font-size: 12px;
  line-height: 1.7;
  color: #4b544a;
  margin: 0 0 10px;
}
.legal-card p:last-child {
  margin-bottom: 0;
}
.legal-list {
  margin: 8px 0 10px;
  padding-left: 18px;
  color: #4b544a;
  font-size: 12px;
  line-height: 1.65;
}
.legal-list li {
  margin-bottom: 6px;
}
.legal-cta-row {
  margin-top: 14px !important;
}

@media (max-width: 640px) {
  .detail-paragraph {
    font-size: 14px;
    line-height: 1.7;
  }
  .brief-synthesis-badge {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
  .legal-card {
    padding: 16px;
  }
}

/* Ranking de relevancia y Resúmenes de Audio (07:00 y 19:00 hs) */
.feed-title-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.feed-mode-switch {
  display: inline-flex;
  background: #eff2ed;
  border: 1px solid #d9dfd6;
  border-radius: 6px;
  padding: 3px;
  gap: 3px;
}
.feed-mode-btn {
  appearance: none;
  border: 0;
  background: transparent;
  color: #545e53;
  font: 600 11px var(--sans);
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}
.feed-mode-btn.is-active,
.feed-mode-btn.active {
  background: #2b6447;
  color: #ffffff;
}
.ranking-controls-bar {
  background: #f5f7f3;
  border: 1px solid #dce2d8;
  border-radius: 7px;
  padding: 12px 14px;
  margin-bottom: 14px;
}
.ranking-edition-tabs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
}
.ranking-bar-label {
  font-size: 10px;
  font-weight: 700;
  color: #4f5e50;
  margin-right: 4px;
}
.ranking-ed-btn {
  appearance: none;
  border: 1px solid #cfd8cc;
  background: #ffffff;
  color: #465246;
  font: 600 11px var(--sans);
  padding: 5px 10px;
  border-radius: 5px;
  cursor: pointer;
}
.ranking-ed-btn.is-active,
.ranking-ed-btn.active {
  background: #355f45;
  border-color: #355f45;
  color: #ffffff;
}
.ranking-window-info,
.ranking-meta-summary {
  font-size: 11px;
  color: #5a6558;
  margin-bottom: 6px;
}
.ranking-script-preview {
  margin-top: 8px;
  border-top: 1px dashed #d3dbd0;
  padding-top: 8px;
}
.ranking-script-preview summary {
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
  color: #991b1b;
}
.ranking-script-text,
.ranking-script-box {
  margin: 8px 0 0;
  padding: 10px 12px;
  background: #ffffff;
  border: 1px solid #dde3da;
  border-radius: 5px;
  font: 400 11px/1.6 var(--sans);
  color: #333d34;
  white-space: pre-wrap;
}
.feed-status.is-error {
  color: #9a3a32;
}
.sidebar-note a {
  color: inherit;
  text-decoration: underline;
}
.icon-rank {
  background: #991b1b !important;
  color: #ffffff !important;
  font-weight: 800;
  font-size: 11px;
  letter-spacing: -0.3px;
}
.tag-rank-score {
  background: #e3efe7 !important;
  color: #1f5539 !important;
  border: 1px solid #bdd8c6;
  font-weight: 700;
}
.rank-breakdown-pill {
  font-size: 10px;
  color: #4d6a54;
  background: #f2f6f2;
  padding: 2px 7px;
  border-radius: 4px;
}
.sidebar-ranking-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.sidebar-ranking-sub {
  margin: 2px 0 10px;
  font-size: 10px;
}
.sidebar-ranking-list {
  list-style: none;
  padding: 0;
  margin: 0 0 10px;
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.sidebar-ranking-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #eef0eb;
}
.sidebar-ranking-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.sidebar-rank-num {
  flex: 0 0 22px;
  height: 22px;
  border-radius: 4px;
  background: #e7efe9;
  color: #245a3e;
  font-size: 10px;
  font-weight: 800;
  display: grid;
  place-items: center;
  margin-top: 1px;
}
.sidebar-rank-body {
  min-width: 0;
  flex: 1;
}
.sidebar-rank-link {
  display: block;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  color: #2b352c;
  text-decoration: none;
}
.sidebar-rank-link:hover {
  color: #991b1b;
  text-decoration: underline;
}
.sidebar-rank-meta {
  font-size: 9px;
  color: #778175;
  margin-top: 2px;
}
.sidebar-ranking-cta {
  width: 100%;
  justify-content: center;
}

/* Barra Seguir de cerca con cabeceras prioritarias y ciudades activas */
.place-label {
  flex-shrink: 0;
}
.place-chips {
  flex: 1;
  min-width: 0;
}
.manage-places {
  flex-shrink: 0;
}

/* Indicador y tooltip explicativo de relevancia (?) */
.story-row-ranked {
  position: relative;
}
.story-row-ranked .row-copy {
  padding-right: 32px;
}
.relevance-info-wrap {
  position: absolute;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  cursor: pointer;
}
.relevance-qmark {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #edf2ec;
  border: 1px solid #c9d6c6;
  color: #2b5e3d;
  font: 700 12px/20px var(--sans);
  text-align: center;
  display: grid;
  place-items: center;
  cursor: help;
  transition: all 0.15s ease;
  user-select: none;
}
.relevance-info-wrap:hover .relevance-qmark,
.relevance-info-wrap:focus-visible .relevance-qmark,
.relevance-info-wrap:focus-within .relevance-qmark {
  background: #991b1b;
  border-color: #991b1b;
  color: #ffffff;
  transform: scale(1.08);
}
.relevance-tooltip {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: 290px;
  background: #ffffff;
  border: 1px solid #cfd7cb;
  border-radius: 8px;
  box-shadow: 0 10px 28px rgba(28, 48, 36, 0.16);
  padding: 12px 14px;
  z-index: 100;
  text-align: left;
  pointer-events: none;
}
.relevance-info-wrap:hover .relevance-tooltip,
.relevance-info-wrap:focus-visible .relevance-tooltip,
.relevance-info-wrap:focus-within .relevance-tooltip {
  display: block;
  pointer-events: auto;
}
.relevance-tooltip-kicker {
  display: block;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: 0.8px;
  color: #2e6844;
  margin-bottom: 2px;
}
.relevance-tooltip-title {
  display: block;
  font: 700 13px/1.3 var(--serif);
  color: #263328;
  margin-bottom: 8px;
}
.relevance-tooltip-list {
  margin: 0 0 8px;
  padding-left: 16px;
  font: 400 11px/1.55 var(--sans);
  color: #4a5449;
}
.relevance-tooltip-list li {
  margin-bottom: 5px;
}
.relevance-tooltip-foot {
  border-top: 1px solid #edf1eb;
  padding-top: 6px;
  font-size: 9.5px;
  font-weight: 600;
  color: #727c70;
}
@media (max-width: 640px) {
  .relevance-tooltip {
    right: -6px;
    width: min(270px, 80vw);
  }
}

/* ==========================================================================
   EMERGENCIAS AL DÍA — ETAPA 5: INTERFAZ PÚBLICA DE REVISTA CIENTÍFICA
   ========================================================================== */

/* Subtítulo y Header Journal */
.journal-header {
  border-bottom: 2px solid #991b1b;
}
.journal-brand-sub {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: #8a4040;
  letter-spacing: -0.2px;
  margin-top: 2px;
}

/* Hero de Revista Médica */
.journal-hero {
  padding: 36px 0 24px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 24px;
}
.journal-hero-inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
}
.journal-title-box h1 {
  font: 800 38px/1.15 var(--serif);
  letter-spacing: -1.5px;
  color: #1f1616;
  margin: 0 0 8px;
}
.journal-subtitle {
  font-size: 15px;
  font-weight: 500;
  color: #991b1b;
  margin: 0 0 8px;
}
.journal-mission {
  font-size: 13px;
  color: #616a5e;
  max-width: 640px;
  margin: 0;
  line-height: 1.6;
}

/* Acceso destacado al Resumen Semanal */
.weekly-access-banner {
  background: linear-gradient(135deg, #fdf2f2 0%, #fae8e8 100%);
  border: 1px solid #f8c8c8;
  border-radius: 8px;
  padding: 18px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}
.weekly-access-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.weekly-access-kicker {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.2px;
  color: #991b1b;
  text-transform: uppercase;
}
.weekly-access-title {
  font: 700 17px var(--serif);
  color: #1f1616;
  margin: 0;
}
.weekly-access-desc {
  font-size: 12px;
  color: #4e594d;
  margin: 0;
}
.weekly-access-btn {
  background: #991b1b;
  color: #fff;
  text-decoration: none;
  padding: 10px 16px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background 0.15s;
}
.weekly-access-btn:hover {
  background: #7f1d1d;
}

/* Barra de Especialidades Médicas */
.specialties-bar {
  margin-bottom: 24px;
}
.specialties-heading {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
  color: #566155;
  margin-bottom: 10px;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 8px;
}
.specialties-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.specialty-chip {
  background: #fff;
  border: 1px solid #d9ded6;
  border-radius: 20px;
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 600;
  color: #3b4539;
  cursor: pointer;
  transition: all 0.15s;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.specialty-chip:hover {
  border-color: #991b1b;
  color: #991b1b;
}
.specialty-chip.active {
  background: #991b1b;
  border-color: #991b1b;
  color: #fff;
}
.specialty-chip-count {
  font-size: 9px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 10px;
  background: #fdf2f2;
  color: #991b1b;
}
.specialty-chip.active .specialty-chip-count {
  background: #fff;
  color: #991b1b;
}

/* Buscador y Filtros Avanzados */
.filter-search-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px 20px;
  margin-bottom: 30px;
}
.filter-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 12px;
  align-items: flex-end;
}
.filter-group {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.filter-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.8px;
  color: #596457;
  text-transform: uppercase;
}
.filter-input, .filter-select {
  border: 1px solid #d7dcd4;
  background: #fdfdfc;
  border-radius: 5px;
  padding: 9px 12px;
  font: 500 12px 'DM Sans', sans-serif;
  color: #241818;
  width: 100%;
}
.filter-input:focus, .filter-select:focus {
  border-color: #991b1b;
  outline: none;
}
.filter-actions {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #f0f2ed;
  justify-content: space-between;
  align-items: center;
}
.filter-reset-btn {
  background: none;
  border: none;
  color: #727c70;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  padding: 4px 8px;
}
.filter-reset-btn:hover {
  color: #a83232;
}

/* Artículo Destacado */
.featured-article-card {
  background: #fff;
  border: 2px solid #991b1b;
  border-radius: 9px;
  padding: 24px;
  margin-bottom: 36px;
  position: relative;
  box-shadow: 0 4px 18px rgba(36, 86, 56, 0.06);
}
.featured-badge-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.featured-label {
  background: #991b1b;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.2px;
  padding: 4px 10px;
  border-radius: 4px;
  text-transform: uppercase;
}
.featured-title {
  font: 800 24px/1.25 var(--serif);
  color: #1f1616;
  margin: 0 0 12px;
}
.featured-question {
  background: #fbfbf9;
  border-left: 3px solid #991b1b;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
  color: #241818;
  margin-bottom: 16px;
  line-height: 1.5;
}
.featured-finding-box {
  background: #fdf2f2;
  border: 1px solid #f8c8c8;
  border-radius: 6px;
  padding: 14px 18px;
  margin-bottom: 16px;
}
.featured-finding-box strong {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.8px;
  color: #991b1b;
  margin-bottom: 4px;
  text-transform: uppercase;
}
.featured-finding-box p {
  margin: 0;
  font-size: 12px;
  color: #2a1a1a;
  line-height: 1.6;
}
.featured-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #edf1eb;
  font-size: 11px;
  color: #667064;
}

/* Badges de Categoría de Cambio Asistencial */
.badge-impact {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.badge-impact-cambia {
  background: #fbeae8;
  color: #a83232;
  border: 1px solid #f3c7c2;
}
.badge-impact-refuerza {
  background: #fdf2f2;
  color: #991b1b;
  border: 1px solid #f8c8c8;
}
.badge-impact-hipotesis {
  background: #fcf4e6;
  color: #8c5b1b;
  border: 1px solid #f5deba;
}
.badge-impact-no-aplica {
  background: #f0f2ee;
  color: #636b60;
  border: 1px solid #dcdfd9;
}

/* Tarjetas de Artículo en Feed */
.journal-article-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 20px;
  margin-bottom: 16px;
  transition: transform 0.15s, border-color 0.15s;
}
.journal-article-card:hover {
  border-color: #991b1b;
  transform: translateY(-2px);
}
.journal-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}
.journal-card-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.journal-card-date {
  font-size: 10px;
  color: #7a8277;
}
.journal-card-title {
  font: 700 17px/1.35 var(--serif);
  color: #211818;
  margin: 0 0 8px;
}
.journal-card-title a {
  color: inherit;
  text-decoration: none;
}
.journal-card-title a:hover {
  color: #991b1b;
  text-decoration: underline;
}
.journal-card-question {
  font-size: 12px;
  color: #4a5448;
  line-height: 1.55;
  margin: 0 0 12px;
}
.journal-card-finding {
  background: #fbfbf9;
  border-left: 2px solid #dc2626;
  padding: 8px 12px;
  font-size: 11px;
  color: #434c41;
  margin-bottom: 14px;
  line-height: 1.5;
}
.journal-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 12px;
  border-top: 1px solid #f1f3ee;
  font-size: 10px;
  color: #6d756b;
}

/* Página de Artículo Canónico en 10 Secciones */
.canonical-article-header {
  margin-bottom: 24px;
}
.canonical-kicker-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
.canonical-main-title {
  font: 800 32px/1.2 var(--serif);
  color: #1f1616;
  margin: 0 0 14px;
  letter-spacing: -1px;
}
.canonical-citation-box {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 14px 18px;
  font-size: 11px;
  color: #3d2626;
  margin-bottom: 24px;
}
.canonical-section-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 22px;
  margin-bottom: 20px;
}
.canonical-section-card h2 {
  font: 700 17px var(--serif);
  color: #211818;
  margin: 0 0 10px;
  border-bottom: 1px solid #f0f2ec;
  padding-bottom: 6px;
}
.canonical-section-card p, .canonical-section-card pre {
  font-size: 12px;
  line-height: 1.7;
  color: #3b2626;
  margin: 0;
  white-space: pre-wrap;
  font-family: inherit;
}

/* Callouts destacados para Artículo Canónico */
.callout-quant {
  background: #fdfbfb;
  border-left: 4px solid #991b1b;
}
.callout-quant h2 {
  color: #991b1b;
}
.callout-guardia {
  background: linear-gradient(135deg, #fdf4f4 0%, #fae8e8 100%);
  border: 1px solid #f8c8c8;
  border-left: 5px solid #991b1b;
}
.callout-guardia h2 {
  color: #7f1d1d;
}
.callout-conclusion {
  background: #fff;
  border: 1px solid #fca5a5;
}

/* Alertas de Retractación y Fe de Erratas */
.banner-retraction-alert {
  background: #fdf2f2;
  border: 2px solid #c93b2b;
  border-radius: 7px;
  padding: 18px 22px;
  margin-bottom: 24px;
  color: #9c2518;
}
.banner-retraction-alert strong {
  display: block;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 6px;
}
.banner-retraction-alert p {
  font-size: 12px;
  line-height: 1.6;
  margin: 0;
}
.banner-errata-notice {
  background: #fffbf2;
  border-left: 4px solid #d49326;
  border-radius: 4px;
  padding: 14px 18px;
  margin-bottom: 22px;
  color: #7d540f;
  font-size: 12px;
}

/* Sidebar de Artículo Canónico */
.canonical-meta-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 18px;
  margin-bottom: 16px;
}
.canonical-meta-card h3 {
  font: 700 13px var(--serif);
  color: #991b1b;
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-size: 10px;
}
.meta-field-row {
  margin-bottom: 10px;
  font-size: 11px;
}
.meta-field-label {
  display: block;
  font-size: 9px;
  font-weight: 700;
  color: #6a7467;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 2px;
}
.meta-field-val {
  color: #2d362b;
  font-weight: 500;
}
.meta-external-link {
  color: #991b1b;
  font-weight: 700;
  text-decoration: underline;
  word-break: break-all;
}
.ai-transparency-box {
  background: #f7f8f5;
  border: 1px solid #e5e8e1;
  border-radius: 6px;
  padding: 12px 14px;
  font-size: 10px;
  line-height: 1.55;
  color: #61695f;
  margin-top: 14px;
}

@media (max-width: 820px) {
  .journal-hero-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .filter-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .weekly-access-banner {
    flex-direction: column;
    align-items: flex-start;
  }
  .featured-title {
    font-size: 20px;
  }
  .canonical-main-title {
    font-size: 24px;
  }
}



