*{box-sizing:border-box}body{margin:0;background:#fff;color:#2a1340;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.auth{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}
.brand{text-align:center;margin-bottom:20px}.logo{width:220px;max-width:70vw;height:auto}
.tagline{margin:6px 0 0;font-weight:600;color:#5b4473;letter-spacing:.3px}
.card{width:100%;max-width:400px;background:#fff;border:1px solid #ece6f3;border-radius:16px;padding:24px;box-shadow:0 8px 30px rgba(42,19,64,.08)}
h1{font-size:1.35rem;margin:0 0 16px}label{display:block;font-size:.85rem;font-weight:600;margin:12px 0 6px}
input[type=text],input[type=email],input[type=password]{width:100%;padding:13px 14px;font-size:1rem;border:1px solid #d9cfe6;border-radius:10px;color:#2a1340;background:#faf8fc}
input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.15);background:#fff}
.row{display:flex;gap:10px}.row>div{flex:1}
.btn{display:block;width:100%;margin-top:20px;padding:14px;border:0;border-radius:10px;font-size:1rem;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(90deg,#7c3aed,#ff6b5a)}
.btn:hover{filter:brightness(1.05)}.alt{text-align:center;margin-top:18px;font-size:.95rem}
a{color:#7c3aed;font-weight:600;text-decoration:none}
.error{background:#fff1f0;color:#b42318;border:1px solid #fecdca;border-radius:10px;padding:10px 12px;margin-bottom:8px;font-size:.9rem}
.topbar{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#fff;border-bottom:1px solid #ece6f3}
.topbar img{height:40px}.main{max-width:640px;margin:0 auto;padding:20px 16px}
.feed{margin-top:16px;border:2px dashed #e3d9ef;border-radius:16px;padding:40px 20px;text-align:center;color:#8a7a9c}
