:root{--bg:#070a12;--bg2:#0b0f1a;--surface:#121a30e0;--line:#5a6eaa57;--line-strong:#7891d273;--txt:#e8ecf8;--muted:#9aa6c9;--accent:#4f7cff;--accent2:#37d0ff;--good:#3cffb0;--warn:#ffd24a;--bad:#ff5a5a;--radius:16px;--display:"Syne", "Segoe UI", sans-serif;--sans:"DM Sans", "Segoe UI", sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--sans);color:var(--txt);background:radial-gradient(900px 520px at 8% -8%, #4f7cff38, transparent 58%), radial-gradient(700px 420px at 100% 0%, #37d0ff1f, transparent 55%), radial-gradient(600px 380px at 50% 110%, #3cffb00f, transparent 50%), linear-gradient(180deg, #060912 0%, var(--bg) 42%, #080d18 100%);-webkit-font-smoothing:antialiased;background-attachment:fixed}button,input,textarea,select{font:inherit}.app{max-width:440px;min-height:100vh;margin:0 auto;padding:14px 16px 36px;position:relative}.app:before{content:"";pointer-events:none;opacity:.7;background-image:radial-gradient(#ffffff09 1px,#0000 1px);background-size:22px 22px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000008c,#0000 70%);mask-image:linear-gradient(#0000008c,#0000 70%)}.topbar{z-index:2;align-items:center;gap:12px;margin-bottom:18px;animation:.35s ease-out fadeDown;display:flex;position:relative}.burger{border:1px solid var(--line);background:#0e1424e6;border-radius:14px;flex-shrink:0;place-content:center;gap:5px;width:44px;height:44px;padding:0;transition:border-color .15s,transform .12s;display:grid}.burger:active{transform:scale(.96)}.burger span{background:#fff;border-radius:2px;width:18px;height:2px;display:block}.brand-row{align-items:center;gap:12px;min-width:0;display:flex}.brand-row.solo{margin-bottom:18px}.logo{object-fit:cover;border:1px solid var(--line-strong);background:#0e1528;border-radius:13px;flex-shrink:0;width:42px;height:42px}.logo.lg{border-radius:15px;width:52px;height:52px}.wordmark{min-width:0}.brand{font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:22px;font-weight:800;line-height:1.05}.brand .vpn{color:var(--accent2);letter-spacing:.02em;margin-left:.28em;font-size:.78em;font-weight:700}.sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:12px;font-weight:600;overflow:hidden}.scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;background:#03060e8c;border:0;animation:.2s fadeIn;position:fixed;inset:0}.drawer{z-index:50;border-right:1px solid var(--line);background:linear-gradient(#10182c 0%,#0a101e 100%);width:min(300px,86vw);padding:20px 14px;animation:.22s cubic-bezier(.22,1,.36,1) slideIn;position:fixed;top:0;bottom:0;left:0}@keyframes slideIn{0%{opacity:.35;transform:translate(-18px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.drawer-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:18px;padding-bottom:16px;display:flex}.drawer-head strong{font-family:var(--display);letter-spacing:-.03em;font-size:17px;font-weight:800;display:block}.drawer-head span{color:var(--muted);font-size:12px;font-weight:600}.drawer-nav{gap:4px;display:grid}.drawer-nav button{text-align:left;color:var(--txt);background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:12px;font-size:14px;font-weight:700;transition:background .15s,border-color .15s;display:flex}.drawer-nav button .ico{text-align:center;opacity:.9;width:1.4em}.drawer-nav button.on{background:#4f7cff2e;border-color:#4f7cff59}.main{z-index:1;animation:.38s ease-out rise;position:relative}.main h2{font-family:var(--display);letter-spacing:-.03em;margin:0 0 4px;font-size:20px;font-weight:800}.main h3{font-family:var(--sans);letter-spacing:0;margin:0 0 8px;font-size:15px;font-weight:700}.section-head{margin-bottom:14px}.section-head .hint{margin:0}.hero{margin-bottom:4px;padding:8px 2px 4px;position:relative;overflow:hidden}.hero-brand{align-items:center;gap:10px;margin-bottom:10px;display:flex}.hero-brand .logo{border-radius:11px;width:36px;height:36px}.hero-title{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:18px;font-weight:800;line-height:1.1}.hero-title .vpn{letter-spacing:.02em;text-transform:none;color:var(--accent2);margin-left:.28em;font-size:.78em;font-weight:700;display:inline}.hero-tag{color:var(--muted);max-width:28em;margin:0 0 12px;font-size:13px;font-weight:600;line-height:1.4}.hero-meta{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.chip{border:1px solid var(--line);background:#0c1222bf;border-radius:10px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:700;display:inline-flex}.chip.good{color:#b8ffe0;border-color:#3cffb059}.chip.warn{color:#ffe9a8;border-color:#ffd24a66}.chip .dot{background:currentColor;border-radius:50%;width:7px;height:7px}.cta-row{gap:8px;display:grid}.stats{border-top:1px solid var(--line);gap:0;margin-top:8px;display:grid}.stats .row{border-bottom:1px solid #5a6eaa2e;margin:0;padding:12px 0}.stats .row:last-child{border-bottom:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:12px;padding:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:12px;padding:14px}.row{justify-content:space-between;gap:10px;margin:8px 0;font-size:14px;display:flex}.row-stack{gap:8px;margin-bottom:10px;display:grid}.btn-link{border:1px solid var(--line);width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.thread{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 80%, transparent);border-radius:12px;gap:8px;padding:10px 12px;display:grid}.thread .msg{border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);gap:2px;padding-bottom:8px;display:grid}.thread .msg:last-of-type{border-bottom:0;padding-bottom:0}.row span:first-child{color:var(--muted);font-weight:600}.row strong.bad{color:var(--bad)}.cfg-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.cfg-head h3{margin:0}.badge{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;border-radius:8px;padding:4px 8px;font-size:11px;font-weight:700}.badge.wg{color:var(--accent2);border-color:#37d0ff59}.badge.xray{color:#c4b5ff;border-color:#b4a0ff59}.conf{white-space:pre-wrap;word-break:break-all;font-family:var(--mono);border:1px solid var(--line);background:#00000052;border-radius:12px;max-height:140px;padding:10px;font-size:11px;overflow:auto}.btn{color:#fff;cursor:pointer;background:linear-gradient(#4f7cff6b,#4f7cff47);border:1px solid #4f7cff8c;border-radius:12px;width:100%;margin-top:8px;padding:12px 14px;font-weight:700;transition:transform .12s,filter .15s}.btn:active{transform:scale(.985)}.btn.sm{flex:1;width:auto;margin-top:0;padding:10px 8px;font-size:13px}.btn.ghost{border-color:var(--line);color:var(--txt);background:0 0}.btn.danger{background:#ff5a5a29;border-color:#ff5a5a6b}.btn:disabled{opacity:.55}a.btn{text-align:center;text-decoration:none;display:block}.actions{gap:8px;margin-top:10px;display:flex}.actions.wrap{flex-wrap:wrap}.qrbox{text-align:center;margin:12px 0}.qr{border:1px solid var(--line);background:#fff;border-radius:14px;width:min(260px,100%);height:auto;padding:10px}.grid2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.lab{color:var(--muted);margin:12px 0 6px;font-size:12px;font-weight:700;display:block}input,textarea,select{border:1px solid var(--line);width:100%;color:var(--txt);background:#00000047;border-radius:12px;padding:11px 12px}.err,.ok{z-index:2;border-radius:12px;margin-bottom:12px;padding:11px 13px;font-size:13px;font-weight:700;animation:.25s ease-out rise;position:relative}.err{color:#ffd0d0;background:#ff3b3b24;border:1px solid #ff3b3b59}.ok{color:#c8ffe8;background:#3cffb01a;border:1px solid #3cffb052}.hint{color:var(--muted);font-size:13px;line-height:1.45}.paybox{border-top:1px dashed var(--line);margin-top:10px;padding-top:12px}.plan-price{font-family:var(--sans);letter-spacing:0;color:var(--txt);margin:2px 0 10px;font-size:15px;font-weight:700}@media (prefers-reduced-motion:reduce){.topbar,.main,.drawer,.scrim,.err,.ok{animation:none}}
