/* ===== Template pages (aaih.dev / .studio / .online / .site) ===== */
.tbar{position:sticky;top:0;z-index:50;background:var(--glass);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border-bottom:1px solid var(--line)}
.tbar .container{display:flex;align-items:center;gap:16px;height:66px}
.back{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:99px;border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:.85rem;transition:.25s;white-space:nowrap}
.back:hover{border-color:rgba(var(--gc),.8);transform:translateX(-3px)}[dir=rtl] .back:hover{transform:translateX(3px)}
.back svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dom{display:flex;align-items:center;gap:10px;margin-inline:auto;padding:7px 18px;border-radius:99px;background:var(--surface);border:1px solid var(--line);font-family:var(--mono);font-size:.88rem;direction:ltr}
.dom::before{content:"";width:8px;height:8px;border-radius:50%;background:#4cd964;box-shadow:0 0 10px #4cd964}
.ribbon{padding:4px 12px;border-radius:99px;font-size:.72rem;font-weight:700;background:var(--goldgrad);color:#2a1d02;white-space:nowrap}
.tpl-main{pointer-events:none;user-select:none;-webkit-user-select:none;cursor:default;position:relative;z-index:2}
.thero{padding:70px 0 40px}
.thero h1{font-size:clamp(2.2rem,5vw,4rem);font-weight:800;margin:20px 0 18px}
.thero h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.thero .lead{color:var(--muted);font-size:1.1rem;max-width:560px}
.thero.center{text-align:center}.thero.center .lead{margin-inline:auto}
.tsec{padding:50px 0}
@media (max-width:760px){.dom{display:none}.back span{display:none}.ribbon{margin-inline-start:auto}.tbar .container{gap:10px}}

/* ----- DEV ----- */
.dev-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center}
.install{display:inline-flex;align-items:center;gap:12px;margin-top:28px;padding:14px 20px;border-radius:14px;background:#06101e;color:#9fe7ff;font-family:var(--mono);font-size:.9rem;border:1px solid rgba(95,211,255,.25);direction:ltr}
.install b{color:var(--gold2);font-weight:500}.install .cur,.tcur{display:inline-block;width:8px;height:15px;background:#9fe7ff;vertical-align:-3px;animation:blink 1s steps(2) infinite}
.ide{background:#06101e;border:1px solid rgba(95,211,255,.2);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);font-family:var(--mono);font-size:.8rem;color:#c9d8f0;direction:ltr;text-align:left}
.ide-top{display:flex;align-items:center;gap:7px;padding:12px 16px;background:#0a1a30;border-bottom:1px solid rgba(95,211,255,.12)}
.ide-top i{width:11px;height:11px;border-radius:50%;background:#ff6b6b}.ide-top i:nth-child(2){background:#ffd166}.ide-top i:nth-child(3){background:#4cd964}
.ide-top span{margin-inline-start:14px;padding:3px 12px;border-radius:8px 8px 0 0;background:#06101e;color:#9fe7ff;font-size:.74rem}
.ide-body{display:grid;grid-template-columns:140px 1fr}
.tree{padding:14px;border-inline-end:1px solid rgba(95,211,255,.1);color:#7f95b8;line-height:2;font-size:.74rem}.tree b{color:#9fe7ff;font-weight:500}
.code{padding:14px 0;counter-reset:l;min-height:330px}
.code .ln{display:block;padding:0 16px;white-space:pre;line-height:1.85;opacity:0;transform:translateX(-8px);transition:.35s}
.code .ln::before{counter-increment:l;content:counter(l);display:inline-block;width:26px;color:#3b5276;margin-inline-end:14px;text-align:right}
.code .ln.on{opacity:1;transform:none}
.k{color:#c792ea}.s{color:#f3d68c}.f{color:#6fb8ff}.c{color:#5d7399}.n{color:#ff9d7a}.p{color:#9fe7ff}
.term{padding:14px 18px;background:#030a14;border-top:1px solid rgba(95,211,255,.12);min-height:120px;line-height:1.9;color:#8fe3ff}
.term div{opacity:0;transition:.35s}.term div.on{opacity:1}.term .ok{color:#4cd964}
.dgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dgrid .card h3{font-family:var(--mono)}

/* ----- STUDIO ----- */
.blobs{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.blobs i{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:drift 18s ease-in-out infinite alternate}
.blobs i:nth-child(1){width:46vw;height:46vw;background:#1b9ad6;top:-10%;left:-10%}
.blobs i:nth-child(2){width:40vw;height:40vw;background:#e5c168;top:30%;right:-12%;animation-delay:-6s;animation-duration:22s}
.blobs i:nth-child(3){width:36vw;height:36vw;background:#14508f;bottom:-14%;left:25%;animation-delay:-11s}
[data-theme=light] .blobs i{opacity:.28}
@keyframes drift{to{transform:translate(8vw,6vh) scale(1.2)}}
.prompt{display:flex;align-items:center;gap:14px;max-width:720px;margin:34px auto 0;padding:10px 10px 10px 24px;border-radius:99px;background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:var(--shadow);text-align:start}
[dir=rtl] .prompt{padding:10px 24px 10px 10px}
.prompt .tx{flex:1;font-family:var(--mono);font-size:.92rem;color:var(--muted);direction:ltr;text-align:left;min-height:1.6em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.prompt .btn{padding:12px 24px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tile{position:relative;aspect-ratio:4/3;border-radius:24px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.tile em{position:absolute;bottom:14px;inset-inline-start:14px;padding:6px 14px;border-radius:99px;background:rgba(5,12,25,.6);backdrop-filter:blur(8px);color:#fff;font-style:normal;font-size:.8rem;font-weight:600;z-index:2}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);transform:translateX(-100%);animation:shine 5s infinite}
.tile:nth-child(2)::after{animation-delay:.8s}.tile:nth-child(3)::after{animation-delay:1.6s}.tile:nth-child(4)::after{animation-delay:2.4s}.tile:nth-child(5)::after{animation-delay:3.2s}.tile:nth-child(6)::after{animation-delay:4s}
@keyframes shine{40%,100%{transform:translateX(100%)}}
.a1{background:#f3f1ea}.a1::before{content:"";position:absolute;inset:14%;border-radius:50%;background:conic-gradient(from 0deg,#14508f,#1b9ad6,#e5c168,#c4962f,#14508f);animation:rot 14s linear infinite;-webkit-mask:radial-gradient(circle,transparent 46%,#000 47%);mask:radial-gradient(circle,transparent 46%,#000 47%)}
.a2{background:linear-gradient(135deg,#0b2342,#14508f)}.a2::before{content:"";position:absolute;width:60%;aspect-ratio:1;inset:0;margin:auto;border-radius:30% 70% 60% 40%;background:linear-gradient(135deg,#e5c168,#c4962f);animation:morph 7s ease-in-out infinite}
.a3{background:radial-gradient(circle at 30% 30%,#6fe0ff,transparent 45%),radial-gradient(circle at 70% 70%,#e5c168,transparent 50%),#0b2342}
.a4{background:#06101e;display:flex;align-items:center;justify-content:center;gap:5px}.a4 b{width:6px;border-radius:3px;background:linear-gradient(#6fe0ff,#1b9ad6);animation:eq 1.2s ease-in-out infinite}
.a4 b:nth-child(1){height:30%}.a4 b:nth-child(2){height:60%;animation-delay:.1s}.a4 b:nth-child(3){height:85%;animation-delay:.2s}.a4 b:nth-child(4){height:50%;animation-delay:.3s}.a4 b:nth-child(5){height:75%;animation-delay:.4s}.a4 b:nth-child(6){height:40%;animation-delay:.5s}.a4 b:nth-child(7){height:65%;animation-delay:.6s}
@keyframes eq{50%{transform:scaleY(.35)}}
.a5{background:repeating-conic-gradient(#14508f 0 25%,#1b9ad6 0 50%) 0 0/46px 46px;animation:pan 6s linear infinite}
.a6{background:linear-gradient(160deg,#e5c168,#c4962f 40%,#14508f)}.a6::before{content:"AI";position:absolute;inset:0;display:grid;place-items:center;font:800 5rem var(--hd);color:rgba(255,255,255,.85);animation:floaty 5s ease-in-out infinite}
@keyframes rot{to{transform:rotate(360deg)}}@keyframes morph{50%{border-radius:60% 40% 30% 70%;transform:rotate(90deg) scale(1.15)}}@keyframes pan{to{background-position:92px 46px}}
.tl{display:grid;gap:8px;padding:18px;border-radius:22px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(12px);margin-top:20px;position:relative;overflow:hidden}
.tl div{display:flex;gap:8px;height:30px}.tl i{border-radius:8px;background:var(--grad);opacity:.85}.tl div:nth-child(2) i{background:var(--goldgrad)}.tl div:nth-child(3) i{background:rgba(var(--pc),.35)}
.tl .head{position:absolute;top:0;bottom:0;width:2px;background:#ff5d73;box-shadow:0 0 10px #ff5d73;animation:scrub 7s linear infinite}
@keyframes scrub{from{inset-inline-start:3%}to{inset-inline-start:97%}}

/* ----- ONLINE ----- */
.dash{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}
.live{position:relative;border-radius:26px;overflow:hidden;aspect-ratio:16/8.5;background:linear-gradient(135deg,#0b2342,#14508f 60%,#1b9ad6);border:1px solid var(--line);box-shadow:var(--shadow);color:#fff}
.live .tag{position:absolute;top:18px;inset-inline-start:18px;display:flex;align-items:center;gap:8px;padding:6px 14px;border-radius:99px;background:rgba(255,50,80,.9);font-weight:700;font-size:.78rem}
.live .tag::before{content:"";width:8px;height:8px;border-radius:50%;background:#fff;animation:blink 1s infinite}
.live h3{position:absolute;bottom:60px;inset-inline:22px;font-size:1.35rem}
.live .rob{position:absolute;inset-inline-end:8%;top:12%;width:22%;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center;font:800 2.2rem var(--hd);animation:pulse2 3s infinite;border:1px solid rgba(255,255,255,.3)}
.live .ctl{position:absolute;bottom:16px;inset-inline:22px;display:flex;align-items:center;gap:12px}
.live .ctl i{flex:1;height:5px;border-radius:3px;background:rgba(255,255,255,.25);overflow:hidden}.live .ctl i b{display:block;height:100%;background:var(--gold2);animation:prog 12s linear infinite}
.avs{display:flex}.avs s{width:26px;height:26px;border-radius:50%;margin-inline-start:-8px;border:2px solid #14508f;background:var(--goldgrad)}.avs s:nth-child(2){background:linear-gradient(135deg,#6fe0ff,#1b9ad6)}.avs s:nth-child(3){background:linear-gradient(135deg,#fff,#9bb6dc)}
.courses{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.course{padding:18px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}
.course .th{height:76px;border-radius:12px;margin-bottom:14px;background:var(--grad)}.course:nth-child(2) .th{background:var(--goldgrad)}.course:nth-child(3) .th{background:linear-gradient(135deg,#0b2342,#6fe0ff)}
.course b{font-size:.9rem;display:block;margin-bottom:12px}.course .pr{height:6px;border-radius:3px;background:var(--line);overflow:hidden}.course .pr i{display:block;height:100%;border-radius:3px;background:var(--grad)}
.chat{border-radius:26px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;min-height:420px}
.chat .hd{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--line);font-weight:700}
.chat .hd::before{content:"";width:10px;height:10px;border-radius:50%;background:#4cd964;box-shadow:0 0 10px #4cd964}
.msgs{flex:1;padding:18px;display:flex;flex-direction:column;gap:12px}
.m{max-width:86%;padding:11px 16px;border-radius:18px;font-size:.88rem;opacity:0;transform:translateY(10px);transition:.5s}
.m.on{opacity:1;transform:none}
.m.u{align-self:flex-end;background:var(--grad);color:#fff;border-end-end-radius:4px}
.m.b{align-self:flex-start;background:var(--surface2);border:1px solid var(--line);border-end-start-radius:4px}

/* ----- SITE ----- */
.builder{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:start}
.panel{padding:22px;border-radius:24px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.panel h4{font-size:.78rem;letter-spacing:.1em;color:var(--muted);margin:0 0 12px;font-family:var(--mono);text-transform:uppercase}html[dir=rtl] .panel h4{letter-spacing:0}
.panel h4:not(:first-child){margin-top:24px}
.tg{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.tg::after{content:"";width:34px;height:20px;border-radius:99px;background:var(--grad);box-shadow:inset -14px 0 0 -4px #fff}
[dir=rtl] .tg::after{box-shadow:inset 14px 0 0 -4px #fff}
.sw{display:flex;gap:10px}.sw i{width:30px;height:30px;border-radius:50%;box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--line)}
.lg{display:flex;gap:8px;flex-wrap:wrap}.lg span{padding:5px 12px;border-radius:99px;background:var(--surface2);border:1px solid var(--line);font-size:.78rem;font-weight:600}
.bf{border-radius:22px;overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.bf .bar{display:flex;align-items:center;gap:7px;padding:11px 16px;background:var(--surface2);border-bottom:1px solid var(--line)}
.bf .bar i{width:10px;height:10px;border-radius:50%;background:#ff6b6b}.bf .bar i:nth-child(2){background:#ffd166}.bf .bar i:nth-child(3){background:#4cd964}
.bf .bar span{margin-inline-start:12px;flex:1;max-width:260px;padding:3px 14px;border-radius:99px;background:var(--surface);font-family:var(--mono);font-size:.72rem;color:var(--muted);direction:ltr}
.pg{padding:18px;display:grid;gap:14px;min-height:380px;background:var(--bg)}
.pg>div{opacity:0;transform:translateY(14px) scale(.98);transition:.6s;border-radius:16px}.pg>div.on{opacity:1;transform:none}
.pg .h{height:130px;background:var(--grad);position:relative;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:0 26px}
.pg .h b{height:12px;width:48%;border-radius:6px;background:rgba(255,255,255,.9)}.pg .h u{height:8px;width:30%;border-radius:4px;background:rgba(255,255,255,.5)}.pg .h s{width:78px;height:24px;border-radius:99px;background:var(--gold2)}
.pg .sv{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;height:96px}.pg .sv i{border-radius:14px;background:var(--surface);border:1px solid var(--line)}
.pg .gl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;height:80px}.pg .gl i{border-radius:12px;background:rgba(var(--pc),.25)}.pg .gl i:nth-child(2n){background:rgba(var(--gc),.35)}
.pg .ct{height:52px;background:var(--surface);border:1px solid var(--line)}
.tmp{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tmp .bf{position:relative}.tmp .bf em{position:absolute;bottom:14px;inset-inline-start:14px;padding:5px 14px;border-radius:99px;background:rgba(5,12,25,.65);color:#fff;font-style:normal;font-size:.78rem;font-weight:600}
.tmp .mini{height:190px;padding:14px;display:grid;gap:8px;grid-template-rows:60px 1fr}
.tmp .mini i{border-radius:10px}.tmp .mini i:first-child{background:var(--c1)}.tmp .mini div{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.tmp .mini div i{background:var(--c2);opacity:.55}

@media (max-width:980px){
  .dev-grid,.dash,.builder{grid-template-columns:1fr}
  .dgrid{grid-template-columns:repeat(2,1fr)}.gal,.tmp{grid-template-columns:repeat(2,1fr)}.courses{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:620px){
  .dgrid,.gal,.tmp{grid-template-columns:1fr}.courses{grid-template-columns:1fr}.ide-body{grid-template-columns:1fr}.tree{display:none}
  .prompt{flex-direction:column;border-radius:26px;padding:16px!important}.prompt .btn{width:100%;justify-content:center}
  .install{font-size:.74rem}.code .ln{font-size:.7rem}
}
