:root{color-scheme:dark;--bg:#0b1422;--navy:#0f1e36;--panel:#162846;--line:rgba(185,207,228,.17);--text:#f1f5f9;--muted:#a8b7c8;--green:#10b981;--cyan:#06b6d4;--gold:#f59e0b;--red:#fb7185;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);color:var(--text)}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.hidden{display:none!important}.eyebrow{margin:0;color:#8fdabf;font-size:.72rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.auth-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);min-height:100vh}.auth-brand{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,6vw,100px);background:radial-gradient(circle at 16% 20%,rgba(16,185,129,.16),transparent 38%),linear-gradient(135deg,#0d223a,#0b1422 70%)}.brand-identity{display:flex;align-items:center;gap:25px}.brand-symbol{width:118px;height:118px;flex:0 0 auto;overflow:hidden;border:1px solid rgba(245,158,11,.5);border-radius:29px;box-shadow:0 20px 60px rgba(0,0,0,.3)}.brand-symbol img,.mobile-symbol img,.admin-symbol img{width:100%;height:100%;object-fit:cover}.brand-identity h1{margin:10px 0 0;font-size:clamp(2rem,4vw,4rem);line-height:1.04;letter-spacing:-.06em}.brand-identity h1 span{color:#eac069}.brand-copy{max-width:560px;margin:32px 0 0;color:#c0ccda;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.6}.brand-preview{width:min(100%,520px);margin-top:54px;padding:22px;border:1px solid rgba(116,198,182,.2);border-radius:20px;background:rgba(22,40,70,.56);box-shadow:0 24px 70px rgba(0,0,0,.16)}.preview-top{display:flex;justify-content:space-between;gap:10px;padding-bottom:17px;border-bottom:1px solid var(--line)}.preview-top span{color:#75d8b8;font-size:.7rem;font-weight:800;letter-spacing:.13em}.preview-top strong{font-size:.88rem}.preview-row{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);font-size:.88rem}.preview-row:last-child{border-bottom:0;padding-bottom:0}.preview-row span:first-child{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.06);color:#dfe9f3}.preview-row span:nth-child(2){color:var(--muted)}.gain{color:#72e0ad}.auth-panel{display:flex;align-items:center;justify-content:center;padding:36px;background:#111d30}.panel-inner{width:min(100%,410px)}.panel-inner h2{margin:13px 0 0;font-size:2.35rem;letter-spacing:-.05em}.form-intro{margin:12px 0 30px;color:var(--muted);line-height:1.55}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;margin-bottom:26px;border:1px solid var(--line);border-radius:11px;background:#0d1828}.auth-tabs button{min-height:43px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:700}.auth-tabs button.active{background:#223752;color:var(--text)}#auth-form{display:grid;gap:10px}#auth-form label{margin-top:7px;font-size:.85rem;font-weight:700}#auth-form input{width:100%;min-height:50px;padding:0 14px;border:1px solid #40536a;border-radius:10px;background:#0b1728;color:var(--text);font-size:1rem}#auth-form input::placeholder{color:#8091a5}.primary-button{min-height:52px;margin-top:15px;border:0;border-radius:10px;background:var(--green);color:#042a20;font-weight:800;font-size:1rem}.primary-button:hover{background:#2bd1a0}.text-button{display:block;margin:20px 0 0;padding:4px 0;border:0;background:transparent;color:#83e4c6;font-size:.88rem;font-weight:650}.feedback{min-height:1.5em;margin:14px 0 0;color:#9cebd0;font-size:.88rem;line-height:1.5}.feedback.error{color:#ffa4b2}.privacy-note{margin-top:42px;color:#8395aa;font-size:.78rem}.mobile-identity{display:none}.admin-page{min-height:100vh;background:linear-gradient(180deg,#0f1e36,#0b1422 360px)}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px;padding:12px clamp(20px,4vw,60px);border-bottom:1px solid var(--line)}.admin-brand{display:flex;align-items:center;gap:14px}.admin-symbol{width:58px;height:58px;overflow:hidden;border:1px solid rgba(245,158,11,.35);border-radius:15px}.admin-brand>div:last-child{display:grid;gap:3px}.admin-brand strong{font-size:1.12rem}.admin-brand span{color:var(--muted);font-size:.76rem}.admin-header-actions{display:flex;align-items:center;gap:20px}.admin-header-actions span{color:var(--muted);font-size:.85rem}.outline-button{min-height:40px;padding:0 14px;border:1px solid #57708a;border-radius:9px;background:transparent;color:var(--text);font-weight:650}.outline-button:hover{background:rgba(255,255,255,.06)}.admin-main{max-width:1280px;margin:auto;padding:45px 24px 80px}.admin-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.admin-heading h1{margin:10px 0 5px;font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:-.04em}.admin-heading p:last-child{margin:0;color:var(--muted)}.admin-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#142237}.admin-card-top{display:flex;justify-content:space-between;gap:12px;padding:21px 24px;border-bottom:1px solid var(--line)}.admin-card-top span{color:var(--muted);font-size:.85rem}.users-list{display:grid}.user-row{display:grid;grid-template-columns:minmax(170px,1.5fr) minmax(105px,.75fr) minmax(150px,1fr) minmax(260px,1.8fr);align-items:center;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line)}.user-row:last-child{border-bottom:0}.user-identity{display:grid;gap:4px;min-width:0}.user-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}.user-identity small,.user-expiry small{color:var(--muted);font-size:.75rem}.user-expiry{display:grid;gap:4px;font-size:.82rem}.status{width:max-content;padding:6px 10px;border-radius:20px;font-size:.73rem;font-weight:800}.status.active{background:rgba(16,185,129,.14);color:#84e8bd}.status.pending,.status.expired{background:rgba(245,158,11,.14);color:#f6cd81}.status.blocked{background:rgba(251,113,133,.14);color:#ffa7b4}.user-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.user-actions input{width:66px;min-height:38px;padding:0 8px;border:1px solid #52677d;border-radius:8px;background:#0b1728;color:var(--text);text-align:center}.user-actions button{min-height:38px;padding:0 10px;border:1px solid #52677d;border-radius:8px;background:#20334b;color:var(--text);font-size:.78rem;font-weight:700}.user-actions .grant-button{border-color:rgba(16,185,129,.35);background:rgba(16,185,129,.16);color:#a1efc9}.user-actions .block-button{border-color:rgba(251,113,133,.3);color:#ffadba}.empty-state{padding:28px;color:var(--muted)}
@media(max-width:920px){.auth-layout{grid-template-columns:1fr}.auth-brand{display:none}.auth-panel{min-height:100vh}.mobile-identity{display:flex;align-items:center;gap:12px;margin-bottom:34px}.mobile-symbol{width:62px;height:62px;overflow:hidden;border-radius:15px}.mobile-identity strong{font-size:1.25rem}.user-row{grid-template-columns:minmax(150px,1fr) auto;gap:11px}.user-expiry,.user-actions{grid-column:1/-1}.user-actions{justify-content:flex-start}}@media(max-width:560px){.auth-panel{align-items:flex-start;padding:32px 22px}.panel-inner h2{font-size:2rem}.admin-header{align-items:flex-start}.admin-header-actions{flex-direction:column;align-items:flex-end;gap:8px}.admin-header-actions span{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-main{padding:32px 16px 60px}.admin-heading{align-items:flex-start}.admin-card-top,.user-row{padding-left:16px;padding-right:16px}.user-actions input{width:56px}}
.auth-tabs a{display:grid;place-items:center;min-height:43px;border-radius:8px;color:var(--muted);text-decoration:none;font-weight:700}.auth-tabs a.active{background:#223752;color:var(--text)}#auth-form input{font:inherit}.admin-main h1{font-size:2.2rem;letter-spacing:-.04em}.admin-main>p:not(.eyebrow){color:var(--muted);line-height:1.6}
.brand-symbol,.mobile-symbol,.admin-symbol{position:relative}.brand-symbol img,.mobile-symbol img,.admin-symbol img{position:absolute;left:50%;top:50%;width:280%;height:auto;max-width:none;transform:translate(-50%,-50%)}
.password-field{display:block;position:relative;width:100%}
#auth-form .password-field input{padding-right:62px;background-color:#0b1728;color:#f1f5f9;caret-color:#f1f5f9;color-scheme:dark}
#auth-form input:-webkit-autofill{-webkit-text-fill-color:#f1f5f9;box-shadow:0 0 0 1000px #0b1728 inset}
#auth-form .password-toggle{position:absolute;top:50%;right:7px;z-index:1;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:8px;background:#173b3b;color:#70e5ba;transform:translateY(-50%)}
#auth-form .password-toggle:hover{background:#22534d;color:#bbf8df}
#auth-form .password-toggle:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
