.oauth-section-wrapper{box-sizing:border-box;width:100%;margin-top:20px}.oauth-divider{text-align:center;margin:20px 0;position:relative}.oauth-divider:before{content:"";background:#e2e8f0;height:1px;position:absolute;top:50%;left:0;right:0}.oauth-divider-text{background:var(--color-surface);color:var(--color-text-subtle);text-transform:lowercase;padding:0 14px;font-size:12.5px;font-weight:600;display:inline-block;position:relative}.oauth-buttons-grid{box-sizing:border-box;flex-direction:column;gap:10px;width:100%;display:flex}.btn-oauth{border-radius:var(--card-radius-mobile);cursor:pointer;box-sizing:border-box;-webkit-user-select:none;user-select:none;border:1px solid var(--color-border);background:var(--color-surface);width:100%;height:44px;color:var(--color-text-primary);justify-content:center;align-items:center;gap:12px;padding:0 16px;font-size:13.5px;font-weight:700;text-decoration:none;transition:all .15s;display:flex;box-shadow:0 1px 3px #0f172a0a}.btn-oauth:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.btn-oauth:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.oauth-icon{flex-shrink:0;width:20px;min-width:20px;height:20px;min-height:20px}.oauth-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.btn-oauth-google:hover{border-color:var(--color-border-dark);background:var(--color-surface-hover)}.btn-oauth-facebook:hover{color:#1877f2;background:#f0f6ff;border-color:#1877f2}.btn-oauth-microsoft:hover{border-color:var(--color-border-dark);background:var(--color-surface-hover)}.btn-oauth-apple:hover{background:var(--color-surface-hover);color:#000;border-color:#000}.auth-container{box-sizing:border-box;width:100%;max-width:100%;margin:12px 0 40px;padding:0}.auth-split-layout{box-sizing:border-box;grid-template-columns:1fr;align-items:start;gap:24px;width:100%;display:grid}@media (width>=900px){.auth-split-layout{grid-template-columns:minmax(420px,480px) 1fr;gap:32px}}.auth-card-column{width:100%;min-width:0}.auth-showcase-column{width:100%;min-width:0;display:none}@media (width>=900px){.auth-showcase-column{display:block}}.auth-showcase-sidebar{box-sizing:border-box;width:100%}.auth-showcase-card{background:linear-gradient(135deg, var(--color-surface,#fff) 0%, #f0fdfa99 100%);border:1px solid var(--color-border,#e2e8f0);box-sizing:border-box;border-radius:20px;padding:32px 28px;box-shadow:0 10px 30px #0f172a0a}.auth-showcase-badge{color:#0f766e;background:#ccfbf1;border-radius:9999px;align-items:center;gap:6px;margin-bottom:14px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.auth-showcase-title{color:var(--color-text-primary,#0f172a);letter-spacing:-.02em;margin:0 0 10px;font-size:22px;font-weight:800;line-height:1.3}.auth-showcase-desc{color:var(--color-text-muted,#64748b);margin:0 0 24px;font-size:14px;line-height:1.6}.auth-showcase-features{border-top:1px solid var(--color-border-light,#f1f5f9);flex-direction:column;gap:16px;margin-bottom:28px;padding-top:20px;display:flex}.auth-feature-item{align-items:flex-start;gap:14px;display:flex}.auth-feature-icon-box{color:#0f766e;background:#f0fdfa;border:1px solid #ccfbf1;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.auth-feature-content{flex:1;min-width:0}.auth-feature-title{color:var(--color-text-primary,#0f172a);margin:0 0 3px;font-size:14.5px;font-weight:700}.auth-feature-text{color:var(--color-text-secondary,#475569);margin:0;font-size:13px;line-height:1.5}.auth-showcase-footer{border-top:1px solid var(--color-border-light,#f1f5f9);padding-top:20px}.auth-showcase-footer-label{color:var(--color-text-muted,#64748b);margin-bottom:12px;font-size:12.5px;font-weight:500;display:block}.auth-showcase-apps{flex-wrap:wrap;gap:10px;display:flex}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);box-sizing:border-box;border-radius:20px;width:100%;padding:32px 24px;box-shadow:0 10px 30px #0f172a0f}.auth-header{text-align:center;margin-bottom:28px}.form-row-2col{grid-template-columns:1fr;gap:0;display:grid}@media (width>=420px){.form-row-2col{grid-template-columns:1fr 1fr;gap:12px}}.auth-title{color:var(--color-text-primary);margin:0 0 8px;font-size:24px;font-weight:800}.auth-subtitle{color:var(--color-text-muted);margin:0;font-size:14px}.agreement-group{margin-top:20px;margin-bottom:var(--card-margin-bottom);flex-direction:column;gap:12px;display:flex}.checkbox-label{color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.4;display:flex}.checkbox-label input[type=checkbox]{appearance:none;background-color:var(--color-surface);cursor:pointer;border:2px solid #cbd5e1;border-radius:4px;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:2px;transition:all .2s;display:inline-flex}.checkbox-label input[type=checkbox]:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.checkbox-label input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:12px;font-weight:900}.checkbox-label input[type=checkbox]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px #0f766e40}.agreement-link{color:var(--color-primary);font-weight:600;text-decoration:underline}.agreement-link:hover{color:var(--color-secondary)}.custom-modal-card.large-modal{width:95%;max-width:680px}.custom-modal-card.large-modal .custom-modal-body{text-align:left;border-top:1px solid #f1f5f9;border-bottom:1px solid var(--color-border-light);max-height:380px;padding-top:12px;padding-bottom:12px;padding-right:12px;font-size:13.5px;line-height:1.6;overflow-y:auto}.custom-modal-card.large-modal .custom-modal-icon{display:none}.input-error-msg{color:#ef4444;margin-top:4px;font-size:12px;font-weight:600}.auth-toggle-link{text-align:center;color:var(--color-text-muted);margin-top:20px;font-size:13.5px;display:block}.auth-toggle-link a{color:var(--color-primary);font-weight:700;text-decoration:none}.auth-toggle-link a:hover{text-decoration:underline}.auth-buttons-row{flex-direction:column;gap:10px;width:100%;margin-top:20px;margin-bottom:10px;display:flex}@media (width>=480px){.auth-buttons-row{flex-direction:row;gap:12px}}.auth-card .btn-wizard-next,.auth-buttons-row button,.auth-buttons-row a,.auth-btn-primary,.auth-btn-secondary{width:100%;height:44px;min-height:44px;font-size:14px;font-weight:var(--font-weight-bold);text-align:center;cursor:pointer;box-sizing:border-box;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;margin:0;padding:0 20px;font-family:inherit;line-height:1;text-decoration:none;display:inline-flex}@media (width>=480px){.auth-buttons-row button,.auth-buttons-row a,.auth-buttons-row .auth-btn-primary,.auth-buttons-row .auth-btn-secondary{flex:1 1 0;width:auto}}.auth-card .btn-wizard-next,.auth-btn-primary{background:var(--navy);color:var(--color-text-inverse);border-color:var(--navy);box-shadow:0 4px 12px #0f172a26}.auth-card .btn-wizard-next:hover,.auth-btn-primary:hover{background:var(--navy-dark);border-color:var(--navy-dark);color:var(--color-text-inverse);box-shadow:0 4px 14px #0f172a40}.auth-btn-secondary{background:var(--color-border-light);color:var(--color-text-primary);border-color:var(--color-border-dark);box-shadow:0 2px 5px #0f172a0a}.auth-btn-secondary:hover{background:var(--color-border);border-color:var(--color-border-hover);color:var(--color-text-primary);box-shadow:0 4px 10px #0f172a14}.captcha-group{margin-top:16px;margin-bottom:16px}.captcha-input-row{align-items:stretch;gap:8px;display:flex}.captcha-image-wrapper{border:1px solid var(--color-border);background:#f8fafc;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;padding:3px 6px 3px 4px;display:flex}.captcha-refresh-btn{cursor:pointer;color:var(--color-text-primary);background:#e2e8f0;border:1px solid #cbd5e1;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .2s;display:inline-flex}.captcha-refresh-btn:hover{color:var(--color-primary);background:#cbd5e1;border-color:#94a3b8;transform:rotate(90deg)}.captcha-refresh-btn svg.icon-svg{stroke:currentColor!important;fill:none!important;stroke-width:2.2px!important;width:18px!important;height:18px!important;display:block!important}.captcha-input{text-transform:uppercase;letter-spacing:2px;text-align:center;flex:1;min-width:80px;font-size:15px;font-weight:800}.auth-options-row{justify-content:flex-start;align-items:center;margin-top:14px;margin-bottom:6px;display:flex}.auth-alert{border-radius:var(--card-radius-sm);align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;font-size:13.5px;font-weight:600;display:flex}.auth-alert svg{flex-shrink:0;width:18px;height:18px}.auth-alert-success{color:#15803d;background:#dcfce7;border:1px solid #86efac}.auth-alert-error{border:1px solid var(--color-error-border);color:#b91c1c;background:#fee2e2}.auth-alert-info{border:1px solid var(--color-info-border);color:#1e40af;background:#eff6ff}.auth-label-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.auth-forgot-link{color:var(--color-primary);font-size:12.5px;font-weight:600;text-decoration:none}.auth-forgot-link:hover{text-decoration:underline}.form-label-hint{color:var(--color-text-muted);font-size:11.5px;font-weight:400}.agreement-subtitle{color:var(--color-text-primary);margin:12px 0 6px;font-size:13.5px;font-weight:700}.otp-panel-title-success{color:#16a34a}.otp-test-box{border:1px solid var(--color-info-border);color:#1e40af;text-align:center;margin-bottom:var(--spacing-lg);background:#eff6ff;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:13.5px;font-weight:700;display:flex}.otp-code-highlight{color:var(--color-primary);letter-spacing:2px;font-size:18px}.otp-input-box{flex-direction:column;align-items:center;gap:8px;display:flex}.otp-code-input{text-align:center;letter-spacing:8px;width:180px;color:var(--color-text-primary);border:2px solid #cbd5e1;border-radius:10px;padding:10px 14px;font-size:22px;font-weight:800;transition:border-color .2s}.otp-code-input:focus{border-color:var(--color-primary);outline:none}.otp-help-text{color:var(--color-text-muted);text-align:center;margin-top:6px;font-size:12.5px}.otp-status-message{text-align:center;margin-top:12px;font-size:13px;font-weight:700}
