.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex;position:relative;overflow:hidden}.auth-silk-bg{z-index:0;position:fixed;inset:0}.auth-card{z-index:10;width:100%;max-width:440px;position:relative}.auth-card-inner{background:#fff;border:1px solid #0000000f;border-radius:1.5rem;padding:2.5rem 2rem;box-shadow:0 4px 6px -1px #0000000a,0 20px 40px -8px #008cfe14}.dark .auth-card-inner{background:#171717;border-color:#ffffff0f;box-shadow:0 4px 6px -1px #0000004d,0 20px 40px -8px #008cfe1f}.auth-brand{flex-direction:column;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.auth-brand-icon{border-radius:1rem;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;display:flex;overflow:hidden}.auth-brand-icon svg{color:#fff;width:1.75rem;height:1.75rem}.auth-brand h1{letter-spacing:-.02em;color:#111;font-size:1.5rem;font-weight:700}.dark .auth-brand h1{color:#f5f5f5}.auth-brand p{color:#6b7280;text-align:center;max-width:280px;font-size:.875rem}.dark .auth-brand p{color:#9ca3af}.auth-oauth-group{flex-direction:column;gap:.75rem;margin-bottom:1.75rem;display:flex}.auth-oauth-btn{cursor:pointer;color:#1f2937;background:#fff;border:1.5px solid #0000001a;border-radius:.875rem;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.auth-oauth-btn:hover{background:#f9fafb;border-color:#00000026;transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.auth-oauth-btn:active{transform:translateY(0)}.dark .auth-oauth-btn{color:#e5e7eb;background:#262626cc;border-color:#ffffff14}.dark .auth-oauth-btn:hover{background:#373737e6;border-color:#ffffff1f;box-shadow:0 4px 12px #0000004d}.auth-oauth-btn svg{flex-shrink:0;width:1.25rem;height:1.25rem}.auth-oauth-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-divider{align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.auth-divider-line{background:#00000014;flex:1;height:1px}.dark .auth-divider-line{background:#ffffff14}.auth-divider span{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-field{flex-direction:column;gap:.375rem;display:flex}.auth-label{color:#374151;letter-spacing:.01em;font-size:.8rem;font-weight:600}.dark .auth-label{color:#d1d5db}.auth-input{color:#111827;background:#f9fafbcc;border:1.5px solid #0000001a;border-radius:.75rem;outline:none;width:100%;padding:.7rem .875rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:#9ca3af}.auth-input:focus{border-color:#008cfe;box-shadow:0 0 0 3px #008cfe1f}.dark .auth-input{color:#f3f4f6;background:#26262699;border-color:#ffffff14}.dark .auth-input:focus{border-color:#008cfe;box-shadow:0 0 0 3px #008cfe2e}.dark .auth-input::placeholder{color:#6b7280}.auth-submit{cursor:pointer;color:#fff;background:#008cfe;border:none;border-radius:.875rem;width:100%;margin-top:.25rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #008cfe4d,inset 0 1px #ffffff26}.auth-submit:hover{background:#0077e0;transform:translateY(-1px);box-shadow:0 4px 16px #008cfe66,inset 0 1px #ffffff26}.auth-submit:active{transform:translateY(0)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-error{color:#dc2626;background:#ef444414;border:1px solid #ef444426;border-radius:.75rem;align-items:center;gap:.5rem;padding:.625rem .875rem;font-size:.8rem;display:flex}.dark .auth-error{color:#f87171;background:#ef44441a;border-color:#ef444433}.auth-footer{text-align:center;color:#6b7280;margin-top:1.5rem;font-size:.85rem}.dark .auth-footer{color:#9ca3af}.auth-footer a,.auth-footer button{color:#008cfe;cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:none}.auth-footer a:hover,.auth-footer button:hover{color:#0077e0;text-decoration:underline}.dark .auth-footer a,.dark .auth-footer button{color:#3d9bff}.dark .auth-footer a:hover,.dark .auth-footer button:hover{color:#6eb4ff}.auth-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:1.125rem;height:1.125rem;animation:.6s linear infinite auth-spin}.auth-spinner--dark{border-color:#008cfe #00000026 #00000026}.dark .auth-spinner--dark{border-color:#008cfe #ffffff1a #ffffff1a}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}.username-picker-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.username-check{align-items:center;gap:.375rem;min-height:1.125rem;margin-top:.25rem;font-size:.75rem;display:flex}.username-check--available{color:#22c55e}.username-check--taken{color:#ef4444}.username-check--checking{color:#9ca3af}.username-rules{color:#9ca3af;margin-top:.125rem;font-size:.7rem}.user-menu{position:relative}.user-menu-btn{cursor:pointer;color:#374151;background:#fffc;border:1.5px solid #00000014;border-radius:9999px;align-items:center;gap:.5rem;padding:.375rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.user-menu-btn:hover{background:#f9fafbf2;border-color:#0000001f}.dark .user-menu-btn{color:#e5e7eb;background:#262626cc;border-color:#ffffff14}.dark .user-menu-btn:hover{background:#323232e6;border-color:#ffffff1f}.user-menu-avatar{color:#fff;background:linear-gradient(135deg,#6366f1,#a855f7);border-radius:9999px;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.75rem;font-weight:700;display:flex}.user-menu-dropdown{z-index:50;background:#fff;border:1px solid #00000014;border-radius:.875rem;min-width:200px;padding:.5rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 36px #0000001a}.dark .user-menu-dropdown{background:#1a1a1a;border-color:#ffffff14;box-shadow:0 12px 36px #0006}.user-menu-item{cursor:pointer;color:#374151;background:0 0;border:none;border-radius:.5rem;align-items:center;gap:.625rem;width:100%;padding:.5rem .75rem;font-size:.85rem;transition:background .15s;display:flex}.user-menu-item:hover{background:#0000000a}.dark .user-menu-item{color:#e5e7eb}.dark .user-menu-item:hover{background:#ffffff0f}.user-menu-item--danger{color:#ef4444}.dark .user-menu-item--danger{color:#f87171}.user-menu-item svg{flex-shrink:0;width:1rem;height:1rem}.user-menu-divider{background:#0000000f;height:1px;margin:.375rem 0}.dark .user-menu-divider{background:#ffffff0f}.user-menu-info{padding:.5rem .75rem}.user-menu-info-name{color:#111827;font-size:.85rem;font-weight:600}.dark .user-menu-info-name{color:#f3f4f6}.user-menu-info-email{color:#6b7280;word-break:break-all;margin-top:.125rem;font-size:.75rem}.dark .user-menu-info-email{color:#9ca3af}.dashboard-page{min-height:100vh;padding:8rem 1rem 4rem;position:relative}.dashboard-container{max-width:720px;margin:0 auto}.dashboard-welcome{margin-bottom:2rem}.dashboard-welcome h1{letter-spacing:-.02em;color:#111;font-size:2rem;font-weight:700}.dark .dashboard-welcome h1{color:#f5f5f5}.dashboard-welcome p{color:#6b7280;margin-top:.5rem;font-size:1rem}.dark .dashboard-welcome p{color:#9ca3af}.dashboard-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffc;border:1px solid #0000000f;border-radius:1.25rem;padding:2rem;box-shadow:0 4px 16px #0000000a}.dark .dashboard-card{background:#171717cc;border-color:#ffffff0f;box-shadow:0 4px 16px #0003}.dashboard-stat{align-items:center;gap:1rem;padding:1rem 0;display:flex}.dashboard-stat:not(:last-child){border-bottom:1px solid #0000000f}.dark .dashboard-stat:not(:last-child){border-color:#ffffff0f}.dashboard-stat-icon{border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.dashboard-stat-icon svg{width:1.25rem;height:1.25rem}.dashboard-stat-label{color:#6b7280;font-size:.8rem;font-weight:500}.dark .dashboard-stat-label{color:#9ca3af}.dashboard-stat-value{color:#111;font-size:1.1rem;font-weight:600}.dark .dashboard-stat-value{color:#f5f5f5}
