/* ═══ Link2Page · Auth screen ═══
   Split-panel signup/login.
   Load order matters — index.html loads css files in numeric order. */

#authPage{display:none}
#authPage .auth-wrap{max-width:940px;margin:0 auto;padding:6rem 5vw 5rem;position:relative}
#authPage .auth-close{position:absolute;top:1.4rem;right:5vw}
#authPage .auth-split{display:grid;grid-template-columns:1fr 1.05fr;background:var(--surface);border:1px solid var(--border2);border-radius:24px;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.45)}
html[data-theme="light"] #authPage .auth-split{box-shadow:0 40px 120px rgba(15,23,42,.16)}
#authPage .auth-brand{position:relative;padding:2.6rem 2.2rem;background:linear-gradient(160deg,#171236 0%,#241a54 55%,#171236 100%);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
#authPage .auth-brand::before{content:'';position:absolute;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(108,99,255,.4),transparent 70%);top:-120px;right:-120px;filter:blur(10px)}
#authPage .auth-brand::after{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:22px 22px;opacity:.5}
#authPage .ab-logo{position:relative;z-index:1;font-family:var(--fd);font-weight:800;font-size:24px;color:#fff;letter-spacing:-.5px}
#authPage .ab-logo span{color:#a78bfa}
#authPage .ab-mid{position:relative;z-index:1}
#authPage .ab-title{font-family:var(--fd);font-size:24px;font-weight:800;color:#fff;line-height:1.25;letter-spacing:-.5px;margin-bottom:1.4rem}
#authPage .ab-point{display:flex;align-items:flex-start;gap:11px;color:rgba(255,255,255,.82);font-size:13.5px;line-height:1.55;margin-bottom:12px}
#authPage .ab-point .ic{stroke:#a78bfa;flex:0 0 17px;width:17px;height:17px;margin-top:1px}
#authPage .ab-quote{position:relative;z-index:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px 16px;color:rgba(255,255,255,.85);font-size:12.5px;line-height:1.6}
#authPage .ab-quote b{display:block;margin-top:8px;color:#fff;font-weight:600;font-size:12px}
#authPage .auth-card{padding:2.4rem 2.2rem;background:var(--surface)}
@media(max-width:820px){#authPage .auth-split{grid-template-columns:1fr}#authPage .auth-brand{display:none}#authPage .auth-wrap{max-width:480px}}
#authPage .pf-input{background:var(--bg2);border:1px solid var(--border2);border-radius:12px;padding:13px 15px;transition:border-color .2s,box-shadow .2s}
#authPage .pf-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(108,99,255,.18);outline:none}
#authPage h2{font-family:var(--fd);font-size:27px;font-weight:800;letter-spacing:-.5px;margin-bottom:.4rem}
#authPage .auth-sub{color:var(--text2);font-size:14px;margin-bottom:1.6rem;line-height:1.6}
#authPage label{display:block;font-size:13px;color:var(--text2);margin:0 0 6px 2px}
#authPage .pf-input{margin-bottom:1rem}
#authPage .auth-terms{display:flex;align-items:flex-start;gap:10px;margin:.2rem 0 1.3rem;font-size:13px;color:var(--text2);line-height:1.5;cursor:pointer}
#authPage .auth-check{flex:0 0 20px;width:20px;height:20px;border:1.5px solid var(--border2);border-radius:6px;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:all .15s;font-size:13px;color:#fff}
#authPage .auth-check.on{background:var(--accent);border-color:var(--accent)}
#authPage .auth-terms a{color:var(--accent2);text-decoration:underline}
#authPage .auth-btn{width:100%;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border:none;padding:14px;border-radius:12px;font-size:15px;font-weight:600;font-family:var(--fb);cursor:pointer;transition:all .2s;box-shadow:0 10px 30px rgba(108,99,255,.35)}
#authPage .auth-btn:hover{transform:translateY(-1px);box-shadow:0 0 50px rgba(108,99,255,.45)}
#authPage .auth-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
#authPage .auth-toggle{text-align:center;margin-top:1.4rem;font-size:14px;color:var(--text2)}
#authPage .auth-toggle button{background:none;border:none;color:var(--accent2);font-family:var(--fb);font-size:14px;cursor:pointer;text-decoration:underline}
#authPage .auth-msg{font-size:13px;border-radius:10px;padding:10px 14px;margin-bottom:1rem;display:none;line-height:1.5}
#authPage .auth-msg.err{display:block;background:rgba(244,63,94,.12);border:1px solid rgba(244,63,94,.3);color:#fda4af}
.auth-msg.ok{display:block !important;background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.3);color:#6ee7b7}
#authPage .auth-confirm{display:none;text-align:center}
#authPage .auth-confirm .ac-icon{font-size:42px;margin-bottom:1rem}
