/* news — owned by the news agent. Hairline editorial news page (index, show, dialog, components).
   Tokens only (--mn-*): dark mode follows .dark .mn-body automatically. No build step. */

/* ---------- shared atoms ---------- */
.nw-label{margin:0 0 .75rem;font-size:var(--mn-t-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mn-mute)}
.nw-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .6rem;margin:0;font-size:var(--mn-t-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mn-brand-ink)}
.nw-kicker>*+*::before{content:"";display:inline-block;width:3px;height:3px;margin-right:.6rem;border-radius:50%;background:var(--mn-line-2);vertical-align:middle}
.nw-kicker time{color:var(--mn-mute);letter-spacing:.04em}
.nw-kicker a{color:inherit;text-decoration:none}
.nw-kicker a:hover{text-decoration:underline;text-underline-offset:4px}
.nw-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .9rem;margin:0;font-size:var(--mn-t-sm);color:var(--mn-mute)}
.nw-meta>span:not(.nw-cor){color:var(--mn-text)}
.nw-hit{color:inherit;text-decoration:none}
.nw-hit::after{content:"";position:absolute;inset:0;z-index:1}
.nw-hit:focus-visible{outline:none}
.nw-hit:focus-visible::after{outline:2px solid var(--mn-brand);outline-offset:4px;border-radius:var(--mn-r-sm)}
.nw-flip{transform:rotate(180deg)}
.nw-mob{display:inline-flex}
.nw-desk{display:none!important}
@media(min-width:64rem){.nw-mob{display:none!important}.nw-desk{display:flex!important}}

/* image + placeholder */
.nw-img{display:block;width:100%;height:100%;object-fit:cover}
.nw-ph{position:relative;display:grid;place-items:center;width:100%;height:100%;color:var(--mn-brand-ink);background:
  radial-gradient(120% 90% at 85% 10%,color-mix(in srgb,var(--mn-brand) 16%,transparent),transparent 60%),
  linear-gradient(140deg,var(--mn-brand-l),var(--mn-soft))}
.nw-ph--2{color:var(--mn-gold);background:radial-gradient(120% 90% at 15% 0%,color-mix(in srgb,var(--mn-gold) 14%,transparent),transparent 60%),linear-gradient(140deg,var(--mn-gold-l),var(--mn-soft))}
.nw-ph--3{background:radial-gradient(120% 90% at 50% 120%,color-mix(in srgb,var(--mn-brand) 14%,transparent),transparent 60%),linear-gradient(160deg,var(--mn-sand),var(--mn-soft))}
.nw-ph::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 22px,color-mix(in srgb,currentColor 5%,transparent) 22px 23px)}
.nw-ph__i{position:relative;z-index:1;width:clamp(1.75rem,22%,3.25rem);height:auto;aspect-ratio:1;stroke-width:1.2;opacity:.75}

/* corroboration indicator: two discs, second filled when corroborated */
.nw-cor{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--mn-t-xs);font-weight:500;color:var(--mn-mute);white-space:nowrap}
.nw-cor__i{width:1.15rem;height:.7rem;flex:none}
.nw-cor__i circle{fill:none;stroke:currentColor;stroke-width:1.4}
.nw-cor.is-ok{color:var(--mn-ok)}
.nw-cor.is-ok .nw-cor__i circle{fill:color-mix(in srgb,currentColor 22%,transparent)}
.nw-cor:not(.is-ok) .nw-cor__second{stroke-dasharray:2 2.2;opacity:.6}
.nw-cor--overlay{padding:.3rem .65rem;border-radius:var(--mn-r-pill);background:color-mix(in srgb,var(--mn-bg) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}

/* reliability: thin bar + label */
.nw-meter{margin-top:.65rem;max-width:22rem}
.nw-meter__row{display:flex;justify-content:space-between;gap:.75rem;font-size:var(--mn-t-xs);color:var(--mn-mute)}
.nw-meter__val{color:var(--mn-text);font-variant-numeric:tabular-nums}
.nw-meter__val b{font-weight:600;color:var(--mn-ink)}
.nw-meter__track{position:relative;height:3px;margin-top:.45rem;border-radius:3px;background:var(--mn-line)}
.nw-meter__fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--mn-ok)}
.nw-meter--strong .nw-meter__fill{background:var(--mn-brand)}
.nw-meter--moderate .nw-meter__fill{background:var(--mn-gold)}
.nw-meter--caution .nw-meter__fill{background:var(--mn-red)}

/* ---------- page header ---------- */
.nw-top{padding:clamp(1.5rem,4vw,2.75rem) 0 clamp(1.25rem,3vw,2rem)}
.nw-top__title{margin-top:.9rem!important;max-width:18ch}
.nw-top__row{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:.75rem 2rem;margin-top:1rem}
.nw-top__lead{margin:0}
.nw-live{display:inline-flex;align-items:center;gap:.55rem;margin:0;font-size:var(--mn-t-sm);color:var(--mn-mute)}
.nw-live__dot{position:relative;width:.5rem;height:.5rem;flex:none;border-radius:50%;background:var(--mn-ok)}
@media(prefers-reduced-motion:no-preference){.nw-live__dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:nw-pulse 2.4s var(--mn-ease-out) infinite}}
@keyframes nw-pulse{0%{transform:scale(1);opacity:.6}80%,100%{transform:scale(3);opacity:0}}

/* live strip */
.nw-ticker{border-block:1px solid var(--mn-line)}
.nw-ticker__in{display:flex;align-items:center;gap:1rem;min-height:3rem}
.nw-ticker__label{display:inline-flex;align-items:center;gap:.5rem;flex:none;font-size:var(--mn-t-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mn-ink)}
.nw-ticker__list{display:flex;gap:1.75rem;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,#000 calc(100% - 2.5rem),transparent);mask:linear-gradient(90deg,#000 calc(100% - 2.5rem),transparent);scroll-snap-type:x proximity}
.nw-ticker__list::-webkit-scrollbar{display:none}
.nw-ticker__list li{flex:none;scroll-snap-align:start}
.nw-ticker__list a{display:inline-flex;align-items:baseline;gap:.5rem;min-height:2.75rem;align-items:center;max-width:26rem;font-size:var(--mn-t-sm);color:var(--mn-text);text-decoration:none;white-space:nowrap}
.nw-ticker__list a span{overflow:hidden;text-overflow:ellipsis}
.nw-ticker__list a:hover span{color:var(--mn-ink);text-decoration:underline;text-decoration-color:var(--mn-line-2);text-underline-offset:4px}
.nw-ticker__list time{font-size:var(--mn-t-xs);font-weight:600;color:var(--mn-brand-ink)}

/* ---------- sticky filter bar ---------- */
.nw-bar{position:sticky;top:var(--mn-hh);z-index:30;background:var(--mn-bg);transition:box-shadow .25s}
.nw-bar.is-stuck{box-shadow:0 1px 0 var(--mn-line),0 12px 24px -20px rgb(var(--mn-shadow-rgb)/30%)}
.nw-bar__in{display:flex;align-items:center;gap:.75rem}
.nw-tabs{flex:1 1 auto;min-width:0;gap:1.5rem}
.nw-tabs .mn-tab{min-height:2.9rem;font-size:.93rem}
.nw-filterbtn{flex:none;align-items:center;gap:.45rem;min-height:2.75rem;padding:0 .9rem;border:1px solid var(--mn-line-2);border-radius:var(--mn-r-pill);background:transparent!important;box-shadow:none!important;color:var(--mn-ink);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}
.nw-filterbtn .mn-i{width:1.05rem;height:1.05rem}
.nw-filterbtn__n{display:inline-grid;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:var(--mn-r-pill);background:var(--mn-ink);color:var(--mn-bg);font-size:.7rem}
@media(max-width:23.9rem){.nw-filterbtn span:not(.nw-filterbtn__n){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.nw-filterbtn{padding:0 .75rem}}

.nw-search{position:relative;align-items:center;flex:none;width:15rem;height:2.5rem;border-bottom:1px solid var(--mn-line-2);transition:border-color .2s,width .3s var(--mn-ease)}
.nw-search:focus-within{border-color:var(--mn-ink);width:18rem}
.nw-search input{width:100%;height:100%;padding:0 2.5rem 0 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--mn-ink);font:inherit;font-size:16px;box-shadow:none!important;outline:0!important}
@media(min-width:64rem){.nw-search input{font-size:.93rem}}
.nw-search input::placeholder{color:var(--mn-mute)}
.nw-search input::-webkit-search-cancel-button{display:none}
.nw-search__go{position:absolute;right:-.5rem;top:50%;translate:0 -50%;display:grid;place-items:center;width:2.75rem;height:2.75rem;border:0;background:none;color:var(--mn-mute);cursor:pointer}
.nw-search__go:hover{color:var(--mn-ink)}
.nw-search--block{display:flex;width:100%;height:3rem}
.nw-search--block:focus-within{width:100%}
.nw-search--block .mn-i{position:absolute;right:0;color:var(--mn-mute);pointer-events:none}

/* ---------- filter sheet (mobile) ---------- */
.nw-sheet{width:100%;max-width:100%;max-height:88dvh;margin:auto 0 0;padding:0;border:0;border-radius:var(--mn-r-xl) var(--mn-r-xl) 0 0;background:var(--mn-bg);color:var(--mn-text);box-shadow:var(--mn-sh-lg);overflow:auto;overscroll-behavior:contain}
.nw-sheet::backdrop,.nw-dialog::backdrop{background:rgb(var(--mn-scrim-rgb)/55%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
@media(prefers-reduced-motion:no-preference){.nw-sheet[open]{animation:nw-up .35s var(--mn-ease-out)}}
@keyframes nw-up{from{transform:translateY(24px);opacity:0}}
.nw-sheet__head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:.75rem var(--mn-gut) .5rem;background:var(--mn-bg);border-bottom:1px solid var(--mn-line)}
.nw-sheet__body{padding:1.25rem var(--mn-gut) 0}
.nw-opts{margin:1.75rem 0 0;padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem}
.nw-opts legend{padding:0}
.nw-sheet label.nw-label{display:block;font-size:var(--mn-t-xs)!important;font-weight:600!important;letter-spacing:.12em!important;text-transform:uppercase;color:var(--mn-mute)!important}
.nw-opt{position:relative;display:flex;align-items:center;min-height:3rem;border-bottom:1px solid var(--mn-line);font-size:.95rem;color:var(--mn-text);cursor:pointer}
.nw-opt input{position:absolute;opacity:0;pointer-events:none}
.nw-opt span::after{content:"";position:absolute;right:.15rem;top:50%;width:.45rem;height:.8rem;margin-top:-.5rem;border:solid var(--mn-brand-ink);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .2s var(--mn-ease)}
.nw-opt input:checked+span{color:var(--mn-ink);font-weight:600}
.nw-opt input:checked+span::after{transform:rotate(45deg) scale(1)}
.nw-opt input:focus-visible+span{outline:2px solid var(--mn-brand);outline-offset:3px}
.nw-sheet__foot{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem calc(var(--mn-gut) * -1) 0;padding:.9rem var(--mn-gut) calc(.9rem + env(safe-area-inset-bottom));background:var(--mn-bg);border-top:1px solid var(--mn-line)}

/* ---------- active filters ---------- */
.nw-active{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;padding-top:1.25rem}
.nw-active__count{margin:0;font-size:var(--mn-t-sm);color:var(--mn-mute);font-variant-numeric:tabular-nums}
.nw-active__chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;padding:0;list-style:none}
.nw-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;padding:0 .6rem 0 1rem;border:1px solid var(--mn-line-2);border-radius:var(--mn-r-pill);font-size:.88rem;font-weight:600;color:var(--mn-ink);text-decoration:none;transition:border-color .2s}
.nw-chip .mn-i{width:1rem;height:1rem;color:var(--mn-mute)}
.nw-chip:hover{border-color:var(--mn-ink)}
.nw-chip:hover .mn-i{color:var(--mn-ink)}
.nw-clear{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 .4rem;font-size:.88rem;color:var(--mn-mute);text-decoration:underline;text-decoration-color:var(--mn-line-2);text-underline-offset:4px}
.nw-clear:hover{color:var(--mn-ink)}

/* ---------- skeleton (shown while navigating) ---------- */
.nw-skel{display:none;padding-top:2rem}
.nw-main.is-loading .nw-skel{display:block}
.nw-main.is-loading>:not(.nw-skel){display:none}
.nw-skel__row{display:grid;grid-template-columns:1fr 6.5rem;gap:1rem;padding:1.25rem 0;border-top:1px solid var(--mn-line)}
.nw-skel__t{display:none}
.nw-skel__b{display:grid;gap:.6rem;align-content:start}
.nw-skel__b span{height:.8rem;border-radius:4px}
.nw-skel__b span:nth-child(1){width:30%;height:.6rem}
.nw-skel__b span:nth-child(3){width:70%}
.nw-skel__m{aspect-ratio:1;border-radius:var(--mn-r-sm)}
@media(min-width:48rem){.nw-skel__row{grid-template-columns:4.5rem 1fr 11rem}.nw-skel__t{display:block;height:.8rem;width:2.5rem;border-radius:4px}.nw-skel__m{aspect-ratio:16/10}}

/* ---------- front: lead + "à la une" ---------- */
.nw-front{display:grid;gap:2rem;padding-top:clamp(1.25rem,3vw,2.25rem);padding-bottom:clamp(2rem,5vw,3.5rem)}
.nw-lead{position:relative;display:grid;gap:1.1rem}
.nw-lead__media{position:relative;aspect-ratio:16/9;margin:0 calc(var(--mn-gut) * -1);overflow:hidden;background:var(--mn-soft)}
.nw-lead__media .nw-img{transition:transform .9s var(--mn-ease-out)}
.nw-lead:hover .nw-lead__media .nw-img{transform:scale(1.025)}
.nw-lead__title{margin:.6rem 0 0;font-size:clamp(1.55rem,3.4vw,2.4rem);line-height:1.1;font-weight:600;letter-spacing:-.03em;color:var(--mn-ink);text-wrap:balance}
.nw-lead:hover .nw-lead__title{color:var(--mn-brand-ink)}
.nw-lead__sum{margin:.8rem 0 0;max-width:62ch;font-size:var(--mn-t-lg);line-height:1.6;color:var(--mn-text);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.nw-lead .nw-meta{margin-top:1rem;position:relative;z-index:2}
.nw-lead .nw-kicker span:first-child{color:var(--mn-ink)}
.nw-une__list{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--mn-line)}
.nw-une__item{position:relative;display:grid;grid-template-columns:2rem 1fr;gap:.6rem;padding:.95rem 0;border-top:1px solid var(--mn-line)}
.nw-une__n{font-size:var(--mn-t-sm);font-weight:600;color:var(--mn-line-2);font-variant-numeric:tabular-nums;line-height:1.5}
.nw-une__title{margin:.3rem 0 0;font-size:1rem;line-height:1.35;font-weight:600;letter-spacing:-.01em;color:var(--mn-ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nw-une__item:hover .nw-une__title{color:var(--mn-brand-ink)}
.nw-une__item:hover .nw-une__n{color:var(--mn-brand-ink)}
@media(min-width:48rem){.nw-lead__media{margin:0;border-radius:var(--mn-r-lg)}}
@media(min-width:64rem){
  .nw-front{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:clamp(2rem,4vw,3.5rem);align-items:start}
  .nw-une{padding-left:clamp(1.5rem,3vw,2.5rem);border-left:1px solid var(--mn-line)}
  .nw-une .nw-une__item:first-child{border-top:0;padding-top:0}
  .nw-une__list{border-bottom:0}
}

/* ---------- stream ---------- */
.nw-stream{padding-top:clamp(1.5rem,4vw,2.5rem);padding-bottom:clamp(2rem,5vw,3.5rem)}
.nw-stream__head{margin-bottom:.5rem}
.nw-day{margin-top:1.75rem}
.nw-day__h{position:sticky;top:calc(var(--mn-hh) + 3rem);z-index:5;display:flex;align-items:baseline;gap:.6rem;margin:0;padding:.6rem 0;background:var(--mn-bg);font-size:var(--mn-t-sm);font-weight:700;letter-spacing:.02em;color:var(--mn-ink)}
.nw-day__h small{font-size:var(--mn-t-sm);font-weight:400;color:var(--mn-mute)}
.nw-list{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--mn-line)}
.nw-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 6.5rem;gap:1rem;padding:1.15rem 0;border-top:1px solid var(--mn-line)}
.nw-row__time{display:none;font-size:var(--mn-t-sm);font-weight:600;color:var(--mn-ink);padding-top:.1rem}
.nw-row__body{min-width:0}
.nw-row__title{margin:.4rem 0 0;font-size:1.06rem;line-height:1.32;font-weight:600;letter-spacing:-.012em;color:var(--mn-ink);text-wrap:pretty}
.nw-row:hover .nw-row__title{color:var(--mn-brand-ink)}
.nw-row__sum{display:none;margin:.45rem 0 0;max-width:68ch;font-size:.95rem;line-height:1.55;color:var(--mn-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nw-row .nw-meta{margin-top:.55rem;position:relative;z-index:2;font-size:var(--mn-t-xs)}
.nw-row__media{margin:0;aspect-ratio:1;border-radius:var(--mn-r-sm);overflow:hidden;align-self:start;background:var(--mn-soft)}
.nw-row__media .nw-img{transition:transform .6s var(--mn-ease-out)}
.nw-row:hover .nw-row__media .nw-img{transform:scale(1.04)}
@media(min-width:40rem){.nw-row__sum{display:-webkit-box}}
@media(min-width:48rem){
  .nw-row{grid-template-columns:4.5rem minmax(0,1fr) 11rem;gap:1.5rem;padding:1.5rem 0}
  .nw-row__time{display:block}
  .nw-row__time-m{display:none}
  .nw-row .nw-kicker>time+*::before,.nw-row .nw-kicker>span+time::before{display:none}
  .nw-row__media{aspect-ratio:16/10}
  .nw-row__title{font-size:1.2rem}
}
@media(min-width:64rem){.nw-row{grid-template-columns:5.5rem minmax(0,1fr) 13rem}}

/* pager */
.nw-pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-top:2rem}
.nw-pager>:first-child{justify-self:start}
.nw-pager>:last-child{justify-self:end}
.nw-pager__n{font-size:var(--mn-t-sm);color:var(--mn-mute);font-variant-numeric:tabular-nums;text-align:center}
@media(max-width:29.9rem){.nw-pager{grid-template-columns:1fr 1fr}.nw-pager__n{grid-column:1/-1;grid-row:1}}

/* by topic */
.nw-topics{padding-top:clamp(1.5rem,4vw,2.5rem);padding-bottom:clamp(2rem,5vw,3.5rem)}
.nw-topics__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:2rem clamp(1.5rem,3vw,2.5rem)}
.nw-topic__h{margin:0;padding-bottom:.4rem;border-bottom:1px solid var(--mn-ink)}
.nw-topic__h a{display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;font-size:1.05rem;font-weight:600;color:var(--mn-ink);text-decoration:none}
.nw-topic__h .mn-i{width:1rem;height:1rem;color:var(--mn-mute);transition:transform .25s var(--mn-ease)}
.nw-topic__h a:hover{color:var(--mn-brand-ink)}
.nw-topic__h a:hover .mn-i{transform:translateX(3px);color:currentColor}
.nw-topic ul{margin:0;padding:0;list-style:none}
.nw-topic li{padding:.8rem 0;border-bottom:1px solid var(--mn-line)}
.nw-topic__a{display:block;font-size:.95rem;line-height:1.4;font-weight:500;color:var(--mn-ink);text-decoration:none}
.nw-topic__a:hover{color:var(--mn-brand-ink)}
.nw-topic time{display:block;margin-top:.3rem;font-size:var(--mn-t-xs);color:var(--mn-mute)}

/* how this works + empty */
.nw-how{padding-bottom:calc(88px + 1rem)}
@media(min-width:64rem){.nw-how{padding-bottom:var(--mn-s6)}}
.nw-how details{border-block:1px solid var(--mn-line)}
.nw-how summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.5rem;font-weight:600;color:var(--mn-ink);cursor:pointer;list-style:none}
.nw-how summary::-webkit-details-marker{display:none}
.nw-how summary .mn-i{color:var(--mn-mute);transition:transform .3s var(--mn-ease)}
.nw-how details[open] summary .mn-i{transform:rotate(180deg)}
.nw-how p{max-width:68ch;margin:0 0 1rem;font-size:.95rem;line-height:1.65;color:var(--mn-text)}
.nw-empty{display:grid;justify-items:center;gap:.75rem;padding-block:clamp(3rem,10vw,6rem);text-align:center}
.nw-empty__art{display:grid;place-items:center;width:7rem;height:7rem;margin-bottom:.5rem;border-radius:50%;color:var(--mn-brand-ink);background:radial-gradient(circle at 30% 25%,var(--mn-brand-l),var(--mn-soft) 70%)}
.nw-empty__art .mn-i{width:2.5rem;height:2.5rem;stroke-width:1.2}
.nw-empty .mn-mute{max-width:40ch;margin:0 0 .75rem}

/* ---------- dialog ---------- */
.nw-dialog{width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:0;background:var(--mn-bg);color:var(--mn-text);overflow:hidden;overscroll-behavior:contain}
.nw-dialog__in{display:flex;flex-direction:column;height:100%;max-height:100dvh}
@media(prefers-reduced-motion:no-preference){.nw-dialog[open]{animation:nw-up .35s var(--mn-ease-out)}}
.nw-dialog__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex:none;padding:.4rem .5rem .4rem var(--mn-gut);border-bottom:1px solid var(--mn-line)}
.nw-dialog__x{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border:0;border-radius:50%;background:transparent;color:var(--mn-ink);cursor:pointer;transition:background-color .2s}
.nw-dialog__x:hover{background:color-mix(in srgb,var(--mn-ink) 7%,transparent)}
.nw-dialog__scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.nw-dialog__head{padding:1.25rem var(--mn-gut) 1.25rem}
.nw-dialog__title{margin:0;font-size:clamp(1.5rem,4vw,2.1rem);line-height:1.12;font-weight:600;letter-spacing:-.03em;color:var(--mn-ink);text-wrap:balance}
.nw-dialog__head .nw-meta{margin-top:.9rem}
.nw-dialog__media{margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--mn-soft)}
.nw-dialog__body{padding:1.5rem var(--mn-gut) 0}
.nw-dialog__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-top:2rem;padding:1rem var(--mn-gut) calc(1rem + env(safe-area-inset-bottom));border-top:1px solid var(--mn-line)}
.nw-dialog__acts{display:flex;align-items:center;gap:1rem;margin-left:auto}
@media(min-width:48rem){
  .nw-dialog__in{max-height:calc(100dvh - 3rem)}
  .nw-dialog{width:min(48rem,calc(100vw - 3rem));height:auto;max-height:calc(100dvh - 3rem);margin:auto;border:1px solid var(--mn-line);border-radius:var(--mn-r-xl);box-shadow:var(--mn-sh-lg)}
  .nw-dialog__head,.nw-dialog__body{padding-inline:2.5rem}
  .nw-dialog__media{margin-inline:2.5rem;border-radius:var(--mn-r)}
  .nw-dialog__foot{padding-inline:2.5rem}
  .nw-dialog__bar{padding-left:2.5rem}
}

/* ---------- prose / key points / sources (dialog + article) ---------- */
.nw-prose-wrap{max-width:68ch}
.nw-standfirst{margin:0;font-size:var(--mn-t-lg);line-height:1.6;font-weight:500;color:var(--mn-ink)}
.nw-points{margin:0}
.nw-points ul{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--mn-line)}
.nw-points li{position:relative;padding:.85rem 0 .85rem 1.5rem;border-top:1px solid var(--mn-line);font-size:1.02rem;line-height:1.55;color:var(--mn-ink)}
.nw-points li::before{content:"";position:absolute;left:0;top:1.45rem;width:.75rem;height:1px;background:var(--mn-brand)}
.nw-prose{margin-top:1.75rem;font-size:1.05rem;line-height:1.75;color:var(--mn-text);overflow-wrap:anywhere}
.nw-prose>*{margin:0}
.nw-prose>*+*{margin-top:1.1em}
.nw-prose :is(h2,h3,h4){margin-top:1.8em;font-weight:600;line-height:1.3;color:var(--mn-ink);letter-spacing:-.015em}
.nw-prose h2{font-size:1.35rem}.nw-prose h3{font-size:1.15rem}.nw-prose h4{font-size:1.02rem}
.nw-prose :is(ul,ol){padding-left:1.25rem}
.nw-prose li+li{margin-top:.4em}
.nw-prose a{color:var(--mn-brand-ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:3px}
.nw-prose blockquote{padding-left:1.1rem;border-left:2px solid var(--mn-brand);color:var(--mn-ink);font-style:italic}
.nw-prose img{max-width:100%;height:auto;border-radius:var(--mn-r)}
.nw-prose hr{border:0;border-top:1px solid var(--mn-line)}
.nw-prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.92rem}
.nw-prose :is(th,td){padding:.55rem .75rem;border-bottom:1px solid var(--mn-line);text-align:left;vertical-align:top}
.nw-prose code{font-size:.9em;padding:.1em .3em;border-radius:4px;background:var(--mn-soft)}

.nw-sources{margin-top:2.25rem;padding-top:1.25rem;border-top:1px solid var(--mn-ink)}
.nw-sources__cor{font-size:var(--mn-t-sm)}
.nw-sources__help{margin:.5rem 0 0;font-size:var(--mn-t-sm);line-height:1.55;color:var(--mn-mute)}
.nw-sources__list{margin:1rem 0 0;padding:0;list-style:none}
.nw-sources__list li{padding:1rem 0;border-top:1px solid var(--mn-line)}
.nw-sources__link{display:block;color:var(--mn-ink);text-decoration:none;overflow-wrap:anywhere}
.nw-sources__link strong{display:block;font-size:.95rem;font-weight:600}
.nw-sources__link span{display:block;margin-top:.2rem;font-size:var(--mn-t-sm);line-height:1.45;color:var(--mn-text)}
.nw-sources__link:hover strong{color:var(--mn-brand-ink);text-decoration:underline;text-underline-offset:3px}
.nw-sources__date{display:block;margin-top:.3rem;font-size:var(--mn-t-xs);color:var(--mn-mute)}
.nw-note{display:flex;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--mn-line);font-size:var(--mn-t-sm);line-height:1.55;color:var(--mn-mute)}
.nw-note .mn-i{width:1.1rem;height:1.1rem;margin-top:.15rem;color:var(--mn-brand-ink)}
.nw-note p{margin:0}
.nw-note p+p{margin-top:.4rem}
.nw-note__t{color:var(--mn-ink);font-weight:600}
.nw-note__d{font-size:var(--mn-t-xs)}

.nw-share{display:inline-flex;align-items:center;gap:.75rem}
.nw-share__btn .mn-i{width:1rem;height:1rem}
.nw-share__ok{font-size:var(--mn-t-sm);color:var(--mn-ok)}

/* ---------- article page ---------- */
.nw-article__top{padding-top:clamp(1rem,3vw,1.75rem)}
.nw-back{display:inline-flex;align-items:center;gap:.45rem;min-height:2.75rem;font-size:var(--mn-t-sm);font-weight:600;color:var(--mn-mute);text-decoration:none}
.nw-back .mn-i{width:1rem;height:1rem;transition:transform .25s var(--mn-ease)}
.nw-back:hover{color:var(--mn-ink)}
.nw-back:hover .mn-i{transform:rotate(180deg) translateX(3px)}
.nw-article__head{max-width:52rem;padding:clamp(1rem,3vw,2rem) 0 clamp(1.25rem,3vw,2rem)}
.nw-article__title{margin:.8rem 0 0;font-size:clamp(1.9rem,5vw,3.2rem);line-height:1.06;font-weight:600;letter-spacing:-.035em;color:var(--mn-ink);text-wrap:balance}
.nw-article__head .nw-meta{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--mn-line)}
.nw-hero{margin:0 auto;max-width:var(--mn-max);aspect-ratio:16/9;max-height:42rem;overflow:hidden;background:var(--mn-soft)}
@media(min-width:48rem){.nw-hero{width:calc(100% - 2 * var(--mn-gut));border-radius:var(--mn-r-lg)}}
.nw-article__grid{display:grid;gap:1rem;padding-top:clamp(1.75rem,4vw,3rem);padding-bottom:clamp(2rem,5vw,3.5rem)}
.nw-article__share{margin-top:2rem}
@media(min-width:64rem){
  .nw-article__grid{grid-template-columns:minmax(0,68ch) minmax(16rem,20rem);justify-content:space-between;gap:4rem}
  .nw-article__aside{position:sticky;top:calc(var(--mn-hh) + 1.5rem)}
  .nw-article__aside .nw-sources{margin-top:0}
}

/* related */
.nw-related{padding-top:clamp(1.5rem,4vw,2.5rem);padding-bottom:calc(88px + 1rem)}
@media(min-width:64rem){.nw-related{padding-bottom:var(--mn-s6)}}
.nw-related__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:2rem 1.5rem;margin:0;padding:0;list-style:none}
.nw-card{position:relative}
.nw-card__media{margin:0 0 .9rem;aspect-ratio:16/10;border-radius:var(--mn-r);overflow:hidden;background:var(--mn-soft)}
.nw-card__media .nw-img{transition:transform .6s var(--mn-ease-out)}
.nw-card:hover .nw-card__media .nw-img{transform:scale(1.04)}
.nw-card__title{margin:.45rem 0 0;font-size:1.02rem;line-height:1.35;font-weight:600;color:var(--mn-ink)}
.nw-card:hover .nw-card__title{color:var(--mn-brand-ink)}
.nw-article+.nw-related{border-top:1px solid var(--mn-line)}

/* guard against generic legacy `main article …` overrides in pages.css */
.mn-body main .nw-article :is(h2,h3).nw-label{font-size:var(--mn-t-xs)!important;line-height:1.4;color:var(--mn-mute)}
.mn-body main .nw-article:hover :is(h2,h3).nw-label{color:var(--mn-mute)}
.mn-body main .nw-article .nw-prose :is(h2,h3){font-size:1.25rem!important;color:var(--mn-ink)}
.mn-body main>.nw-article{padding:0!important;margin:0!important}
