/* persianprobe identity: "spec sheet + inspector". Near-black, acid lime and hot pink, Martian Mono, square corners, sticky spec gutter, bidi glyph storm. */
@font-face{font-family:'Martian Mono';font-style:normal;font-weight:100 800;font-stretch:75% 112.5%;font-display:swap;src:url(fonts/martian-mono.woff2) format('woff2')}
html[data-theme=dark] body.p-persianprobe{--bg:#07090a;--bg2:#0b0f10;--surface:#0e1315;--surface2:#12191b;--line:rgba(200,255,46,.13);--line2:rgba(200,255,46,.3);--text:#eaf0e4;--text2:#aab5a2;--text3:#8a9683;--accent:#c8ff2e;--accent-fg:#c8ff2e;--accent-ink:#0a1100;--glow:rgba(200,255,46,.12);--term:#050707;--term-line:rgba(200,255,46,.2);--hot:#ff3b6b;--lime:#c8ff2e}
html[data-theme=light] body.p-persianprobe{--bg:#f2f5ea;--bg2:#e9eedc;--surface:#fbfdf6;--surface2:#f6f9ee;--line:rgba(30,50,0,.14);--line2:rgba(30,50,0,.3);--text:#10170a;--text2:#3a4a26;--text3:#55663e;--accent:#4b7800;--accent-fg:#3b6000;--accent-ink:#fff;--glow:rgba(120,180,0,.14);--term:#0b0f08;--hot:#d4154a;--lime:#4b7800}
body.p-persianprobe{font-family:'Vazirmatn',system-ui,sans-serif;background:var(--bg);background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;background-position:-1px -1px}
.p-persianprobe h1,.p-persianprobe h2,.p-persianprobe .kicker,.p-persianprobe .label,.p-persianprobe .brand,.p-persianprobe .kpis b,.p-persianprobe .feat .n,.p-persianprobe .tab{font-family:'Martian Mono','Vazirmatn',ui-monospace,monospace}
html[lang=fa] .p-persianprobe h1,html[lang=fa] .p-persianprobe h2{font-family:'Vazirmatn',sans-serif}
.p-persianprobe h1{font-size:clamp(1.8rem,1rem + 3vw,3.5rem);line-height:1.1;letter-spacing:-.04em;font-weight:700;text-transform:none}
html[lang=fa] .p-persianprobe h1{line-height:1.3;letter-spacing:0;font-weight:800}
.p-persianprobe h1 em{font-style:normal;color:var(--bg);background:var(--lime);padding:0 .18em;box-decoration-break:clone;-webkit-box-decoration-break:clone;position:relative}
.p-persianprobe h2{font-size:clamp(1.1rem,.9rem + 1vw,1.6rem);letter-spacing:-.03em;line-height:1.25;font-weight:600}
html[lang=fa] .p-persianprobe h2{font-size:clamp(1.25rem,1rem + 1vw,1.7rem);font-weight:800;letter-spacing:0}
.p-persianprobe .brand{font-size:1rem;letter-spacing:-.03em}
.p-persianprobe .top{background:color-mix(in srgb,var(--bg) 88%,transparent);border-block-end:1px solid var(--line2)}
.p-persianprobe .nav{background:none;box-shadow:none;border-radius:0;gap:0}
.p-persianprobe .nav a{border-radius:0;font:500 .78rem 'Martian Mono',monospace;padding:6px 12px;color:var(--text2)}
.p-persianprobe .nav a::before{content:'/';color:var(--lime);margin-inline-end:4px}
.p-persianprobe .nav a:hover{background:var(--lime);color:var(--accent-ink)}.p-persianprobe .nav a:hover::before{color:var(--accent-ink)}
.p-persianprobe .btn{border-radius:2px}
.p-persianprobe .btn.pri{background:var(--lime);color:var(--accent-ink);box-shadow:4px 4px 0 var(--hot);transition:transform .15s,box-shadow .15s}
.p-persianprobe .btn.pri:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--hot)}
.p-persianprobe .kicker{font-size:.7rem;letter-spacing:.08em;color:var(--hot)}
.p-persianprobe .kicker i{background:var(--hot);border-radius:0;box-shadow:none;animation:blink 1s steps(2) infinite}
/* hero */
.p-persianprobe .hero{position:relative;overflow:hidden;border-block-end:1px solid var(--line2);padding-block:clamp(40px,6vw,84px)}
#storm{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.p-persianprobe .hero .wrap{position:relative;z-index:1}
.p-persianprobe .hero::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 70%,transparent) 40%,transparent 70%);z-index:0}
html[dir=rtl] .p-persianprobe .hero::after{background:linear-gradient(270deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 70%,transparent) 40%,transparent 70%)}
.p-persianprobe .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
.p-persianprobe .badges li{border-radius:0;font-family:'Martian Mono',monospace;font-size:.68rem}
.xray{background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 0 0 1px var(--line2),10px 10px 0 color-mix(in srgb,var(--lime) 18%,transparent);backdrop-filter:blur(6px)}
.xray-h{display:flex;gap:10px;align-items:center;padding:9px 14px;border-block-end:1px solid var(--line2);font:600 .7rem 'Martian Mono',monospace;color:var(--lime);letter-spacing:.06em;text-transform:uppercase}
.xray-h b{margin-inline-start:auto;color:var(--text3);font-weight:500;text-transform:none;letter-spacing:0}
.xray label{display:block;padding:12px 14px 0;font-size:.8rem;color:var(--text2)}
.xray textarea{display:block;width:calc(100% - 28px);margin:8px 14px 0;min-height:68px;resize:vertical;border:1px solid var(--line2);border-radius:0;background:var(--term);color:var(--text);font:500 1.2rem/1.6 'Vazirmatn','Martian Mono',monospace;padding:8px 12px;direction:rtl;unicode-bidi:plaintext}
.xray textarea:focus{outline:2px solid var(--lime);outline-offset:1px}
.xray-sum{padding:10px 14px 4px;font:600 .74rem 'Martian Mono',monospace;color:var(--text2);min-height:2.4em}
.xray-sum .bad{color:var(--hot)}.xray-sum .inv{color:#ffb020}.xray-sum .ok{color:var(--lime)}
.chips{display:flex;flex-wrap:wrap;gap:5px;padding:6px 14px 14px;margin:0;list-style:none;max-height:210px;overflow:auto;direction:ltr}
.chip{display:grid;gap:1px;justify-items:center;min-width:54px;padding:5px 6px;border:1px solid var(--line2);background:var(--term);font:500 .62rem 'Martian Mono',monospace;color:var(--text3);animation:chipin .35s both}
.chip b{font:500 1.15rem 'Vazirmatn',sans-serif;color:var(--text);line-height:1.3}
.chip.bad{border-color:var(--hot);background:color-mix(in srgb,var(--hot) 14%,var(--term))}.chip.bad b,.chip.bad span{color:var(--hot)}
.chip.inv{border-color:#ffb020;border-style:dashed}.chip.inv b{color:#ffb020;font:700 .66rem 'Martian Mono',monospace}
.chip.ok span{color:var(--lime)}
@keyframes chipin{from{opacity:0;transform:translateY(6px) scale(.9)}}
.xray-tip{padding:0 14px 12px;font-size:.78rem;color:var(--text3)}
/* spec-sheet sections: sticky gutter */
.p-persianprobe section{border-block-start:1px solid var(--line2);background:transparent}
.p-persianprobe section:nth-of-type(odd){background:color-mix(in srgb,var(--bg) 82%,transparent)}.p-persianprobe section:nth-of-type(even){background:color-mix(in srgb,var(--bg2) 86%,transparent)}
.p-persianprobe .hero{background:transparent!important}
@media(min-width:1000px){
 .p-persianprobe section:not(.hero) .wrap{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);column-gap:56px;align-items:start}
 .p-persianprobe section:not(.hero) .wrap>.label{grid-column:1;grid-row:1}
 .p-persianprobe section:not(.hero) .wrap>h2{grid-column:1;grid-row:1/span 40;position:sticky;top:96px;margin:34px 0 0}
 .p-persianprobe section:not(.hero) .wrap>:not(.label):not(h2){grid-column:2}
 .p-persianprobe section:not(.hero) .wrap>.label{margin:0 0 -4px}
 .p-persianprobe section:not(.hero) .wrap>:not(.label):not(h2){grid-row:auto}
}
.p-persianprobe section{counter-increment:sec}
.p-persianprobe .label{color:var(--lime);font-size:.7rem;letter-spacing:.1em}
.p-persianprobe .label::before{content:'§' counter(sec,decimal-leading-zero) ' ';color:var(--hot);margin-inline-end:6px}
.p-persianprobe main{counter-reset:sec}
.p-persianprobe .card,.p-persianprobe .kpis li,.p-persianprobe .limits li,.p-persianprobe .claim,.p-persianprobe .faq details,.p-persianprobe .problem>div,.p-persianprobe .code pre,.p-persianprobe .tab,.p-persianprobe .term,.p-persianprobe .finding{border-radius:0}
.p-persianprobe .card{background:transparent;box-shadow:inset 0 0 0 1px var(--line2);transition:background .2s,box-shadow .2s,transform .2s}
.p-persianprobe .card:hover{background:var(--surface);box-shadow:inset 0 0 0 1px var(--lime),6px 6px 0 color-mix(in srgb,var(--lime) 40%,transparent);transform:translate(-3px,-3px)}
.p-persianprobe .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.p-persianprobe .grid .card{box-shadow:0 0 0 1px var(--line2)}
@media(max-width:700px){.p-persianprobe .grid{grid-template-columns:minmax(0,1fr)}}
.p-persianprobe .feat .n{color:var(--hot);font-size:.7rem}
.p-persianprobe .feat .n::before{content:'#'}
.p-persianprobe .problem{gap:0}
.p-persianprobe .problem>div{padding:22px 24px;background:var(--surface)}
.p-persianprobe .problem>div:first-child{box-shadow:inset 3px 0 0 var(--hot)}.p-persianprobe .problem>div:last-child{box-shadow:inset 3px 0 0 var(--lime)}
html[dir=rtl] .p-persianprobe .problem>div:first-child{box-shadow:inset -3px 0 0 var(--hot)}html[dir=rtl] .p-persianprobe .problem>div:last-child{box-shadow:inset -3px 0 0 var(--lime)}
.p-persianprobe .problem h3{font:600 .8rem 'Martian Mono',monospace;text-transform:uppercase;letter-spacing:.06em}
.p-persianprobe .problem>div:first-child h3::before{content:'− ';color:var(--hot)}.p-persianprobe .problem>div:last-child h3::before{content:'+ ';color:var(--lime)}
.p-persianprobe .kpis{gap:0}
.p-persianprobe .kpis li{background:transparent;box-shadow:inset 0 3px 0 var(--lime),0 0 0 1px var(--line2);padding-top:18px}
.p-persianprobe .kpis b{font-size:2.6rem;color:var(--lime)}
.p-persianprobe .tabs{gap:0}.p-persianprobe .tab{box-shadow:inset 0 0 0 1px var(--line2);background:transparent;font-size:.74rem}
.p-persianprobe .tab[aria-selected=true]{background:var(--lime);color:var(--accent-ink)}
.p-persianprobe .term{box-shadow:0 0 0 1px var(--term-line),8px 8px 0 color-mix(in srgb,var(--hot) 22%,transparent)}
.p-persianprobe .term-bar i{border-radius:0;background:var(--lime);opacity:.7}.p-persianprobe .term-bar i:nth-child(2){background:var(--hot)}.p-persianprobe .term-bar i:nth-child(3){background:#ffb020}
.p-persianprobe .steps h3::before{border-radius:0;background:var(--hot);color:#fff}
.p-persianprobe .how{counter-reset:h}.p-persianprobe .how .card{counter-increment:h;padding-top:42px;position:relative}.p-persianprobe .how .card::before{content:'0' counter(h);position:absolute;top:12px;inset-inline-start:22px;font:700 .7rem 'Martian Mono',monospace;color:var(--hot)}
.p-persianprobe .limits li{border-inline-start:3px solid var(--hot);background:var(--surface)}
.p-persianprobe .faq details{background:transparent}.p-persianprobe .faq summary{font-family:'Martian Mono','Vazirmatn',monospace;font-size:.84rem}
.p-persianprobe .reveal-up{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}.p-persianprobe .reveal-up.in{opacity:1;transform:none}
.p-persianprobe .tbl th{font-family:'Martian Mono',monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:520px){.p-persianprobe .brand .fa-name{display:none}}
@media(max-width:900px){.p-persianprobe .hero-grid{grid-template-columns:minmax(0,1fr)}.p-persianprobe .hero::after{background:color-mix(in srgb,var(--bg) 62%,transparent)!important}}
html[data-theme=light] .p-persianprobe .xray textarea,html[data-theme=light] .p-persianprobe .chip{background:var(--surface2)}
html[data-theme=light] .p-persianprobe .chip.bad{background:color-mix(in srgb,var(--hot) 10%,var(--surface))}
html[data-theme=light] .p-persianprobe .chip.inv b{color:#a86500}

/* a11y: AA contrast for the always-dark terminal bar */
html[data-theme=light] .term-bar b{color:#a8e04a}
