:root{--bg0: #070a0f;--bg1: #0c121b;--bg2: #121a26;--line: rgba(180, 210, 240, .1);--text: #e8eef7;--muted: #8b9bb0;--accent: #3ddea8;--accent-2: #5eb8ff;--danger: #ff6b7a;--ok: #3ddea8;--font: "Instrument Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg0);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}.shell{min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.5rem;position:relative;z-index:5;background:linear-gradient(180deg,rgba(7,10,15,.75),transparent)}.brand{font-weight:700;letter-spacing:-.03em;font-size:1.15rem}.brand span{color:var(--accent)}.nav-actions{display:flex;gap:.75rem;align-items:center}.btn{border:1px solid var(--line);background:transparent;color:var(--text);padding:.65rem 1rem;border-radius:.55rem;cursor:pointer;transition:.2s ease}.btn:hover{border-color:#3ddea873}.btn-primary{background:linear-gradient(135deg,#2fbf8f,#3ddea8 55%,#5eb8ff);color:#04120d;border:none;font-weight:600}.btn-primary:hover{filter:brightness(1.05)}.hero{position:relative;flex:1;display:grid;align-items:end;min-height:calc(100vh - 4.5rem);padding:2rem 1.5rem 4rem;overflow:hidden}.hero-media{display:none}.hero-photo{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(1.04);animation:hero-pan 28s ease-in-out infinite alternate}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(90deg,#070a0fc7,#070a0f73 48%,#070a0f33),linear-gradient(180deg,#070a0f40,#070a0f14 45%,#070a0fb8)}@keyframes hero-pan{0%{transform:scale(1.02) translateZ(0)}to{transform:scale(1.08) translate3d(-1.5%,-1%,0)}}.hero-bg,.hero-grid,.hero-orb{display:none}.hero-content{position:relative;z-index:2;max-width:40rem}.hero h1{margin:0 0 .85rem;font-size:clamp(2.4rem,7vw,4.4rem);line-height:.95;letter-spacing:-.045em}.hero p{margin:0 0 1.5rem;color:var(--muted);font-size:1.05rem;max-width:32rem;line-height:1.55}.hero-cta{display:flex;gap:.75rem;flex-wrap:wrap}.section{padding:4rem 1.5rem;border-top:1px solid var(--line);background:var(--bg1)}.section h2{margin:0 0 .5rem;font-size:1.75rem;letter-spacing:-.03em}.section>p{margin:0 0 1.75rem;color:var(--muted);max-width:36rem}.plans{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:800px}.plan{padding:1.25rem;border:1px solid var(--line);border-radius:.9rem;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.plan h3{margin:0 0 .35rem}.plan .price{font-family:var(--mono);color:var(--accent);font-size:1.4rem;margin:.75rem 0}.period-list{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.period-list li{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;padding-top:.55rem;border-top:1px solid var(--line);font-size:.92rem}.period-list em{font-style:normal;color:var(--accent);margin-left:.35rem}.period-list strong{text-align:right;font-family:var(--mono);font-weight:500}.tabs{display:flex;gap:.5rem;margin:1rem 0 .5rem;flex-wrap:wrap}.tab{border:1px solid var(--line);background:transparent;color:var(--muted);padding:.55rem .9rem;border-radius:.5rem;cursor:pointer}.tab.active{color:var(--text);border-color:#3ddea873;background:#3ddea814}.row-between{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:.75rem}.data-table{width:100%;border-collapse:collapse;font-size:.92rem}.data-table th,.data-table td{text-align:left;padding:.75rem .85rem;border-bottom:1px solid var(--line);white-space:nowrap}.data-table th{color:var(--muted);font-weight:500}.mono{font-family:var(--mono);font-size:.85rem}.select{background:var(--bg0);color:var(--text);border:1px solid var(--line);border-radius:.55rem;padding:.7rem .8rem;width:100%}.actions-row{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem}.conf-actions{flex-wrap:nowrap}.conf-actions .btn{white-space:nowrap;flex:0 0 auto}.btn-danger{border-color:#ff5c5c73;color:#ff8f8f}.btn-danger:hover{border-color:#ff5c5cbf;background:#ff5c5c14}.user-actions{flex-direction:row;flex-wrap:wrap}.user-actions .btn{white-space:nowrap;flex:0 0 auto}.check-row{display:flex;align-items:flex-start;gap:.55rem;margin:.65rem 0;color:var(--muted);font-size:.92rem;cursor:pointer}.check-row input{margin-top:.2rem}.auth-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(ellipse at top,rgba(61,222,168,.12),transparent 45%),var(--bg0)}.auth-card{width:min(100%,420px);padding:1.75rem;border:1px solid var(--line);border-radius:1rem;background:#0c121beb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-card h1{margin:0 0 .35rem;font-size:1.55rem;letter-spacing:-.03em}.auth-card .sub{margin:0 0 1.25rem;color:var(--muted)}.field{display:grid;gap:.35rem;margin-bottom:.9rem}.field label{font-size:.9rem;color:var(--muted)}.field input{background:var(--bg0);border:1px solid var(--line);border-radius:.55rem;color:var(--text);padding:.7rem .8rem}.field input:focus{outline:1px solid rgba(61,222,168,.55)}.error{color:var(--danger);font-size:.9rem;margin:0 0 .75rem}.dash{max-width:960px;margin:0 auto;padding:1.5rem}.dash-admin{max-width:min(1280px,calc(100% - 2rem));width:100%;padding:1.25rem 1.75rem 3rem}.dash-admin .tabs{gap:.35rem;margin:1.25rem 0 1rem;border-bottom:1px solid var(--line);padding-bottom:.65rem}.dash-admin .tab{padding:.7rem 1.15rem;font-size:.95rem}.dash-admin .table-wrap{width:100%}.dash-admin .data-table th,.dash-admin .data-table td{padding:.9rem 1rem}.admin-form{max-width:640px;width:100%}.admin-spoiler{margin:1.25rem auto 0;max-width:40rem;border:1px solid var(--line);border-radius:.9rem;padding:.35rem 1rem .85rem;background:#ffffff05}.admin-spoiler>summary{cursor:pointer;list-style:none;padding:.7rem 0;font-size:1.05rem;font-weight:600;text-align:center;-webkit-user-select:none;user-select:none;color:var(--text)}.admin-spoiler>summary::-webkit-details-marker{display:none}.admin-spoiler>summary:before{content:"▸ ";color:var(--accent, #3ddea8)}.admin-spoiler[open]>summary:before{content:"▾ "}.admin-spoiler-body{display:flex;justify-content:center;padding-bottom:.5rem}.admin-spoiler-body .admin-form{margin:0 auto}.dash-admin .plans{max-width:none;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.dash h1{margin:0 0 .35rem;letter-spacing:-.03em}.muted{color:var(--muted)}.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:.9rem 0;border-bottom:1px solid var(--line)}.status-dot{width:.55rem;height:.55rem;border-radius:50%;display:inline-block;margin-right:.4rem}.status-dot.online{background:var(--ok);box-shadow:0 0 10px #3ddea8b3}.status-dot.offline{background:var(--danger)}@media(max-width:640px){.hero{align-items:center}}.conf-box{width:100%;margin:.75rem 0;background:var(--bg0);color:#d7e0ea;border:1px solid var(--line);border-radius:.55rem;padding:.85rem;font-family:var(--mono);font-size:.8rem;line-height:1.35;resize:vertical;box-sizing:border-box}.conf-box-lg{min-height:18rem}.conf-panel{margin-top:.75rem}.conf-panel-grid{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:start}.conf-panel-main{min-width:0}.conf-panel-qr{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem;border:1px solid var(--line);border-radius:.75rem;background:#fff;min-width:12rem;text-align:center}.conf-panel-qr .btn{color:#0b1220;border-color:#0b1220;background:#fff}.conf-panel-qr .btn:hover{color:#0b1220;border-color:#0b1220;background:#f0f2f5}.conf-panel-qr .muted,.conf-panel-qr .conf-qr-hint{color:#4a5568}.conf-qr-hint{font-size:.8rem;text-align:center;max-width:14rem;margin:0}.qr-img{display:block;width:280px;height:280px;max-width:100%}.qr-thumb-btn{display:block;padding:0;margin:0;border:none;background:transparent;cursor:zoom-in;line-height:0}.btn-sm{padding:.35rem .75rem;font-size:.85rem}.btn-active{border-color:#3ddea88c;background:#3ddea81f}.server-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem;min-width:11rem}.migrate-panel{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;width:100%;max-width:16rem;padding:.45rem;border:1px solid var(--line);border-radius:.55rem;background:#ffffff08}.migrate-input{flex:1 1 7rem;min-width:0;padding:.35rem .55rem;border-radius:.4rem;border:1px solid var(--line);background:#00000040;color:var(--text);font-size:.85rem}.qr-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#05080ed1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.qr-lightbox-card{display:flex;flex-direction:column;align-items:center;gap:.85rem;padding:1.25rem;border-radius:1rem;background:#fff;border:1px solid var(--line);max-width:min(92vw,48rem)}.qr-img-lg{display:block;width:min(72vw,36rem);height:auto;aspect-ratio:1;max-height:72vh}.key-list{display:grid;gap:1.25rem;grid-template-columns:1fr;max-width:none}.key-card{padding:1.25rem;border:1px solid var(--line);border-radius:.9rem;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.key-label{font-weight:500;color:var(--muted)}.key-label-row{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0 .75rem}.key-label-row input{flex:1 1 12rem;min-width:10rem;border:1px solid var(--line);border-radius:.55rem;padding:.55rem .75rem;background:transparent;color:var(--text)}.conf-spoiler{margin-top:.5rem;border:1px solid var(--line);border-radius:.75rem;padding:.35rem .85rem .85rem;background:#ffffff05}.conf-spoiler>summary{cursor:pointer;list-style:none;padding:.55rem 0;color:var(--muted);-webkit-user-select:none;user-select:none}.conf-spoiler>summary::-webkit-details-marker{display:none}.conf-spoiler>summary:before{content:"▸ ";color:var(--accent, #3ddea8)}.conf-spoiler[open]>summary:before{content:"▾ "}.conf-spoiler-body{margin-top:.5rem}@media(max-width:900px){.conf-panel-grid{grid-template-columns:1fr}}
