/* EDITORIAL_JOURNEY_V1 — shared section and card family, content-independent. */
.ej-reader{--ej-ink:var(--color-text,#172b2b);--ej-accent:var(--color-accent,#166b65);--ej-paper:var(--color-bg,#fff);--ej-tint:color-mix(in srgb,var(--ej-accent) 6%,var(--ej-paper));--ej-line:color-mix(in srgb,var(--ej-ink) 14%,transparent);color:var(--ej-ink);max-width:1120px;margin-inline:auto}
.ej-reader [hidden]{display:none!important}
.ej-reader:fullscreen{max-width:none;width:100%;height:100%;overflow-y:auto;background:var(--ej-paper);padding:24px max(24px,calc((100vw - 1120px)/2))}
.ej-toolbar:after{content:"";position:absolute;height:3px;width:var(--ej-progress,0%);max-width:100%;left:0;bottom:0;border-radius:0 0 16px 16px;background:var(--ej-accent);pointer-events:none}
.ej-reader .ej-section__lead{font-size:19px;color:var(--ej-ink);line-height:1.65}
.ej-reader .ej-card p{margin:0;color:var(--ej-ink);font-size:16px;line-height:1.65}
.ej-reader .ej-card .ej-card__fact{color:var(--ej-accent)}
.ej-reader .ej-card .ej-card__action{color:var(--ej-ink)}
.ej-reader .ej-card .ej-card__limit{color:#614212}
.ej-reader .ej-card :is(h3,h4){margin:0;font-size:21px;font-weight:650;line-height:1.3}
.ej-toolbar{position:sticky;top:12px;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--ej-paper);border:1px solid var(--ej-line);border-radius:16px;box-shadow:0 6px 28px #10262610;margin-bottom:32px;overflow:hidden}
.ej-toolbar__identity,.ej-toolbar__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;font-weight:600}
.ej-toolbar__dot{width:8px;height:8px;background:var(--ej-accent);border-radius:50%}
.ej-toolbar output{font-variant-numeric:tabular-nums;opacity:.65}
.ej-toolbar__paging{display:flex;gap:2px}
.ej-reader .ej-toolbar__paging button{border-color:transparent;background:transparent;padding:6px;min-width:32px;color:var(--ej-ink)}
.ej-reader button{font:inherit;cursor:pointer;border:1px solid var(--ej-line);border-radius:10px;background:var(--ej-paper);color:var(--ej-ink);padding:10px 14px;min-height:44px}
.ej-reader button[data-ej-mode],.ej-controls button[data-ej-next]{background:var(--ej-accent);color:#fff;border-color:var(--ej-accent)}
.ej-reader button:disabled{opacity:.4;cursor:default}
.ej-reader :focus-visible{outline:3px solid var(--ej-accent);outline-offset:4px}
.ej-chapters{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px;background:var(--ej-tint);border-radius:16px;margin-bottom:32px}
.ej-chapters a{display:block;padding:12px;text-decoration:none;color:var(--ej-ink);font-size:14px;border-radius:8px}
.ej-chapters a[aria-current]{background:var(--ej-paper);font-weight:700}
.ej-section{margin:0;padding:46px 0 54px;scroll-margin-top:calc(var(--ej-toolbar-height,80px) + 24px);border-bottom:1px solid var(--ej-line)}
.ej-section:last-of-type{border-bottom:0}
.ej-section__copy{max-width:800px;margin-inline:auto}
.ej-reader .ej-section__copy>p{margin:22px 0;color:var(--ej-ink);line-height:1.8}
.ej-reader .ej-section__copy>.ej-section__lead{font-size:19px;line-height:1.65;margin-bottom:28px}
.ej-reader .ej-section__copy strong,.ej-reader .ej-card__body>p>strong{font-weight:700;color:var(--ej-ink)}
.ej-section__lead{max-width:780px;font-size:19px;line-height:1.7;margin:20px 0 28px}
.ej-section>p{max-width:780px;line-height:1.8;margin:20px 0}
.ej-reader .ej-section__copy>.ej-section__bridge{font-size:16px;font-weight:550;line-height:1.7;color:var(--ej-ink);margin:32px 0 12px;padding:22px 26px;border:1px solid color-mix(in srgb,var(--ej-accent) 14%,transparent);border-radius:16px;background:linear-gradient(110deg,var(--ej-tint),color-mix(in srgb,var(--ej-accent) 2%,var(--ej-paper)));text-wrap:pretty}
.ej-section__bridge-label{color:#76592e}
.ej-reader .ej-section__copy>.ej-section__bridge{background:#f6f1e8;border-color:#e6dac7}
.ej-block{margin:26px 0}
.ej-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0;list-style:none;margin:0;align-items:start}
.ej-card{min-width:0;padding:10px;border:1px solid color-mix(in srgb,var(--ej-ink) 10%,transparent);border-radius:18px;background:color-mix(in srgb,var(--ej-accent) 2.5%,var(--ej-paper));overflow:hidden;display:flex;flex-direction:column}
.ej-card--tinted{--ej-facts-paper:color-mix(in srgb,var(--ej-paper) 90%,transparent);--ej-action-paper:var(--ej-paper)}
.ej-card__body{padding:22px 20px 20px;display:flex;flex-direction:column;gap:14px;flex:1}
.ej-card h4{font-size:21px;line-height:1.3;letter-spacing:-.02em;margin:0;color:var(--ej-ink)}
.ej-card p{font-size:16px;line-height:1.65;margin:0}
.ej-card__label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--ej-accent)}
.ej-card__media{margin:0;position:relative;background:var(--ej-tint);border-radius:12px;overflow:hidden}
.ej-card__media img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin:0;border-radius:0}
.ej-reader .ej-card__media figcaption{position:absolute;inset:auto 0 0;margin:0;padding:32px 18px 14px;font-size:12px;line-height:1.55;color:#fff;background:linear-gradient(180deg,rgba(12,29,29,0),rgba(12,29,29,.78) 45%,rgba(12,29,29,.86));text-shadow:0 1px 2px #0006;text-align:left}
.ej-card__fact{font-weight:700;font-size:20px!important;letter-spacing:-.02em;color:var(--ej-accent)}
.ej-card__facts{margin:0;display:grid;gap:0;padding:4px 16px;background:var(--ej-facts-paper,color-mix(in srgb,var(--ej-ink) 3%,var(--ej-paper)));border-radius:12px}
.ej-card__facts>div{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px;padding:11px 0;border-bottom:1px solid var(--ej-line)}
.ej-card__facts>div:last-child{border-bottom:0}
.ej-card__facts dt,.ej-card__facts dd{font-size:14px;margin:0;line-height:1.5}
.ej-card__facts dd{text-align:right;font-weight:700}
.ej-card__guidance{display:grid;gap:10px;border-radius:0;overflow:visible;background:transparent}
.ej-card__action{padding:18px;border:0;border-radius:12px;font-weight:650;cursor:text;background:var(--ej-action-paper,color-mix(in srgb,var(--ej-accent) 8%,var(--ej-paper)))}
.ej-card__note-label{color:var(--ej-accent)}
.ej-reader .ej-card .ej-card__limit{font-size:14px;line-height:1.6;padding:16px 18px;border:0;border-radius:12px;background:#fff4e2}
.ej-card__limit strong{color:#795015}
.ej-reader :is(.ej-card__note-label,.ej-section__bridge-label,.ej-card__limit strong){display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750;line-height:1.4;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}
.ej-reader :is(.ej-card__note-label,.ej-section__bridge-label,.ej-card__limit strong) svg{display:block;flex:none;width:16px;height:16px;stroke-linecap:round;stroke-linejoin:round}
.ej-block--example .ej-cards,.ej-block--takeaway .ej-cards{grid-template-columns:1fr}
.ej-block--example .ej-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);background:var(--ej-tint)}
.ej-block--example .ej-card:not(:has(.ej-card__media)){grid-template-columns:1fr}
.ej-block--example .ej-card__media{display:flex;flex-direction:column}
.ej-block--example .ej-card__media img{flex:1;height:0;min-height:280px}
.ej-block--example .ej-card__media figcaption{flex:none}
.ej-cards--mixed-media{grid-template-columns:minmax(0,1fr)}
.ej-cards--mixed-media .ej-card--has-media{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.ej-cards--mixed-media .ej-card__media{display:flex;flex-direction:column}
.ej-cards--mixed-media .ej-card__media img{flex:1;height:0;min-height:260px}
.ej-cards--mixed-media .ej-card__media figcaption{flex:none}
.ej-cards--wide-rows{grid-template-columns:minmax(0,1fr)}
.ej-cards--wide-rows .ej-card--has-media{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr)}
.ej-cards--wide-rows .ej-card__media{display:flex;min-height:100%;flex-direction:column}
.ej-cards--wide-rows .ej-card__media img{flex:1;height:100%;min-height:280px;aspect-ratio:auto;object-fit:cover}
.ej-cards--wide-rows .ej-card__media figcaption{flex:none}
.ej-block--steps .ej-card{border-color:color-mix(in srgb,var(--ej-ink) 10%,transparent);border-radius:18px;background:color-mix(in srgb,var(--ej-accent) 2.5%,var(--ej-paper))}
.ej-reader .ej-block--steps ol.ej-cards,.ej-reader .ej-block--steps li.ej-card{list-style:none;padding-left:0}
.ej-reader .ej-block--steps li.ej-card::marker{content:""}
.ej-reader .ej-block--steps ol.ej-cards{counter-reset:none;margin:0!important}
.ej-reader .ej-block--steps li.ej-card{counter-increment:none;margin:0!important;padding:10px!important;border:1px solid color-mix(in srgb,var(--ej-ink) 10%,transparent);border-radius:18px!important;background:color-mix(in srgb,var(--ej-accent) 2.5%,var(--ej-paper))}
.ej-reader .ej-block--steps li.ej-card::before{content:none;display:none}
.ej-block--steps .ej-card__body{display:grid;grid-template-columns:40px 1fr;padding:18px 16px 16px}
.ej-block--steps .ej-card__body>*{grid-column:2}
.ej-block--steps .ej-card__number{grid-column:1;grid-row:1 / span 4;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--ej-tint);color:var(--ej-accent);font-weight:700}
.ej-block--checklist .ej-card{background:var(--ej-tint);border-color:color-mix(in srgb,var(--ej-ink) 10%,transparent)}
.ej-block--takeaway .ej-card{background:var(--ej-tint);border-color:color-mix(in srgb,var(--ej-ink) 10%,transparent)}
.ej-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0}
/* EDITORIAL_CLOSING_V1 — reusable native author panel and reading grid. */
.ej-outro{display:grid;gap:40px;margin-top:32px}
.ej-outro__group{display:grid;gap:24px;min-width:0}
.ej-outro__readings{gap:24px;align-items:stretch}
.ej-author-panel{padding:28px 32px;border:1px solid var(--ej-line);border-radius:18px;background:var(--ej-tint)}
.ej-author-panel .ws-author{display:flex;align-items:flex-start;gap:24px;max-width:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.ej-author-panel .ws-author__media{display:block;flex:0 0 80px}
.ej-author-panel .ws-author__avatar{display:block;width:80px;height:80px;max-width:none;object-fit:cover;border-radius:50%;margin:0;border:3px solid var(--ej-paper)}
.ej-author-panel .ws-author__body{flex:1;min-width:0}
.ej-author-panel .ws-label{display:block;margin:0 0 8px;font-size:11px;letter-spacing:.09em;color:var(--ej-accent)}
.ej-author-panel .ws-author__name{display:inline-block;font-size:21px;font-weight:700;line-height:1.35;color:var(--ej-ink);text-decoration:none;margin:0}
.ej-author-panel .ws-author__name:hover{text-decoration:underline;text-underline-offset:4px}
.ej-author-panel p.ws-author__bio{max-width:75ch;font-size:15px;line-height:1.75;color:var(--ej-ink);margin:12px 0 0}
@media(max-width:700px){.ej-outro{gap:30px}.ej-author-panel{padding:22px}.ej-author-panel .ws-author{display:grid;grid-template-columns:1fr;gap:16px}.ej-author-panel .ws-author__media{width:64px}.ej-author-panel .ws-author__avatar{width:64px;height:64px}.ej-outro__readings{grid-template-columns:minmax(0,1fr)}}
.ej-reader--immersive .ej-section{border:0;min-height:60vh;padding-top:16px}
.ej-reader--immersive .ej-section:not([hidden]){animation:ej-enter .2s ease-out}
@keyframes ej-enter{from{opacity:.65;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:700px){.ej-toolbar{top:6px;padding:10px;gap:8px;margin-bottom:16px}.ej-toolbar__identity>span:not(.ej-toolbar__dot){display:none}.ej-toolbar__actions{gap:6px;font-size:12px}.ej-cards,.ej-chapters{grid-template-columns:1fr}.ej-card__body{padding:22px}.ej-section{padding:30px 0}.ej-section__lead{font-size:17px}.ej-block--example .ej-card{grid-template-columns:1fr}.ej-block--example .ej-card__media img{min-height:0;height:auto}.ej-controls{font-size:13px}}
@media(prefers-reduced-motion:reduce){.ej-reader--immersive .ej-section{animation:none}}
@media(max-width:700px){.ej-cards--mixed-media .ej-card--has-media,.ej-cards--wide-rows .ej-card--has-media{grid-template-columns:1fr}.ej-cards--mixed-media .ej-card__media img,.ej-cards--wide-rows .ej-card__media img,.ej-block--example .ej-card__media img{flex:none;height:auto;min-height:0;aspect-ratio:3/2}.ej-reader .ej-section__copy>.ej-section__lead{font-size:17px}}
@media(max-width:700px){.ej-toolbar__identity{flex-wrap:nowrap;gap:4px}.ej-toolbar__dot{display:none}.ej-toolbar__actions{flex-wrap:nowrap;gap:4px}.ej-toolbar__actions button{font-size:11px;padding:8px}.ej-toolbar__actions [data-ej-fullscreen]{padding:6px}.ej-toolbar output{font-size:11px;white-space:nowrap}}
@media print{.ej-toolbar,.ej-chapters,.ej-controls{display:none!important}.ej-reader [data-editorial-section][hidden]{display:block!important}.ej-card{break-inside:avoid}.ej-section{min-height:0!important}}
