/* ============================================================
   CTRL — app.css   (dark graphite + amber, keycap signature)
   ============================================================ */
:root{
  --bg:#111214; --panel:#1A1C1F; --panel2:#212428; --line:#2A2D32; --line2:#353941;
  --ink:#F2F0EA; --muted:#9A9CA3; --amber:#F5A524; --amber-deep:#C97E0A; --amber-soft:rgba(245,165,36,.14);
  --red:#E5484D; --green:#3DD68C; --blue:#5B9CFF;
  --r:14px; --r-sm:10px;
  --font:'Cairo',system-ui,sans-serif; --display:'Space Grotesk','Cairo',sans-serif; --mono:'JetBrains Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{margin:0 0 .4em;line-height:1.25;font-weight:900}
h1{font-size:2.4rem}h2{font-size:1.5rem}h3{font-size:1.1rem}
p{margin:0 0 1em}
.muted{color:var(--muted)}
.mono{font-family:var(--mono);direction:ltr;unicode-bidi:isolate}
.latin{font-family:var(--display);direction:ltr;unicode-bidi:isolate}
.center{text-align:center}
.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}
.between{justify-content:space-between}
.grow{flex:1}
.hidden{display:none!important}
:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- keycap wordmark (signature) ---------- */
.key{display:inline-flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;letter-spacing:.12em;direction:ltr;
  background:var(--panel2);color:var(--ink);border:1px solid var(--line2);border-bottom:4px solid #000;border-radius:9px;padding:.25rem .7rem;font-size:.95rem;line-height:1.4;
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset}
.key.big{font-size:1.6rem;padding:.4rem 1.1rem;border-bottom-width:6px;border-radius:12px}
.key.amber{background:var(--amber);color:#111;border-color:var(--amber-deep);border-bottom-color:#8a5606}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;background:var(--amber);color:#111;border:0;border-bottom:3px solid var(--amber-deep);
  border-radius:var(--r-sm);padding:.62rem 1.15rem;font-family:var(--font);font-weight:700;font-size:.95rem;cursor:pointer;transition:transform .06s,filter .15s;white-space:nowrap;line-height:1.4}
.btn:hover{filter:brightness(1.06)}
.btn:active{transform:translateY(2px);border-bottom-width:1px}
.btn.ghost{background:var(--panel2);color:var(--ink);border-bottom-color:#000}
.btn.danger{background:var(--red);color:#fff;border-bottom-color:#8f1f24}
.btn.sm{padding:.4rem .8rem;font-size:.85rem;border-bottom-width:2px}
.btn.block{width:100%}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.icon-btn{background:transparent;border:1px solid var(--line);color:var(--muted);width:36px;height:36px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s}
.icon-btn:hover{color:var(--ink);border-color:var(--line2);background:var(--panel2)}
.icon-btn.danger:hover{color:#fff;background:var(--red);border-color:var(--red)}

/* ---------- forms ---------- */
label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.3rem;font-weight:600}
.field{margin-bottom:1rem}
input[type=text],input[type=email],input[type=password],input[type=url],input[type=number],input[type=datetime-local],select,textarea{
  width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-sm);padding:.6rem .8rem;font-family:var(--font);font-size:.95rem;transition:border .15s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-soft)}
input[type=color]{width:44px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:2px;cursor:pointer}
textarea{resize:vertical;min-height:80px}
.help{font-size:.8rem;color:var(--muted);margin-top:.3rem}
.err{color:var(--red);font-size:.85rem}
.flash{padding:.7rem 1rem;border-radius:var(--r-sm);margin-bottom:1rem;border:1px solid var(--line);background:var(--panel2)}
.flash.error{border-color:rgba(229,72,77,.5);color:#ffb3b5}
.flash.success{border-color:rgba(61,214,140,.5);color:#a8f0cd}
.prefix-input{display:flex;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;direction:ltr}
.prefix-input span{padding:.6rem .7rem;color:var(--muted);font-family:var(--mono);font-size:.85rem;background:var(--panel2);border-right:1px solid var(--line);white-space:nowrap}
.prefix-input input{border:0;border-radius:0;background:transparent;font-family:var(--mono);direction:ltr}
.prefix-input input:focus{box-shadow:none}
.prefix-input:focus-within{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-soft)}
.switch{position:relative;display:inline-block;width:42px;height:24px;flex:none}
.switch input{opacity:0;width:0;height:0}
.switch i{position:absolute;inset:0;background:var(--line2);border-radius:999px;transition:.2s;cursor:pointer}
.switch i::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.switch input:checked+i{background:var(--amber)}
.switch input:checked+i::before{transform:translateX(18px)}
.chips{display:flex;gap:.4rem;flex-wrap:wrap}
.chip{padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:var(--panel2);cursor:pointer;font-size:.85rem;font-weight:600;color:var(--muted)}
.chip.on{background:var(--amber);color:#111;border-color:var(--amber)}

/* ---------- cards ---------- */
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.25rem}
.card+.card{margin-top:1rem}
.card h3{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}
.card h3 .lock{margin-inline-start:auto}
.lock{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:700;color:var(--amber);background:var(--amber-soft);padding:.2rem .6rem;border-radius:999px;border:1px solid rgba(245,165,36,.35)}
.gate{position:relative}
.gate.locked>*:not(.gate-cover){opacity:.35;pointer-events:none;filter:blur(1px)}
.gate-cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;text-align:center;z-index:2;padding:1rem}
.gate-cover p{margin:0;font-weight:700}
.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;background:var(--panel2);border:1px solid var(--line);color:var(--muted)}
.badge.amber{background:var(--amber);color:#111;border-color:var(--amber)}
.badge.green{background:rgba(61,214,140,.15);color:var(--green);border-color:rgba(61,214,140,.4)}
.badge.red{background:rgba(229,72,77,.15);color:#ff9a9e;border-color:rgba(229,72,77,.4)}

/* ---------- auth pages ---------- */
.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}
.auth{width:100%;max-width:420px}
.auth .card{padding:2rem}
.auth .brand{display:flex;justify-content:center;margin-bottom:1.5rem}
.auth h1{font-size:1.5rem;text-align:center}
.auth .sub{text-align:center;color:var(--muted);margin-bottom:1.5rem}
.auth .foot{text-align:center;margin-top:1.25rem;color:var(--muted);font-size:.9rem}
.auth .foot a{color:var(--amber);font-weight:700}
.avail{font-size:.8rem;margin-top:.3rem;min-height:1.2em}
.avail.ok{color:var(--green)}.avail.no{color:var(--red)}

/* ---------- landing ---------- */
.nav{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 0}
.nav .links{display:flex;gap:1.25rem;align-items:center;font-weight:600;color:var(--muted)}
.nav .links a:hover{color:var(--ink)}
.wrap{max-width:1120px;margin:0 auto;padding:0 1.25rem}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center;padding:3.5rem 0 4rem;min-height:78vh}
.hero h1{font-size:clamp(2.2rem,5vw,3.6rem);letter-spacing:-.01em}
.hero h1 em{font-style:normal;color:var(--amber)}
.hero .lead{font-size:1.15rem;color:var(--muted);max-width:520px}
.claim{display:flex;gap:.6rem;align-items:stretch;margin:1.75rem 0 .75rem;max-width:560px}
.claim .prefix-input{flex:1}
.claim .prefix-input input{font-size:1.05rem;padding:.8rem .6rem}
.claim .prefix-input span{font-size:.95rem;padding:.8rem .8rem}
.claim .btn{padding:.8rem 1.4rem;font-size:1rem}
.trust{display:flex;gap:1.25rem;color:var(--muted);font-size:.85rem;flex-wrap:wrap}
.trust span::before{content:"✓";color:var(--green);margin-inline-end:.35rem;font-weight:900}
.hero-visual{display:flex;justify-content:center;position:relative}
.keys{position:absolute;inset:auto auto 0 0;display:flex;gap:.4rem;opacity:.9;direction:ltr}
.keys .key{animation:press 3s ease-in-out infinite}
.keys .key:nth-child(2){animation-delay:.4s}.keys .key:nth-child(3){animation-delay:.8s}.keys .key:nth-child(4){animation-delay:1.2s}
@keyframes press{0%,88%,100%{transform:translateY(0);border-bottom-width:4px}92%{transform:translateY(3px);border-bottom-width:1px}}
.section{padding:3.5rem 0}
.section h2{font-size:2rem;text-align:center;margin-bottom:.5rem}
.section .sub{text-align:center;color:var(--muted);max-width:620px;margin:0 auto 2.25rem}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.feature{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.4rem}
.feature .ic{width:44px;height:44px;border-radius:11px;background:var(--amber-soft);color:var(--amber);display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:.9rem;border:1px solid rgba(245,165,36,.3)}
.feature h3{font-size:1.05rem}
.feature p{color:var(--muted);margin:0;font-size:.92rem}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;counter-reset:step}
.step{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.4rem;position:relative}
.step::before{counter-increment:step;content:counter(step);font-family:var(--display);font-weight:700;color:var(--amber);font-size:2rem;line-height:1;display:block;margin-bottom:.6rem}
.step p{color:var(--muted);margin:0;font-size:.92rem}
footer.site{border-top:1px solid var(--line);padding:2rem 0;color:var(--muted);font-size:.85rem}
footer.site .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}

/* ---------- phone frame ---------- */
.phone{width:300px;height:620px;border-radius:40px;background:#000;padding:10px;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px var(--line2);position:relative;flex:none}
.phone::before{content:"";position:absolute;top:18px;left:50%;transform:translateX(-50%);width:90px;height:22px;background:#000;border-radius:999px;z-index:3}
.phone iframe,.phone .screen{width:100%;height:100%;border:0;border-radius:32px;background:#111;display:block}

/* ---------- pricing ---------- */
.period-toggle{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;align-items:center}
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;align-items:stretch}
.plan{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.5rem;display:flex;flex-direction:column;position:relative}
.plan.hot{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-soft)}
.plan .tag{position:absolute;top:-12px;inset-inline-start:1rem}
.plan .name{font-family:var(--display);font-size:1.3rem;font-weight:700;direction:ltr;text-align:start}
.plan .tagline{color:var(--muted);font-size:.9rem;min-height:2.6em}
.plan .price{margin:.75rem 0 1rem;display:flex;align-items:baseline;gap:.35rem}
.plan .price b{font-family:var(--display);font-size:2.2rem;direction:ltr}
.plan .price small{color:var(--muted)}
.plan ul{list-style:none;padding:0;margin:0 0 1.25rem;flex:1}
.plan li{padding:.35rem 0;font-size:.9rem;display:flex;gap:.5rem;align-items:flex-start}
.plan li.off{color:var(--muted);text-decoration:line-through;opacity:.6}
.plan li::before{content:"✓";color:var(--green);font-weight:900;flex:none}
.plan li.off::before{content:"–";color:var(--muted)}

/* ---------- dashboard ---------- */
.dash{display:grid;grid-template-columns:230px minmax(0,1fr) 380px;min-height:100vh}
.side{border-inline-end:1px solid var(--line);padding:1.25rem 1rem;display:flex;flex-direction:column;gap:.35rem;position:sticky;top:0;height:100vh}
.side .brand{margin-bottom:1.25rem;padding:0 .35rem}
.side nav{display:flex;flex-direction:column;gap:.2rem}
.side nav a,.side nav button{display:flex;align-items:center;gap:.7rem;padding:.6rem .8rem;border-radius:var(--r-sm);color:var(--muted);font-weight:600;font-size:.95rem;border:0;background:transparent;cursor:pointer;font-family:var(--font);text-align:start;width:100%}
.side nav a:hover,.side nav button:hover{background:var(--panel2);color:var(--ink)}
.side nav .on{background:var(--amber-soft);color:var(--amber)}
.side nav i{width:18px;text-align:center}
.side .foot{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.side .foot .u{font-weight:700;color:var(--ink);word-break:break-all;direction:ltr;unicode-bidi:isolate;text-align:end;font-family:var(--mono)}
.main{padding:1.5rem 2rem;max-width:860px;width:100%;min-width:0}
.topbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}
.myurl{flex:1;display:flex;align-items:center;gap:.5rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-sm);padding:.45rem .5rem .45rem .9rem;min-width:260px}
.myurl .mono{flex:1;font-size:.9rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.preview-col{border-inline-start:1px solid var(--line);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;position:sticky;top:0;height:100vh}
.preview-col .phone{transform:scale(.95);transform-origin:top center}
.tab{display:none}.tab.on{display:block}
.tab-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem}
.tab-head h2{margin:0}
.addlink{display:grid;grid-template-columns:1fr 1.4fr auto;gap:.6rem;align-items:end}
.empty{text-align:center;padding:2.5rem 1rem;color:var(--muted);border:1px dashed var(--line2);border-radius:var(--r)}
.empty b{display:block;color:var(--ink);font-size:1.05rem;margin-bottom:.25rem}

/* link cards */
.lcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:.9rem 1rem;margin-bottom:.7rem;display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:start;transition:box-shadow .15s}
.lcard.dragging{opacity:.4}
.lcard.over{box-shadow:0 -3px 0 var(--amber)}
.lcard .grip{color:var(--muted);cursor:grab;padding:.5rem .2rem;align-self:center;font-size:1.1rem}
.lcard .main-f{display:flex;flex-direction:column;gap:.4rem;min-width:0}
.lcard .main-f input{background:transparent;border-color:transparent;padding:.35rem .5rem}
.lcard .main-f input:hover{border-color:var(--line)}
.lcard .main-f input:focus{background:var(--bg);border-color:var(--amber)}
.lcard .t{font-weight:700;font-size:1rem}
.lcard .u{font-family:var(--mono);font-size:.82rem;color:var(--muted);direction:ltr;text-align:left}
.lcard .side-f{display:flex;align-items:center;gap:.5rem}
.lcard .stats{font-size:.75rem;color:var(--muted);display:flex;gap:.6rem;padding:0 .5rem;align-items:center}
.lcard .stats b{color:var(--ink)}
.lcard .stats .st-pill{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:.05rem .5rem}
.lcard .more{grid-column:1/-1;border-top:1px solid var(--line);padding-top:.9rem;margin-top:.3rem;display:none;grid-template-columns:repeat(2,1fr);gap:.9rem}
.lcard.open .more{display:grid}
.lcard .thumb{width:44px;height:44px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:1.35rem;overflow:hidden;flex:none;align-self:center}
.lcard .thumb img{width:100%;height:100%;object-fit:cover}
.lcard .opt{display:flex;align-items:center;gap:.6rem;font-size:.9rem}
.lcard .opt label{margin:0;color:var(--ink)}

.lcard.off .main-f{opacity:.5}
.lcard .mv{display:none}
/* themes */
.themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.8rem}
.theme{cursor:pointer;border:2px solid var(--line);border-radius:12px;overflow:hidden;position:relative;transition:border .15s;background:var(--panel2)}
.theme:hover{border-color:var(--line2)}
.theme.on{border-color:var(--amber)}
.theme .prev{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px}
.theme .prev i{display:block;width:70%;height:12px;border-radius:6px}
.theme .prev i.outline{border:2px solid;background:transparent!important;height:8px}
.theme .prev i.hard{box-shadow:3px 3px 0 rgba(0,0,0,.6)}
.theme .prev i.soft{box-shadow:0 4px 10px rgba(0,0,0,.25)}
.theme .nm{font-size:.8rem;font-weight:700;padding:.4rem .6rem;text-align:center;display:flex;justify-content:space-between;align-items:center}
.theme .nm .fa-lock{color:var(--amber);font-size:.7rem}
.theme.custom .prev{background:repeating-linear-gradient(45deg,var(--panel2),var(--panel2) 8px,var(--line) 8px,var(--line) 16px);font-size:1.6rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.9rem}
.avatar-edit{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.avatar-edit .av{width:72px;height:72px;border-radius:50%;background:var(--panel2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:900;overflow:hidden;color:var(--amber);flex:none}
.avatar-edit .av img{width:100%;height:100%;object-fit:cover}
.socials-list{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.soc{display:flex;align-items:center;gap:.5rem}
.soc .ic{width:36px;height:36px;border-radius:9px;background:var(--panel2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);flex:none}
.soc input{direction:ltr;font-family:var(--mono);font-size:.85rem}
.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;border-top:1px solid var(--line)}
.toggle-row:first-of-type{border-top:0}
.toggle-row .desc{font-size:.82rem;color:var(--muted)}

/* analytics */
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin-bottom:1rem}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.1rem}
.stat .l{font-size:.8rem;color:var(--muted);font-weight:600}
.stat .v{font-family:var(--display);font-size:2rem;font-weight:700;direction:ltr;text-align:start;line-height:1.2}
.stat .d{font-size:.75rem;color:var(--muted)}
.chart-box{position:relative;height:260px;min-width:0;width:100%}
.chart-box canvas{max-width:100%}
table.tbl{width:100%;border-collapse:collapse;font-size:.9rem}
table.tbl th,table.tbl td{padding:.6rem .5rem;border-bottom:1px solid var(--line);text-align:start;vertical-align:middle}
table.tbl th{color:var(--muted);font-weight:600;font-size:.8rem}
table.tbl td.num{font-family:var(--display);direction:ltr;text-align:start}
.bar{height:6px;background:var(--panel2);border-radius:999px;overflow:hidden;min-width:80px}
.bar i{display:block;height:100%;background:var(--amber)}

/* toast + modal */
#toast{position:fixed;bottom:1.5rem;inset-inline-start:50%;transform:translateX(-50%);background:var(--panel2);border:1px solid var(--line2);padding:.7rem 1.2rem;border-radius:999px;font-weight:700;opacity:0;pointer-events:none;transition:.2s;z-index:99;box-shadow:0 10px 30px rgba(0,0,0,.5)}
#toast.show{opacity:1;bottom:2rem}
#toast.err{border-color:var(--red);color:#ffb3b5}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.65);display:none;align-items:center;justify-content:center;z-index:98;padding:1rem}
.modal.on{display:flex}
.modal .box{background:var(--panel);border:1px solid var(--line2);border-radius:var(--r);padding:1.5rem;width:100%;max-width:400px;text-align:center}
.modal .box h3{justify-content:center}
#qr{display:flex;justify-content:center;margin:1rem 0;background:#fff;padding:12px;border-radius:12px}
#qr img,#qr canvas{border-radius:6px}

/* admin */
.admin-nav{display:flex;gap:.4rem;margin-bottom:1.25rem;flex-wrap:wrap}
.admin-nav a{padding:.5rem .9rem;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel);font-weight:600;color:var(--muted)}
.admin-nav a.on{background:var(--amber);color:#111;border-color:var(--amber)}
.inline-form{display:inline-flex;gap:.4rem;align-items:center}
.inline-form select,.inline-form input{width:auto;padding:.3rem .5rem;font-size:.85rem}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;margin-bottom:1.5rem}

/* responsive */
@media (max-width:1180px){.dash{grid-template-columns:210px 1fr}.preview-col{display:none}.main{max-width:none}}
@media (max-width:900px){
  .hero{grid-template-columns:1fr;padding:2rem 0;min-height:auto}.hero-visual{order:-1}
  .features,.steps,.plans{grid-template-columns:1fr 1fr}
  .kpis{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .dash{grid-template-columns:1fr}
  .side{position:relative;height:auto;border-inline-end:0;border-bottom:1px solid var(--line);padding:.75rem 1rem}
  .side nav{flex-direction:row;overflow-x:auto;gap:.3rem}
  .side nav a,.side nav button{width:auto;white-space:nowrap;padding:.5rem .7rem}
  .side .brand{margin-bottom:.6rem}.side .foot{display:none}
  .main{padding:1rem}
  .addlink,.grid2,.grid3,.socials-list,.stats-grid,.lcard .more{grid-template-columns:1fr}
  .features,.steps,.plans{grid-template-columns:1fr}
  .claim{flex-direction:column}
  .nav .links{gap:.8rem;font-size:.9rem}
  .phone{width:260px;height:540px}
  .lcard .mv{display:inline-flex}
  .lcard{grid-template-columns:1fr}
  .lcard .grip{display:none}
  .lcard .side-f{justify-content:flex-start}
}

/* ===== v1.1.0 — logo / lang / landing extras / watermark ===== */
.logo{display:block}
.nav .logo{height:26px}
.brand .logo{height:34px;margin-inline:auto}
.side .brand .logo{height:24px;margin:0}
.auth .brand{display:flex;justify-content:center;margin-bottom:1.25rem}
.lang-pill{display:inline-flex;border:1px solid var(--line2);border-radius:999px;overflow:hidden}
.lang-pill a{padding:.3rem .7rem;font-size:.8rem;font-weight:700;color:var(--muted)}
.lang-pill a.on{background:var(--amber);color:#111214}
.lang-pill a:hover{color:var(--ink)}
.lang-pill a.on:hover{color:#111214}
.auth .lang-sw{display:flex;justify-content:center;gap:.6rem;margin-top:1.1rem;color:var(--muted);font-size:.85rem}
.auth .lang-sw a{color:var(--muted)}
.auth .lang-sw a.on,.auth .lang-sw a:hover{color:var(--amber);font-weight:700}
.chips.center{justify-content:center;margin-bottom:1.5rem}
.themes-strip{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-top:2.5rem}
.themes-strip .tprev{width:86px;text-align:center;font-size:.72rem;color:var(--muted)}
.themes-strip .p{height:56px;border-radius:12px;border:1px solid var(--line2);margin-bottom:.35rem;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.themes-strip .p i{display:block;width:60%;height:7px;border-radius:4px}
.faq{max-width:760px;margin:0 auto}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-sm);margin-bottom:.7rem;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:1rem 1.2rem;font-weight:700;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--display);font-size:1.2rem;color:var(--amber);flex:none;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{margin:0;padding:0 1.2rem 1.1rem;color:var(--muted);font-size:.95rem;line-height:1.7}
.faq p .mono{color:var(--ink)}
.cta-banner{background:linear-gradient(135deg,rgba(245,165,36,.16),rgba(245,165,36,.05));border:1px solid rgba(245,165,36,.35);border-radius:var(--r);text-align:center;padding:3rem 1.5rem;margin:1rem 0 3rem}
.cta-banner img{height:30px;margin:0 auto 1rem}
.cta-banner h2{font-size:1.8rem;margin-bottom:.4rem}
.cta-banner p{color:var(--muted);margin-bottom:1.4rem}
.btn.lg{padding:.85rem 1.8rem;font-size:1.05rem}
footer.site .lang-pill{margin-inline-start:.5rem}
@media (max-width:760px){.nav .links a:not(.btn){display:none}.nav .links .lang-pill{display:inline-flex}.nav .links .lang-pill a{display:inline-block}}

/* ===== v1.2.0 — landing v2 ===== */
body.landing{overflow-x:hidden}
.topnav{position:sticky;top:0;z-index:50;transition:background .25s,border-color .25s;border-bottom:1px solid transparent}
.topnav.scrolled{background:rgba(17,18,20,.82);backdrop-filter:blur(14px);border-bottom-color:var(--line)}
.orb{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:-1}
.orb.o1{width:560px;height:560px;background:rgba(245,165,36,.14);top:-180px;inset-inline-end:-120px}
.orb.o2{width:420px;height:420px;background:rgba(91,156,255,.07);top:520px;inset-inline-start:-160px}
.announce{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;border:1px solid rgba(245,165,36,.4);border-radius:999px;background:rgba(245,165,36,.08);color:var(--amber);font-size:.82rem;font-weight:700;margin-bottom:1.1rem}
.announce .dot{width:7px;height:7px;border-radius:50%;background:var(--amber);animation:blink 1.6s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}
.announce i{font-size:.7rem}
.float-chip{position:absolute;z-index:4;background:rgba(26,28,31,.92);border:1px solid var(--line2);border-radius:999px;padding:.5rem .9rem;font-size:.78rem;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.45);backdrop-filter:blur(8px);animation:floaty 5s ease-in-out infinite}
.float-chip i{color:var(--amber);margin-inline-end:.3rem}
.fc1{top:76px;inset-inline-start:-14px}
.fc2{bottom:130px;inset-inline-end:-10px;animation-delay:2.2s}
.fc2 i{color:var(--green)}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.marquee{border-block:1px solid var(--line);padding:.85rem 0;overflow:hidden;background:rgba(26,28,31,.5)}
.marquee .track{display:flex;gap:2.4rem;width:max-content;animation:marq 26s linear infinite}
.marquee span{color:var(--muted);font-size:.88rem;font-weight:700;white-space:nowrap}
.marquee span i{color:var(--amber);font-size:.7rem;margin-inline-end:.4rem}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
html[dir="rtl"] .marquee .track{animation-name:marq-rtl}
@keyframes marq-rtl{from{transform:translateX(0)}to{transform:translateX(50%)}}
.feature{transition:transform .2s,border-color .2s,box-shadow .2s}
.feature:hover{transform:translateY(-4px);border-color:rgba(245,165,36,.45);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;max-width:860px;margin:0 auto}
.mini{text-align:center}
.mscr{border-radius:26px;padding:26px 14px 20px;border:1px solid var(--line2);box-shadow:0 20px 50px rgba(0,0,0,.45);min-height:280px;transition:transform .25s}
.mini:hover .mscr{transform:translateY(-6px) rotate(-.5deg)}
.mav{width:52px;height:52px;border-radius:50%;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.3rem;font-family:var(--display)}
.mnm{font-weight:800;margin-bottom:12px;font-size:.95rem}
.mlk{border-radius:11px;padding:9px;font-size:.78rem;font-weight:700;margin-bottom:8px}
.mtag{display:inline-block;margin-top:.7rem;font-size:.8rem;color:var(--muted);font-weight:700}
.steps{position:relative}
.step{position:relative;transition:transform .2s,border-color .2s}
.step:hover{transform:translateY(-4px);border-color:rgba(245,165,36,.45)}
.plan.hot{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber),0 18px 50px rgba(245,165,36,.12);transform:scale(1.02)}
.plan{transition:transform .2s,border-color .2s}
.plan:not(.hot):hover{transform:translateY(-4px);border-color:var(--line2)}
.rv{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.float-chip,.marquee .track,.announce .dot{animation:none}}
@media (max-width:900px){.showcase{grid-template-columns:1fr;max-width:280px}.float-chip{display:none}.orb.o1{width:320px;height:320px}}

/* ===== v1.4.0 — page switcher + DNS guide ===== */
.pagesw{position:relative;margin:.9rem 0 .3rem}
.pagesw #ps-btn{width:100%;display:flex;align-items:center;gap:.55rem;background:var(--bg);border:1px solid var(--line2);border-radius:12px;padding:.5rem .65rem;color:var(--ink);cursor:pointer;font-family:inherit;font-size:.86rem;font-weight:700}
.pagesw #ps-btn:hover{border-color:var(--amber)}
.pagesw #ps-btn i{margin-inline-start:auto;color:var(--muted);font-size:.7rem}
.pagesw .pnm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr}
.pav{width:26px;height:26px;border-radius:50%;background:var(--amber);color:#111214;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:.8rem;overflow:hidden;flex:none}
.pav img{width:100%;height:100%;object-fit:cover;display:block}
.ps-menu{position:absolute;top:calc(100% + 6px);inset-inline:0;background:var(--panel);border:1px solid var(--line2);border-radius:14px;box-shadow:0 18px 44px rgba(0,0,0,.5);padding:.4rem;z-index:30;max-height:300px;overflow:auto}
.ps-menu.hidden{display:none}
.ps-item{width:100%;display:flex;align-items:center;gap:.55rem;background:transparent;border:0;border-radius:10px;padding:.5rem .55rem;color:var(--ink);cursor:pointer;font-family:inherit;text-align:start}
.ps-item:hover{background:var(--bg)}
.ps-item.on{background:rgba(245,165,36,.1)}
.ps-item .ps-t{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.ps-item .ps-t b{font-size:.84rem;direction:ltr;text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-item .ps-t small{color:var(--muted);font-size:.7rem;text-transform:capitalize}
.ps-item i.fa-check{margin-inline-start:auto;color:var(--amber);font-size:.75rem}
.ps-item.add .pav{background:var(--bg);border:1px dashed var(--line2);color:var(--muted)}
.ps-item.add:hover .pav{border-color:var(--amber);color:var(--amber)}
.dns-warn{margin-top:.7rem;background:rgba(240,68,86,.08);border:1px solid rgba(240,68,86,.35);color:#FF8A96;border-radius:10px;padding:.6rem .8rem;font-size:.82rem;line-height:1.6}
.dns-warn i{margin-inline-end:.35rem}
.dns-guide{margin-top:.7rem;background:var(--bg);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.dns-guide summary{cursor:pointer;list-style:none;padding:.7rem .9rem;font-weight:700;font-size:.86rem;color:var(--amber)}
.dns-guide summary::-webkit-details-marker{display:none}
.dns-guide summary i{margin-inline-end:.4rem}
.dns-guide ol{margin:0;padding:.2rem 2.1rem .9rem;color:var(--muted);font-size:.84rem;line-height:1.9}
.dns-guide ol .mono{color:var(--ink)}
.dns-guide > p{padding-inline:0.9rem;padding-bottom:.8rem}
