.auth-container{max-width:400px;margin:2rem auto;padding:1rem 2rem 2rem;background:#2a2b2c;border:1px solid var(--text-secondary);border-radius:8px;box-shadow:0 2px 8px #0000001a;opacity:.95}.auth-link{text-align:center;margin-top:0;margin-bottom:1.5rem;font-size:.75rem}.auth-link a{color:var(--primary-color);text-decoration:none;transition:color .2s ease}.auth-link a:hover{color:var(--text-main)}.auth-header{font-family:var(--font-family-sans);font-size:2rem;margin:0;text-align:center}.auth-subtitle{text-align:center;margin-bottom:2rem;font-style:italic;font-size:.875rem;color:var(--text-secondary);margin-top:0}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.auth-form label{font-weight:600;font-family:var(--font-family-sans);font-size:.875rem}.auth-form input{padding:.75rem;border:1px solid var(--text-secondary);border-radius:4px;font-size:1rem;background:var(--background-body);color:var(--text-main);transition:border-color .2s}.auth-form input:focus{outline:none;border-color:var(--primary-color)}.help-text{color:var(--text-secondary);font-size:.75rem}.error-message{color:#dc3545;font-size:.875rem;display:none}.error-message.show{display:block}.submit-btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;font-weight:600;font-size:1rem;cursor:pointer;transition:opacity .2s}.submit-btn:hover{opacity:.9}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.section-label{display:block;margin-bottom:.75rem}.checkbox-group{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.5rem}.checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-weight:400;cursor:pointer}.checkbox-label input[type=checkbox]{margin:0;width:auto;flex-shrink:0;margin-top:.125rem}.checkbox-text{font-size:.875rem;line-height:1.4}.header-with-help{position:relative;display:flex;justify-content:center;align-items:flex-start;margin-bottom:.5rem}.help-icon{position:absolute;top:0;right:0;color:var(--text-secondary);cursor:help;transition:color .2s ease}.help-icon:hover{color:var(--text-main)}.help-tooltip{position:absolute;top:0;left:calc(100% + 1rem);background:#f8f9fa;color:#333;border:1px solid #ddd;border-radius:8px;padding:1rem;font-size:.8rem;line-height:1.4;width:280px;box-shadow:0 4px 12px #00000026;z-index:1000;opacity:0;visibility:hidden;transform:translate(-8px);transition:all .2s ease;font-family:var(--font-family-sans)}.help-icon:hover .help-tooltip{opacity:1;visibility:visible;transform:translate(0)}.help-tooltip a{color:var(--primary-color);text-decoration:none;font-weight:500}.help-tooltip a:hover{text-decoration:underline}.auth-methods{display:flex;flex-direction:column;gap:1rem}.auth-divider{display:flex;align-items:center;gap:1rem;margin:.5rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--text-secondary);opacity:.3}.auth-divider span{color:var(--text-secondary);font-size:.875rem;font-style:italic}.oauth-button{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border:1px solid var(--text-secondary);border-radius:4px;background:var(--background-body);color:var(--text-main);text-decoration:none;font-weight:500;font-size:.875rem;transition:all .2s ease;font-family:var(--font-family-sans)}.oauth-button:hover{background:#2a2b2c;border-color:var(--primary-color);box-shadow:0 1px 2px #0003}.oauth-button__icon{flex-shrink:0}.oauth-button__text{white-space:nowrap}.email-preferences{background:#2a2b2c80;padding:1rem;border-radius:4px;margin-bottom:.5rem}.expandable-form{width:100%}.expandable-form[open]{margin-top:.5rem}.expand-button{display:block;width:100%;padding:.75rem 1rem;border:1px solid var(--text-secondary);border-radius:4px;background:var(--background-body);color:var(--text-main);font-weight:500;font-size:.875rem;font-family:var(--font-family-sans);cursor:pointer;transition:all .2s ease;list-style:none;text-align:center}.expand-button::-webkit-details-marker{display:none}.expand-button:before{content:"▼ ";display:inline-block;transition:transform .2s ease;font-size:.7rem;margin-right:.25rem}.expandable-form[open] .expand-button:before{transform:rotate(-180deg)}.expand-button:hover{background:#2a2b2c;border-color:var(--primary-color)}.expandable-form .auth-form{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}
