#mwpc-app {
    font-family: sans-serif;
    padding: 60px 20px;
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

#mwpc-app h2 { font-size: 32px; font-weight: 700; margin-bottom: 10px; color: #111; }
#mwpc-app p { color: #666; margin-bottom: 30px; }

.mwpc-main-form { display: flex; gap: 10px; justify-content: center; margin-bottom: 15px; }
.mwpc-input { flex: 1; padding: 12px 15px; border: 1px solid #ddd; border-radius: 8px; font-size: 16px; max-width: 400px; }

.mwpc-btn-primary { 
    background: #2400FF !important; color: #fff !important; display: inherit !important;
    padding: 0 25px; border-radius: 8px; border: none !important; font-weight: 600; cursor: pointer;
}
.mwpc-btn-primary:hover {
    background: #B300FF !important;
}
.mwpc-btn-primary:disabled { opacity: 0.7; cursor: not-allowed; }

.mwpc-checkbox-row { display: flex; gap: 20px; justify-content: center; font-size: 14px; color: #777; margin-bottom: 40px; }

/* Spinner */
.mwpc-spinner {
    border: 4px solid #f3f3f3; border-top: 4px solid #3498db;
    border-radius: 50%; width: 50px; height: 50px;
    animation: mwpc-spin 1s linear infinite; margin: 0 auto 20px;
}
@keyframes mwpc-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.mwpc-loading-msg { font-size: 18px; font-weight: 600; color: #333; animation: pulse 1.5s infinite; }

/* Circles */
.mwpc-results-grid { display: flex; justify-content: center; gap: 30px; flex-wrap: wrap; margin-top: 40px; }
.mwpc-circle-item { text-align: center; }
.mwpc-circle-item span { display: block; margin-top: 10px; font-weight: 500; color: #555; }
#progress-mobile, #progress-desktop { transition: stroke-dashoffset 1.5s ease-in-out; }

/* Lead Box */
.mwpc-lead-box { background: #fff; border: 1px solid #eee; border-radius: 12px; padding: 30px; margin-top: 50px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
.mwpc-lead-box h3 { margin-bottom: 10px; font-size: 20px; }
.mwpc-lead-form { display: flex; flex-direction: column; gap: 12px; max-width: 400px; margin: 0 auto; }
.mwpc-lead-form input { padding: 12px; border: 1px solid #ddd; border-radius: 8px; }
.mwpc-lead-form button { background: #000; color: #fff; padding: 12px; border-radius: 8px; border: none; font-weight: 600; cursor: pointer; }

.mwpc-success-msg { background: #f0fdf4; color: #166534; padding: 20px; border-radius: 12px; margin-top: 30px; border: 1px solid #bbf7d0; }
.mwpc-error-text { color: #ef4444; margin-top: 20px; font-weight: 500; }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }

