/* WR VPN Orbit UI — lightweight overrides for the server-rendered portal. */

:root{
  --content:1320px;
  --radius:24px;
  --panel:rgba(5,19,38,.84);
  --panel-soft:rgba(8,27,49,.76);
  --line:rgba(178,222,255,.18);
  --line-strong:rgba(180,229,255,.34);
  --shadow:0 28px 80px rgba(0,9,25,.28);
}
:root[data-theme="void"]{
  --panel:rgba(5,7,16,.9);
  --panel-soft:rgba(10,13,26,.84);
  --line:rgba(175,198,255,.13);
  --line-strong:rgba(177,204,255,.25);
}
body::before,body::after{transition:filter .7s ease,opacity .7s ease,background .7s ease}
:root[data-theme="void"] body::before{filter:none;transform:none;opacity:.46}

/* Consistent desktop centering. */
.topbar,.shell,footer{width:min(var(--content),calc(100% - 48px))}
.topbar{min-height:72px;margin-top:18px;padding:10px 18px;border-radius:20px;background:rgba(4,17,34,.7);box-shadow:0 16px 55px rgba(0,8,24,.22)}
.shell{padding-top:14px;z-index:3}
.hero{min-height:360px;padding:26px 34px 30px;align-items:flex-end}
.hero::before{height:200px;opacity:.7}
.hero-copy{width:min(780px,72%);padding:18px 8px 22px;border:0;border-radius:0;background:transparent;box-shadow:none;animation:heroArrival .72s cubic-bezier(.2,.78,.2,1) both;isolation:isolate}
.hero-copy::before{content:"";position:absolute;z-index:-1;inset:-22% -7% -20% -9%;background:radial-gradient(ellipse at 24% 52%,rgba(1,13,30,.74),rgba(3,21,44,.46) 45%,transparent 73%);filter:blur(22px);pointer-events:none}
.hero h1.hero-words{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:0;font-size:clamp(50px,5.35vw,78px);line-height:.89;letter-spacing:-.068em;cursor:pointer;user-select:none;overflow:visible}
.hero-words span{display:block;width:max-content;max-width:100%;position:relative;padding:3px 28px 5px 31px;opacity:0;transform:translateY(24px);background-size:160% 100%;background-position:0 50%;-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 8px 24px rgba(0,10,27,.5));transition:background-position .7s ease,text-shadow .7s ease}
.hero-words span::before{content:"";position:absolute;left:7px;top:50%;width:7px;height:7px;border-radius:2px;background:linear-gradient(135deg,#8cecff,#aa8eff 65%,#ffb6d5);box-shadow:0 0 15px rgba(103,225,255,.72);transform:translateY(-50%) rotate(45deg)}
.hero-words span::after{content:"";position:absolute;left:25px;right:-54px;bottom:3px;height:1px;background:linear-gradient(90deg,rgba(116,228,255,.5),rgba(170,136,255,.2),transparent);transform-origin:left;transition:transform .7s ease,opacity .7s ease;opacity:.62}
.hero-words span:nth-child(2){margin-left:clamp(18px,4.5vw,62px)}.hero-words span:nth-child(3){margin-left:clamp(6px,1.6vw,23px)}
.hero-words [data-hero-word="speed"]{background-image:linear-gradient(102deg,#f7fdff 2%,#74e7ff 48%,#7d9dff 96%)}
.hero-words [data-hero-word="simple"]{background-image:linear-gradient(102deg,#fff7da 0%,#a5efff 50%,#8ca8ff 100%)}
.hero-words [data-hero-word="freedom"]{background-image:linear-gradient(102deg,#a8f5ff 0%,#b99cff 52%,#ffabd0 100%)}
.hero-words.words-ready span{animation:heroWordEnter .76s cubic-bezier(.18,.82,.2,1) var(--word-delay,0ms) both}
.hero-words:hover span{background-position:100% 50%;text-shadow:0 0 30px rgba(132,221,255,.13)}.hero-words:hover span::after{transform:scaleX(.78);opacity:1}
.tabs{justify-content:center;gap:5px;padding:6px 12px;overflow:visible;background:rgba(3,15,31,.9)}
.mobile-more-panel{display:contents}
.mobile-more-toggle{display:none}
.tab{padding-inline:19px;transition:color .2s ease,background .2s ease,transform .2s ease}
.tab:hover{transform:translateY(-1px)}
.tab.active{background:linear-gradient(135deg,rgba(121,224,255,.16),rgba(128,133,255,.14));box-shadow:inset 0 0 0 1px rgba(182,229,255,.08)}
.panel,.status-card,.metric,.plan,.steps article{background:linear-gradient(145deg,var(--panel),rgba(4,12,25,.88));box-shadow:var(--shadow)}
.grid.two{grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr)}
.account-card{min-width:0}

/* Short opening ident. Its fully opaque paint prevents the page-sized sky
   black hole from leaking through before the portal is revealed. */
.portal-intro{position:fixed;inset:0;z-index:500;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at 50% 48%,#0b2542 0,#030b19 43%,#01040b 76%);animation:introExit 1.6s cubic-bezier(.45,0,.25,1) forwards;overflow:hidden;will-change:opacity,filter}
.intro-lockup{display:flex;align-items:center;justify-content:center;gap:18px;animation:introLockup 1.15s cubic-bezier(.2,.8,.2,1) both}
.intro-mark{width:84px;height:54px;position:relative;display:grid;place-items:center;isolation:isolate;background:url("/brand/blackhole.png?v=20260811-brand-v1") center/cover no-repeat;border-radius:50%;filter:contrast(1.15) saturate(1.1) drop-shadow(0 0 12px rgba(103,210,255,.32))}
.intro-mark::before{display:none}
.intro-mark i{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fff 0,#9bf4ff 24%,#518dff 58%,#6940bc 100%);box-shadow:0 0 10px #71e6ff;animation:introPlanetOrbit 2.9s linear infinite}
.intro-wordmark strong{font-size:30px;letter-spacing:.22em;text-indent:.22em}.intro-wordmark small{margin-top:6px;color:var(--cyan);font-size:9px;font-weight:900;letter-spacing:.34em;text-indent:.34em}
.reveal-item{opacity:0;transform:translateY(18px) scale(.985);transition:opacity .58s ease var(--reveal-delay,0ms),transform .65s cubic-bezier(.2,.78,.2,1) var(--reveal-delay,0ms)}
.reveal-item.is-visible{opacity:1;transform:none}
@keyframes heroArrival{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@keyframes heroWordEnter{0%{opacity:0;transform:translateY(24px);filter:blur(8px)}100%{opacity:1;transform:none;filter:drop-shadow(0 7px 22px rgba(0,10,27,.38))}}
@keyframes introLockup{0%{opacity:0;transform:translateY(12px)}28%,78%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-5px)}}
@keyframes introPlanetOrbit{from{transform:rotate(0deg) translateX(37px) rotate(0deg) scale(.72);opacity:.45}45%,62%{opacity:1}to{transform:rotate(360deg) translateX(37px) rotate(-360deg) scale(.72);opacity:.45}}
@keyframes introExit{0%,66%{opacity:1;filter:blur(0);visibility:visible}100%{opacity:0;filter:blur(18px);visibility:hidden}}

/* Living lens mark: no rectangular sheen and no zoom loop. */
.black-hole-logo{--hole-size:50px;filter:drop-shadow(0 0 13px rgba(123,151,255,.3))}
.brand .black-hole-logo{width:78px;height:50px;margin-left:-9px;margin-right:-4px;overflow:visible}
.wr-hole-art{width:100%;height:100%;display:block;position:relative;overflow:visible;border-radius:50%;isolation:isolate}
.wr-hole-art img{width:100%;height:100%;display:block;position:relative;z-index:2;object-fit:cover;border-radius:50%;mix-blend-mode:screen;filter:contrast(1.14) saturate(1.08);transition:filter .45s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.wr-hole-glow{position:absolute;z-index:1;inset:17% 4%;border-radius:50%;background:radial-gradient(ellipse,rgba(91,222,255,.26),rgba(119,102,255,.13) 42%,transparent 72%);filter:blur(7px);animation:lensGlow 4.8s ease-in-out infinite}
.wr-hole-particle{position:absolute;z-index:3;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:#e8fdff;box-shadow:0 0 8px #71eaff;transform-origin:0 0;animation:logoParticleOrbit 5.8s linear infinite}
.wr-hole-particle.particle-b{width:2px;height:2px;background:#ffc5e2;box-shadow:0 0 7px #a98bff;animation-duration:8.4s;animation-direction:reverse;animation-delay:-2s}
.brand:hover .wr-hole-art img{filter:contrast(1.18) saturate(1.18) brightness(1.08);transform:rotate(-1.5deg)}
@keyframes lensGlow{0%,100%{opacity:.42;filter:blur(7px)}50%{opacity:.82;filter:blur(10px)}}
@keyframes logoParticleOrbit{from{transform:rotate(0deg) translateX(34px) scale(.65);opacity:.25}35%,65%{opacity:1}to{transform:rotate(360deg) translateX(34px) scale(.65);opacity:.25}}
.black-hole-logo .hole-core,.black-hole-logo .hole-disc,.black-hole-logo .hole-matter{display:none!important}

/* Calm sun/moon toggle. Theme itself cross-fades; there is no page-sized ripple. */
.void-transition{display:none!important}
.void-toggle{min-width:44px;width:44px;height:44px;justify-content:center;padding:7px;overflow:hidden}
.theme-switch-icon{width:25px;height:25px;position:relative;display:block;flex:0 0 auto}
.theme-switch-icon::before,.theme-switch-icon::after{content:"";position:absolute;inset:5px;border-radius:50%;transition:transform .62s cubic-bezier(.2,.8,.2,1),opacity .35s ease,box-shadow .62s ease}
.theme-switch-icon::before{background:#ffd777;box-shadow:0 -9px 0 -6px #ffd777,0 9px 0 -6px #ffd777,9px 0 0 -6px #ffd777,-9px 0 0 -6px #ffd777,6px 6px 0 -6px #ffd777,-6px -6px 0 -6px #ffd777,6px -6px 0 -6px #ffd777,-6px 6px 0 -6px #ffd777,0 0 13px rgba(255,211,112,.38)}
.theme-switch-icon::after{background:#d8e5ff;box-shadow:5px -3px 0 1px #26304a,0 0 12px rgba(143,174,255,.4);transform:translate(13px,-9px) scale(.25);opacity:0}
:root[data-theme="void"] .theme-switch-icon::before{transform:translate(-12px,9px) scale(.3);opacity:0}
:root[data-theme="void"] .theme-switch-icon::after{transform:none;opacity:1}
.theme-warping .theme-switch-icon{animation:toggleTurn .68s cubic-bezier(.2,.8,.2,1)}
@keyframes toggleTurn{50%{transform:rotate(24deg) scale(.9)}}

/* Telegram plane. */
.telegram-button{background:linear-gradient(145deg,#38a9e9,#1679c9);border-color:rgba(136,218,255,.5);box-shadow:0 9px 25px rgba(20,137,213,.25)}
.telegram-button svg,.telegram-mark svg{width:21px;height:21px;fill:#fff;display:block}
.telegram-mark{background:linear-gradient(145deg,#38a9e9,#1679c9)!important;color:white!important}

/* Responsive light, not constant motion. */
.button{position:relative;overflow:hidden;isolation:isolate}
.button::after{content:"";position:absolute;inset:-45% -30%;z-index:-1;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.24) 49%,transparent 60%);transform:translateX(-78%);transition:transform .65s ease}
.button:hover::after{transform:translateX(78%)}
.button:active{transform:translateY(0) scale(.985)}
.freedom-card{position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.freedom-card::after{content:"";position:absolute;width:150px;height:150px;right:-82px;top:-88px;border-radius:50%;background:radial-gradient(circle,rgba(104,225,255,.18),transparent 68%);opacity:.6;transition:transform .5s ease,opacity .4s ease}
.freedom-card:hover{transform:translateY(-4px);border-color:rgba(112,225,255,.35);box-shadow:0 22px 58px rgba(0,12,32,.34)}
.freedom-card:hover::after{transform:scale(1.25);opacity:1}
.freedom-card>span{animation:qualityPulse 4.6s ease-in-out infinite}.quality-price>span{animation-delay:.5s}.quality-devices>span{animation-delay:1s}
@keyframes qualityPulse{0%,100%{box-shadow:0 0 0 rgba(103,236,255,0)}50%{box-shadow:0 0 22px rgba(103,236,255,.2)}}

/* Custom config selector. */
.config-dock{overflow:visible;position:relative;z-index:90;background:linear-gradient(125deg,rgba(3,20,40,.92),rgba(8,34,58,.85))}
.config-select-wrap{justify-content:flex-end;min-width:min(480px,52vw)}
.select-label{font-size:12px;color:var(--muted);white-space:nowrap}
.config-select{width:min(370px,100%);position:relative}
.config-select-button{width:100%;min-height:48px;padding:11px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text);background:rgba(1,12,26,.86);border:1px solid var(--line-strong);border-radius:14px;cursor:pointer;text-align:left}
.config-select-button i{width:9px;height:9px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translateY(-2px);transition:transform .25s ease}
.config-select[data-open="true"] .config-select-button i{transform:rotate(225deg) translate(-2px,-2px)}
.config-select-menu{position:absolute;top:calc(100% + 8px);right:0;width:100%;max-height:min(430px,60vh);overflow:auto;padding:7px;border:1px solid var(--line-strong);border-radius:16px;background:rgba(3,13,28,.99);box-shadow:0 22px 70px rgba(0,4,15,.65);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:140}
.config-select[data-open="true"] .config-select-menu{opacity:1;visibility:visible;transform:none}
.config-select-menu button{width:100%;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;color:var(--text);background:transparent;border:0;border-radius:11px;cursor:pointer;text-align:left}
.config-select-menu button:hover,.config-select-menu button[aria-selected="true"]{background:rgba(105,211,255,.1)}
.config-select-menu b,.config-select-menu small{display:block}.config-select-menu small{color:var(--green);margin-top:2px}.config-select-menu i{color:var(--cyan);font-style:normal;opacity:0}.config-select-menu button[aria-selected="true"] i{opacity:1}

/* Tariff gems match the familiar Telegram catalogue. */
.plans{gap:18px}
.plan{min-height:286px;padding:27px;display:flex;flex-direction:column;isolation:isolate;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease}
.plan::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(113,231,255,.08),transparent 38%,rgba(128,115,255,.06));opacity:0;transition:opacity .28s ease}
.plan:hover{transform:translateY(-3px);border-color:rgba(115,220,255,.38);box-shadow:0 24px 65px rgba(1,10,28,.38)}
.plan:hover::after{opacity:1}
.plan.featured{background:linear-gradient(155deg,rgba(7,43,63,.94),rgba(9,19,43,.94));box-shadow:0 24px 80px rgba(58,182,255,.16)}
.plan-gems{min-height:34px;position:relative;z-index:1;display:flex;align-items:center;letter-spacing:-5px;font-size:25px;filter:drop-shadow(0 0 12px rgba(89,211,255,.32));animation:gemFloat 4.8s ease-in-out infinite}.plan:nth-child(2) .plan-gems{animation-delay:.25s}.plan:nth-child(3) .plan-gems{animation-delay:.5s}.plan:nth-child(4) .plan-gems{animation-delay:.75s}.plan h3{margin:12px 0 2px;position:relative;z-index:1}.plan .duration,.plan .price,.plan button{position:relative;z-index:1}.plan button{margin-top:auto}
@keyframes gemFloat{0%,100%{transform:translateY(0);filter:drop-shadow(0 0 9px rgba(89,211,255,.25))}50%{transform:translateY(-2px);filter:drop-shadow(0 0 16px rgba(89,211,255,.48))}}
.terms-consent{max-width:720px;margin:22px auto 0;padding:14px 17px;display:flex;align-items:flex-start;gap:11px;border:1px solid var(--line);border-radius:15px;background:rgba(3,16,32,.72);color:var(--muted);font-size:13px;transition:.2s}
.terms-consent input{width:18px;height:18px;accent-color:#67dfff;flex:0 0 auto}.terms-consent a,footer a{color:var(--cyan);text-decoration:none}.terms-consent.attention{border-color:var(--rose);box-shadow:0 0 0 3px rgba(255,105,143,.1)}

/* Referral dashboard and activity timeline. */
.referral-hero{display:grid;grid-template-columns:1fr minmax(360px,.8fr);gap:28px;align-items:center;background:linear-gradient(135deg,rgba(5,37,59,.92),rgba(12,18,43,.9));overflow:hidden;position:relative}
.referral-hero::after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(102,222,255,.16);border-radius:50%;right:-190px;top:-190px;box-shadow:0 0 80px rgba(104,106,255,.15)}
.referral-link{display:flex;gap:9px;position:relative;z-index:1}.referral-link code{min-width:0;flex:1;padding:13px;border-radius:13px;background:rgba(1,10,24,.8);border:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.referral-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.referral-stats article{padding:19px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--shadow)}.referral-stats small,.referral-stats span{display:block;color:var(--muted);font-size:11px}.referral-stats strong{display:block;font-size:25px;margin:3px 0}
.referral-grid{grid-template-columns:1fr 1fr}.data-list{display:grid;gap:8px;max-height:520px;overflow:auto}.data-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:11px;border:1px solid rgba(181,220,255,.1);border-radius:13px;background:rgba(255,255,255,.025)}.data-avatar{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:rgba(98,219,255,.11);color:var(--cyan);font-weight:900}.data-row b,.data-row small{display:block;overflow:hidden;text-overflow:ellipsis}.data-row small{color:var(--muted);font-size:11px}.data-row>strong{color:var(--green);font-size:13px}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--muted-2)}.status-dot.paid{background:var(--green);box-shadow:0 0 12px rgba(113,240,189,.6)}
.empty-state{padding:24px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}
.history-toolbar{padding:15px 18px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;color:var(--muted)}.history-toolbar b,.count-pill{min-width:30px;height:30px;padding:0 9px;display:grid;place-items:center;border-radius:999px;background:rgba(103,229,255,.12);color:var(--cyan)}
.activity-history{display:grid;gap:9px}.history-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px 19px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(135deg,var(--panel),rgba(4,12,25,.86));box-shadow:var(--shadow-soft)}.history-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:rgba(102,219,255,.11);color:var(--cyan);font-weight:900}.history-icon.payment{background:rgba(113,240,189,.1);color:var(--green)}.history-item p{margin:2px 0;color:var(--muted);font-size:12px}.history-meta{text-align:right}.history-meta strong,.history-meta small{display:block}.history-meta small{color:var(--muted);font-size:11px}

/* Human-friendly device management. */
.devices-panel{max-width:980px;margin:0 auto}.devices-summary{display:flex;align-items:center;justify-content:space-between;gap:20px}.devices-summary h3{margin:5px 0}.devices-summary p{margin:0}.device-meter{height:8px;margin:20px 0;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}.device-meter i{width:0;height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),#7d8fff);box-shadow:0 0 18px rgba(101,225,255,.4);transition:width .45s ease}.devices-list{display:grid;gap:9px}.device-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.device-row-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:rgba(102,220,255,.1);color:var(--cyan);font-size:23px}.device-row-copy b,.device-row-copy span,.device-row-copy small{display:block}.device-row-copy span{margin:2px 0;color:#dceaf7;font-size:12px}.device-row-copy small{color:var(--muted);font-size:11px}.device-row-actions{display:flex;align-items:center;gap:7px}.device-info-button{width:37px;height:37px;border:1px solid rgba(111,225,255,.32);border-radius:50%;background:rgba(85,205,255,.09);color:var(--cyan);font:900 17px/1 Georgia,serif;cursor:pointer;transition:.2s}.device-info-button:hover{transform:translateY(-1px);background:rgba(85,205,255,.18)}.device-slot-hint{margin:14px 0 0;color:var(--muted);font-size:11px}.device-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;background:rgba(0,5,15,.72);backdrop-filter:blur(10px)}.device-modal.hidden{display:none}.device-modal-card{width:min(570px,100%);max-height:calc(100svh - 40px);overflow:auto;position:relative;padding:29px}.device-modal-close{position:absolute;right:15px;top:13px;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.05);color:var(--text);font-size:23px;cursor:pointer}.device-modal-card h2{margin:8px 0 20px}.device-name-form{padding:14px;border:1px solid rgba(105,224,255,.2);border-radius:14px;background:rgba(81,200,255,.06)}.device-name-form label{display:block;margin-bottom:7px;color:var(--cyan);font-size:11px;font-weight:900}.device-name-form>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.device-name-form input{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--field);color:var(--text);outline:none}.device-details{display:grid;gap:0;margin:18px 0 0}.device-details>div{display:grid;grid-template-columns:minmax(130px,.8fr) 1.2fr;gap:16px;padding:12px 2px;border-bottom:1px solid var(--line)}.device-details dt{color:var(--muted);font-size:12px}.device-details dd{margin:0;text-align:right;font-weight:800}.modal-open{overflow:hidden}

/* Instruction and news readability. */
.instruction-tab{color:#dffaff;border:1px solid rgba(103,230,255,.16)}
.instruction-tab:not(.active){background:rgba(80,205,255,.07)}
.instruction-tab::after{content:"ГАЙД";margin-left:7px;padding:3px 6px;border-radius:999px;background:rgba(103,230,255,.14);color:var(--cyan);font-size:8px;letter-spacing:.1em}
.install-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;padding:16px}
.install-links a{display:grid;gap:2px;min-width:0;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);color:var(--text);text-decoration:none;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.install-links a:hover{transform:translateY(-2px);border-color:rgba(103,230,255,.4);background:rgba(103,230,255,.08)}
.install-links b{font-size:14px}.install-links span{color:var(--muted);font-size:11px}
.device-note{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:14px 17px;border:1px solid rgba(103,230,255,.22);border-radius:14px;background:rgba(38,124,164,.13)}
.device-note p{margin:0;color:#dfeefa}.device-note b{white-space:nowrap}
#news.timeline{display:grid;gap:12px;padding:4px 0}
#news.timeline::before{display:none}
#news .news-item{margin:0;padding:21px 23px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(3,22,43,.9),rgba(4,13,29,.88));box-shadow:var(--shadow-soft)}
#news .news-item::before{display:none}
#news .news-meta{font-size:12px;color:#bcd0e3}
#news .news-item h3{margin:8px 0 7px;font-size:20px}
#news .news-item p{max-width:none;color:#e6f0f9;line-height:1.65}
#news .news-content{max-width:none;color:#e6f0f9;line-height:1.68;overflow-wrap:anywhere}
#news .news-content>:first-child{margin-top:0}
#news .news-content>:last-child{margin-bottom:0}
#news .news-content p{margin:0 0 13px}
#news .news-content h3,#news .news-content h4,#news .news-content h5{margin:20px 0 8px;color:#f5fbff;line-height:1.25}
#news .news-content h3{font-size:18px}
#news .news-content h4{font-size:16px}
#news .news-content h5{font-size:14px;color:#bfeffc;text-transform:uppercase;letter-spacing:.06em}
#news .news-content ul,#news .news-content ol{display:grid;gap:7px;margin:10px 0 16px;padding-left:24px}
#news .news-content li{padding-left:4px}
#news .news-content li::marker{color:var(--cyan);font-weight:900}
#news .news-content blockquote{margin:14px 0;padding:11px 15px;border-left:3px solid var(--cyan);border-radius:0 12px 12px 0;background:rgba(69,211,255,.08);color:#dff7ff}
#news .news-content a{color:#73e6ff;font-weight:750;text-decoration:none;border-bottom:1px solid rgba(115,230,255,.36)}
#news .news-content a:hover{border-color:currentColor}
#news .news-content strong{color:#fff;font-weight:900}
#news .news-content em{color:#d9d0ff}
#news .news-content u{text-decoration-color:rgba(103,230,255,.8);text-underline-offset:3px}
#news .news-content s{color:#94a7ba}
#news .news-content code{padding:2px 6px;border:1px solid rgba(103,230,255,.18);border-radius:6px;background:rgba(0,9,22,.58);color:#a9f2ff;font:600 .9em/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
#news .news-content pre{max-width:100%;margin:14px 0;padding:14px;overflow:auto;border:1px solid rgba(103,230,255,.16);border-radius:12px;background:rgba(0,7,18,.72)}
#news .news-content pre code{padding:0;border:0;background:none;white-space:pre}
#news .news-content hr{height:1px;margin:20px 0;border:0;background:linear-gradient(90deg,rgba(103,230,255,.65),rgba(139,109,255,.1))}
#news .news-spoiler{padding:0 3px;border-radius:4px;color:transparent;background:#c4d2df;cursor:pointer;transition:.2s ease}
#news .news-spoiler:hover,#news .news-spoiler:focus{color:inherit;background:rgba(103,230,255,.13);outline:none}
.admin-news-form .markdown-hint{color:#8fb0c9;font-size:11px;line-height:1.4}

/* Owner console. */
.admin-grid{grid-template-columns:.85fr 1.15fr;margin-bottom:18px}.admin-news-form label{display:grid;gap:6px;margin:12px 0;color:var(--muted);font-size:12px}.admin-news-form input,.admin-news-form textarea,.admin-reply textarea{width:100%;color:var(--text);background:var(--field);border:1px solid var(--line);border-radius:12px;padding:12px;outline:none}.admin-news-form textarea{min-height:125px;resize:vertical}.mini-button{border:1px solid var(--line);border-radius:9px;padding:7px 9px;color:var(--text);background:rgba(255,255,255,.05);cursor:pointer}.mini-button.danger{color:#ff9db5}.admin-tickets-panel{margin-top:18px}.admin-tickets{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-ticket{min-width:0;padding:17px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.025)}.admin-ticket header{display:flex;justify-content:space-between;gap:12px}.admin-ticket header small{display:block;color:var(--muted)}.admin-ticket>p{font-size:13px}.ticket-media{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:8px;margin:11px 0}.ticket-media a{display:grid;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:rgba(1,10,24,.64);color:var(--muted);text-decoration:none}.ticket-media img{width:100%;height:96px;display:block;object-fit:cover;background:rgba(255,255,255,.03)}.ticket-media span{padding:7px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.ticket-media-label{display:block;margin:11px 0 5px;color:var(--cyan);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.admin-reply{display:grid;gap:8px;margin-top:13px}.admin-reply textarea{min-height:72px;resize:vertical}.admin-reply-actions{display:flex;align-items:center;gap:8px}.admin-reply-actions .button{margin-left:auto}.admin-attachment{min-height:42px;padding:9px 12px;display:inline-flex;align-items:center;gap:7px;border:1px dashed var(--line-strong);border-radius:11px;color:var(--cyan);cursor:pointer;font-size:12px;font-weight:800}.admin-attachment:hover{background:rgba(91,212,255,.07)}.admin-attachment input{display:none}.admin-file-count{color:var(--muted);font-size:11px}.ticket-status{font-size:11px;color:var(--gold)}.ticket-status.answered{color:var(--green)}

/* Legal document. */
.legal-page::before{filter:none;transform:none;opacity:.46}.legal-page::after{background:linear-gradient(180deg,rgba(1,5,13,.48),rgba(1,4,12,.9))}.legal-topbar{position:relative;top:auto}.legal-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:70px 0 90px;position:relative;z-index:2}.legal-hero{max-width:900px;margin-bottom:36px}.legal-hero h1{font-size:clamp(48px,7vw,84px);line-height:.95;letter-spacing:-.055em;margin:15px 0}.legal-hero h1 em{font-style:normal;color:var(--cyan)}.legal-hero>p{max-width:740px;color:var(--muted);font-size:17px}.legal-warning{display:grid;gap:3px;margin-top:24px;padding:16px 18px;border:1px solid rgba(255,193,91,.3);border-radius:15px;background:rgba(101,63,9,.18)}.legal-warning span{color:var(--muted);font-size:12px}.legal-layout{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start}.legal-toc{position:sticky;top:20px;padding:18px;display:grid;gap:7px}.legal-toc b{margin-bottom:6px}.legal-toc a{color:var(--muted);text-decoration:none;font-size:12px;padding:5px 0}.legal-toc a:hover{color:var(--cyan)}.legal-document{padding:34px 40px}.legal-document section{scroll-margin-top:24px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--line)}.legal-document section:last-child{border:0;margin:0}.legal-document h2{font-size:24px;margin:0 0 12px}.legal-document p,.legal-document li{color:var(--muted);font-size:14px;line-height:1.72}.legal-document ol{padding-left:22px}.legal-document li+li{margin-top:7px}.operator-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.operator-fields div{padding:12px;border:1px solid var(--line);border-radius:12px}.operator-fields dt{color:var(--muted);font-size:11px}.operator-fields dd{margin:3px 0 0;font-weight:800}

@media(max-width:1100px){
  .topbar,.shell,footer{width:min(var(--content),calc(100% - 30px))}
  .hero-copy{width:min(670px,72%)}
  .tabs{justify-content:flex-start}
  .referral-hero{grid-template-columns:1fr}.referral-stats{grid-template-columns:1fr 1fr}.admin-tickets{grid-template-columns:1fr}
  .install-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:720px){
  body:not(.landing-page):not(.legal-page){padding-bottom:0}
  .topbar{width:calc(100vw - 20px)}.shell{width:100%;max-width:100%;padding-left:10px;padding-right:10px;padding-bottom:38px}.hero{min-height:390px;padding:176px 0 16px}.hero::before{height:170px}.hero-copy{width:100%;padding:17px 3px 20px}.hero-copy::before{inset:-25% -3%;filter:blur(18px)}.hero h1.hero-words{font-size:clamp(42px,12.8vw,54px);gap:4px}.hero-words span{padding-left:26px;padding-right:12px}.hero-words span::before{left:5px;width:6px;height:6px}.hero-words span::after{left:21px;right:-12px}.hero-words span:nth-child(2){margin-left:13px}.hero-words span:nth-child(3){margin-left:3px}
  .intro-lockup{gap:11px}.intro-mark{width:66px;height:44px}.intro-wordmark strong{font-size:23px}.intro-wordmark small{font-size:7px;letter-spacing:.27em;text-indent:.27em}
  .brand .black-hole-logo{width:66px;height:44px;margin-left:-8px;margin-right:-5px}
  .void-toggle{min-width:40px;width:40px;padding:6px}.theme-switch-icon{width:25px}
  .grid.two,.support-grid,.admin-grid,.referral-grid{grid-template-columns:minmax(0,1fr)!important}
  .panel,.account-card,.link-card,.support-grid>*{width:100%;min-width:0}
  .tabs{position:fixed;left:10px;right:10px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;transform:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));justify-content:stretch;gap:3px;padding:5px;overflow:visible;scroll-snap-type:none;border-radius:20px;z-index:1000;pointer-events:auto;touch-action:manipulation}
  .tabs>.tab{min-width:0;flex:none;padding:8px 2px;scroll-snap-align:none;font-size:9px;line-height:1.05;pointer-events:auto;touch-action:manipulation}
  .mobile-more-panel{display:none;position:absolute;left:0;right:0;top:auto;width:auto;bottom:calc(100% + 8px);grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:7px;border:1px solid var(--line-strong);border-radius:17px;background:rgba(2,13,28,.98);box-shadow:0 20px 60px rgba(0,5,18,.62)}
  .tabs.mobile-menu-open .mobile-more-panel{display:grid}
  .mobile-more-panel .tab{min-width:0;padding:11px 8px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:11px;font-size:11px}
  .mobile-more-toggle{display:grid}
  .config-select-wrap{display:block}.select-label{display:block;margin-bottom:6px}.config-select{width:100%}
  .plans{grid-template-columns:1fr}.plan{min-height:252px}
  .referral-link{display:grid}.referral-stats{grid-template-columns:1fr 1fr}.referral-grid,.admin-grid{grid-template-columns:1fr}.referral-hero{padding:20px}.referral-grid .panel{min-width:0}.data-list{max-height:none}
  .history-item{grid-template-columns:auto minmax(0,1fr)}.history-meta{grid-column:2;text-align:left}.history-meta strong,.history-meta small{display:inline;margin-right:8px}
  .devices-summary{display:grid}.devices-summary .button{width:100%}.device-row{grid-template-columns:auto minmax(0,1fr)}.device-row-actions{grid-column:2;justify-content:flex-start}.device-name-form>div{grid-template-columns:1fr}.device-name-form .button{width:100%}.device-details>div{grid-template-columns:1fr;gap:3px}.device-details dd{text-align:left}.device-modal{padding:10px}.device-modal-card{padding:24px 18px}
  .admin-reply-actions{align-items:stretch;flex-wrap:wrap}.admin-reply-actions .button{width:100%;margin:0}.admin-attachment{flex:1}.ticket-media{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-shell{width:calc(100% - 20px);padding:45px 0 80px}.legal-layout{grid-template-columns:1fr}.legal-toc{position:relative;top:auto;display:none}.legal-document{padding:22px 19px}.legal-document h2{font-size:21px}.operator-fields{grid-template-columns:1fr}.legal-hero h1{font-size:50px}
  .install-links{grid-template-columns:1fr 1fr;padding:12px}.device-note{display:block}.device-note b{display:block;margin-bottom:3px}
  .instruction-tab::after{display:none}
  footer{width:calc(100vw - 28px);margin:18px 14px 0;padding:18px 0 94px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
  .reveal-item{opacity:1!important;transform:none!important}.portal-intro{display:none!important}
}

.device-row-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Semantic orbit hero. */
.hero{overflow:visible!important}
.hero::before,.hero-copy::before{display:none!important}
.hero-copy{width:min(890px,76%);padding:14px 6px 16px;border:0;border-radius:0;background:transparent;box-shadow:none;animation:heroArrival .72s cubic-bezier(.2,.78,.2,1) both;isolation:isolate;overflow:visible}
.hero-copy::before{content:"";position:absolute;z-index:-1;inset:-18% -8% -18% -9%;background:radial-gradient(ellipse at 23% 51%,rgba(1,13,30,.78),rgba(3,21,44,.42) 48%,transparent 74%);filter:none;pointer-events:none}
.hero-manifesto{width:100%;min-height:252px;position:relative;isolation:isolate;user-select:none;overflow:visible}
.hero-a11y-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hero-constellation{height:252px;position:relative;overflow:visible}
.hero-constellation::before{content:"";position:absolute;left:5px;right:2%;top:50%;height:1px;background:linear-gradient(90deg,rgba(127,230,255,.34),rgba(146,137,255,.13) 54%,transparent);opacity:.62}
.hero-constellation::after{content:"";position:absolute;left:5px;top:calc(50% - 4px);width:9px;height:9px;border:1px solid rgba(159,241,255,.72);border-radius:50%;box-shadow:0 0 14px rgba(102,225,255,.38)}
.hero-concept{--slot-x:0px;--slot-y:0px;--slot-scale:1;--slot-opacity:1;--px:0px;--py:0px;position:absolute;left:0;top:0;z-index:var(--slot-z,1);display:block;width:max-content;max-width:none;min-width:max-content;padding:20px 58px 10px 21px;border:0;background:transparent;color:#eefaff;text-align:left;cursor:pointer;opacity:var(--slot-opacity);overflow:visible;transform:translate3d(calc(var(--slot-x) + var(--px)),calc(var(--slot-y) + var(--py)),0) scale(var(--slot-scale));transform-origin:left center;transition:transform .75s cubic-bezier(.18,.82,.2,1),opacity .5s ease,color .3s ease}
.hero-concept::before{content:"";position:absolute;left:3px;top:56%;width:8px;height:8px;border:1px solid currentColor;transform:translateY(-50%) rotate(45deg);opacity:.62}
.hero-concept-word{display:inline-block;position:relative;width:max-content;max-width:none;overflow:visible;font-size:clamp(58px,6vw,88px);line-height:.98;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;writing-mode:horizontal-tb;text-rendering:geometricPrecision}
.hero-word-value{display:inline-block;padding-inline-end:.24em;margin-inline-end:-.24em;white-space:nowrap;overflow:visible;letter-spacing:inherit}
.hero-word-cipher{position:absolute;left:0;top:0;z-index:2;display:inline-block;min-width:calc(100% + .24em);padding-inline-end:.24em;margin-inline-end:-.24em;white-space:nowrap;overflow:visible;opacity:0;pointer-events:none;font:inherit;line-height:inherit;letter-spacing:inherit;text-transform:inherit}
.hero-concept.is-decoding .hero-word-value{opacity:0}
.hero-concept.is-decoding .hero-word-cipher{opacity:1}
.hero-concept em{position:absolute;left:21px;top:5px;color:rgba(205,237,255,.72);font:800 9px/1 "SFMono-Regular",Consolas,monospace;letter-spacing:.12em;font-style:normal}
.hero-concept[data-rank="0"]{--slot-x:0px;--slot-y:62px;--slot-scale:1;--slot-opacity:1;--slot-z:3}
.hero-concept[data-rank="1"]{--slot-x:clamp(300px,33vw,510px);--slot-y:0px;--slot-scale:.48;--slot-opacity:.62;--slot-z:1}
.hero-concept[data-rank="2"]{--slot-x:clamp(190px,23vw,350px);--slot-y:176px;--slot-scale:.62;--slot-opacity:.76;--slot-z:2}
.concept-speed{color:#bff5ff}.concept-speed .hero-concept-word{font-family:"Arial Narrow","Roboto Condensed","Aptos Narrow",Arial,sans-serif;font-style:italic;font-weight:900;letter-spacing:-.065em;text-transform:uppercase}.concept-speed .hero-word-value,.concept-speed .hero-word-cipher{background:linear-gradient(100deg,#f7fdff,#6fe4ff 55%,#8498ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.concept-simple{color:#ffe9ad}.concept-simple .hero-concept-word{font-family:"Segoe UI Variable Display","Avenir Next","Helvetica Neue",Arial,sans-serif;font-weight:320;letter-spacing:-.045em}.concept-simple .hero-word-value,.concept-simple .hero-word-cipher{background:linear-gradient(100deg,#fff7d9,#b8f4ff 53%,#92a7ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.concept-freedom{color:#d3b7ff}.concept-freedom .hero-concept-word{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-style:italic;font-weight:700;letter-spacing:-.055em}.concept-freedom .hero-word-value,.concept-freedom .hero-word-cipher{background:linear-gradient(100deg,#bdf8ff,#c09cff 52%,#ffb0d5);-webkit-background-clip:text;background-clip:text;color:transparent}
.concept-speed[data-face="1"] .hero-concept-word{font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-style:normal;font-weight:900;letter-spacing:-.025em}
.concept-speed[data-face="2"] .hero-concept-word{font-family:"Trebuchet MS","Aptos Display","Segoe UI",sans-serif;font-style:italic;font-weight:800;letter-spacing:-.055em}
.concept-simple[data-face="1"] .hero-concept-word{font-family:"Century Gothic",Futura,"Avenir Next",sans-serif;font-weight:300;letter-spacing:-.055em}
.concept-simple[data-face="2"] .hero-concept-word{font-family:Optima,Candara,"Segoe UI",sans-serif;font-weight:400;letter-spacing:-.035em}
.concept-freedom[data-face="1"] .hero-concept-word{font-family:Baskerville,"Baskerville Old Face","Times New Roman",serif;font-style:italic;font-weight:600;letter-spacing:-.045em}
.concept-freedom[data-face="2"] .hero-concept-word{font-family:Didot,"Bodoni MT","Times New Roman",serif;font-style:normal;font-weight:700;letter-spacing:-.035em}
.hero-concept:focus-visible{outline:1px solid rgba(136,231,255,.55);outline-offset:5px;border-radius:6px}
.hero-manifesto.is-rotating .hero-constellation::before{animation:heroAxisSweep .78s cubic-bezier(.2,.8,.2,1)}
@keyframes heroAxisSweep{0%{opacity:.2;transform:scaleX(.12)}48%{opacity:1}100%{opacity:.62;transform:scaleX(1)}}
@media(max-width:1100px){.hero-copy{width:min(790px,76%)}}
@media(max-width:720px){
  .hero{min-height:430px!important;padding:176px 0 16px!important;overflow:visible!important}.hero::before{height:190px!important}.hero-copy{width:100%;padding:12px 2px 15px;overflow:visible}.hero-copy::before{inset:-18% -3%;background:radial-gradient(ellipse at 24% 54%,rgba(1,13,30,.8),rgba(3,21,44,.4) 52%,transparent 78%);filter:none}
  .hero-manifesto,.hero-constellation{min-height:230px;height:230px;overflow:visible}.hero-concept{padding:19px 45px 8px 17px;max-width:none}.hero-concept::before{left:2px;width:6px;height:6px}.hero-concept em{left:17px;top:4px;font-size:8px}.hero-concept-word{max-width:none;font-size:clamp(47px,13.5vw,60px);line-height:1}
  .hero-concept[data-rank="0"]{--slot-x:0px;--slot-y:66px;--slot-scale:1}.hero-concept[data-rank="1"]{--slot-x:45vw;--slot-y:0px;--slot-scale:.42}.hero-concept[data-rank="2"]{--slot-x:25vw;--slot-y:166px;--slot-scale:.54}
}
@media(prefers-reduced-motion:reduce){.hero-concept{transition:none!important}.hero-manifesto.is-rotating .hero-constellation::before{animation:none!important}}

