/* ===== RESET COMPLETO ===== */
            * {
                margin: 0;
                padding: 0;
                box-sizing: border-box;
                -webkit-tap-highlight-color: transparent;
            }
            
            html, body {
                margin: 0 !important;
                padding: 0 !important;
                min-height: 100vh;
                width: 100%;
                background: linear-gradient(135deg, black 0%, #070018ff 100%);
                font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
                line-height: 1.5;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
            }
            
            body {
                display: flex;
                align-items: center;
                justify-content: center;
                padding: 16px;
            }
            
            /* Esconder elementos do tema */
            header, footer, nav, .site-header, .site-footer, 
            .main-navigation, .menu, .sidebar, #masthead, 
            .col-full, .woocommerce-breadcrumb {
                display: none !important;
            }
            
            /* ===== VARIÁVEIS ===== */
            :root {
                --primary: #eb003b;
                --primary-dark: #c4002f;
                --primary-light: #ffebef;
                --secondary: #764ba2;
                --secondary-light: #f3e5f5;
                --success: #10b981;
                --success-light: #d1fae5;
                --danger: #ef4444;
                --danger-light: #fee2e2;
                --text-primary: #111827;
                --text-secondary: #4b5563;
                --text-muted: #9ca3af;
                --bg-white: #ffffff;
                --bg-light: #f9fafb;
                --border-color: #e5e7eb;
                --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
                --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1);
                --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1);
                --radius-sm: 6px;
                --radius-md: 8px;
                --radius-lg: 12px;
            }
            
            /* ===== CONTAINER PRINCIPAL ===== */
            .dv-ws-auth-container {
                width: 100%;
                max-width: 480px;
                background: var(--bg-white);
                border-radius: var(--radius-lg);
                box-shadow: var(--shadow-lg);
                overflow: hidden;
                animation: fadeIn 0.3s ease-out;
                position: relative;
                z-index: 10;
            }
            
            @keyframes fadeIn {
                from {
                    opacity: 0;
                    transform: translateY(20px);
                }
                to {
                    opacity: 1;
                    transform: translateY(0);
                }
            }
            
            /* ===== HEADER COM LOGO ===== */
            .dv-ws-auth-header {
                background: linear-gradient(135deg, #ff8800 0%, #6f1b08 100%);
                padding: clamp(24px, 5vw, 40px) clamp(20px, 4vw, 32px);
                text-align: center;
            }
            
            .dv-ws-logo {
                max-width: min(200px, 80%);
                max-height: 60px;
                margin: 0 auto 16px;
            }
            
            .dv-ws-logo img {
                max-width: 100%;
                max-height: 60px;
                width: auto;
                height: auto;
                object-fit: contain;
            }
            
            .dv-ws-logo-placeholder {
                font-size: clamp(20px, 5vw, 28px);
                font-weight: 700;
                color: white;
                margin-bottom: 8px;
                text-shadow: 0 2px 4px rgba(0,0,0,0.2);
            }
            
            .dv-ws-logo-placeholder span {
                color: rgba(255,255,255,0.9);
            }
            
            .dv-ws-auth-header p {
                color: rgba(255,255,255,0.95);
                font-size: clamp(14px, 3vw, 16px);
                font-weight: 400;
                max-width: 300px;
                margin: 0 auto;
            }
            
            /* ===== TABS ===== */
            .dv-ws-auth-tabs {
                display: flex;
                background: var(--bg-white);
                border-bottom: 1px solid var(--border-color);
                padding: 0;
            }
            
            .dv-ws-auth-tab {
                flex: 1;
                text-align: center;
                padding: 16px 8px;
                font-size: clamp(14px, 3.5vw, 16px);
                font-weight: 600;
                color: var(--text-secondary);
                background: none;
                border: none;
                border-bottom: 3px solid transparent;
                cursor: pointer;
                transition: all 0.2s;
                position: relative;
                overflow: hidden;
            }
            
            .dv-ws-auth-tab i {
                margin-right: 6px;
                font-size: 1.1em;
            }
            
            .dv-ws-auth-tab:hover {
                color: var(--primary);
                background: var(--primary-light);
            }
            
            .dv-ws-auth-tab.active {
                color: var(--primary);
                border-bottom-color: var(--primary);
                background: white;
                font-weight: 700;
            }
            
            .dv-ws-auth-tab:active {
                background: var(--primary-light);
                transform: scale(0.98);
            }
            
            /* ===== CONTENT AREA ===== */
            .dv-ws-auth-content {
                padding: clamp(20px, 4vw, 32px);
                max-height: 70vh;
                overflow-y: auto;
                scrollbar-width: thin;
                scrollbar-color: var(--primary) var(--border-color);
            }
            
            .dv-ws-auth-content::-webkit-scrollbar {
                width: 6px;
            }
            
            .dv-ws-auth-content::-webkit-scrollbar-track {
                background: var(--border-color);
                border-radius: 3px;
            }
            
            .dv-ws-auth-content::-webkit-scrollbar-thumb {
                background: var(--primary);
                border-radius: 3px;
            }
            
            .dv-ws-auth-content::-webkit-scrollbar-thumb:hover {
                background: var(--primary-dark);
            }
            
            /* ===== LOADING SPINNER ===== */
            .dv-ws-loading {
                text-align: center;
                padding: 40px 20px;
            }
            
            .dv-ws-spinner {
                display: inline-block;
                width: 40px;
                height: 40px;
                border: 3px solid var(--border-color);
                border-radius: 50%;
                border-top-color: var(--primary);
                animation: spin 0.8s linear infinite;
                margin-bottom: 16px;
            }
            
            @keyframes spin {
                to { transform: rotate(360deg); }
            }
            
            .dv-ws-loading p {
                color: var(--text-secondary);
                font-size: 14px;
            }
            
            /* ===== FORMULÁRIOS ===== */
            .dv-ws-form {
                display: flex;
                flex-direction: column;
                gap: 20px;
            }
            
            .dv-ws-form-row {
                width: 100%;
            }
            
            .dv-ws-form-row.two-columns {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 12px;
            }
            
            .dv-ws-form-group {
                width: 100%;
            }
            
            .dv-ws-form-group label {
                display: block;
                margin-bottom: 6px;
                font-weight: 500;
                color: var(--text-primary);
                font-size: clamp(13px, 3vw, 14px);
            }
            
            .dv-ws-form-group .required {
                color: var(--primary);
                margin-left: 2px;
                font-weight: 700;
            }
            
            .dv-ws-input-wrapper {
                position: relative;
                width: 100%;
            }
            
            .dv-ws-input-wrapper input {
                width: 100%;
                padding: clamp(10px, 3vw, 12px) clamp(12px, 3.5vw, 14px);
                padding-right: 45px; /* Espaço para o ícone */
                border: 1.5px solid var(--border-color);
                border-radius: var(--radius-md);
                font-size: clamp(14px, 3.5vw, 15px);
                transition: all 0.2s;
                background: var(--bg-white);
                color: var(--text-primary);
                -webkit-appearance: none;
                appearance: none;
            }
            
            .dv-ws-input-wrapper input:focus {
                border-color: var(--primary);
                outline: none;
                box-shadow: 0 0 0 3px rgba(235, 0, 59, 0.1);
            }
            
            .dv-ws-input-wrapper input::placeholder {
                color: var(--text-muted);
                opacity: 0.7;
            }
            
            .dv-ws-input-wrapper input.readonly-field {
                background: var(--bg-light);
                cursor: not-allowed;
                opacity: 0.7;
            }
            
            /* Ícone de visualizar senha */
            .dv-ws-toggle-password {
                position: absolute;
                right: 12px;
                top: 50%;
                transform: translateY(-50%);
                background: none;
                border: none;
                color: var(--text-muted);
                cursor: pointer;
                padding: 8px;
                font-size: 1.2rem;
                display: flex;
                align-items: center;
                justify-content: center;
                transition: all 0.2s;
                z-index: 2;
                -webkit-tap-highlight-color: transparent;
            }
            
            .dv-ws-toggle-password:hover {
                color: var(--primary);
            }
            
            .dv-ws-toggle-password:active {
                transform: translateY(-50%) scale(0.95);
            }
            
            .dv-ws-toggle-password i {
                pointer-events: none;
            }
            
            .dv-ws-form-group small {
                display: block;
                color: var(--text-muted);
                font-size: clamp(11px, 2.5vw, 12px);
                margin-top: 4px;
            }
            
            /* ===== CAMPO DE SENHA COM BOTÃO GERAR ===== */
            .dv-ws-password-input-group {
                display: flex;
                gap: 8px;
                align-items: center;
            }
            
            .dv-ws-password-input-group .dv-ws-input-wrapper {
                flex: 1;
            }
            
            .dv-ws-btn-generate {
                padding: clamp(10px, 2.5vw, 12px) clamp(12px, 3vw, 16px);
                background: var(--bg-light);
                color: var(--text-secondary);
                border: 1.5px solid var(--border-color);
                border-radius: var(--radius-md);
                font-size: clamp(13px, 3vw, 14px);
                font-weight: 500;
                cursor: pointer;
                transition: all 0.2s;
                white-space: nowrap;
                display: flex;
                align-items: center;
                gap: 6px;
                -webkit-tap-highlight-color: transparent;
            }
            
            .dv-ws-btn-generate i {
                font-size: 1.1em;
            }
            
            .dv-ws-btn-generate:hover {
                background: var(--border-color);
                color: var(--text-primary);
            }
            
            .dv-ws-btn-generate:active {
                transform: scale(0.95);
            }
            
            /* ===== REQUISITOS DE SENHA ===== */
            .dv-ws-password-requirements {
                background: var(--bg-light);
                border-radius: var(--radius-md);
                padding: 16px;
                margin-top: 12px;
                border: 1px solid var(--border-color);
            }
            
            .dv-ws-requirements-title {
                font-size: 13px;
                font-weight: 600;
                color: var(--text-primary);
                margin-bottom: 12px;
                display: flex;
                align-items: center;
                gap: 6px;
            }
            
            .dv-ws-requirements-list {
                list-style: none;
                margin-bottom: 16px;
            }
            
            .dv-ws-requirements-list li {
                font-size: 12px;
                margin-bottom: 8px;
                padding-left: 24px;
                position: relative;
                color: var(--text-secondary);
                line-height: 1.4;
            }
            
            .dv-ws-requirements-list li i {
                position: absolute;
                left: 0;
                top: 1px;
                font-size: 14px;
            }
            
            .dv-ws-requirements-list li.valid {
                color: var(--success);
            }
            
            .dv-ws-requirements-list li.valid i {
                color: var(--success);
            }
            
            .dv-ws-requirements-list li.invalid {
                color: var(--text-muted);
            }
            
            .dv-ws-requirements-list li.invalid i {
                color: var(--text-muted);
            }
            
            .dv-ws-strength-meter {
                display: flex;
                align-items: center;
                gap: 10px;
                flex-wrap: wrap;
            }
            
            .dv-ws-strength-bar {
                flex: 1;
                min-width: 120px;
                height: 6px;
                background: var(--border-color);
                border-radius: 3px;
                overflow: hidden;
            }
            
            .dv-ws-strength-fill {
                height: 100%;
                width: 0;
                transition: width 0.3s ease;
            }
            
            .dv-ws-strength-fill.very-weak { background: var(--danger); width: 20%; }
            .dv-ws-strength-fill.weak { background: #f97316; width: 40%; }
            .dv-ws-strength-fill.medium { background: #eab308; width: 60%; }
            .dv-ws-strength-fill.good { background: #84cc16; width: 80%; }
            .dv-ws-strength-fill.strong { background: var(--success); width: 100%; }
            
            .dv-ws-strength-text {
                font-size: 12px;
                font-weight: 600;
                color: var(--text-secondary);
                min-width: 80px;
                text-align: right;
            }
            
            /* ===== CHECKBOX ===== */
            .dv-ws-checkbox {
                display: flex;
                align-items: center;
                gap: 10px;
                margin: 8px 0;
            }
            
            .dv-ws-checkbox input[type="checkbox"] {
                width: 18px;
                height: 18px;
                margin: 0;
                accent-color: var(--primary);
                cursor: pointer;
            }
            
            .dv-ws-checkbox label {
                font-size: 14px;
                color: var(--text-secondary);
                cursor: pointer;
                user-select: none;
            }
            
            /* ===== BOTÃO SUBMIT ===== */
            .dv-ws-submit {
                background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
                color: white;
                border: none;
                padding: clamp(12px, 3.5vw, 14px);
                border-radius: var(--radius-md);
                font-size: clamp(15px, 4vw, 16px);
                font-weight: 600;
                cursor: pointer;
                transition: all 0.2s;
                margin-top: 8px;
                width: 100%;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 8px;
                -webkit-tap-highlight-color: transparent;
            }
            
            .dv-ws-submit i {
                font-size: 1.2em;
            }
            
            .dv-ws-submit:hover {
                transform: translateY(-2px);
                box-shadow: var(--shadow-md);
            }
            
            .dv-ws-submit:active {
                transform: translateY(0);
                opacity: 0.9;
            }
            
            .dv-ws-submit:disabled {
                opacity: 0.6;
                cursor: not-allowed;
                transform: none;
            }
            
            /* ===== TOAST NOTIFICATION ===== */
            .dv-ws-toast {
                margin-bottom: 20px;
                padding: 16px;
                border-radius: var(--radius-md);
                animation: slideDown 0.3s ease-out;
                position: relative;
                overflow: hidden;
            }
            
            @keyframes slideDown {
                from {
                    opacity: 0;
                    transform: translateY(-20px);
                }
                to {
                    opacity: 1;
                    transform: translateY(0);
                }
            }
            
            .dv-ws-toast.success {
                background: var(--success-light);
                color: #065f46;
                border-left: 4px solid var(--success);
            }
            
            .dv-ws-toast.error {
                background: var(--danger-light);
                color: #991b1b;
                border-left: 4px solid var(--danger);
            }
            
            .dv-ws-toast-content {
                font-size: 14px;
                line-height: 1.6;
            }
            
            .dv-ws-toast-content strong {
                display: block;
                margin-bottom: 8px;
                font-size: 16px;
            }
            
            .dv-ws-toast a {
                color: inherit;
                font-weight: 600;
                text-decoration: none;
            }
            
            .dv-ws-toast a:hover {
                text-decoration: underline;
            }
            
            /* ===== WHATSAPP BUTTON ===== */
            .dv-ws-whatsapp-button {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                gap: 8px;
                background: #25D366;
                color: white;
                padding: 12px 20px;
                border-radius: var(--radius-md);
                text-decoration: none;
                font-weight: 600;
                font-size: 14px;
                margin: 12px 0 8px;
                transition: all 0.2s;
                border: none;
                cursor: pointer;
                width: 100%;
                -webkit-tap-highlight-color: transparent;
            }
            
            .dv-ws-whatsapp-button i {
                font-size: 1.2em;
            }
            
            .dv-ws-whatsapp-button:hover {
                background: #128C7E;
                transform: translateY(-2px);
                box-shadow: var(--shadow-md);
            }
            
            .dv-ws-whatsapp-button:active {
                transform: translateY(0);
            }
            
            /* ===== REDIRECT INFO ===== */
            .dv-ws-redirect-info {
                margin-top: 16px;
                padding-top: 16px;
                border-top: 1px solid rgba(0,0,0,0.1);
                font-size: 13px;
                text-align: center;
                color: inherit;
            }
            
            .dv-ws-countdown {
                font-weight: 700;
                color: var(--primary);
                font-size: 18px;
                display: inline-block;
                min-width: 30px;
            }
            
            /* ===== LINKS ===== */
            .dv-ws-links {
                text-align: center;
                margin-top: 16px;
            }
            
            .dv-ws-links a {
                color: var(--primary);
                text-decoration: none;
                font-size: 14px;
                font-weight: 500;
                display: inline-block;
                padding: 8px;
            }
            
            .dv-ws-links a:hover {
                text-decoration: underline;
            }
            
            .dv-ws-links a i {
                margin-right: 4px;
            }
            
            /* ===== MEDIA QUERIES - TABLET (768px - 1024px) ===== */
            @media (min-width: 768px) and (max-width: 1024px) {
                body {
                    padding: 24px;
                }
                
                .dv-ws-auth-container {
                    max-width: 600px;
                }
                
                .dv-ws-auth-header {
                    padding: 32px;
                }
                
                .dv-ws-logo {
                    max-width: 240px;
                    max-height: 70px;
                }
                
                .dv-ws-auth-content {
                    padding: 32px;
                    max-height: 60vh;
                }
                
                .dv-ws-form-row.two-columns {
                    gap: 16px;
                }
                
                .dv-ws-input-wrapper input {
                    padding: 14px 16px;
                    padding-right: 50px;
                    font-size: 16px;
                }
                
                .dv-ws-btn-generate {
                    padding: 14px 20px;
                }
                
                .dv-ws-submit {
                    padding: 16px;
                    font-size: 18px;
                }
                
                .dv-ws-toast-content {
                    font-size: 15px;
                }
            }
            
            /* ===== MEDIA QUERIES - CELULAR GRANDE (426px - 767px) ===== */
            @media (min-width: 426px) and (max-width: 767px) {
                .dv-ws-auth-container {
                    max-width: 450px;
                }
                
                .dv-ws-auth-content {
                    padding: 24px;
                }
                
                .dv-ws-form-row.two-columns {
                    grid-template-columns: 1fr;
                    gap: 16px;
                }
                
                .dv-ws-password-input-group {
                    flex-direction: column;
                }
                
                .dv-ws-password-input-group .dv-ws-btn-generate {
                    width: 100%;
                    justify-content: center;
                }
                
                .dv-ws-strength-meter {
                    flex-direction: column;
                    align-items: flex-start;
                }
                
                .dv-ws-strength-bar {
                    width: 100%;
                }
                
                .dv-ws-strength-text {
                    text-align: left;
                }
            }
            
            /* ===== MEDIA QUERIES - CELULAR PEQUENO (até 425px) ===== */
            @media (max-width: 425px) {
                body {
                    padding: 12px;
                }
                
                .dv-ws-auth-container {
                    border-radius: 16px;
                }
                
                .dv-ws-auth-header {
                    padding: 20px 16px;
                }
                
                .dv-ws-logo {
                    max-width: 160px;
                    max-height: 45px;
                    margin-bottom: 12px;
                }
                
                .dv-ws-auth-tab {
                    padding: 14px 4px;
                    font-size: 13px;
                }
                
                .dv-ws-auth-tab i {
                    margin-right: 4px;
                }
                
                .dv-ws-auth-content {
                    padding: 20px 16px;
                    max-height: 65vh;
                }
                
                .dv-ws-form {
                    gap: 16px;
                }
                
                .dv-ws-form-row.two-columns {
                    grid-template-columns: 1fr;
                    gap: 16px;
                }
                
                .dv-ws-password-input-group {
                    flex-direction: column;
                    gap: 8px;
                }
                
                .dv-ws-password-input-group .dv-ws-btn-generate {
                    width: 100%;
                    justify-content: center;
                    padding: 12px;
                }
                
                .dv-ws-password-requirements {
                    padding: 12px;
                }
                
                .dv-ws-requirements-list li {
                    font-size: 11px;
                    margin-bottom: 6px;
                }
                
                .dv-ws-strength-meter {
                    flex-direction: column;
                    align-items: flex-start;
                    gap: 8px;
                }
                
                .dv-ws-strength-bar {
                    width: 100%;
                }
                
                .dv-ws-strength-text {
                    text-align: left;
                    font-size: 11px;
                }
                
                .dv-ws-submit {
                    padding: 14px;
                    font-size: 15px;
                }
                
                .dv-ws-toast {
                    padding: 12px;
                }
                
                .dv-ws-toast-content {
                    font-size: 13px;
                }
                
                .dv-ws-toast-content strong {
                    font-size: 14px;
                }
                
                .dv-ws-whatsapp-button {
                    padding: 12px;
                    font-size: 13px;
                }
                
                .dv-ws-links a {
                    font-size: 13px;
                    padding: 6px;
                }
            }
            
            /* ===== ORIENTAÇÃO PAISAGEM EM CELULAR ===== */
            @media (max-height: 600px) and (orientation: landscape) {
                body {
                    align-items: flex-start;
                    padding: 12px;
                }
                
                .dv-ws-auth-container {
                    max-width: 600px;
                }
                
                .dv-ws-auth-header {
                    padding: 16px;
                }
                
                .dv-ws-logo {
                    max-width: 120px;
                    max-height: 35px;
                    margin-bottom: 8px;
                }
                
                .dv-ws-auth-header p {
                    font-size: 12px;
                }
                
                .dv-ws-auth-content {
                    max-height: 50vh;
                    padding: 16px;
                }
                
                .dv-ws-form-row.two-columns {
                    grid-template-columns: repeat(2, 1fr);
                }
                
                .dv-ws-password-input-group {
                    flex-direction: row;
                }
                
                .dv-ws-password-input-group .dv-ws-btn-generate {
                    width: auto;
                }
            }
            
            /* ===== TABLET PAISAGEM ===== */
            @media (min-width: 1025px) and (max-width: 1280px) and (orientation: landscape) {
                .dv-ws-auth-container {
                    max-width: 550px;
                }
                
                .dv-ws-auth-content {
                    max-height: 65vh;
                }
                
                .dv-ws-form-row.two-columns {
                    gap: 20px;
                }
            }
            
            /* ===== TOUCH OTIMIZATIONS ===== */
            @media (hover: none) and (pointer: coarse) {
                .dv-ws-auth-tab,
                .dv-ws-btn-generate,
                .dv-ws-submit,
                .dv-ws-whatsapp-button,
                .dv-ws-links a,
                .dv-ws-toggle-password {
                    min-height: 48px;
                    min-width: 48px;
                }
                
                .dv-ws-auth-tab:hover,
                .dv-ws-btn-generate:hover,
                .dv-ws-submit:hover,
                .dv-ws-whatsapp-button:hover,
                .dv-ws-links a:hover,
                .dv-ws-toggle-password:hover {
                    transform: none;
                    box-shadow: none;
                }
                
                .dv-ws-auth-tab:active,
                .dv-ws-btn-generate:active,
                .dv-ws-submit:active,
                .dv-ws-whatsapp-button:active,
                .dv-ws-toggle-password:active {
                    opacity: 0.7;
                    transform: scale(0.98);
                }
            }