/* 
Theme Name: DokunTheme
Theme URI: https://dokundigital.com/
Description: DokunTheme is a lightweight child theme of Hello Elementor, optimized for performance and custom widgets.
Author: Dokun Digital
Author URI: https://dokundigital.com/
Template: hello-elementor
Version: 1.0.0
Text Domain: dokuntheme
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: custom-widgets, shortcodes, lightweight
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@500;700&display=swap');

.dd-social-proof {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 16px;
    font-family: 'Inter', sans-serif;
}
.dd-avatar-group {
    display: flex;
    align-items: center;
}
.dd-avatar-group .dd-badge,
.dd-avatar-group img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,.05);
    object-fit: cover;
    box-sizing: border-box;
}
.dd-avatar-group > * + * {
    margin-left: -12px;
}
.dd-avatar-group .dd-badge {
    background: #dbeafe;
    color: #2563eb;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
    position: relative;
    z-index: 1;
}
.dd-text {
    font-size: 14px;
    color: #4b5563;
    font-weight: 500;
    line-height: 1.4;
    margin: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.dd-rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 700;
    color: #111827;
    margin-top: 2px;
}

@media(max-width: 768px) {
    .dd-social-proof {
        gap: 8px 12px;
    }
    .dd-avatar-group .dd-badge,
    .dd-avatar-group img {
        width: 32px;
        height: 32px;
    }
    .dd-avatar-group > * + * {
        margin-left: -10px;
    }
    .dd-avatar-group .dd-badge {
        font-size: 11px;
    }
    .dd-text {
        font-size: 12px;
    }
    .dd-rating svg {
        width: 12px;
        height: 12px;
    }
}

.dd-form-wrapper {
    max-width: 500px;
    margin: 0 auto;
    font-family: 'Inter', sans-serif;
}
.dokuntheme-generator-form {
    background: #ffffff;
    padding: 32px;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
}
.dd-form-header {
    margin-bottom: 24px;
    text-align: center;
}
.dd-form-header h3 {
    margin: 0 0 8px;
    color: #0f172a;
    font-size: 20px;
    font-weight: 700;
}
.dd-form-header p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
}
.dd-form-group {
    margin-bottom: 16px;
}
.dd-form-group label {
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
    color: #334155;
    font-size: 13px;
}
.dd-form-group input[type="text"],
.dd-form-group input[type="url"],
.dd-form-group input[type="email"],
.dd-form-group textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-size: 14px;
    box-sizing: border-box;
    background: #f8fafc;
    color: #0f172a;
    transition: all 0.2s;
    font-family: inherit;
}
.dd-form-group input:focus,
.dd-form-group textarea:focus {
    outline: none;
    border-color: #2563eb;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(37,99,235,0.1);
}
.dd-form-group textarea {
    min-height: 100px;
    resize: vertical;
}
.dd-file-upload {
    border: 1px dashed #cbd5e1;
    padding: 16px;
    border-radius: 8px;
    background: #f8fafc;
    text-align: center;
}
.dd-file-upload input[type="file"] {
    font-size: 13px;
    color: #64748b;
}
.dd-btn-submit {
    background: #2563eb;
    color: #fff;
    border: none;
    padding: 14px 24px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    font-size: 15px;
    transition: background 0.2s;
    width: 100%;
    margin-top: 8px;
}
.dd-btn-submit:hover {
    background: #1d4ed8;
}
.dd-form-error {
    background: #fee2e2;
    color: #b91c1c;
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 20px;
    font-size: 14px;
    border: 1px solid #fecaca;
    font-weight: 500;
}

.dd-running-text {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    background-color: #f1f5f9;
    padding: 10px 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

.dd-marquee-wrapper {
    display: flex;
    width: max-content;
    animation: dd-marquee linear infinite;
    animation-duration: 20s;
}

.dd-marquee-track {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.dd-pause-hover:hover .dd-marquee-wrapper {
    animation-play-state: paused;
}

.dd-running-text-item {
    display: inline-flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    color: #1e293b;
}

.dd-running-text-item a {
    color: inherit;
    text-decoration: none;
}

.dd-running-text-item a:hover {
    text-decoration: underline;
}

.dd-running-text-separator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #cbd5e1;
}

@keyframes dd-marquee {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}
.dd-domain-widget {
    background:#ffffff;
    width:100%;
    max-width:100%;
    border-radius:16px;
    border:1px solid #e2e8f0;
    box-shadow: 
      25px -25px 50px -15px rgba(191,219,254,0.35),
      -25px 25px 50px -15px rgba(167,243,208,0.25),
      0 8px 20px -10px rgba(0,0,0,0.05);
    padding:24px;
    box-sizing:border-box;
    position:relative;
    font-family:'Inter',sans-serif;
    margin:0 auto;
}

.dd-header-inline{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px;text-align:left}
.dd-icon-top{background:#eff6ff;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#2563eb;flex-shrink:0}
.dd-icon-top svg{width:22px;height:22px}
.dd-header-text h2{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 6px;line-height:1.2}
.dd-header-text p{font-size:13px;color:#64748b;line-height:1.5;margin:0}

.dd-input-group{position:relative;margin-bottom:12px}
.dd-input-group svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;width:18px;height:18px}
.dd-input-group input{width:100%;padding:12px 14px 12px 40px;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;font-family:'Inter',sans-serif;color:#0f172a;background:#fafafa;outline:0;transition:all .2s;box-sizing:border-box}
.dd-input-group input:focus{border-color:#2563eb;background:#ffffff;box-shadow:0 0 0 3px rgba(37,99,235,.1)}
.dd-input-group input::placeholder{color:#94a3b8}

.dd-btn-primary{width:100%;background:#2563eb;color:#fff;border:0;padding:12px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:8px;transition:background .2s;font-family:'Inter',sans-serif;box-sizing:border-box}
.dd-btn-primary:hover{background:#1d4ed8}
.dd-btn-primary:disabled{background:#93c5fd;cursor:not-allowed}

.dd-btn-spinner {
    display: none;
    animation: dd-spin 1s linear infinite;
}
@keyframes dd-spin {
    100% { transform: rotate(360deg); }
}
.dd-btn-primary.is-loading .dd-btn-icon {
    display: none;
}
.dd-btn-primary.is-loading .dd-btn-spinner {
    display: block;
}

#dd-result-box, [id^="dd-result-box-"] {
    margin-top:12px;
    padding:14px;
    border-radius:10px;
    font-size:13px;
    font-weight:500;
    display:none;
    text-align:center;
    line-height: 1.4;
    word-break: break-word;
}
.dd-res-success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}
.dd-res-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}
.dd-btn-claim {
    display: inline-block;
    width: 100%;
    text-align: center;
    background: #16a34a;
    color: #fff;
    text-decoration: none;
    padding: 12px;
    border-radius: 8px;
    font-weight: 600;
    transition: background 0.2s;
    margin-top: 12px;
    box-sizing: border-box;
}
.dd-btn-claim:hover {
    background: #15803d;
}

.dd-extensions-inline{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-top:16px;border-top:1px solid #f1f5f9;padding-top:16px;flex-wrap:wrap}
.dd-ext-title{font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;margin:0}
.dd-ext-badge{padding:4px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:11px;font-weight:500;color:#0f172a;background:#ffffff;cursor:pointer;transition:all .2s}
.dd-ext-badge:hover{border-color:#cbd5e1;background:#f8fafc}

@media(max-width: 480px) {
.dd-domain-widget {
        padding: 20px;
    }
    .dd-header-inline {
        gap: 12px;
    }
    .dd-icon-top {
        width: 40px;
        height: 40px;
    }
    .dd-header-text h2{font-size:16px;}
    .dd-header-text p{font-size:12px;}
    .dd-btn-primary{font-size:13px;padding:10px;}
    .dd-input-group input{font-size:13px;padding:10px 12px 10px 36px;}
}
