:root{--bg:#0a0a0c;--fg:#f3f3f5;--mut:#9d9da9;--card:#15151a;--soft:#101014;--bd:#2a2a32;--ac:#f97316;--ac2:#facc15;--ok:#22c55e;--ink:#0a0a0c;--rad:10px;--hh:58px;--tbh:62px;--gap:8px;--w:1180px;--wr:820px;--fn:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans","Noto Sans Devanagari","Noto Naskh Arabic","Noto Nastaliq Urdu","Noto Sans Bengali","Noto Sans Tamil","Noto Sans Symbols 2","Noto Sans Symbols","Segoe UI Symbol","Apple Symbols","Noto Color Emoji",sans-serif}
html{color-scheme:dark}
body{background:var(--bg)}
a{color:var(--ac2)}
strong,b{color:#fff}
/* header: translucent black, bracket logo */
.ff-h{background:rgba(10,10,12,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--bd)}
.ff-lg,.ff-lg:hover{color:#fff}
.ff-lg::before{content:"[";color:var(--ac)}
.ff-lg::after{content:"]";color:var(--ac)}
.ff-nv a{color:#d6d6de;border-radius:6px}
.ff-nv a:hover,.ff-nv .on a{background:#1d1d24;color:var(--ac2)}
.ff-cta{background:var(--ac);color:var(--ink);border-radius:6px}
/* tool */
.ff-gen{background:linear-gradient(180deg,#14100c,#0a0a0c 70%);border:1px solid var(--bd);border-top:3px solid var(--ac);border-radius:0 0 var(--rad) var(--rad);margin-top:0;padding:26px 18px 20px}
.ff-m>.ff-gen{max-width:var(--w)}
.ff-h1{color:#fff;margin-top:.2em}
.ff-lead{color:var(--mut)}
.ff-row input{background:#0f0f13;color:#fff;border:2px solid var(--bd);border-radius:8px}
.ff-row input:focus{border-color:var(--ac)}
.ff-go{border-radius:8px;background:var(--ac);color:var(--ink)}
.ff-ghost,.ff-op summary,.ff-op select,.ff-xt button{background:#17171d;border:1px solid var(--bd);color:var(--fg);border-radius:8px}
.ff-ghost:hover{border-color:var(--ac);color:var(--ac2)}
.ff-xt button[aria-selected=true]{background:var(--ac);border-color:var(--ac);color:var(--ink)}
.ff-i,.ff-k,.ff-q,.ff-k2{background:#15151a;border-color:var(--bd);color:var(--fg);border-radius:8px}
.ff-i:hover,.ff-k:hover,.ff-q:hover{border-color:var(--ac)}
.ff-i.ok{background:var(--ok);border-color:var(--ok);color:#04130a}
.ff-k{border-left:4px solid var(--ac)}
.ff-q{border-top:3px solid var(--ac2);color:var(--fg)}
.ff-q:hover{text-decoration:none}
.ff-lk{background:#101014;border-color:var(--bd);color:var(--mut)}
.ff-sh2 h2 svg{background:var(--ac);color:var(--ink);border-radius:6px}
.ff-gold{background:#101014;border:1px solid var(--bd);border-radius:var(--rad)}
.ff-top li{background:#15151a;border-width:2px}
.ff-top li.p1{border-color:var(--ac)}
.ff-top li.p2{border-color:var(--ac2)}
.ff-top i{color:var(--ink)}
.ff-top em{background:#1d1d24}
.ff-gold .ff-cl>li{background:#15151a}
.ff-op label,.ff-add label>span:first-child,.ff-sub,.ff-meta{color:var(--mut)}
.ff-add input,.ff-sf input{background:#0f0f13;border:1px solid var(--bd);color:#fff;border-radius:8px}
/* reading */
.ff-c{color:#dcdce4}
.ff-c h2,.ff-c h3{color:#fff}
.ff-c h2{border-left:4px solid var(--ac);padding-left:12px}
.ff-c a{color:var(--ac2)}
.ff-c blockquote{background:#15151a;border-left-color:var(--ac)}
.ff-c pre,.ff-c code{background:#17171d}
.ff-tw th{background:#17171d;color:#fff}
.ff-tw th,.ff-tw td{border-color:var(--bd)}
.ff-r{background:#101014;border-color:var(--bd)}
.ff-r button{background:#17171d;border-color:var(--bd);color:var(--fg)}
.ff-pc{background:#15151a;border-color:var(--bd)}
.ff-pc h2 a{color:#fff}
.ff-pg a{border-color:var(--bd);color:var(--fg)}
/* footer */
.ff-ft{background:#070709;border-top:1px solid var(--bd)}
.ff-ft a,.ff-ft .ff-lg{color:#e4e4ea}
.ff-cp{border-top-color:var(--bd)}
.ff-sheet{background:rgba(0,0,0,.7)}
.ff-sp{background:#101014;border:1px solid var(--bd)}
.ff-ml a{background:#15151a;border-color:var(--bd);color:var(--fg)}
.ff-toast{background:var(--ac);color:var(--ink)}
.ff-tb{background:#101014!important;border-color:var(--bd)!important}
.ff-tb a,.ff-tb button{color:#9d9da9}
.ff-tb .on,.ff-tb .mid{color:var(--ac)}
.ff-tb .mid b{background:var(--ac);color:var(--ink);box-shadow:0 0 0 5px #101014,0 6px 16px rgba(0,0,0,.5)}
.ff-up{background:#17171d;border-color:var(--bd);color:var(--fg)}
@media(max-width:768px){
.ff-gen{border-inline:0;border-radius:0;padding-inline:0}
.ff-gold{border-inline:0;border-radius:0}
}
