﻿
/* ================= magazine: list + article ================= */
/* list header */
.bl-hero{padding:6px 0 26px}
.bl-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.bl-head h1{font-size:46px;line-height:1.35;font-weight:800;margin:16px 0 8px;letter-spacing:-.01em}
.bl-head .sub{font-size:16px}
.bl-search{position:relative;flex:none;width:340px}
.bl-search input{width:100%;height:54px;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:0 50px 0 20px;font-family:inherit;font-size:14.5px;outline:none;transition:border-color .2s,box-shadow .2s}
.bl-search input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.07)}
.bl-search .i{position:absolute;right:20px;top:50%;margin-top:-9px;font-size:18px;color:var(--muted)}
.bl-chips{display:flex;gap:8px;margin-top:26px;overflow-x:auto;scrollbar-width:none;padding:2px}
.bl-chips::-webkit-scrollbar{display:none}
.bl-chips button{flex:none;height:42px;padding:0 20px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-family:inherit;font-size:13.5px;font-weight:600;color:var(--text-2);transition:.25s}
.bl-chips button:hover{border-color:var(--primary);color:var(--primary)}
.bl-chips button.on{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 8px 20px rgba(var(--primary-rgb),.2)}

/* cards (extends the home page's .ac) */
.bl-list{padding:10px 0 100px}
.ac .img{display:block}
.ac h3 a:hover{color:var(--gold-dark)}
.ac{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s,border-color .3s,opacity .3s}
.ac.out{opacity:0;transform:scale(.97)}
.ac[hidden]{display:none}
.bl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ac.feat{display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;margin-bottom:24px}
.ac.feat .img{height:auto;min-height:340px;margin:12px 12px 12px 0}
.ac.feat .body{padding:40px 40px 36px;justify-content:center;gap:12px}
.ac.feat h3{font-size:28px;line-height:1.5;font-weight:800}
.ac.feat p{flex:none;font-size:15px}
.ac.feat .btn{align-self:flex-start;margin-top:10px;border-radius:14px}
.feat-flag{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:#fff;background:var(--primary);padding:3px 12px;border-radius:999px}
.bl-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:56px 20px;text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--border);border-radius:26px}
.bl-empty[hidden]{display:none}
.bl-empty .i{font-size:30px;margin-bottom:6px}
.bl-empty b{color:var(--text);font-size:17px}
.bl-news{position:relative;overflow:hidden;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;margin-top:64px;padding:48px 56px;border-radius:34px;color:#fff;
  background:radial-gradient(90% 130% at 100% 0%,var(--primary-light) 0%,var(--primary) 46%,var(--primary-dark) 100%)}
.bl-news::before{content:"";position:absolute;width:440px;height:440px;left:-150px;bottom:-240px;border-radius:50%;border:1px solid rgba(255,255,255,.09);box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018);pointer-events:none}
.bl-news>*{position:relative}
.bl-news h2{color:#fff;font-size:28px;margin:14px 0 8px}
.bl-news p{color:var(--on-soft);font-size:14.5px}
.bl-news-form{display:flex;gap:10px}
.bl-news-form input{flex:1;min-width:0;height:54px;border:1px solid rgba(255,255,255,.25);border-radius:16px;background:rgba(255,255,255,.06);color:#fff;padding:0 18px;font-family:inherit;font-size:14px;outline:none}
.bl-news-form input::placeholder{color:var(--on-soft)}
.bl-news-form input:focus{border-color:var(--gold-soft)}
.bl-news-form .btn{height:54px;border-radius:16px}

/* ---------- article ---------- */
.rprog{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;pointer-events:none}
.rprog i{display:block;height:100%;width:100%;transform-origin:100% 50%;transform:scaleX(0);background:linear-gradient(270deg,var(--gold),var(--primary))}
.art-head{padding:4px 0 44px}
.art-head .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.ah-text .tag{display:inline-block;background:rgba(var(--accent-rgb),.09)!important;padding:3px 14px;border-radius:999px}
.ah-text h1{font-size:44px;line-height:1.4;font-weight:800;margin:16px 0 14px;letter-spacing:-.01em}
.lede{font-size:17px;line-height:2.05;color:var(--text-2)}
.ah-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:24px}
.by{display:flex;align-items:center;gap:10px}
.by .av{width:44px;height:44px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;overflow:hidden}
.by .av img{width:34px;height:auto}
.by b{display:block;font-size:13.5px;font-weight:700;line-height:1.5}
.by small{display:block;font-size:12px;color:var(--muted)}
.ah-meta .pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:12.5px;font-weight:600;color:var(--text-2)}
.ah-vis{border-radius:32px;overflow:hidden;aspect-ratio:384/260;box-shadow:0 30px 70px rgba(var(--shadow-rgb),.10)}
.ah-vis svg{width:100%;height:100%;display:block}

.art-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;align-items:start;padding-bottom:20px}
.art-side{position:sticky;top:28px;display:grid;gap:16px}
.toc{display:flex;flex-direction:column;gap:2px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:24px}
.toc b{font-size:13px;font-weight:800;margin-bottom:8px}
.toc a{position:relative;padding:7px 14px 7px 0;font-size:13px;line-height:1.8;color:var(--muted);border-right:2px solid var(--border);transition:color .2s,border-color .2s}
.toc a:hover{color:var(--primary)}
.toc a.on{color:var(--primary);font-weight:700;border-right-color:var(--gold)}
.share{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:20px}
.share b{font-size:13px;font-weight:700}
.share div{display:flex;gap:8px}
.sh-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:#fff;display:grid;place-items:center;color:var(--gold-dark);font-size:16px;transition:.2s}
.sh-btn:hover{background:var(--gold-soft);border-color:var(--gold)}

.prose{max-width:740px;font-size:16.5px;line-height:2.15;color:var(--text-2)}
.prose h2{font-size:27px;line-height:1.5;font-weight:800;color:var(--text);margin:44px 0 12px;scroll-margin-top:30px}
.prose h2:first-child{margin-top:0}
.prose p{margin:0 0 16px}
.prose b{color:var(--text);font-weight:700}
.prose ul,.prose ol{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:10px}
.ticks li{position:relative;padding-right:32px}
.ticks li::before{content:"";position:absolute;right:0;top:9px;width:20px;height:20px;border-radius:50%;background:linear-gradient(140deg,#fff,var(--gold-soft)) padding-box;box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.3)}
.ticks li::after{content:"";position:absolute;right:7px;top:14px;width:6px;height:9px;border:solid var(--gold-dark);border-width:0 2px 2px 0;transform:rotate(45deg)}
.steps{counter-reset:st}
.steps li{counter-increment:st;position:relative;padding:14px 62px 14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:18px}
.steps li::before{content:counter(st,persian);position:absolute;right:14px;top:50%;margin-top:-17px;width:34px;height:34px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800}
.callout{display:flex;gap:14px;align-items:flex-start;margin:6px 0 22px;padding:18px 20px;border-radius:22px;background:linear-gradient(120deg,var(--surface),var(--wash));border:1px solid var(--border)}
.callout .ic{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:18px;background:linear-gradient(140deg,#fff,var(--gold-soft));color:var(--gold-dark)}
.callout b{display:block;font-size:15px;line-height:1.8}
.callout p{margin:0;font-size:14.5px;line-height:2}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 18px}
.trio div{padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:20px;line-height:1.9}
.trio .n{display:block;font-size:28px;font-weight:800;line-height:1.2;color:rgba(var(--primary-rgb),.12)}
.trio b{display:block;font-size:15px;margin:4px 0 2px}
.trio p{margin:0;font-size:13.5px}
.art-prod{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:center;margin:28px 0 8px;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:26px;box-shadow:0 24px 50px rgba(var(--shadow-rgb),.06)}
.ap-img{display:block;aspect-ratio:1;border-radius:18px;overflow:hidden;background:radial-gradient(90% 80% at 50% 30%,#fff,var(--wash) 75%)}
.ap-img img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}
.ap-body{display:flex;flex-direction:column;gap:4px;line-height:1.9}
.ap-body .tag{align-self:flex-start;background:rgba(var(--accent-rgb),.09)!important;padding:2px 12px;border-radius:999px;font-size:11.5px}
.ap-body b{font-size:17px}
.ap-body p{margin:0;font-size:13.5px}
.ap-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px;flex-wrap:wrap}
.ap-row .price{margin:0}
.ap-row .btn{border-radius:12px}
.art-foot{margin-top:40px;padding-top:24px;border-top:1px solid var(--border)}
.art-foot .tags{display:flex;flex-wrap:wrap;gap:8px}
.art-foot .tags a{padding:5px 14px;border-radius:999px;background:var(--subtle);font-size:12.5px;font-weight:600;color:var(--text-2)}
.art-foot .tags a:hover{background:var(--gold-soft);color:var(--gold-dark)}
.art-foot .note{margin-top:16px;font-size:12.5px;color:var(--muted)}
.art-rel{padding-top:80px}

@media (max-width:1100px){
  .bl-head{flex-direction:column;align-items:stretch;gap:18px}
  .bl-search{width:100%}
  .bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac.feat{grid-template-columns:1fr}
  .ac.feat .img{min-height:260px;margin:12px 12px 0}
  .bl-news{grid-template-columns:1fr;padding:40px}
  .art-head .wrap{grid-template-columns:1fr;gap:28px}
  .art-grid{grid-template-columns:1fr;gap:24px}
  .art-side{position:static;grid-template-columns:1fr auto}
  .toc{display:none}
}
@media (max-width:640px){
  .bl-head h1{font-size:30px}
  .bl-chips{margin-inline:-20px;padding-inline:20px}
  .bl-chips button{height:38px;padding:0 16px;font-size:13px}
  .bl-grid{grid-template-columns:1fr;gap:16px;overflow:visible}
  .bl-grid .ac{flex:none;width:auto}
  .ac.feat .body{padding:22px 22px 24px}
  .ac.feat h3{font-size:21px}
  .bl-news{padding:30px 22px;border-radius:26px;margin-top:44px}
  .bl-news h2{font-size:22px}
  .bl-news-form{flex-direction:column}
  .ah-text h1{font-size:28px}
  .lede{font-size:15.5px}
  .ah-vis{border-radius:24px}
  .art-side{grid-template-columns:1fr}
  .prose{font-size:15.5px;line-height:2.1}
  .prose h2{font-size:22px;margin-top:34px}
  .trio{grid-template-columns:1fr}
  .art-prod{grid-template-columns:96px minmax(0,1fr);gap:14px;border-radius:22px}
  .art-rel{padding-top:56px}
}

/* ---- additions for the live blog ---- */
.ac .img img{width:100%;height:100%;object-fit:cover;display:block}
.ac .img.noimg{background:linear-gradient(140deg,#fff,var(--gold-soft))}
.bl-chips a{flex:none;display:inline-flex;align-items:center;height:42px;padding:0 20px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-weight:600;font-size:14px;color:var(--text-2)}
.bl-chips a:hover{border-color:var(--primary);color:var(--primary)}
.bl-chips a.on{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 8px 20px rgba(var(--primary-rgb),.2)}
.ah-vis img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.art-cm{max-width:740px;margin:56px 0 0}
.art-cm h2{font-size:24px;margin-bottom:18px}
.art-cm .cm{border:1px solid var(--border);border-radius:20px;padding:18px 22px;background:var(--surface);margin-bottom:12px}
.art-cm .cm b{display:block;font-size:14.5px}
.art-cm .cm small{color:var(--muted);font-size:12px}
.art-cm .cm p{margin-top:8px;font-size:14.5px;line-height:2}
.art-cm .cm .reply{margin-top:10px;padding:10px 14px;border-radius:12px;background:var(--wash);font-size:13.5px}
.cm-form{display:grid;gap:12px;margin-top:22px}
.cm-form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cm-form input,.cm-form textarea{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px 16px;font:inherit;font-size:14.5px;background:#fff;color:var(--text)}
.cm-form textarea{min-height:120px;resize:vertical}
.cm-form input:focus,.cm-form textarea:focus{outline:none;border-color:var(--gold)}
.cm-msg{font-size:13px;font-weight:600;min-height:20px}
.cm-msg.err{color:#A0493C}.cm-msg.ok{color:#3F6B4E}
@media(max-width:640px){.cm-form .two{grid-template-columns:1fr}}