:root { color-scheme:dark; --account-bg:#090a0f; --account-panel:#13141e; --account-line:rgba(255,255,255,.1); --account-muted:#a0a5ba; --account-accent:#9575ff; --account-cyan:#5ce9de; }
.hidden { display:none!important; }
.auth-page,.admin-page { margin:0; min-height:100vh; color:#f5f6ff; background:radial-gradient(ellipse at 80% 10%,#251a49 0,transparent 45%),radial-gradient(ellipse at 0 90%,#102c35 0,transparent 40%),var(--account-bg); font:16px/1.8 Tahoma,system-ui,sans-serif; }
.auth-page *,.admin-page *,.account-dialog * { box-sizing:border-box; }
.auth-page button,.auth-page input,.admin-page button,.admin-page input,.admin-page select,.account-dialog button,.account-dialog input { font:inherit; }
.auth-layout { max-width:1180px; min-height:100vh; padding:50px 28px; margin:auto; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:90px; }
.auth-brand { display:flex; align-items:center; gap:15px; color:white; text-decoration:none; margin-bottom:65px; font:bold 29px/1.2 system-ui,sans-serif; }
.auth-brand img { width:62px; height:62px; object-fit:contain; }
.auth-brand small { display:block; font-size:11px; letter-spacing:3px; color:#ac9dda; margin-top:6px; }
.account-eyebrow { color:var(--account-cyan); font-size:14px; }
.auth-story h1 { margin:20px 0; font-size:clamp(38px,5vw,65px); line-height:1.4; letter-spacing:-2px; }
.auth-story h1 em { font-style:normal; background:linear-gradient(90deg,#c08aff,#5ce9de); background-clip:text; -webkit-text-fill-color:transparent; }
.auth-story>p { max-width:520px; color:var(--account-muted); }
.auth-perks { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
.auth-perks span { padding:8px 12px; border:1px solid var(--account-line); border-radius:10px; font-size:13px; background:#ffffff04; }
.auth-story .auth-fine { font-size:12px; color:#858ba4; }
.auth-card { padding:35px; background:linear-gradient(145deg,#1b1c2bdf,#10111bea); border:1px solid #ffffff12; border-radius:27px; box-shadow:0 32px 90px #0005; }
.auth-tabs { display:flex; padding:5px; border:1px solid var(--account-line); border-radius:13px; background:#080910; }
.auth-tabs button { flex:1; padding:10px; border:0; border-radius:9px; background:transparent; color:var(--account-muted); cursor:pointer; }
.auth-tabs .selected { background:#2e2549; color:white; }
.auth-card h2 { font-size:26px; margin:28px 0 5px; }.auth-card>p { color:var(--account-muted); font-size:14px; margin:0 0 25px; }
.auth-card label,.account-dialog label { display:grid; gap:7px; margin-top:16px; font-size:14px; color:#c7cade; }
.auth-card input,.account-dialog input,.admin-search { width:100%; padding:13px 14px; border:1px solid #ffffff20; border-radius:11px; background:#0c0d15; color:white; outline:none; }
.auth-card input:focus,.account-dialog input:focus { border-color:#9779ff; box-shadow:0 0 0 3px #9779ff15; }
.auth-message { color:#ff9caa; font-size:13px; min-height:24px; margin:14px 0; }
.account-primary { display:block; width:100%; border:0; border-radius:12px; padding:13px 18px; color:#100b23; background:linear-gradient(100deg,#a787ff,#71e0e7); font-weight:bold!important; cursor:pointer; }
.account-primary:disabled { opacity:.6; cursor:wait; }
.auth-info { border-top:1px solid var(--account-line); padding-top:20px; margin-top:24px; }.auth-info strong { font-size:13px; color:#d2c6ee; }.auth-info p { color:#858ba4; font-size:12px; margin:6px 0; }
.auth-contact { display:block; color:var(--account-cyan); text-decoration:none; font-size:12px; margin-top:22px; text-align:center; }
.account-dialog { max-width:490px; width:calc(100% - 30px); max-height:90vh; padding:26px; overflow:auto; border:1px solid #ffffff22; border-radius:22px; background:#141521; color:#f5f6ff; font:14px/1.8 Tahoma,system-ui,sans-serif; }
.account-dialog::backdrop { background:#0009; backdrop-filter:blur(5px); }.account-dialog h2 { margin:0; }.account-dialog p { color:#a3aac3; }.account-dialog .account-actions { display:flex; gap:8px; margin-top:20px; }.account-dialog .account-actions button { flex:1; }
.account-secondary,.admin-page button { border:1px solid #ffffff22; border-radius:10px; background:#ffffff07; color:white; padding:9px 13px; cursor:pointer; }
.account-plan { padding:16px; border:1px solid #9a74ff44; border-radius:13px; background:#9a74ff0b; margin:20px 0; }.account-plan strong { color:#c1a9ff; }.account-plan meter { width:100%; height:13px; accent-color:#9575ff; }
.admin-page .admin-shell { max-width:1280px; margin:auto; padding:35px 25px; }.admin-head { display:flex; justify-content:space-between; gap:20px; align-items:center; }.admin-head h1 { margin:0; font-size:30px; }.admin-head p { color:var(--account-muted); margin-top:4px; }
.admin-head a { color:var(--account-cyan); text-decoration:none; }.admin-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; margin:30px 0; }.admin-stat { padding:20px; border:1px solid var(--account-line); border-radius:17px; background:#ffffff04; }.admin-stat strong { display:block; font-size:30px; }.admin-stat span { font-size:13px; color:var(--account-muted); }
.admin-toolbar { display:flex; gap:12px; margin-bottom:20px; }.admin-search { max-width:460px; }.admin-table-wrap { overflow:auto; border:1px solid var(--account-line); border-radius:17px; background:#0b0c16b8; }.admin-page table { width:100%; border-collapse:collapse; text-align:right; white-space:nowrap; }.admin-page th { color:#969eb9; font-size:12px; padding:16px; background:#ffffff04; }.admin-page td { padding:16px; border-top:1px solid #ffffff09; font-size:13px; }.admin-page td small { display:block; color:#7b829c; }.admin-page select { background:#1c1b30; color:white; border:1px solid #ffffff22; padding:8px; border-radius:9px; }.admin-page button:disabled { opacity:.45; cursor:default; }.admin-message { min-height:30px; color:#e6b2a7; font-size:14px; }.admin-plans { display:flex; gap:15px; flex-wrap:wrap; margin-top:25px; }.admin-plan { display:flex; align-items:center; gap:10px; border:1px solid #ffffff14; border-radius:14px; padding:15px; }.admin-plan input { width:65px; background:#0c0d15; border:1px solid #ffffff22; color:white; border-radius:7px; padding:7px; }.admin-help { color:#8d96b1; font-size:13px; }
@media(max-width:800px) { .auth-layout { grid-template-columns:1fr; gap:25px; padding:25px 18px; }.auth-brand { margin-bottom:25px; }.auth-story h1 { font-size:36px; }.auth-story h1 br { display:none; }.auth-story>p,.auth-perks,.auth-fine { display:none; }.auth-card { padding:24px; }.admin-head { align-items:flex-start; }.admin-summary { gap:8px; }.admin-stat { padding:12px; }.admin-stat strong { font-size:24px; } }
