.markdown-body{font-family:var(--font-body);color:var(--text-primary);font-size:15px;line-height:1.7}.markdown-body h1,.markdown-body h2,.markdown-body h3{font-family:var(--font-heading);color:var(--text-primary);margin-top:24px;margin-bottom:16px;font-weight:600}.markdown-body h1{border-bottom:1px solid var(--border-glass);padding-bottom:8px;font-size:1.8em}.markdown-body h2{color:var(--accent-gold);font-size:1.4em}.markdown-body h3{font-size:1.2em}.markdown-body p{margin-bottom:16px}.markdown-body strong{color:var(--blockquote-color);font-weight:600}.markdown-body ul,.markdown-body ol{margin-bottom:16px;padding-left:24px}.markdown-body li{margin-bottom:8px}.markdown-body table{border-collapse:separate;border-spacing:0;border-radius:var(--radius-sm);border:1px solid var(--border-glass);width:100%;margin-bottom:24px;overflow:hidden}.markdown-body th{background:var(--table-th-bg);text-align:left;color:var(--blockquote-color);border-bottom:1px solid var(--border-glass);padding:14px 16px;font-weight:600}.markdown-body td{border-bottom:1px solid var(--table-td-border);vertical-align:top;padding:14px 16px}.markdown-body tr:last-child td{border-bottom:none}.markdown-body tr:not(:first-child):hover{background:var(--table-tr-hover)}.markdown-body blockquote{border-left:4px solid var(--accent-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary);background:#3b82f60d;margin-bottom:16px;padding:12px 20px}
.auth-page{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex;position:relative;overflow:hidden}.auth-bg-gradient{z-index:-2;background:radial-gradient(at 20%,#3b82f626,#0000 50%),radial-gradient(at 80% 20%,#d4af3714,#0000 40%),radial-gradient(at 50% 80%,#3b82f60d,#0000 50%);background-color:var(--bg-base);position:fixed;inset:0}.auth-bg-grid{z-index:-1;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 70%);mask-image:radial-gradient(#000 30%,#0000 70%)}[data-theme=light] .auth-bg-grid{background-image:linear-gradient(#00000008 1px,#0000 1px),linear-gradient(90deg,#00000008 1px,#0000 1px)}.auth-logo{font-family:var(--font-heading);align-items:center;gap:12px;margin-bottom:32px;font-size:28px;font-weight:700;animation:.6s fadeInDown;display:flex}.auth-logo i{color:var(--accent-gold);font-size:34px}.auth-logo .highlight{color:var(--accent-primary)}.auth-card{width:100%;max-width:440px;padding:40px 36px;animation:.6s fadeInUp}.auth-title{font-family:var(--font-heading);text-align:center;margin-bottom:8px;font-size:24px;font-weight:700}.auth-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:28px;font-size:14px;line-height:1.5}.auth-google-btn{border-radius:var(--radius-md);background:var(--input-bg);border:1px solid var(--border-glass);width:100%;color:var(--text-primary);font-size:15px;font-weight:500;font-family:var(--font-body);transition:var(--transition);cursor:pointer;justify-content:center;align-items:center;gap:12px;padding:14px 20px;display:flex}.auth-google-btn:hover:not(:disabled){background:var(--bg-glass-hover);border-color:#ffffff26;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.auth-google-btn:disabled{opacity:.6;cursor:not-allowed}.google-icon{flex-shrink:0}.auth-divider{align-items:center;gap:16px;margin:24px 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-glass);flex:1;height:1px}.auth-divider span{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:13px}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-field{flex-direction:column;gap:8px;display:flex}.auth-field label{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.auth-field label i{font-size:15px}.auth-field input{background:var(--input-bg);border:1px solid var(--border-glass);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-body);transition:var(--transition);outline:none;padding:13px 16px;font-size:15px}.auth-field input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f626}.auth-field input:disabled{opacity:.6;cursor:not-allowed}.auth-field input::placeholder{color:var(--text-muted)}.auth-password-wrapper{position:relative}.auth-password-wrapper input{padding-right:48px}.auth-password-toggle{color:var(--text-muted);transition:var(--transition);cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.auth-password-toggle:hover{color:var(--text-primary)}.auth-message{border-radius:var(--radius-sm);align-items:flex-start;gap:10px;padding:12px 16px;font-size:13px;line-height:1.5;animation:.3s fadeIn;display:flex}.auth-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef444440}[data-theme=light] .auth-error{color:#dc2626}.auth-error i{color:var(--danger);flex-shrink:0;margin-top:1px;font-size:18px}.auth-success{color:#6ee7b7;background:#10b9811a;border:1px solid #10b98140}[data-theme=light] .auth-success{color:#059669}.auth-success i{color:var(--success);flex-shrink:0;margin-top:1px;font-size:18px}.auth-submit-btn{margin-top:4px;padding:14px;font-size:15px}.auth-switch{text-align:center;border-top:1px solid var(--border-glass);margin-top:20px;padding-top:20px}.auth-switch p{color:var(--text-secondary);font-size:14px}.auth-switch button{color:var(--accent-primary);cursor:pointer;transition:var(--transition);text-underline-offset:3px;background:0 0;border:none;font-size:14px;font-weight:600;text-decoration:underline}.auth-switch button:hover{color:#60a5fa}.auth-guest-link{margin-top:24px;animation:.8s fadeIn}.auth-guest-link a{color:var(--text-muted);transition:var(--transition);align-items:center;gap:6px;font-size:14px;display:flex}.auth-guest-link a:hover{color:var(--text-secondary)}.auth-loading{min-height:100vh;color:var(--accent-primary);justify-content:center;align-items:center;display:flex}.ri-spin{animation:1s linear infinite riSpin}@keyframes riSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:480px){.auth-card{padding:28px 20px}.auth-title{font-size:20px}.auth-logo{font-size:24px}.auth-logo i{font-size:28px}}
