
@font-face{font-family:"Vazirmatn";src:url("../fonts/vazirmatn-arabic.05d9ce2a23d3.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FEFF}
@font-face{font-family:"Vazirmatn";src:url("../fonts/vazirmatn-latin.e7eada615dc3.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Lalezar";src:url("../fonts/lalezar-arabic.d29aca20adbd.woff2") format("woff2");font-weight:400;font-display:swap}

:root{
  --paper:#F4F5F9; --surface:#FFFFFF; --surface-2:#EDEFF6; --ink:#141A2E; --muted:#5A6280; --line:#DDE1EC;
  --lapis:#23409A; --lapis-ink:#FFFFFF; --lapis-soft:#E4E9F8; --lapis-deep:#172B6B;
  --saffron:#D98A1E; --saffron-soft:#FBF0DE; --saffron-ink:#5C3606;
  --ok:#1E8A5A; --ok-soft:#E1F3EA; --warn:#B7700B; --warn-soft:#FCEFD9; --bad:#C23A3A; --bad-soft:#FBE4E4;
  --shadow:0 1px 2px rgb(20 26 46 / .06),0 6px 20px rgb(20 26 46 / .06);
  --r:14px; --r-sm:9px;
  --f-body:"Vazirmatn",Tahoma,system-ui,sans-serif; --f-display:"Lalezar","Vazirmatn",Tahoma,sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  color-scheme:dark;
  --paper:#0E1221; --surface:#161B2E; --surface-2:#1D2339; --ink:#E7E9F2; --muted:#9AA1BC; --line:#272E48;
  --lapis:#7E98F2; --lapis-ink:#0E1221; --lapis-soft:#1E2848; --lapis-deep:#111A3A;
  --saffron:#EFAA4A; --saffron-soft:#2C2214; --saffron-ink:#F6D9AE;
  --ok:#4FC28C; --ok-soft:#14291F; --warn:#E9A94A; --warn-soft:#2C2314; --bad:#EE7474; --bad-soft:#2E1719;
  --shadow:0 1px 2px rgb(0 0 0 / .3),0 6px 20px rgb(0 0 0 / .25);
}}
:root[data-theme="dark"]{
  color-scheme:dark;
  --paper:#0E1221; --surface:#161B2E; --surface-2:#1D2339; --ink:#E7E9F2; --muted:#9AA1BC; --line:#272E48;
  --lapis:#7E98F2; --lapis-ink:#0E1221; --lapis-soft:#1E2848; --lapis-deep:#111A3A;
  --saffron:#EFAA4A; --saffron-soft:#2C2214; --saffron-ink:#F6D9AE;
  --ok:#4FC28C; --ok-soft:#14291F; --warn:#E9A94A; --warn-soft:#2C2314; --bad:#EE7474; --bad-soft:#2E1719;
  --shadow:0 1px 2px rgb(0 0 0 / .3),0 6px 20px rgb(0 0 0 / .25);
}

*{box-sizing:border-box}
body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.8}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-variant-numeric:tabular-nums}
img{max-width:100%;height:auto}
[hidden]{display:none!important}
a{color:inherit;text-decoration:none}
a:hover{color:var(--lapis)}
h1,h2,h3,h4{margin:0;line-height:1.45;text-wrap:balance}
p{margin:0}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--lapis);outline-offset:2px;border-radius:6px}
.wrap{max-width:1200px;margin-inline:auto;padding-inline:16px}
.display{font-family:var(--f-display);font-weight:400;letter-spacing:0}
.muted{color:var(--muted)}
.small{font-size:13px}
.tiny{font-size:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- shared: portraits & image placeholders ---------- */
.pt{--h:220;position:relative;display:block;overflow:hidden;border-radius:50%;aspect-ratio:1;flex:none;
  background:linear-gradient(160deg,hsl(var(--h) 38% 80%),hsl(var(--h) 42% 56%))}
.pt::before{content:"";position:absolute;width:36%;height:36%;border-radius:50%;background:hsl(var(--h) 35% 25% / .5);inset-inline-start:32%;top:21%}
.pt::after{content:"";position:absolute;width:74%;height:52%;border-radius:50% 50% 0 0;background:hsl(var(--h) 35% 25% / .5);inset-inline-start:13%;top:62%}
.pt.sq{border-radius:var(--r)}
.ph{--h:210;position:relative;display:block;overflow:hidden;border-radius:var(--r-sm);aspect-ratio:16/9;max-width:100%;
  background:repeating-linear-gradient(135deg,transparent 0 14px,rgb(255 255 255 / .09) 14px 15px),linear-gradient(135deg,hsl(var(--h) 30% 66%),hsl(calc(var(--h) + 35) 34% 44%))}
.ph span{position:absolute;inset-inline-start:8px;bottom:6px;font-size:11px;color:#fff;background:rgb(0 0 0 / .35);padding:0 8px;border-radius:6px}

.chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:2px 10px 2px 4px;border-radius:999px;background:var(--lapis-soft);color:var(--ink);white-space:nowrap}
.chip .pt{width:20px}
.src{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.src b{font-weight:600;color:var(--ink)}
.src-dot{width:16px;height:16px;border-radius:4px;background:var(--line);display:inline-grid;place-items:center;font-size:9px;font-weight:800;color:var(--muted)}
.tag-rep{font-size:11px;font-weight:700;color:var(--saffron-ink);background:var(--saffron-soft);padding:1px 8px;border-radius:6px}
.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);padding:7px 16px;border-radius:999px;font-size:14px}
.btn.primary{background:var(--lapis);border-color:var(--lapis);color:var(--lapis-ink)}
.btn.primary:hover{color:var(--lapis-ink);filter:brightness(1.08)}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}
.sec-head h2{font-family:var(--f-display);font-weight:400;font-size:28px}
.sec-head a{font-size:13px;color:var(--lapis)}

/* ---------- site header ---------- */
.topstrip{background:var(--surface);border-bottom:1px solid var(--line);font-size:12.5px}
.topstrip .wrap{display:flex;justify-content:space-between;gap:12px;padding-block:6px;flex-wrap:wrap}
.topstrip a{color:var(--saffron)}
.mast{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.mast .wrap{display:flex;align-items:center;gap:24px;padding-block:10px}
.logo{font-family:var(--f-display);font-size:34px;line-height:1;color:var(--lapis);display:flex;align-items:baseline;gap:6px}
.logo small{font-family:var(--f-body);font-size:11px;color:var(--muted);letter-spacing:.02em}
.mainnav{display:flex;gap:4px;overflow-x:auto;flex:1;scrollbar-width:none}
.mainnav a{padding:6px 12px;border-radius:999px;font-size:14px;white-space:nowrap}
.mainnav a.on{background:var(--lapis-soft);color:var(--lapis);font-weight:600}
.mainnav a.fal{color:var(--saffron);font-weight:700}
.iconbtn{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;flex:none}
.iconbtn svg{width:18px;height:18px}

/* ---------- footer ---------- */
.foot{margin-top:56px;background:var(--lapis-deep);color:#D7DDF3}
.foot .wrap{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:32px;padding-block:40px}
.foot h4{font-size:14px;color:#fff;margin-bottom:10px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:13.5px}
.foot .logo{color:#fff}
.foot a:hover{color:#fff}
.foot .links a{text-decoration:underline;text-decoration-color:rgb(255 255 255 / .25);text-underline-offset:4px}
.foot .copy{border-top:1px solid rgb(255 255 255 / .12);font-size:12px;padding-block:14px;color:#AEB7DC}
.slot-hint{font-size:11px;color:#9EA8D4;border:1px dashed rgb(255 255 255 / .25);border-radius:8px;padding:2px 8px;display:inline-block;margin-bottom:8px}

/* =========== HOME A =========== */
.faces{margin-top:24px}
.faces-row{display:flex;gap:18px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}
.face{display:grid;justify-items:center;gap:6px;width:84px;flex:none;text-align:center;font-size:12.5px;line-height:1.4}
.face .ring{position:relative;padding:3px;border-radius:50%;background:conic-gradient(var(--saffron),var(--lapis),var(--saffron))}
.face .ring .pt{width:70px;border:3px solid var(--surface)}
.face .cnt{position:absolute;bottom:-4px;inset-inline-start:-4px;background:var(--ink);color:var(--paper);font-size:11px;font-weight:700;border-radius:999px;padding:0 7px;border:2px solid var(--paper)}
.face small{color:var(--muted);font-size:11px}

.lead-grid{display:grid;grid-template-columns:1.55fr 1fr 0.95fr;gap:24px;margin-top:28px}
.lead{display:grid;gap:12px;align-content:start}
.lead .ph{aspect-ratio:16/10}
.lead h3{font-size:24px;font-weight:800}
.lead p{color:var(--muted)}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.stack{display:grid;gap:16px;align-content:start}
.row-news{display:grid;grid-template-columns:96px 1fr;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.row-news:last-child{border-bottom:0}
.row-news .ph{aspect-ratio:1}
.row-news h4{font-size:15px;font-weight:700;margin-bottom:4px}

.fal-card{background:var(--saffron-soft);border-radius:var(--r);padding:20px;display:grid;gap:12px;align-content:start;color:var(--ink)}
.fal-card .kicker{display:flex;justify-content:space-between;align-items:baseline}
.fal-card h3{font-family:var(--f-display);font-weight:400;font-size:30px;color:var(--saffron)}
.beit{font-size:15.5px;line-height:2.1;font-weight:600;display:grid;gap:0;padding:12px 0;border-block:1px solid color-mix(in srgb,var(--saffron) 30%,transparent)}
.beit span:nth-child(2){padding-inline-start:28px}
.fal-types{display:flex;flex-wrap:wrap;gap:6px}
.fal-types a{font-size:12.5px;border:1px solid color-mix(in srgb,var(--saffron) 45%,transparent);border-radius:999px;padding:2px 10px}

.pn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pn{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:grid;gap:10px;align-content:start}
.pn-head{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.pn-head .pt{width:48px}
.pn-head h3{font-size:16px;font-weight:800}
.pn-head .n{margin-inline-start:auto;text-align:center;font-size:11px;color:var(--muted);line-height:1.3}
.pn-head .n b{display:block;font-size:17px;color:var(--lapis)}
.pn ol{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pn li{display:grid;gap:2px}
.pn li a{font-size:14px;font-weight:600;line-height:1.6}

.test-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.test{--h:260;border-radius:var(--r);padding:18px;min-height:180px;display:grid;align-content:space-between;gap:12px;color:#fff;
  background:radial-gradient(120% 90% at 100% 0%,hsl(var(--h) 60% 60%),hsl(calc(var(--h) + 30) 55% 32%))}
.test h3{font-size:18px;font-weight:800;line-height:1.6}
.test .meta{display:flex;justify-content:space-between;font-size:12px;opacity:.9}
.test:hover{color:#fff;transform:translateY(-2px);transition:transform .2s}

.rep-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.rep{display:grid;grid-template-columns:140px 1fr;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px}
.rep h4{font-size:15px;font-weight:700;margin-top:4px}
.section{margin-top:48px}

/* =========== PROFILE A =========== */
.crumbs{font-size:12.5px;color:var(--muted);padding-block:12px;display:flex;gap:6px;flex-wrap:wrap}
.crumbs span[aria-hidden]{opacity:.5}
.cover{position:relative;height:170px;border-radius:calc(var(--r) + 6px);overflow:hidden;
  background:radial-gradient(60% 120% at 15% 110%,color-mix(in srgb,var(--saffron) 55%,transparent),transparent 60%),
    repeating-linear-gradient(90deg,rgb(255 255 255 / .06) 0 1px,transparent 1px 44px),
    repeating-linear-gradient(0deg,rgb(255 255 255 / .06) 0 1px,transparent 1px 44px),
    linear-gradient(120deg,#23409A,#15265F)}
.cover .field{position:absolute;inset-inline-end:24px;bottom:18px;color:rgb(255 255 255 / .85);font-size:12px}
.pa-head{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:end;margin-top:-64px;padding-inline:24px;position:relative}
.pa-head .pt{width:148px;border:5px solid var(--paper);box-shadow:var(--shadow)}
.pa-head h1{font-family:var(--f-display);font-weight:400;font-size:46px;line-height:1.15}
.pa-head .role{color:var(--muted);font-size:14px}
.pa-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.pa-stats span{font-size:12.5px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:2px 12px}
.pa-stats b{color:var(--lapis)}
.ptabs{position:sticky;top:calc(env(safe-area-inset-top,0px) + 59px);z-index:10;background:var(--paper);border-bottom:1px solid var(--line);margin-top:20px}
.ptabs nav{display:flex;gap:4px;overflow-x:auto}
.ptabs button{border:0;background:transparent;padding:12px 14px;font-size:14px;border-bottom:2px solid transparent;white-space:nowrap}
.ptabs button.on{border-color:var(--lapis);color:var(--lapis);font-weight:700}
.pa-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;margin-top:24px;align-items:start}
.pa-main{display:grid;gap:40px;min-width:0}
.block h2{font-size:21px;font-weight:800;margin-bottom:12px}
.bio p{margin-bottom:12px;max-width:68ch;line-height:2}
.readmore{color:var(--lapis);font-weight:700;font-size:14px;border:0;background:none;padding:0}
.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.filters button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:3px 12px;font-size:12.5px}
.filters button[aria-pressed="true"]{background:var(--lapis);color:var(--lapis-ink);border-color:var(--lapis)}
.day-sep{font-size:12px;font-weight:700;color:var(--muted);padding:14px 0 4px;display:flex;align-items:center;gap:10px}
.day-sep::after{content:"";flex:1;height:1px;background:var(--line)}
.pn-row{display:grid;grid-template-columns:132px 1fr;gap:14px;padding-block:12px}
.pn-row h3{font-size:16px;font-weight:800;line-height:1.65;margin-bottom:4px}
.pn-row p{font-size:13.5px;color:var(--muted);line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pn-row .ph{aspect-ratio:4/3}
.tl{list-style:none;margin:0;padding:0;position:relative;display:grid;gap:18px}
.tl::before{content:"";position:absolute;inset-inline-start:48px;top:6px;bottom:6px;width:2px;background:var(--line)}
.tl li{display:grid;grid-template-columns:40px 1fr;gap:24px;position:relative}
.tl .yr{font-weight:800;font-size:14px;color:var(--lapis);text-align:end}
.tl li::before{content:"";position:absolute;inset-inline-start:43px;top:9px;width:12px;height:12px;border-radius:50%;background:var(--surface);border:3px solid var(--saffron)}
.tl h4{font-size:15px;font-weight:700}
.tl p{font-size:13.5px;color:var(--muted)}
.rel{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.rel a{display:grid;justify-items:center;text-align:center;gap:4px;font-size:13.5px;font-weight:700}
.rel .pt{width:84px}
.rel small{font-weight:400;color:var(--muted);font-size:12px}
.faq details{border-bottom:1px solid var(--line);padding-block:10px}
.faq summary{cursor:pointer;font-weight:700;font-size:15px}
.faq details p{margin-top:6px;color:var(--muted);font-size:14px}
.infobox{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;position:sticky;top:120px}
.infobox h3{background:var(--lapis);color:var(--lapis-ink);font-size:15px;padding:10px 16px}
.infobox dl{margin:0;padding:6px 16px 12px;display:grid;grid-template-columns:auto 1fr;gap:0 12px;font-size:13.5px}
.infobox dt{color:var(--muted);padding-block:7px;border-bottom:1px solid var(--line)}
.infobox dd{margin:0;padding-block:7px;border-bottom:1px solid var(--line);font-weight:600}
.infobox .credit{font-size:11px;color:var(--muted);padding:0 16px 12px}
.aside-stack{display:grid;gap:20px}
.promo{border:1px dashed var(--line);border-radius:var(--r);padding:14px;font-size:13.5px;display:grid;gap:4px}
.promo .slot{font-size:11px;color:var(--muted)}
.promo a{color:var(--lapis);font-weight:700}
.top-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:t}
.top-list li{display:grid;grid-template-columns:22px 1fr;gap:8px;font-size:13.5px;font-weight:600;line-height:1.65;counter-increment:t}
.top-list li::before{content:counter(t,persian);font-family:var(--f-display);font-size:20px;color:var(--saffron);line-height:1.2}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .lead-grid{grid-template-columns:1fr 1fr}
  .fal-card{grid-column:1/-1}
  .pn-grid,.pc-grid{grid-template-columns:repeat(2,1fr)}
  .test-grid{grid-template-columns:repeat(2,1fr)}
  .spot,.split,.fal-cols{grid-template-columns:1fr}
  .pa-grid,.pb-grid,.form-grid,.two{grid-template-columns:1fr}
  .infobox,.pb-side{position:static}
  .foot .wrap{grid-template-columns:1fr 1fr}
  .kpis{grid-template-columns:repeat(2,1fr)}
  .adm{grid-template-columns:1fr}
  .adm-side{position:static;height:auto;grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;align-items:center}
  .adm-side .grp{display:none}
  .pb-side{display:grid;grid-template-columns:160px 1fr}
  .pb-side > .pt{grid-row:span 2;height:100%}
  .pb-side dl,.pb-rel{grid-column:1/-1}
}
@media (max-width:640px){
  .mast .wrap{gap:12px;flex-wrap:wrap}
  .mainnav{order:3;flex-basis:100%}
  .lead-grid,.pn-grid,.pc-grid,.rep-row,.nc-grid{grid-template-columns:1fr}
  .test-grid{grid-template-columns:1fr 1fr}
  .spot-card{grid-template-columns:1fr}
  .spot-card .pt{min-height:220px}
  .spot-body h2{font-size:38px}
  .nl{grid-template-columns:110px 1fr}
  .rep{grid-template-columns:100px 1fr}
  .pa-head{grid-template-columns:1fr;justify-items:start;padding-inline:8px}
  .pa-head .pt{width:112px}
  .pa-head h1{font-size:38px}
  .pn-row{grid-template-columns:96px 1fr}
  .rel{grid-template-columns:repeat(2,1fr)}
  .facts{grid-template-columns:1fr 1fr}
  .foot .wrap{grid-template-columns:1fr}
  .kpis,.fr{grid-template-columns:1fr}
  .pb-side{grid-template-columns:1fr}
  .pb-side > .pt{aspect-ratio:4/3}
  .adm-body{padding:16px}
  .adm-top{padding:10px 16px}
  .ib-rows div{grid-template-columns:100px 1fr 28px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ================= site additions ================= */
img.pt{object-fit:cover;background:var(--surface-2)}
img.pt::before,img.pt::after{display:none}
img.ph{object-fit:cover;width:100%;height:auto;background:var(--surface-2)}
a.ph img,.ph img{width:100%;height:100%;object-fit:cover;display:block}
.face .ring img.pt{width:70px;height:70px}
.pn-head img.pt{width:48px;height:48px}
.chip img.pt{width:20px;height:20px}
.split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:28px;align-items:start}
.nl{display:grid;grid-template-columns:180px 1fr;gap:16px;padding-block:16px;border-bottom:1px solid var(--line)}
.nl h3{font-size:17px;font-weight:800;margin-block:4px 6px}
.nl p{font-size:14px;color:var(--muted);line-height:1.8}
.side-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:grid;gap:12px;align-content:start}
.side-box h3{font-size:15px;font-weight:800}
.page-head{padding-block:20px 8px;display:grid;gap:6px}
.page-head h1{font-family:var(--f-display);font-weight:400;font-size:40px;line-height:1.25}
.page-head p{color:var(--muted);max-width:70ch}
.pager{display:flex;gap:6px;justify-content:center;margin-top:24px;flex-wrap:wrap}
.pager a,.pager span{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 14px;font-size:14px}
.pager span.cur{background:var(--lapis);color:var(--lapis-ink);border-color:var(--lapis)}
.empty{padding:32px;text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--line);border-radius:var(--r)}
.searchbox{display:flex;gap:8px;max-width:560px}
.searchbox input{flex:1;min-width:0;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:9px 18px;font:inherit;color:var(--ink)}
.search-pop{display:none;position:absolute;inset-inline:0;top:100%;background:var(--surface);border-bottom:1px solid var(--line);padding-block:12px}
.search-pop.open{display:block}
.mast{position:sticky}

/* article (news, reportage) */
.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;align-items:start;margin-top:8px}
.article h1{font-size:30px;font-weight:900;line-height:1.6;margin-block:8px 12px}
.article .lead-p{font-size:17px;line-height:2;color:var(--muted);border-inline-start:3px solid var(--saffron);padding-inline-start:14px;margin-bottom:18px}
.attrib{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;color:var(--muted);padding-block:10px;border-block:1px solid var(--line);margin-bottom:18px}
.attrib b{color:var(--ink)}
.attrib a.orig{color:var(--lapis);font-weight:700}
.article figure{margin:0 0 18px}
.article figure img{border-radius:var(--r);width:100%}
.article figcaption{font-size:12px;color:var(--muted);margin-top:6px}
.prose{font-size:16.5px;line-height:2.15;max-width:72ch}
.prose p{margin:0 0 16px}
.prose h2,.prose h3{margin:24px 0 10px;font-weight:800}
.prose h2{font-size:21px}.prose h3{font-size:18px}
.prose img{border-radius:var(--r-sm);margin-block:8px;height:auto}
.prose blockquote{margin:16px 0;padding:10px 16px;background:var(--surface);border-inline-start:3px solid var(--lapis);border-radius:var(--r-sm)}
.prose a{color:var(--lapis);text-decoration:underline;text-underline-offset:4px}
.prose table{border-collapse:collapse;width:100%;font-size:14px;display:block;overflow-x:auto}
.prose td,.prose th{border:1px solid var(--line);padding:6px 10px}
.prose ul,.prose ol{padding-inline-start:22px;margin:0 0 16px}
.inline-promo{background:var(--saffron-soft);padding:8px 14px;border-radius:var(--r-sm);font-size:14px}
.src-foot{margin-top:24px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);font-size:14px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
.src-foot a{color:var(--lapis);font-weight:700}
.about-person{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-top:20px}
.about-person .pt{width:64px;height:64px}
.about-person h3{font-size:16px;font-weight:800}
.more-links{display:grid;gap:8px;margin-top:20px}
.more-links .slot{font-size:11px;color:var(--muted)}
.more-links a{color:var(--lapis);font-weight:700}
.summary-note{background:var(--lapis-soft);border-radius:var(--r);padding:16px;display:grid;gap:10px;justify-items:start}

/* fal */
.fal-hero{background:var(--saffron-soft);border-radius:calc(var(--r) + 6px);padding:24px;display:grid;gap:14px;margin-top:8px}
.fal-hero h1{font-family:var(--f-display);font-weight:400;font-size:40px;color:var(--saffron);line-height:1.3}
.poem{display:grid;gap:10px;padding:16px 0}
.poem .b{display:grid;grid-template-columns:1fr 1fr;gap:4px 28px;font-size:17px;font-weight:600;line-height:2}
.poem .b span:nth-child(2){text-align:end}
.fal-sec{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:18px}
.fal-sec div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.fal-sec h3{font-size:14px;font-weight:800;color:var(--saffron);margin-bottom:6px}
.fal-sec p{font-size:14.5px;line-height:1.95}
.daynav{display:flex;gap:6px;flex-wrap:wrap}
.daynav a{padding:4px 12px;border-radius:999px;font-size:13px;border:1px solid color-mix(in srgb,var(--saffron) 40%,transparent);background:var(--surface)}
.fal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.fal-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:grid;gap:8px;align-content:start}
.fal-tile h2{font-size:17px;font-weight:800}
.fal-tile p{font-size:14px;color:var(--muted);line-height:1.9}
.cal{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.cal-m{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px}
.cal-m h2{font-size:15px;font-weight:800;margin-bottom:8px}
.cal-d{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-d a,.cal-d span{display:grid;place-items:center;height:30px;border-radius:7px;font-size:12.5px}
.cal-d a{background:var(--saffron-soft)}
.cal-d a.today{background:var(--saffron);color:#1b1206;font-weight:800}
.cal-d span{color:var(--line)}

/* quiz */
.quiz-box{background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--r) + 4px);padding:22px;display:grid;gap:16px;max-width:720px}
.quiz-progress{height:6px;background:var(--line);border-radius:99px;overflow:hidden}
.quiz-progress i{display:block;height:100%;background:var(--lapis);width:0;transition:width .3s}
.quiz-q{font-size:20px;font-weight:800;line-height:1.8}
.quiz-choices{display:grid;gap:10px}
.quiz-choices button{text-align:start;border:1px solid var(--line);background:var(--paper);border-radius:var(--r-sm);padding:12px 16px;font-size:15px}
.quiz-choices button:hover{border-color:var(--lapis);background:var(--lapis-soft)}
.result-card{background:radial-gradient(120% 90% at 100% 0%,hsl(var(--h) 60% 60%),hsl(calc(var(--h) + 30) 55% 32%));color:#fff;border-radius:calc(var(--r) + 6px);padding:28px;display:grid;gap:12px;max-width:720px}
.result-card h1{font-family:var(--f-display);font-weight:400;font-size:44px;line-height:1.25}
.share{display:flex;gap:8px;flex-wrap:wrap}
.note{font-size:12.5px;color:var(--muted)}

/* people list */
.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.person-card{display:grid;justify-items:center;text-align:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 10px}
.person-card .pt{width:88px;height:88px}
.person-card b{font-size:15px}
.person-card small{font-size:12px;color:var(--muted)}

@media (max-width:1000px){.article-grid{grid-template-columns:1fr}}
@media (max-width:640px){
  .nl{grid-template-columns:110px 1fr}
  .split{grid-template-columns:1fr}
  .article h1{font-size:24px}
  .fal-hero h1,.page-head h1{font-size:32px}
  .poem .b{grid-template-columns:1fr}
  .poem .b span:nth-child(2){text-align:start;padding-inline-start:24px}
}
.btn.sm{padding:4px 12px;font-size:13px}

.row-news h4,.pn li a,.tk a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pn-row h3,.nl h3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.article figure.video video{width:100%;border-radius:var(--r);background:#000;aspect-ratio:16/9}
.vwrap{position:relative;aspect-ratio:16/9}.vwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:var(--r)}
.ph .play{position:absolute;inset:0;display:grid;place-items:center}
.also{margin-top:12px;font-size:13.5px;background:var(--surface);border:1px dashed var(--line);border-radius:var(--r-sm);padding:10px 14px}.also a{color:var(--lapis)}
