.micd-form {
    --micd-text: #4b5563;
    --micd-muted: #9aa3b2;
    --micd-border: #d9dee7;
    --micd-focus: #503AA8;
    --micd-error: #b42318;
    --micd-success: #2f7d73;
    max-width: 700px;
    margin: 0 auto;
    color: var(--micd-text);
}

.micd-field,
.micd-fieldset,
.micd-privacy {
    margin-bottom: 1.75rem;
}

.micd-field label,
.micd-fieldset legend {
    display: block;
    margin-bottom: 0.45rem;
    font-size: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.196), 1.125rem);
    font-weight: 600;
    line-height: 1.2;
    color: var(--micd-text);
}

.micd-field label span,
.micd-fieldset legend span {
    color: #ef4444;
}

.micd-field input,
.micd-field textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--micd-border);
    border-radius: 10px;
    background: #fff;
    color: var(--micd-text);
    box-shadow: 0 2px 2px rgba(31, 41, 55, 0.08);
    font-size: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.196), 1.125rem);
    line-height: 1.35;
    padding: 0.85rem 1.05rem;
    font-family: Manrope, sans-serif;
}

.micd-field textarea {
    min-height: 180px;
    resize: vertical;
}

.micd-field input::placeholder,
.micd-field textarea::placeholder {
    color: var(--micd-muted);
    opacity: 1;
}

.micd-field input:focus,
.micd-field textarea:focus,
.micd-check input:focus,
.micd-privacy input:focus {
    outline: 2px solid color-mix(in srgb, var(--micd-focus) 35%, transparent);
    outline-offset: 2px;
    border-color: var(--micd-focus);
}

.micd-fieldset {
    padding: 0;
    border: 0;
}

.micd-help {
    margin: -0.15rem 0 0.8rem;
    font-size: 0.95rem;
    color: #6b7280;
}

.micd-options-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.micd-check,
.micd-privacy {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    font-size: 1rem;
    line-height: 1.45;
}

.micd-check {
    align-items: center;
    padding: 0.75rem 0.9rem;
    border: 1px solid var(--micd-border);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 2px rgba(31, 41, 55, 0.05);
}

.micd-check input,
.micd-privacy input {
    margin-top: 0.2rem;
    min-width: 18px;
    min-height: 18px;
}

.micd-submit {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 52px;
    border: 1px solid #ffffff;
    border-radius: 20px;
    background: #503AA8;
    color: #fff;
    font-weight: 300;
    letter-spacing: 0.2px;
    font-size: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.196), 1.125rem);
    cursor: pointer;
    box-shadow: 0 2px 2px #0d131e1a;
    transition: transform 0.350s ease, box-shadow 0.350s ease, background 0.350s ease;
}

.micd-submit:hover,
.micd-submit:focus {
    background: #503AA8;
    border-color: transparent;
    box-shadow: 0 2px 2px #0d131e1a;
}

.micd-form-notice {
    max-width: 560px;
    margin: 0 auto 1.5rem;
    padding: 1rem 1.15rem;
    border-radius: 10px;
    font-weight: 600;
}

.micd-form-success {
    border: 1px solid rgba(19, 121, 91, 0.25);
    background: rgba(19, 121, 91, 0.08);
    color: var(--micd-success);
}

.micd-form-error {
    border: 1px solid rgba(180, 35, 24, 0.25);
    background: rgba(180, 35, 24, 0.08);
    color: var(--micd-error);
}

.micd-honeypot {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

@media (max-width: 600px) {
    .micd-form {
        max-width: 100%;
    }

    .micd-options-grid {
        grid-template-columns: 1fr;
    }

    .micd-field,
    .micd-fieldset,
    .micd-privacy {
        margin-bottom: 1.45rem;
    }
}
.micd-privacy-info {
    margin: 0 0 0.85rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--micd-border);
    border-radius: 10px;
    background: rgba(80, 58, 168, 0.035);
    color: #6b7280;
    font-size: 0.92rem;
    line-height: 1.45;
}

.micd-submit-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 1.25rem;
}

.micd-submit-row .micd-submit {
    width: auto;
    min-width: 190px;
    padding-left: 1.6rem;
    padding-right: 1.6rem;
}

.micd-submit-row .cf-turnstile {
    margin-left: auto;
}

@media (max-width: 600px) {
    .micd-submit-row {
        align-items: flex-start;
    }

    .micd-submit-row .micd-submit {
        width: 100%;
    }

    .micd-submit-row .cf-turnstile {
        margin-left: 0;
        max-width: 100%;
    }
}


.micd-field-error {
    margin-top: 0.45rem;
    color: var(--micd-error);
    font-size: 0.95rem;
    line-height: 1.35;
    font-weight: 500;
}

.micd-has-error input,
.micd-has-error textarea,
.micd-has-error.micd-fieldset .micd-check,
.micd-privacy.micd-has-error {
    border-color: rgba(180, 35, 24, 0.65);
}

.micd-privacy .micd-field-error {
    flex-basis: 100%;
    margin-left: calc(18px + 0.55rem);
}
