:root{
  --paper:#191918;--card:#232322;--dot:rgba(255,255,255,.045);--ink:#F5F4EE;--ink2:#C3C1B7;--ink3:#8C8A82;
  --grid:#3A3935;--band:#2D2C29;--accent:#D97757;
  --c-ny:#A397F0;--c-k:#5DB4D8;--c-z:#E27FAB;--c-l:#6CC49A;--c-e:#E3B341;--c-o:#D97757;
  --c-b:#B9D65E;--c-r:#D4A373;--us:#5DB4D8;--cn:#E8675C;--eu:#E3B341;
  --good:#6CC49A;--weak:#D97757;--track:#35342F;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
}
:root[data-theme="light"]{
  --paper:#F5F4EE;--card:#FFFFFF;--dot:rgba(0,0,0,.05);--ink:#1F1E1D;--ink2:#5A5852;--ink3:#8C8A82;
  --grid:#E3E1D8;--band:#F0EEE6;--accent:#C15F3C;
  --c-ny:#6C5CE0;--c-k:#1F86B3;--c-z:#C5457E;--c-l:#1E9467;--c-e:#B8860B;--c-o:#C15F3C;
  --c-b:#6B8E12;--c-r:#9C6B30;--us:#1F86B3;--cn:#C8402F;--eu:#B8860B;
  --good:#1E9467;--weak:#C15F3C;--track:#EDEBE3;
}
button:disabled{opacity:.35;cursor:default}
button:disabled:hover{border-color:var(--grid)}
html{color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
.metrics{margin-top:28px}
.metrics>h2{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin:0 0 4px}
.metrics>.lead{color:var(--ink2);margin:0 0 18px;font-size:15px}
.mgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px}
.mg{border:1px solid var(--grid);border-radius:12px;padding:14px 16px}
.mg h3{font-family:var(--serif);font-weight:600;font-size:1.05rem;margin:0 0 10px}
.mv{margin:0 0 12px}
.mv b{display:block;font-family:var(--serif);font-weight:600;font-size:1.55rem;line-height:1.1}
.mv span{font-size:14px;color:var(--ink2)}
.mv a{font-size:12px;color:var(--ink3)}
.blk{border-top:1px solid var(--grid);padding-top:18px;margin-top:22px}
.bh{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:600;font-size:1.15rem;margin:0 0 12px}
.bh i{width:12px;height:12px;border-radius:3px;background:var(--c)}
.mini h4{font-size:14px;font-weight:700;color:var(--ink2);margin:0 0 6px}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;margin-top:12px}
.tiles-col{grid-template-columns:1fr;margin-top:0;align-content:start}
.tile{background:var(--band);border-radius:10px;padding:10px 14px}
.tile b{display:block;font-family:var(--serif);font-weight:600;font-size:1.45rem;line-height:1.15}
.tile span{font-size:14px;color:var(--ink2)}
.subh{font-size:16px;font-weight:700;margin:22px 0 10px}
.flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:8px;margin-top:14px}
.flow span{display:flex;align-items:center;font-size:14px;padding:8px 12px;border-radius:8px;border:1px solid var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}
.flow b{align-self:center;color:var(--ink3)}
@media (max-width:720px){.flow{grid-template-columns:1fr auto 1fr}.flow b:nth-of-type(2){display:none}}
.tiles2{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}
.tiles2 .tile{padding:10px 12px}
.tiles2 .tile b{font-size:1.3rem}
.tiles2 .tile span{font-size:13px;line-height:1.4;display:block;margin-top:2px}
@media (max-width:420px){.tiles2{grid-template-columns:1fr}}
.src{font-size:12px;color:var(--ink3);margin:10px 0 0}
.src a{color:inherit}
.src{line-height:1.7}
.lv{display:inline-block;font-size:11.5px;font-weight:700;padding:0 7px;border-radius:999px;line-height:17px;margin-right:2px;vertical-align:1px}
.lv.l1{background:color-mix(in srgb,var(--good) 22%,transparent);color:var(--good)}
.lv.l2{background:color-mix(in srgb,var(--us) 22%,transparent);color:var(--us)}
.lv.l3{background:color-mix(in srgb,var(--c-e) 22%,transparent);color:var(--c-e)}
.trust td,.trust th{padding:8px 10px;border-bottom:1px solid var(--grid);text-align:left;vertical-align:top;font-size:14px}
.trust{width:100%;border-collapse:collapse}
.trust th{color:var(--ink3);font-weight:400;font-size:13px}
.trustwrap{overflow-x:auto}
#areaBody{margin-top:16px}
.ladder{display:flex;align-items:flex-end;gap:6px;margin:6px 0 4px}
.ladder .st{flex:1;min-width:0;border-radius:8px 8px 0 0;padding:8px 8px 6px;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);font-size:13px;color:var(--ink2);display:flex;flex-direction:column;justify-content:flex-end}
.ladder .st b{display:block;color:var(--ink);font-size:13px;line-height:1.25}
.ladder .st small{display:block;font-size:12px;color:var(--ink3);margin-top:2px}
.ladder .st.done{background:color-mix(in srgb,var(--c) 38%,transparent)}
.ladder .st.cur{outline:2px solid var(--accent);outline-offset:1px}
.ladder .st .n{font-family:var(--serif);font-size:1.1rem;color:var(--c);font-weight:700}
.ladnote{font-size:13px;color:var(--ink3);margin:6px 0 16px}
.ladnote b{color:var(--accent)}
@media (max-width:640px){.ladder{flex-direction:column;align-items:stretch}.ladder .st{height:auto!important;border-radius:8px}}
.mlist{list-style:none;margin:0;padding:0;border-left:2px solid var(--grid)}
.mlist li{position:relative;padding:6px 0 10px 16px}
.mlist li::before{content:"";position:absolute;left:-7px;top:12px;width:12px;height:12px;border-radius:50%;background:var(--c);border:2px solid var(--card)}
.mlist li.vit::before{background:none;border:1.5px dashed var(--c)}
.mlist time{font-size:13px;color:var(--ink3);margin-right:8px}
.mlist b{color:var(--ink)}
.mlist p{margin:2px 0 0;font-size:14px;color:var(--ink2)}
.levels{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}
@media (max-width:960px){.levels{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.levels{grid-template-columns:1fr}}
.lvl{position:relative;border:1px solid var(--grid);border-radius:12px;padding:12px 14px;font-size:14px;color:var(--ink2)}
.lvl b{display:inline-block;font-family:var(--serif);font-size:1.1rem;color:var(--ink);margin-right:6px}
.lvl small{font-size:12px;color:var(--ink3)}
.lvl small{display:block;margin-top:2px}
.lvl ul{margin:8px 0 0;padding-left:18px}
.lvl li{margin:0 0 4px}
.lvl.done{opacity:.75}
.lvl.done b::after{content:" ✓";color:var(--good)}
.lvl.now{border:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}
.lvl.now b{color:var(--accent)}
.gloss{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:8px 24px;margin:0}
.gloss div{padding:8px 0;border-bottom:1px solid var(--grid);font-size:15px;color:var(--ink2)}
.gloss dt{font-weight:700;color:var(--ink)}
.gloss dd{margin:2px 0 0}
.flags{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--ink2);margin:0 0 4px}
.flags i{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--c);margin-right:6px;transform:translateY(1px)}
.cty{margin:0 0 16px}
.cty h4{display:flex;justify-content:space-between;gap:10px;font-size:15px;margin:0 0 6px}
.cty h4 small{font-weight:400;color:var(--ink3);font-size:13px;text-align:right}
.stack{display:flex;height:26px;border-radius:6px;overflow:hidden;gap:2px}
.stack i{display:flex;align-items:center;padding:0 8px;font-style:normal;font-size:13px;font-weight:700;color:#1b1b1a;background:var(--c);white-space:nowrap;overflow:hidden}
.pair{display:grid;grid-template-columns:4.2em 1fr;gap:4px 10px;align-items:center;font-size:13px;color:var(--ink2)}
.pair .br{height:16px;border-radius:4px;background:var(--c);min-width:2px}
.pair .bw{display:flex;align-items:center;gap:8px}
.pair .bw b{color:var(--ink);font-size:14px;white-space:nowrap}
.pair .na{color:var(--ink3);font-style:italic}
.pl{display:grid;grid-template-columns:5.6em 1fr 4.2em 4.2em;gap:6px 10px;align-items:center;font-size:13px;color:var(--ink2)}
.pl>b{text-align:right;color:var(--ink);font-size:14px;white-space:nowrap}
.pl>b.negv{color:var(--weak)}
.pl small{color:var(--ink3);font-size:12px}
.plt{position:relative;height:18px;border-left:0;background:linear-gradient(var(--grid),var(--grid)) 50% 0/1px 100% no-repeat}
.plt i{position:absolute;top:1px;bottom:1px;border-radius:3px}
.plt i.pos{background:var(--good)}
.plt i.neg{background:var(--weak)}
.plt b{position:absolute;top:0;font-size:13px;color:var(--ink);white-space:nowrap;line-height:18px}
.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.rule{background:var(--band);border-radius:10px;padding:12px 14px;font-size:14px;color:var(--ink2)}
.rule h4{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:16px;color:var(--ink);margin:0 0 8px}
.badge{font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;background:color-mix(in srgb,var(--c) 22%,transparent);color:var(--c);white-space:nowrap}
.rule ul{margin:0;padding-left:18px}
.rule li{margin:0 0 4px}
.issues{list-style:none;margin:0;padding:0}
.issues li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--grid)}
.issues li b{font-size:15px}
.issues li span{grid-column:1;font-size:14px;color:var(--ink2)}
.issues li .badge{grid-row:1;grid-column:2;align-self:start}
.citygrid{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:20px;align-items:start}
@media (max-width:720px){.citygrid{grid-template-columns:1fr}}
#city svg{display:block;width:100%;height:auto}
.citylist{list-style:none;margin:0;padding:0;font-size:15px}
.citylist li{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--grid)}
.citylist i{flex:none;width:12px;height:12px;border-radius:3px;background:var(--c);border:1.5px solid var(--b,transparent);transform:translateY(1px)}
.citylist b{margin-left:auto;font-family:var(--serif);white-space:nowrap}
.citylist small{display:block;color:var(--ink3);font-size:13px}
.minis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;margin-top:14px}
.mini h3{font-size:15px;font-weight:700;margin:0 0 6px}
.mini svg{width:100%;height:auto;display:block}
.mnote{font-size:13px;color:var(--ink3);margin:12px 0 0}
.skills{margin-top:28px}
.skills h2{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin:0 0 16px}
.sk{margin:0 0 14px}
.sk .row{display:flex;justify-content:space-between;gap:12px;font-size:15px;margin:0 0 6px}
.sk .row span:first-child{font-weight:700}
.sk .row span:last-child{color:var(--ink2);text-align:right}
.sk .tr{height:10px;border-radius:5px;background:var(--track);overflow:hidden}
.sk .tr i{display:block;height:100%;border-radius:5px}
*{box-sizing:border-box}
body{margin:0;background-color:var(--paper);background-image:radial-gradient(var(--dot) 1px,transparent 1.2px);background-size:5px 5px;color:var(--ink);font-family:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:17px;line-height:1.55}
main{max-width:1080px;margin:0 auto;padding:clamp(20px,4vw,48px) clamp(14px,3vw,32px) 48px}
h1{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,5.5vw,3.6rem);line-height:1.02;letter-spacing:-.02em;margin:0 0 18px;max-width:14ch}
.kicker{font-family:var(--serif);font-size:clamp(1.2rem,3vw,1.6rem);color:var(--accent);margin:-10px 0 18px}
.hero{position:relative;margin:4px 0 26px;padding-left:18px;border-left:3px solid var(--accent)}
.hero .eyebrow{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.hero h1{margin:0 0 12px;max-width:none;font-size:clamp(2.6rem,7vw,4.6rem);letter-spacing:-.025em}
.hero h1 span{background:linear-gradient(90deg,var(--ink) 0%,var(--accent) 110%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .tagline{font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,2.6vw,1.45rem);line-height:1.4;color:var(--ink2);margin:0;max-width:34ch}
.age{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 22px;margin:0 0 6px}
.age .n{font-family:var(--serif);font-weight:600;font-size:clamp(1.6rem,4vw,2.4rem);line-height:1}
.age .n small{font-size:.55em;font-weight:400;color:var(--ink2);margin:0 .35em 0 .1em}
.sub{color:var(--ink2);margin:0 0 28px;max-width:62ch}
.panel{background:var(--card);border:1px solid var(--grid);border-radius:14px;padding:clamp(12px,2vw,22px)}
.bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
button{font:inherit;font-size:14px;color:var(--ink);background:transparent;border:1px solid var(--grid);border-radius:999px;padding:6px 14px;cursor:pointer}
button:hover{border-color:var(--ink3)}
button[aria-pressed="true"]{background:var(--ink);color:var(--card);border-color:var(--ink)}
button:focus-visible,.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sp{flex:1}
.chart{width:100%;overflow:hidden;touch-action:pan-y;user-select:none;cursor:grab}
.chart svg{display:block;width:100%;height:auto}
.hint{font-size:13px;color:var(--ink3);margin:6px 0 12px}
.legend{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:7px;font-size:14px;padding:5px 12px;border-radius:999px;border:1px solid var(--grid);cursor:pointer;background:transparent;color:var(--ink)}
.chip i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.chip[aria-pressed="false"]{opacity:.4}
.det{margin-top:18px;border-left:4px solid var(--dc,var(--accent));padding:4px 0 4px 16px;min-height:84px}
.det h2{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin:0 0 2px}
.det .meta{font-size:14px;color:var(--ink2);margin:0 0 6px}
.det p{margin:0;max-width:70ch}
.det a{color:var(--accent)}
.nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;font-size:13px;color:var(--ink3)}
.nav button{white-space:nowrap}
@media (max-width:560px){.recent li button{flex-wrap:wrap;gap:2px 10px}.recent li time{min-width:0;flex:0 0 calc(100% - 20px)}.recent li span{padding-left:20px}.nav span{flex-basis:100%}}
.toc{position:sticky;top:0;z-index:5;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:10px clamp(14px,3vw,32px);margin:0 calc(-1*clamp(14px,3vw,32px)) 18px;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--grid)}
.toc a{flex:none;font-size:14px;color:var(--ink2);text-decoration:none;padding:5px 12px;border-radius:999px;border:1px solid var(--grid)}
.toc a:hover{color:var(--ink);border-color:var(--ink3)}
/* Nagyobb képernyőn több sorba törik (semmi nem vágódik le), telefonon oldalra húzható marad */
/* Egy sor: ha kifér, középen; ha nem, oldalra húzható, a szélén halványodik. Az aktuális rész kiemelve (app.js: tocSpy) */
.toc a:first-child{margin-left:auto}.toc a:last-child{margin-right:auto}
.toc.ovf{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}
.toc.ovf.end{-webkit-mask-image:linear-gradient(90deg,transparent,#000 36px);mask-image:linear-gradient(90deg,transparent,#000 36px)}
.toc a.on{color:var(--ink);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}
@media (min-width:720px){.toc a{padding:4px 11px;font-size:13.5px}}
section[id]{scroll-margin-top:64px}
.ruler{position:relative;margin:18px 0 26px;max-width:720px}
.ruler .segs{display:flex;height:14px;border-radius:7px;overflow:hidden;background:var(--track)}
.ruler .segs i{display:block;height:100%;border-right:2px solid var(--paper)}
.ruler .labs{display:flex;font-size:12px;color:var(--ink3);margin-top:6px}
.ruler .labs span{overflow:hidden;white-space:nowrap;text-overflow:clip}
.ruler .mk{position:absolute;top:-6px;width:4px;height:26px;margin-left:-2px;border-radius:2px;background:var(--ink);box-shadow:0 0 0 3px var(--paper)}
.ruler .mk b{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-size:12px;white-space:nowrap;color:var(--accent)}
.sec-lead{color:var(--ink2);margin:0 0 16px;font-size:15px;max-width:70ch}
.pace{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px}
.pace div{border:1px solid var(--grid);border-radius:12px;padding:10px 12px}
.pace b{display:block;font-family:var(--serif);font-weight:600;font-size:1.5rem;line-height:1.1}
.pace span{font-size:13px;color:var(--ink2)}
@media (max-width:560px){.pace{gap:6px}.pace div{padding:8px}.pace b{font-size:1.1rem}.pace span{font-size:12px}}
.pace .hot{border-color:var(--accent)}
.pace .hot b{color:var(--accent)}
#lanes svg{display:block;width:100%;height:auto}
.lanedet{min-height:48px;font-size:15px;color:var(--ink2);margin-top:8px;border-left:3px solid var(--dc,var(--grid));padding:2px 0 2px 12px}
.lanedet b{color:var(--ink)}
.skscale{position:relative;height:18px;font-size:12px;color:var(--ink3);margin:0 0 6px}
.skscale span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.skscale span:first-child{transform:none}
.skscale span:last-child{transform:translateX(-100%)}
.skscale b{font-weight:400}
.skscale .sm{display:none}
.skscale .pro{color:var(--accent);font-weight:700}
@media (max-width:560px){.skscale .lg{display:none}.skscale .sm{display:inline}}
.skwrap .gl.pro{border-left:1.5px dashed var(--accent);opacity:.8}
.sk .tr .h{position:absolute;top:0;bottom:0;right:0;border-radius:0;background:repeating-linear-gradient(135deg,transparent 0 4px,var(--ink3) 4px 5.5px);opacity:.55}
.sk .hum{font-size:13px;color:var(--ink3);margin-top:5px}
.sk .hum b{color:var(--ink2)}
.skwrap{position:relative}
.skwrap .gl{position:absolute;top:0;bottom:14px;border-left:1px dashed var(--grid);pointer-events:none}
.sk .tr{position:relative;z-index:1;background:color-mix(in srgb,var(--track) 70%,transparent)}
.sklegend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--ink2);margin:14px 0 0}
.sklegend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;background:var(--c)}
.callout{margin-top:16px;padding:12px 14px;border-radius:10px;background:var(--band);font-size:15px}
.callout .src{color:var(--ink2)}
.callout b{color:var(--accent)}
.hu{margin-top:14px}
.hu h3{font-size:15px;font-weight:700;margin:0 0 4px}
.hurow{display:grid;grid-template-columns:4.6em 1fr 3.6em;gap:10px;align-items:center;margin:0 0 8px;font-size:14px}
.hurow .sq{display:flex;flex-wrap:wrap;gap:3px}
.hurow .sq i{display:block;width:14px;height:14px;border-radius:3px;background:var(--c-e)}
.hurow.proj .sq i{opacity:.4}
.hurow b{text-align:right;font-family:var(--serif);font-size:1.05rem}
.recent{margin-top:20px;border-top:1px solid var(--grid);padding-top:14px}
.recent h3{font-size:15px;font-weight:700;margin:0 0 8px}
.recent ol{list-style:none;margin:0;padding:0}
.recent li button{display:flex;gap:10px;align-items:baseline;width:100%;text-align:left;border:0;border-radius:8px;padding:6px 8px;font-size:15px}
.recent li button:hover{background:var(--band)}
.recent li i{flex:none;width:10px;height:10px;border-radius:50%;background:var(--c);transform:translateY(1px)}
.recent li time{flex:0 0 11.5em;color:var(--ink2);font-size:14px;line-height:1.35}
.recent li em{color:var(--ink3);font-size:13px}
.next{display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--ink2);margin:0 0 8px}
.next span{padding:3px 10px;border:1px solid var(--grid);border-radius:999px;white-space:nowrap}
#how{font-size:14px;margin:0 0 22px;color:var(--ink3)}
#how b{color:var(--ink2)}
.next b{color:var(--ink)}
.foot{font-size:14px;color:var(--ink2);margin-top:24px;max-width:70ch}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Nyílt modellek: memória-ábra (logaritmikus) */
.memc{margin-top:14px}
.memhw,.memrows{position:relative;margin-left:min(34%,210px)}
.memhw{height:44px;font-size:12px;color:var(--ink3)}
.memhw span{position:absolute;bottom:4px;transform:translateX(-50%);text-align:center;line-height:1.25;white-space:nowrap}
.memhw span:last-child{transform:translateX(-80%)}
.memhw b{display:block;color:var(--ink);font-size:13px}
.memline{position:absolute;top:0;bottom:0;border-left:1px dashed var(--ink3);opacity:.6}
.memr{position:relative;display:flex;align-items:center;height:34px}
.memr>span{position:absolute;right:100%;width:min(34vw,210px);padding-right:10px;text-align:right;font-size:14px;line-height:1.15}
.memr>span small{display:block;font-size:11.5px;color:var(--ink3)}
.memr>div{position:relative;flex:1;display:flex;align-items:center;height:100%}
.memr>div i{display:block;height:16px;border-radius:0 4px 4px 0;background:var(--c)}
.memr>div em{font-style:normal;font-size:13px;font-weight:700;margin-left:6px;white-space:nowrap}
.memr>div i{flex-shrink:0}
@media (max-width:560px){
  .memhw,.memrows{margin-left:0;margin-right:52px}
  .memhw{height:62px}
  .memhw span{font-size:11px}.memhw span b{font-size:12px}
  .memhw span:nth-child(even){bottom:32px}
  .memr{display:block;height:auto;margin:0 0 8px}
  .memr>span{position:relative;right:auto;z-index:1;display:inline-block;width:auto;text-align:left;padding:0 4px 2px 0;font-size:13px;background:var(--card)}
  .memr>span small{display:inline;margin-left:4px}
  .memr>div{height:18px}
  .memr>div em{font-size:12px}
}
/* Hasznos linkek */
.links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;margin-top:14px}
.lgrp{background:var(--band);border-radius:10px;padding:12px 14px}
.lgrp h4{margin:0 0 8px;font-size:15px}
.lgrp ul{list-style:none;margin:0;padding:0}
.lgrp li{margin:0 0 10px;font-size:15px}
.lgrp li:last-child{margin-bottom:0}
.lgrp a{color:color-mix(in srgb,var(--accent) 72%,var(--ink));font-weight:600;text-underline-offset:3px}
.lgrp small{display:block;font-size:13px;color:var(--ink2);line-height:1.4}
.lgrp small a{font-weight:400}
/* Csak felolvasóknak és keresőknek látszik */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero .eyebrow+.sr-only+.tagline{margin-top:2px}
/* Telefon: időszak-gombok rendezett rácsban (+/− a második sor végén), a vonalzó „ma” címkéje ne csússzon az életkorra */
@media (max-width:560px){
  #idovonal .bar{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
  #idovonal .bar .sp{display:none}
  #idovonal .bar button{grid-column:span 2;padding:7px 4px;font-size:13px;white-space:nowrap}
  #idovonal .bar #zin,#idovonal .bar #zout{grid-column:span 1}
  .ruler{margin-top:36px}
}
.memr>div em.in{position:absolute;right:calc(6% + 8px);margin:0;color:#1b1b1a}
/* 404-oldal */
.nf{max-width:760px;min-height:100vh;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
.nf .hero h1{font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.08;max-width:16ch}
.nf .hero .tagline{max-width:40ch}
.nf-fig{margin:6px 0 22px;padding:14px 16px 10px;background:var(--card);border:1px solid var(--grid);border-radius:14px}
.nf-fig svg{display:block;width:100%;height:auto;font-family:inherit}
.nf-fig figcaption{font-size:13px;color:var(--ink3);text-align:right;margin-top:2px;font-style:italic;font-family:var(--serif)}
.nf-cta{margin:0 0 22px}
.nf-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;background:var(--accent);color:#1b1b1a;font-weight:700;text-decoration:none;transition:filter .15s}
.nf-btn:hover{filter:brightness(1.08)}
.nf-btn:focus-visible,.nf-links .chip:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.nf-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.nf-links p{flex-basis:100%;margin:0 0 2px;font-size:14px;color:var(--ink2)}
.nf-links .chip{text-decoration:none;color:var(--ink2)}
.nf-links .chip:hover{color:var(--ink);border-color:var(--ink3)}
.nf .foot{margin-top:34px}

/* „Legutóbb történt” szűrőgombjai és a „Továbbiak” gomb */
.recf{margin:0 0 10px}.recf>div{display:flex;flex-wrap:wrap;gap:6px}
.recf button{display:inline-flex;align-items:center;gap:6px;font-size:13px;padding:3px 10px;border-radius:999px;border:1px solid var(--grid);background:transparent;color:var(--ink2);cursor:pointer}
.recf button i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.recf button:hover{color:var(--ink);border-color:var(--ink3)}
.recf button[aria-pressed="true"]{color:var(--ink);border-color:var(--c,var(--accent));background:color-mix(in srgb,var(--c,var(--accent)) 16%,transparent)}
.recmore{margin:6px 0 0 8px;font-size:14px;padding:4px 12px;border-radius:999px;border:1px solid var(--grid);background:transparent;color:var(--ink2);cursor:pointer}
.recmore:hover{color:var(--ink);border-color:var(--ink3)}

.recent h3 small{font-weight:400;color:var(--ink3);font-size:13px}
#recQ{width:100%;box-sizing:border-box;margin:0 0 8px;padding:8px 12px;font:inherit;font-size:15px;color:var(--ink);background:var(--paper);border:1px solid var(--grid);border-radius:10px}
#recQ:focus{outline:none;border-color:var(--accent)}
.recent li span small.snip{display:block;font-size:13px;color:var(--ink2);margin-top:2px;line-height:1.45}
.recent mark{background:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--ink);border-radius:3px;padding:0 1px}
.recent li.empty{padding:8px;color:var(--ink3);font-size:14px}
.recpg{display:flex;align-items:center;gap:10px;margin:8px 0 0 8px;flex-wrap:wrap}
.recpg span{font-size:13px;color:var(--ink3)}
.recpg button{font-size:14px;padding:4px 12px;border-radius:999px;border:1px solid var(--grid);background:transparent;color:var(--ink2);cursor:pointer}
.recpg button:hover:not(:disabled){color:var(--ink);border-color:var(--ink3)}
.recpg button:disabled{opacity:.35;cursor:default}
@media (max-width:560px){.recent li time{flex:0 0 calc(100% - 20px)}.recent li span{padding-left:20px}}
/* Lista: cím + terület-címke + 2 soros kivonat; kiválasztott tétel kiemelve */
.recent li span{flex:1;min-width:0}
.recent li .rt{font-weight:600;color:var(--ink)}
.recent li .tag{display:inline-block;margin-left:8px;font-size:11.5px;font-weight:700;padding:0 7px;border-radius:999px;line-height:18px;vertical-align:1px;color:var(--c);background:color-mix(in srgb,var(--c) 16%,transparent)}
.recent li small.exc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;font-size:13.5px;color:var(--ink3);margin-top:2px;line-height:1.45}
.recent li button{padding:8px 10px}
.recent li button.cur{background:var(--band);box-shadow:inset 3px 0 0 var(--c)}
@media (max-width:560px){.recent li small.exc{-webkit-line-clamp:1;line-clamp:1}}
