.fud-nps-shell,
.fud-nps-shell * { box-sizing: border-box; }

.fud-nps-shell {
    --fud-nps-primary: #c9d83e;
    --fud-nps-accent: #111111;
    --fud-nps-bg: #ffffff;
    --fud-nps-surface: #ffffff;
    --fud-nps-surface-soft: #fbfbfa;
    --fud-nps-line: #e5e5e1;
    --fud-nps-line-strong: #d6d6d1;
    --fud-nps-muted: #6d6f6a;
    --fud-nps-text: #171915;
    --fud-nps-danger: #b42318;
    position: relative;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 20px clamp(12px, 1.8vw, 22px);
    overflow: hidden;
    background: #ffffff;
    color: var(--fud-nps-text);
    font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 14px;
    line-height: 1.5;
}

.fud-nps-card {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    overflow: hidden;
    background: rgba(255, 255, 255, .98);
    border: 1px solid rgba(17, 17, 17, .06);
    border-radius: 5px;
    box-shadow: 0 24px 72px rgba(16, 24, 40, .10);
}

.fud-nps-logo-wrap {
    padding: 22px 34px 8px;
    text-align: center;
}

.fud-nps-logo {
    display: block;
    width: min(100%, 460px);
    height: auto;
    margin: 0 auto;
}

.fud-nps-header {
    padding: 8px 34px 22px;
    text-align: center;
}

.fud-nps-eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 6px 13px;
    border: 1px solid rgba(148, 164, 16, .24);
    border-radius: 999px;
    background: rgba(201, 216, 62, .16);
    color: #535b00;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.fud-nps-header h1 {
    margin: 12px 0 6px;
    color: #101210;
    font-size: clamp(30px, 3.4vw, 48px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -.04em;
}

.fud-nps-header p {
    max-width: 760px;
    margin: 0 auto;
    color: var(--fud-nps-muted);
    font-size: 13px;
}

.fud-nps-form {
    display: block;
    padding: 18px clamp(14px, 2vw, 28px) 28px;
    background: #ffffff;
    border-top: 1px solid var(--fud-nps-line);
}

.fud-nps-section {
    position: relative;
    min-width: 0;
    padding: 20px clamp(18px, 2.2vw, 30px);
    border: 1px solid var(--fud-nps-line);
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(16, 24, 40, .035);
}

.fud-nps-form > .fud-nps-section + .fud-nps-section { margin-top: 14px; }

.fud-nps-section--score {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(255, 255, 255, .99)),
        radial-gradient(circle at top left, rgba(201, 216, 62, .22), transparent 46%);
}

.fud-nps-section-heading {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 12px;
    align-items: start;
    margin-bottom: 16px;
}

.fud-nps-step {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border-radius: 5px;
    background: linear-gradient(180deg, #d9e75d 0%, var(--fud-nps-primary) 100%);
    color: #111411;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    box-shadow: 0 9px 18px rgba(145, 160, 20, .18);
}

.fud-nps-section-heading h2 {
    margin: 0 0 2px;
    color: #181b18;
    font-size: clamp(18px, 1.6vw, 24px);
    font-weight: 700;
    line-height: 1.14;
    letter-spacing: -.02em;
}

.fud-nps-section-heading p {
    margin: 0;
    color: var(--fud-nps-muted);
    font-size: 11px;
    line-height: 1.4;
}

.fud-nps-feedback-question h2,
.fud-nps-feedback-question p {
    transition: opacity .16s ease;
}

.fud-nps-score-fieldset,
.fud-nps-choice-card,
.fud-nps-rating-row {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.fud-nps-scale-labels {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin: 0 2px 8px;
    color: var(--fud-nps-muted);
    font-size: 10px;
    font-weight: 700;
}

.fud-nps-score-grid {
    display: grid;
    grid-template-columns: repeat(11, minmax(0, 1fr));
    gap: 8px;
}

.fud-nps-score-option,
.fud-nps-rating-option,
.fud-nps-segmented label { cursor: pointer; }

.fud-nps-score-option input,
.fud-nps-rating-option input,
.fud-nps-segmented input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.fud-nps-score-option span {
    display: grid;
    min-height: 44px;
    place-items: center;
    border: 1px solid var(--fud-nps-line-strong);
    border-radius: 5px;
    background: #ffffff;
    color: #283025;
    font-size: 13px;
    font-weight: 800;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

.fud-nps-score-option.fud-nps-score-10 span { background: #69b67f; border-color: #69b67f; color: #103018; }
.fud-nps-score-option.fud-nps-score-9 span  { background: #80c08b; border-color: #80c08b; color: #13331b; }
.fud-nps-score-option.fud-nps-score-8 span  { background: #97ca97; border-color: #97ca97; color: #17351d; }
.fud-nps-score-option.fud-nps-score-7 span  { background: #afcfa8; border-color: #afcfa8; color: #203326; }
.fud-nps-score-option.fud-nps-score-6 span  { background: #c3d0c5; border-color: #c3d0c5; color: #2f3731; }
.fud-nps-score-option.fud-nps-score-5 span  { background: #d4c7c6; border-color: #d4c7c6; color: #3d3030; }
.fud-nps-score-option.fud-nps-score-4 span  { background: #d9b7b7; border-color: #d9b7b7; color: #412c2c; }
.fud-nps-score-option.fud-nps-score-3 span  { background: #e0a5a5; border-color: #e0a5a5; color: #4a2626; }
.fud-nps-score-option.fud-nps-score-2 span  { background: #e98f8f; border-color: #e98f8f; color: #531d1d; }
.fud-nps-score-option.fud-nps-score-1 span  { background: #f17f7f; border-color: #f17f7f; color: #5b1717; }
.fud-nps-score-option.fud-nps-score-0 span  { background: #f56f6f; border-color: #f56f6f; color: #601212; }

.fud-nps-score-option input:checked + span {
    box-shadow: inset 0 0 0 1px rgba(17, 17, 17, .30), 0 7px 15px rgba(16, 24, 40, .12);
    transform: translateY(-1px);
}

.fud-nps-score-option:hover span,
.fud-nps-rating-option:hover span,
.fud-nps-segmented label:hover span {
    transform: translateY(-1px);
    box-shadow: 0 7px 15px rgba(16, 24, 40, .07);
}

.fud-nps-score-option input:focus-visible + span,
.fud-nps-rating-option input:focus-visible + span,
.fud-nps-segmented input:focus-visible + span {
    outline: 3px solid rgba(201, 216, 62, .34);
    outline-offset: 2px;
}

.fud-nps-segmented input:checked + span {
    border-color: #a9b914;
    background: linear-gradient(180deg, #dbe962 0%, var(--fud-nps-primary) 100%);
    color: #111411;
    box-shadow: 0 9px 19px rgba(145, 160, 20, .22);
}

/* Breite, ruhige Bewertungsmatrix */
.fud-nps-rating-list {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--fud-nps-line);
    border-radius: 5px;
    background: #ffffff;
}

.fud-nps-rating-header,
.fud-nps-rating-row {
    display: grid;
    grid-template-columns: minmax(220px, 1.55fr) repeat(4, minmax(130px, 1fr));
    align-items: stretch;
}

.fud-nps-rating-header {
    min-height: 46px;
    background: #f4f7f1;
    border-bottom: 1px solid var(--fud-nps-line);
}

.fud-nps-rating-header > span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 12px;
    color: #4c5549;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
}

.fud-nps-rating-header > span:first-child {
    justify-content: flex-start;
    padding-left: 18px;
    color: #252a24;
}

.fud-nps-rating-header small {
    display: inline-grid;
    width: 21px;
    height: 21px;
    place-items: center;
    border-radius: 999px;
    background: rgba(17, 17, 17, .06);
    font-size: 9px;
}

.fud-nps-rating-row {
    min-height: 58px;
    background: #ffffff;
}

.fud-nps-rating-row:nth-child(odd) {
    background: #fbfcfa;
}

.fud-nps-rating-row + .fud-nps-rating-row {
    border-top: 1px solid var(--fud-nps-line);
}

.fud-nps-rating-label {
    display: flex;
    align-items: center;
    padding: 12px 18px;
    color: #20251f;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.3;
}

.fud-nps-rating-option {
    position: relative;
    min-width: 0;
    cursor: pointer;
    border-left: 1px solid var(--fud-nps-line);
}

.fud-nps-rating-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.fud-nps-rating-option span {
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 58px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 10px;
    background: transparent;
    color: #30362e;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}

.fud-nps-rating-option span i {
    display: block;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    border: 1.5px solid #aeb8a9;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: inset 0 0 0 4px #ffffff;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.fud-nps-rating-option span b {
    display: none;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.15;
}

.fud-nps-rating-option span small {
    color: #596256;
    font-size: 10px;
    font-weight: 800;
}

.fud-nps-rating-option:hover span {
    transform: none;
    border-color: transparent;
    background: #f2f6ef;
    box-shadow: none;
}

.fud-nps-rating-option input:focus-visible + span {
    position: relative;
    z-index: 2;
    outline: 3px solid rgba(201, 216, 62, .38);
    outline-offset: -3px;
}

.fud-nps-rating-option input:checked + span {
    position: relative;
    z-index: 1;
    background: linear-gradient(180deg, #edf49e 0%, var(--fud-nps-primary) 100%);
    color: #111411;
    box-shadow: inset 0 0 0 1px rgba(151, 166, 18, .32);
}

.fud-nps-rating-option input:checked + span i {
    border-color: #697500;
    background: #697500;
    box-shadow: inset 0 0 0 4px var(--fud-nps-primary);
}

.fud-nps-rating-option input:checked + span small {
    color: #111411;
}

.fud-nps-form select,
.fud-nps-form input[type="text"],
.fud-nps-form input[type="email"],
.fud-nps-form textarea {
    width: 100%;
    margin: 0;
    border: 1px solid #d3d9d0;
    border-radius: 5px;
    background: #ffffff;
    color: var(--fud-nps-text);
    font-family: inherit;
    font-size: 12px;
    outline: none;
    transition: border-color .16s ease, box-shadow .16s ease;
}

.fud-nps-form select,
.fud-nps-form input[type="text"],
.fud-nps-form input[type="email"] {
    min-height: 44px;
    padding: 0 12px;
}

.fud-nps-form textarea {
    min-height: 110px;
    padding: 12px 14px;
    resize: vertical;
}

.fud-nps-form input::placeholder,
.fud-nps-form textarea::placeholder {
    color: #a7aaa3;
    opacity: 1;
}

.fud-nps-form input:focus::placeholder,
.fud-nps-form textarea:focus::placeholder {
    color: transparent;
}

.fud-nps-form select:focus,
.fud-nps-form input:focus,
.fud-nps-form textarea:focus {
    border-color: #9ba919;
    box-shadow: 0 0 0 4px rgba(201, 216, 62, .18);
}

.fud-nps-form [aria-invalid="true"] {
    border-color: var(--fud-nps-danger) !important;
    box-shadow: 0 0 0 4px rgba(180, 35, 24, .09) !important;
}

.fud-nps-two-columns,
.fud-nps-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.fud-nps-choice-card {
    padding: 14px;
    border: 1px solid var(--fud-nps-line);
    border-radius: 5px;
    background: #fbfbfa;
}

.fud-nps-choice-card legend {
    margin: 0 0 8px;
    padding: 0;
    color: #272c26;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.35;
}

.fud-nps-segmented {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.fud-nps-segmented span {
    display: grid;
    min-height: 38px;
    place-items: center;
    border: 1px solid var(--fud-nps-line-strong);
    border-radius: 5px;
    background: #ffffff;
    color: #262b25;
    font-size: 11px;
    font-weight: 800;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease, color .16s ease;
}

.fud-nps-shop-link {
    display: inline-flex;
    width: auto;
    align-items: center;
    justify-content: flex-start;
    gap: 7px;
    margin-top: 16px;
    margin-left: 14px;
    color: #667000;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
    text-decoration: none;
}
.fud-nps-shop-link:hover { color: #333800; }

.fud-nps-section--raffle {
    position: relative;
    overflow: hidden;
    padding: 20px clamp(18px, 2.2vw, 30px);
    border: 1px solid var(--fud-nps-line);
    background: #ffffff;
    color: var(--fud-nps-text);
    box-shadow: 0 10px 24px rgba(16, 24, 40, .035);
}

.fud-nps-raffle-topline {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--fud-nps-primary), rgba(201, 216, 62, .14));
}

.fud-nps-section--raffle .fud-nps-section-heading {
    margin-bottom: 18px;
}

.fud-nps-section--raffle .fud-nps-section-heading h2,
.fud-nps-section--raffle .fud-nps-choice-card legend {
    color: #181b18;
}

.fud-nps-section--raffle .fud-nps-section-heading p {
    color: var(--fud-nps-muted);
}

.fud-nps-raffle-eyebrow {
    display: inline-block;
    margin: 0 0 5px;
    color: #667000;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.fud-nps-raffle-choice-wrap {
    display: block;
    padding: 14px;
    border: 1px solid var(--fud-nps-line);
    border-radius: 5px;
    background: #fbfbfa;
}

.fud-nps-section--raffle .fud-nps-choice-card {
    display: grid;
    grid-template-columns: minmax(180px, .8fr) minmax(320px, 1.2fr);
    gap: 14px;
    align-items: center;
    width: 100%;
    max-width: none;
    padding: 0;
    border: 0;
    background: transparent;
}

.fud-nps-section--raffle .fud-nps-choice-card legend {
    margin: 0;
    font-size: 11px;
    line-height: 1.35;
}

.fud-nps-section--raffle .fud-nps-segmented {
    gap: 8px;
}

.fud-nps-section--raffle .fud-nps-segmented span {
    min-height: 44px;
    border-color: var(--fud-nps-line-strong);
    border-radius: 5px;
    background: #ffffff;
    color: #262b25;
    font-size: 11px;
}

.fud-nps-section--raffle .fud-nps-segmented label:hover span {
    border-color: #a8b39f;
    background: #f7f9f5;
}

.fud-nps-section--raffle .fud-nps-segmented input:checked + span {
    border-color: #a9b914;
    background: linear-gradient(180deg, #dbe962 0%, var(--fud-nps-primary) 100%);
    color: #111411;
    box-shadow: 0 9px 19px rgba(145, 160, 20, .16);
}

.fud-nps-raffle-choice-note {
    display: flex;
    max-width: 270px;
    margin: 0;
    align-items: center;
    gap: 8px;
    color: var(--fud-nps-muted);
    font-size: 9px;
    line-height: 1.45;
}

.fud-nps-raffle-choice-note > span {
    display: grid;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    place-items: center;
    border-radius: 50%;
    background: rgba(201, 216, 62, .14);
    color: #667000;
    font-size: 11px;
    font-weight: 900;
}

.fud-nps-raffle-prize-card {
    margin-top: 14px;
    padding: 10px;
    border: 1px solid var(--fud-nps-line);
    border-radius: 5px;
    background: #fbfbfa;
}

.fud-nps-raffle-prize-head {
    display: flex;
    min-height: 44px;
    padding: 3px 8px 11px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.fud-nps-raffle-prize-head > div {
    display: grid;
    gap: 1px;
}

.fud-nps-raffle-prize-head span {
    color: #7b8378;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.fud-nps-raffle-prize-head strong {
    color: #181b18;
    font-size: 12px;
    font-weight: 700;
}

.fud-nps-raffle-prize-head .fud-nps-raffle-prize-badge {
    display: inline-flex;
    min-height: 28px;
    padding: 0 11px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(201, 216, 62, .35);
    border-radius: 999px;
    background: rgba(201, 216, 62, .14);
    color: #667000;
    letter-spacing: .10em;
}

.fud-nps-raffle-image-wrap {
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, .08);
    border-radius: 5px;
    background: #ffffff;
    box-shadow: none;
}

.fud-nps-raffle-image-wrap img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 230px;
    object-fit: contain;
}

.fud-nps-fields label:first-child { grid-column: 1 / -1; }

.fud-nps-fields label > span {
    display: block;
    margin-bottom: 5px;
    color: #242924;
    font-size: 11px;
    font-weight: 800;
}

.fud-nps-fields em,
.fud-nps-consent strong {
    color: var(--fud-nps-danger);
    font-style: normal;
}

.fud-nps-fields small {
    color: var(--fud-nps-muted);
    font-weight: 500;
}

.fud-nps-section--privacy { background: #fbfbfa; }

.fud-nps-consent {
    display: grid;
    grid-template-columns: 18px 1fr;
    gap: 10px;
    align-items: start;
    cursor: pointer;
}

.fud-nps-consent input {
    width: 17px;
    height: 17px;
    margin: 2px 0 0;
    accent-color: #94a20f;
}

.fud-nps-consent span {
    color: #4c534a;
    font-size: 10px;
    line-height: 1.6;
}

.fud-nps-form-status {
    min-height: 18px;
    margin: 14px 0 6px;
    color: #556000;
    font-size: 11px;
    font-weight: 700;
    text-align: center;
}
.fud-nps-form-status.is-error { color: var(--fud-nps-danger); }

.fud-nps-submit {
    display: flex;
    width: 100%;
    min-height: 50px;
    margin: 0;
    padding: 0 20px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid #aab91c;
    border-radius: 5px;
    background: linear-gradient(180deg, #dce965 0%, var(--fud-nps-primary) 100%);
    color: #111411;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 12px 24px rgba(145, 160, 20, .20);
    transition: transform .16s ease, box-shadow .16s ease, opacity .16s ease;
}
.fud-nps-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 28px rgba(145, 160, 20, .26);
}
.fud-nps-submit:disabled {
    cursor: wait;
    opacity: .68;
    transform: none;
}
.fud-nps-submit svg {
    width: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.fud-nps-field-error {
    display: none;
    margin: 6px 0 0;
    color: var(--fud-nps-danger);
    font-size: 10px;
    font-weight: 700;
}
.fud-nps-field-error.is-visible { display: block; }

.fud-nps-success {
    padding: 52px 20px;
    text-align: center;
}
.fud-nps-success-icon {
    display: grid;
    width: 60px;
    height: 60px;
    margin: 0 auto 16px;
    place-items: center;
    border-radius: 50%;
    background: var(--fud-nps-primary);
    color: #111411;
    font-size: 28px;
    font-weight: 900;
}
.fud-nps-success h2 { margin: 0 0 6px; font-size: 25px; }
.fud-nps-success p { margin: 0; color: var(--fud-nps-muted); font-size: 12px; }

.fud-nps-notice {
    margin: 0 24px 24px;
    padding: 14px 16px;
    border: 1px solid rgba(147, 162, 24, .20);
    border-radius: 5px;
    background: #f8f9eb;
    color: #414900;
    font-size: 12px;
}
.fud-nps-notice strong,
.fud-nps-notice span { display: block; }

.fud-nps-footer {
    padding: 14px 20px;
    border-top: 1px solid var(--fud-nps-line);
    color: #878d84;
    font-size: 9px;
    text-align: center;
}

.fud-nps-honeypot {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.fud-nps-shell .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (max-width: 980px) {
    .fud-nps-raffle-choice-wrap {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .fud-nps-raffle-choice-note {
        max-width: none;
    }
}

@media (max-width: 1080px) {
    .fud-nps-rating-header,
    .fud-nps-rating-row {
        grid-template-columns: minmax(180px, 1.3fr) repeat(4, minmax(100px, 1fr));
    }

    .fud-nps-rating-header > span,
    .fud-nps-rating-option span {
        padding-left: 7px;
        padding-right: 7px;
    }
}

@media (max-width: 820px) {
    .fud-nps-two-columns,
    .fud-nps-fields { grid-template-columns: 1fr; }

    .fud-nps-rating-header { display: none; }

    .fud-nps-rating-row {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        padding: 12px;
        gap: 7px;
    }

    .fud-nps-rating-label {
        grid-column: 1 / -1;
        min-height: auto;
        padding: 0 2px 4px;
        font-size: 12px;
    }

    .fud-nps-rating-option {
        border: 0;
    }

    .fud-nps-rating-option span {
        min-height: 50px;
        flex-direction: column;
        gap: 2px;
        padding: 7px 4px;
        border: 1px solid var(--fud-nps-line-strong);
        border-radius: 5px;
        background: #ffffff;
    }

    .fud-nps-rating-option span i { display: none; }
    .fud-nps-rating-option span b { display: block; }
}

@media (max-width: 700px) {
    .fud-nps-section--raffle {
        padding: 18px;
    }

    .fud-nps-raffle-topline {
        left: 18px;
        right: 18px;
    }

    .fud-nps-section--raffle .fud-nps-choice-card {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .fud-nps-raffle-prize-head {
        align-items: flex-start;
    }
    .fud-nps-shell {
        width: 100% !important;
        margin-left: 0 !important;
        padding: 0;
        background: #ffffff;
    }

    .fud-nps-card {
        max-width: none;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .fud-nps-logo-wrap { padding: 20px 18px 8px; }
    .fud-nps-header { padding: 6px 18px 20px; }
    .fud-nps-form { padding: 12px; }
    .fud-nps-section { padding: 18px; }
    .fud-nps-score-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .fud-nps-raffle-image-wrap img { max-height: 220px; }
}

@media (max-width: 520px) {
    .fud-nps-section-heading { grid-template-columns: 34px 1fr; gap: 10px; }
    .fud-nps-step { width: 34px; height: 34px; }
    .fud-nps-score-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }

    .fud-nps-rating-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fud-nps-rating-option span {
        min-height: 48px;
    }
}

.fud-nps-notice--error {
    border-color: rgba(180, 35, 24, .22);
    background: #fff5f4;
    color: #8f1f17;
}
