.rq-widget {
    --rq-yellow: var(--udp-yellow, #FFC300);
    --rq-ink: var(--udp-ink, #14171A);
    --rq-steel: var(--udp-steel, #3D4247);
    --rq-alloy: var(--udp-alloy, #EDEBE6);
    --rq-font-display: var(--udp-font-display, 'Oswald', sans-serif);
    --rq-font-body: var(--udp-font-body, 'Inter', sans-serif);

    font-family: var(--rq-font-body);
    color: var(--rq-steel);
    max-width: 720px;
}

.rq-title {
    font-family: var(--rq-font-display);
    text-transform: uppercase;
    font-size: 24px;
    color: var(--rq-ink);
    margin: 0 0 8px;
}
.rq-intro {
    font-size: 14px;
    color: var(--rq-steel);
    margin: 0 0 20px;
}

.rq-admin-notice {
    background: #FFF3CD;
    border: 1px solid #E0A800;
    color: #5A4400;
    padding: 12px 16px;
    border-radius: 3px;
    font-size: 13px;
}

.rq-honeypot { display: none !important; }

.rq-field-group { margin-bottom: 16px; flex: 1; }
.rq-field-row { display: flex; gap: 14px; flex-wrap: wrap; }
.rq-field-row .rq-field-group { min-width: 180px; }

.rq-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--rq-ink);
    margin-bottom: 6px;
}

.rq-input, .rq-select, .rq-textarea {
    width: 100%;
    box-sizing: border-box;
    font-family: var(--rq-font-body);
    font-size: 14px;
    padding: 11px 12px;
    border: 1px solid #DCD8D0;
    border-radius: 3px;
    background: #fff;
    color: var(--rq-ink);
}
.rq-textarea { resize: vertical; font-family: inherit; }
.rq-select:disabled { background: #F1EFE8; color: #888780; }

.rq-category-tabs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.rq-cat-btn {
    font-family: var(--rq-font-display);
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.03em;
    background: #fff;
    color: var(--rq-steel);
    border: 2px solid #DCD8D0;
    padding: 10px 20px;
    border-radius: 3px;
    cursor: pointer;
    transition: all 0.15s ease;
}
.rq-cat-btn:hover { border-color: var(--rq-yellow); }
.rq-cat-btn.is-active {
    background: var(--rq-yellow);
    border-color: var(--rq-yellow);
    color: #fff;
}

.rq-cascade-fields {
    background: var(--rq-alloy);
    border-left: 4px solid var(--rq-yellow);
    border-radius: 3px;
    padding: 16px 16px 2px;
    margin-bottom: 16px;
}
.rq-cascade-fields[hidden] { display: none; }

.rq-section-divider {
    font-family: var(--rq-font-display);
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: var(--rq-ink);
    border-top: 1px solid #DCD8D0;
    padding-top: 16px;
    margin: 8px 0 16px;
}

.rq-submit-btn {
    font-family: var(--rq-font-display);
    text-transform: uppercase;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.04em;
    background: var(--rq-yellow);
    color: #fff;
    border: none;
    padding: 14px 32px;
    border-radius: 3px;
    cursor: pointer;
    transition: background 0.15s ease;
}
.rq-submit-btn:hover { background: #E0A800; }

.rq-form-success, .rq-form-error {
    padding: 14px 16px;
    border-radius: 3px;
    font-size: 14px;
    margin-bottom: 16px;
}
.rq-form-success { background: #E6F5EA; border: 1px solid #3B9E52; color: #1E5C2E; }
.rq-form-error { background: #FCEBEB; border: 1px solid #E24B4A; color: #791F1F; }

@media (max-width: 560px) {
    .rq-field-row { flex-direction: column; gap: 0; }
}
