/* Extracted from recruiter-dashboard/applications/index.html. */
/* ── Application card list ── */
    .app-list { display: grid; gap: 14px; }

    .app-card {
      display: grid; grid-template-columns: auto auto minmax(0,1fr) auto;
      align-items: start; gap: 16px;
      padding: 20px 22px; border: 1px solid var(--line-soft, rgba(1,56,44,0.07));
      border-radius: 16px; background: #fff;
      transition: border-color 0.15s, background 0.15s;
    }
    .app-card:hover { border-color: rgba(5,150,105,0.18); background: #fcfefb; }

    /* Avatar badge */
    .app-card__avatar {
      width: 44px; height: 44px; border-radius: 12px;
      display: grid; place-items: center; flex-shrink: 0;
      background: rgba(5,150,105,0.08); color: var(--accent);
      font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.03em;
    }

    /* Body */
    .app-card__body { display: grid; gap: 8px; min-width: 0; }

    .app-card__top {
      display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px;
    }
    .app-card__name { margin: 0; font-size: 1rem; font-weight: 600; line-height: 1.2; }
    .app-card__time { font-size: 0.6875rem; color: var(--ink-faint, rgba(1,56,44,0.4)); }

    .app-card__role {
      font-size: 0.8125rem; color: var(--ink-soft); line-height: 1.3;
    }

    .app-card__skills { display: flex; flex-wrap: wrap; gap: 6px; }
    .app-card__skill {
      display: inline-block; padding: 3px 10px; border-radius: 999px;
      background: rgba(1,56,44,0.04); border: 1px solid var(--line);
      font-size: 0.6875rem; font-weight: 500; color: var(--ink-soft);
    }

    /* Right column */
    .app-card__side {
      display: flex; flex-direction: column; align-items: flex-end;
      gap: 10px; flex-shrink: 0;
    }

    .app-card__match {
      display: inline-flex; align-items: center; gap: 5px;
      font-size: 0.8125rem; font-weight: 700; color: var(--accent);
    }
    .app-card__match svg { flex-shrink: 0; }

    /* Status badges */
    .app-card__status {
      display: inline-flex; align-items: center; gap: 5px;
      padding: 3px 10px; border-radius: 999px;
      font-size: 0.6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em;
    }
    .app-card__status--new { background: #dbeafe; color: #2563eb; }
    .app-card__status--screening { background: #fef3c7; color: #b45309; }
    .app-card__status--interview { background: #ede9fe; color: #7c3aed; }
    .app-card__status--offer { background: #ecfdf5; color: #059669; }
    .app-card__status--hired { background: #d1fae5; color: #047857; }
    .app-card__status--rejected { background: #fef2f2; color: #dc2626; }

    /* Action buttons */
    .app-card__actions { display: flex; gap: 8px; }
    .app-card__btn {
      display: inline-flex; align-items: center; gap: 5px;
      min-height: 32px; padding: 0 14px; border-radius: 999px;
      font-size: 0.75rem; font-weight: 600; cursor: pointer;
      border: 1px solid var(--line); background: #fff; color: var(--ink);
      transition: background 0.15s, border-color 0.15s;
    }
    .app-card__btn:hover { background: rgba(131,230,189,0.12); border-color: rgba(5,150,105,0.18); }
    .app-card__btn--primary {
      background: var(--accent); color: #fff; border-color: var(--accent);
    }
    .app-card__btn--primary:hover { background: #047857; border-color: #047857; }

    /* ── Responsive ── */
    @media (max-width: 639px) {
      .app-card {
        grid-template-columns: auto auto minmax(0,1fr);
      }
      .app-card__side {
        grid-column: 1 / -1;
        flex-direction: row; align-items: center;
        justify-content: space-between;
      }
    }

    /* ── Detail sheet (slide-in panel) ── */
    .detail-backdrop {
      position: fixed; inset: 0; z-index: 900;
      background: rgba(1,56,44,0.25); opacity: 0;
      transition: opacity 0.25s ease;
      pointer-events: none;
    }
    .detail-backdrop.is-open {
      opacity: 1; pointer-events: auto;
    }

    .detail-sheet {
      position: fixed; top: 0; right: 0; bottom: 0;
      z-index: 910; width: 480px; max-width: 100%;
      background: var(--surface); border-left: 1px solid var(--line);
      box-shadow: var(--shadow-lifted);
      display: none; flex-direction: column;
      transform: translateX(100%);
      transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
      overflow: hidden;
    }
    .detail-sheet.is-open {
      display: flex;
      transform: translateX(0);
    }

    /* Close button */
    .detail-sheet__close {
      position: absolute; top: 14px; right: 14px; z-index: 2;
      width: 34px; height: 34px; display: grid; place-items: center;
      border-radius: 999px; border: 1px solid var(--line);
      background: var(--surface); color: var(--ink);
      font-size: 1rem; cursor: pointer;
      transition: background 0.15s, border-color 0.15s;
    }
    .detail-sheet__close:hover {
      background: rgba(131,230,189,0.12); border-color: rgba(5,150,105,0.18);
    }

    /* Scrollable body */
    .detail-sheet__scroll {
      flex: 1; overflow-y: auto; padding: 28px 28px 0;
      -webkit-overflow-scrolling: touch;
    }

    /* Candidate header */
    .detail-header { text-align: center; padding-bottom: 24px; border-bottom: 1px solid var(--line-soft, rgba(1,56,44,0.07)); margin-bottom: 24px; }
    .detail-header__avatar {
      width: 72px; height: 72px; border-radius: 18px;
      display: inline-grid; place-items: center;
      background: rgba(5,150,105,0.08); color: var(--accent);
      font-size: 1.375rem; font-weight: 700; letter-spacing: 0.04em;
      margin: 0 auto 14px;
    }
    .detail-header__name { margin: 0 0 4px; font-size: 1.25rem; font-weight: 700; color: var(--ink); }
    .detail-header__role { margin: 0 0 6px; font-size: 0.875rem; color: var(--ink-soft); }
    .detail-header__meta {
      display: flex; align-items: center; justify-content: center; gap: 14px;
      font-size: 0.8125rem; color: var(--ink-faint, rgba(1,56,44,0.4));
    }
    .detail-header__match { font-weight: 700; color: var(--accent); }

    /* Status pills */
    .detail-status { margin-bottom: 24px; }
    .detail-status__label { display: block; font-size: 0.6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--ink-faint, rgba(1,56,44,0.4)); margin-bottom: 8px; }
    .detail-status__pills { display: flex; flex-wrap: wrap; gap: 6px; }
    .detail-status__pill {
      display: inline-flex; align-items: center; gap: 4px;
      min-height: 30px; padding: 0 13px; border-radius: 999px;
      border: 1px solid var(--line); background: #fff;
      font-size: 0.75rem; font-weight: 600; color: var(--ink-soft);
      cursor: pointer; transition: background 0.15s, border-color 0.15s, color 0.15s;
    }
    .detail-status__pill:hover { background: rgba(131,230,189,0.1); border-color: rgba(5,150,105,0.14); color: var(--ink); }
    .detail-status__pill.is-active { background: #ecfdf5; border-color: rgba(5,150,105,0.25); color: var(--accent); font-weight: 700; }
    .detail-status__pill--rejected.is-active { background: #fef2f2; border-color: rgba(220,38,38,0.25); color: #dc2626; }

    /* Sections */
    .detail-section { margin-bottom: 24px; }
    .detail-section__title {
      margin: 0 0 10px; font-size: 0.8125rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: 0.06em; color: var(--ink-faint, rgba(1,56,44,0.4));
    }
    .detail-section__body { font-size: 0.875rem; line-height: 1.65; color: var(--ink-soft); }
    .detail-section__body ul { margin: 0; padding-left: 18px; }
    .detail-section__body ul li { margin-bottom: 6px; }
    .detail-section__body p { margin: 0 0 10px; }

    /* Timeline */
    .detail-timeline { list-style: none; margin: 0; padding: 0; }
    .detail-timeline__item {
      position: relative; padding: 0 0 18px 24px;
      font-size: 0.8125rem; color: var(--ink-soft);
    }
    .detail-timeline__item::before {
      content: ""; position: absolute; left: 5px; top: 6px;
      width: 8px; height: 8px; border-radius: 50%;
      background: var(--accent); border: 2px solid rgba(5,150,105,0.18);
    }
    .detail-timeline__item::after {
      content: ""; position: absolute; left: 8px; top: 16px; bottom: 0;
      width: 2px; background: var(--line);
    }
    .detail-timeline__item:last-child::after { display: none; }
    .detail-timeline__item:last-child { padding-bottom: 0; }
    .detail-timeline__title { font-weight: 600; color: var(--ink); }
    .detail-timeline__time { font-size: 0.6875rem; color: var(--ink-faint, rgba(1,56,44,0.4)); }

    /* Bottom action bar */
    .detail-actions {
      display: flex; flex-wrap: wrap; gap: 8px;
      padding: 18px 28px; border-top: 1px solid var(--line-soft, rgba(1,56,44,0.07));
      background: var(--surface);
    }
    .detail-actions__btn {
      display: inline-flex; align-items: center; justify-content: center;
      gap: 6px; min-height: 38px; padding: 0 18px; border-radius: 999px;
      font-size: 0.8125rem; font-weight: 600; cursor: pointer;
      border: 1px solid var(--line); background: #fff; color: var(--ink);
      transition: background 0.15s, border-color 0.15s;
    }
    .detail-actions__btn:hover { background: rgba(131,230,189,0.12); border-color: rgba(5,150,105,0.18); }
    .detail-actions__btn--primary {
      background: var(--accent); color: #fff; border-color: var(--accent); flex: 1;
    }
    .detail-actions__btn--primary:hover { background: #047857; border-color: #047857; }
    .detail-actions__btn--danger { color: #dc2626; }
    .detail-actions__btn--danger:hover { background: #fef2f2; border-color: rgba(220,38,38,0.18); }

    @media (max-width: 639px) {
      .detail-sheet { width: 100%; }
      .detail-actions { padding: 14px 20px; }
      .detail-sheet__scroll { padding: 20px 20px 0; }
    }

    /* ── Interview Scheduling Modal ── */
    .interview-modal-backdrop {
      position: fixed; inset: 0; z-index: 950;
      background: rgba(1,56,44,0.35);
      opacity: 0; pointer-events: none;
      transition: opacity 0.2s ease;
    }
    .interview-modal-backdrop.is-open {
      opacity: 1; pointer-events: auto;
    }

    .interview-modal {
      position: fixed; z-index: 960;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%) scale(0.96);
      width: 520px; max-width: calc(100% - 32px);
      max-height: calc(100vh - 48px);
      background: var(--surface); border-radius: 18px;
      box-shadow: var(--shadow-lifted);
      display: flex; flex-direction: column;
      opacity: 0; pointer-events: none;
      transition: opacity 0.2s ease, transform 0.2s ease;
    }
    .interview-modal.is-open {
      opacity: 1; pointer-events: auto;
      transform: translate(-50%, -50%) scale(1);
    }

    .interview-modal__header {
      display: flex; align-items: center; justify-content: space-between;
      padding: 22px 24px 0;
    }
    .interview-modal__title {
      margin: 0; font-size: 1.125rem; font-weight: 700; color: var(--ink);
    }
    .interview-modal__close {
      width: 34px; height: 34px; display: grid; place-items: center;
      border-radius: 999px; border: 1px solid var(--line);
      background: var(--surface); color: var(--ink);
      font-size: 1rem; cursor: pointer;
      transition: background 0.15s, border-color 0.15s;
    }
    .interview-modal__close:hover {
      background: rgba(131,230,189,0.12); border-color: rgba(5,150,105,0.18);
    }

    .interview-modal__body {
      flex: 1; overflow-y: auto; padding: 20px 24px;
      -webkit-overflow-scrolling: touch;
    }

    /* Candidate info row */
    .interview-modal__candidate {
      display: flex; align-items: center; gap: 12px;
      padding: 12px 14px; border-radius: 12px;
      background: rgba(5,150,105,0.04); margin-bottom: 20px;
    }
    .interview-modal__candidate-avatar {
      width: 40px; height: 40px; border-radius: 10px;
      display: grid; place-items: center;
      background: rgba(5,150,105,0.08); color: var(--accent);
      font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.03em;
      flex-shrink: 0;
    }
    .interview-modal__candidate-name {
      margin: 0; font-size: 0.875rem; font-weight: 600; color: var(--ink);
    }
    .interview-modal__candidate-role {
      margin: 0; font-size: 0.75rem; color: var(--ink-soft);
    }

    /* Form field groups */
    .interview-modal__field {
      margin-bottom: 16px;
    }
    .interview-modal__label {
      display: block; margin-bottom: 6px;
      font-size: 0.75rem; font-weight: 600; color: var(--ink-soft);
      text-transform: uppercase; letter-spacing: 0.06em;
    }
    .interview-modal__input {
      display: block; width: 100%; box-sizing: border-box;
      min-height: 40px; padding: 10px 14px;
      border: 1px solid var(--line); border-radius: 10px;
      background: #fff; font: inherit; font-size: 0.875rem;
      color: var(--ink); outline: none;
      transition: border-color 0.15s;
    }
    .interview-modal__input:focus {
      border-color: var(--accent);
    }
    .interview-modal__input::placeholder {
      color: var(--ink-faint, rgba(1,56,44,0.4));
    }
    textarea.interview-modal__input {
      min-height: 80px; resize: vertical;
    }

    /* Row for date / time / duration */
    .interview-modal__row {
      display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px;
    }
    @media (max-width: 480px) {
      .interview-modal__row { grid-template-columns: 1fr; }
    }

    /* Interview type toggle pills */
    .interview-modal__toggles {
      display: flex; flex-wrap: wrap; gap: 6px;
    }
    .interview-modal__toggle {
      display: inline-flex; align-items: center;
      min-height: 34px; padding: 0 14px; border-radius: 999px;
      border: 1px solid var(--line); background: #fff;
      font-size: 0.75rem; font-weight: 600; color: var(--ink-soft);
      cursor: pointer; transition: background 0.15s, border-color 0.15s, color 0.15s;
    }
    .interview-modal__toggle:hover {
      background: rgba(131,230,189,0.12); border-color: rgba(5,150,105,0.14); color: var(--ink);
    }
    .interview-modal__toggle.is-active {
      background: #ecfdf5; border-color: rgba(5,150,105,0.25); color: var(--accent); font-weight: 700;
    }

    /* Checkbox */
    .interview-modal__checkbox {
      display: flex; align-items: center; gap: 8px;
      font-size: 0.8125rem; color: var(--ink-soft); cursor: pointer;
      margin-top: 4px;
    }
    .interview-modal__checkbox input[type="checkbox"] {
      width: 16px; height: 16px; accent-color: var(--accent); cursor: pointer;
    }

    /* Footer */
    .interview-modal__footer {
      display: flex; justify-content: flex-end; gap: 10px;
      padding: 16px 24px; border-top: 1px solid var(--line-soft, rgba(1,56,44,0.07));
    }
    .interview-modal__btn {
      display: inline-flex; align-items: center; justify-content: center;
      gap: 6px; min-height: 38px; padding: 0 20px; border-radius: 999px;
      font-size: 0.8125rem; font-weight: 600; cursor: pointer;
      border: 1px solid var(--line); background: #fff; color: var(--ink);
      transition: background 0.15s, border-color 0.15s;
    }
    .interview-modal__btn:hover {
      background: rgba(131,230,189,0.12); border-color: rgba(5,150,105,0.18);
    }
    .interview-modal__btn--ghost {
      border-color: transparent; background: transparent;
    }
    .interview-modal__btn--ghost:hover {
      background: rgba(1,56,44,0.04); border-color: transparent;
    }
    .interview-modal__btn--primary {
      background: var(--accent); color: #fff; border-color: var(--accent);
    }
    .interview-modal__btn--primary:hover {
      background: #047857; border-color: #047857;
    }

    /* Success state */
    .interview-modal__success {
      text-align: center; padding: 32px 24px;
    }
    .interview-modal__success-icon {
      width: 56px; height: 56px; border-radius: 50%;
      display: inline-grid; place-items: center;
      background: #d1fae5; color: #059669;
      margin-bottom: 16px;
    }
    .interview-modal__success-icon svg {
      width: 28px; height: 28px;
    }
    .interview-modal__success-title {
      margin: 0 0 10px; font-size: 1.125rem; font-weight: 700; color: var(--ink);
    }
    .interview-modal__success-detail {
      margin: 0 0 6px; font-size: 0.875rem; color: var(--ink-soft); line-height: 1.5;
    }
    .interview-modal__success-note {
      margin: 0 0 20px; font-size: 0.8125rem; color: var(--ink-faint, rgba(1,56,44,0.4));
    }

    /* ── Bulk action styles ── */
    .bulk-bar { position:sticky; bottom:0; left:0; right:0; z-index:85; background:#fff; border-top:1px solid var(--line); padding:12px 24px; display:flex; align-items:center; justify-content:space-between; gap:16px; box-shadow:0 -4px 16px rgba(0,0,0,0.06); transform:translateY(100%); transition:transform 0.25s ease; }
    .bulk-bar.is-visible { transform:translateY(0); }
    .bulk-bar__info { display:flex; align-items:center; gap:12px; font-size:0.875rem; font-weight:600; }
    .bulk-bar__count { min-width:28px; height:28px; display:inline-grid; place-items:center; border-radius:999px; background:var(--accent); color:#fff; font-size:0.8125rem; font-weight:700; }
    .bulk-bar__actions { display:flex; gap:8px; flex-wrap:wrap; }
    .bulk-bar__actions .button { min-height:36px; font-size:0.8125rem; }
    @media (max-width: 639px) {
      .bulk-bar { flex-direction:column; padding:12px 16px; gap:10px; }
      .bulk-bar__actions { width:100%; justify-content:stretch; }
      .bulk-bar__actions .button { flex:1; min-width:0; padding:0 8px; font-size:0.75rem; }
    }
    .app-card__check { width:20px; height:20px; border-radius:6px; border:2px solid var(--line); background:#fff; cursor:pointer; display:grid; place-items:center; flex-shrink:0; transition:all 0.15s; }
    .app-card__check.is-checked { background:var(--accent); border-color:var(--accent); }
    .app-card__check.is-checked::after { content:'\2713'; color:#fff; font-size:0.75rem; font-weight:700; }
    .bulk-select-all { display:flex; align-items:center; gap:8px; font-size:0.8125rem; font-weight:600; color:var(--ink-soft); cursor:pointer; margin-bottom:8px; }
    .bulk-select-all .app-card__check { width:18px; height:18px; }

    /* ── Recruiter data widgets ── */
    .rw-match-count { font-weight:600; color:#059669; text-transform:none; letter-spacing:0; }
    .rw-skills-grid { display:grid; gap:3px; }
    .rw-skill { display:flex; align-items:center; gap:6px; padding:4px 8px; border-radius:5px; font-size:0.8125rem; font-weight:500; }
    .rw-skill.is-matched { color:#059669; background:rgba(5,150,105,0.06); }
    .rw-skill.is-missing { color:rgba(1,56,44,0.35); background:rgba(1,56,44,0.03); }
    .rw-skill svg { flex-shrink:0; }

    .rw-salary-bar { display:grid; gap:4px; }
    .rw-salary-track { position:relative; height:8px; border-radius:4px; background:rgba(1,56,44,0.06); }
    .rw-salary-budget { position:absolute; top:0; height:8px; border-radius:4px; background:#059669; opacity:0.6; }
    .rw-salary-candidate { position:absolute; top:0; height:8px; border-radius:4px; border:2px solid #01382C; background:transparent; }
    .rw-salary-labels { display:flex; justify-content:space-between; font-size:0.6875rem; color:rgba(1,56,44,0.4); }
    .rw-salary-detail { display:flex; flex-wrap:wrap; gap:4px 12px; font-size:0.75rem; color:rgba(1,56,44,0.6); }
    .rw-salary-legend { display:flex; align-items:center; gap:5px; }
    .rw-salary-legend-budget { width:10px; height:5px; border-radius:3px; background:#059669; opacity:0.6; }
    .rw-salary-legend-candidate { width:10px; height:5px; border-radius:3px; border:2px solid #01382C; }
    .rw-salary-verdict { font-size:0.75rem; font-weight:600; padding:2px 8px; border-radius:4px; display:inline-block; }
    .rw-salary-verdict.is-good { background:rgba(5,150,105,0.08); color:#059669; }
    .rw-salary-verdict.is-over { background:rgba(220,38,38,0.08); color:#DC2626; }

    .rw-velocity { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
    .rw-velocity-item { display:grid; gap:2px; text-align:center; padding:8px 4px; border-radius:8px; background:rgba(1,56,44,0.03); }
    .rw-velocity-item strong { font-size:0.9375rem; font-weight:700; color:#01382C; }
    .rw-velocity-item span { font-size:0.625rem; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; color:rgba(1,56,44,0.4); }

    .rw-source { display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:8px; background:rgba(5,150,105,0.04); border:1px solid rgba(5,150,105,0.1); font-size:0.8125rem; color:rgba(1,56,44,0.65); }
    .rw-source svg { color:#059669; flex-shrink:0; }

    .rw-other-apps { display:grid; gap:4px; }
    .rw-other-app { display:flex; align-items:center; gap:8px; padding:6px 10px; border-radius:6px; background:rgba(1,56,44,0.02); font-size:0.8125rem; }
    .rw-other-app__role { font-weight:500; color:#01382C; flex:1; }
    .rw-other-app__status { font-size:0.6875rem; font-weight:600; padding:2px 6px; border-radius:4px; }
    .rw-other-app__status[data-status="rejected"] { background:rgba(220,38,38,0.08); color:#DC2626; }
    .rw-other-app__status[data-status="hired"] { background:rgba(5,150,105,0.08); color:#059669; }
    .rw-other-app__status[data-status="interview"] { background:rgba(59,130,246,0.08); color:#3B82F6; }
    .rw-other-app__date { font-size:0.6875rem; color:rgba(1,56,44,0.4); }

    /* ── Apply method badges ── */
    .apply-method-badge { display:inline-flex; align-items:center; gap:4px; padding:2px 8px; border-radius:999px; font-size:0.6275rem; font-weight:600; letter-spacing:0.02em; }
    .apply-method-badge--direct { background:#ecfdf5; color:#059669; }
    .apply-method-badge--email { background:#fff7ed; color:#c2410c; }
    .apply-method-badge--link { background:#eff6ff; color:#2563eb; }

    /* ── Recruiter notes ── */
    .rw-notes { display:grid; gap:8px; }
    .rw-note { padding:10px 12px; border-radius:8px; background:#f9fafb; border:1px solid #e5e7eb; }
    .rw-note__header { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:6px; }
    .rw-note__header strong { font-size:0.8125rem; font-weight:600; color:#111827; }
    .rw-note__header span { font-size:0.6875rem; color:#9ca3af; }
    .rw-note p { margin:0; font-size:0.8125rem; line-height:1.55; color:#4b5563; }
    .rw-note-add { display:grid; gap:6px; }
    .rw-note-input { width:100%; border:1px solid #e5e7eb; border-radius:8px; padding:8px 12px; font-family:inherit; font-size:0.8125rem; color:#111827; resize:vertical; box-sizing:border-box; }
    .rw-note-input:focus { border-color:rgba(5,150,105,0.4); outline:none; box-shadow:0 0 0 3px rgba(5,150,105,0.06); }
    .rw-note-save { justify-self:end; padding:6px 14px; border-radius:6px; border:none; background:#059669; color:#fff; font-family:inherit; font-size:0.75rem; font-weight:600; cursor:pointer; }
    .rw-note-save:hover { background:#047857; }

    /* ── Interview card ── */
    .rw-interview { display:grid; gap:10px; padding:12px; border-radius:10px; background:#f0fdf8; border:1px solid rgba(5,150,105,0.15); }
    .rw-interview__row { display:flex; align-items:flex-start; gap:10px; }
    .rw-interview__row svg { flex-shrink:0; margin-top:2px; color:#059669; }
    .rw-interview__row strong { font-size:0.875rem; font-weight:600; color:#111827; display:block; }
    .rw-interview__row span { font-size:0.75rem; color:#6b7280; }
    .rw-interview__actions { display:flex; gap:6px; }
    .rw-interview__btn { padding:6px 12px; border-radius:6px; border:1px solid #d1d5db; background:#fff; font-family:inherit; font-size:0.75rem; font-weight:600; color:#374151; cursor:pointer; }
    .rw-interview__btn:hover { border-color:#059669; color:#059669; }
    .rw-interview__btn--danger { border-color:transparent; background:rgba(220,38,38,0.08); color:#dc2626; }
    .rw-interview__btn--danger:hover { background:rgba(220,38,38,0.14); }

    /* ── Sort & Filter toolbar ── */
    .rw-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 0; margin-bottom:4px; }
    .rw-toolbar__left { display:flex; align-items:center; gap:8px; }
    .rw-toolbar__count { font-size:0.8125rem; font-weight:500; color:#6b7280; }
    .rw-toolbar__right { display:flex; align-items:center; gap:8px; }
    .rw-sort { display:flex; align-items:center; gap:6px; }
    .rw-sort__label { font-size:0.75rem; font-weight:500; color:#9ca3af; white-space:nowrap; }
    .rw-sort__select { padding:6px 28px 6px 10px; border:1px solid #e5e7eb; border-radius:6px; font-family:inherit; font-size:0.8125rem; font-weight:500; color:#374151; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 8px center; appearance:none; cursor:pointer; }
    .rw-sort__select:focus { border-color:rgba(5,150,105,0.4); outline:none; }
    .rw-filter-btn { display:inline-flex; align-items:center; gap:6px; padding:6px 14px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; font-family:inherit; font-size:0.8125rem; font-weight:600; color:#374151; cursor:pointer; }
    .rw-filter-btn:hover { border-color:#059669; color:#059669; }
    .rw-filter-btn svg { flex-shrink:0; }
