/*
 * Dayalogs admin and survey-runtime styles.
 *
 * Shared design tokens (colors, typography, radii, shadows) live in
 * dayalogs-tokens.css and MUST be linked before this file.
 */
/*
 * Dayalogs scoped respondent survey theme.
 *
 * Keep survey presentation variables on .dy-survey so client-level overrides can
 * brand the renderer without leaking into the admin shell or public chrome.
 */
.dy-survey {
    --dayalogs-survey-bg: var(--dayalogs-bg-public, #fbfaf7);
    --dayalogs-survey-surface: var(--dayalogs-surface-elev, #ffffff);
    --dayalogs-survey-ink: var(--dayalogs-text-strong, #352f2b);
    --dayalogs-survey-ink-2: var(--dayalogs-text, #6E6259);
    --dayalogs-survey-muted: var(--dayalogs-muted, #8b8377);
    --dayalogs-survey-rule: var(--dayalogs-rule, #dfe4e2);
    --dayalogs-survey-primary: var(--dayalogs-primary, #6E6259);
    --dayalogs-survey-primary-hover: var(--dayalogs-text-strong, #352f2b);
    --dayalogs-survey-primary-ink: var(--dayalogs-survey-bg);
    --dayalogs-survey-primary-soft: var(--dayalogs-primary-soft, rgba(110, 98, 89, 0.14));
    --dayalogs-survey-accent: var(--dayalogs-accent, #c7a15b);
    --dayalogs-survey-warn: var(--dayalogs-warn-public, #b14d42);
    --dayalogs-survey-font: var(--dayalogs-font-sans, "Inter", ui-sans-serif, system-ui, sans-serif);
    --dayalogs-survey-font-mono: var(--dayalogs-font-mono, "SFMono-Regular", Consolas, monospace);
    --dayalogs-survey-control-radius: 0;
    --dayalogs-survey-accent-edge: 0;
    --dayalogs-survey-gutter: var(--dayalogs-gutter, clamp(18px, 4vw, 48px));
    --dayalogs-survey-maxw: var(--dayalogs-maxw, 1180px);
    --dayalogs-survey-maxw-narrow: var(--dayalogs-maxw-narrow, 860px);

    --bg: var(--dayalogs-survey-bg);
    --bg-elev: var(--dayalogs-survey-surface);
    --brand: var(--dayalogs-survey-primary);
    --ink: var(--dayalogs-survey-ink);
    --ink-2: var(--dayalogs-survey-ink-2);
    --muted: var(--dayalogs-survey-muted);
    --rule: var(--dayalogs-survey-rule);
    --primary: var(--dayalogs-survey-primary);
    --primary-soft: var(--dayalogs-survey-primary-soft);
    --accent: var(--dayalogs-survey-accent);
    --warn: var(--dayalogs-survey-warn);
    --gutter: var(--dayalogs-survey-gutter);
    --maxw: var(--dayalogs-survey-maxw);
    --maxw-narrow: var(--dayalogs-survey-maxw-narrow);
    --font-sans: var(--dayalogs-survey-font);
    --font-body: var(--dayalogs-survey-font);
    --font-mono: var(--dayalogs-survey-font-mono);

    background: var(--dayalogs-survey-bg);
    color: var(--dayalogs-survey-ink);
    font-family: var(--dayalogs-survey-font);
}

.dy-survey .btn-next,
.dy-survey .btn-back,
.dy-survey .q-text-input,
.dy-survey .q-email-input,
.dy-survey .q-file-input,
.dy-survey .q-textarea,
.dy-survey .q-other-text input,
.dy-survey .q-rank-other,
.dy-survey .q-scale-step,
.dy-survey .q-rank-item,
.dy-survey .q-rank-btn,
.dy-survey .q-rank-add,
.dy-survey .q-rank-remove {
    border-radius: var(--dayalogs-survey-control-radius);
}

.dy-survey .btn-next::before {
    display: none;
    width: 0;
}

.dy-survey .btn-next:hover {
    background: var(--dayalogs-survey-primary-hover);
    border-color: var(--dayalogs-survey-primary-hover);
}

.dy-survey .btn-next:active,
.dy-survey .btn-next.is-tapped {
    background: var(--dayalogs-survey-primary-hover);
    border-color: var(--dayalogs-survey-primary-hover);
}

.dy-survey .q-scale-step.selected,
.dy-survey .q-matrix-categorical .q-scale-row-cells .q-scale-step.selected {
    background: var(--dayalogs-survey-primary);
    border-color: var(--dayalogs-survey-primary);
    color: var(--dayalogs-survey-primary-ink);
}

.dy-survey .q-scale-rating .q-scale-rating-step.selected,
.dy-survey .q-scale-rating .q-scale-rating-step.is-filled,
.dy-survey .q-scale-rating .q-matrix-categorical .q-scale-row-cells .q-scale-rating-step.selected {
    background: transparent;
    border-color: transparent;
    color: var(--rating-current-color, var(--rating-selected-color, var(--dayalogs-survey-primary)));
}

.dy-survey .q-scale-rating .q-scale-rating-step:not(.is-filled) {
    background: transparent;
    border-color: transparent;
    color: var(--rating-current-color, var(--rating-unselected-color, var(--dayalogs-survey-muted)));
}

.dy-survey .q-matrix-categorical .q-scale-cell .q-scale-step.selected {
    background: transparent;
    border-color: transparent;
    color: var(--dayalogs-survey-ink);
}


html,
body {
    font-family: var(--dayalogs-font-sans, "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

body.bg-light {
    background: var(--dayalogs-bg) !important;
    color: var(--dayalogs-text);
}

.btn-primary {
    --bs-btn-bg: var(--dayalogs-primary);
    --bs-btn-border-color: var(--dayalogs-primary);
    --bs-btn-hover-bg: var(--dayalogs-primary-hover);
    --bs-btn-hover-border-color: var(--dayalogs-primary-hover);
    --bs-btn-focus-shadow-rgb: 209, 193, 179;
    --bs-btn-active-bg: var(--dayalogs-primary-hover);
    --bs-btn-active-border-color: var(--dayalogs-primary-hover);
}

.btn-outline-secondary,
.btn-outline-primary {
    --bs-btn-color: var(--dayalogs-text-strong);
    --bs-btn-border-color: var(--dayalogs-line);
    --bs-btn-hover-color: var(--dayalogs-text-strong);
    --bs-btn-hover-bg: var(--dayalogs-surface-active);
    --bs-btn-hover-border-color: var(--dayalogs-primary);
    --bs-btn-focus-shadow-rgb: 209, 193, 179;
    --bs-btn-active-color: var(--dayalogs-text-strong);
    --bs-btn-active-bg: var(--dayalogs-surface-active);
    --bs-btn-active-border-color: var(--dayalogs-primary);
}

.card {
    --bs-card-bg: var(--dayalogs-surface);
    --bs-card-border-color: var(--dayalogs-line);
}

.text-muted {
    color: var(--dayalogs-muted) !important;
}

img.logo-dashboard {
    width: 100%;
}

img.logo-seccio {
    width: 100px;
}

.dayalogs-page-logo {
    display: block;
    height: 42px;
    max-width: min(100%, 210px);
    width: auto;
}

.dayalogs-page-brand {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.dayalogs-public-page {
    min-height: 100%;
    background: var(--dayalogs-bg);
    color: var(--dayalogs-text);
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
}

.dayalogs-public-shell {
    min-height: 100%;
    padding: clamp(1.25rem, 4vw, 3.5rem);
    position: relative;
    z-index: 2;
}

.dayalogs-login-flow-bg {
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    position: fixed;
    z-index: 0;
}

.dayalogs-login-flow-bg::after {
    background:
        radial-gradient(circle at 62% 24%, rgba(209, 193, 179, 0.17), transparent 32%),
        radial-gradient(circle at 78% 76%, rgba(232, 217, 160, 0.11), transparent 35%);
    content: "";
    inset: 0;
    position: absolute;
}

.dayalogs-kicker {
    color: var(--dayalogs-muted);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1.2;
    margin-bottom: 0.65rem;
    text-transform: uppercase;
}

.dayalogs-page-title {
    color: var(--dayalogs-text-strong);
    font-size: clamp(2rem, 4vw, 4.1rem);
    font-weight: 700;
    letter-spacing: -0.055em;
    line-height: 0.98;
    margin: 0;
}

.dayalogs-page-title-sm {
    color: var(--dayalogs-text-strong);
    font-size: clamp(1.85rem, 3vw, 2.65rem);
    font-weight: 700;
    letter-spacing: -0.04em;
    line-height: 1.04;
    margin: 0;
}

.dayalogs-page-copy {
    color: var(--dayalogs-muted);
    font-size: clamp(1rem, 1.45vw, 1.18rem);
    line-height: 1.55;
    margin: 0;
    max-width: 47rem;
}

.dayalogs-btn {
    align-items: center;
    border: 1px solid var(--dayalogs-line);
    border-radius: 1.45rem;
    display: inline-flex;
    font-weight: 700;
    gap: 0.45rem;
    justify-content: center;
    line-height: 1;
    min-height: 2.45rem;
    padding: 0.72rem 1.25rem;
    text-decoration: none;
    transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.dayalogs-btn:hover {
    transform: translateY(-1px);
}

.dayalogs-btn-primary {
    background: var(--dayalogs-primary);
    border-color: var(--dayalogs-primary);
    color: #fff;
}

.dayalogs-btn-primary:hover,
.dayalogs-btn-primary:focus {
    background: var(--dayalogs-primary-hover);
    border-color: var(--dayalogs-primary-hover);
    color: #fff;
}

.dayalogs-btn-ghost {
    background: transparent;
    color: var(--dayalogs-text-strong);
}

.dayalogs-btn-ghost:hover,
.dayalogs-btn-ghost:focus {
    background: var(--dayalogs-surface-soft);
    border-color: var(--dayalogs-primary);
    color: var(--dayalogs-text-strong);
}

.dayalogs-field-label {
    color: var(--dayalogs-muted);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    margin-bottom: 0.4rem;
    text-transform: uppercase;
}

.dayalogs-form-control {
    background: #fff;
    border: 1px solid var(--dayalogs-line);
    border-radius: 0.85rem;
    color: var(--dayalogs-text-strong);
    min-height: 2.65rem;
}

.dayalogs-form-control:focus {
    background: #fff;
    border-color: var(--dayalogs-primary);
    box-shadow: var(--dayalogs-focus-ring, 0 0 0 0.2rem rgba(209, 193, 179, 0.22));
    color: var(--dayalogs-text-strong);
}

.dayalogs-alert {
    background: var(--dayalogs-danger-bg, #fdf1ee);
    border: 1px solid var(--dayalogs-danger-line, #f3cbc3);
    border-radius: 0.85rem;
    color: var(--dayalogs-danger-fg, #bd6a5e);
    margin-bottom: 1.25rem;
    padding: 0.85rem 1rem;
}

.dayalogs-login {
    align-items: center;
    display: grid;
    gap: clamp(2rem, 6vw, 5rem);
    grid-template-columns: minmax(0, 0.95fr) minmax(19rem, 25rem);
    margin: 0 auto;
    max-width: 980px;
    min-height: calc(100vh - clamp(2.5rem, 8vw, 7rem));
    position: relative;
    z-index: 2;
}

.dayalogs-login-intro {
    border-bottom: 1px solid var(--dayalogs-line);
    border-top: 1px solid var(--dayalogs-line);
    padding: clamp(2rem, 7vw, 5rem) 0;
}

.dayalogs-login-logo {
    display: block;
    height: auto;
    margin-bottom: 0.8rem;
    max-width: min(100%, 330px);
    width: 74%;
}

.dayalogs-login-intro .dayalogs-page-copy {
    margin-top: 1.15rem;
}

.dayalogs-login-form {
    border-left: 1px solid var(--dayalogs-line);
    padding-left: clamp(1.5rem, 4vw, 2.6rem);
}

.dayalogs-login-form-title {
    color: var(--dayalogs-text-strong);
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
}



@media (max-width: 767.98px) {
    .dayalogs-public-shell {
        padding: 1.25rem;
    }

    .dayalogs-login-flow-bg {
        display: none;
    }

    .dayalogs-login {
        display: block;
        min-height: auto;
    }

    .dayalogs-login-intro {
        padding: 2.75rem 0;
    }

    .dayalogs-login-form {
        border-left: 0;
        border-top: 1px solid var(--dayalogs-line);
        margin-top: 2rem;
        padding-left: 0;
        padding-top: 1.5rem;
    }
}

/* ==========================================================================
   Base topbar and account chrome
   Extracted from templates/base.html.twig
   ========================================================================== */
:root {
            /* Admin no longer renders a topbar: account/user controls live in the sidebar footer. */
            --dayalogs-topbar-height: 0px;
        }

        .dayalogs-topbar {
            background: var(--dayalogs-brand);
            color: var(--dayalogs-on-brand);
        }

        .dayalogs-topbar-inner {
            min-height: 2.55rem;
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.45rem;
            padding: 0.4rem 1.35rem;
            font-size: 0.84rem;
        }

        .dayalogs-topbar-button {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-on-brand);
            display: inline-flex;
            gap: 0.35rem;
            line-height: 1;
            min-height: 1.8rem;
            padding: 0.35rem 0.55rem;
        }

        .dayalogs-topbar-button:hover,
        .dayalogs-topbar-button:focus,
        .dayalogs-topbar-button.show {
            background: rgba(255, 255, 255, 0.12);
            color: #ffffff;
        }

        .dayalogs-topbar-inner > a {
            color: #eee6dc;
            text-decoration: underline;
            text-underline-offset: 0.2em;
            text-decoration-thickness: 1px;
        }

        .dayalogs-topbar-inner > a:hover {
            color: #ffffff;
        }

        .dayalogs-topbar-button i {
            font-size: 0.76rem;
            line-height: 1;
        }

        .dayalogs-topbar-dropdown {
            --bs-dropdown-bg: var(--dayalogs-surface);
            --bs-dropdown-border-color: var(--dayalogs-line);
            --bs-dropdown-link-color: var(--dayalogs-text-strong);
            --bs-dropdown-link-hover-bg: var(--dayalogs-surface-active);
            --bs-dropdown-link-hover-color: var(--dayalogs-text-strong);
            border-radius: var(--dayalogs-radius);
            box-shadow: var(--dayalogs-shadow-menu);
            min-width: 13rem;
            overflow: hidden;
            padding: 0.35rem;
        }

        .dayalogs-topbar-dropdown .dropdown-item {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0.6rem;
            display: flex;
            gap: 0.55rem;
            min-height: 2.1rem;
            padding: 0.42rem 0.6rem;
            text-align: left;
            width: 100%;
        }

        .dayalogs-topbar-dropdown a.dropdown-item {
            text-decoration: none;
        }

        .dayalogs-topbar-dropdown .dropdown-item.is-active {
            background: var(--dayalogs-surface-active);
            font-weight: 700;
        }

        .dayalogs-topbar-dropdown .dropdown-item:disabled {
            color: #a99d91;
            opacity: 0.78;
        }

        .dayalogs-topbar-dropdown small {
            color: var(--dayalogs-muted);
            display: block;
            font-size: 0.72rem;
            font-weight: 500;
            line-height: 1.1;
        }

        .dayalogs-topbar-language-row {
            align-items: center;
            color: var(--dayalogs-muted);
            display: flex;
            gap: 0.45rem;
            justify-content: space-between;
            padding: 0.45rem 0.6rem;
        }

        .dayalogs-topbar-language-links {
            display: inline-flex;
            gap: 0.22rem;
        }

        .dayalogs-topbar-language-links a {
            border-radius: 999px;
            color: var(--dayalogs-muted);
            font-size: 0.72rem;
            font-weight: 700;
            line-height: 1;
            min-width: 1.65rem;
            padding: 0.3rem 0.4rem;
            text-align: center;
            text-decoration: none;
        }

        .dayalogs-topbar-language-links a:hover,
        .dayalogs-topbar-language-links a.is-active {
            background: var(--dayalogs-surface-active);
            color: var(--dayalogs-text-strong);
        }

        @media (max-width: 767.98px) {
            .dayalogs-topbar-inner {
                min-height: auto;
                flex-wrap: wrap;
                justify-content: flex-end;
                gap: 0.45rem;
                padding: 0.45rem 0.85rem;
                font-size: 0.74rem;
            }
        }

/* ==========================================================================
   Survey respondent base chrome
   Extracted from templates/survey_base.html.twig
   ========================================================================== */
.dy-survey *, .dy-survey *::before, .dy-survey *::after { box-sizing: border-box; }
body.dy-survey {
      margin: 0;
      min-height: 100vh;
      padding-bottom: 32px;
      background: var(--bg);
      color: var(--ink);
      font-family: var(--font-sans);
      line-height: 1.5;
    }
.dy-survey a { color: inherit; }
.dy-survey h1, .dy-survey h2, .dy-survey h3, .dy-survey p { margin: 0; }
.dy-survey h1 {
      font-size: clamp(38px, 7vw, 82px);
      line-height: 0.98;
      font-weight: 650;
      letter-spacing: 0;
    }

    .dy-survey .lead {
      color: var(--ink-2);
      font-size: clamp(17px, 2vw, 22px);
      line-height: 1.55;
    }

    .dy-survey .eyebrow {
      display: inline-block;
      color: var(--primary);
      font-family: var(--font-mono);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .dy-survey .survey-header {
      height: 72px;
      position: sticky;
      top: 0;
      z-index: 60;
      background: rgba(251, 250, 247, 0.94);
      border-bottom: 1px solid var(--rule);
      backdrop-filter: blur(12px);
    }

    .dy-survey .survey-header__inner {
      height: 72px;
      max-width: var(--maxw);
      margin: 0 auto;
      padding: 0 var(--gutter);
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 18px;
    }

    .dy-survey .survey-brand {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
      color: var(--ink);
      line-height: 1;
      grid-column: 1;
      justify-self: start;
    }

    .dy-survey .survey-header--logo-center .survey-brand {
      grid-column: 2;
      justify-self: center;
    }

    .dy-survey .survey-header--logo-right .survey-brand {
      grid-column: 3;
      justify-self: end;
    }

    .dy-survey .survey-brand__logo {
      display: block;
      height: 34px;
      width: auto;
    }

    .dy-survey .survey-brand__logo--custom {
      height: auto;
      max-height: 42px;
      max-width: min(220px, 46vw);
      object-fit: contain;
    }

    .dy-survey .survey-footer {
      bottom: 0;
      height: 32px;
      left: 0;
      min-height: 32px;
      position: fixed;
      right: 0;
      z-index: 58;
      background: rgba(251, 250, 247, 0.96);
      border-top: 1px solid var(--rule);
      backdrop-filter: blur(10px);
    }

    .dy-survey .survey-footer__inner {
      height: 32px;
      min-height: 32px;
      margin: 0 auto;
      padding: 0 var(--gutter);
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      color: var(--ink-2);
      font-size: 11px;
      line-height: 1;
    }

    .dy-survey .survey-footer__locales,
    .dy-survey .survey-footer__actions {
      align-items: center;
      display: flex;
      gap: 10px;
      min-width: 0;
    }

    .dy-survey .survey-footer__locales {
      justify-content: flex-start;
    }

    .dy-survey .survey-footer__actions {
      justify-content: flex-end;
      white-space: nowrap;
    }

    .dy-survey .survey-footer__inner a {
      text-decoration: none;
      color: var(--ink-2);
    }

    .dy-survey .survey-footer__inner a:hover { color: var(--ink); }

    .dy-survey .locale-switcher {
      display: flex;
      align-items: center;
      gap: 4px;
      flex-wrap: wrap;
    }

    .dy-survey .locale-switcher a {
      padding: 2px 6px;
      border: 1px solid transparent;
      border-radius: 999px;
      font-family: var(--font-mono);
      font-size: 10px;
      text-decoration: none;
      text-transform: uppercase;
    }

    .dy-survey .locale-switcher a.active {
      border-color: var(--rule);
      background: var(--bg-elev);
      color: var(--ink);
    }

    @media (max-width: 720px) {
      .dy-survey .survey-header__inner { grid-template-columns: 1fr; }
      .dy-survey .survey-brand,
      .dy-survey .survey-header--logo-center .survey-brand,
      .dy-survey .survey-header--logo-right .survey-brand { grid-column: 1; }
      .dy-survey .survey-header--logo-center .survey-brand { justify-self: center; }
      .dy-survey .survey-header--logo-right .survey-brand { justify-self: end; }
      .dy-survey .survey-brand__logo { height: 30px; }
      .dy-survey .survey-brand__logo--custom { height: auto; max-height: 34px; max-width: min(210px, 72vw); }
      .dy-survey .survey-footer__inner { gap: 8px; }
      .dy-survey .survey-footer__actions { gap: 8px; }
    }

/* ==========================================================================
   Survey respondent runtime
   Extracted from templates/surveys/show.html.twig
   ========================================================================== */
.survey-shell { min-height: calc(100vh - 96px); display: flex; flex-direction: column; }

  .survey-progress {
    position: sticky; top: 72px; z-index: 40;
    background: var(--bg);
    padding: 0;
  }
  .survey-progress[hidden] { display: none; }
  .progress-track {
    height: 2px; background: var(--rule);
    position: relative; overflow: hidden;
  }
  .progress-track .bar {
    position: absolute; left: 0; top: 0; bottom: 0;
    background: var(--primary);
    transition: width .3s ease;
    width: 0;
  }

  .survey-screen {
    display: none; flex: 1;
    padding: clamp(28px, 4vh, 56px) var(--gutter) clamp(28px, 4vh, 48px);
  }
  .survey-screen:focus { outline: none; }
  .survey-screen.active { display: flex; flex-direction: column; }
  .survey-screen .inner {
    max-width: var(--maxw-narrow); margin: 0 auto; width: 100%;
    flex: 1; display: flex; flex-direction: column;
  }
  .dy-survey .survey-screen[data-screen="intro"] .inner {
    max-width: min(var(--maxw-narrow), 980px);
  }

  .intro-meta {
    display: flex; gap: 40px; flex-wrap: wrap; margin-top: clamp(42px, 5vh, 56px);
    font-family: var(--font-mono); font-size: 11px;
    letter-spacing: 0.16em; text-transform: uppercase; color: var(--muted);
  }
  .intro-meta strong {
    display: block; font-family: var(--font-sans);
    font-size: 15px; letter-spacing: 0; text-transform: none;
    color: var(--ink); margin-top: 5px; font-weight: 500;
  }

  .dy-survey .survey-intro-title,
  .dy-survey .preview-complete-title {
    font-size: clamp(44px, 7vw, 82px);
    line-height: 0.98;
    margin-top: clamp(28px, 3.2vh, 40px);
    max-width: 14ch;
  }

  .dy-survey .survey-intro-title {
    max-width: min(16ch, 100%);
  }

  .dy-survey .survey-intro-lead {
    margin-top: clamp(28px, 3.4vh, 42px);
    max-width: min(46ch, 100%);
  }

  .survey-intro-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: clamp(48px, 6vh, 64px);
  }

  .survey-runtime-notice {
    background: rgba(110, 98, 89, 0.08);
    border-radius: 14px;
    color: var(--fg);
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    padding: 12px 16px;
  }

  .survey-nav-arrow {
    font-size: 16px;
  }

  .survey-inactivity-overlay {
    align-items: center;
    background: rgba(31, 27, 24, 0.6);
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 24px;
    position: fixed;
    z-index: 60;
  }

  .survey-inactivity-overlay[hidden] {
    display: none;
  }

  .survey-inactivity-dialog {
    background: var(--bg, #fff);
    border-radius: 18px;
    box-shadow: 0 18px 48px rgba(31, 27, 24, 0.28);
    max-width: 420px;
    padding: 28px;
    text-align: center;
  }

  .survey-inactivity-dialog h2 {
    font-size: 22px;
    margin: 0 0 10px;
  }

  .survey-inactivity-dialog p {
    color: var(--fg);
    font-size: 15px;
    line-height: 1.55;
    margin: 0 0 8px;
  }

  .survey-inactivity-countdown {
    font-weight: 600;
  }

  .survey-inactivity-dialog .btn-next {
    margin-top: 14px;
  }

  .survey-intro-note {
    color: var(--muted);
    font-size: 13px;
    margin: 0;
    max-width: 36ch;
  }

  .dy-survey .preview-complete-lead {
    font-size: clamp(18px, 2vw, 24px);
    line-height: 1.45;
    margin-top: clamp(26px, 3vh, 36px);
    max-width: 50ch;
  }

  .q-text {
    font-size: clamp(18px, 2.2vw, 24px); font-weight: 500;
    color: var(--ink); line-height: 1.3; letter-spacing: -0.015em;
    max-width: 38ch; margin-bottom: 20px;
  }
  .q-options {
    column-count: var(--cols, 1);
    column-gap: 32px;
    margin-bottom: 24px;
  }
  @media (max-width: 720px) { .q-options { column-count: 1; } }
  .q-option {
    display: flex; align-items: flex-start; gap: 12px;
    padding: 8px 4px; border: none; background: transparent;
    cursor: pointer; font-size: 15px; color: var(--ink-2);
    line-height: 1.35; transition: color .12s; user-select: none;
    margin-bottom: 0.42rem;
    break-inside: avoid;
    overflow-wrap: anywhere;
  }
  .q-other-text { break-inside: avoid; }
  .q-option:hover { color: var(--ink); }
  .q-option.is-disabled {
    opacity: .45;
    cursor: not-allowed;
  }
  .q-option input { margin-top: 2px; flex-shrink: 0; accent-color: var(--primary); width: 15px; height: 15px; cursor: pointer; }
  .q-option.is-disabled input { cursor: not-allowed; }
  .q-option.selected { color: var(--ink); }
  .q-other-text { display: none; padding: 4px 0 10px 27px; }
  .q-other-text input {
    width: 100%; padding: 9px 12px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    font-family: var(--font-sans); font-size: 14px; color: var(--ink); border-radius: 0;
  }
  .q-other-text input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .q-textarea {
    width: 100%; padding: 12px 14px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    font-family: var(--font-sans); font-size: 15px; color: var(--ink);
    border-radius: 0; resize: vertical; min-height: 120px; margin-bottom: 24px;
  }
  .q-textarea:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .q-text-input {
    width: 100%; max-width: 440px; padding: 12px 14px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    font-family: var(--font-sans); font-size: 15px; color: var(--ink);
    border-radius: 0; margin-bottom: 24px;
  }
  .q-text-input.q-text-input-compact { max-width: 220px; }
  .q-text-input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .q-email-input {
    max-width: 360px; width: 100%; padding: 12px 14px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    font-family: var(--font-sans); font-size: 15px; color: var(--ink);
    border-radius: 0; margin-bottom: 10px;
  }
  .q-email-input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .q-file-input {
    width: 100%; max-width: 440px; padding: 10px 12px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    font-family: var(--font-sans); font-size: 15px; color: var(--ink);
    border-radius: 0; margin-bottom: 10px;
  }
  .q-file-input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .q-note { font-size: 13px; color: var(--muted); max-width: 44ch; margin-bottom: 24px; }
  .q-consent {
    display: flex; align-items: flex-start; gap: 10px;
    max-width: 48ch; margin-bottom: 24px;
  }
  .q-consent input {
    width: 16px; height: 16px; margin-top: 1px;
    accent-color: var(--primary); flex-shrink: 0;
  }
  .q-consent span {
    font-size: 13px; line-height: 1.45; color: var(--muted);
  }
  .q-consent a {
    color: var(--ink);
    text-decoration: underline;
    text-underline-offset: 2px;
  }
  .q-consent .privacy-inline-button {
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
  }
  .intro-privacy {
    flex-basis: 100%;
    margin-top: 6px;
  }
  .intro-privacy .q-consent {
    margin-bottom: 0;
  }

  .survey-nav {
    display: flex; align-items: center; gap: 14px;
    margin-top: 8px; padding-top: 16px;
  }
  .survey-nav.auto-advance-single .btn-next { display: none; }
  .survey-nav.auto-advance-single.needs-manual-next .btn-next { display: inline-flex; }
  .btn-back {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 13px 20px; font-size: 14px;
    border: 1px solid var(--rule); background: transparent; color: var(--ink-2);
    cursor: pointer; font-family: inherit; transition: border-color .15s, color .15s, background-color .15s, transform .12s;
    touch-action: manipulation; -webkit-tap-highlight-color: transparent;
  }
  .btn-back:hover { border-color: var(--ink); color: var(--ink); }
  .btn-back:active,
  .btn-back.is-tapped {
    border-color: var(--ink);
    color: var(--ink);
    background: rgba(13, 42, 58, 0.08);
    transform: translateY(1px);
  }
  .preview-back-bypass {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 0;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 3px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }
  .preview-back-bypass:hover { color: var(--ink); }
  .preview-back-bypass:active,
  .preview-back-bypass.is-tapped { transform: translateY(1px); }
  .preview-back-bypass-help {
    display: inline-flex;
    width: 16px;
    height: 16px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(110, 98, 89, 0.12);
    color: var(--muted);
    font-size: 10px;
    line-height: 1;
    text-decoration: none;
  }
  .btn-next {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 14px 26px; font-size: 14px; letter-spacing: 0.02em;
    border: 1px solid var(--primary); background: var(--primary); color: var(--bg);
    cursor: pointer; font-family: inherit; transition: background .15s, border-color .15s, transform .12s, filter .12s;
    position: relative;
    touch-action: manipulation; -webkit-tap-highlight-color: transparent; text-decoration: none;
  }
  .btn-next:visited { color: var(--bg); }
  .btn-next::before {
    content: none; display: none; width: 0;
  }
  .btn-next:hover,
  .btn-next:focus-visible {
    background: var(--ink);
    border-color: var(--ink);
    color: var(--bg) !important;
    text-decoration: none;
    -webkit-text-fill-color: var(--bg);
  }
  .btn-next:disabled,
  .btn-next:disabled:hover {
    background: var(--muted);
    border-color: var(--muted);
    color: var(--bg);
    cursor: not-allowed;
    filter: none;
    transform: none;
    opacity: 0.62;
  }
  .btn-next:active,
  .btn-next.is-tapped {
    background: #2a657f;
    border-color: #2a657f;
    color: var(--bg) !important;
    -webkit-text-fill-color: var(--bg);
    filter: brightness(1.04);
    transform: translateY(1px);
  }
  .q-error {
    display: block;
    font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em;
    text-transform: uppercase; color: var(--warn); margin-bottom: 12px;
    min-height: 1.35em;
    opacity: 0;
    visibility: hidden;
  }
  .q-error.visible {
    opacity: 1;
    visibility: visible;
  }

  .q-page-header {
    margin-bottom: 28px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--rule);
  }
  .q-page-header.has-media {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    column-gap: 18px;
    align-items: start;
  }
  .q-block-media {
    grid-row: 1 / span 4;
    width: var(--media-size, 84px);
    height: var(--media-size, 84px);
    border: 1px solid var(--rule);
    background: var(--bg-elev);
    object-fit: cover;
    flex-shrink: 0;
  }
  .q-block-title {
    margin: 0;
    max-width: 42ch;
    color: var(--ink);
    font-size: clamp(17px, 2vw, 21px);
    line-height: 1.25;
    font-weight: 600;
    white-space: pre-line;
  }
  .q-block-description {
    max-width: 58ch;
    margin: 8px 0 0;
    color: var(--ink-2);
    font-size: 14px;
    line-height: 1.45;
  }
  @media (max-width: 520px) {
    .q-page-header.has-media {
      grid-template-columns: 64px minmax(0, 1fr);
      column-gap: 14px;
    }
    .q-block-media {
      --media-size: 64px;
    }
  }
  .q-page-label {
    margin: 0;
    font-family: var(--font-mono);
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--muted);
  }
  .q-block-title + .q-page-label,
  .q-block-description + .q-page-label {
    margin-top: 14px;
  }
  .q-page-description {
    max-width: 58ch;
    margin: 8px 0 0;
    color: var(--ink-2);
    font-size: 14px;
    line-height: 1.45;
  }
  .q-group { margin-bottom: 28px; }
  .q-group:focus {
    outline: none;
  }
  .q-group:focus-visible {
    outline: 3px solid var(--primary-soft);
    outline-offset: 8px;
  }
  .q-group + .q-group {
    padding-top: 28px;
    border-top: 1px solid var(--rule);
  }
  .q-group[hidden] { display: none; }

  .q-scale {
    display: flex;
    flex-direction: column;
    margin-bottom: 24px;
    overflow: visible;
  }
  .q-choice-scroll-frame {
    position: relative;
    width: 100%;
    max-width: 100%;
  }
  .q-choice-scroll {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .q-choice-scroll::-webkit-scrollbar { display: none; }
  .q-choice-scroll-content {
    min-width: 100%;
    width: max-content;
  }
  .q-choice-scroll .q-scale-ladder {
    flex-wrap: nowrap;
    min-width: 100%;
    width: max-content;
  }
  .q-choice-scroll-arrow {
    align-items: center;
    background: var(--bg);
    border: 1px solid var(--rule);
    color: var(--ink-2);
    cursor: pointer;
    display: none;
    font-family: var(--font-mono);
    font-size: 18px;
    height: 30px;
    justify-content: center;
    line-height: 1;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    z-index: 2;
  }
  .q-choice-scroll-arrow-left { left: -40px; }
  .q-choice-scroll-arrow-right { right: -40px; }
  .q-choice-scroll-frame.has-overflow .q-choice-scroll-arrow { display: flex; }
  .q-choice-scroll-frame.at-start .q-choice-scroll-arrow-left,
  .q-choice-scroll-frame.at-end .q-choice-scroll-arrow-right {
    opacity: .25;
    pointer-events: none;
  }
  .q-scale-ladder {
    display: flex; flex-wrap: wrap; gap: 6px;
  }
  .q-scale-step {
    flex: 1 0 48px; min-width: 48px;
    display: flex; align-items: center; justify-content: center;
    padding: 10px 4px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    cursor: pointer; user-select: none;
    font-family: var(--font-mono); font-size: 13px; color: var(--ink-2);
    transition: border-color .12s, color .12s, background .12s;
    white-space: nowrap;
  }
  .q-scale-step input { position: absolute; opacity: 0; pointer-events: none; }
  .q-scale-step:hover { border-color: var(--ink); color: var(--ink); }
  .q-scale-step.is-disabled {
    opacity: .45;
    cursor: not-allowed;
  }
  .q-scale-step.is-disabled input { cursor: not-allowed; }
  .q-scale-step.selected {
    background: var(--primary); border-color: var(--primary); color: var(--bg);
  }
  .q-scale-rating .q-scale-ladder {
    align-items: center;
    gap: 10px;
  }
  .q-scale-rating-block {
    align-items: flex-start;
    display: inline-flex;
    flex-direction: column;
    max-width: 100%;
    width: fit-content;
  }
  .q-scale-rating-block .q-choice-scroll-frame {
    max-width: 100%;
    width: fit-content;
  }
  .q-scale-rating-block .q-choice-scroll,
  .q-scale-rating-block .q-choice-scroll-content {
    max-width: 100%;
    min-width: 0;
    width: max-content;
  }
  .q-scale-rating-block .q-choice-scroll .q-scale-ladder {
    min-width: 0;
    width: max-content;
  }
  .q-scale-rating-step {
    background: transparent;
    border-color: transparent;
    border-radius: 999px;
    color: var(--rating-current-color, var(--rating-unselected-color, var(--muted)));
    flex: 0 0 auto;
    min-width: 44px;
    padding: 6px;
  }
  .q-scale-rating-step:hover {
    background: transparent;
    border-color: transparent;
    color: var(--rating-selected-color, var(--primary));
  }
  .q-scale-rating-step.selected,
  .q-scale-rating-step.is-filled {
    background: transparent;
    border-color: transparent;
    color: var(--rating-current-color, var(--rating-selected-color, var(--primary)));
  }
  .q-scale-rating-step:not(.is-filled) {
    background: transparent;
    border-color: transparent;
    color: var(--rating-current-color, var(--rating-unselected-color, var(--muted)));
  }
  .q-rating-icon {
    color: inherit;
    display: inline-flex;
    height: 34px;
    line-height: 0;
    width: 34px;
  }
  .q-rating-svg {
    display: block;
    height: 100%;
    overflow: visible;
    width: 100%;
  }
  .q-rating-shape {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
  }
  .q-rating-eye {
    fill: currentColor;
    stroke: none;
  }
  .q-rating-selected-solid.is-filled .q-rating-shape,
  .q-rating-unselected-solid:not(.is-filled) .q-rating-shape {
    fill: currentColor;
    stroke: currentColor;
  }
  .q-rating-selected-outline.is-filled .q-rating-shape,
  .q-rating-unselected-outline:not(.is-filled) .q-rating-shape {
    fill: none;
    stroke: currentColor;
  }
  .q-rating-icon-smiley .q-rating-shape {
    fill: none !important;
    stroke: currentColor;
    stroke-width: 1.85;
  }
  .q-scale-rating-smiley .q-scale-rating-step:not(.is-filled) {
    color: var(--rating-unselected-color, var(--muted));
  }
  .q-scale-mh-rating {
    color: var(--muted);
  }
  .q-scale-mh-rating .q-rating-icon {
    color: var(--rating-selected-color, var(--muted));
    height: 22px;
    margin: 0 auto;
    opacity: .72;
    width: 22px;
  }
  .q-scale-step-special {
    font-family: var(--font-body);
    flex: 0 0 auto;
    min-width: max-content;
    padding-left: 12px;
    padding-right: 12px;
  }
  .q-scale-endpoints {
    display: flex; justify-content: space-between;
    font-family: var(--font-mono); font-size: 11px;
    letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted);
    margin-top: 8px;
  }
  .q-scale-rating-block .q-scale-endpoints {
    width: 100%;
  }

  /* Scale battery as a matrix: label column + small button per scale step */
  .q-scale-matrix {
    display: grid;
    grid-template-columns: var(--scale-columns, minmax(136px, 200px) repeat(var(--steps, 5), minmax(42px, 1fr)));
    width: 100%;
    min-width: 0;
    margin-bottom: 8px;
    border-top: 1px solid var(--rule);
  }
  .q-scale-matrix-row, .q-scale-row-cells { display: contents; }
  .q-scale-mh, .q-scale-mh-empty {
    border-bottom: 1px solid var(--rule);
    padding: 8px 2px;
  }
  .q-scale-mh {
    font-family: var(--font-mono); font-size: 11px;
    color: var(--muted); text-align: center; letter-spacing: 0.06em;
    white-space: nowrap;
  }
  .q-scale-rh {
    font-size: 14px; color: var(--ink); line-height: 1.35;
    padding: 11px 10px 11px 0;
    display: flex; align-items: center;
    border-bottom: 1px solid var(--rule);
    min-height: 48px;
  }
  .q-scale-cell {
    padding: 5px 2px;
    border-bottom: 1px solid var(--rule);
    display: flex; align-items: center; justify-content: center;
    min-height: 48px;
  }
  .q-scale-cell .q-scale-step {
    flex: none;
    width: auto; max-width: none; min-width: 42px;
    height: 30px;
    min-height: 30px;
    padding: 5px 0;
    font-size: 12px;
  }
  .q-scale-cell .q-scale-rating-step {
    height: 38px;
    min-height: 38px;
    min-width: 38px;
    padding: 4px;
    width: 38px;
  }
  .q-scale-cell .q-scale-rating-step .q-rating-icon {
    height: 28px;
    width: 28px;
  }
  .q-scale-cell .q-scale-step-special {
    min-width: max-content;
    padding-left: 6px;
    padding-right: 6px;
  }
  .q-scale-table {
    min-width: 100%;
    width: max-content;
  }
  .q-scale-table .q-scale-matrix,
  .q-scale-table .q-scale-foot,
  .q-choice-scroll-content > .q-scale-matrix {
    min-width: 100%;
    width: max-content;
  }
  .q-matrix-categorical .q-scale-mh,
  .q-matrix-categorical .q-scale-step {
    font-family: var(--font-body);
    letter-spacing: 0;
    line-height: 1.2;
  }
  .q-matrix-categorical .q-scale-cell .q-scale-step {
    width: 36px;
    max-width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
    padding: 0;
    border-color: transparent;
    background: transparent;
    border-radius: 999px;
    white-space: normal;
  }
  .q-matrix-categorical .q-scale-cell .q-scale-step:hover {
    background: var(--primary-soft);
    border-color: transparent;
  }
  .q-matrix-categorical .q-scale-cell .q-scale-step.selected {
    background: transparent;
    border-color: transparent;
    color: var(--ink);
  }
  .q-matrix-categorical .q-scale-step input {
    position: static;
    width: 17px;
    height: 17px;
    margin: 0;
    opacity: 1;
    pointer-events: auto;
    accent-color: var(--primary);
  }
  .q-matrix-categorical .q-scale-step .q-matrix-choice-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .q-scale-foot {
    display: grid;
    grid-template-columns: var(--scale-columns, minmax(136px, 200px) repeat(var(--steps, 5), minmax(42px, 1fr)));
    width: 100%;
    min-width: 0;
    margin-top: 8px;
    font-family: var(--font-mono); font-size: 11px;
    letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted);
  }
  .q-scale-foot-min,
  .q-scale-foot-max {
    min-width: 0;
    padding: 0 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .q-scale-foot-min { grid-column: 2 / span var(--foot-left-span, 1); text-align: left; }
  .q-scale-foot-max { grid-column: var(--foot-right-start, 3) / span var(--foot-right-span, 1); text-align: right; }

  @media (max-width: 720px) {
    .q-choice-scroll {
      overflow: visible;
    }
    .q-choice-scroll-content,
    .q-scale-table,
    .q-scale-table .q-scale-matrix,
    .q-scale-table .q-scale-foot,
    .q-choice-scroll-content > .q-scale-matrix {
      min-width: 0;
      width: 100%;
    }
    .q-choice-scroll .q-scale-ladder {
      flex-wrap: wrap;
      min-width: 0;
      width: 100%;
    }
    .q-scale:not(.q-scale-rating) .q-choice-scroll .q-scale-ladder {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
    }
    .q-scale:not(.q-scale-rating) .q-choice-scroll .q-scale-ladder .q-scale-step {
      min-width: 0;
      width: 100%;
    }
    .q-choice-scroll-arrow {
      display: none !important;
    }
    .q-scale-matrix {
      grid-template-columns: 1fr;
      width: 100%;
      min-width: 0;
      border-top: none;
    }
    .q-scale-matrix-row { display: block; padding: 14px 0; }
    .q-scale-matrix-row.q-scale-matrix-head { display: none; }
    .q-scale-matrix-row.q-scale-matrix-data { border-top: 1px solid var(--rule); }
    .q-scale-matrix-head + .q-scale-matrix-data { border-top: none; padding-top: 4px; }
    .q-scale-rh, .q-scale-cell, .q-scale-mh, .q-scale-mh-empty { border-bottom: none; padding: 0; }
    .q-scale-rh { padding: 0 0 8px; }
    .q-scale-row-cells { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
    .q-scale-row-cells .q-scale-step { flex: 1 1 44px; max-width: none; min-width: 44px; padding: 10px 6px; font-size: 13px; }
    .q-scale-rating .q-scale-row-cells .q-scale-rating-step {
      background: transparent;
      border-color: transparent;
      flex: 0 0 auto;
      height: 44px;
      justify-content: center;
      min-height: 44px;
      min-width: 44px;
      padding: 5px;
      width: 44px;
    }
    .q-scale-rating .q-scale-row-cells .q-scale-rating-step .q-rating-icon {
      height: 32px;
      width: 32px;
    }
    .q-scale-row-cells .q-scale-step-special { flex-basis: 86px; }
    .q-matrix-categorical .q-scale-row-cells { gap: 8px; }
    .q-matrix-categorical .q-scale-row-cells .q-scale-step {
      flex: 1 1 min(140px, 48%);
      width: auto;
      max-width: none;
      min-width: 0;
      height: auto;
      min-height: 0;
      justify-content: flex-start;
      gap: 8px;
      padding: 10px;
      border-color: var(--rule);
      background: var(--bg-elev);
      border-radius: 0;
    }
    .q-matrix-categorical .q-scale-row-cells .q-scale-step.selected {
      background: var(--primary-soft);
      border-color: var(--primary);
    }
    .q-matrix-categorical .q-scale-step .q-matrix-choice-label {
      position: static;
      width: auto;
      height: auto;
      overflow: visible;
      clip: auto;
      clip-path: none;
      white-space: normal;
    }
    .q-scale-foot { grid-template-columns: 1fr 1fr; width: 100%; min-width: 0; margin-top: 12px; }
    .q-scale-foot-min { grid-column: 1; text-align: left; padding: 0; }
    .q-scale-foot-max { grid-column: 2; text-align: right; padding: 0; }
  }

  /* Rank as a transfer list: pool (left) → picked (right) */
  .q-rank { margin-bottom: 24px; }
  .q-rank-hint {
    font-size: 13px; color: var(--muted);
    max-width: 56ch; margin: 0 0 16px;
  }
  .q-rank-transfer {
    display: grid; gap: 24px;
    grid-template-columns: 1fr 1fr;
  }
  @media (max-width: 720px) { .q-rank-transfer { grid-template-columns: 1fr; gap: 18px; } }

  .q-rank-col-head {
    display: flex; justify-content: space-between; align-items: baseline;
    font-family: var(--font-mono); font-size: 11px;
    color: var(--muted); font-weight: 500;
    text-transform: uppercase; letter-spacing: 0.14em;
    padding: 0 0 10px; margin: 0 0 10px;
    border-bottom: 1px solid var(--rule);
  }
  .q-rank-count { color: var(--ink-2); font-size: 11px; }

  .q-rank-list {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-direction: column; gap: 6px;
    min-height: 60px;
  }
  .q-rank-list.q-rank-picked.empty {
    align-items: center; justify-content: center;
    border: 1px dashed var(--rule);
    padding: 18px;
  }
  .q-rank-list.q-rank-picked.empty::before {
    content: attr(data-empty);
    font-size: 13px; color: var(--muted); text-align: center;
  }

  .q-rank-item {
    display: grid; align-items: center; gap: 10px;
    padding: 10px 12px;
    background: var(--bg-elev); border: 1px solid var(--rule);
    user-select: none;
    transition: border-color .12s, background .12s, opacity .12s;
  }
  .q-rank-item-pool {
    grid-template-columns: 1fr auto;
    cursor: pointer;
  }
  .q-rank-item-pool:hover { border-color: var(--ink-2); background: var(--bg); }
  .q-rank-item-pool.disabled { opacity: 0.4; cursor: not-allowed; }
  .q-rank-item-pool.disabled:hover { border-color: var(--rule); background: var(--bg-elev); }

  .q-rank-item-picked {
    grid-template-columns: 26px 1fr auto;
    cursor: grab;
  }
  .q-rank-item-picked.has-other-text {
    grid-template-columns: 26px 1fr auto;
  }
  .q-rank-other {
    grid-column: 2 / -1;
    width: 100%; padding: 9px 12px;
    border: 1px solid var(--rule); background: var(--bg);
    font-family: var(--font-sans); font-size: 14px; color: var(--ink); border-radius: 0;
    cursor: text; user-select: text;
  }
  .q-rank-other:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .q-rank-item-picked.dragging { opacity: .4; cursor: grabbing; }
  .q-rank-pos {
    font-family: var(--font-mono); font-size: 13px;
    color: var(--primary); font-weight: 600; text-align: center;
  }
  .q-rank-label { font-size: 14px; color: var(--ink); line-height: 1.35; }
  .q-rank-label,
  .q-scale-rh,
  .q-block-title,
  .q-block-description,
  .q-page-description {
    overflow-wrap: anywhere;
  }

  .q-rank-btns { display: inline-flex; gap: 4px; }
  .q-rank-btn, .q-rank-add, .q-rank-remove {
    width: 28px; height: 28px;
    border: 1px solid var(--rule); background: transparent; color: var(--ink-2);
    cursor: pointer; font-family: inherit; font-size: 14px; line-height: 1;
    transition: border-color .12s, color .12s, background .12s;
  }
  .q-rank-btn:hover, .q-rank-add:hover, .q-rank-remove:hover { border-color: var(--ink); color: var(--ink); }
  .q-rank-add { color: var(--primary); border-color: var(--rule); font-size: 16px; }
  .q-rank-add:disabled { color: var(--muted); cursor: not-allowed; border-color: var(--rule); }
  .q-rank-remove { color: var(--ink-2); font-size: 16px; }

  .survey-sr-only {
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  .survey-response-meta-field {
    display: none !important;
    position: absolute !important;
    left: -10000px !important;
    top: 0 !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
  }

  .preview-banner {
    position: fixed;
    left: 18px;
    bottom: 50px;
    z-index: 92;
    width: auto;
    max-width: min(430px, calc(100vw - 36px));
    background: #fff8df;
    color: #4a3a00;
    border: 1px solid rgba(74, 58, 0, 0.14);
    border-radius: 22px;
    box-shadow: 0 24px 80px rgba(53, 47, 43, 0.18);
  }
  .preview-banner-inner {
    padding: 12px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    font-family: var(--font-mono); font-size: 12px;
    letter-spacing: 0.08em; text-transform: uppercase;
  }
  .preview-info {
    border-radius: 16px;
    flex: 0 0 auto;
    order: 2;
    overflow: hidden;
  }
  .preview-info[open] {
    flex: 0 0 min(406px, calc(100vw - 60px));
    order: 0;
    width: min(406px, calc(100vw - 60px));
  }
  .preview-info summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    list-style: none;
    min-height: 34px;
    padding: 0;
    user-select: none;
  }
  .preview-info:not([open]) summary {
    background: rgba(255, 255, 255, 0.42);
    border-radius: 999px;
    height: 34px;
    justify-content: center;
    min-height: 34px;
    width: 34px;
  }
  .preview-info summary::-webkit-details-marker {
    display: none;
  }
  .preview-info summary::after {
    align-items: center;
    background: rgba(74, 58, 0, 0.08);
    border-radius: 999px;
    content: "−";
    display: inline-flex;
    flex: 0 0 24px;
    height: 24px;
    justify-content: center;
    letter-spacing: 0;
    line-height: 1;
    width: 24px;
  }
  .preview-info:not([open]) summary::after {
    background: transparent;
  }
  .preview-info:not([open]) summary::after {
    content: "+";
  }
  .preview-info-title {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    min-width: 0;
  }
  .preview-info:not([open]) .preview-info-title {
    display: none;
  }
  .preview-info-title strong {
    background: #4a3a00; color: #fff4d6;
    padding: 3px 8px; letter-spacing: 0.12em;
    border-radius: 999px;
  }
  .preview-info-title span {
    color: rgba(74, 58, 0, 0.68);
    margin-left: auto;
  }
  .preview-info-body {
    display: grid;
    gap: 7px;
    padding: 8px 4px 2px;
    color: rgba(74, 58, 0, 0.76);
    line-height: 1.45;
  }
  .preview-flash {
    background: var(--bg-elev); border-bottom: 1px solid var(--rule);
    padding: 10px var(--gutter);
    font-size: 13px; color: var(--ink);
    text-align: center;
  }
  .preview-banner-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    order: 1;
  }
  .preview-theme-switcher {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.42);
    border: 1px solid rgba(74, 58, 0, 0.24);
    border-radius: 999px;
    gap: 2px;
    padding: 3px;
    white-space: nowrap;
  }
  .preview-theme-label {
    color: rgba(74, 58, 0, 0.72);
  }
  .preview-theme-option {
    border-radius: 999px;
    color: #4a3a00;
    padding: 4px 8px;
    text-decoration: none;
  }
  .preview-theme-option:hover {
    background: rgba(255, 255, 255, 0.78);
    color: #4a3a00;
  }
  .preview-theme-option.is-active {
    background: #4a3a00;
    color: #fff4d6;
  }
  .preview-restrictions-toggle {
    display: inline-flex; align-items: center; gap: 7px;
    border: 0;
    background: rgba(255, 255, 255, 0.42);
    color: #4a3a00;
    padding: 6px 10px;
    border-radius: 999px;
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
  }
  .preview-restrictions-toggle input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }
  .preview-restrictions-track {
    position: relative;
    width: 28px;
    height: 16px;
    border: 1px solid rgba(74, 58, 0, 0.38);
    background: rgba(255, 255, 255, 0.72);
    border-radius: 999px;
    flex: 0 0 auto;
    transition: background .12s, border-color .12s;
  }
  .preview-restrictions-track::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 10px;
    height: 10px;
    background: #4a3a00;
    border-radius: 50%;
    transition: transform .12s, background .12s;
  }
  .preview-restrictions-toggle input:checked + .preview-restrictions-track {
    background: #4a3a00;
    border-color: #4a3a00;
  }
  .preview-restrictions-toggle input:checked + .preview-restrictions-track::after {
    transform: translateX(12px);
    background: #fff4d6;
  }
  .preview-action {
    border: 0;
    background: rgba(255, 255, 255, 0.42);
    color: #4a3a00;
    padding: 6px 10px;
    font: inherit;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 999px;
    cursor: pointer;
  }
  .preview-action:hover { background: rgba(255, 255, 255, 0.78); }
  .preview-action.is-ready {
    background: rgba(165, 187, 163, 0.42);
  }
  .preview-action-secondary {
    align-self: flex-start;
    margin-top: 2px;
    width: max-content;
  }
  .preview-action [data-preview-review-count] {
    display: inline-flex;
    min-width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    margin-left: 4px;
    padding: 0 5px;
    border-radius: 999px;
    background: rgba(74, 58, 0, 0.14);
  }
  .preview-action [data-preview-test-data-state] {
    display: inline-flex;
    min-width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    margin-left: 4px;
    padding: 0 5px;
    border-radius: 999px;
    background: rgba(74, 58, 0, 0.14);
  }
  .preview-test-data-panel {
    position: fixed;
    left: 18px;
    bottom: 122px;
    z-index: 96;
    width: min(360px, calc(100vw - 36px));
    display: grid;
    gap: 12px;
    padding: 16px;
    background: var(--bg-elev);
    color: var(--ink);
    border: 1px solid var(--rule);
    border-radius: 18px;
    box-shadow: 0 24px 80px rgba(53, 47, 43, 0.18);
  }
  .preview-test-data-panel[hidden] {
    display: none;
  }
  .preview-test-data-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--rule);
  }
  .preview-test-data-title {
    margin-top: 2px;
    font-size: 18px;
    font-weight: 650;
    color: var(--ink);
  }
  .preview-test-data-copy {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
  }
  .preview-test-data-fields {
    display: grid;
    gap: 10px;
  }
  .preview-test-data-field {
    display: grid;
    gap: 5px;
    color: var(--ink);
    font-size: 13px;
  }
  .preview-test-data-field span {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--muted);
  }
  .preview-test-data-field input,
  .preview-test-data-field select {
    width: 100%;
    min-height: 38px;
    padding: 8px 11px;
    border: 1px solid var(--rule);
    border-radius: 12px;
    background: var(--bg);
    color: var(--ink);
    font: inherit;
    font-size: 14px;
  }
  .preview-test-data-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
  }
  .preview-review-panel {
    position: fixed;
    right: 18px;
    top: 118px;
    bottom: 50px;
    z-index: 95;
    width: min(360px, calc(100vw - 36px));
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 16px 0 16px 16px;
    background: var(--bg-elev);
    border: 1px solid var(--rule);
    border-radius: 18px;
    box-shadow: 0 24px 80px rgba(53, 47, 43, 0.18);
  }
  .preview-review-panel[hidden] { display: none; }
  @media (max-width: 760px) {
    .preview-review-panel {
      left: 14px;
      right: 14px;
      top: 112px;
      bottom: auto;
      width: auto;
      max-height: min(58vh, 520px);
    }
  }
  .preview-review-header {
    display: flex; justify-content: space-between; gap: 12px; align-items: flex-start;
    padding-bottom: 12px; border-bottom: 1px solid var(--rule);
    margin-right: 16px;
  }
  .preview-review-kicker {
    font-family: var(--font-mono); font-size: 11px; font-weight: 700;
    letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted);
  }
  .preview-review-title { margin-top: 2px; font-size: 18px; font-weight: 650; color: var(--ink); }
  .preview-review-close {
    width: 32px; height: 32px; border: 1px solid var(--rule); background: var(--bg);
    color: var(--ink); cursor: pointer; font-size: 20px; line-height: 1;
    border-radius: 50%;
  }
  .preview-review-selected {
    padding: 12px; border: 1px solid var(--rule); background: var(--bg);
    border-radius: 14px;
    margin-right: 16px;
  }
  .preview-review-selected-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
  }
  .preview-review-label {
    font-family: var(--font-mono); font-size: 11px; font-weight: 700;
    letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted);
  }
  .preview-review-clear {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border: 0;
    background: var(--bg-elev);
    color: var(--ink-2);
    cursor: pointer;
    border-radius: 50%;
    font: inherit;
    font-size: 18px;
    line-height: 1;
  }
  .preview-review-clear:hover {
    background: var(--primary-soft);
    color: var(--ink);
  }
  .preview-review-target { margin-top: 3px; font-size: 13px; color: var(--ink); line-height: 1.35; }
  .preview-review-text {
    width: 100%; min-height: 88px; margin-top: 10px; padding: 10px 12px;
    border: 1px solid var(--rule); background: var(--bg-elev);
    color: var(--ink); font: inherit; font-size: 14px; resize: vertical;
    border-radius: 12px;
  }
  .preview-review-text:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-soft); }
  .preview-review-add,
  .preview-review-submit {
    border: 1px solid var(--primary); background: var(--primary); color: var(--bg);
    padding: 10px 12px; font: inherit; font-size: 13px; cursor: pointer;
    border-radius: 999px;
  }
  .preview-review-add { margin-top: 10px; width: 100%; }
  /* No explicit width: the flex column stretches it to the panel width minus margin-right,
     since the panel has no right padding (the comment list scrolls flush to the edge). */
  .preview-review-submit,
  .preview-review-status,
  .preview-review-empty {
    margin-right: 16px;
  }
  .preview-review-add:disabled,
  .preview-review-submit:disabled { opacity: .56; cursor: not-allowed; }
  .preview-review-list {
    min-height: 0;
    overflow: auto;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
    padding-right: 24px;
    scrollbar-width: thin;
    scrollbar-color: rgba(110, 98, 89, 0.34) transparent;
  }
  .preview-review-list .ps__rail-y {
    right: 5px !important;
    width: 7px;
    opacity: 1;
    background: transparent !important;
  }
  .preview-review-list .ps__thumb-y {
    right: 1px;
    width: 5px;
    border-radius: 999px;
    background: rgba(110, 98, 89, 0.38);
  }
  .preview-review-list .ps__rail-y:hover .ps__thumb-y,
  .preview-review-list .ps__rail-y:focus .ps__thumb-y,
  .preview-review-list .ps__rail-y.ps--clicking .ps__thumb-y {
    width: 5px;
    background: rgba(110, 98, 89, 0.56);
  }
  .preview-review-empty { color: var(--muted); font-size: 13px; line-height: 1.45; }
  .preview-review-item {
    border: 0;
    background: rgba(126, 112, 100, 0.08);
    padding: 10px 12px;
    border-radius: 14px;
    transition: background-color .18s ease;
  }
  .preview-review-item.is-preview-review-focus {
    background: rgba(154, 122, 71, 0.16);
  }
  .preview-review-item.is-reply {
    margin-left: 18px;
    background: rgba(126, 112, 100, 0.05);
  }
  .preview-review-item-head {
    display: flex; align-items: center; flex-wrap: wrap; gap: 7px;
    font-family: var(--font-mono); font-size: 10px; font-weight: 700;
    letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted);
  }
  .preview-review-author-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 18px;
    padding: 0;
    background: transparent;
    color: var(--ink);
    letter-spacing: 0.08em;
  }
  .preview-review-author-badge::before {
    content: '';
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 999px;
    background: var(--preview-review-author-color, var(--primary));
  }
  .preview-review-target-meta {
    min-width: 0;
    color: var(--muted);
  }
  .preview-review-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 7px;
  }
  .preview-review-reply-editor {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--rule);
  }
  .preview-review-reply-editor textarea {
    width: 100%;
    min-height: 70px;
    padding: 9px 11px;
    border: 1px solid var(--rule);
    background: var(--bg-elev);
    color: var(--ink);
    font: inherit;
    font-size: 13px;
    resize: vertical;
    border-radius: 12px;
  }
  .preview-review-reply-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 8px;
  }
  .preview-review-chip,
  .preview-review-mini-button {
    border-radius: 999px;
    font-size: 11px;
    line-height: 1.1;
    padding: 5px 8px;
  }
  .preview-review-chip {
    background: var(--bg-elev);
    color: var(--muted);
  }
  .preview-review-chip.is-approved,
  .preview-review-chip.is-applied {
    background: #e4eadf;
    color: #61765c;
  }
  .preview-review-chip.is-rejected {
    background: #f5dfdb;
    color: #955548;
  }
  .preview-review-mini-button {
    border: 1px solid var(--rule);
    background: var(--bg-elev);
    color: var(--ink);
    cursor: pointer;
  }
  .preview-review-mini-button:hover {
    border-color: var(--primary);
  }
  .preview-review-item-body { margin-top: 5px; font-size: 13px; color: var(--ink); line-height: 1.4; }
  .preview-review-remove {
    border: 0; background: transparent; color: var(--ink-2); cursor: pointer;
    font: inherit; font-size: 16px; line-height: 1;
  }
  .preview-review-status { min-height: 18px; font-size: 12px; color: var(--muted); line-height: 1.35; }
  .preview-review-active [data-preview-review-target] {
    outline: 0;
    cursor: crosshair;
    position: relative;
  }
  [data-preview-review-target].is-preview-review-hover,
  [data-preview-review-target].is-preview-review-selected {
    outline: 2px dotted rgba(199, 161, 91, 0.9);
    outline-offset: 8px;
    border-radius: 10px;
  }
  .preview-review-badge-layer {
    position: fixed;
    inset: 0;
    z-index: 160;
    pointer-events: none;
  }
  .preview-review-badge-layer[hidden] { display: none; }
  .preview-review-badge {
    position: absolute;
    top: -13px;
    right: -13px;
    z-index: 6;
    width: 26px;
    min-width: 26px;
    max-height: 26px;
    height: 26px;
    padding: 2px 0 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--bg);
    border-radius: 999px;
    background: var(--preview-review-badge-bg, var(--primary));
    color: var(--bg);
    box-shadow: 0 6px 18px rgba(53, 47, 43, 0.18);
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    line-height: 26px;
    letter-spacing: 0;
    cursor: pointer;
    pointer-events: auto;
    transform-origin: center;
  }
  .preview-review-badge:hover {
    box-shadow: 0 7px 19px rgba(53, 47, 43, 0.19);
  }
  .preview-review-badge:active {
    transform: scale(1.08);
  }
  .preview-review-badge.is-active {
    filter: saturate(1.12) brightness(1.03);
    box-shadow: 0 7px 20px rgba(53, 47, 43, 0.24);
  }
  .preview-review-badge.is-pressed {
    animation: previewReviewBadgePress 180ms ease-out;
  }
  .preview-review-badge.is-preview-review-badge-more {
    width: 26px;
    min-width: 26px;
    padding: 0;
    border-style: dashed;
    background: rgba(126, 112, 100, 0.08);
    color: var(--ink);
  }
  .q-scale-cell > .preview-review-badge {
    z-index: 7;
  }
  .preview-review-filter-bar {
    position: sticky;
    top: 0;
    z-index: 2;
    display: flex;
    justify-content: flex-end;
    margin: 0 0 6px;
    padding: 0 2px 2px;
    background: rgba(255, 255, 255, 0.92);
  }
  .preview-review-filter-clear {
    border: 0;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 0;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .preview-review-filter-clear:hover {
    color: var(--ink);
  }
  @keyframes previewReviewBadgePress {
    0%, 100% { transform: scale(1); }
    46% { transform: scale(1.1); }
  }
  .preview-complete-screen .inner {
    justify-content: center;
  }
  .preview-complete-card {
    box-sizing: border-box;
    max-width: min(760px, 100%);
    padding: clamp(28px, 5vw, 52px);
  }
  .preview-complete-review {
    margin-top: 28px;
    padding: 18px 20px;
    border: 1px solid var(--rule);
    background: var(--bg-elev);
  }
  .preview-complete-review[hidden] { display: none; }
  .preview-complete-review strong {
    display: block;
    color: var(--ink);
    font-size: 15px;
    margin-bottom: 5px;
  }
  .preview-complete-review p {
    margin: 0 0 16px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.45;
  }
  .preview-complete-status {
    min-height: 18px;
    margin-top: 10px;
    color: var(--muted);
    font-size: 13px;
  }
  .preview-complete-actions {
    align-items: center;
    flex-wrap: wrap;
    margin-top: 30px;
  }
  .preview-complete-actions a.btn-back {
    text-decoration: none;
  }
  @media (max-width: 720px) {
    .preview-banner {
      left: 12px;
      right: 12px;
      bottom: 44px;
      width: auto;
      max-width: calc(100vw - 24px);
    }
    .preview-action { text-align: center; }
    .preview-test-data-panel {
      left: 12px;
      right: 12px;
      bottom: 126px;
      width: auto;
      max-height: min(56vh, 520px);
      overflow: auto;
    }
    .preview-review-panel { left: 12px; right: 12px; top: 104px; bottom: 44px; width: auto; }
    .preview-review-active .preview-review-panel { bottom: 120px; }
  }
  .privacy-modal {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(13, 42, 58, 0.36);
  }
  .privacy-modal.open {
    display: flex;
  }
  .privacy-modal-panel {
    width: min(720px, 100%);
    max-height: min(78vh, 760px);
    overflow: auto;
    background: var(--bg);
    color: var(--ink);
    border: 1px solid var(--rule);
    box-shadow: 0 24px 80px rgba(13, 42, 58, 0.22);
    padding: clamp(22px, 4vw, 36px);
    position: relative;
  }
  .privacy-modal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 34px;
    height: 34px;
    border: 1px solid var(--rule);
    background: var(--bg-elev);
    color: var(--ink);
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
  }
  .privacy-modal-title {
    margin: 0 42px 18px 0;
    font-size: clamp(20px, 3vw, 28px);
    line-height: 1.2;
  }
  .privacy-markdown {
    color: var(--ink-2);
    font-size: 14px;
    line-height: 1.58;
  }
  .privacy-markdown h2,
  .privacy-markdown h3 {
    color: var(--ink);
    margin: 22px 0 8px;
    font-size: 17px;
    line-height: 1.25;
  }
  .privacy-markdown h2:first-child,
  .privacy-markdown h3:first-child,
  .privacy-markdown p:first-child {
    margin-top: 0;
  }
  .privacy-markdown p,
  .privacy-markdown ul {
    margin: 0 0 14px;
  }
  .privacy-markdown ul {
    padding-left: 20px;
  }
  .privacy-markdown a {
    color: var(--ink);
    text-decoration: underline;
    text-underline-offset: 2px;
  }

/* ==========================================================================
   Survey thank-you screen
   Extracted from templates/surveys/thank-you.html.twig
   ========================================================================== */
.thanks-screen {
    min-height: calc(100vh - 72px);
    padding: clamp(48px, 8vw, 96px) var(--gutter);
    display: flex;
    align-items: center;
  }
  .thanks-inner {
    width: 100%;
    max-width: var(--maxw-narrow);
    margin: 0 auto;
  }
  .dy-survey .thanks-title {
    margin-top: clamp(28px, 3.2vh, 40px);
  }
  .dy-survey .thanks-lead {
    margin-top: clamp(28px, 3.4vh, 42px);
    max-width: min(48ch, 100%);
  }
  .assessment-result {
    margin-top: clamp(28px, 3.4vh, 42px);
    padding: 20px;
    border: 1px solid var(--rule);
    border-radius: 8px;
    background: var(--bg-elev);
  }
  .assessment-result__header,
  .assessment-result__metrics,
  .assessment-result__breakdown li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .assessment-result__status,
  .assessment-result__breakdown strong {
    color: var(--primary);
  }
  .assessment-result__status[data-state="not-passed"],
  .assessment-result__breakdown strong[data-state="incorrect"] {
    color: var(--muted);
  }
  .assessment-result__metrics {
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: 20px;
  }
  .assessment-result__metric {
    min-width: 140px;
  }
  .assessment-result__metric span,
  .assessment-result__metric strong {
    display: block;
  }
  .assessment-result__metric span {
    color: var(--muted);
    font-size: 13px;
  }
  .assessment-result__metric strong {
    margin-top: 3px;
    font-size: 20px;
  }
  .assessment-result__progress {
    height: 6px;
    margin-top: 18px;
    overflow: hidden;
    background: var(--primary-soft);
  }
  .assessment-result__progress span {
    display: block;
    height: 100%;
    background: var(--primary);
  }
  .assessment-result__breakdown {
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--rule);
  }
  .assessment-result__breakdown li {
    padding: 12px 0;
    border-bottom: 1px solid var(--rule);
  }
  .assessment-result__breakdown li:last-child {
    border-bottom: 0;
  }
  .thanks-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 36px;
  }
  .thanks-actions a {
    display: inline-flex;
    align-items: center;
    padding: 12px 18px;
    border: 1px solid var(--rule);
    color: var(--ink);
    text-decoration: none;
    background: var(--bg-elev);
  }
  .thanks-actions a.primary {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--bg);
  }

/* ==========================================================================
   Survey status screen
   Extracted from templates/surveys/status.html.twig
   ========================================================================== */
.survey-status {
      min-height: calc(100vh - 72px);
      display: flex;
      align-items: center;
      padding: clamp(3rem, 8vw, 6.5rem) var(--gutter);
    }

    .survey-status__inner {
      width: min(100%, 720px);
      margin: 0 auto;
    }

    .survey-status__marker {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      margin-bottom: clamp(1.6rem, 3vh, 2.35rem);
      color: var(--primary);
    }

    .survey-status__code {
      display: inline-flex;
      align-items: center;
      min-height: 2.15rem;
      padding: 0 0.72rem;
      border-radius: 999px;
      background: var(--primary-soft);
      color: var(--primary);
      font-family: var(--font-mono);
      font-size: 0.82rem;
      font-weight: 700;
      line-height: 1;
    }

    .survey-status h1 {
      max-width: 13ch;
      font-size: clamp(2.65rem, 7vw, 5.6rem);
      line-height: 0.98;
    }

    .dy-survey .survey-status__message {
      max-width: 44rem;
      margin-top: clamp(1.85rem, 3vh, 2.45rem);
      color: var(--ink-2);
      font-size: clamp(1.05rem, 1.5vw, 1.22rem);
      line-height: 1.58;
    }

    .survey-status__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.75rem;
      margin-top: 2rem;
    }

    .survey-status__button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 2.75rem;
      padding: 0 1.05rem;
      border: 1px solid var(--rule);
      border-radius: 999px;
      background: var(--bg-elev);
      color: var(--ink);
      font-size: 0.95rem;
      font-weight: 650;
      text-decoration: none;
      transition: background 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
    }

    .survey-status__button:visited {
      color: var(--ink);
    }

    .survey-status__button:hover,
    .survey-status__button:focus-visible,
    .survey-status__button:active {
      border-color: rgba(110, 98, 89, 0.32);
      background: #f2ede6;
      color: var(--ink) !important;
      text-decoration: none;
      -webkit-text-fill-color: var(--ink);
      box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.03) inset;
    }

    .survey-status__button.primary {
      border-color: var(--primary);
      background: var(--primary);
      color: #fffaf4;
    }

    .survey-status__button.primary:visited {
      color: #fffaf4;
    }

    .survey-status__button.primary:hover,
    .survey-status__button.primary:focus-visible,
    .survey-status__button.primary:active {
      border-color: #5e534b;
      background: #5e534b;
      color: #fffaf4 !important;
      text-decoration: none;
      -webkit-text-fill-color: #fffaf4;
    }

    @media (max-width: 720px) {
      .survey-status {
        min-height: calc(100vh - 105px);
        align-items: flex-start;
        padding-top: 3rem;
      }

      .survey-status h1 {
        max-width: 100%;
      }
    }

/* ==========================================================================
   Survey admin shell and shared components
   Extracted from templates/survey_admin/layout.html.twig
   ========================================================================== */
.survey-admin-page-frame {
            box-sizing: border-box;
            height: calc(100vh - var(--dayalogs-topbar-height, 0px));
            padding: 0.65rem 1.25rem 0.65rem 0.85rem;
            overflow: hidden;
        }

        .survey-admin-shell {
            --dayalogs-admin-bg: var(--dayalogs-bg);
            --dayalogs-admin-bg-soft: var(--dayalogs-surface-soft);
            --dayalogs-admin-surface: var(--dayalogs-surface);
            --dayalogs-admin-brand: var(--dayalogs-brand);
            --dayalogs-admin-ink: var(--dayalogs-text-strong);
            --dayalogs-admin-text: var(--dayalogs-text);
            --dayalogs-admin-text-strong: var(--dayalogs-text-strong);
            --dayalogs-admin-muted: var(--dayalogs-muted);
            --dayalogs-admin-line: var(--dayalogs-line);
            --dayalogs-admin-line-soft: var(--dayalogs-line-soft);
            --dayalogs-admin-primary: var(--dayalogs-primary);
            --dayalogs-admin-primary-hover: var(--dayalogs-primary-hover);
            --dayalogs-admin-success: var(--dayalogs-success);
            --dayalogs-admin-danger: var(--dayalogs-danger);
            --dayalogs-admin-button-radius: 0.86rem;
            --dayalogs-admin-button-height: 2.45rem;
            height: 100%;
            min-height: 0;
            color: var(--dayalogs-admin-text);
            font-family: var(--dayalogs-font-sans);
            font-size: 0.9rem;
        }

        .survey-admin-shell > .row {
            height: 100%;
            min-height: 0;
        }

        @media (min-width: 992px) {
            .survey-admin-shell > .row {
                display: grid;
                grid-template-columns: minmax(11.5rem, 13rem) minmax(0, 1fr);
            }

            .survey-admin-shell > .row > .survey-admin-sidebar-column,
            .survey-admin-shell > .row > .survey-admin-main-column {
                max-width: none;
                width: auto;
            }

            .survey-admin-shell.is-sidebar-collapsed > .row {
                grid-template-columns: 3.6rem minmax(0, 1fr);
            }
        }

        .survey-admin-shell h1,
        .survey-admin-shell .h1 {
            font-size: 1.9rem;
            line-height: 1.12;
        }

        .survey-admin-shell h2,
        .survey-admin-shell .h2 {
            font-size: 1.72rem;
            line-height: 1.16;
        }

        .survey-admin-shell h3,
        .survey-admin-shell .h3 {
            font-size: 1.38rem;
            line-height: 1.18;
        }

        .survey-admin-shell h4,
        .survey-admin-shell .h4 {
            font-size: 1.16rem;
            line-height: 1.22;
        }

        .survey-admin-shell,
        .survey-admin-shell .table,
        .survey-admin-shell .card,
        .survey-admin-shell .card-body {
            background: transparent;
        }

        .survey-admin-shell h1,
        .survey-admin-shell h2,
        .survey-admin-shell h3,
        .survey-admin-shell h4,
        .survey-admin-shell h5,
        .survey-admin-shell h6,
        .survey-admin-shell strong,
        .survey-admin-shell .fw-semibold,
        .survey-admin-shell .fw-bold {
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-shell .text-muted {
            color: var(--dayalogs-admin-muted) !important;
        }

        .survey-admin-sidebar-card {
            border: 0;
            border-radius: 0;
            box-shadow: none;
            min-height: 100%;
            display: flex;
            flex-direction: column;
        }

        .survey-admin-sidebar-column {
            position: relative;
            height: 100%;
            min-height: 0;
        }

        .survey-admin-sidebar-column .offcanvas-lg,
        .survey-admin-sidebar-column .offcanvas-body {
            height: 100%;
            min-height: 0;
        }

        .survey-admin-sidebar-column::after {
            content: "";
            position: absolute;
            top: 0.95rem;
            bottom: 0.95rem;
            right: calc(var(--bs-gutter-x) * 0.5);
            width: 1px;
            background: var(--dayalogs-admin-line);
            pointer-events: none;
        }

        .survey-admin-sidebar-card .brand {
            align-items: center;
            background: transparent;
            color: var(--dayalogs-admin-text-strong);
            display: flex;
            gap: 0.6rem;
            justify-content: flex-start;
            margin-bottom: 0.35rem;
            padding: 0.8rem 0.9rem 0.5rem;
        }

        .survey-admin-brand {
            display: inline-flex;
            line-height: 1;
            text-decoration: none;
        }

        .survey-admin-brand-logo {
            display: block;
            height: 64px;
            width: auto;
            /* GPU rasterization smooths SVG curve edges on 1x displays */
            transform: translateZ(0);
        }

        .survey-admin-brand-logo-symbol {
            display: none;
            height: 1.6rem;
            width: 1.6rem;
        }

        .survey-admin-sidebar-nav {
            min-height: 0;
            overflow-x: hidden;
            overflow-y: auto;
            padding: 0.5rem 0.55rem;
        }

        .survey-admin-sidebar-card .nav-link {
            border-radius: 0.6rem;
            color: var(--dayalogs-admin-text);
            font-size: 0.88rem;
            font-weight: 600;
            padding: 0.5rem 0.7rem;
            display: flex;
            align-items: flex-start;
            gap: 0.6rem;
            transition: background-color 0.2s ease, color 0.2s ease;
        }

        .survey-admin-sidebar-card .nav-link i {
            margin-top: 0.12rem;
        }

        .survey-admin-sidebar-card .nav-link > span {
            min-width: 0;
        }

        .survey-admin-sidebar-card .nav-link small {
            display: block;
            font-size: 0.72rem;
            line-height: 1.25;
        }

        .survey-admin-sidebar-card .nav-link:hover {
            background: var(--dayalogs-admin-line-soft);
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-sidebar-card .nav-link.active {
            background: #f4efe8;
            color: var(--dayalogs-admin-text-strong);
        }

        /* Sidebar footer: organization, user menu and collapse toggle */
        .survey-admin-sidebar-foot {
            display: flex;
            flex-direction: column;
            gap: 0.1rem;
            margin-top: auto;
            padding: 0.4rem 0.55rem 0.5rem;
        }

        .survey-admin-sidebar-foot-block {
            width: 100%;
        }

        .survey-admin-sidebar-foot-item {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0.55rem;
            color: var(--dayalogs-admin-text);
            display: flex;
            font-size: 0.82rem;
            font-weight: 500;
            gap: 0.5rem;
            padding: 0.45rem 0.55rem;
            text-align: left;
            width: 100%;
        }

        .survey-admin-sidebar-foot-item:hover:not(.is-static),
        .survey-admin-sidebar-foot-item:focus-visible {
            background: var(--dayalogs-admin-line-soft);
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-sidebar-foot-item.is-static {
            cursor: default;
        }

        .survey-admin-org-dot {
            background: var(--dayalogs-accent, #c7a15b);
            border-radius: 50%;
            flex: 0 0 auto;
            height: 0.5rem;
            width: 0.5rem;
        }

        .survey-admin-user-avatar {
            align-items: center;
            background: var(--dayalogs-brand);
            border-radius: 50%;
            color: var(--dayalogs-on-brand);
            display: inline-flex;
            flex: 0 0 auto;
            font-size: 0.66rem;
            font-weight: 700;
            height: 1.45rem;
            justify-content: center;
            width: 1.45rem;
        }

        .survey-admin-sidebar-foot-label {
            flex: 1 1 auto;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-admin-sidebar-foot-caret {
            flex: 0 0 auto;
            font-size: 0.66rem;
            opacity: 0.55;
        }

        .survey-admin-sidebar-dropdown {
            font-size: 0.84rem;
            min-width: 12rem;
        }

        .survey-admin-sidebar-dropdown .dropdown-item {
            font-size: 0.84rem;
            gap: 0.5rem;
            min-height: 1.9rem;
            padding: 0.38rem 0.55rem;
        }

        .survey-admin-sidebar-dropdown .dropdown-item i {
            font-size: 0.8rem;
        }

        .survey-admin-sidebar-dropdown small {
            font-size: 0.68rem;
        }

        .survey-admin-sidebar-dropdown .dayalogs-topbar-language-row {
            font-size: 0.8rem;
            padding: 0.38rem 0.55rem;
        }

        .survey-admin-sidebar-dropdown .dayalogs-topbar-language-links a {
            font-size: 0.68rem;
            min-width: 1.5rem;
            padding: 0.26rem 0.34rem;
        }

        .survey-admin-sidebar-toggle i {
            flex: 0 0 auto;
            font-size: 0.85rem;
            line-height: 1;
        }

        .survey-admin-toast-container {
            top: calc(var(--dayalogs-topbar-height, 0px) + 1rem);
            right: 1rem;
            z-index: 1090;
        }

        .survey-admin-toast {
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.85rem;
            background: #fffdfa;
            color: var(--dayalogs-admin-text-strong);
            box-shadow: 0 0.65rem 1.7rem rgba(80, 70, 58, 0.12);
        }

        .survey-admin-toast.text-bg-success {
            background: #eef3ea !important;
            color: #667b61 !important;
            border-color: #d5dfce;
        }

        .survey-admin-toast.text-bg-danger {
            background: #fdf1ee !important;
            color: #bd6a5e !important;
            border-color: #f3cbc3;
        }

        .survey-admin-toast.text-bg-warning,
        .survey-admin-toast.text-bg-info {
            background: #fbf6dc !important;
            color: #98864e !important;
            border-color: #eee2a3;
        }

        .survey-admin-toast .btn-close {
            filter: none;
            opacity: 0.55;
        }

        .survey-admin-main-column {
            height: 100%;
            min-height: 0;
            display: flex;
            flex-direction: column;
        }

        .survey-admin-main-fixed {
            flex: 0 0 auto;
        }

        .survey-admin-main-scroll {
            flex: 1 1 auto;
            min-height: 0;
            overflow: auto;
            padding-right: 1rem;
            position: relative;
        }

        [data-perfect-scrollbar] {
            position: relative;
        }

        .survey-admin-content-stack {
            padding-right: 0.65rem;
            padding-bottom: 0.75rem;
        }

        .survey-admin-content-stack > * + * {
            margin-top: 1.1rem;
        }

        .survey-admin-surface {
            border: 0;
            border-bottom: 1px solid var(--dayalogs-admin-line);
            border-radius: 0;
            box-shadow: none;
            background: transparent;
        }

        .survey-admin-table-card,
        .survey-admin-table-panel {
            background: #f8f4ef;
            border: 0;
            border-radius: 1.2rem;
            box-shadow: none;
            overflow: hidden;
            padding: 0.35rem 0.75rem;
        }

        .survey-admin-header-card {
            background: transparent;
            border: 0;
            border-radius: 0;
            box-shadow: none;
            padding: 0.9rem 0 1.1rem;
        }

        .survey-admin-header-card h1 {
            font-size: 1.28rem;
            line-height: 1.25;
        }

        .survey-admin-header-card p {
            font-size: 0.85rem;
        }

        .survey-admin-header-badge {
            vertical-align: middle;
        }

        .survey-admin-surface-footer {
            display: flex;
            justify-content: flex-end;
            padding: 18px 0 0;
            border: 0;
            background: transparent;
        }

        .survey-admin-section-label,
        .survey-admin-field-label {
            color: var(--dayalogs-admin-muted);
            font-weight: 700;
            text-transform: uppercase;
        }

        .survey-admin-section-label {
            font-size: 0.82rem;
            letter-spacing: 0.08em;
            line-height: 1.1;
        }

        .survey-admin-field-label {
            display: block;
            font-size: 0.75rem;
            letter-spacing: 0.04em;
            line-height: 1.1;
            margin: 0 0 0.5rem;
        }

        .survey-admin-form-label,
        body.dayalogs-admin .form-label,
        .survey-admin-form-grid label:not(.survey-admin-checkbox-row) > span:first-child,
        .survey-admin-profile-grid label > span:first-child,
        .survey-admin-campaign-form label:not(.survey-admin-campaign-branding-check) > span:first-child {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 0.85rem;
            font-weight: 600;
            letter-spacing: 0;
            line-height: 1.25;
            text-transform: none;
        }

        .survey-admin-form-label,
        .survey-admin-form-grid label:not(.survey-admin-checkbox-row) > span:first-child,
        .survey-admin-profile-grid label > span:first-child,
        .survey-admin-campaign-form label:not(.survey-admin-campaign-branding-check) > span:first-child {
            margin: 0;
        }

        .survey-admin-table-heading {
            padding: 0 0 0.85rem;
        }

        .survey-admin-section-surveys .survey-admin-table-card {
            border-bottom: 0;
        }

        .survey-admin-section-surveys .survey-admin-soft-table > :not(caption) > * > * {
            border-bottom-color: rgba(110, 98, 89, 0.12);
        }

        .survey-admin-section-surveys .survey-admin-soft-table tbody tr:last-child > * {
            border-bottom-color: transparent !important;
        }

        .survey-admin-table-card.has-floating-menu {
            overflow: visible;
        }

        .survey-admin-table-card.has-floating-menu .card-body {
            overflow: visible;
        }

        .survey-admin-export-dropdown .dropdown-menu {
            min-width: 12rem;
            z-index: 1085;
        }

        .survey-admin-export-dropdown .dropdown-item {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            white-space: nowrap;
        }

        .survey-admin-table-action-form {
            margin: 0;
        }

        .survey-admin-actions-column {
            min-width: 11.2rem;
            white-space: nowrap;
            width: 11.2rem;
        }

        .survey-admin-table-actions {
            align-items: center;
            display: inline-flex;
            flex-direction: row;
            flex-wrap: nowrap;
            gap: 0.45rem;
            justify-content: flex-end;
            white-space: nowrap;
        }

        .survey-admin-responsive-card-table-wrap {
            width: 100%;
        }

        .survey-admin-table-card .table,
        .survey-admin-table-panel .table {
            margin-bottom: 0;
        }

        .survey-admin-table-card .table-responsive,
        .survey-admin-table-panel.table-responsive,
        .survey-admin-table-panel .table-responsive {
            border-bottom: 0;
        }

        .survey-admin-table-panel.table-responsive {
            overflow-x: auto;
            overflow-y: hidden;
        }

        .survey-admin-quality {
            align-items: center;
            display: inline-flex;
            gap: 0.55rem;
            min-width: 7.25rem;
        }

        .survey-admin-small-bar {
            background: rgba(88, 111, 86, 0.12);
            border-radius: 999px;
            display: inline-flex;
            flex: 0 0 100px;
            height: 0.45rem;
            max-width: 100px;
            min-width: 100px;
            overflow: hidden;
            vertical-align: middle;
            width: 100px;
        }

        .survey-admin-small-bar > span,
        .survey-admin-small-bar > .progress-bar {
            border-radius: inherit;
            background: #8ea884;
            display: block;
            height: 100%;
            min-width: 0;
        }

        .survey-admin-small-bar > .bg-success,
        .survey-admin-small-bar > .link-set-progress-bar {
            background: #8ea884 !important;
        }

        .survey-admin-small-bar > .bg-warning,
        .survey-admin-small-bar > .is-warn {
            background: #c9aa62 !important;
        }

        .survey-admin-small-bar > .bg-danger,
        .survey-admin-small-bar > .is-risky {
            background: #c27e72 !important;
        }

        .survey-admin-quality-bar {
            flex: 0 0 100px;
        }

        .survey-admin-quality-value {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.82rem;
            font-variant-numeric: tabular-nums;
            min-width: 2.8rem;
        }

        .survey-admin-quality-tooltip .tooltip-inner {
            max-width: 18rem;
            text-align: left;
            white-space: pre-line;
        }

        .survey-admin-surface-subsection {
            background: rgba(255, 255, 255, 0.56);
            border-radius: 1rem;
            padding: 1rem 1.05rem;
        }

        .survey-admin-toggle-card {
            align-items: center;
            background: #fffdfa;
            border: 1px solid rgba(110, 98, 89, 0.12);
            border-radius: 0.95rem;
            cursor: pointer;
            display: flex;
            gap: 0.7rem;
            margin: 0;
            min-height: 3rem;
            padding: 0.8rem 0.9rem;
        }

        .survey-admin-toggle-card input {
            flex: 0 0 auto;
            margin: 0;
        }

        .survey-admin-toggle-card span {
            color: var(--dayalogs-admin-text-strong);
            font-weight: 650;
            line-height: 1.3;
        }

        .survey-admin-definition-list {
            display: flex;
            flex-direction: column;
            gap: 0.7rem;
        }

        .survey-admin-definition-row {
            align-items: center;
            display: flex;
            font-size: 0.92rem;
            gap: 1rem;
            justify-content: space-between;
        }

        .survey-admin-definition-row span:first-child {
            color: var(--dayalogs-admin-muted);
        }

        .survey-admin-definition-row strong {
            color: var(--dayalogs-admin-text-strong);
            font-variant-numeric: tabular-nums;
        }

        .survey-admin-quality-summary {
            align-items: start;
            display: grid;
            gap: clamp(1.75rem, 4vw, 4.25rem);
            grid-template-columns: minmax(15rem, 20rem) minmax(20rem, 1fr);
            margin-top: 0.35rem;
            padding: 0.75rem 0 0.4rem;
        }

        .survey-admin-quality-scope {
            align-items: center;
            display: flex;
            gap: 0.75rem;
            justify-content: flex-end;
        }

        .survey-admin-quality-scope label {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
            font-weight: 650;
            margin: 0;
        }

        .survey-admin-quality-scope .form-select {
            width: min(100%, 12rem);
        }

        .survey-admin-quality-gauge-panel {
            align-items: center;
            display: flex;
            flex-direction: column;
            gap: 0.85rem;
            min-width: 0;
        }

        .survey-admin-quality-breakdown-panel {
            min-width: 0;
            padding-right: clamp(0rem, 2vw, 1.25rem);
        }

        .survey-admin-quality-sampled-row {
            display: grid;
            gap: 1.05rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            margin-bottom: 1.05rem;
        }

        .survey-admin-quality-donut {
            --quality-donut-track: rgba(110, 98, 89, 0.12);
            --quality-donut-fill: #8ea884;
            align-items: center;
            display: flex;
            flex: 0 0 auto;
            justify-content: center;
        }

        .survey-admin-quality-donut.is-warn {
            --quality-donut-fill: #c9aa62;
        }

        .survey-admin-quality-donut.is-risky {
            --quality-donut-fill: #c27e72;
        }

        .survey-admin-quality-donut.is-idle {
            --quality-donut-fill: rgba(110, 98, 89, 0.24);
        }

        .survey-admin-confidence-gauge {
            --quality-donut-track: rgba(110, 98, 89, 0.14);
            --quality-donut-fill: #8ea884;
            align-items: center;
            display: flex;
            height: 14rem;
            justify-content: center;
            max-width: 100%;
            position: relative;
            width: 16rem;
        }

        .survey-admin-confidence-gauge.is-warn {
            --quality-donut-fill: #c9aa62;
        }

        .survey-admin-confidence-gauge.is-risky {
            --quality-donut-fill: #c27e72;
        }

        .survey-admin-confidence-gauge.is-idle {
            --quality-donut-fill: rgba(110, 98, 89, 0.24);
        }

        .survey-admin-confidence-gauge-chart {
            min-height: 14rem;
            width: 16rem;
        }

        .survey-admin-confidence-gauge-fallback {
            align-items: center;
            display: flex;
            inset: 0;
            justify-content: center;
            position: absolute;
        }

        .survey-admin-confidence-gauge.is-apex-ready .survey-admin-confidence-gauge-fallback {
            display: none;
        }

        .survey-admin-quality-donut-ring {
            align-items: center;
            background: conic-gradient(
                var(--quality-donut-fill) calc(var(--quality-score, 0) * 1%),
                var(--quality-donut-track) 0
            );
            border-radius: 50%;
            display: flex;
            height: 10.5rem;
            justify-content: center;
            position: relative;
            width: 10.5rem;
        }

        .survey-admin-quality-donut-ring::after {
            background: rgba(255, 255, 255, 0.88);
            border-radius: 50%;
            content: "";
            height: 7.7rem;
            inset: 50%;
            position: absolute;
            transform: translate(-50%, -50%);
            width: 7.7rem;
        }

        .survey-admin-quality-donut-core {
            align-items: center;
            display: flex;
            flex-direction: column;
            justify-content: center;
            position: relative;
            text-align: center;
            z-index: 1;
        }

        .survey-admin-quality-donut-value {
            color: var(--dayalogs-admin-text-strong);
            font-size: clamp(2rem, 2vw + 1rem, 2.8rem);
            font-weight: 750;
            letter-spacing: 0;
            line-height: 0.95;
        }

        .survey-admin-quality-donut-caption {
            color: var(--dayalogs-admin-muted);
            font-size: 0.72rem;
            font-weight: 700;
            letter-spacing: 0.16em;
            margin-top: 0.4rem;
            text-transform: uppercase;
        }

        .survey-admin-quality-meta {
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-direction: column;
            font-size: 0.82rem;
            gap: 0.25rem;
            line-height: 1.35;
            max-width: 21rem;
            text-align: center;
        }

        .survey-admin-quality-metrics {
            display: grid;
            gap: 1.35rem 1.2rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .survey-admin-quality-metric {
            border-bottom: 1px solid rgba(110, 98, 89, 0.1);
            display: flex;
            flex-direction: column;
            gap: 0.38rem;
            min-height: 3.75rem;
            padding-bottom: 0.75rem;
            transition: opacity 0.16s ease;
        }

        .survey-admin-quality-metric.is-disabled {
            opacity: 0.35;
        }

        .survey-admin-quality-metric-heading {
            align-items: baseline;
            color: var(--dayalogs-admin-muted);
            display: flex;
            font-size: 0.86rem;
            gap: 1rem;
            justify-content: space-between;
            line-height: 1.25;
            min-height: 0;
        }

        .survey-admin-quality-metric-heading strong {
            align-items: baseline;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 1rem;
            font-variant-numeric: tabular-nums;
            font-weight: 700;
            gap: 0.25rem;
        }

        .survey-admin-quality-metric-heading strong small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
            font-weight: 650;
        }

        .survey-admin-quality-metric-row {
            align-items: center;
            display: grid;
            gap: 0.65rem;
            grid-template-columns: 100px minmax(2.7rem, max-content);
            justify-content: start;
        }

        .survey-admin-quality-metric-row.is-count-only {
            display: block;
        }

        .survey-admin-quality-metric-bar {
            background: rgba(194, 126, 114, 0.14);
            border-radius: 999px;
            height: 0.5rem;
            max-width: 100px;
            overflow: hidden;
            width: 100px;
        }

        .survey-admin-quality-metric-bar span {
            background: #c27e72;
            border-radius: inherit;
            display: block;
            height: 100%;
            min-width: 0;
        }

        .survey-admin-quality-metric-count {
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-direction: column;
            font-size: 0.82rem;
            font-variant-numeric: tabular-nums;
            line-height: 1.15;
            min-width: 2.8rem;
            text-align: left;
        }

        .survey-admin-quality-metric-count strong {
            color: #bb6d62;
            font-size: 0.88rem;
            font-weight: 700;
        }

        .survey-admin-quality-metric-count small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
        }

        .survey-admin-quality-config {
            border-top: 1px solid rgba(110, 98, 89, 0.1);
            margin-top: 1.6rem;
            padding-top: 1rem;
        }

        .survey-admin-quality-config-header {
            align-items: center;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin-bottom: 0.75rem;
        }

        .survey-admin-quality-config-grid {
            display: grid;
            gap: 0.55rem;
            grid-template-columns: repeat(5, minmax(0, 1fr));
        }

        .survey-admin-quality-toggle {
            align-items: center;
            background: rgba(255, 255, 255, 0.58);
            border: 1px solid rgba(110, 98, 89, 0.12);
            border-radius: 0.5rem;
            color: var(--dayalogs-admin-muted);
            cursor: pointer;
            display: flex;
            font-size: 0.82rem;
            font-weight: 650;
            gap: 0.45rem;
            line-height: 1.25;
            margin: 0;
            min-height: 2.65rem;
            padding: 0.55rem 0.65rem;
        }

        .survey-admin-quality-toggle.is-active {
            background: #fffdfa;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-quality-toggle input {
            flex: 0 0 auto;
            margin: 0;
        }

        @media (max-width: 991.98px) {
            .survey-admin-quality-summary {
                grid-template-columns: 1fr;
            }

            .survey-admin-quality-metrics {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-quality-sampled-row {
                grid-template-columns: 1fr;
            }

            .survey-admin-quality-config-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        @media (max-width: 575.98px) {
            .survey-admin-quality-scope {
                justify-content: stretch;
            }

            .survey-admin-quality-scope .form-select {
                flex: 1;
                width: auto;
            }
            .survey-admin-quality-config-header {
                align-items: flex-start;
                flex-direction: column;
            }
            .survey-admin-section-header-actions.is-half-mobile {
                display: block;
                width: 50%;
            }
            .survey-admin-confidence-gauge {
                height: 12.5rem;
                width: 14rem;
            }

            .survey-admin-confidence-gauge-chart {
                min-height: 12.5rem;
                width: 14rem;
            }

            .survey-admin-quality-config-grid {
                grid-template-columns: 1fr;
            }

            .survey-admin-quality-metrics {
                gap: 1rem 0.85rem;
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-quality-donut-ring {
                height: 9.2rem;
                width: 9.2rem;
            }

            .survey-admin-quality-donut-ring::after {
                height: 6.7rem;
                width: 6.7rem;
            }
        }

        @media (max-width: 360px) {
            .survey-admin-quality-metrics {
                grid-template-columns: 1fr;
            }
        }

        .survey-admin-upload-dropzone {
            border: 1px dashed var(--dayalogs-admin-line);
            border-radius: 0.95rem;
            background: rgba(255, 255, 255, 0.62);
            min-height: 8.2rem;
            padding: 1.25rem;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: border-color 0.2s ease, background-color 0.2s ease;
        }

        .survey-admin-upload-dropzone:hover,
        .survey-admin-upload-dropzone.dz-drag-hover {
            border-color: #b9aa98;
            background: #fffdfa;
        }

        .survey-admin-upload-dropzone .dz-message {
            margin: 0;
            width: 100%;
            color: var(--dayalogs-admin-text);
        }

        .survey-admin-upload-dropzone .dz-preview {
            margin: 0.85rem 0 0;
            min-height: 0;
        }

        .survey-admin-upload-dropzone .dz-progress {
            display: none;
        }

        .survey-admin-dropzone-previews {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
            margin-top: 0.75rem;
        }

        .survey-admin-dropzone-previews:empty {
            display: none;
        }

        .survey-admin-dropzone-previews .dz-preview {
            align-items: center;
            background: #f4efe8;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            gap: 0.65rem;
            margin: 0;
            max-width: min(100%, 34rem);
            min-height: 0;
            padding: 0.55rem 0.65rem 0.55rem 0.85rem;
        }

        .survey-admin-dropzone-previews .dz-preview::before {
            align-items: center;
            background: #fffdfa;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            content: "\F3C2";
            display: inline-flex;
            flex: 0 0 auto;
            font-family: "bootstrap-icons";
            height: 1.6rem;
            justify-content: center;
            width: 1.6rem;
        }

        .survey-admin-dropzone-previews .dz-image,
        .survey-admin-dropzone-previews .dz-progress,
        .survey-admin-dropzone-previews .dz-success-mark,
        .survey-admin-dropzone-previews .dz-error-mark,
        .survey-admin-dropzone-previews .dz-error-message {
            display: none !important;
        }

        .survey-admin-dropzone-previews .dz-details {
            align-items: baseline;
            display: flex;
            flex: 1 1 auto;
            gap: 0.55rem;
            max-width: none;
            min-width: 0;
            opacity: 1;
            padding: 0;
            position: static;
            text-align: left;
        }

        .survey-admin-dropzone-previews .dz-filename {
            min-width: 0;
            order: 1;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-admin-dropzone-previews .dz-filename span {
            background: transparent;
            border: 0;
            padding: 0;
        }

        .survey-admin-dropzone-previews .dz-size {
            color: var(--dayalogs-admin-muted);
            flex: 0 0 auto;
            font-size: 0.78rem;
            order: 2;
        }

        .survey-admin-dropzone-previews .dz-size span {
            background: transparent;
            border: 0;
            padding: 0;
        }

        .survey-admin-dropzone-previews .dz-remove {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            flex: 0 0 auto;
            font-size: 0;
            height: 1.5rem;
            justify-content: center;
            text-decoration: none;
            width: 1.5rem;
        }

        .survey-admin-dropzone-previews .dz-remove::before {
            content: "\F62A";
            font-family: "bootstrap-icons";
            font-size: 1rem;
            line-height: 1;
        }

        .survey-admin-dropzone-previews .dz-remove:hover,
        .survey-admin-dropzone-previews .dz-remove:focus {
            background: rgba(58, 53, 47, 0.08);
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-dropzone-icon {
            width: 2.4rem;
            height: 2.4rem;
            border-radius: 999px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #f4efe8;
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.15rem;
        }

        .survey-admin-title-link {
            color: var(--dayalogs-admin-text-strong);
            text-decoration: none;
        }

        .survey-admin-title-link:hover,
        .survey-admin-title-link:focus {
            color: var(--dayalogs-admin-text-strong);
            text-decoration: underline;
            text-underline-offset: 0.18em;
        }

        .survey-admin-shell .table {
            --bs-table-bg: transparent;
            --bs-table-striped-bg: rgba(243, 238, 232, 0.42);
            --bs-table-hover-bg: rgba(243, 238, 232, 0.62);
            color: var(--dayalogs-admin-text);
            font-size: 0.88rem;
            margin-bottom: 0;
        }

        .survey-admin-shell .table > :not(caption) > * > * {
            padding: 0.52rem 0.72rem;
            border-bottom-color: var(--dayalogs-admin-line);
            box-shadow: none;
        }

        .survey-admin-shell .table thead th {
            color: var(--dayalogs-admin-muted);
            font-weight: 700;
            border-bottom-color: var(--dayalogs-admin-line);
            background: transparent;
        }

        .survey-admin-shell code {
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-shell .form-control,
        .survey-admin-shell .form-select,
        .survey-admin-shell textarea {
            border-color: var(--dayalogs-admin-line);
            border-radius: 0.8rem;
            color: var(--dayalogs-admin-text-strong);
            background: rgba(255, 255, 255, 0.92);
            box-shadow: none;
            font-size: 0.92rem;
        }

        .survey-admin-shell .form-control:not(textarea),
        .survey-admin-shell .form-select {
            height: 2.35rem;
            line-height: 1.5;
            min-height: 2.35rem;
            padding-bottom: 0.375rem;
            padding-top: 0.375rem;
        }

        .survey-admin-shell .form-control:not(textarea) {
            padding-left: 0.75rem;
            padding-right: 0.75rem;
        }

        .survey-admin-shell .form-select {
            background-position: right 0.75rem center;
            background-size: 0.8rem 0.6rem;
            color-scheme: light;
            cursor: pointer;
            padding-left: 0.75rem;
            padding-right: 2.25rem;
            width: 100%;
        }

        .survey-admin-shell .form-select option {
            background: #fffdfa;
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.92rem;
        }

        @media (max-width: 680px) {
            .survey-admin-shell .form-control,
            .survey-admin-shell .form-select,
            .survey-admin-shell textarea {
                font-size: 1rem;
            }

            .survey-admin-shell .form-control:not(textarea),
            .survey-admin-shell .form-select {
                height: 2.55rem;
                min-height: 2.55rem;
                padding-bottom: 0.45rem;
                padding-top: 0.45rem;
            }

            .survey-admin-shell .form-control:not(textarea) {
                padding-left: 0.85rem;
                padding-right: 0.85rem;
            }

            .survey-admin-shell .form-select {
                background-position: right 0.85rem center;
                background-size: 0.85rem 0.65rem;
                padding-left: 0.85rem;
                padding-right: 2.35rem;
            }

            .survey-admin-shell .form-select option {
                font-size: 1rem;
                line-height: 1.45;
                min-height: 2.5rem;
                padding: 0.65rem 0.85rem;
            }
        }

        .survey-admin-shell .form-control:focus,
        .survey-admin-shell .form-select:focus,
        .survey-admin-shell textarea:focus {
            border-color: var(--dayalogs-admin-primary);
            box-shadow: var(--dayalogs-focus-ring);
        }

        .survey-admin-shell .flatpickr-input.form-control {
            background: rgba(255, 255, 255, 0.92);
            cursor: pointer;
        }

        .flatpickr-calendar.survey-admin-calendar {
            --dayalogs-admin-brand: var(--dayalogs-brand);
            --dayalogs-admin-line: var(--dayalogs-line);
            --dayalogs-admin-muted: var(--dayalogs-muted);
            --dayalogs-admin-success: var(--dayalogs-success);
            --dayalogs-admin-surface: var(--dayalogs-surface);
            --dayalogs-admin-text-strong: var(--dayalogs-text-strong);
            background: var(--dayalogs-admin-surface);
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 1rem;
            box-shadow: 0 1rem 2.5rem rgba(53, 47, 43, 0.18);
            color: var(--dayalogs-admin-text-strong);
            overflow: hidden;
            width: 17.5rem;
        }

        .flatpickr-calendar.survey-admin-calendar::before,
        .flatpickr-calendar.survey-admin-calendar::after {
            border-bottom-color: var(--dayalogs-admin-line);
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-months,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-weekdays {
            background: #f7f2eb;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-months {
            align-items: center;
            padding: 0.35rem 0.5rem 0.12rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-month {
            height: 2.25rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-current-month {
            font-size: 1rem;
            height: 2.25rem;
            padding-top: 0.35rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-month,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-current-month,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-current-month input.cur-year,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-current-month .flatpickr-monthDropdown-months {
            color: var(--dayalogs-admin-text-strong);
            fill: var(--dayalogs-admin-text-strong);
            font-weight: 700;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-prev-month,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-next-month {
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            fill: var(--dayalogs-admin-muted);
            height: 1.85rem;
            padding: 0.42rem;
            top: 0.34rem;
            width: 1.85rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-prev-month:hover,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-next-month:hover {
            background: #ebe3da;
            color: var(--dayalogs-admin-brand);
            fill: var(--dayalogs-admin-brand);
        }

        .flatpickr-calendar.survey-admin-calendar span.flatpickr-weekday {
            color: var(--dayalogs-admin-muted);
            font-size: 0.68rem;
            font-weight: 700;
            letter-spacing: 0.04em;
            text-transform: uppercase;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-rContainer,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-weekdays,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-days,
        .flatpickr-calendar.survey-admin-calendar .dayContainer {
            max-width: 17.5rem;
            min-width: 17.5rem;
            width: 17.5rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-days {
            padding: 0.25rem 0.3rem 0.35rem;
        }

        .flatpickr-calendar.survey-admin-calendar .dayContainer {
            justify-content: center;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-day {
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            flex-basis: 2rem;
            font-size: 0.78rem;
            height: 2rem;
            line-height: 2rem;
            margin: 0.04rem 0.18rem;
            max-width: 2rem;
            width: 2rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-day:hover,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-day:focus {
            background: #efe7de;
            border-color: #efe7de;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-day.today {
            border-color: var(--dayalogs-admin-success);
            color: var(--dayalogs-admin-brand);
            font-weight: 700;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-day.selected,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-day.startRange,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-day.endRange {
            background: var(--dayalogs-admin-brand);
            border-color: var(--dayalogs-admin-brand);
            color: #fff;
            box-shadow: none;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-day.prevMonthDay,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-day.nextMonthDay {
            color: #b8aea3;
        }

        .flatpickr-calendar.survey-admin-calendar.hasTime .flatpickr-time {
            border-top-color: var(--dayalogs-admin-line);
            height: 2.55rem;
            line-height: 2.55rem;
            padding: 0.25rem 0.65rem;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-time input,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-time .flatpickr-am-pm {
            border-radius: 0.55rem;
            color: var(--dayalogs-admin-text-strong);
            font-weight: 600;
        }

        .flatpickr-calendar.survey-admin-calendar .flatpickr-time input:hover,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-time .flatpickr-am-pm:hover,
        .flatpickr-calendar.survey-admin-calendar .flatpickr-time input:focus {
            background: #f7f2eb;
        }

        .survey-admin-shell .btn {
            align-items: center;
            border-radius: var(--dayalogs-admin-button-radius);
            box-shadow: none !important;
            display: inline-flex;
            font-size: 0.89rem;
            gap: 0.42rem;
            justify-content: center;
            min-height: var(--dayalogs-admin-button-height);
        }

        .survey-admin-shell .btn .bi {
            flex: 0 0 auto;
            font-size: 1rem;
            line-height: 1;
            margin-right: 0.35rem;
        }

        .survey-admin-shell .survey-admin-icon-button .bi {
            margin-right: 0;
        }

        .survey-admin-shell .btn-sm {
            min-height: 2rem;
        }

        .survey-admin-shell .survey-admin-icon-button {
            --dayalogs-admin-icon-button-size: 2rem;
            padding: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            aspect-ratio: 1 / 1;
            border-radius: 50%;
            flex: 0 0 var(--dayalogs-admin-icon-button-size);
            font-size: 0.95rem;
            height: var(--dayalogs-admin-icon-button-size);
            line-height: 1;
            max-height: var(--dayalogs-admin-icon-button-size);
            max-width: var(--dayalogs-admin-icon-button-size);
            min-height: var(--dayalogs-admin-icon-button-size);
            min-width: var(--dayalogs-admin-icon-button-size);
            width: var(--dayalogs-admin-icon-button-size);
        }

        .survey-admin-shell .survey-admin-icon-button.btn-sm {
            font-size: 0.95rem;
        }

        .survey-admin-shell .survey-admin-icon-button .bi {
            font-size: 0.95rem;
            line-height: 0.95;
        }

        .survey-admin-shell .btn-primary {
            background: var(--dayalogs-admin-primary);
            border-color: var(--dayalogs-admin-primary);
            color: #fff;
        }

        .survey-admin-shell .btn-primary:hover,
        .survey-admin-shell .btn-primary:focus {
            background: var(--dayalogs-admin-primary-hover);
            border-color: var(--dayalogs-admin-primary-hover);
            color: #fff;
        }

        .survey-admin-shell .btn-outline-primary,
        .survey-admin-shell .btn-outline-secondary,
        .survey-admin-shell .btn-outline-success {
            border-color: var(--dayalogs-admin-line);
            color: var(--dayalogs-admin-text-strong);
            background: rgba(255, 255, 255, 0.9);
        }

        .survey-admin-shell .btn-outline-primary:hover,
        .survey-admin-shell .btn-outline-primary:focus,
        .survey-admin-shell .btn-outline-secondary:hover,
        .survey-admin-shell .btn-outline-secondary:focus,
        .survey-admin-shell .btn-outline-success:hover,
        .survey-admin-shell .btn-outline-success:focus {
            border-color: #d4c8ba;
            background: #f4efe8;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-shell .btn-outline-danger {
            border-color: #efc1b7;
            color: #d07d71;
            background: rgba(255, 255, 255, 0.9);
        }

        .survey-admin-shell .badge {
            border: 0;
            border-radius: 999px;
            font-size: 0.74rem;
            font-weight: 750;
            line-height: 1.1;
            padding: 0.28rem 0.48rem;
            text-transform: lowercase;
        }

        .survey-admin-shell .badge.text-bg-success {
            background: var(--dayalogs-admin-success) !important;
            color: #fff !important;
        }

        .survey-admin-shell .badge.text-bg-warning,
        .survey-admin-shell .badge.text-bg-light,
        .survey-admin-shell .badge.text-bg-secondary {
            background: #f1e6db !important;
            color: var(--dayalogs-admin-text-strong) !important;
        }

        .survey-admin-shell [x-cloak] {
            display: none !important;
        }

        .survey-admin-stat {
            border-bottom: 1px solid var(--dayalogs-admin-line);
            padding: 1rem 0 1.2rem;
        }

        .survey-admin-stat-value {
            color: var(--dayalogs-admin-text-strong);
            font-size: 2rem;
            font-weight: 700;
            line-height: 1;
        }

        .survey-admin-stat-value-with-unit {
            align-items: baseline;
            display: flex;
            gap: 0.28rem;
            white-space: nowrap;
        }

        .survey-admin-stat-value-with-unit small {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.52em;
            font-weight: 700;
            line-height: 1;
        }

        .survey-admin-overview {
            display: flex;
            flex-direction: column;
            gap: 1.25rem;
        }

        .survey-admin-overview-header {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            padding-bottom: 0.35rem;
        }

        .survey-admin-overview-header .text-muted {
            margin-top: 0.45rem;
        }

        .survey-admin-overview-header .text-muted a {
            color: var(--dayalogs-admin-text-strong);
            font-weight: 650;
            text-decoration: underline;
            text-decoration-thickness: 0.06em;
            text-underline-offset: 0.16em;
        }

        .survey-admin-section-header-actions {
            align-items: center;
            display: flex;
            flex-shrink: 0;
            flex-wrap: wrap;
            gap: 0.5rem;
            justify-content: flex-end;
        }

        .survey-admin-overview-status {
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            justify-content: flex-end;
        }

        .survey-admin-soft-panel {
            background: #f8f4ef;
            border-radius: 1.05rem;
            padding: 0.9rem 1rem;
        }

        .survey-admin-translation-status-grid {
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .survey-admin-translation-locale-list {
            display: grid;
            gap: 0.55rem;
            margin-top: 0.65rem;
        }

        .survey-admin-translation-locale-row {
            align-items: center;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: minmax(0, 1fr) auto;
        }

        .survey-admin-translation-locale-main {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            min-width: 0;
        }

        .survey-admin-translation-locale-main strong {
            min-width: 0;
            overflow-wrap: anywhere;
        }

        .survey-admin-translation-locale-actions {
            flex-wrap: nowrap;
            justify-content: flex-end;
        }

        .survey-admin-translation-locale-actions form {
            display: inline-flex;
        }

        .survey-admin-soft-panel .survey-admin-overview-status {
            justify-content: flex-start;
            margin-top: 0.55rem;
        }

        .survey-admin-version-mobile-label {
            display: none;
        }

        .survey-admin-stat-grid {
            background: rgba(255, 255, 255, 0.48);
            border-bottom: 1px solid var(--dayalogs-admin-line);
            border-top: 1px solid var(--dayalogs-admin-line);
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .survey-admin-stat-grid .survey-admin-stat {
            border-bottom: 0;
            min-height: 8.2rem;
            padding: 1rem 1.05rem;
        }

        .survey-admin-stat-grid .survey-admin-stat + .survey-admin-stat {
            border-left: 1px solid var(--dayalogs-admin-line);
        }

        .survey-admin-stat-heading {
            align-items: center;
            display: flex;
            gap: 0.65rem;
            justify-content: space-between;
            min-height: 1.45rem;
        }

        .survey-admin-stat-heading .survey-admin-field-label {
            margin-bottom: 0;
        }

        .survey-admin-stat-heading i {
            color: var(--dayalogs-admin-muted);
            font-size: 1rem;
        }

        .survey-admin-stat-value-sm {
            font-size: 1.28rem;
            line-height: 1.18;
            min-height: 2rem;
            word-break: break-word;
        }

        .survey-admin-stat-datetime {
            color: var(--dayalogs-admin-text-strong);
            display: flex;
            flex-direction: column;
            justify-content: center;
            min-height: 3.05rem;
            word-break: normal;
        }

        .survey-admin-stat-date {
            display: block;
            font-size: 1.78rem;
            font-weight: 700;
            line-height: 1;
        }

        .survey-admin-stat-time {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 1rem;
            font-weight: 600;
            line-height: 1.1;
            margin-top: 0.18rem;
        }

        /* Dashboard header follows the shared header-card spacing. */

        .survey-admin-section-dashboard .survey-admin-main-scroll,
        .survey-admin-section-dashboard .survey-admin-content-stack {
            padding-right: 0;
        }

        .survey-admin-section-dashboard .survey-admin-content-stack {
            padding-bottom: 0;
        }

        .survey-admin-dashboard {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        .survey-admin-dashboard-group {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        .survey-admin-dashboard-stat-grid {
            background: transparent;
            border: 0;
            display: grid;
            gap: 1rem;
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .survey-admin-dashboard .survey-admin-stat {
            background: #f4efe8;
            border-bottom: 0;
            border-radius: 0.95rem;
            min-height: 11.5rem;
            padding: 1.35rem;
        }

        .survey-admin-dashboard .survey-admin-stat + .survey-admin-stat {
            border-left: 0;
        }

        .survey-admin-dashboard .survey-admin-stat-value {
            font-size: 3.2rem;
            line-height: 0.95;
            margin-top: 0.5rem;
        }

        .survey-admin-dashboard .survey-admin-stat-value-sm {
            font-size: 1.45rem;
            margin-top: 0.75rem;
            min-height: 3.05rem;
        }

        .survey-admin-dashboard .survey-admin-stat-datetime,
        .survey-admin-survey-stat-grid .survey-admin-stat-datetime {
            margin-top: 0.75rem;
        }

        .survey-admin-dashboard .survey-admin-stat-heading i {
            align-items: center;
            background: #fffdfa;
            border-radius: 999px;
            display: inline-flex;
            height: 2rem;
            justify-content: center;
            width: 2rem;
        }

        .survey-admin-stat-link {
            color: inherit;
            display: inline-flex;
            text-decoration: none;
        }

        .survey-admin-stat-link:hover,
        .survey-admin-stat-link:focus {
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-account-stack {
            display: flex;
            flex-direction: column;
            gap: 1.2rem;
        }

        .survey-admin-account-fields {
            display: grid;
            gap: 1rem;
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .survey-admin-account-fields > div {
            background: #f4efe8;
            border-radius: 0.95rem;
            min-height: 6.4rem;
            min-width: 0;
            padding: 1rem;
        }

        .survey-admin-account-field-editable label {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }

        .survey-admin-account-field-editable .form-control {
            background: rgba(255, 253, 250, 0.72);
            border-color: rgba(212, 198, 177, 0.9);
            color: var(--dayalogs-admin-text-strong);
            font-weight: 650;
        }

        .survey-admin-account-fields strong,
        .survey-admin-account-fields span:not(.survey-admin-field-label),
        .survey-admin-account-fields code {
            overflow-wrap: anywhere;
        }

        .survey-admin-team-page {
            display: flex;
            flex-direction: column;
            gap: 1.1rem;
        }

        .survey-admin-team-card {
            background: #f4efe8;
            border: 0;
            border-radius: 0.95rem;
            box-shadow: none;
        }

        .survey-admin-team-seats {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-wrap: wrap;
            gap: 0.75rem;
            white-space: nowrap;
        }

        .survey-admin-team-license-form {
            align-items: end;
            display: flex;
            flex-wrap: wrap;
            gap: 0.55rem;
            margin-top: 0.75rem;
        }

        .survey-admin-team-license-form label {
            display: grid;
            gap: 0.3rem;
            margin: 0;
        }

        .survey-admin-team-license-form label span {
            color: var(--dayalogs-admin-muted);
            font-size: 0.68rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        .survey-admin-team-license-form select {
            min-width: 12rem;
        }

        .survey-admin-team-grid {
            display: grid;
            gap: 1.1rem;
            grid-template-columns: minmax(0, 1fr) minmax(20rem, 1fr);
        }

        .survey-admin-team-grid.is-single {
            grid-template-columns: minmax(0, 1fr);
        }

        .survey-admin-team-card {
            min-width: 0;
            overflow: hidden;
        }

        .survey-admin-team-card-header {
            align-items: center;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            padding: 1.35rem 1.45rem 1rem;
        }

        .survey-admin-team-card-header.is-simple {
            align-items: flex-start;
        }

        .survey-admin-team-card > .survey-admin-table-panel {
            margin: 0 1.35rem 1.35rem;
        }

        .survey-admin-invite-form {
            align-items: center;
            display: flex;
            gap: 0.45rem;
            min-width: min(100%, 20rem);
        }

        .survey-admin-team-note {
            background: rgba(230, 220, 207, 0.5);
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            font-weight: 650;
            max-width: 26rem;
            padding: 0.65rem 0.95rem;
            text-align: right;
        }

        .survey-admin-payments-page {
            display: grid;
            gap: 1.15rem;
            grid-template-columns: minmax(18rem, 4fr) minmax(0, 8fr);
        }

        .survey-admin-payments-sidebar {
            display: flex;
            flex-direction: column;
            gap: 1.15rem;
            min-width: 0;
        }

        .survey-admin-wallet-column {
            display: flex;
            flex-direction: column;
            gap: 1.15rem;
            min-width: 0;
        }

        .survey-admin-payment-card {
            background: #f4efe8;
            border: 0;
            border-radius: 0.95rem;
            box-shadow: none;
            min-width: 0;
            overflow: hidden;
            padding: 1rem;
        }

        .survey-admin-payment-card-header {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin-bottom: 0.85rem;
        }

        .survey-admin-payment-card-header h2 {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.34rem;
            font-weight: 760;
            letter-spacing: 0;
            line-height: 1.12;
            margin: 0.38rem 0 0.24rem;
        }

        .survey-admin-payment-card-header p,
        .survey-admin-payment-note {
            color: var(--dayalogs-admin-muted);
            font-size: 0.88rem;
            line-height: 1.45;
            margin: 0;
        }

        .survey-admin-payment-status,
        .survey-admin-wallet-type {
            background: #fffdfa;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.74rem;
            font-weight: 760;
            line-height: 1;
            padding: 0.42rem 0.62rem;
            white-space: nowrap;
        }

        .survey-admin-payment-facts {
            display: grid;
            gap: 0.45rem;
            margin: 0 0 0.85rem;
        }

        .survey-admin-payment-facts > div {
            align-items: baseline;
            background: transparent;
            border-top: 1px solid rgba(110, 98, 89, 0.14);
            display: grid;
            gap: 0.8rem;
            grid-template-columns: minmax(7rem, auto) minmax(0, 1fr);
            padding: 0.52rem 0 0;
        }

        .survey-admin-payment-facts dt,
        .survey-admin-wallet-filters span {
            color: var(--dayalogs-admin-muted);
            font-size: 0.72rem;
            font-weight: 760;
            letter-spacing: 0.06em;
            line-height: 1;
            margin-bottom: 0;
            text-transform: uppercase;
        }

        .survey-admin-payment-facts dd {
            color: var(--dayalogs-admin-text);
            font-size: 0.92rem;
            line-height: 1.35;
            margin: 0;
        }

        .survey-admin-payment-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.55rem;
        }

        .survey-admin-payments-sidebar .survey-admin-payment-actions .btn {
            font-size: 0.86rem;
            padding: 0.45rem 0.72rem;
        }

        .survey-admin-wallet-card .survey-admin-payment-actions {
            margin-bottom: 0.55rem;
        }

        .survey-admin-wallet-card .survey-admin-payment-card-header {
            margin-bottom: 0.65rem;
        }

        .survey-admin-wallet-card .survey-admin-payment-note {
            font-size: 0.82rem;
            line-height: 1.35;
        }

        .survey-admin-payment-ledger {
            align-self: start;
            min-width: 0;
        }

        .survey-admin-payment-ledger-header {
            align-items: flex-start;
            border-bottom: 1px solid var(--dayalogs-admin-line);
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin-bottom: 1rem;
            padding-bottom: 0.95rem;
        }

        .survey-admin-payment-ledger-header h2 {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.34rem;
            font-weight: 760;
            letter-spacing: 0;
            line-height: 1.12;
            margin: 0.38rem 0 0.24rem;
        }

        .survey-admin-payment-ledger-header p {
            color: var(--dayalogs-admin-muted);
            font-size: 0.88rem;
            line-height: 1.45;
            margin: 0;
        }

        .survey-admin-wallet-filters {
            align-items: end;
            display: flex;
            flex-wrap: wrap;
            gap: 0.7rem;
            margin-bottom: 1rem;
        }

        .survey-admin-wallet-filters label {
            display: flex;
            flex-direction: column;
            flex: 1 1 8.5rem;
            gap: 0.4rem;
            min-width: 0;
        }

        .survey-admin-wallet-filters button,
        .survey-admin-wallet-filters a {
            flex: 0 0 auto;
        }

        .survey-admin-wallet-filters .form-control,
        .survey-admin-wallet-filters .form-select {
            background-color: #f9f5ef;
            border-color: var(--dayalogs-admin-line);
        }

        .survey-admin-wallet-table-wrap {
            margin-top: 0.85rem;
        }

        .survey-admin-wallet-table {
            margin-bottom: 0;
        }

        .survey-admin-top-up-options {
            display: grid;
            gap: 0.55rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .survey-admin-top-up-options label {
            align-items: center;
            background: #fffdfa;
            border: 0;
            border-radius: 0.85rem;
            color: var(--dayalogs-admin-text-strong);
            cursor: pointer;
            display: flex;
            font-weight: 760;
            gap: 0.5rem;
            justify-content: center;
            padding: 0.72rem 0.8rem;
        }

        .survey-admin-form-field {
            color: var(--dayalogs-admin-text-strong);
            display: flex;
            flex-direction: column;
            font-weight: 760;
            gap: 0.4rem;
        }

        .survey-admin-form-field small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
            font-weight: 500;
        }

        .survey-admin-wallet-table small {
            color: var(--dayalogs-admin-muted);
            display: block;
            margin-top: 0.12rem;
        }

        .survey-admin-wallet-positive {
            color: #4b7a4d !important;
            font-weight: 760;
        }

        .survey-admin-wallet-negative {
            color: #a05b4f !important;
            font-weight: 760;
        }

        .survey-admin-member-cell {
            align-items: center;
            display: flex;
            gap: 0.8rem;
            min-width: 0;
        }

        .survey-admin-member-cell small {
            color: var(--dayalogs-admin-muted);
            display: block;
            margin-top: 0.15rem;
        }

        .survey-admin-member-avatar {
            align-items: center;
            background: var(--dayalogs-admin-brand);
            border-radius: 999px;
            color: #fff;
            display: inline-flex;
            flex: 0 0 auto;
            font-size: 0.78rem;
            font-weight: 700;
            height: 2.35rem;
            justify-content: center;
            width: 2.35rem;
        }

        .survey-admin-role-pill {
            background: #eadcc0;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 0.78rem;
            font-weight: 700;
            line-height: 1;
            padding: 0.35rem 0.62rem;
        }

        .survey-admin-member-scope-summary {
            color: var(--dayalogs-admin-muted);
            font-size: 0.78rem;
            margin-top: 0.35rem;
        }

        .survey-admin-member-permissions-heading {
            align-items: baseline;
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem 0.75rem;
            justify-content: space-between;
            letter-spacing: 0;
            text-transform: none;
        }

        .survey-admin-member-scope-groups {
            display: grid;
            gap: 0.95rem;
            margin-top: 0.75rem;
            max-height: min(48vh, 28rem);
            overflow: auto;
            padding-right: 0.35rem;
        }

        .survey-admin-member-scope-group {
            background: #f4efe8;
            border-radius: 0.95rem;
            padding: 0.85rem;
        }

        .survey-admin-member-scope-group h3 {
            color: var(--dayalogs-admin-muted);
            font-size: 0.74rem;
            font-weight: 780;
            letter-spacing: 0.08em;
            line-height: 1;
            margin: 0 0 0.72rem;
            text-transform: uppercase;
        }

        .survey-admin-member-scope-grid {
            display: grid;
            gap: 0.48rem;
            grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr));
        }

        .survey-admin-member-scope-grid label {
            align-items: center;
            background: #fffdfa;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 0.82rem;
            font-weight: 700;
            gap: 0.48rem;
            line-height: 1.15;
            min-height: 2.15rem;
            padding: 0.48rem 0.68rem;
        }

        .survey-admin-member-scope-grid .form-check-input {
            flex: 0 0 auto;
            margin-top: 0;
        }

        .survey-admin-member-permissions-inherited {
            background: #f4efe8;
            border-radius: 0.7rem;
            color: var(--dayalogs-admin-muted);
            font-size: 0.9rem;
            font-weight: 600;
            letter-spacing: 0;
            padding: 1rem;
            text-transform: none;
        }

        .survey-admin-team-empty {
            background: #f8f4ee;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.45rem;
            color: var(--dayalogs-admin-muted);
            margin: 0 1.45rem 1.45rem;
            padding: 1.25rem;
        }

        .survey-admin-form-grid {
            display: grid;
            gap: 0.85rem;
        }

        .survey-admin-form-grid-wide {
            grid-column: 1 / -1;
        }

        .survey-admin-form-grid label,
        .survey-admin-form-grid-wide {
            display: flex;
            flex-direction: column;
            gap: 0.35rem;
            min-width: 0;
        }

        .survey-admin-profile-grid {
            display: grid;
            gap: 1rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .survey-admin-profile-grid label {
            display: flex;
            flex-direction: column;
            gap: 0.4rem;
        }

        .survey-admin-profile-grid input,
        .survey-admin-profile-grid select,
        .survey-admin-profile-grid small {
            letter-spacing: 0;
            text-transform: none;
        }

        .survey-admin-form-actions {
            align-items: center;
            display: flex;
            justify-content: flex-end;
        }

        .survey-admin-api-token-reveal {
            align-items: flex-start;
            background: #efe3cc;
            border-radius: 0.95rem;
            color: var(--dayalogs-admin-text-strong);
            display: grid;
            gap: 1rem;
            grid-template-columns: minmax(0, 0.9fr) minmax(18rem, 1.1fr);
            padding: 1.1rem 1.25rem;
        }

        .survey-admin-api-token-copy {
            align-items: center;
            display: flex;
            gap: 0.5rem;
            min-width: 0;
        }

        .survey-admin-api-token-copy input {
            font-family: var(--bs-font-monospace);
            min-width: 0;
        }

        .survey-admin-api-token-name,
        .survey-admin-api-token-dates {
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
        }

        .survey-admin-api-token-name small,
        .survey-admin-api-token-dates {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
        }

        .survey-admin-api-scope-list,
        .survey-admin-api-scope-picker {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
        }

        .survey-admin-api-scope-picker label {
            align-items: center;
            background: #f4efe8;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            flex-direction: row;
            font-size: 0.82rem;
            gap: 0.45rem;
            letter-spacing: 0;
            padding: 0.5rem 0.7rem;
            text-transform: none;
        }

        .survey-admin-locale-list {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
            min-height: 2rem;
        }

        .survey-admin-locale-summary {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-admin-cost-layout {
            border-top: 1px solid var(--dayalogs-admin-line);
            display: grid;
            grid-template-columns: minmax(15rem, 0.72fr) minmax(0, 1fr);
        }

        .survey-admin-cost-hero {
            background: rgba(255, 255, 255, 0.5);
            border-right: 1px solid var(--dayalogs-admin-line);
            padding: 1.1rem;
        }

        .survey-admin-cost-hero strong {
            color: var(--dayalogs-admin-text-strong);
            display: block;
            font-size: clamp(2.15rem, 6vw, 3.4rem);
            line-height: 0.95;
            margin: 0.45rem 0 0.6rem;
        }

        .survey-admin-cost-breakdown {
            display: grid;
            gap: 0;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            margin: 0;
        }

        .survey-admin-cost-breakdown > div {
            padding: 1rem;
        }

        .survey-admin-cost-breakdown > div:not(:last-child) {
            border-right: 1px solid var(--dayalogs-admin-line);
        }

        .survey-admin-cost-breakdown dt {
            color: var(--dayalogs-admin-muted);
            font-size: 0.74rem;
            font-weight: 760;
            letter-spacing: 0.055em;
            line-height: 1.1;
            margin: 0 0 0.45rem;
            text-transform: uppercase;
        }

        .survey-admin-cost-breakdown dd {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.1rem;
            font-weight: 700;
            line-height: 1.15;
            margin: 0;
            word-break: break-word;
        }

        .survey-admin-cost-scenarios {
            border-top: 1px solid var(--dayalogs-admin-line);
            display: grid;
            gap: 0.75rem;
            padding-top: 1.1rem;
        }

        .survey-admin-cost-scenario-grid {
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .survey-admin-cost-scenario-grid > div {
            padding: 0 0 0.8rem;
        }

        .survey-admin-cost-scenario-grid span {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 0.82rem;
            line-height: 1.25;
        }

        .survey-admin-cost-scenario-grid strong {
            color: var(--dayalogs-admin-text-strong);
            display: block;
            font-size: 1.35rem;
            line-height: 1.1;
            margin-top: 0.2rem;
        }

        .survey-admin-access-panel {
            align-items: center;
            background: #f8f4ee;
            border-bottom: 1px solid var(--dayalogs-admin-line);
            border-top: 1px solid var(--dayalogs-admin-line);
            display: grid;
            gap: 1.25rem;
            grid-template-columns: minmax(16rem, 0.82fr) minmax(18rem, 1fr);
            padding: 1.15rem 0;
        }

        .survey-admin-access-copy {
            align-items: flex-start;
            display: flex;
            gap: 0.9rem;
            padding-left: 1rem;
        }

        .survey-admin-access-icon {
            align-items: center;
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            flex: 0 0 auto;
            font-size: 1.1rem;
            height: 2.35rem;
            justify-content: center;
            width: 2.35rem;
        }

        .survey-admin-url-block {
            min-width: 0;
            padding-right: 1rem;
        }

        .survey-admin-survey-page .survey-admin-surface {
            border-bottom: 0;
        }

        .survey-admin-survey-page .survey-admin-overview {
            gap: 1rem;
        }

        .survey-admin-survey-page .survey-admin-overview-header {
            padding-bottom: 0.2rem;
        }

        .survey-admin-survey-stat-grid {
            background: transparent;
            border: 0;
            gap: 1rem;
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .survey-admin-survey-stat-grid .survey-admin-stat {
            background: #f4efe8;
            border: 0 !important;
            border-radius: 0.95rem;
            min-height: 11.5rem;
            padding: 1.35rem;
        }

        .survey-admin-survey-stat-grid .survey-admin-stat-value {
            font-size: 3.2rem;
            line-height: 0.95;
            margin-top: 0.5rem;
        }

        .survey-admin-survey-stat-grid .survey-admin-stat-value-sm {
            font-size: 1.45rem;
            line-height: 1.12;
            margin-top: 0.75rem;
            min-height: 3.05rem;
        }

        .survey-admin-survey-stat-grid .survey-admin-stat-heading i {
            align-items: center;
            background: #fffdfa;
            border-radius: 999px;
            display: inline-flex;
            height: 2rem;
            justify-content: center;
            width: 2rem;
        }

        .survey-admin-survey-page .survey-admin-access-panel {
            background: #f4efe8;
            border: 0;
            border-radius: 0.95rem;
            gap: 1.25rem;
            margin-top: 0.15rem;
            padding: 1.35rem;
        }

        .survey-admin-survey-page .survey-admin-access-copy {
            padding-left: 0;
        }

        .survey-admin-survey-page .survey-admin-access-icon {
            border: 0;
            height: 2rem;
            width: 2rem;
        }

        .survey-admin-survey-page .survey-admin-url-block {
            padding-right: 0;
        }

        .survey-admin-survey-page .survey-admin-url-control .form-control {
            background: #fffdfa;
            border-color: transparent;
        }

        .survey-admin-url-control {
            align-items: center;
            display: grid;
            gap: 0.45rem;
            grid-template-columns: minmax(0, 1fr) auto auto;
        }

        .survey-admin-url-control .form-control {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .survey-admin-ai-mode .survey-admin-header-card {
            margin-bottom: 0.75rem !important;
            padding: 0.55rem 0 0.65rem;
        }

        .survey-admin-ai-mode .survey-admin-header-card h1 {
            font-size: 1.28rem;
            line-height: 1.1;
        }

        .survey-admin-ai-mode .survey-admin-header-card p {
            font-size: 0.86rem;
        }

        .survey-admin-ai-mode .survey-admin-main-scroll,
        .survey-admin-ai-mode .survey-admin-content-stack {
            overflow: hidden;
        }

        .survey-admin-ai-mode .survey-admin-content-stack {
            display: flex;
            height: 100%;
            min-height: 0;
            padding-bottom: 0;
        }

        .survey-ai-builder {
            display: flex;
            flex: 1 1 auto;
            min-height: 0;
            width: 100%;
        }

        .survey-admin-flow-surface {
            background: transparent;
            border: 0;
            box-shadow: none;
        }

        .survey-ai-flow-only {
            min-height: calc(100vh - var(--dayalogs-topbar-height, 0px) - 14rem);
        }

        .survey-ai-flow-only .survey-ai-panel {
            min-height: calc(100vh - var(--dayalogs-topbar-height, 0px) - 14rem);
            width: 100%;
        }

        .survey-ai-flow-only .survey-ai-panel-body {
            background: transparent;
            border-radius: 0;
        }

        .survey-ai-flow-only .survey-ai-panel-body-embedded {
            overflow: visible;
        }

        .survey-ai-flow-panel .btn-warning {
            background: #e8d8a6;
            border-color: #e1cf96;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-ai-flow-panel .btn-warning:hover,
        .survey-ai-flow-panel .btn-warning:focus {
            background: #dfcb8f;
            border-color: #d7bf78;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-ai-workbench {
            display: grid;
            flex: 1 1 auto;
            gap: 1rem;
            grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
            min-height: 0;
        }

        .survey-ai-panel {
            display: flex;
            flex-direction: column;
            min-height: 0;
            position: relative;
        }

        .survey-ai-panel-header {
            align-items: flex-start;
            border-bottom: 0;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            min-height: 3.35rem;
            padding: 0.55rem 0 0.65rem;
        }

        .survey-ai-panel-header p {
            font-size: 0.84rem;
            line-height: 1.25;
        }

        .survey-ai-chat-surface {
            background: #fff;
            border: 0;
            border-radius: 0.8rem;
            display: flex;
            flex: 1 1 auto;
            flex-direction: column;
            min-height: 0;
            overflow: hidden;
        }

        .survey-ai-panel-body {
            flex: 1 1 auto;
            min-height: 0;
            overflow: auto;
            padding: 0.85rem;
            position: relative;
        }

        .survey-ai-chat-scroll {
            background: #fff;
        }

        .survey-ai-chat-history {
            display: flex;
            flex-direction: column;
            gap: 0.72rem;
            min-height: 100%;
        }

        .survey-ai-empty-thread {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex: 1 1 auto;
            font-size: 0.9rem;
            justify-content: center;
            min-height: 8rem;
            text-align: center;
        }

        .survey-ai-message {
            border: 0;
            max-width: min(74%, 44rem);
            padding: 0;
        }

        .survey-ai-message-label {
            color: var(--dayalogs-admin-muted);
            font-size: 0.68rem;
            font-weight: 700;
            letter-spacing: 0.06em;
            margin-bottom: 0.28rem;
            text-transform: uppercase;
        }

        .survey-ai-message-content {
            color: var(--dayalogs-admin-text-strong);
            line-height: 1.45;
            overflow-wrap: anywhere;
        }

        .survey-ai-message-user {
            align-self: flex-end;
        }

        .survey-ai-message-user .survey-ai-message-label {
            text-align: right;
        }

        .survey-ai-message-user .survey-ai-message-content {
            background: #e9ded2;
            border-radius: 1rem 1rem 0.25rem 1rem;
            padding: 0.62rem 0.78rem;
        }

        .survey-ai-message-assistant {
            align-self: flex-start;
        }

        .survey-ai-message-assistant .survey-ai-message-content {
            background: #fff9f1;
            border-radius: 1rem 1rem 1rem 0.25rem;
            padding: 0.62rem 0.78rem;
        }

        .survey-ai-message.is-pending {
            opacity: 0.78;
        }

        .survey-ai-thinking {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            gap: 0.45rem;
        }

        .survey-ai-message-meta {
            background: #f4ece3;
            border-radius: 0.75rem;
            color: var(--dayalogs-admin-text);
            margin-top: 0.65rem;
            padding: 0.55rem 0.68rem;
        }

        .survey-ai-composer {
            background: #fff;
            border-top: 0;
            box-sizing: border-box;
            flex: 0 0 auto;
            margin: 0 auto;
            padding: 0.72rem 0.78rem 0.62rem;
            width: 70%;
        }

        .survey-ai-composer-shell {
            background: #f4efe8;
            border: 0;
            border-radius: 1.45rem;
            min-height: 5.1rem;
            padding: 0.75rem 3.85rem 0.75rem 1rem;
            position: relative;
        }

        .survey-ai-attachment-row {
            display: flex;
            margin: 0 0 0.42rem 0.15rem;
            min-width: 0;
        }

        .survey-ai-attachment-row[hidden] {
            display: none;
        }

        .survey-ai-attachment-pill {
            align-items: center;
            background: #f4efe8;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 0.88rem;
            gap: 0.42rem;
            line-height: 1.2;
            max-width: min(100%, 26rem);
            min-width: 0;
            padding: 0.4rem 0.95rem 0.4rem 0.58rem;
        }

        .survey-ai-attachment-pill > span {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-ai-attachment-remove {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            height: 1.3rem;
            justify-content: center;
            padding: 0;
            width: 1.3rem;
        }

        .survey-ai-attachment-remove:hover,
        .survey-ai-attachment-remove:focus {
            background: rgba(110, 98, 89, 0.1);
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-ai-run-status {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            flex: 1 1 auto;
            font-size: 0.88rem;
            gap: 0.45rem;
            margin: 0.42rem 0 0 1.05rem;
            max-width: 100%;
            min-height: 1.4rem;
            min-width: 0;
            padding: 0;
        }

        .survey-ai-run-status [data-ai-run-text] {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-ai-run-status[hidden] {
            display: none;
        }

        .survey-ai-input-row {
            align-items: stretch;
            display: block;
            min-height: 100%;
        }

        .survey-ai-composer textarea {
            background: transparent !important;
            border: 0;
            border-radius: 0.75rem;
            box-shadow: none !important;
            height: 3.55rem;
            line-height: 1.35rem;
            max-height: 14.2rem;
            min-height: 3.55rem;
            overflow-y: hidden;
            padding: 0.35rem 0.55rem 0.35rem 0.25rem;
            resize: none;
            scrollbar-color: rgba(110, 98, 89, 0.36) transparent;
            scrollbar-width: thin;
        }

        .survey-ai-composer textarea::-webkit-scrollbar {
            width: 0.45rem;
        }

        .survey-ai-composer textarea::-webkit-scrollbar-track {
            background: transparent;
        }

        .survey-ai-composer textarea::-webkit-scrollbar-thumb {
            background: rgba(110, 98, 89, 0.32);
            border-radius: 999px;
        }

        .survey-ai-composer textarea:focus {
            box-shadow: none;
        }

        .survey-ai-input-actions {
            align-items: center;
            bottom: 0.64rem;
            display: flex;
            flex-direction: column;
            gap: 0;
            justify-content: space-between;
            position: absolute;
            right: 0.82rem;
            top: 0.64rem;
        }

        .survey-ai-file-trigger {
            align-items: center;
            appearance: none;
            background: transparent !important;
            border: 0 !important;
            border-radius: 0;
            box-shadow: none !important;
            color: var(--dayalogs-admin-text);
            display: inline-flex;
            flex: 0 0 auto;
            height: 1.55rem;
            justify-content: center;
            line-height: 1;
            margin: 0;
            padding: 0;
            width: 1.55rem;
        }

        .survey-ai-file-trigger:hover,
        .survey-ai-file-trigger:focus,
        .survey-ai-file-trigger:active {
            background: transparent !important;
            border-color: transparent !important;
            box-shadow: none !important;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-ai-file-trigger i {
            font-size: 1.08rem;
            line-height: 1;
        }

        .survey-ai-submit-button {
            background: var(--dayalogs-admin-text);
            border: 0;
            color: #fffdfa;
            flex: 0 0 auto;
            height: 2.05rem;
            width: 2.05rem;
        }

        .survey-ai-submit-button:hover,
        .survey-ai-submit-button:focus {
            background: var(--dayalogs-admin-text-strong);
            color: #fffdfa;
        }

        .survey-ai-submit-idle {
            align-items: center;
            display: inline-flex;
            justify-content: center;
        }

        .survey-ai-submit-loading {
            display: none;
        }

        .is-ai-loading .survey-ai-submit-idle {
            display: none;
        }

        .is-ai-loading .survey-ai-submit-loading {
            align-items: center;
            display: inline-flex;
            justify-content: center;
        }

        .survey-ai-file-pill {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            gap: 0.35rem;
            margin-top: 0.25rem;
        }

        .survey-ai-flow-panel.is-rendering::after {
            align-items: center;
            background: rgba(252, 250, 247, 0.78);
            bottom: 0;
            color: var(--dayalogs-admin-text-strong);
            content: "Actualitzant flux...";
            display: flex;
            font-weight: 700;
            justify-content: center;
            left: 0;
            position: absolute;
            right: 0;
            top: 3.35rem;
            z-index: 3;
        }

        .survey-ai-recent-list {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }

        .survey-ai-recent-item {
            border-bottom: 1px solid var(--dayalogs-admin-line-soft);
            color: var(--dayalogs-admin-text);
            display: flex;
            flex-direction: column;
            gap: 0.18rem;
            padding: 0.6rem 0;
            text-decoration: none;
        }

        .survey-ai-recent-item:hover {
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-ai-recent-title {
            color: var(--dayalogs-admin-text-strong);
            font-weight: 700;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-ai-recent-meta {
            color: var(--dayalogs-admin-muted);
            font-size: 0.8rem;
        }

        .survey-ai-modal {
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.85rem;
            color: var(--dayalogs-admin-text);
        }

        .survey-ai-flow-stack {
            display: flex;
            flex-direction: column;
            gap: 0.9rem;
        }

        .survey-ai-flow-stack-compact {
            gap: 0.55rem;
        }

        .survey-ai-flow-block,
        .survey-ai-question-card {
            border: 0;
            border-radius: 0.8rem;
            box-shadow: none;
        }

        .survey-ai-flow-block {
            background: #fff8ef;
            padding: 0.85rem;
        }

        .survey-ai-flow-block-nested {
            margin-left: 0.45rem;
        }

        .survey-ai-flow-children {
            display: flex;
            flex-direction: column;
            gap: 0.65rem;
            margin-top: 0.75rem;
        }

        .survey-ai-question-card {
            background: #eee2d4;
            padding: 0.8rem 0.85rem;
        }

        .survey-ai-icon-button {
            --dayalogs-admin-icon-button-size: 1.82rem;
            align-items: center;
            aspect-ratio: 1 / 1;
            border-radius: 50%;
            display: inline-flex;
            flex: 0 0 var(--dayalogs-admin-icon-button-size);
            font-size: 0.95rem;
            height: var(--dayalogs-admin-icon-button-size);
            justify-content: center;
            line-height: 1;
            max-height: var(--dayalogs-admin-icon-button-size);
            max-width: var(--dayalogs-admin-icon-button-size);
            min-height: var(--dayalogs-admin-icon-button-size);
            min-width: var(--dayalogs-admin-icon-button-size);
            padding: 0;
            width: var(--dayalogs-admin-icon-button-size);
        }

        .survey-admin-shell .survey-ai-icon-button {
            border-radius: 50%;
            gap: 0;
            height: var(--dayalogs-admin-icon-button-size);
            max-height: var(--dayalogs-admin-icon-button-size);
            max-width: var(--dayalogs-admin-icon-button-size);
            min-height: var(--dayalogs-admin-icon-button-size);
            min-width: var(--dayalogs-admin-icon-button-size);
            padding: 0;
            width: var(--dayalogs-admin-icon-button-size);
        }

        .survey-ai-icon-button .bi {
            display: block;
            font-size: 0.86rem;
            line-height: 1;
            margin: 0;
            text-align: center;
        }

        .survey-admin-shell .survey-ai-icon-button .bi {
            margin: 0;
        }

        .survey-ai-icon-button .bi-braces {
            font-size: 0.8rem;
        }

        .survey-ai-icon-button .bi::before {
            display: block;
            line-height: 1;
            vertical-align: 0;
        }

        .survey-ai-header-card {
            background: #f1e6db;
            padding-right: 3.35rem;
            position: relative;
        }

        .survey-ai-header-top {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
        }

        .survey-ai-header-title {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.98rem;
            font-weight: 700;
            line-height: 1.25;
        }

        .survey-ai-header-meta {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-wrap: wrap;
            font-size: 0.76rem;
            gap: 0.4rem;
            margin-top: 0.28rem;
        }

        .survey-ai-header-meta > * + *::before {
            color: var(--dayalogs-admin-line);
            content: "·";
            margin-right: 0.4rem;
        }

        .survey-ai-header-status {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
            justify-content: flex-end;
        }

        .survey-ai-header-edit {
            position: absolute;
            right: 0.65rem;
            top: 0.65rem;
            z-index: 1;
        }

        .survey-ai-header-summary {
            border-top: 0;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            margin-top: 0.8rem;
            padding-top: 0.72rem;
        }

        .survey-ai-header-kicker {
            color: var(--dayalogs-admin-muted);
            font-size: 0.68rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            line-height: 1.2;
            margin-bottom: 0.22rem;
            text-transform: uppercase;
        }

        .survey-ai-header-value {
            color: var(--dayalogs-admin-text);
            font-size: 0.82rem;
            line-height: 1.35;
        }

        .survey-ai-header-details {
            padding-top: 0.65rem;
        }

        .survey-ai-header-detail-grid {
            display: grid;
            gap: 1rem;
            grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
        }

        .survey-ai-question-title {
            color: var(--dayalogs-admin-text-strong);
            font-weight: 700;
            line-height: 1.25;
        }

        .survey-ai-question-meta,
        .survey-ai-chip-row {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
        }

        @media (max-width: 991.98px) {
            .survey-ai-header-summary,
            .survey-ai-header-detail-grid {
                grid-template-columns: 1fr;
            }

            .survey-ai-header-top {
                flex-direction: column;
            }

            .survey-ai-header-status {
                justify-content: flex-start;
            }
        }

        .survey-ai-fragment-modal .modal-header {
            padding-right: 3.35rem;
        }

        .survey-ai-fragment-modal .btn-close {
            position: absolute;
            right: 0.95rem;
            top: 0.95rem;
            z-index: 2;
        }

        .survey-ai-question-details {
            margin-top: 0.65rem;
        }

        .survey-ai-question-details summary {
            color: var(--dayalogs-admin-muted);
            cursor: pointer;
            font-size: 0.78rem;
            font-weight: 700;
            text-transform: uppercase;
        }

        .survey-ai-json-snippet {
            background: #f6efe8;
            border: 0;
            border-radius: 0.6rem;
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.78rem;
            margin: 0.55rem 0 0;
            max-height: 12rem;
            overflow: auto;
            padding: 0.65rem;
            white-space: pre-wrap;
        }

        .survey-ai-question-endings {
            display: flex;
            flex-direction: column;
            gap: 0.55rem;
            margin-top: 0.72rem;
        }

        .survey-ai-ending-card {
            align-items: flex-start;
            border: 0;
            border-radius: 0.75rem;
            display: flex;
            gap: 0.72rem;
            position: relative;
            padding: 0.72rem 0.78rem;
        }

        .survey-ai-ending-card:has(.survey-ai-ending-edit) {
            padding-right: 3rem;
        }

        .survey-ai-ending-success {
            background: #e5edde;
        }

        .survey-ai-ending-danger {
            background: #f6dfd8;
        }

        .survey-ai-ending-mark {
            align-items: center;
            border-radius: 999px;
            color: #fffdfa;
            display: inline-flex;
            flex: 0 0 auto;
            height: 1.65rem;
            justify-content: center;
            margin-top: 0.05rem;
            width: 1.65rem;
        }

        .survey-ai-ending-success .survey-ai-ending-mark {
            background: #6f9360;
        }

        .survey-ai-ending-danger .survey-ai-ending-mark {
            background: #bf6652;
        }

        .survey-ai-ending-main {
            min-width: 0;
        }

        .survey-ai-ending-kicker {
            color: var(--dayalogs-admin-muted);
            font-size: 0.66rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            line-height: 1.1;
            margin-bottom: 0.18rem;
            text-transform: uppercase;
        }

        .survey-ai-ending-title {
            color: var(--dayalogs-admin-text-strong);
            font-weight: 800;
            line-height: 1.22;
        }

        .survey-ai-ending-meta {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-wrap: wrap;
            font-size: 0.76rem;
            gap: 0.38rem;
            margin-top: 0.24rem;
        }

        .survey-ai-ending-meta > * + *::before {
            color: rgba(110, 98, 89, 0.38);
            content: "·";
            margin-right: 0.38rem;
        }

        .survey-ai-ending-copy {
            color: var(--dayalogs-admin-text);
            font-size: 0.82rem;
            line-height: 1.35;
            margin-top: 0.42rem;
        }

        .survey-ai-ending-details {
            margin-top: 0.5rem;
        }

        .survey-ai-ending-edit {
            background: rgba(255, 253, 250, 0.72);
            border: 0;
            position: absolute;
            right: 0.6rem;
            top: 0.58rem;
        }

        .survey-ai-empty {
            align-items: center;
            border: 1px dashed var(--dayalogs-admin-line);
            border-radius: 0.9rem;
            color: var(--dayalogs-admin-muted);
            display: flex;
            min-height: 15rem;
            padding: 1.25rem;
        }

        .survey-ai-mobile-switch {
            display: none;
        }

        .survey-admin-detail-layout {
            display: flex;
            flex-direction: column;
            gap: 1.25rem;
        }

        .survey-admin-detail-panels {
            min-width: 0;
        }

        .survey-admin-local-nav {
            border-bottom: 1px solid var(--dayalogs-admin-line);
            display: flex;
            gap: 0.3rem;
            overflow-x: auto;
            overscroll-behavior-x: contain;
            padding-bottom: 0.35rem;
            position: relative;
            scroll-behavior: smooth;
            scroll-padding-inline: 1rem;
            scroll-snap-type: x proximity;
            scrollbar-width: none;
            touch-action: pan-x;
            -webkit-overflow-scrolling: touch;
        }

        .survey-admin-local-nav::-webkit-scrollbar {
            display: none;
        }

        .survey-admin-local-nav::before,
        .survey-admin-local-nav::after {
            bottom: 0.35rem;
            content: "";
            opacity: 0;
            pointer-events: none;
            position: sticky;
            top: 0;
            transition: opacity 0.18s ease;
            width: 1.35rem;
            z-index: 2;
        }

        .survey-admin-local-nav::before {
            background: linear-gradient(90deg, var(--dayalogs-admin-bg) 15%, rgba(255, 253, 250, 0));
            flex: 0 0 1.35rem;
            left: 0;
            margin-right: -1.35rem;
        }

        .survey-admin-local-nav::after {
            background: linear-gradient(270deg, var(--dayalogs-admin-bg) 15%, rgba(255, 253, 250, 0));
            flex: 0 0 1.35rem;
            margin-left: -1.35rem;
            right: 0;
        }

        .survey-admin-local-nav.has-scroll-start::before,
        .survey-admin-local-nav.has-scroll-end::after {
            opacity: 1;
        }

        .survey-admin-local-nav.is-dragging {
            cursor: grabbing;
            scroll-behavior: auto;
            user-select: none;
        }

        .survey-admin-local-nav a,
        .survey-admin-local-nav button {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0.6rem;
            color: var(--dayalogs-admin-text);
            display: inline-flex;
            flex: 0 0 auto;
            font-size: 0.86rem;
            font-weight: 600;
            padding: 0.4rem 0.7rem;
            scroll-snap-align: center;
            text-decoration: none;
            white-space: nowrap;
            text-align: left;
        }

        .survey-admin-local-nav a:hover,
        .survey-admin-local-nav a.active,
        .survey-admin-local-nav button:hover,
        .survey-admin-local-nav button.active {
            background: #f4efe8;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-design-form {
            display: flex;
            flex-direction: column;
            gap: 1.25rem;
        }

        .survey-admin-design-style-form {
            display: flex;
            flex-direction: column;
            gap: 1.25rem;
        }

        .survey-admin-design-actions .btn,
        .survey-admin-design-logo .btn {
            border: 0;
            border-radius: var(--dayalogs-admin-button-radius);
            min-height: var(--dayalogs-admin-button-height);
            padding-left: 0.9rem;
            padding-right: 0.9rem;
        }

        .survey-admin-design-actions .btn-outline-secondary,
        .survey-admin-design-logo .btn-outline-secondary {
            background: #f4efe8;
        }

        .survey-admin-design-actions .btn-outline-secondary:hover,
        .survey-admin-design-actions .btn-outline-secondary:focus,
        .survey-admin-design-logo .btn-outline-secondary:hover,
        .survey-admin-design-logo .btn-outline-secondary:focus {
            background: #ebe3d8;
        }

        .survey-admin-design-logo .btn-outline-danger {
            background: #f8ece8;
            color: #be675c;
        }

        .survey-admin-design-logo .btn-outline-danger:hover,
        .survey-admin-design-logo .btn-outline-danger:focus {
            background: #f1ddd8;
            color: #9f5047;
        }

        .survey-admin-design-current {
            align-items: center;
            background: #f8f4ef;
            border: 0;
            border-radius: 999px;
            display: inline-flex;
            gap: 0.55rem;
            max-width: max-content;
            padding: 0.62rem 0.95rem;
        }

        .survey-admin-design-settings {
            display: grid;
            gap: 0.75rem;
            grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
        }

        .survey-admin-design-current-stacked {
            align-items: stretch;
            border-radius: 0.95rem;
            display: flex;
            flex-direction: column;
            gap: 0.62rem;
            max-width: none;
            padding: 0.85rem;
        }

        .survey-admin-design-current-stacked p {
            color: var(--dayalogs-admin-muted);
            font-size: 0.84rem;
            line-height: 1.35;
            margin: 0;
        }

        .survey-admin-design-theme-summary {
            border-radius: 0.95rem;
            display: grid;
            grid-template-columns: auto minmax(0, 1fr) auto;
            max-width: none;
            width: 100%;
        }

        .survey-admin-design-current span,
        .survey-admin-design-group-title {
            color: var(--dayalogs-admin-muted);
            font-size: 0.74rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        .survey-admin-design-current strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.9rem;
        }

        .survey-admin-design-grid {
            display: grid;
            gap: 1.1rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .survey-admin-design-group {
            min-width: 0;
        }

        .survey-admin-design-group-title {
            align-items: center;
            display: flex;
            justify-content: space-between;
            margin-bottom: 0.7rem;
        }

        .survey-admin-design-group-title em {
            font-style: normal;
        }

        .survey-admin-design-options {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }

        .survey-admin-design-option {
            align-items: center;
            background: #f8f4ef;
            border: 0;
            border-radius: 1.05rem;
            color: var(--dayalogs-admin-text);
            cursor: pointer;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: auto minmax(0, 1fr) auto;
            min-height: 4rem;
            padding: 0.75rem 0.85rem;
            transition: background-color 0.14s ease, box-shadow 0.14s ease, transform 0.14s ease;
        }

        .survey-admin-design-option:hover {
            background: #f1e9de;
            transform: translateY(-1px);
        }

        .survey-admin-design-option.is-active {
            background: #e9ddce;
            box-shadow: inset 0 0 0 1px rgba(112, 99, 89, 0.12);
        }

        .survey-admin-design-option[data-theme-preview] {
            background: var(--theme-preview-bg);
            border: 1px solid var(--theme-preview-rule);
            border-radius: var(--theme-preview-radius);
            color: var(--theme-preview-text);
            font-family: var(--theme-preview-font);
            overflow: hidden;
            position: relative;
        }

        .survey-admin-design-option[data-theme-preview]:hover {
            background: var(--theme-preview-surface);
            box-shadow: 0 0.45rem 1rem rgba(47, 42, 39, 0.08);
        }

        .survey-admin-design-option[data-theme-preview].is-active {
            background: var(--theme-preview-surface);
            box-shadow: inset 0.34rem 0 0 var(--theme-preview-accent), inset 0 0 0 2px var(--theme-preview-primary);
        }

        .survey-admin-design-option input {
            appearance: none;
            background: rgba(112, 99, 89, 0.18);
            border: 0;
            border-radius: 999px;
            box-shadow: inset 0 0 0 0.28rem #f8f4ef;
            height: 1rem;
            margin: 0;
            transition: background-color 0.14s ease, box-shadow 0.14s ease;
            width: 1rem;
        }

        .survey-admin-design-option[data-theme-preview] input {
            background: var(--theme-preview-bg);
            box-shadow: inset 0 0 0 0.12rem var(--theme-preview-rule);
        }

        .survey-admin-design-option:hover input {
            box-shadow: inset 0 0 0 0.28rem #f1e9de;
        }

        .survey-admin-design-option[data-theme-preview]:hover input {
            background: var(--theme-preview-surface);
            box-shadow: inset 0 0 0 0.12rem var(--theme-preview-rule);
        }

        .survey-admin-design-option input:checked {
            background: var(--dayalogs-admin-primary);
            box-shadow: inset 0 0 0 0.28rem #e9ddce;
        }

        .survey-admin-design-option[data-theme-preview] input:checked {
            background: var(--theme-preview-primary);
            box-shadow: inset 0 0 0 0.28rem var(--theme-preview-surface);
        }

        .survey-admin-design-option input:focus-visible {
            outline: 2px solid rgba(112, 99, 89, 0.35);
            outline-offset: 3px;
        }

        .survey-admin-design-option span {
            display: flex;
            flex-direction: column;
            min-width: 0;
        }

        .survey-admin-design-option strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.92rem;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-admin-design-option[data-theme-preview] strong {
            color: var(--theme-preview-text);
            font-family: var(--theme-preview-font);
        }

        .survey-admin-design-option small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.78rem;
            line-height: 1.35;
            margin-top: 0.12rem;
        }

        .survey-admin-design-option[data-theme-preview] small {
            color: var(--theme-preview-muted);
        }

        .survey-admin-design-option em {
            color: var(--dayalogs-admin-muted);
            font-size: 0.72rem;
            font-style: normal;
            font-weight: 800;
            letter-spacing: 0.06em;
            max-width: 8rem;
            overflow: hidden;
            text-overflow: ellipsis;
            text-transform: uppercase;
            white-space: nowrap;
        }

        .survey-admin-design-option[data-theme-preview] em {
            background: var(--theme-preview-primary-soft);
            border-radius: 999px;
            color: var(--theme-preview-primary);
            padding: 0.22rem 0.42rem;
        }

        .survey-admin-design-empty {
            color: var(--dayalogs-admin-muted);
            font-size: 0.86rem;
            padding: 0.75rem 0;
        }

        .survey-admin-design-alignment-options {
            display: inline-flex;
            gap: 0.35rem;
            margin-left: auto;
        }

        .survey-admin-design-alignment-options-wide {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            margin-left: 0;
            width: 100%;
        }

        .survey-admin-design-alignment-option {
            align-items: center;
            background: #f8f4ef;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            cursor: pointer;
            display: inline-flex;
            font-size: 0.78rem;
            font-weight: 800;
            min-height: 2rem;
            padding: 0 0.75rem;
            text-transform: uppercase;
        }

        .survey-admin-design-alignment-option input {
            appearance: none;
            height: 0;
            margin: 0;
            position: absolute;
            width: 0;
        }

        .survey-admin-design-alignment-option.is-active,
        .survey-admin-design-alignment-option:has(input:checked) {
            background: #e9ddce;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-design-alignment-option.is-disabled {
            cursor: not-allowed;
            opacity: 0.48;
        }

        .survey-admin-design-inherit {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.82rem;
            gap: 0.4rem;
            margin-left: 0.5rem;
            white-space: nowrap;
        }

        .survey-admin-design-check {
            align-items: center;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 0.9rem;
            font-weight: 650;
            gap: 0.45rem;
            line-height: 1.25;
        }

        .survey-admin-design-check input {
            accent-color: var(--dayalogs-admin-brand);
            flex: 0 0 auto;
        }

        .survey-admin-design-branding-row {
            align-items: stretch;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: minmax(0, 1fr) minmax(19rem, 0.46fr);
        }

        .survey-admin-design-logo {
            background: #f8f4ef;
            border-radius: 1.2rem;
            display: grid;
            gap: 0.85rem;
            grid-template-columns: minmax(0, 1fr) auto;
            padding: 0.85rem;
        }

        .survey-admin-design-logo-main {
            align-items: center;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: auto minmax(0, 1fr);
            min-width: 0;
        }

        .survey-admin-design-logo-icon {
            align-items: center;
            background: #ebe3d8;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            height: 2.35rem;
            justify-content: center;
            width: 2.35rem;
        }

        .survey-admin-design-logo-preview {
            background: #fff;
            border: 0;
            border-radius: 0.95rem;
            display: block;
            height: 3rem;
            max-width: 10rem;
            object-fit: contain;
            padding: 0.35rem 0.55rem;
            width: auto;
        }

        .survey-admin-design-logo strong,
        .survey-admin-design-logo small {
            display: block;
        }

        .survey-admin-design-logo strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.92rem;
        }

        .survey-admin-design-logo small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.8rem;
        }

        .survey-admin-design-logo-upload {
            margin: 0;
        }

        .survey-admin-design-logo-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.55rem;
            justify-content: flex-end;
        }

        .survey-admin-design-logo-actions form {
            margin: 0;
        }

        .survey-admin-design-logo-config {
            border-top: 1px solid rgba(110, 98, 89, 0.09);
            display: grid;
            gap: 0.45rem;
            grid-column: 1 / -1;
            padding-top: 0.75rem;
        }

        .survey-admin-design-logo-config > span {
            color: var(--dayalogs-admin-muted);
            font-size: 0.74rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            line-height: 1.1;
            text-transform: uppercase;
        }

        .survey-admin-design-logo-config p {
            color: var(--dayalogs-admin-muted);
            font-size: 0.84rem;
            line-height: 1.35;
            margin: 0;
        }

        .survey-admin-design-position-card {
            justify-content: center;
            min-height: 100%;
        }

        .survey-branding-account-card {
            display: grid;
            gap: 1rem;
            margin-bottom: 1rem;
            padding: 1rem;
        }

        .survey-branding-tabs {
            margin: 0.85rem 0 1.15rem;
        }

        .survey-branding-account-form {
            margin: 0;
        }

        @media (max-width: 991.98px) {
            .survey-admin-design-grid {
                grid-template-columns: 1fr;
            }

            .survey-admin-design-settings,
            .survey-admin-design-branding-row,
            .survey-admin-design-theme-summary {
                grid-template-columns: 1fr;
            }

            .survey-admin-design-logo {
                grid-template-columns: minmax(0, 1fr);
            }

            .survey-admin-design-logo-actions {
                justify-self: flex-start;
            }
        }

        .survey-admin-filter-form {
            align-items: center;
            display: grid;
            gap: 0.55rem;
            grid-template-columns: minmax(12rem, 1fr) minmax(10rem, 0.75fr) auto auto;
            min-width: min(100%, 42rem);
        }

        /* Unified modal chrome: every admin modal inherits this, with or without
           the .survey-admin-modal class. Page-specific modals layer on top. */
        body.dayalogs-admin .modal-content,
        .survey-admin-modal {
            --dayalogs-admin-bg: var(--dayalogs-bg);
            --dayalogs-admin-bg-soft: var(--dayalogs-surface-soft);
            --dayalogs-admin-surface: var(--dayalogs-surface);
            --dayalogs-admin-brand: var(--dayalogs-brand);
            --dayalogs-admin-ink: var(--dayalogs-text-strong);
            --dayalogs-admin-text: var(--dayalogs-text);
            --dayalogs-admin-text-strong: var(--dayalogs-text-strong);
            --dayalogs-admin-muted: var(--dayalogs-muted);
            --dayalogs-admin-line: var(--dayalogs-line);
            --dayalogs-admin-line-soft: var(--dayalogs-line-soft);
            --dayalogs-admin-primary: var(--dayalogs-primary);
            --dayalogs-admin-primary-hover: var(--dayalogs-primary-hover);
            --dayalogs-admin-success: var(--dayalogs-success);
            --dayalogs-admin-danger: var(--dayalogs-danger);
            background: #fffdfa;
            border: 0;
            border-radius: 0.95rem;
            color: var(--dayalogs-admin-text);
            position: relative;
        }

        body.dayalogs-admin .modal.fade .modal-dialog,
        body.dayalogs-admin .modal.show .modal-dialog {
            transform: none;
        }

        body.dayalogs-admin .modal-content .modal-header,
        .survey-admin-modal .modal-header {
            border-bottom: 1px solid var(--dayalogs-admin-line);
            padding: 1.35rem 4rem 1.1rem 1.35rem;
        }

        body.dayalogs-admin .modal-content .modal-body,
        .survey-admin-modal .modal-body {
            padding: 1.35rem;
        }

        body.dayalogs-admin .modal-content .modal-footer,
        .survey-admin-modal .modal-footer {
            border-top: 0;
            gap: 0.5rem;
            padding: 0.9rem 1.35rem 1.1rem;
        }

        body.dayalogs-admin .modal-content .modal-header > .btn-close,
        .survey-admin-modal-dismiss {
            align-items: center;
            background-color: transparent !important;
            border: 0 !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            height: 1.75rem;
            justify-content: center;
            margin: 0 !important;
            opacity: 1;
            padding: 0 !important;
            position: absolute;
            right: 15px;
            top: 15px;
            width: 1.75rem;
            z-index: 1;
        }

        body.dayalogs-admin .modal-content .modal-header > .btn-close:hover,
        body.dayalogs-admin .modal-content .modal-header > .btn-close:focus,
        .survey-admin-modal-dismiss:hover,
        .survey-admin-modal-dismiss:focus {
            background-color: transparent !important;
            color: var(--dayalogs-admin-text-strong);
            opacity: 1;
        }

        .survey-admin-modal-dismiss i {
            font-size: 1.05rem;
            line-height: 1;
        }

        .survey-admin-modal-form {
            display: flex;
            flex: 1 1 auto;
            flex-direction: column;
            min-height: 0;
        }

        .survey-admin-modal-section + .survey-admin-modal-section {
            border-top: 1px solid var(--dayalogs-admin-line);
            margin-top: 1.35rem;
            padding-top: 1.35rem;
        }

        .survey-admin-modal-section > .text-muted {
            margin: 0.35rem 0 1rem;
        }

        .survey-admin-form-grid .survey-admin-checkbox-row {
            align-items: center;
            flex-direction: row;
        }

        #reviewRoundModal .modal-content {
            max-height: calc(100dvh - 1rem);
            max-width: 100%;
            overflow: hidden;
        }

        #reviewRoundModal .survey-admin-review-form {
            display: flex;
            flex-direction: column;
            max-height: inherit;
            min-height: 0;
            min-width: 0;
            overflow-x: hidden;
        }

        #reviewRoundModal .modal-header,
        #reviewRoundModal .modal-footer {
            flex: 0 0 auto;
        }

        #reviewRoundModal .modal-body {
            flex: 1 1 auto;
            min-height: 0;
            overflow-x: hidden;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
        }

        #reviewRoundModal .modal-body > *,
        #reviewRoundModal .survey-admin-form-grid,
        #reviewRoundModal .survey-admin-review-invitee-builder {
            max-width: 100%;
            min-width: 0;
        }

        #surveyQuotaModal .modal-content {
            max-height: calc(100dvh - 1rem);
            max-width: 100%;
            overflow: hidden;
        }

        #surveyQuotaModal .survey-admin-quota-form {
            display: flex;
            flex-direction: column;
            max-height: inherit;
            min-height: 0;
            min-width: 0;
            overflow-x: hidden;
        }

        #surveyQuotaModal .modal-header,
        #surveyQuotaModal .modal-footer {
            flex: 0 0 auto;
        }

        #surveyQuotaModal .modal-body {
            flex: 1 1 auto;
            min-height: 0;
            overflow-x: hidden;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
        }

        #surveyQuotaModal .modal-body > *,
        #surveyQuotaModal .survey-admin-quota-condition-builder,
        #surveyQuotaModal .survey-admin-condition-builder {
            max-width: 100%;
            min-width: 0;
        }

        @media (max-width: 680px) {
            #reviewRoundModal .modal-body {
                padding-top: 1rem;
            }

            #surveyQuotaModal .modal-body {
                padding-top: 1rem;
            }

            #reviewRoundModal .survey-admin-wizard-steps,
            #reviewRoundModal .survey-admin-review-step-label {
                display: none;
            }
        }

        .survey-admin-audience-import-form,
        .survey-admin-export-form {
            display: flex;
            flex-direction: column;
            max-height: calc(100vh - 3.5rem);
            min-height: 0;
        }

        .survey-admin-audience-import-form .modal-header,
        .survey-admin-audience-import-form .modal-footer,
        .survey-admin-export-form .modal-header,
        .survey-admin-export-form .modal-footer {
            flex: 0 0 auto;
        }

        .survey-admin-audience-import-form .modal-footer,
        .survey-admin-export-form .modal-footer {
            background: #fffdfa;
            border-top: 1px solid var(--dayalogs-admin-line);
        }

        .survey-admin-audience-import-form .modal-body,
        .survey-admin-export-form .modal-body {
            min-height: 0;
        }

        .survey-admin-audience-mapping-body {
            display: flex;
            flex: 1 1 auto;
            flex-direction: column;
            gap: 0.9rem;
            overflow: hidden;
        }

        .survey-admin-audience-mapping-scroll {
            flex: 1 1 auto;
            max-height: calc(100vh - 25rem);
            min-height: 14rem;
            overflow: hidden;
            padding-right: 0.75rem;
            position: relative;
        }

        .survey-admin-audience-field-select-cell {
            min-width: 14rem;
        }

        .survey-admin-wizard-steps {
            align-items: center;
            display: flex;
            flex: 0 0 auto;
            gap: 0.4rem;
            padding: 0.75rem 1.35rem 0;
        }

        .survey-admin-wizard-step {
            align-items: center;
            background: var(--dayalogs-admin-line);
            border: 0;
            border-radius: 50%;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.75rem;
            font-weight: 600;
            height: 1.5rem;
            justify-content: center;
            padding: 0;
            transition: background 0.15s;
            width: 1.5rem;
        }

        button.survey-admin-wizard-step { cursor: pointer; }
        button.survey-admin-wizard-step:disabled { cursor: default; opacity: 0.55; }
        .survey-admin-wizard-step-check { display: none; }
        .survey-admin-wizard-step.is-done .survey-admin-wizard-step-number { display: none; }
        .survey-admin-wizard-step.is-done .survey-admin-wizard-step-check { display: inline-block; }
        .survey-admin-wizard-step.is-active { background: var(--dayalogs-admin-brand); color: #fff; }
        .survey-admin-wizard-step.is-done { background: var(--dayalogs-admin-success); color: #fff; }

        .survey-admin-modal-footer {
            align-items: center;
            display: flex;
            justify-content: space-between;
        }

        .survey-admin-modal-footer-actions {
            display: flex;
            gap: 0.5rem;
            margin-left: auto;
        }

        .survey-admin-import-summary {
            background: #f4efe8;
            border-radius: 0.85rem;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            padding: 0.9rem;
        }

        .survey-admin-audience-import-summary {
            gap: 0.45rem;
            grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
            padding: 0.65rem 0.8rem;
        }

        .survey-admin-audience-import-summary > div {
            min-width: 0;
        }

        .survey-admin-audience-import-summary strong,
        .survey-admin-audience-import-summary .small {
            display: block;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-admin-extra-columns-note {
            background: #f4efe8;
            border-radius: 0.75rem;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
            padding: 0.75rem 0.85rem;
        }

        .survey-admin-audience-page .survey-admin-surface,
        .survey-admin-audience-page .survey-admin-table-card {
            border-bottom: 0;
        }

        .survey-admin-audience-stat-grid {
            background: transparent;
            border: 0;
            gap: 1rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .survey-admin-audience-stat-grid .survey-admin-stat {
            background: #f4efe8;
            border: 0 !important;
            border-radius: 0.95rem;
            min-height: 11.5rem;
            padding: 1.35rem;
        }

        .survey-admin-audience-stat-grid .survey-admin-stat-value {
            font-size: 3.2rem;
            line-height: 0.95;
            margin-top: 0.5rem;
        }

        .survey-admin-audience-stat-grid .survey-admin-stat-heading i {
            background: #fffdfa;
            border-radius: 999px;
            display: inline-flex;
            height: 2rem;
            justify-content: center;
            align-items: center;
            width: 2rem;
        }

        .survey-admin-soft-table > :not(caption) > * > * {
            border-bottom-color: rgba(110, 98, 89, 0.1);
            padding-bottom: 0.85rem;
            padding-top: 0.85rem;
        }

        .survey-admin-soft-table thead > tr > * {
            color: var(--dayalogs-admin-muted);
            font-size: 0.78rem;
            font-weight: 780;
            letter-spacing: 0;
            padding-bottom: 0.55rem;
            padding-top: 0.55rem;
            text-transform: none;
        }

        .survey-admin-soft-table tbody tr:last-child > * {
            border-bottom-color: transparent !important;
        }

        .survey-admin-audience-table-card .table-responsive {
            border-bottom: 0;
        }

        .survey-admin-audience-table-card.is-loading {
            opacity: 0.64;
            pointer-events: none;
            transition: opacity 0.12s ease;
        }

        .survey-admin-source-switch {
            background: #f4efe8;
            border-radius: 999px;
            display: inline-flex;
            gap: 0.25rem;
            margin-bottom: 1rem;
            padding: 0.25rem;
        }

        .survey-admin-source-switch button {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-weight: 700;
            gap: 0.45rem;
            padding: 0.5rem 1rem;
        }

        .survey-admin-source-switch button.is-active {
            background: #fffdfa;
            color: var(--dayalogs-admin-text-strong);
            box-shadow: 0 0.35rem 0.9rem rgba(72, 64, 55, 0.07);
        }

        .survey-admin-combobox {
            min-width: min(100%, 28rem);
            position: relative;
        }

        .survey-admin-combobox-menu {
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.85rem;
            box-shadow: 0 1rem 2.5rem rgba(72, 64, 55, 0.12);
            display: none;
            left: 0;
            max-height: 14rem;
            overflow: auto;
            padding: 0.35rem;
            position: absolute;
            right: 0;
            top: calc(100% + 0.35rem);
            z-index: 40;
        }

        .survey-admin-combobox.is-open .survey-admin-combobox-menu {
            display: block;
        }

        .survey-admin-combobox-menu button {
            background: transparent;
            border: 0;
            border-radius: 0.65rem;
            color: var(--dayalogs-admin-text);
            display: flex;
            flex-direction: column;
            gap: 0.12rem;
            padding: 0.55rem 0.65rem;
            text-align: left;
            width: 100%;
        }

        .survey-admin-combobox-menu button:hover,
        .survey-admin-combobox-menu button:focus,
        .survey-admin-combobox-menu button.is-selected {
            background: #f4efe8;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-combobox-menu button span {
            color: var(--dayalogs-admin-muted);
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
            font-size: 0.78rem;
        }

        .survey-admin-audience-dropzone {
            min-height: 15rem;
        }

        .survey-admin-audience-dropzone .survey-admin-dropzone-icon {
            height: 3rem;
            width: 3rem;
            font-size: 1.35rem;
        }

        .survey-admin-audience-paste {
            min-height: 15rem;
            resize: vertical;
        }

        .survey-admin-contact-tools {
            padding: 1.5rem 1.5rem 1rem;
        }

        .survey-admin-contact-filter-row {
            display: flex;
            justify-content: flex-end;
            margin-bottom: 0.65rem;
        }

        .survey-admin-contact-filter-form {
            grid-template-columns: minmax(13rem, 1fr) auto auto auto;
            min-width: min(100%, 45rem);
        }

        .survey-admin-contact-filter-tags {
            position: relative;
        }

        .survey-admin-contact-filter-tags-toggle {
            min-width: 7.5rem;
            justify-content: center;
        }

        .survey-admin-contact-filter-tags-panel {
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.85rem;
            box-shadow: 0 1rem 2rem rgba(72, 64, 55, 0.12);
            display: none;
            padding: 0.65rem;
            position: absolute;
            right: 0;
            top: calc(100% + 0.45rem);
            width: min(26rem, calc(100vw - 2rem));
            z-index: 20;
        }

        .survey-admin-contact-filter-tags.is-open .survey-admin-contact-filter-tags-panel {
            display: block;
        }

        .survey-admin-contact-filter-tags-help {
            color: var(--dayalogs-admin-muted);
            font-size: 0.78rem;
            margin-top: 0.45rem;
            padding: 0 0.2rem;
        }

        .survey-admin-contact-filter-note {
            color: var(--dayalogs-admin-muted);
            font-size: 0.9rem;
            margin: -0.15rem 0 1rem auto;
            max-width: 45rem;
        }

        .survey-admin-contact-active-filters {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
            justify-content: flex-end;
            margin-bottom: 1.1rem;
        }

        .survey-admin-contact-active-filter-label {
            color: var(--dayalogs-admin-muted);
            font-size: 0.78rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            margin-right: 0.15rem;
            text-transform: uppercase;
        }

        .survey-admin-filter-pill {
            align-items: center;
            background: #e7ded5;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 0.82rem;
            font-weight: 700;
            gap: 0.25rem;
            max-width: min(20rem, 100%);
            padding: 0.34rem 0.65rem;
            text-decoration: none;
        }

        .survey-admin-filter-pill span {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .survey-admin-filter-pill i {
            color: var(--dayalogs-admin-muted);
            flex: 0 0 auto;
        }

        .survey-admin-filter-pill:hover,
        .survey-admin-filter-pill:focus {
            background: #d8cbbf;
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-contact-pagination {
            align-items: center;
            border-bottom: 1px solid #f0e8dd;
            display: flex;
            gap: 0.75rem;
            justify-content: space-between;
            margin-bottom: 0.85rem;
            padding-bottom: 0.85rem;
        }

        .survey-admin-contact-pagination-summary {
            color: var(--dayalogs-admin-muted);
            font-size: 0.9rem;
        }

        .survey-admin-contact-pagination-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            justify-content: flex-end;
        }

        .survey-admin-contact-pagination-page {
            color: var(--dayalogs-admin-muted);
            font-size: 0.85rem;
            font-weight: 800;
            padding: 0 0.25rem;
        }

        .survey-admin-contact-bulk-form {
            margin: 0;
        }

        .survey-admin-contact-bulk-toolbar {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            margin-bottom: 1rem;
            max-width: 56rem;
        }

        .survey-admin-segment-panel-header {
            align-items: center;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            padding: 1.25rem 1.5rem 1rem;
        }

        .survey-admin-segment-empty {
            align-items: center;
            background: #f4efe8;
            border-radius: 0.95rem;
            display: flex;
            gap: 0.9rem;
            margin: 0 1.5rem 1.5rem;
            padding: 1rem;
        }

        .survey-admin-segment-empty-icon {
            align-items: center;
            background: #fffdfa;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            flex: 0 0 auto;
            height: 2.4rem;
            justify-content: center;
            width: 2.4rem;
        }

        .survey-admin-segment-table .survey-admin-table-actions {
            justify-content: flex-end;
        }

        .survey-admin-segment-count {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.2rem;
            font-weight: 750;
            line-height: 1;
        }

        .survey-admin-segment-modal .modal-body {
            min-height: 24rem;
        }

        .survey-admin-segment-form {
            display: flex;
            flex-direction: column;
            max-height: calc(100vh - 3.5rem);
            min-height: 0;
        }

        .survey-admin-segment-form .modal-body {
            overscroll-behavior: contain;
            overflow: auto;
        }

        .survey-admin-segment-builder-toolbar {
            align-items: center;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin-bottom: 1rem;
        }

        .survey-admin-segment-live-count,
        .survey-admin-segment-confirm-count {
            align-items: baseline;
            background: #f4efe8;
            border-radius: 0.9rem;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            gap: 0.45rem;
            padding: 0.7rem 0.9rem;
            white-space: nowrap;
        }

        .survey-admin-segment-live-count span,
        .survey-admin-segment-confirm-count span {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.55rem;
            font-weight: 800;
            line-height: 1;
        }

        .survey-admin-segment-builder {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        .survey-admin-segment-group {
            background: #f7f2ec;
            border-radius: 0.95rem;
            padding: 0.8rem;
        }

        .survey-admin-segment-group.is-root {
            background: #f4efe8;
        }

        .survey-admin-segment-group-header {
            align-items: center;
            display: flex;
            gap: 0.75rem;
            justify-content: space-between;
            margin-bottom: 0.65rem;
        }

        .survey-admin-segment-group-header label {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.78rem;
            font-weight: 800;
            gap: 0.5rem;
            letter-spacing: 0.06em;
            margin: 0;
            text-transform: uppercase;
        }

        .survey-admin-segment-group-header .form-select {
            min-width: 5.5rem;
        }

        .survey-admin-segment-group-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
            justify-content: flex-end;
        }

        .survey-admin-segment-rule-list {
            display: flex;
            flex-direction: column;
            gap: 0.55rem;
        }

        .survey-admin-segment-rule {
            align-items: center;
            background: #fffdfa;
            border-radius: 0.75rem;
            display: grid;
            gap: 0.45rem;
            grid-template-columns: minmax(7.5rem, 0.85fr) minmax(8.5rem, 1fr) minmax(9rem, 1fr) minmax(8rem, 1fr) minmax(8rem, 0.85fr) minmax(9rem, 1fr) auto;
            padding: 0.55rem;
        }

        .survey-admin-segment-rule .d-none {
            display: none !important;
        }

        .survey-admin-segment-path-picker {
            align-items: center;
            display: grid;
            gap: 0.35rem;
            grid-column: span 2;
            grid-template-columns: minmax(0, 1fr) auto;
            min-width: 0;
            position: relative;
        }

        .survey-admin-segment-path-picker .form-control {
            min-width: 0;
        }

        .survey-admin-segment-path-menu {
            background: var(--dayalogs-admin-surface);
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.7rem;
            box-shadow: none;
            grid-column: 1 / -1;
            max-height: 11rem;
            min-width: 0;
            overscroll-behavior: contain;
            overflow: auto;
            padding: 0.35rem;
            position: static;
            scrollbar-width: thin;
            width: 100%;
        }

        .survey-admin-segment-path-menu[hidden] {
            display: none;
        }

        .survey-admin-segment-path-menu > span {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 0.82rem;
            padding: 0.55rem 0.65rem;
        }

        .survey-admin-segment-path-option {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0.45rem;
            color: var(--dayalogs-admin-text-strong);
            display: flex;
            font-size: 0.86rem;
            gap: 0.75rem;
            justify-content: space-between;
            padding: 0.44rem 0.55rem;
            text-align: left;
            width: 100%;
        }

        .survey-admin-segment-path-depth-1 {
            padding-left: 1.55rem;
        }

        .survey-admin-segment-path-depth-2 {
            padding-left: 2.55rem;
        }

        .survey-admin-segment-path-depth-3 {
            padding-left: 3.55rem;
        }

        .survey-admin-segment-path-depth-4 {
            padding-left: 4.55rem;
        }

        .survey-admin-segment-path-option:hover,
        .survey-admin-segment-path-option.is-selected {
            background: #f4efe8;
        }

        .survey-admin-segment-path-option small {
            color: var(--dayalogs-admin-muted);
            flex: 0 0 auto;
            font-size: 0.7rem;
            text-transform: uppercase;
        }

        .survey-admin-segment-path-option span {
            overflow-wrap: anywhere;
        }

        .survey-admin-segment-tag-picker {
            grid-column: span 2;
            min-width: 0;
            position: relative;
        }

        .survey-admin-segment-tag-editor {
            background: #f4efe8;
            border-radius: 0.75rem;
            min-height: 2.35rem;
        }

        .survey-admin-segment-tag-editor .survey-admin-tag-editor-input {
            min-width: 4rem;
        }

        .survey-admin-segment-value-picker {
            min-width: 0;
            position: relative;
        }

        .survey-admin-segment-value-suggestions {
            background: var(--dayalogs-admin-surface);
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.7rem;
            box-shadow: 0 0.85rem 1.5rem rgba(60, 48, 39, 0.12);
            display: none;
            left: 0;
            max-height: 10rem;
            min-width: 0;
            overscroll-behavior: contain;
            overflow: auto;
            padding: 0.35rem;
            position: absolute;
            right: 0;
            scrollbar-width: thin;
            top: calc(100% + 0.35rem);
            z-index: 90;
        }

        .survey-admin-segment-value-suggestions.is-visible {
            display: block;
        }

        .survey-admin-segment-value-suggestions > span {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 0.82rem;
            padding: 0.55rem 0.65rem;
        }

        .survey-admin-segment-value-suggestion {
            background: transparent;
            border: 0;
            border-radius: 0.45rem;
            color: var(--dayalogs-admin-text-strong);
            display: block;
            font-size: 0.86rem;
            padding: 0.44rem 0.55rem;
            text-align: left;
            width: 100%;
        }

        .survey-admin-segment-value-suggestion:hover {
            background: #f4efe8;
        }

        .survey-admin-segment-samples {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
            margin-top: 0.9rem;
        }

        .survey-admin-segment-samples[hidden] {
            display: none;
        }

        .survey-admin-segment-samples > span {
            font-size: 0.78rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        .survey-admin-segment-samples strong {
            background: #f4efe8;
            border-radius: 999px;
            font-size: 0.82rem;
            padding: 0.34rem 0.65rem;
        }

        .survey-admin-segment-confirm {
            display: grid;
            gap: 1rem;
            grid-template-columns: minmax(12rem, 0.32fr) minmax(0, 1fr);
        }

        .survey-admin-segment-confirm pre {
            background: #f4efe8;
            border-radius: 0.85rem;
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.78rem;
            max-height: 20rem;
            overflow: auto;
            padding: 0.9rem;
            white-space: pre-wrap;
        }

        .survey-admin-contact-selection-summary {
            align-items: baseline;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            flex: 0 0 auto;
            gap: 0.35rem;
            min-width: 7rem;
        }

        .survey-admin-contact-selection-summary strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1.35rem;
            line-height: 1;
        }

        .survey-admin-contact-selection-scope {
            align-items: center;
            background: #f4efe8;
            border-radius: 0.8rem;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-wrap: wrap;
            font-size: 0.88rem;
            gap: 0.55rem;
            margin: -0.35rem 0 1rem;
            max-width: 56rem;
            padding: 0.55rem 0.75rem;
        }

        .survey-admin-contact-selection-scope[hidden] {
            display: none;
        }

        .survey-admin-contact-selection-scope .btn-link {
            color: var(--dayalogs-admin-primary);
            font-weight: 700;
            text-decoration: none;
        }

        .survey-admin-contact-selection-scope .btn-link:hover,
        .survey-admin-contact-selection-scope .btn-link:focus {
            color: var(--dayalogs-admin-text-strong);
            text-decoration: underline;
        }

        .survey-admin-contact-tag-input {
            flex: 1 1 20rem;
            max-width: 34rem;
        }

        .survey-admin-contact-select-cell {
            text-align: center;
            width: 2.75rem;
        }

        .survey-admin-contact-table {
            font-size: 0.86rem;
        }

        .survey-admin-contact-table > :not(caption) > * > * {
            padding-bottom: 0.55rem;
            padding-top: 0.55rem;
        }

        .survey-admin-contact-row {
            cursor: pointer;
        }

        .survey-admin-contact-row:hover > * {
            background: rgba(244, 239, 232, 0.7);
        }

        .survey-admin-contact-name {
            color: var(--dayalogs-admin-text-strong);
            text-decoration: none;
        }

        .survey-admin-contact-name:hover,
        .survey-admin-contact-name:focus {
            color: var(--dayalogs-admin-primary);
            text-decoration: underline;
        }

        .survey-admin-contact-detail-grid {
            display: grid;
            gap: 1.5rem;
            grid-template-columns: minmax(0, 1fr) minmax(14rem, 18rem);
        }

        .survey-admin-contact-fields {
            display: grid;
            gap: 1rem 1.25rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            margin-top: 1rem;
        }

        .survey-admin-contact-fields > div {
            background: #f4efe8;
            border-radius: 0.85rem;
            min-width: 0;
            padding: 0.8rem 0.9rem;
        }

        .survey-admin-contact-fields span:not(.survey-admin-field-label),
        .survey-admin-contact-fields code {
            overflow-wrap: anywhere;
        }

        .survey-admin-contact-field-input {
            background: transparent;
            border: 0;
            color: var(--dayalogs-admin-text-strong);
            display: block;
            font: inherit;
            font-size: 0.96rem;
            line-height: 1.45;
            margin: 0.25rem 0 0;
            min-width: 0;
            outline: 0;
            padding: 0;
            width: 100%;
        }

        .survey-admin-contact-field-input::placeholder {
            color: var(--dayalogs-admin-text);
            opacity: 1;
        }

        .survey-admin-contact-field-input:focus {
            box-shadow: 0 0.12rem 0 rgba(110, 98, 89, 0.32);
        }

        .survey-admin-contact-extra-fields {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .survey-admin-contact-extra-value {
            color: var(--dayalogs-admin-text-strong);
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
            font-size: 0.78rem;
            margin: 0.25rem 0 0;
            max-height: 8rem;
            overflow: auto;
            white-space: pre-wrap;
            word-break: break-word;
        }

        .survey-admin-contact-detail-tags {
            align-items: flex-start;
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
            margin-top: 1rem;
        }

        .survey-admin-contact-tag-edit-pill {
            gap: 0.25rem;
            padding-right: 0.28rem;
        }

        .survey-admin-contact-tag-edit-pill form,
        .survey-admin-inline-action-form {
            display: inline-flex;
            margin: 0;
        }

        .survey-admin-contact-inline-tag-form {
            display: flex;
            flex-direction: column;
            gap: 0.55rem;
            margin-top: 1.1rem;
        }

        .survey-admin-contact-data-header {
            align-items: flex-start;
            display: flex;
            justify-content: space-between;
            margin-bottom: 1rem;
        }

        .survey-admin-json-textarea {
            background: #fffdfa;
            border-color: var(--dayalogs-admin-line);
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
            font-size: 0.86rem;
            min-height: 12rem;
            resize: vertical;
        }

        .survey-admin-json-preview {
            background: #f4efe8;
            border-radius: 0.85rem;
            color: var(--dayalogs-admin-text-strong);
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
            font-size: 0.84rem;
            margin: 0;
            max-height: 18rem;
            overflow: auto;
            padding: 1rem;
            white-space: pre-wrap;
            word-break: break-word;
        }

        .survey-admin-contact-data-actions {
            align-items: center;
            display: flex;
            gap: 0.6rem;
            justify-content: flex-end;
            margin-top: 0.85rem;
        }

        .survey-admin-contact-data-empty {
            background: #f4efe8;
            border-radius: 0.85rem;
            color: var(--dayalogs-admin-muted);
            margin-bottom: 0.85rem;
            padding: 0.85rem 1rem;
        }

        .survey-admin-contact-json-details {
            background: #f4efe8;
            border-radius: 0.85rem;
            padding: 0.85rem 1rem;
        }

        .survey-admin-contact-json-details summary {
            align-items: center;
            color: var(--dayalogs-admin-text-strong);
            cursor: pointer;
            display: flex;
            font-weight: 800;
            gap: 0.75rem;
            justify-content: flex-start;
            list-style: none;
        }

        .survey-admin-contact-json-details summary::-webkit-details-marker {
            display: none;
        }

        .survey-admin-contact-json-details summary::before {
            color: var(--dayalogs-admin-muted);
            content: '>';
            flex: 0 0 auto;
            font-size: 0.78rem;
            margin-right: -0.35rem;
        }

        .survey-admin-contact-json-details[open] summary::before {
            content: 'v';
        }

        .survey-admin-contact-json-details summary code {
            color: var(--dayalogs-admin-muted);
            font-weight: 600;
            margin-left: auto;
        }

        .survey-admin-contact-json-details .survey-admin-contact-data-editor {
            margin-top: 1rem;
        }

        .survey-admin-contact-survey-data-fields {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .survey-admin-tag-input-wrap {
            position: relative;
        }

        .survey-admin-tag-editor {
            align-items: center;
            background: #f4efe8;
            border: 0;
            border-radius: 999px;
            cursor: text;
            display: flex;
            flex-wrap: wrap;
            gap: 0.38rem;
            min-height: 2.5rem;
            padding: 0.38rem 0.65rem;
        }

        .survey-admin-tag-editor:focus-within {
            box-shadow: 0 0 0 0.15rem rgba(110, 98, 89, 0.14);
        }

        .survey-admin-tag-editor-input {
            background: transparent;
            border: 0;
            color: var(--dayalogs-admin-text-strong);
            flex: 1 1 10rem;
            font: inherit;
            line-height: 1.5;
            min-width: 7rem;
            outline: 0;
        }

        .survey-admin-tag-editor.has-tags .survey-admin-tag-editor-input {
            flex: 0 1 3rem;
            min-width: 2rem;
        }

        .survey-admin-tag-pill {
            align-items: center;
            background: #dfd3c8;
            border-radius: 999px;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            font-size: 0.78rem;
            font-weight: 700;
            gap: 0.15rem;
            line-height: 1.15;
            max-width: 100%;
            padding: 0.23rem 0.58rem;
        }

        .survey-admin-tag-pill.is-compact {
            background: #f0e5db;
            font-size: 0.74rem;
            padding: 0.2rem 0.5rem;
        }

        .survey-admin-tag-remove {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            height: 1rem;
            justify-content: center;
            line-height: 1;
            margin-right: -0.15rem;
            padding: 0;
            width: 1rem;
        }

        .survey-admin-tag-remove:hover,
        .survey-admin-tag-remove:focus {
            background: rgba(58, 53, 47, 0.08);
            color: var(--dayalogs-admin-text-strong);
        }

        .survey-admin-tag-suggestions {
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.8rem;
            box-shadow: 0 0.75rem 1.5rem rgba(72, 64, 55, 0.08);
            display: none;
            left: 0;
            overflow: hidden;
            position: absolute;
            right: 0;
            top: calc(100% + 0.35rem);
            z-index: 35;
        }

        .survey-admin-tag-suggestions.is-visible {
            display: block;
        }

        .survey-admin-tag-suggestion {
            background: transparent;
            border: 0;
            border-bottom: 1px solid var(--dayalogs-admin-line);
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.88rem;
            padding: 0.45rem 0.75rem;
            text-align: left;
            width: 100%;
        }

        .survey-admin-tag-suggestion:last-child {
            border-bottom: 0;
        }

        .survey-admin-tag-suggestion:hover,
        .survey-admin-tag-suggestion:focus {
            background: rgba(209, 193, 179, 0.16);
            outline: 0;
        }

        .survey-admin-mobile-header {
            align-items: center;
            background: transparent;
            color: var(--dayalogs-admin-text-strong);
            min-height: 3.25rem;
            padding: 0.45rem 0.5rem;
        }

        .survey-admin-mobile-header-shell {
            background: var(--dayalogs-admin-bg);
            margin-bottom: 0.25rem;
            position: sticky;
            top: 0;
            z-index: 1035;
        }

        .survey-admin-mobile-brand {
            align-items: center;
            display: inline-flex;
            height: 2.25rem;
            justify-content: center;
            text-decoration: none;
            width: 2.25rem;
        }

        .survey-admin-mobile-brand img {
            display: block;
            height: 1.7rem;
            transform: translateZ(0);
            width: 1.7rem;
        }

        .survey-admin-mobile-menu-button,
        .survey-admin-mobile-sidebar-close {
            align-items: center;
            appearance: none;
            background: transparent;
            border: 0;
            color: var(--dayalogs-admin-text-strong);
            display: inline-flex;
            justify-content: center;
            line-height: 1;
            padding: 0;
        }

        .survey-admin-mobile-menu-button {
            height: 2.45rem;
            width: 2.45rem;
        }

        .survey-admin-mobile-menu-button i {
            font-size: 1.35rem;
        }

        .survey-admin-mobile-sidebar-header {
            align-items: flex-start;
            border-bottom: 0;
            justify-content: space-between;
            min-height: 4.25rem;
            padding: 0.75rem 0.8rem 0.2rem;
        }

        .survey-admin-mobile-sidebar-brand {
            display: inline-flex;
            line-height: 1;
            text-decoration: none;
        }

        .survey-admin-mobile-sidebar-brand img {
            display: block;
            height: 3rem;
            transform: translateZ(0);
            width: auto;
        }

        .survey-admin-mobile-sidebar-close {
            height: 2.5rem;
            width: 2.5rem;
        }

        .survey-admin-mobile-sidebar-close i {
            font-size: 1.35rem;
        }

        .survey-admin-mobile-menu-button:focus-visible,
        .survey-admin-mobile-sidebar-close:focus-visible {
            outline: 2px solid rgba(47, 111, 237, 0.35);
            outline-offset: 2px;
        }

        @media (max-width: 991.98px) {
            .survey-admin-sidebar-card .brand {
                display: none;
            }
        }

        @media (min-width: 992px) {
            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-column::after {
                bottom: 0.3rem;
                right: 0;
                top: 0.3rem;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-column {
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card {
                align-items: center;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .brand {
                align-items: center;
                flex-direction: column;
                gap: 0.65rem;
                justify-content: center;
                padding: 0.75rem 0 0.8rem;
                width: 100%;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-brand-logo-full {
                display: none;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-brand-logo-symbol {
                display: block;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-foot {
                align-items: center;
                padding: 0.4rem 0.2rem 0.5rem;
                width: 100%;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-foot-item {
                height: 2.2rem;
                justify-content: center;
                margin: 0 auto;
                padding: 0;
                width: 2.2rem;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-foot-label,
            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-foot-caret {
                display: none;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .card-body {
                padding-left: 0 !important;
                padding-right: 0 !important;
                width: 100%;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .nav {
                align-items: center;
                width: 100%;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .nav-link {
                align-items: center;
                border-radius: 999px;
                height: 2.75rem;
                justify-content: center;
                margin-left: auto;
                margin-right: auto;
                padding: 0;
                width: 2.75rem;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .nav-link i {
                margin-top: 0;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .nav-link i {
                font-size: 1.05rem;
            }

            .survey-admin-shell.is-sidebar-collapsed .survey-admin-sidebar-card .nav-link span {
                display: none;
            }
        }

        @media (max-width: 991.98px) {
            .survey-admin-page-frame {
                height: auto;
                padding: 0.5rem 0.65rem 2rem;
                overflow: visible;
            }

            .survey-admin-shell,
            .survey-admin-shell > .row,
            .survey-admin-main-column {
                height: auto;
            }

            .survey-admin-main-scroll {
                overflow: visible;
                padding-right: 0;
            }

            .survey-admin-content-stack {
                padding-right: 0;
            }

            .survey-admin-header-card {
                padding: 0.25rem 0.8rem 1.1rem;
            }

            .survey-admin-header-card .btn {
                min-height: var(--dayalogs-admin-button-height);
            }

            .survey-admin-header-card .survey-admin-page-actions {
                display: grid !important;
                gap: 0.55rem !important;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                width: 100%;
            }

            .survey-admin-header-card .survey-admin-page-actions > .btn,
            .survey-admin-header-card .survey-admin-page-actions > .dropdown,
            .survey-admin-header-card .survey-admin-page-actions > form {
                width: 100%;
            }

            .survey-admin-header-card .survey-admin-page-actions > .dropdown > .btn,
            .survey-admin-header-card .survey-admin-page-actions > form > .btn {
                width: 100%;
            }

            .survey-admin-sidebar-column::after {
                display: none;
            }

            .survey-admin-sidebar-toggle {
                display: none;
            }

            .survey-admin-local-nav {
                margin-left: -0.65rem;
                margin-right: -0.65rem;
                padding-left: 0;
                padding-right: 0;
                position: static;
            }

            .survey-admin-local-nav a:first-of-type,
            .survey-admin-local-nav button:first-of-type {
                margin-left: 0.65rem;
            }

            .survey-admin-local-nav a:last-of-type,
            .survey-admin-local-nav button:last-of-type {
                margin-right: 0.65rem;
            }

            .survey-admin-detail-panels {
                padding-left: 0.8rem;
                padding-right: 0.8rem;
            }

            .survey-admin-local-nav a,
            .survey-admin-local-nav button {
                min-height: 2.35rem;
                padding-inline: 0.72rem;
            }

            .survey-admin-overview-header,
            .survey-admin-access-copy {
                padding-left: 0;
            }

            .survey-admin-overview-header,
            .survey-admin-access-panel {
                align-items: stretch;
                display: flex;
                flex-direction: column;
            }

            .survey-admin-filter-form,
            .survey-admin-import-summary {
                grid-template-columns: 1fr;
            }

            .survey-admin-contact-filter-row {
                justify-content: stretch;
            }

            .survey-admin-audience-stat-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-contact-bulk-toolbar {
                align-items: stretch;
                flex-direction: column;
            }

            .survey-admin-contact-pagination {
                align-items: stretch;
                flex-direction: column;
            }

            .survey-admin-contact-pagination-actions {
                justify-content: flex-start;
            }

            .survey-admin-contact-tag-input {
                max-width: none;
            }

            .survey-admin-segment-builder-toolbar {
                align-items: stretch;
                flex-direction: column;
            }

            .survey-admin-segment-rule {
                grid-template-columns: 1fr;
            }

            .survey-admin-segment-path-picker,
            .survey-admin-segment-tag-picker,
            .survey-admin-segment-value-picker {
                grid-column: auto;
            }

            .survey-admin-segment-confirm {
                grid-template-columns: 1fr;
            }

            .survey-admin-overview-status {
                justify-content: flex-start;
            }

            .survey-admin-stat-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-dashboard-stat-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-account-fields,
            .survey-admin-profile-grid,
            .survey-admin-team-grid,
            .survey-admin-api-token-reveal {
                grid-template-columns: 1fr;
            }

            .survey-admin-team-card-header {
                align-items: stretch;
                flex-direction: column;
            }

            .survey-admin-team-seats {
                justify-content: flex-start;
            }

            .survey-admin-invite-form {
                width: 100%;
            }

            .survey-admin-stat-grid .survey-admin-stat:nth-child(odd) {
                border-left: 0;
            }

            .survey-admin-stat-grid .survey-admin-stat:nth-child(n + 3) {
                border-top: 1px solid var(--dayalogs-admin-line);
            }

            .survey-admin-url-block {
                padding-right: 0;
                width: 100%;
            }

            .survey-admin-ai-mode .survey-admin-main-scroll,
            .survey-admin-ai-mode .survey-admin-content-stack {
                overflow: visible;
            }

            .survey-admin-ai-mode .survey-admin-content-stack {
                height: auto;
            }

            .survey-ai-builder,
            .survey-ai-workbench {
                min-height: calc(100vh - var(--dayalogs-topbar-height, 0px) - 11rem);
            }

            .survey-ai-builder {
                flex-direction: column;
            }

            .survey-ai-mobile-switch {
                display: grid;
                gap: 0.35rem;
                grid-template-columns: 1fr 1fr;
                margin-bottom: 0.75rem;
                width: 100%;
            }

            .survey-ai-workbench {
                display: block;
            }

            .survey-ai-panel {
                min-height: calc(100vh - var(--dayalogs-topbar-height, 0px) - 14rem);
            }

            .survey-ai-panel.is-mobile-hidden {
                display: none;
            }

            .survey-ai-composer {
                width: 100%;
            }

            .survey-ai-composer-row {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 575.98px) {
            .survey-admin-design-form,
            .survey-admin-design-style-form {
                gap: 1rem;
            }

            .survey-admin-design-logo {
                align-items: start;
                border-radius: 0.9rem;
                gap: 0.75rem;
                padding: 0.78rem;
            }

            .survey-admin-design-logo-main {
                gap: 0.65rem;
            }

            .survey-admin-design-logo-preview {
                border-radius: 0.72rem;
                height: 2.8rem;
                max-width: 4.5rem;
                padding: 0.3rem;
            }

            .survey-admin-design-logo-actions {
                display: grid;
                gap: 0.5rem;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                justify-self: stretch;
                width: 100%;
            }

            .survey-admin-design-logo-actions .btn,
            .survey-admin-design-logo-actions label {
                width: 100%;
            }

            .survey-admin-design-logo-actions form:only-child {
                grid-column: 1 / -1;
            }

            .survey-admin-design-current {
                align-items: stretch;
                border-radius: 0.9rem;
                display: grid;
                gap: 0.62rem;
                max-width: none;
                padding: 0.72rem;
                width: 100%;
            }

            .survey-admin-design-current > span {
                line-height: 1.1;
            }

            .survey-admin-design-alignment-options {
                display: grid;
                gap: 0.32rem;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                margin-left: 0;
                width: 100%;
            }

            .survey-admin-design-alignment-option {
                justify-content: center;
                min-height: 2.35rem;
                padding: 0 0.45rem;
                text-align: center;
                white-space: normal;
            }

            .survey-admin-design-inherit {
                margin-left: 0;
                white-space: normal;
            }

            .survey-admin-responsive-card-table-wrap {
                overflow: visible;
            }

            .survey-admin-responsive-card-table-wrap.survey-admin-table-panel {
                background: transparent;
                border-radius: 0;
                padding: 0;
            }

            .survey-admin-responsive-card-table,
            .survey-admin-responsive-card-table tbody,
            .survey-admin-responsive-card-table tr,
            .survey-admin-responsive-card-table td {
                display: block;
            }

            .survey-admin-responsive-card-table thead {
                display: none;
            }

            .survey-admin-responsive-card-table tr {
                --dayalogs-admin-mobile-card-action-offset: 1.95rem;
                background: #f8f4ef;
                border: 0;
                border-radius: 1.2rem;
                margin-bottom: 0.65rem;
                padding: 0.8rem;
            }

            .survey-admin-responsive-card-table td {
                border: 0 !important;
                padding: 0 !important;
            }

            .survey-admin-responsive-card-table td[data-label]::before {
                color: var(--dayalogs-admin-muted);
                content: attr(data-label);
                display: block;
                font-size: 0.66rem;
                font-weight: 760;
                letter-spacing: 0.055em;
                line-height: 1;
                margin-bottom: 0.24rem;
                text-transform: uppercase;
            }

            .survey-admin-responsive-card-table .survey-admin-card-primary::before,
            .survey-admin-responsive-card-table .survey-admin-card-actions::before {
                display: none;
            }

            .survey-admin-responsive-card-table .survey-admin-card-primary {
                font-size: 1rem;
                line-height: 1.28;
                margin-bottom: 0.58rem;
            }

            .survey-admin-responsive-card-table .survey-admin-card-actions {
                margin-top: 0.72rem;
                text-align: left !important;
            }

            .survey-admin-responsive-card-table .survey-admin-table-actions {
                justify-content: flex-start;
            }

            .survey-admin-translation-status-grid {
                grid-template-columns: 1fr;
            }

            .survey-admin-translation-locale-row {
                align-items: center;
                grid-template-columns: minmax(0, 1fr) auto;
            }

            .survey-admin-versions-table tbody {
                display: grid;
                gap: 0.8rem;
                grid-template-columns: 1fr;
            }

            .survey-admin-versions-table tr {
                align-content: start;
                display: grid;
                column-gap: 0.9rem;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                margin-bottom: 0;
                padding: 0.9rem;
                row-gap: 0.72rem;
            }

            .survey-admin-versions-table td[data-label]::before {
                display: none;
            }

            .survey-admin-versions-table .survey-admin-version-number {
                align-self: start;
                font-size: 1.14rem;
                grid-column: 1;
                grid-row: 1;
                line-height: 1.1;
                margin-bottom: 0;
            }

            .survey-admin-versions-table .survey-admin-version-state {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
            }

            .survey-admin-versions-table .survey-admin-version-responses {
                grid-column: 1 / -1;
                line-height: 1.2;
            }

            .survey-admin-version-mobile-label {
                color: var(--dayalogs-admin-muted);
                display: none;
                font-size: 0.68rem;
                font-weight: 760;
                letter-spacing: 0.045em;
                line-height: 1.1;
                text-transform: uppercase;
            }

            .survey-admin-versions-table .survey-admin-version-responses .survey-admin-version-mobile-label {
                display: inline;
                font-size: 0.72rem;
                letter-spacing: 0;
                text-transform: none;
            }

            .survey-admin-versions-table .survey-admin-version-date {
                display: grid;
                gap: 0.14rem;
                line-height: 1.18;
                margin-top: 0.05rem;
            }

            .survey-admin-versions-table .survey-admin-version-latest {
                grid-column: 1;
            }

            .survey-admin-versions-table .survey-admin-version-published {
                grid-column: 2;
            }

            .survey-admin-versions-table .survey-admin-version-date .survey-admin-version-mobile-label {
                display: block;
            }

            .survey-admin-surveys-table td:not(.survey-admin-card-primary):not(.survey-admin-card-status):not(.survey-admin-card-responses):not(.survey-admin-card-actions) {
                display: none;
            }

            .survey-admin-surveys-table tr {
                align-items: start;
                display: grid;
                column-gap: 0.85rem;
                row-gap: 0.42rem;
                grid-template-columns: minmax(0, 70%) minmax(4.75rem, 30%);
            }

            .survey-admin-surveys-table td[data-label]::before {
                display: none;
            }

            .survey-admin-surveys-table .survey-admin-card-status {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
            }

            .survey-admin-surveys-table .survey-admin-card-primary {
                font-size: 1.04rem;
                grid-column: 1;
                grid-row: 1;
                margin-bottom: 0.28rem;
                width: 100%;
            }

            .survey-admin-surveys-table .survey-admin-card-actions {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
                margin-top: var(--dayalogs-admin-mobile-card-action-offset);
                text-align: right !important;
            }

            .survey-admin-surveys-table .survey-admin-card-actions .survey-admin-table-actions {
                justify-content: flex-end;
            }

            .survey-admin-surveys-table .survey-admin-card-status,
            .survey-admin-surveys-table .survey-admin-card-responses {
                margin-top: 0;
            }

            .survey-admin-surveys-table .survey-admin-card-responses {
                color: var(--dayalogs-admin-muted);
                font-size: 0.78rem;
                grid-column: 1;
                grid-row: 2;
                line-height: 1.25;
                margin-top: 0.08rem;
            }

            .survey-admin-surveys-table .survey-admin-card-responses::before {
                content: attr(data-label) ": ";
                display: inline;
                font-weight: 650;
            }

            .survey-admin-quota-table tr {
                align-items: start;
                column-gap: 0.85rem;
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(8rem, auto);
                row-gap: 0.42rem;
            }

            .survey-admin-quota-table td[data-label]::before {
                display: none;
            }

            .survey-admin-quota-table .survey-admin-card-primary {
                grid-column: 1;
                grid-row: 1;
                margin-bottom: 0.28rem;
                width: 100%;
            }

            .survey-admin-quota-table .survey-admin-quota-card-status {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
                text-align: right;
            }

            .survey-admin-quota-table .survey-admin-quota-card-status::before {
                display: none;
            }

            .survey-admin-quota-table .survey-admin-quota-card-conditions {
                display: none;
            }

            .survey-admin-quota-table .survey-admin-quota-card-usage {
                grid-column: 1;
                grid-row: 2;
            }

            .survey-admin-quota-table .survey-admin-card-actions {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
                margin-top: var(--dayalogs-admin-mobile-card-action-offset);
                text-align: right !important;
            }

            .survey-admin-quota-table .survey-admin-card-actions .survey-admin-table-actions {
                justify-content: flex-end;
            }

            .survey-admin-quota-table .survey-admin-card-actions .survey-admin-table-actions {
                gap: 0.35rem;
            }

            .survey-admin-quota-table td:not(.survey-admin-card-primary):not(.survey-admin-quota-card-status):not(.survey-admin-quota-card-usage):not(.survey-admin-card-actions) {
                display: none;
            }

            .survey-admin-quota-table .survey-admin-quota-mobile-meta {
                display: block;
            }

            .survey-admin-quota-table .survey-admin-quota-dependency {
                display: none;
            }

            .survey-admin-embeds-table tr {
                align-items: start;
                column-gap: 0.85rem;
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(8rem, auto);
                row-gap: 0.3rem;
            }

            .survey-admin-embeds-table colgroup {
                display: none;
            }

            .survey-admin-embeds-table td[data-label]::before {
                display: none;
            }

            .survey-admin-embeds-table .survey-admin-card-primary {
                grid-column: 1;
                grid-row: 1;
                margin-bottom: 0;
                width: 100%;
            }

            .survey-admin-embeds-table .survey-admin-embed-card-link {
                color: var(--dayalogs-admin-muted);
                font-size: 0.78rem;
                grid-column: 1;
                grid-row: 2;
                line-height: 1.25;
            }

            .survey-admin-embeds-table .survey-admin-embed-card-status {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
            }

            .survey-admin-embeds-table .survey-admin-embed-card-trigger,
            .survey-admin-embeds-table .survey-admin-embed-card-origins {
                color: var(--dayalogs-admin-muted);
                font-size: 0.78rem;
                grid-column: 1;
                line-height: 1.25;
            }

            .survey-admin-embeds-table .survey-admin-embed-card-trigger {
                grid-row: 3;
            }

            .survey-admin-embeds-table .survey-admin-embed-card-origins {
                grid-row: 4;
            }

            .survey-admin-embeds-table .survey-admin-embed-card-origins::after {
                content: " " attr(data-label);
            }

            .survey-admin-embeds-table .survey-admin-card-actions {
                align-self: start;
                grid-column: 2;
                grid-row: 1 / span 4;
                justify-self: end;
                margin-top: var(--dayalogs-admin-mobile-card-action-offset);
                text-align: right !important;
            }

            .survey-admin-embeds-table .survey-admin-table-actions {
                display: grid;
                gap: 0.35rem;
                grid-template-columns: repeat(2, 2rem);
                justify-content: end;
            }

            .survey-admin-links-table tr.survey-admin-link-row {
                align-items: start;
                column-gap: 0.85rem;
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(6.2rem, auto);
                row-gap: 0.42rem;
            }

            .survey-admin-links-table colgroup {
                display: none;
            }

            .survey-admin-links-table td[data-label]::before {
                display: none;
            }

            .survey-admin-links-table .survey-admin-card-primary {
                grid-column: 1;
                grid-row: 1;
                margin-bottom: 0.28rem;
                width: 100%;
            }

            .survey-admin-links-table .survey-admin-link-card-status {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
                text-align: right;
            }

            .survey-admin-links-table .survey-admin-link-card-usage {
                grid-column: 1;
                grid-row: 2;
            }

            .survey-admin-links-table .survey-admin-card-actions {
                align-self: start;
                grid-column: 2;
                grid-row: 1 / span 2;
                justify-self: end;
                margin-top: var(--dayalogs-admin-mobile-card-action-offset);
                text-align: right !important;
            }

            .survey-admin-links-table .survey-admin-link-actions {
                display: grid;
                gap: 0.35rem;
                grid-template-columns: repeat(2, 2rem);
                justify-content: end;
            }

            .survey-admin-links-table [data-link-set-detail-toggle="desktop"] {
                display: none !important;
            }

            .survey-admin-links-table [data-link-set-detail-toggle="mobile"] {
                display: inline-flex !important;
            }

            .survey-admin-links-table .survey-admin-card-actions .survey-admin-table-actions {
                justify-content: flex-end;
            }

            .survey-admin-links-table td:not(.survey-admin-card-primary):not(.survey-admin-link-card-status):not(.survey-admin-link-card-usage):not(.survey-admin-card-actions):not(.survey-admin-link-card-detail) {
                display: none;
            }

            .survey-admin-links-table .survey-admin-link-mobile-meta {
                display: block;
            }

            .survey-admin-links-table .survey-admin-link-card-detail {
                border: 0 !important;
                display: block !important;
                grid-column: 1 / -1;
                grid-row: 3;
                margin-top: 0.6rem;
                padding: 0 !important;
            }

            .survey-admin-links-table .survey-admin-link-card-detail .survey-admin-link-set-detail {
                background: transparent;
                border-radius: 0;
                padding: 0;
            }

            .survey-admin-links-table .survey-admin-link-detail-row {
                display: none !important;
            }

            .survey-admin-links-table .survey-admin-link-detail-row > td {
                padding: 0 !important;
            }

            .survey-admin-stat-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-dashboard-stat-grid {
                gap: 0.65rem;
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-audience-stat-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .survey-admin-stat-grid .survey-admin-stat {
                min-height: 7.25rem;
                padding: 0.82rem 0.7rem;
            }

            .survey-admin-dashboard .survey-admin-stat,
            .survey-admin-survey-stat-grid .survey-admin-stat,
            .survey-admin-audience-stat-grid .survey-admin-stat {
                border-radius: 0.72rem;
                min-height: 7.8rem;
                padding: 0.88rem;
            }

            .survey-admin-stat-heading {
                gap: 0.45rem;
                min-height: 1.25rem;
            }

            .survey-admin-stat-heading .survey-admin-field-label {
                font-size: 0.68rem;
                letter-spacing: 0.055em;
            }

            .survey-admin-stat-heading i,
            .survey-admin-dashboard .survey-admin-stat-heading i,
            .survey-admin-survey-stat-grid .survey-admin-stat-heading i,
            .survey-admin-audience-stat-grid .survey-admin-stat-heading i {
                font-size: 0.82rem;
                height: 1.55rem;
                width: 1.55rem;
            }

            .survey-admin-stat-value,
            .survey-admin-dashboard .survey-admin-stat-value,
            .survey-admin-survey-stat-grid .survey-admin-stat-value,
            .survey-admin-audience-stat-grid .survey-admin-stat-value {
                font-size: 2.15rem;
                margin-top: 0.42rem;
            }

            .survey-admin-stat-value-sm,
            .survey-admin-dashboard .survey-admin-stat-value-sm,
            .survey-admin-survey-stat-grid .survey-admin-stat-value-sm {
                font-size: 1.1rem;
                margin-top: 0.48rem;
                min-height: 2.35rem;
            }

            .survey-admin-stat-date {
                font-size: 1.1rem;
            }

            .survey-admin-stat-time {
                font-size: 0.82rem;
            }

            .survey-admin-survey-stat-grid .survey-admin-stat-date {
                font-size: 1.32rem;
            }

            .survey-admin-survey-stat-grid .survey-admin-stat-time {
                font-size: 0.9rem;
            }

            .survey-admin-stat-datetime,
            .survey-admin-dashboard .survey-admin-stat-datetime,
            .survey-admin-survey-stat-grid .survey-admin-stat-datetime {
                margin-top: 0.48rem;
                min-height: 2.35rem;
            }

            .survey-admin-cost-layout,
            .survey-admin-cost-breakdown,
            .survey-admin-cost-scenario-grid {
                grid-template-columns: 1fr;
            }

            .survey-admin-cost-hero {
                border-right: 0;
                padding: 0.95rem 0 1rem;
            }

            .survey-admin-cost-breakdown > div:not(:last-child) {
                border-right: 0;
            }

            .survey-admin-cost-breakdown > div {
                padding: 0.9rem 0;
            }

            .survey-admin-cost-scenarios {
                gap: 0.75rem;
                padding-top: 1.15rem;
            }

            .survey-admin-cost-scenario-grid {
                gap: 0;
            }

            .survey-admin-cost-scenario-grid > div {
                padding: 0.75rem 0 0.9rem;
            }

            .survey-admin-stat .text-muted.small {
                font-size: 0.74rem;
                line-height: 1.25;
            }

            .survey-admin-account-fields {
                grid-template-columns: 1fr;
            }

            .survey-admin-invite-form {
                flex-direction: column;
            }

            .survey-admin-invite-form .btn,
            .survey-admin-invite-form .form-control {
                width: 100%;
            }

            .survey-admin-stat-grid .survey-admin-stat:nth-child(odd) {
                border-left: 0;
            }

            .survey-admin-stat-grid .survey-admin-stat:nth-child(even) {
                border-left: 1px solid var(--dayalogs-admin-line);
            }

            .survey-admin-stat-grid .survey-admin-stat:nth-child(n + 3) {
                border-top: 1px solid var(--dayalogs-admin-line);
            }

            .survey-admin-url-control {
                grid-template-columns: minmax(0, 1fr) auto;
            }

            .survey-admin-url-control a {
                display: none;
            }

        }

/* ==========================================================================
   Survey admin detail, link-set and export flows
   Extracted from templates/survey_admin/show.html.twig
   ========================================================================== */
/* link-set-list */
        .link-set-list { display: flex; flex-direction: column; }
        .link-set-item { border-bottom: 1px solid var(--dayalogs-admin-line-soft); }
        .link-set-item:last-child { border-bottom: 0; }
        .link-set-item-header {
            align-items: center;
            cursor: pointer;
            display: flex;
            gap: 0.75rem;
            padding: 0.85rem 0;
        }
        .link-set-item-header:has(+ .link-set-item-detail) { cursor: pointer; }
        .link-set-item-icon {
            align-items: center;
            border-radius: 0.55rem;
            display: inline-flex;
            flex: 0 0 auto;
            font-size: 1rem;
            height: 2.1rem;
            justify-content: center;
            width: 2.1rem;
        }
        .link-set-item-icon--single { background: #eadfd6; color: #7c5f51; }
        .link-set-item-icon--link-set { background: #e4eadf; color: #61765c; }
        .link-set-item-meta { flex: 1; min-width: 0; }
        .link-set-item-name { font-size: 0.9rem; font-weight: 600; }
        .link-set-item-sub {
            color: var(--dayalogs-admin-muted);
            font-size: 0.78rem;
            line-height: 1.45;
            margin-top: 0.15rem;
        }
        .link-set-quota-line { margin-top: 0.1rem; }
        .link-set-item-actions { align-items: center; display: flex; flex-shrink: 0; gap: 0.35rem; }
        .link-set-item-actions .survey-admin-icon-button {
            --dayalogs-admin-icon-button-size: 2rem;
        }
        .link-set-item-detail { padding: 0 0 0.75rem; }

        .survey-admin-quota-list {
            display: flex;
            flex-direction: column;
        }
        .survey-admin-quota-table {
            table-layout: fixed;
            width: 100%;
        }
        .survey-admin-links-table {
            table-layout: fixed;
            width: 100%;
        }
        .survey-admin-links-table .survey-admin-card-primary strong {
            color: var(--dayalogs-admin-text-strong);
        }
        .survey-admin-link-card-type,
        .survey-admin-link-card-status {
            white-space: normal;
        }
        .survey-admin-link-card-usage {
            min-width: 0;
        }
        .survey-admin-link-card-detail {
            border: 0 !important;
            display: none;
            padding: 0 !important;
        }
        .survey-admin-links-table .survey-admin-link-row.is-detail-open > * {
            border-bottom-color: transparent !important;
        }
        .survey-admin-links-table .survey-admin-link-row.is-last-link-set-row > * {
            border-bottom-color: transparent !important;
        }
        .survey-admin-link-mobile-meta {
            color: var(--dayalogs-admin-muted);
            display: none;
            font-size: 0.78rem;
            margin-top: 0.4rem;
        }
        .survey-admin-results-toolbar {
            align-items: center;
            display: grid;
            gap: 0.6rem;
            grid-template-columns: minmax(16rem, 1fr) 12rem 12rem auto;
            margin: 0 0 0.9rem;
        }
        .survey-admin-results-search {
            display: block;
            margin: 0;
            position: relative;
        }
        .survey-admin-results-search i {
            color: var(--dayalogs-admin-muted);
            left: 0.9rem;
            pointer-events: none;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
        }
        .survey-admin-results-search .form-control {
            padding-left: 2.25rem;
        }
        .survey-admin-results-columns .btn {
            white-space: nowrap;
            width: 100%;
        }
        .survey-admin-results-column-menu {
            border: 1px solid rgba(110, 98, 89, 0.12);
            border-radius: 0.85rem;
            box-shadow: 0 1rem 2rem rgba(49, 42, 37, 0.12);
            max-height: 20rem;
            min-width: 18rem;
            overflow: auto;
            padding: 0.45rem;
        }
        .survey-admin-results-column-menu-header {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
            line-height: 1.25;
            padding: 0.45rem 0.65rem 0.5rem;
        }
        .survey-admin-results-column-option {
            align-items: center;
            border-radius: 0.6rem;
            display: flex;
            gap: 0.55rem;
            white-space: normal;
        }
        .survey-admin-sort-button {
            background: transparent;
            border: 0;
            color: inherit;
            font: inherit;
            font-weight: inherit;
            padding: 0;
            text-align: left;
        }
        .survey-admin-sort-button:hover {
            color: var(--dayalogs-admin-text-strong);
        }
        .survey-admin-results-table {
            table-layout: fixed;
            width: 100%;
        }
        .survey-admin-results-table .survey-admin-result-card-primary {
            width: 8.5rem;
        }
        .survey-admin-results-table .survey-admin-result-card-date {
            width: 10rem;
        }
        .survey-admin-results-table .survey-admin-result-card-confidence {
            width: 9rem;
        }
        .survey-admin-result-answer-text {
            display: block;
            max-width: 18rem;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .survey-admin-result-mobile-meta {
            color: var(--dayalogs-admin-muted);
            display: none;
            font-size: 0.78rem;
            font-weight: 500;
            margin-top: 0.2rem;
        }
        .survey-admin-results-footer {
            align-items: center;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin-top: 0.8rem;
        }
        .survey-admin-results-count {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
        }
        .survey-admin-results-pagination {
            align-items: center;
            display: inline-flex;
            gap: 0.65rem;
        }
        .survey-admin-results-pagination span {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
            min-width: 3.5rem;
            text-align: center;
        }
        .survey-admin-results-load-more {
            display: none;
        }
        .survey-admin-response-modal .modal-content {
            max-height: calc(100dvh - 2rem);
            overflow: hidden;
        }
        .survey-admin-response-modal .modal-header,
        .survey-admin-response-modal .modal-footer {
            flex: 0 0 auto;
        }
        .survey-admin-response-modal .modal-body {
            min-height: 0;
            overflow-x: hidden;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
        }
        .survey-admin-response-modal .modal-body:focus {
            outline: none;
        }
        .survey-admin-response-modal-confidence {
            align-items: center;
            display: flex;
            gap: 0.55rem;
            margin-top: 0.55rem;
        }
        .survey-admin-response-modal-confidence > span:first-child {
            color: var(--dayalogs-admin-muted);
            font-size: 0.72rem;
            font-weight: 760;
            letter-spacing: 0.055em;
            text-transform: uppercase;
        }
        .survey-admin-response-modal-confidence strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.9rem;
        }
        .survey-admin-response-modal-tabs {
            align-items: center;
            background: #f8f4ef;
            border-radius: 999px;
            display: inline-flex;
            gap: 0.25rem;
            margin-bottom: 0.9rem;
            padding: 0.25rem;
        }
        .survey-admin-response-modal-tabs button {
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            font-size: 0.86rem;
            font-weight: 720;
            min-height: 2rem;
            padding: 0.35rem 0.85rem;
        }
        .survey-admin-response-modal-tabs button.is-active {
            background: #fffdfa;
            color: var(--dayalogs-admin-text-strong);
            box-shadow: 0 0.1rem 0.45rem rgba(49, 42, 37, 0.06);
        }
        .survey-admin-response-answer-item span {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 0.72rem;
            font-weight: 760;
            letter-spacing: 0.055em;
            line-height: 1;
            margin-bottom: 0.35rem;
            text-transform: uppercase;
        }
        .survey-admin-response-answer-list {
            display: grid;
            gap: 0.55rem;
        }
        .survey-admin-response-answer-item {
            background: #f8f4ef;
            border-radius: 0.85rem;
            padding: 0.85rem 1rem;
        }
        .survey-admin-response-answer-item strong {
            display: block;
            line-height: 1.25;
        }
        .survey-admin-response-answer-item p {
            color: var(--dayalogs-admin-text);
            margin: 0.5rem 0 0;
            white-space: pre-wrap;
        }
        .survey-admin-response-file-list {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin-top: 0.65rem;
        }
        .survey-admin-response-file-link {
            align-items: center;
            background: #fffdfa;
            border: 1px solid #e8ded3;
            border-radius: 999px;
            color: var(--dayalogs-admin-text);
            display: inline-flex;
            font-size: 0.86rem;
            font-weight: 700;
            gap: 0.4rem;
            line-height: 1;
            min-height: 2rem;
            padding: 0.45rem 0.75rem;
            text-decoration: none;
        }
        .survey-admin-response-file-link:hover {
            border-color: #d8cbbf;
            color: var(--dayalogs-admin-text);
        }
        .survey-admin-response-context-list {
            display: grid;
            gap: 0.75rem;
        }
        .survey-admin-response-context-section {
            background: #f8f4ef;
            border-radius: 0.85rem;
            padding: 0.85rem 1rem;
        }
        .survey-admin-response-context-section h3 {
            color: var(--dayalogs-admin-muted);
            font-size: 0.72rem;
            font-weight: 760;
            letter-spacing: 0.055em;
            line-height: 1;
            margin: 0 0 0.72rem;
            text-transform: uppercase;
        }
        .survey-admin-response-context-items {
            display: grid;
            gap: 0.58rem;
        }
        .survey-admin-response-context-item {
            border-top: 1px solid rgba(112, 99, 89, 0.12);
            display: grid;
            gap: 0.45rem;
            grid-template-columns: minmax(8rem, 0.36fr) minmax(0, 1fr);
            padding-top: 0.58rem;
        }
        .survey-admin-response-context-item:first-child {
            border-top: 0;
            padding-top: 0;
        }
        .survey-admin-response-context-item strong,
        .survey-admin-response-context-item small {
            display: block;
            line-height: 1.25;
        }
        .survey-admin-response-context-item strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.86rem;
        }
        .survey-admin-response-context-item small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.74rem;
            margin-top: 0.1rem;
            overflow-wrap: anywhere;
        }
        .survey-admin-response-context-item pre {
            background: rgba(255, 253, 250, 0.72);
            border-radius: 0.55rem;
            color: var(--dayalogs-admin-text);
            font-size: 0.78rem;
            line-height: 1.35;
            margin: 0;
            max-height: 12rem;
            overflow: auto;
            padding: 0.55rem 0.65rem;
            white-space: pre-wrap;
        }
        .survey-admin-response-context-item pre.is-inline {
            background: transparent;
            border-radius: 0;
            max-height: none;
            overflow: visible;
            padding: 0;
        }
        .survey-admin-response-context-tags {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
            min-width: 0;
        }
        @media (max-width: 575.98px) {
            .survey-admin-results-toolbar {
                grid-template-columns: 1fr;
                margin-bottom: 0.75rem;
            }

            .survey-admin-results-toolbar .btn,
            .survey-admin-results-toolbar .form-select {
                width: 100%;
            }

            .survey-admin-results-table tr {
                align-items: start;
                column-gap: 0.85rem;
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(4.5rem, auto);
                row-gap: 0.46rem;
            }

            .survey-admin-results-table td[data-label]::before {
                display: none;
            }

            .survey-admin-results-table .survey-admin-result-card-primary {
                grid-column: 1;
                grid-row: 1;
                margin-bottom: 0.12rem;
                width: 100%;
            }

            .survey-admin-results-table .survey-admin-result-mobile-meta {
                display: block;
            }

            .survey-admin-results-table .survey-admin-result-card-date {
                display: none;
            }

            .survey-admin-results-table .survey-admin-result-card-confidence {
                grid-column: 1 / -1;
                grid-row: 2;
                width: auto;
            }

            .survey-admin-results-table .survey-admin-result-card-confidence::before {
                display: block;
            }

            .survey-admin-results-table .survey-admin-result-answer {
                grid-column: 1 / -1;
                margin-top: 0.35rem;
            }

            .survey-admin-results-table .survey-admin-result-answer::before {
                display: block;
                margin-bottom: 0.22rem;
            }

            .survey-admin-results-table .survey-admin-card-actions {
                align-self: start;
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
                margin-top: 0;
                text-align: right !important;
            }

            .survey-admin-results-table .survey-admin-card-actions .survey-admin-table-actions {
                justify-content: flex-end;
            }

            .survey-admin-result-answer-text {
                max-width: 100%;
                white-space: normal;
            }

            .survey-admin-results-footer {
                align-items: flex-start;
                flex-direction: column;
                gap: 0.65rem;
            }

            .survey-admin-results-load-more {
                display: inline-flex;
                width: 50%;
            }

            .survey-admin-response-modal-confidence {
                align-items: flex-start;
                flex-direction: column;
                gap: 0.28rem;
            }

            .survey-admin-response-modal-tabs {
                display: flex;
                width: 100%;
            }

            .survey-admin-response-modal-tabs button {
                flex: 1 1 0;
            }

            .survey-admin-response-context-item {
                grid-template-columns: 1fr;
            }
        }
        .survey-admin-link-detail-row > td {
            background: transparent;
            border-top: 0 !important;
            padding: 0.75rem !important;
        }
        .survey-admin-link-detail-row .survey-admin-table-panel {
            background: rgba(255, 255, 255, 0.58);
        }
        .survey-admin-link-row-toggle {
            align-items: center;
            background: transparent;
            border: 0;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.9rem;
            height: 1.35rem;
            justify-content: center;
            margin-left: 0.25rem;
            padding: 0;
            vertical-align: middle;
            width: 1.35rem;
        }
        .survey-admin-link-row-toggle:hover,
        .survey-admin-link-row-toggle:focus {
            color: var(--dayalogs-admin-text-strong);
        }
        [data-link-set-detail-toggle="mobile"] {
            display: none !important;
        }
        .survey-admin-link-actions {
            gap: 0.35rem;
            justify-content: flex-end;
            width: 100%;
        }
        .survey-admin-link-set-card-list,
        .survey-admin-lazy-card-range {
            display: none;
        }
        @media (max-width: 680px) {
            .survey-admin-link-set-detail .survey-admin-table-panel,
            .survey-admin-link-set-detail .survey-admin-pager {
                display: none;
            }

            .survey-admin-link-set-card-list {
                background: rgba(255, 255, 255, 0.58);
                border-radius: 0.9rem;
                display: flex;
                flex-direction: column;
                gap: 0.55rem;
                max-height: min(28rem, 62vh);
                overflow-x: hidden;
                overflow-y: auto;
                overscroll-behavior: contain;
                padding: 0.58rem;
            }

            .survey-admin-link-set-contact-card {
                align-items: start;
                background: #fffdfa;
                border-radius: var(--dayalogs-admin-card-radius);
                column-gap: 0.85rem;
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(5.4rem, auto);
                padding: 0.82rem;
            }

            .survey-admin-link-set-contact-main {
                display: flex;
                flex-direction: column;
                gap: 0.12rem;
                min-width: 0;
            }

            .survey-admin-link-set-contact-main strong {
                color: var(--dayalogs-admin-text-strong);
                font-size: 0.98rem;
                line-height: 1.2;
            }

            .survey-admin-link-set-contact-main span,
            .survey-admin-link-set-contact-main small {
                color: var(--dayalogs-admin-muted);
                font-size: 0.78rem;
                line-height: 1.35;
                overflow-wrap: anywhere;
            }

            .survey-admin-link-set-contact-side {
                align-items: flex-end;
                display: flex;
                flex-direction: column;
                gap: var(--dayalogs-admin-mobile-card-action-offset);
                justify-self: end;
            }

            .survey-admin-link-set-contact-side .survey-admin-table-actions {
                display: grid;
                gap: 0.35rem;
                grid-template-columns: repeat(2, 2rem);
                justify-content: end;
            }

            .survey-admin-lazy-card-range {
                display: block;
                margin-top: 0.5rem;
                text-align: right;
            }
        }
        .survey-admin-pager {
            align-items: center;
            display: flex;
            gap: 0.65rem;
            justify-content: space-between;
            margin-top: 0.75rem;
        }
        .survey-admin-pager-actions {
            align-items: center;
            display: inline-flex;
            gap: 0.4rem;
            justify-content: flex-end;
        }
        .survey-admin-quota-section-header {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin: 1.45rem 0 0.65rem;
        }
        .survey-admin-inline-link {
            border: 0;
            color: var(--dayalogs-admin-text-strong);
            font-size: inherit;
            font-weight: 750;
            line-height: inherit;
            text-decoration: underline;
            text-underline-offset: 0.12em;
        }
        .survey-admin-inline-link:hover,
        .survey-admin-inline-link:focus {
            color: var(--dayalogs-admin-primary-hover);
        }
        .survey-admin-quota-table .survey-admin-card-primary strong {
            color: var(--dayalogs-admin-text-strong);
            margin-right: 0.45rem;
        }
        .survey-admin-quota-card-type {
            min-width: 7rem;
            white-space: normal;
        }
        .survey-admin-quota-inline-badge {
            margin: 0.08rem 0.12rem 0.08rem 0;
        }
        .survey-admin-quota-card-status {
            white-space: nowrap;
        }
        .survey-admin-quota-card-conditions {
            color: var(--dayalogs-admin-muted);
            font-size: 0.86rem;
            max-width: 34rem;
            min-width: 14rem;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        .survey-admin-quota-card-usage {
            min-width: 0;
        }
        .survey-admin-quota-usage {
            align-items: center;
            display: flex;
            gap: 0.45rem;
            min-width: 0;
            white-space: nowrap;
        }
        .survey-admin-quota-count {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
            font-variant-numeric: tabular-nums;
            min-width: 3.6rem;
        }
        .survey-admin-quota-percent {
            color: var(--dayalogs-admin-text-strong);
            font-weight: 750;
        }
        .survey-admin-quota-dependency {
            display: inline-block;
            margin-right: 0.45rem;
        }
        .survey-admin-quota-mobile-meta {
            color: var(--dayalogs-admin-muted);
            display: none;
            font-size: 0.78rem;
            font-weight: 500;
            margin-top: 0.4rem;
        }
        .survey-admin-quota-row {
            align-items: center;
            background: transparent;
            border-bottom: 1px solid var(--dayalogs-admin-line-soft);
            border-radius: 0;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: 2rem minmax(0, 1fr) auto;
            padding: 0.85rem 0;
        }
        .survey-admin-quota-row:last-child {
            border-bottom: 0;
        }
        .survey-admin-quota-row-muted {
            background: transparent;
            grid-template-columns: 2rem minmax(0, 1fr);
        }
        .survey-admin-quota-icon {
            align-items: center;
            background: #eadfd6;
            border-radius: 0.55rem;
            color: #7c5f51;
            display: inline-flex;
            font-size: 0.95rem;
            height: 2rem;
            justify-content: center;
            width: 2rem;
        }
        .survey-admin-quota-icon--link-set {
            background: #e4eadf;
            color: #61765c;
        }
        .survey-admin-quota-icon--link {
            background: #eadfd6;
            color: #7c5f51;
        }
        .survey-admin-quota-main {
            min-width: 0;
        }
        .survey-admin-quota-bar {
            margin: 0 0.35rem;
        }
        .survey-admin-quota-condition-header {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
        }
        .survey-admin-quota-inline-switch {
            align-items: center;
            display: inline-flex;
            gap: 0.5rem;
            margin: 0;
            min-height: var(--dayalogs-admin-button-height);
            padding: 0;
            padding-left: 0;
            white-space: nowrap;
        }
        .survey-admin-quota-inline-switch .form-check-input {
            flex: 0 0 auto;
            margin: 0;
        }
        .survey-admin-quota-inline-switch .form-check-label {
            color: var(--dayalogs-admin-muted);
            font-size: 0.9rem;
            line-height: 1;
        }
        .survey-admin-quota-total-switch {
            flex-shrink: 0;
        }
        .survey-admin-condition-builder {
            display: grid;
            gap: 0.75rem;
        }
        .survey-admin-condition-rule {
            grid-template-columns: minmax(8rem, 0.75fr) minmax(12rem, 1.2fr) minmax(9rem, 0.8fr) minmax(10rem, 1fr) auto;
        }
        .survey-admin-condition-path-picker {
            grid-column: span 1;
        }
        .survey-admin-condition-remove {
            --dayalogs-admin-icon-button-size: 2rem;
            justify-self: end;
        }
        @media (max-width: 980px) {
            .survey-admin-quota-condition-header {
                flex-direction: column;
            }
            .survey-admin-segment-group-header {
                align-items: stretch;
                display: grid;
                gap: 0.6rem;
                justify-content: stretch;
            }
            .survey-admin-segment-group-header label {
                justify-content: space-between;
                width: 100%;
            }
            .survey-admin-segment-group-header .form-select {
                flex: 0 0 5.5rem;
                width: 5.5rem;
            }
            .survey-admin-segment-group-actions {
                justify-content: flex-start;
            }
            .survey-admin-condition-rule {
                grid-template-columns: 1fr;
            }
            .survey-admin-condition-path-picker {
                grid-column: auto;
            }
        }
        @media (max-width: 680px) {
            .survey-admin-section-table-card {
                background: transparent;
                border-radius: 0;
                overflow: visible;
                padding: 0;
            }
            .survey-admin-quota-table {
                table-layout: auto;
            }
            .survey-admin-quota-table colgroup {
                display: none;
            }
            .survey-admin-section-header-actions {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                justify-content: stretch;
                width: 100%;
            }
            .survey-admin-section-header-actions > form,
            .survey-admin-section-header-actions > .dropdown {
                min-width: 0;
            }
            .survey-admin-section-header-actions .btn {
                width: 100%;
            }
        }

        .survey-export-dialog {
            max-width: 46rem;
        }
        .survey-export-modal-body {
            background: transparent;
            padding: 1.35rem;
        }
        .survey-export-wizard {
            margin: 0 auto;
            max-width: 36rem;
        }
        .survey-export-panel {
            min-height: 13rem;
            padding: 0;
        }
        .survey-export-version-list,
        .survey-export-option-list,
        .survey-export-format-grid {
            display: grid;
            gap: 0.6rem;
        }
        .survey-export-version-row,
        .survey-export-option {
            align-items: flex-start;
            background: #f7f2eb;
            border-radius: 0.7rem;
            cursor: pointer;
            display: flex;
            gap: 0.7rem;
            padding: 0.75rem 0.85rem;
        }
        .survey-export-version-row input,
        .survey-export-option input {
            margin-top: 0.25rem;
        }
        .survey-export-option + .survey-export-option {
            margin-top: 0.6rem;
        }
        .survey-export-format-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        .survey-export-format {
            align-items: center;
            background: #f7f2eb;
            border-radius: 999px;
            cursor: pointer;
            display: flex;
            gap: 0.45rem;
            justify-content: center;
            min-height: 2.75rem;
            padding: 0.5rem 0.75rem;
        }
        .survey-export-format input { margin: 0; }
        .survey-export-format .bi { color: var(--dayalogs-admin-brand); }
        @media (max-width: 640px) {
            .survey-export-dialog { max-width: calc(100% - 1rem); }
            .survey-export-wizard { max-width: none; }
            .survey-export-modal-body { padding: 1rem; }
            .survey-export-panel { min-height: 12rem; }
            .survey-export-format-grid { grid-template-columns: 1fr; }
            .survey-admin-modal-footer-actions {
                flex: 1;
                justify-content: flex-end;
            }
        }

        /* wizard overlay */
        .link-set-wizard-overlay {
            align-items: center;
            background: rgba(0,0,0,0.32);
            bottom: 0;
            display: flex;
            justify-content: center;
            left: 0;
            position: fixed;
            right: 0;
            top: 0;
            z-index: 1080;
        }
        .link-set-wizard {
            background: var(--dayalogs-admin-surface);
            border-radius: 1rem;
            box-shadow: 0 8px 32px rgba(0,0,0,0.15);
            display: flex;
            flex-direction: column;
            max-height: 90vh;
            overflow: hidden;
            width: min(640px, 96vw);
        }
        .link-set-wizard-header {
            align-items: flex-start;
            border-bottom: 1px solid var(--dayalogs-admin-line);
            display: flex;
            justify-content: space-between;
            padding: 1.1rem 1.25rem 1rem;
        }
        .link-set-wizard-steps {
            align-items: center;
            display: flex;
            gap: 0.4rem;
            padding: 0.85rem 1.25rem 0;
        }
        .link-set-wizard-step-dot {
            align-items: center;
            background: var(--dayalogs-admin-line);
            border-radius: 50%;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.75rem;
            font-weight: 600;
            height: 1.5rem;
            justify-content: center;
            transition: background 0.15s;
            width: 1.5rem;
        }
        .link-set-wizard-step-dot.active { background: var(--dayalogs-admin-brand); color: #fff; }
        .link-set-wizard-step-dot.done { background: var(--dayalogs-admin-success); color: #fff; }
        .link-set-wizard-body { flex: 1; min-height: 0; overflow-y: auto; padding: 1rem 1.25rem; position: relative; }
        .link-set-wizard-footer {
            border-top: 1px solid var(--dayalogs-admin-line);
            display: flex;
            gap: 0.5rem;
            padding: 0.85rem 1.25rem;
        }

        /* type cards */
        .link-set-type-grid { display: grid; gap: 0.75rem; grid-template-columns: 1fr 1fr; }
        .link-set-type-grid--compact { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
        .link-set-type-card {
            background: var(--dayalogs-admin-surface);
            border: 1.5px solid var(--dayalogs-admin-line);
            border-radius: 0.75rem;
            cursor: pointer;
            padding: 1rem;
            text-align: left;
            transition: border-color 0.12s;
        }
        .link-set-type-card:hover { border-color: var(--dayalogs-admin-brand); }
        .link-set-type-card.selected { border-color: var(--dayalogs-admin-brand); background: #f4efe8; }
        .link-set-type-icon { color: var(--dayalogs-admin-muted); display: block; font-size: 1.4rem; margin-bottom: 0.5rem; }
        .link-set-type-card.selected .link-set-type-icon { color: var(--dayalogs-admin-brand); }
        .link-set-type-name { font-size: 0.875rem; font-weight: 600; margin-bottom: 0.2rem; }
        .link-set-type-desc { color: var(--dayalogs-admin-muted); font-size: 0.78rem; line-height: 1.4; }
        .link-set-source-toggle {
            background: var(--dayalogs-admin-bg-soft);
            border-radius: 999px;
            display: inline-flex;
            gap: 0.25rem;
            padding: 0.25rem;
        }
        .link-set-source-button {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: var(--dayalogs-admin-muted);
            display: inline-flex;
            font-size: 0.86rem;
            font-weight: 600;
            gap: 0.35rem;
            padding: 0.48rem 0.85rem;
        }
        .link-set-source-button.selected {
            background: var(--dayalogs-admin-surface);
            color: var(--dayalogs-admin-ink);
            box-shadow: 0 1px 4px rgba(0,0,0,0.05);
        }
        .link-set-source-toggle--strong {
            background: #f2ece5;
            border: 1px solid #e5d9cd;
            padding: 0.22rem;
        }
        .link-set-source-toggle--strong .link-set-source-button {
            justify-content: center;
            min-width: 8.4rem;
            padding-inline: 1rem;
            transition: background 0.12s ease, color 0.12s ease, box-shadow 0.12s ease;
        }
        .link-set-source-toggle--strong .link-set-source-button:not(.selected):hover {
            background: rgba(255, 253, 250, 0.78);
            color: var(--dayalogs-admin-ink);
        }
        .link-set-source-toggle--strong .link-set-source-button.selected {
            background: var(--dayalogs-admin-brand);
            color: #fff;
            box-shadow: 0 0.18rem 0.5rem rgba(110, 98, 89, 0.22);
        }

        /* link option cards */
        .link-set-behavior-opt {
            align-items: flex-start;
            background: var(--dayalogs-admin-surface);
            border: 1.5px solid var(--dayalogs-admin-line);
            border-radius: 0.6rem;
            cursor: pointer;
            display: flex;
            gap: 0.7rem;
            padding: 0.75rem 0.9rem;
            transition: border-color 0.12s;
        }
        .link-set-behavior-opt:hover { border-color: var(--dayalogs-admin-brand); }
        .link-set-behavior-opt.selected { background: #f4efe8; border-color: var(--dayalogs-admin-brand); }
        .link-set-behavior-opt > .bi { color: var(--dayalogs-admin-muted); flex-shrink: 0; font-size: 1.1rem; margin-top: 0.1rem; }
        .link-set-behavior-opt.selected > .bi { color: var(--dayalogs-admin-brand); }
        .link-set-behavior-title { font-size: 0.875rem; font-weight: 600; }
        .link-set-behavior-desc { color: var(--dayalogs-admin-muted); font-size: 0.78rem; line-height: 1.4; margin-top: 0.15rem; }
        .link-set-inline-check {
            align-items: flex-start;
            color: var(--dayalogs-admin-muted);
            cursor: pointer;
            display: flex;
            gap: 0.6rem;
        }
        .link-set-inline-check input {
            margin-top: 0.18rem;
        }
        .link-set-inline-check .link-set-behavior-title,
        .link-set-inline-check .link-set-behavior-desc {
            display: block;
        }
        .link-set-inline-check .link-set-behavior-title {
            color: var(--dayalogs-admin-ink);
        }
        .link-set-inline-note {
            align-items: center;
            background: #f7f2eb;
            border-radius: 0.65rem;
            color: var(--dayalogs-admin-muted);
            display: flex;
            font-size: 0.82rem;
            gap: 0.5rem;
            padding: 0.65rem 0.8rem;
        }

        .survey-admin-campaign-split {
            display: grid;
            gap: 1.25rem;
            grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
            margin-top: 1.4rem;
        }
        .survey-admin-campaign-list-card,
        .survey-admin-campaign-detail-card,
        .survey-admin-campaign-detail {
            background: #f8f4ef;
            border: 0;
            border-radius: 1.2rem;
            min-width: 0;
            padding: 1.1rem;
        }
        .survey-admin-campaign-mobile-stack {
            display: none;
        }
        .survey-admin-campaign-list {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }
        .survey-admin-campaign-row {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0.65rem;
            color: inherit;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: minmax(0, 1fr) auto;
            padding: 0.75rem;
            text-align: left;
            width: 100%;
        }
        .survey-admin-campaign-row:hover,
        .survey-admin-campaign-row.active {
            background: #f4efe8;
        }
        .survey-admin-campaign-row-main strong,
        .survey-admin-campaign-row-main small {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .survey-admin-campaign-row-main strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.92rem;
        }
        .survey-admin-campaign-row-main small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
            margin-top: 0.12rem;
        }
        .survey-admin-campaign-row-meta {
            align-items: flex-end;
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
        }
        .survey-admin-campaign-detail {
            border: 0;
            padding: 0;
        }
        .survey-admin-campaign-head {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
        }
        .survey-admin-campaign-title {
            align-items: center;
            color: var(--dayalogs-admin-text-strong);
            display: flex;
            flex-wrap: wrap;
            font-size: 0.98rem;
            font-weight: 700;
            gap: 0.4rem;
        }
        .survey-admin-campaign-stats {
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(2, minmax(0, 0.65fr)) repeat(3, minmax(0, 1fr));
            margin: 1rem 0;
        }
        .survey-admin-campaign-stats > div,
        .survey-admin-campaign-subject {
            background: transparent;
            border-radius: 0;
            padding: 0;
        }
        .survey-admin-campaign-recipient {
            background: #f7f2eb;
            border-radius: 0.65rem;
        }
        .survey-admin-campaign-stat > span,
        .survey-admin-campaign-metric-heading,
        .survey-admin-campaign-subject span {
            color: var(--dayalogs-admin-muted);
            display: block;
            font-size: 0.68rem;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }
        .survey-admin-campaign-stat strong,
        .survey-admin-campaign-subject strong {
            color: var(--dayalogs-admin-text-strong);
            display: block;
            font-size: 1.05rem;
            margin-top: 0.15rem;
        }
        .survey-admin-campaign-metric {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }
        .survey-admin-campaign-metric-row {
            align-items: center;
            display: grid;
            gap: 0.65rem;
            grid-template-columns: 100px minmax(2.7rem, max-content);
            justify-content: start;
        }
        .survey-admin-campaign-metric-bar {
            background: rgba(194, 126, 114, 0.14);
            border-radius: 999px;
            display: block;
            height: 0.5rem;
            max-width: 100px;
            overflow: hidden;
            width: 100px;
        }
        .survey-admin-campaign-metric-bar > span {
            background: #c27e72;
            border-radius: inherit;
            display: block;
            height: 100%;
            min-width: 0;
        }
        .survey-admin-campaign-metric-bar.is-sent {
            background: rgba(151, 176, 150, 0.16);
        }
        .survey-admin-campaign-metric-bar.is-sent > span {
            background: #97b096;
        }
        .survey-admin-campaign-metric-bar.is-delivered {
            background: rgba(111, 150, 113, 0.16);
        }
        .survey-admin-campaign-metric-bar.is-delivered > span {
            background: #6f9671;
        }
        .survey-admin-campaign-metric-bar.is-failed {
            background: rgba(194, 126, 114, 0.14);
        }
        .survey-admin-campaign-metric-bar.is-failed > span {
            background: #c27e72;
        }
        .survey-admin-campaign-metric-count {
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-direction: column;
            font-size: 0.82rem;
            font-variant-numeric: tabular-nums;
            line-height: 1.15;
            min-width: 2.8rem;
            text-align: left;
        }
        .survey-admin-campaign-metric-count strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.88rem;
            font-weight: 700;
        }
        .survey-admin-campaign-metric-bar.is-sent + .survey-admin-campaign-metric-count strong {
            color: #6f9671;
        }
        .survey-admin-campaign-metric-bar.is-delivered + .survey-admin-campaign-metric-count strong {
            color: #5f8762;
        }
        .survey-admin-campaign-metric-bar.is-failed + .survey-admin-campaign-metric-count strong {
            color: #bb6d62;
        }
        .survey-admin-campaign-metric-count small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
        }
        .survey-admin-campaign-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin: 1rem 0;
        }
        .survey-admin-campaign-head-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            justify-content: flex-end;
        }
        .survey-admin-campaign-head-actions form,
        .survey-admin-campaign-actions form,
        .survey-admin-campaign-archive-actions form,
        .survey-admin-campaign-actions-menu form {
            margin: 0;
        }
        .survey-admin-campaign-actions-menu .dropdown-menu {
            min-width: 13rem;
            z-index: 1085;
        }
        .survey-admin-campaign-actions-menu .dropdown-item {
            align-items: center;
            display: flex;
            gap: 0.55rem;
        }
        .survey-admin-campaign-actions-menu .dropdown-item i {
            flex: 0 0 1rem;
            text-align: center;
        }
        .survey-admin-campaign-archive-card {
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.8rem;
            margin-top: 1rem;
            padding: 1.1rem;
        }
        .survey-admin-campaign-archive-list {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }
        .survey-admin-campaign-archive-row {
            align-items: center;
            background: #f7f2eb;
            border-radius: 0.65rem;
            display: grid;
            gap: 0.8rem;
            grid-template-columns: minmax(0, 1fr) auto auto;
            padding: 0.75rem;
        }
        .survey-admin-campaign-archive-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            justify-content: flex-end;
        }
        .survey-admin-campaign-test-form {
            align-items: center;
            display: flex;
            gap: 0.45rem;
        }
        .survey-admin-campaign-test-form .form-control {
            min-width: 13rem;
        }
        .survey-admin-campaign-wizard .modal-body {
            display: flex;
            flex-direction: column;
            min-height: min(32rem, calc(100vh - 15rem));
        }
        .survey-admin-campaign-step {
            display: grid;
            gap: 1rem;
            min-height: 0;
        }
        .survey-admin-campaign-link-set-summary {
            background: #f7f2eb;
            border-radius: 0.75rem;
            display: grid;
            gap: 0.18rem;
            padding: 0.85rem 1rem;
        }
        .survey-admin-campaign-link-set-summary strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 1rem;
        }
        .survey-admin-campaign-link-set-summary small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
            line-height: 1.35;
        }
        .survey-admin-campaign-lock-note {
            min-height: 100%;
        }
        .survey-admin-campaign-recipient-modal {
            display: grid;
            gap: 0.85rem;
        }
        .survey-admin-campaign-recipient-toolbar,
        .survey-admin-campaign-recipient-pagination {
            align-items: center;
            display: flex;
            gap: 0.65rem;
            justify-content: space-between;
        }
        .survey-admin-campaign-recipient-pagination {
            justify-content: flex-end;
        }
        .survey-admin-campaign-recipient-list {
            display: grid;
            gap: 0.45rem;
            margin-top: 1rem;
        }
        .survey-admin-campaign-recipient {
            align-items: center;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: minmax(0, 1fr) auto;
            padding: 0.58rem 0.7rem;
        }
        .survey-admin-campaign-recipient strong,
        .survey-admin-campaign-recipient small {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .survey-admin-campaign-recipient small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
        }
        .survey-admin-campaign-form {
            display: grid;
            gap: 1rem;
        }
        .survey-admin-campaign-form label {
            display: flex;
            flex-direction: column;
            gap: 0.35rem;
        }
        .survey-admin-campaign-form input,
        .survey-admin-campaign-form select,
        .survey-admin-campaign-form textarea {
            letter-spacing: 0;
            text-transform: none;
        }
        .survey-admin-campaign-branding-check {
            align-items: center;
            flex-direction: row !important;
            justify-content: flex-start;
        }
        .survey-admin-campaign-branding-check input {
            width: auto;
        }
        .survey-admin-campaign-sender-grid {
            display: grid;
            gap: 1rem;
            grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
        }
        .survey-admin-campaign-from-control {
            align-items: center;
            display: grid;
            gap: 0.45rem;
            grid-template-columns: minmax(0, 1fr) auto minmax(9rem, 0.8fr);
        }
        .survey-admin-campaign-from-control > span {
            color: var(--dayalogs-admin-muted);
            font-size: 0.9rem;
            font-weight: 800;
        }
        .survey-admin-campaign-editor {
            display: grid;
            gap: 0.45rem;
            min-width: 0;
            position: relative;
        }
        .survey-admin-campaign-editor-head {
            align-items: center;
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-wrap: wrap;
            font-size: 0.78rem;
            font-weight: 700;
            gap: 0.6rem;
            justify-content: space-between;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }
        .survey-admin-campaign-editor-tabs {
            background: #eee7df;
            border-radius: 999px;
            display: inline-flex;
            gap: 0.15rem;
            padding: 0.16rem;
        }
        .survey-admin-campaign-editor-tabs button,
        .survey-admin-campaign-editor-toolbar button {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 999px;
            color: #6e6259;
            display: inline-flex;
            font-size: 0.76rem;
            font-weight: 700;
            justify-content: center;
            line-height: 1;
        }
        .survey-admin-campaign-editor-tabs button {
            min-height: 1.8rem;
            padding: 0.35rem 0.72rem;
        }
        .survey-admin-campaign-editor-tabs button.active {
            background: #fffdfa;
            box-shadow: 0 4px 12px rgba(52, 47, 43, 0.08);
            color: #342f2b;
        }
        .survey-admin-campaign-editor-toolbar {
            align-items: center;
            background: #f3eee7;
            border-radius: 0.75rem;
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
            padding: 0.45rem;
        }
        .survey-admin-campaign-editor-toolbar.ql-toolbar.ql-snow {
            border: 0;
            font-family: var(--font-sans);
        }
        .survey-admin-campaign-editor-toolbar .ql-formats {
            align-items: center;
            display: inline-flex;
            gap: 0.18rem;
            margin-right: 0.1rem;
        }
        .survey-admin-campaign-editor-toolbar button {
            height: 2rem;
            padding: 0;
            width: 2rem;
        }
        .survey-admin-campaign-editor-toolbar button:hover,
        .survey-admin-campaign-editor-toolbar button.ql-active {
            background: #fffdfa;
            color: #342f2b;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker {
            color: #342f2b;
            font-size: 0.78rem;
            font-weight: 700;
            height: 2rem;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker-label,
        .survey-admin-campaign-editor-toolbar select {
            background: #fffdfa;
            border: 0;
            border-radius: 999px;
            color: #342f2b;
            font-size: 0.78rem;
            font-weight: 700;
            line-height: 2rem;
            min-height: 2rem;
            padding: 0 1.75rem 0 0.75rem;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker-label:hover,
        .survey-admin-campaign-editor-toolbar .ql-picker-label.ql-active {
            color: #342f2b;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker-options {
            background: #fffdfa;
            border: 0;
            border-radius: 0.7rem;
            box-shadow: 0 16px 34px rgba(52, 47, 43, 0.16);
            padding: 0.35rem;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker-item {
            border-radius: 0.45rem;
            color: #342f2b;
            padding: 0.35rem 0.55rem;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker-item:hover {
            background: #f3eee7;
        }
        .survey-admin-campaign-editor-toolbar .ql-stroke {
            stroke: currentColor;
        }
        .survey-admin-campaign-editor-toolbar .ql-fill {
            fill: currentColor;
        }
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-label[data-value="arial"]::before,
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-item[data-value="arial"]::before {
            content: "Arial";
        }
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-label[data-value="georgia"]::before,
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-item[data-value="georgia"]::before {
            content: "Georgia";
        }
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-label[data-value="times-new-roman"]::before,
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-item[data-value="times-new-roman"]::before {
            content: "Times";
        }
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-label[data-value="verdana"]::before,
        .survey-admin-campaign-editor-toolbar .ql-picker.ql-font .ql-picker-item[data-value="verdana"]::before {
            content: "Verdana";
        }
        .survey-admin-campaign-editor-color {
            align-items: center !important;
            background: #fffdfa;
            border-radius: 999px;
            color: #6e6259 !important;
            display: inline-flex !important;
            flex-direction: row !important;
            font-size: 0.68rem !important;
            gap: 0.35rem !important;
            letter-spacing: 0.04em !important;
            padding: 0.22rem 0.38rem 0.22rem 0.65rem;
            text-transform: uppercase !important;
        }
        .survey-admin-campaign-editor-color input {
            border: 0;
            border-radius: 999px;
            height: 1.45rem;
            overflow: hidden;
            padding: 0;
            width: 1.45rem;
        }
        .survey-admin-campaign-editor-visual {
            background: #fffdfa;
            border: 1px solid var(--dayalogs-admin-line);
            border-radius: 0.8rem;
            color: #342f2b;
            font-size: 0.95rem;
            line-height: 1.55;
            max-height: 24rem;
            min-height: var(--campaign-editor-min-height, 10rem);
            overflow: hidden;
            padding: 0;
            text-transform: none;
        }
        .survey-admin-campaign-editor-visual.ql-container.ql-snow {
            border-color: var(--dayalogs-admin-line);
            font-family: var(--font-sans);
        }
        .survey-admin-campaign-editor-visual .ql-editor {
            font-size: 0.95rem;
            line-height: 1.55;
            max-height: 24rem;
            min-height: var(--campaign-editor-min-height, 10rem);
            overflow: auto;
            padding: 0.9rem 1rem;
        }
        .survey-admin-campaign-editor-visual .ql-editor img {
            cursor: pointer;
        }
        .survey-admin-campaign-editor-visual .ql-editor img.survey-admin-campaign-image-selected {
            outline: 2px dotted #b59f86;
            outline-offset: 4px;
        }
        .survey-admin-campaign-editor-visual:focus-within {
            border-color: #b59f86;
            box-shadow: 0 0 0 0.16rem rgba(181, 159, 134, 0.18);
            outline: 0;
        }
        .survey-admin-campaign-editor-visual .ql-editor h1,
        .survey-admin-campaign-editor-visual .ql-editor h2,
        .survey-admin-campaign-editor-visual .ql-editor h3,
        .survey-admin-campaign-editor-visual .ql-editor h4,
        .survey-admin-campaign-editor-visual .ql-editor h5,
        .survey-admin-campaign-editor-visual .ql-editor h6,
        .survey-admin-campaign-editor-visual .ql-editor p,
        .survey-admin-campaign-editor-visual .ql-editor ul,
        .survey-admin-campaign-editor-visual .ql-editor ol {
            margin-bottom: 0.75rem;
            margin-top: 0;
        }
        .survey-admin-campaign-editor.is-invalid .survey-admin-campaign-editor-visual {
            border-color: #b94f4f;
            box-shadow: 0 0 0 0.16rem rgba(185, 79, 79, 0.14);
        }
        .survey-admin-campaign-editor.is-uploading .survey-admin-campaign-editor-visual {
            opacity: 0.72;
        }
        .survey-admin-campaign-image-dialog {
            align-items: center;
            background: rgba(52, 47, 43, 0.18);
            border-radius: 0.9rem;
            display: flex;
            inset: 2.8rem 0 0;
            justify-content: center;
            padding: 1rem;
            position: absolute;
            z-index: 8;
        }
        .survey-admin-campaign-image-dialog-panel {
            background: #fffdfa;
            border-radius: 0.9rem;
            box-shadow: 0 18px 48px rgba(52, 47, 43, 0.2);
            display: grid;
            gap: 0.75rem;
            max-width: 23rem;
            padding: 1.1rem;
            position: relative;
            width: min(100%, 23rem);
        }
        .survey-admin-campaign-image-dialog-close {
            position: absolute;
            right: 0.65rem;
            top: 0.65rem;
        }
        .survey-admin-campaign-image-picker {
            align-items: center;
            background: #f3eee7;
            border: 1px dashed #bcae9f;
            border-radius: 0.85rem;
            color: #342f2b;
            cursor: pointer;
            display: flex;
            gap: 0.7rem;
            justify-content: center;
            min-height: 5.5rem;
            padding: 1rem;
            text-align: center;
        }
        .survey-admin-campaign-image-picker:hover {
            background: #eee7df;
        }
        .survey-admin-campaign-image-picker i {
            color: #6e6259;
            font-size: 1.25rem;
        }
        .survey-admin-campaign-image-picker span {
            font-weight: 800;
        }
        .survey-admin-campaign-image-tools {
            align-items: center;
            background: #342f2b;
            border-radius: 999px;
            box-shadow: 0 14px 34px rgba(52, 47, 43, 0.2);
            color: #fffdfa;
            display: inline-flex;
            gap: 0.25rem;
            left: 1rem;
            max-width: min(100%, 31rem);
            padding: 0.25rem;
            position: absolute;
            top: 8rem;
            z-index: 10;
        }
        .survey-admin-campaign-image-tools.d-none {
            display: none;
        }
        .survey-admin-campaign-image-tools-group {
            align-items: center;
            display: inline-flex;
            gap: 0.15rem;
        }
        .survey-admin-campaign-image-tools button {
            align-items: center;
            background: rgba(255, 253, 250, 0.12);
            border: 0;
            border-radius: 999px;
            color: #fffdfa;
            display: inline-flex;
            font-size: 0.72rem;
            font-weight: 800;
            height: 1.85rem;
            justify-content: center;
            min-width: 1.85rem;
            padding: 0 0.58rem;
        }
        .survey-admin-campaign-image-tools button:hover,
        .survey-admin-campaign-image-tools button.is-active {
            background: #fffdfa;
            color: #342f2b;
        }
        .survey-admin-campaign-image-tools-delete:hover {
            background: #f1d7d2 !important;
            color: #7d2f2f !important;
        }

        .survey-admin-campaign-preview-actions {
            display: flex;
            justify-content: flex-end;
            margin-top: 0.75rem;
        }

        .survey-admin-campaign-preview-state {
            background: #f3eee7;
            border-radius: 999px;
            color: #6e6259 !important;
            display: inline-flex;
            font-weight: 750;
            margin-bottom: 0.75rem !important;
            max-width: 100%;
            padding: 0.35rem 0.75rem;
        }

        .survey-admin-campaign-preview-frame {
            background: #ffffff;
            border: 0;
            border-radius: 0.9rem;
            box-shadow: inset 0 0 0 1px rgba(110, 98, 89, 0.12);
            display: block;
            min-height: 640px;
            width: 100%;
        }

        .survey-admin-campaign-preview-modal .modal-body {
            background: #f7f4ef;
        }
        @media (max-width: 1100px) {
            .survey-admin-campaign-split {
                grid-template-columns: 1fr;
            }
        }
        @media (max-width: 680px) {
            .survey-admin-campaign-split {
                display: none;
            }
            .survey-admin-campaign-mobile-stack {
                display: grid;
                gap: 0.75rem;
                margin-top: 1rem;
            }
            .survey-admin-campaign-mobile-card {
                padding: 0.95rem;
            }
            .survey-admin-campaign-row,
            .survey-admin-campaign-recipient {
                grid-template-columns: 1fr;
            }
            .survey-admin-campaign-row-meta {
                align-items: flex-start;
                flex-direction: row;
                flex-wrap: wrap;
            }
            .survey-admin-campaign-head {
                flex-direction: column;
                gap: 0.85rem;
            }
            .survey-admin-campaign-title {
                align-items: flex-start;
                justify-content: space-between;
                width: 100%;
            }
            .survey-admin-campaign-head-actions {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                width: 100%;
            }
            .survey-admin-campaign-head-actions > .btn,
            .survey-admin-campaign-head-actions > .dropdown,
            .survey-admin-campaign-head-actions .dropdown-toggle {
                width: 100%;
            }
            .survey-admin-campaign-actions-menu .dropdown-menu {
                min-width: 100%;
            }
            .survey-admin-campaign-archive-row {
                grid-template-columns: minmax(0, 1fr);
            }
            .survey-admin-campaign-archive-actions {
                justify-content: flex-start;
            }
            .survey-admin-campaign-stats {
                gap: 0.5rem;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                margin: 0.75rem 0;
            }
            .survey-admin-campaign-stats > div {
                padding: 0.68rem;
            }
            .survey-admin-campaign-subject {
                padding: 0.75rem;
            }
            .survey-admin-campaign-test-form {
                align-items: stretch;
                flex-direction: column;
                width: 100%;
            }
            .survey-admin-campaign-test-form .form-control {
                min-width: 0;
                width: 100%;
            }
            .survey-admin-campaign-sender-grid,
            .survey-admin-campaign-from-control {
                grid-template-columns: 1fr;
            }
            .survey-admin-campaign-from-control > span {
                display: none;
            }
        }

        .survey-admin-review-split {
            display: grid;
            gap: 1.25rem;
            grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
            margin-top: 1.4rem;
        }
        .survey-admin-review-mobile-stack {
            display: none;
        }
        .survey-admin-review-table-card,
        .survey-admin-review-detail-card,
        .survey-admin-review-round,
        .survey-admin-review-mobile-card,
        .survey-admin-empty-panel {
            background: #f8f4ef;
            border: 0;
            border-radius: 1.2rem;
            padding: 1.1rem;
        }
        .survey-admin-review-table-card,
        .survey-admin-review-detail-card {
            min-width: 0;
        }
        .survey-admin-review-list {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }
        .survey-admin-review-row {
            align-items: center;
            background: transparent;
            border: 0;
            border-radius: 0.65rem;
            color: inherit;
            display: block;
            padding: 0.75rem;
            text-align: left;
            width: 100%;
        }
        .survey-admin-review-row:hover,
        .survey-admin-review-row.active {
            background: #e9ddce;
        }
        .survey-admin-review-row-main strong {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .survey-admin-review-row-main strong {
            color: var(--dayalogs-admin-text-strong);
            font-size: 0.92rem;
        }
        .survey-admin-review-form:not(.survey-admin-modal) {
            align-self: stretch;
            display: flex;
            flex-direction: column;
            gap: 1rem;
            width: 100%;
        }
        .survey-admin-form-grid {
            display: grid;
            gap: 0.75rem;
        }
        .survey-admin-form-grid.two-cols {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        .survey-admin-review-form label,
        .survey-admin-review-wide {
            color: var(--dayalogs-admin-muted);
            display: flex;
            flex-direction: column;
            font-size: 0.78rem;
            font-weight: 700;
            gap: 0.35rem;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }
        .survey-admin-review-form input,
        .survey-admin-review-form select,
        .survey-admin-review-form textarea {
            letter-spacing: 0;
            text-transform: none;
        }
        .survey-admin-review-wide {
            margin-top: 0.75rem;
        }
        .survey-admin-review-deadline-field {
            max-width: calc(50% - 0.375rem);
            width: 100%;
        }
        .survey-admin-review-form-actions {
            display: flex;
            justify-content: flex-end;
        }
        .survey-admin-review-footer-actions {
            align-items: center;
            display: flex;
            gap: 0.5rem;
        }
        .survey-admin-review-invitee-builder {
            display: grid;
            gap: 1rem;
        }
        .survey-admin-review-invitee-fields {
            align-items: end;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.1fr) minmax(9rem, 0.7fr) auto;
        }
        .survey-admin-review-invitee-list {
            display: grid;
            gap: 0.55rem;
        }
        .survey-admin-review-invitee-row {
            align-items: center;
            background: #fffdfa;
            border-radius: 0.95rem;
            display: grid;
            gap: 0.65rem;
            grid-template-columns: 2rem minmax(0, 1fr) auto;
            padding: 0.6rem 0.7rem;
        }
        .survey-admin-review-invitee-row strong,
        .survey-admin-review-invitee-row small {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .survey-admin-review-invitee-row small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
        }
        .survey-admin-review-round {
            background: transparent;
            border: 0;
            padding: 0;
        }
        .survey-admin-review-round-head {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
        }
        .survey-admin-review-round-title {
            align-items: center;
            color: var(--dayalogs-admin-text-strong);
            display: flex;
            flex-wrap: wrap;
            font-size: 0.98rem;
            font-weight: 700;
            gap: 0.4rem;
        }
        .survey-admin-review-round-actions {
            align-items: center;
            display: flex;
            flex-shrink: 0;
            gap: 0.4rem;
        }
        .survey-admin-review-mobile-head {
            display: grid;
            gap: 0.25rem;
        }
        .survey-admin-review-mobile-actions {
            display: grid;
            gap: 0.5rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            margin-top: 0.85rem;
        }
        .survey-admin-review-mobile-actions .btn,
        .survey-admin-review-mobile-actions form,
        .survey-admin-review-mobile-actions form .btn {
            width: 100%;
        }
        .survey-admin-review-mobile-description {
            color: var(--dayalogs-admin-muted);
            font-size: 0.82rem;
            margin: 0.75rem 0 0;
        }
        .survey-admin-review-detail-grid {
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            margin: 1rem 0;
        }
        .survey-admin-review-detail-grid > div {
            background: #fffdfa;
            border-radius: 0.95rem;
            padding: 0.75rem;
        }
        .survey-admin-review-detail-grid strong {
            display: block;
            font-size: 0.9rem;
            margin-top: 0.25rem;
        }
        .survey-admin-review-closing-card {
            align-content: start;
            display: grid;
            gap: 0.55rem;
        }
        .survey-admin-review-closing-card form {
            margin: 0;
        }
        .survey-admin-review-closing-card .btn {
            justify-self: start;
            min-height: 2.25rem;
            padding-inline: 0.9rem;
        }
        .survey-admin-review-participants {
            display: grid;
            gap: 0.5rem;
        }
        .survey-admin-review-participant {
            align-items: center;
            background: #fffdfa;
            border-radius: 0.95rem;
            display: grid;
            gap: 0.6rem;
            grid-template-columns: 2rem minmax(0, 1fr) auto auto;
            padding: 0.55rem 0.65rem;
        }
        .survey-admin-review-avatar {
            align-items: center;
            background: var(--dayalogs-admin-brand);
            border-radius: 50%;
            color: #fff;
            display: inline-flex;
            font-size: 0.78rem;
            font-weight: 700;
            height: 2rem;
            justify-content: center;
            width: 2rem;
        }
        .survey-admin-review-participant strong,
        .survey-admin-review-participant small {
            display: block;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .survey-admin-review-participant small {
            color: var(--dayalogs-admin-muted);
            font-size: 0.76rem;
        }
        .survey-admin-empty-panel {
            color: var(--dayalogs-admin-muted);
        }
        @media (max-width: 1100px) {
            .survey-admin-review-split {
                grid-template-columns: 1fr;
            }
        }
        @media (max-width: 680px) {
            .survey-admin-form-grid.two-cols {
                grid-template-columns: 1fr;
            }
            .survey-admin-review-deadline-field {
                max-width: none;
            }
            .survey-admin-review-invitee-fields {
                grid-template-columns: 1fr;
            }
            .survey-admin-review-split {
                display: none;
            }
            .survey-admin-review-mobile-stack {
                display: grid;
                gap: 0.75rem;
                margin-top: 1rem;
            }
            .survey-admin-review-round-head {
                flex-direction: column;
            }
            .survey-admin-review-detail-grid {
                grid-template-columns: 1fr;
            }
            .survey-admin-review-mobile-card .survey-admin-review-detail-grid {
                gap: 0.55rem;
                margin: 0.75rem 0;
            }
            .survey-admin-review-mobile-card .survey-admin-review-participant {
                grid-template-columns: 2rem minmax(0, 1fr) auto;
            }
        }

        /* preview box */
        .link-set-preview-box {
            background: #f4efe8;
            border-radius: 0.65rem;
            display: grid;
            gap: 0.75rem;
            grid-template-columns: 1fr 1fr 1fr;
            padding: 1rem;
        }

        /* spinner */
        @keyframes spin { to { transform: rotate(360deg); } }
        .spin { animation: spin 0.8s linear infinite; display: inline-block; }

/* ==========================================================================
   Survey style manager
   ========================================================================== */

.survey-admin-section-styles .survey-admin-main-scroll {
    overflow: hidden;
    padding-right: 0;
}

.survey-admin-section-styles .survey-admin-main-scroll > .ps__rail-x,
.survey-admin-section-styles .survey-admin-main-scroll > .ps__rail-y {
    display: none !important;
}

.survey-admin-section-styles .survey-admin-content-stack {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
    min-height: 0;
    overflow: hidden;
    padding-bottom: 0;
    padding-right: 0;
}

.survey-admin-section-styles .survey-admin-content-stack > * + * {
    margin-top: 0;
}

.survey-style-workspace {
    display: grid;
    flex: 1 1 auto;
    gap: 1rem;
    grid-template-columns: minmax(360px, 0.82fr) minmax(520px, 1.18fr);
    height: auto;
    min-height: 0;
    overflow: hidden;
}

.survey-style-page-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    justify-content: flex-end;
}

.survey-style-left-panel,
.survey-style-preview-panel {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.survey-style-panel-head {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.survey-style-panel-head h2 {
    color: var(--dayalogs-admin-heading);
    font-size: 1rem;
    font-weight: 760;
    margin: 0.1rem 0 0;
}

.survey-style-count {
    align-items: center;
    background: var(--dayalogs-admin-surface-soft);
    border-radius: 999px;
    color: var(--dayalogs-admin-muted);
    display: inline-flex;
    font-size: 0.8rem;
    font-weight: 700;
    justify-content: center;
    min-width: 2rem;
    padding: 0.25rem 0.55rem;
}

.survey-style-list {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.survey-style-row {
    align-items: center;
    border: 1px solid var(--dayalogs-admin-border);
    border-radius: 0.75rem;
    color: var(--dayalogs-admin-text);
    display: flex;
    gap: 0.5rem;
    justify-content: space-between;
    padding: 0.45rem;
    position: relative;
}

.survey-style-row:hover {
    background: var(--dayalogs-admin-surface-soft);
    border-color: var(--dayalogs-admin-accent);
    color: var(--dayalogs-admin-heading);
}

.survey-style-row.is-active {
    background: #ece3d7;
    border-color: #8c7564;
    box-shadow: 0 0 0 1px rgba(140, 117, 100, 0.18);
    color: var(--dayalogs-admin-heading);
}

.survey-style-row.is-active::before {
    background: #7f6a5a;
    border-radius: 999px;
    bottom: 0.55rem;
    content: "";
    left: 0.45rem;
    position: absolute;
    top: 0.55rem;
    width: 0.18rem;
}

.survey-style-row.is-active .survey-style-row-main {
    padding-left: 0.7rem;
}

.survey-style-row.is-active small,
.survey-style-row.is-active em {
    color: #6d5b4e;
}

.survey-style-row-main {
    align-items: center;
    color: inherit;
    display: flex;
    flex: 1 1 auto;
    gap: 0.75rem;
    justify-content: space-between;
    min-width: 0;
    padding: 0.3rem 0.25rem 0.3rem 0.3rem;
    text-decoration: none;
}

.survey-style-row strong,
.survey-style-row small {
    display: block;
}

.survey-style-row strong {
    font-size: 0.92rem;
}

.survey-style-row small {
    color: var(--dayalogs-admin-muted);
    font-size: 0.78rem;
    line-height: 1.35;
    margin-top: 0.18rem;
}

.survey-style-row em {
    color: var(--dayalogs-admin-muted);
    flex: 0 0 auto;
    font-size: 0.72rem;
    font-style: normal;
    text-transform: uppercase;
}

.survey-style-row-action {
    flex: 0 0 auto;
}

.survey-style-empty {
    color: var(--dayalogs-admin-muted);
    font-size: 0.88rem;
    line-height: 1.45;
}

.survey-style-meta-grid label,
.survey-style-css-editor {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.survey-style-meta-grid span,
.survey-style-css-editor span {
    color: var(--dayalogs-admin-muted);
    font-size: 0.76rem;
    font-weight: 760;
    text-transform: uppercase;
}

.survey-style-editor-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    justify-content: flex-end;
}

.survey-style-meta-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: 1fr 1fr minmax(120px, 0.5fr);
    margin-bottom: 1rem;
}

.survey-style-css-editor textarea {
    font-family: var(--dayalogs-font-mono);
    font-size: 0.78rem;
    min-height: 360px;
    overflow: hidden;
    resize: none;
}

.survey-email-template-editor textarea {
    height: clamp(14rem, 34vh, 24rem);
    min-height: 14rem;
    overflow: auto;
    scrollbar-gutter: stable;
    white-space: pre;
}

.survey-email-template-workspace {
    grid-template-columns: minmax(430px, 0.95fr) minmax(540px, 1.05fr);
}

.survey-email-template-workspace.is-email-editing {
    grid-template-columns: minmax(620px, 1.32fr) minmax(360px, 0.68fr);
}

.survey-email-template-workspace.is-email-editing .survey-style-preview-panel {
    order: 1;
}

.survey-email-template-workspace.is-email-editing .survey-style-left-panel {
    order: 2;
}

.survey-email-template-workspace .survey-style-editor-card {
    display: flex;
    flex-direction: column;
}

.survey-email-template-head-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
}

.survey-email-template-form {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
}

.survey-email-template-form .survey-style-meta-grid,
.survey-email-template-form .survey-email-template-slots,
.survey-email-template-form .link-set-inline-note,
.survey-email-template-form .survey-style-editor-actions {
    flex: 0 0 auto;
}

.survey-email-template-form .survey-email-template-editor {
    flex: 1 1 auto;
    min-height: 0;
}

.survey-email-block-builder {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.75rem;
    min-height: 0;
}

.survey-email-builder-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.38rem;
}

.survey-email-builder-toolbar button {
    align-items: center;
    background: #f3eee7;
    border: 0;
    border-radius: 999px;
    color: #6e6259;
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 760;
    gap: 0.32rem;
    min-height: 2rem;
    padding: 0.35rem 0.65rem;
}

.survey-email-builder-toolbar button:hover:not(:disabled) {
    background: #e6d9ca;
    color: #342f2b;
}

.survey-email-builder-toolbar button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.survey-email-builder-grid {
    display: grid;
    flex: 1 1 auto;
    gap: 0.75rem;
    grid-template-columns: minmax(0, 1fr) minmax(13rem, 0.82fr);
    min-height: 0;
}

.survey-email-builder-tree,
.survey-email-builder-inspector {
    background: #fffdfa;
    border: 1px solid rgba(110, 98, 89, 0.14);
    border-radius: 0.85rem;
    min-height: 0;
    overflow: auto;
    padding: 0.75rem;
}

.survey-email-builder-inspector {
    flex: 1 1 auto;
    padding: 1rem;
}

.survey-email-builder-panel-head {
    align-items: flex-start;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    margin-bottom: 0.9rem;
}

.survey-email-builder-panel-head p {
    color: var(--dayalogs-admin-muted);
    font-size: 0.82rem;
    line-height: 1.35;
    margin: 0.15rem 0 0;
}

.survey-email-builder-close {
    flex: 0 0 auto;
}

.survey-email-builder-section-title {
    color: var(--dayalogs-admin-muted);
    font-size: 0.72rem;
    font-weight: 820;
    letter-spacing: 0.08em;
    margin-bottom: 0.6rem;
    text-transform: uppercase;
}

.survey-email-builder-node {
    display: grid;
    gap: 0.35rem;
}

.survey-email-builder-node + .survey-email-builder-node {
    margin-top: 0.35rem;
}

.survey-email-builder-node-button {
    align-items: center;
    background: #f4eee7;
    border: 0;
    border-radius: 0.65rem;
    color: #4b413a;
    display: flex;
    font-size: 0.82rem;
    font-weight: 760;
    gap: 0.45rem;
    justify-content: space-between;
    min-height: 2.15rem;
    padding: 0.48rem 0.58rem;
    text-align: left;
    width: 100%;
}

.survey-email-builder-node-button.is-active {
    background: #d7c5b5;
    color: #342f2b;
}

.survey-email-builder-node-button small {
    color: inherit;
    font-size: 0.7rem;
    font-weight: 700;
    opacity: 0.68;
    text-transform: uppercase;
}

.survey-email-builder-node-children {
    border-left: 1px solid rgba(110, 98, 89, 0.18);
    margin-left: 0.62rem;
    padding-left: 0.62rem;
}

.survey-email-builder-cell-label {
    color: #8b7a6d;
    font-size: 0.68rem;
    font-weight: 820;
    letter-spacing: 0.05em;
    margin: 0.45rem 0 0.25rem;
    text-transform: uppercase;
}

.survey-email-builder-inspector-form {
    display: grid;
    gap: 0.62rem;
}

.survey-email-builder-palette {
    display: grid;
    gap: 0.62rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.survey-email-builder-palette-card {
    align-items: flex-start;
    background: #f4eee7;
    border: 0;
    border-radius: 0.82rem;
    color: #4b413a;
    cursor: grab;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: 1.8rem minmax(0, 1fr);
    min-height: 3.25rem;
    padding: 0.72rem;
    text-align: left;
}

.survey-email-builder-palette-card:hover:not(:disabled) {
    background: #eadfd3;
}

.survey-email-builder-palette-card:disabled {
    cursor: not-allowed;
    opacity: 0.42;
}

.survey-email-builder-palette-card i {
    align-items: center;
    background: #fffdfa;
    border-radius: 999px;
    color: #6e6259;
    display: inline-flex;
    height: 1.8rem;
    justify-content: center;
    width: 1.8rem;
}

.survey-email-builder-palette-card strong,
.survey-email-builder-palette-card small {
    display: block;
}

.survey-email-builder-palette-card strong {
    font-size: 0.82rem;
    font-weight: 800;
}

.survey-email-builder-palette-card small {
    color: #8a7c70;
    font-size: 0.7rem;
    font-weight: 650;
    line-height: 1.25;
    margin-top: 0.14rem;
}

.survey-email-builder-inspector-form label {
    display: grid;
    gap: 0.26rem;
}

.survey-email-builder-inspector-form span {
    color: var(--dayalogs-admin-muted);
    font-size: 0.68rem;
    font-weight: 780;
    text-transform: uppercase;
}

.survey-email-builder-inspector-form input,
.survey-email-builder-inspector-form select,
.survey-email-builder-inspector-form textarea {
    background: #f9f5ef;
    border: 0;
    border-radius: 0.55rem;
    color: #342f2b;
    font-size: 0.83rem;
    min-height: 2.25rem;
    padding: 0.45rem 0.55rem;
}

.survey-email-builder-inspector-form textarea {
    min-height: 5.5rem;
    resize: vertical;
}

.survey-email-builder-add-inside {
    border-top: 1px solid rgba(110, 98, 89, 0.12);
    display: grid;
    gap: 0.62rem;
    padding-top: 0.78rem;
}

.survey-email-builder-add-inside > span {
    color: #8b7a6d;
    font-size: 0.68rem;
    font-weight: 820;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.survey-email-builder-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.survey-email-builder-actions button {
    border: 0;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 780;
    padding: 0.32rem 0.62rem;
}

.survey-email-builder-danger {
    background: #f3ded9;
    color: #8b3430;
}

.survey-email-advanced-html {
    flex: 0 0 auto;
    margin-top: 0.3rem;
}

.survey-email-advanced-html summary {
    color: #6e6259;
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 760;
}

.survey-email-template-slots {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.7rem;
}

.survey-email-template-slots span {
    background: #f3eee7;
    border-radius: 999px;
    color: #6e6259;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 650;
    gap: 0.28rem;
    line-height: 1.2;
    padding: 0.38rem 0.62rem;
}

.survey-email-template-slots code {
    color: #342f2b;
    font-size: 0.72rem;
    font-weight: 800;
}

.survey-email-template-preview-card {
    min-height: 0;
    overflow: hidden;
    padding: 0.7rem;
}

.survey-email-template-preview-frame {
    background: #ffffff;
    border: 0;
    border-radius: 0.9rem;
    box-shadow: inset 0 0 0 1px rgba(110, 98, 89, 0.12);
    display: block;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    width: 100%;
}

.survey-style-editor-actions {
    background: linear-gradient(180deg, rgba(252, 250, 247, 0), var(--dayalogs-bg) 22%);
    bottom: 0;
    justify-content: flex-start;
    margin-top: 1rem;
    padding: 1rem 0 0.15rem;
    position: sticky;
    z-index: 2;
}

.survey-style-list-panel,
.survey-style-editor-card {
    flex: 1 1 auto;
    min-height: 0;
    overscroll-behavior: contain;
    overflow: hidden;
    padding-right: 1rem;
    position: relative;
}

.survey-admin-section-styles [data-perfect-scrollbar] > .ps__rail-y {
    opacity: 0.55;
    right: 0.18rem !important;
    width: 0.45rem;
    z-index: 4;
}

.survey-admin-section-styles [data-perfect-scrollbar] > .ps__rail-y > .ps__thumb-y {
    background: rgba(110, 98, 89, 0.38);
    right: 0.08rem;
    width: 0.28rem;
}

.survey-admin-section-styles [data-perfect-scrollbar]:hover > .ps__rail-y,
.survey-admin-section-styles [data-perfect-scrollbar].ps--scrolling-y > .ps__rail-y {
    opacity: 0.9;
}

.survey-style-list-group,
.survey-style-list-section {
    display: grid;
    gap: 1rem;
}

.survey-style-list-section + .survey-style-list-section {
    border-top: 1px solid var(--dayalogs-admin-border);
    padding-top: 1rem;
}

.survey-style-list-title {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.survey-style-list-title span {
    color: var(--dayalogs-admin-muted);
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
}

.survey-style-list-title em {
    align-items: center;
    background: var(--dayalogs-admin-surface-soft);
    border-radius: 999px;
    color: var(--dayalogs-admin-muted);
    display: inline-flex;
    font-size: 0.78rem;
    font-style: normal;
    font-weight: 760;
    justify-content: center;
    min-width: 1.8rem;
    padding: 0.2rem 0.48rem;
}

.survey-style-back-link {
    align-items: center;
    color: var(--dayalogs-admin-muted);
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 720;
    gap: 0.35rem;
    margin-bottom: 0.65rem;
    text-decoration: none;
}

.survey-style-back-link:hover {
    color: var(--dayalogs-admin-accent);
}

.survey-style-import-modal form {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 4rem);
}

.survey-style-import-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
}

.survey-style-import-grid label {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.survey-style-import-grid span {
    color: var(--dayalogs-admin-muted);
    font-size: 0.76rem;
    font-weight: 760;
    text-transform: uppercase;
}

.survey-style-import-notes {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 1rem;
}

.survey-style-import-notes > div {
    background: var(--dayalogs-admin-surface-soft);
    border: 1px solid var(--dayalogs-admin-border);
    border-radius: 0.75rem;
    padding: 0.8rem 0.9rem;
}

.survey-style-import-notes strong,
.survey-style-import-notes span {
    display: block;
}

.survey-style-import-notes strong {
    color: var(--dayalogs-admin-heading);
    font-size: 0.9rem;
}

.survey-style-import-notes span {
    color: var(--dayalogs-admin-muted);
    font-size: 0.82rem;
    line-height: 1.4;
    margin-top: 0.2rem;
}

.survey-style-wizard-dialog {
    max-width: min(920px, calc(100vw - 2rem));
}

.survey-style-wizard-modal {
    border-radius: 1rem;
    overflow: hidden;
}

.survey-style-wizard {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 3.5rem);
    min-height: 0;
}

.survey-style-wizard .modal-header {
    align-items: center;
    border-bottom-color: var(--dayalogs-admin-border);
    flex: 0 0 auto;
    padding: 1.35rem 4rem 1.1rem 1.35rem;
}

.survey-style-wizard .modal-title {
    color: var(--dayalogs-admin-heading);
    font-weight: 780;
}

.survey-style-wizard .modal-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: min(24rem, calc(100vh - 14rem));
    overflow-y: auto;
    padding: 1.1rem 1.25rem 1.25rem;
}

.survey-style-wizard .survey-admin-wizard-steps {
    border-bottom: 1px solid var(--dayalogs-admin-border);
    padding: 0.65rem 1.35rem 0.8rem;
}

.survey-style-wizard-step {
    display: none;
    gap: 0.9rem;
    margin: 0 auto;
    max-width: 720px;
    width: 100%;
}

.survey-style-wizard-step.is-active {
    display: flex;
    flex-direction: column;
}

.survey-style-wizard-prompt {
    align-items: start;
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
}

.survey-style-wizard-prompt h3 {
    color: var(--dayalogs-admin-heading);
    font-size: clamp(1.25rem, 2.1vw, 1.75rem);
    font-weight: 780;
    letter-spacing: 0;
    line-height: 1.12;
    margin: 0;
}

.survey-style-wizard-prompt p {
    color: var(--dayalogs-admin-muted);
    font-size: 0.9rem;
    line-height: 1.45;
    margin: 0;
    max-width: 38rem;
}

.survey-style-wizard-answer {
    align-self: stretch;
}

.survey-style-wizard .form-control-lg {
    border-radius: 0.8rem;
    font-size: 1rem;
    min-height: 3rem;
}

.survey-style-choice-grid {
    align-self: stretch;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.survey-style-choice-grid-compact {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.survey-style-choice-grid-fonts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.survey-style-choice {
    background: #f4eee7;
    border: 0;
    border-radius: 0.75rem;
    cursor: pointer;
    display: grid;
    gap: 0.18rem;
    min-height: 4.35rem;
    padding: 0.78rem 0.95rem;
    position: relative;
    transition: background-color 0.16s ease, box-shadow 0.16s ease, color 0.16s ease;
}

.survey-style-choice::before {
    display: none;
}

.survey-style-choice input {
    opacity: 0;
    position: absolute;
}

.survey-style-choice strong {
    color: var(--dayalogs-admin-heading);
    font-size: 0.92rem;
    font-weight: 760;
}

.survey-style-choice-grid-fonts .survey-style-choice strong {
    font-family: var(--survey-style-font-preview, var(--dayalogs-font-sans));
    font-size: 1.03rem;
    font-weight: 700;
    line-height: 1.1;
}

.survey-style-font-inter { --survey-style-font-preview: "Inter", ui-sans-serif, system-ui, sans-serif; }
.survey-style-font-source-serif-4 { --survey-style-font-preview: "Source Serif 4", Georgia, "Times New Roman", serif; }
.survey-style-font-lora { --survey-style-font-preview: "Lora", Georgia, "Times New Roman", serif; }
.survey-style-font-playfair-display { --survey-style-font-preview: "Playfair Display", Georgia, "Times New Roman", serif; }
.survey-style-font-merriweather { --survey-style-font-preview: "Merriweather", Georgia, "Times New Roman", serif; }
.survey-style-font-ibm-plex-sans { --survey-style-font-preview: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif; }
.survey-style-font-ibm-plex-mono { --survey-style-font-preview: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace; }
.survey-style-font-roboto-slab { --survey-style-font-preview: "Roboto Slab", Georgia, "Times New Roman", serif; }
.survey-style-font-nunito-sans { --survey-style-font-preview: "Nunito Sans", ui-sans-serif, system-ui, sans-serif; }
.survey-style-font-space-grotesk { --survey-style-font-preview: "Space Grotesk", ui-sans-serif, system-ui, sans-serif; }

.survey-style-choice small {
    color: var(--dayalogs-admin-muted);
    font-size: 0.78rem;
    line-height: 1.32;
}

.survey-style-choice:hover,
.survey-style-choice:has(input:checked) {
    background: #eee4d9;
    box-shadow: none;
}

.survey-style-choice.is-selected {
    background: #dcccbc;
    box-shadow: inset 0 0 0 1px rgba(110, 98, 89, 0.1);
}

.survey-style-choice.is-selected strong,
.survey-style-choice:has(input:checked) strong {
    color: var(--dayalogs-admin-text-strong);
}

.survey-style-choice.is-selected small,
.survey-style-choice:has(input:checked) small {
    color: var(--dayalogs-admin-text);
}

.survey-style-choice.is-selected strong {
    color: var(--dayalogs-admin-text-strong);
}

.survey-style-choice.is-selected small {
    color: #67584c;
}

.survey-style-choice.is-selected::after {
    align-items: center;
    background: #6E6259;
    border-radius: 999px;
    color: #ffffff;
    content: "✓";
    display: inline-flex;
    font-size: 0.68rem;
    font-weight: 800;
    height: 1.1rem;
    justify-content: center;
    line-height: 1;
    padding-bottom: 0.02rem;
    position: absolute;
    right: 0.75rem;
    top: 0.75rem;
    width: 1.1rem;
}

.survey-style-color-step {
    align-items: start;
    background: #fffdfa;
    border: 1px solid #d9ccc0;
    border-radius: 0.85rem;
    display: grid;
    gap: 0.85rem;
    grid-template-columns: minmax(12rem, 0.45fr) minmax(0, 1fr);
    padding: 0.85rem;
}

.survey-style-color-custom {
    display: grid;
    gap: 0.55rem;
}

.survey-style-color-custom label {
    display: grid;
    gap: 0.32rem;
}

.survey-style-color-custom span {
    color: var(--dayalogs-admin-muted);
    font-size: 0.72rem;
    font-weight: 760;
    text-transform: uppercase;
}

.survey-style-color-step .form-control-color {
    border-radius: 0.75rem;
    height: 3.2rem;
    width: 100%;
}

.survey-style-color-swatches {
    display: grid;
    gap: 0.5rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.survey-style-color-swatches button {
    align-items: center;
    background: #ffffff;
    border: 1px solid #d9ccc0;
    border-radius: 999px;
    color: var(--dayalogs-admin-text);
    display: inline-flex;
    font-size: 0.8rem;
    font-weight: 720;
    gap: 0.42rem;
    padding: 0.42rem 0.64rem;
}

.survey-style-color-swatches button:hover {
    background: var(--dayalogs-admin-surface-soft);
    border-color: var(--dayalogs-admin-brand);
}

.survey-style-color-swatches button::before {
    background: var(--swatch);
    border: 1px solid rgba(53, 47, 43, 0.18);
    border-radius: 999px;
    content: "";
    height: 0.95rem;
    width: 0.95rem;
}

.survey-style-choice-custom {
    gap: 0.42rem;
}

.survey-style-choice-custom .form-control,
.survey-style-choice-custom .form-select {
    background: rgba(255, 255, 255, 0.82);
    border-color: rgba(110, 98, 89, 0.22);
}

.survey-style-radius-custom {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: minmax(0, 1fr) 4.2rem;
}

.survey-style-choice.is-selected .survey-style-radius-custom,
.survey-style-choice.is-selected .survey-style-choice-custom {
    color: var(--dayalogs-admin-text);
}

.survey-style-wizard-footer {
    border-top-color: var(--dayalogs-admin-border);
    gap: 0.7rem;
    justify-content: space-between;
    padding: 0.8rem 1.1rem;
}

.survey-style-wizard .survey-admin-modal-footer {
    background: #fffdfa;
    border-top: 1px solid var(--dayalogs-admin-border);
    flex: 0 0 auto;
}

.survey-style-preview-panel {
    position: static;
}

.survey-style-preview-panel > .card {
    background: rgba(255, 255, 255, 0.48);
    border: 0.5px solid rgba(53, 47, 43, 0.24);
    border-radius: 0.9rem;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    padding: 0.35rem;
    overscroll-behavior: contain;
    position: relative;
}

.survey-style-preview {
    border-radius: 0.65rem;
    flex: 0 0 auto;
    max-height: none;
    min-height: 100%;
    overflow: visible;
}

.survey-style-preview .survey-header {
    position: static;
}

.survey-style-preview .survey-header__inner {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
}

.survey-style-preview .survey-screen {
    min-height: auto;
    padding: 2rem 1.2rem;
}

.survey-style-preview .survey-screen .inner {
    max-width: 100%;
}

.survey-style-preview .survey-intro-title {
    font-size: clamp(2.4rem, 5vw, 4rem);
}

.survey-style-preview .q-group {
    margin-bottom: 1.25rem;
}

.survey-style-preview .q-options {
    column-count: 1;
}

@media (max-width: 1500px) {
    .survey-style-workspace {
        grid-template-columns: minmax(340px, 0.78fr) minmax(460px, 1.22fr);
    }
}

@media (min-width: 992px) {
    body:has(.survey-admin-section-styles) {
        overflow: hidden;
    }
}

@media (max-width: 1180px) {
    .survey-admin-section-styles .survey-admin-main-scroll,
    .survey-admin-section-styles .survey-admin-content-stack,
    .survey-style-workspace {
        height: auto;
        overflow: visible;
    }

    .survey-style-left-panel,
    .survey-style-preview-panel {
        height: min(72vh, 46rem);
        overflow: hidden;
    }

    .survey-style-workspace,
    .survey-style-meta-grid {
        grid-template-columns: 1fr;
    }

    .survey-style-list-panel,
    .survey-style-editor-card,
    .survey-style-preview-panel > .card {
        overflow: hidden;
    }

    .survey-style-preview {
        overflow: visible;
    }
}

@media (max-width: 980px) {
    .survey-style-wizard .modal-body {
        min-height: 0;
    }

    .survey-style-choice-grid,
    .survey-style-choice-grid-compact,
    .survey-style-color-step {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1180px) {
    .survey-admin-payments-page {
        grid-template-columns: 1fr;
    }

    .survey-admin-payments-sidebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .survey-admin-wallet-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .survey-admin-payments-sidebar,
    .survey-admin-wallet-column,
    .survey-admin-wallet-filters {
        grid-template-columns: 1fr;
    }

    .survey-admin-payment-card-header {
        flex-direction: column;
    }

    .survey-admin-top-up-options {
        grid-template-columns: 1fr;
    }
}
.survey-admin-contact-row.is-undeliverable > td {
    opacity: .48;
}

.survey-admin-contact-row.is-undeliverable > td:first-child,
.survey-admin-contact-row.is-undeliverable > td:nth-child(2),
.survey-admin-contact-row.is-undeliverable > td:nth-child(6) {
    opacity: 1;
}

.survey-admin-contact-deliverability,
.survey-admin-campaign-exclusions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem .75rem;
}

.survey-admin-contact-deliverability {
    margin-bottom: 1.25rem;
}

.survey-admin-contact-deliverability .survey-admin-section-label,
.survey-admin-contact-deliverability p {
    flex-basis: 100%;
}

.survey-admin-campaign-exclusions {
    margin-top: .75rem;
}
/* Embedded survey placements share the standard soft-panel admin language. */
.survey-admin-embed-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
}

.survey-admin-embed-card,
.survey-admin-embed-editor,
.survey-admin-embed-compatibility {
    min-width: 0;
    padding: 16px;
}

.survey-admin-embed-card-main,
.survey-admin-embed-editor-heading,
.survey-admin-embed-code-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.survey-admin-embed-code-row {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--dayalogs-border-color, #e5ddd5);
}

.survey-admin-embed-code-row code {
    display: block;
    flex: 1 1 0;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.survey-admin-embed-code-row .survey-admin-icon-button {
    flex: 0 0 auto;
}

.survey-admin-embed-editor {
    margin-top: 16px;
}

.survey-admin-embed-editor-heading h3 {
    margin: 2px 0 0;
    font-size: 1.1rem;
}

.survey-admin-embed-form-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.survey-admin-embed-form-grid label {
    min-width: 0;
}

.survey-admin-embed-origins {
    grid-column: span 2;
}

.survey-admin-checkbox-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: var(--dayalogs-control-height, 40px);
}

.survey-admin-embed-compatibility {
    display: flex;
    gap: 10px 18px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

@media (max-width: 767.98px) {
    .survey-admin-embed-card-main {
        align-items: flex-start;
    }

    .survey-admin-embed-form-grid {
        grid-template-columns: 1fr;
    }

    .survey-admin-embed-origins {
        grid-column: auto;
    }
}
