/* UI/Pages/Auth/Style.css */
#auth { transition:opacity .5s var(--ease),visibility 0s linear 0s; }
#auth.gone { opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s var(--ease),visibility 0s linear .5s; }
.au-card { animation:au-in .8s var(--ease) both; }
@keyframes au-in { from{opacity:0;transform:translateY(16px) scale(.985)} to{opacity:1;transform:none} }

.au-hero {
    position:relative;overflow:hidden;padding:40px 32px;min-height:260px;
    background:
        radial-gradient(75% 70% at 100% 50%,rgba(255,255,255,.07),transparent 70%),
        radial-gradient(90% 78% at 40% 44%,#111,#030303 70%);
}
/* Singularity icon — same one as in the profile-style frame, partly cropped by the edge */
.au-hero::before {
    content:'';position:absolute;right:-92px;top:50%;width:270px;height:270px;
    transform:translateY(-50%) rotate(-12deg);
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='1' stop-color='%23737373'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='12' r='3.4' fill='url(%23g)'/%3E%3Cellipse cx='12' cy='12' rx='10' ry='4.2' transform='rotate(-28 12 12)' fill='none' stroke='url(%23g)' stroke-width='1.2'/%3E%3Ccircle cx='12' cy='12' r='8.6' fill='none' stroke='url(%23g)' stroke-width='1' opacity='.55'/%3E%3C/svg%3E") center/contain no-repeat;
    opacity:.34;pointer-events:none;
    animation:au-orbit 16s ease-in-out infinite alternate;
}
@keyframes au-orbit { from{transform:translateY(-50%) rotate(-14deg)} to{transform:translateY(-50%) rotate(6deg) scale(1.05)} }
.au-hero-text { position:relative;z-index:1;text-align:left; }

.au-brand {
    margin:0;font-family:'Syncopate','Unbounded','Inter',system-ui,sans-serif;font-weight:700;
    font-size:2.35rem;line-height:1;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;
    background:linear-gradient(180deg,#ffffff 15%,#d4d4d4 55%,#737373 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
    filter:drop-shadow(0 0 22px rgba(255,255,255,.08));
}
.au-rule {
    display:block;width:34px;height:2px;margin:18px 0 14px;border-radius:2px;
    background:linear-gradient(90deg,#ffffff,#737373);box-shadow:0 0 12px rgba(255,255,255,.25);
}
.au-tag { font-size:13px;line-height:1.6;color:#737373;max-width:200px;margin:0; }

.au-star {
    position:absolute;width:2px;height:2px;border-radius:50%;background:#e5e5e5;
    animation:au-tw var(--d,5s) ease-in-out infinite;opacity:.1;
}
@keyframes au-tw { 50%{opacity:var(--o,.6)} }
.au-err {
    display:none;margin-top:12px;padding:10px 12px;border-radius:12px;font-size:13px;color:#e5e5e5;
    background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.25);
}
.au-err.show { display:block;animation:au-in .4s var(--ease); }
.au-ok { color:#d4d4d4;background:rgba(229,229,229,.06);border-color:rgba(229,229,229,.18); }
.au-eye { position:absolute;right:5px;top:5px;bottom:5px;width:34px;display:flex;align-items:center;justify-content:center;border-radius:9px;color:#737373; }
.au-eye:hover,.au-eye:active { color:#e5e5e5;background:rgba(255,255,255,.05);transform:none !important; }
.au-eye svg,.au-eye:hover svg { transform:none !important; }
.au-link { color:#e5e5e5;text-decoration:underline;text-decoration-color:#404040;text-underline-offset:3px; }
.au-link:hover { text-decoration-color:#e5e5e5; }
.au-str { display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:7px; }
.au-str i { height:3px;border-radius:3px;background:#1a1a1a;transition:background .3s,transform .3s var(--ease); }
.au-str i.active { transform:scaleY(1.35); }
.au-spin { width:16px;height:16px;border-radius:50%;border:2px solid rgba(0,0,0,.25);border-top-color:#000;animation:orb-spin .7s linear infinite; }
.au-view { animation:au-in .42s var(--ease) both; }

@keyframes orb-spin { to{transform:rotate(360deg)} }
@media (max-width:767px) {
    .au-card { max-width:540px; }
    .au-hero { padding:18px 22px;min-height:0; }
    .au-hero::before { width:150px;height:150px;right:-44px; }
    .au-brand { font-size:1.45rem; }
    .au-rule { display:none; }
}
@media (prefers-reduced-motion: reduce) { .au-hero::before { animation:none; } }

/* есть сохранённая сессия: страница входа не показывается вообще (ни на миг до загрузки скриптов) */
html.has-session #auth { opacity:0;visibility:hidden;pointer-events:none;transition:none; }
