/* Authority Planer CSS Add-ons
 * Append-only refinements layered above core/components/theme.
 */

/* Module v10: project/task visual consistency refinements */
:root{
  --ap-card-shadow-soft: 0 6px 18px rgba(18,39,41,.035);
  --ap-form-section-bg: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,251,252,.98) 100%);
  --ap-form-subtle-bg: linear-gradient(180deg, rgba(246,248,250,.95) 0%, rgba(255,255,255,.96) 100%);
}

/* stronger, clearer meta pills in task/source cards */
.task-badges-row{
  gap:12px;
  margin-bottom:8px;
}
.task-badges-row .badge,
.task-badges-row .score-pill{
  min-height:34px;
  padding:8px 14px;
  border-radius:999px;
  font-weight:800;
  letter-spacing:-.01em;
}
.task-badges-row .badge-core{
  background:var(--priority-core);
  color:#fff;
  border-color:var(--priority-core);
}
.task-badges-row .badge-very_important{
  background:var(--priority-very-important);
  color:#fff;
  border-color:var(--priority-very-important);
}
.task-badges-row .badge-nice_to_have{
  background:var(--priority-nice);
  color:#fff;
  border-color:var(--priority-nice);
}
.task-badges-row .badge-later{
  background:var(--priority-later);
  color:#2f3447;
  border-color:var(--priority-later);
}
.task-badges-row .badge-avoid{
  background:var(--priority-avoid);
  color:#fff;
  border-color:var(--priority-avoid);
}
.task-badges-row .badge-quality{
  background:color-mix(in srgb, var(--score-green) 18%, #ffffff);
  color:var(--score-green);
  border-color:color-mix(in srgb, var(--score-green) 28%, #ffffff);
}
.task-badges-row .badge-approval{
  background:color-mix(in srgb, var(--primary) 12%, #ffffff);
  color:var(--primary-strong);
  border-color:color-mix(in srgb, var(--primary) 18%, #ffffff);
}
.task-badges-row .badge-conditional{
  background:color-mix(in srgb, var(--score-orange) 18%, #ffffff);
  color:#7a4e1d;
  border-color:color-mix(in srgb, var(--score-orange) 28%, #ffffff);
}
.task-badges-row .badge-approval.badge-avoid{
  background:color-mix(in srgb, var(--priority-avoid) 18%, #ffffff);
  color:var(--priority-avoid);
  border-color:color-mix(in srgb, var(--priority-avoid) 28%, #ffffff);
}
.task-badges-row .score-pill{
  background:color-mix(in srgb, var(--score-green) 18%, #ffffff);
  color:var(--score-green);
  border:1px solid color-mix(in srgb, var(--score-green) 28%, #ffffff);
}
.task-badges-row .score-pill.score-good,
.task-badges-row .score-pill.score-excellent{background:color-mix(in srgb, var(--score-green) 18%, #ffffff);color:var(--score-green);border-color:color-mix(in srgb, var(--score-green) 28%, #ffffff)}
.task-badges-row .score-pill.score-ok{background:color-mix(in srgb, var(--score-yellow) 22%, #ffffff);color:#8b7420;border-color:color-mix(in srgb, var(--score-yellow) 35%, #ffffff)}
.task-badges-row .score-pill.score-weak{background:color-mix(in srgb, var(--score-orange) 20%, #ffffff);color:#9a561d;border-color:color-mix(in srgb, var(--score-orange) 33%, #ffffff)}
.task-badges-row .score-pill.score-bad{background:color-mix(in srgb, var(--score-red) 18%, #ffffff);color:var(--score-red);border-color:color-mix(in srgb, var(--score-red) 30%, #ffffff)}

/* status coloured top rail and clearer title spacing */
.card.task-card::before,
.task-mini-rich::before{
  height:4px;
}
.card.task-card:has(.status-badge.status-open)::before,
.task-mini-rich:has(.status-badge.status-open)::before{background:var(--danger)}
.card.task-card:has(.status-badge.status-in_progress)::before,
.task-mini-rich:has(.status-badge.status-in_progress)::before{background:var(--warning)}
.card.task-card:has(.status-badge.status-deferred)::before,
.task-mini-rich:has(.status-badge.status-deferred)::before{background:#7b83a6}
.card.task-card:has(.status-badge.status-not_relevant)::before,
.task-mini-rich:has(.status-badge.status-not_relevant)::before{background:#8b8f96}
.card.task-card:has(.status-badge.status-done)::before,
.task-mini-rich:has(.status-badge.status-done)::before{background:var(--success)}

.task-top h3{
  margin:14px 0 10px;
}
.task-top .muted{
  max-width:72ch;
}

/* project form: sectioned, extensible blocks */
.form-shell{
  padding:clamp(1rem, .9rem + .45vw, 1.4rem);
}
.project-form-layout{
  display:grid;
  gap:28px;
}
.form-section-card{
  background:var(--ap-form-section-bg);
  border:1px solid var(--line);
  border-radius:24px;
  padding:22px 22px 20px;
  box-shadow:var(--ap-card-shadow-soft);
}
.form-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding-bottom:16px;
  border-bottom:1px solid color-mix(in srgb, var(--line) 88%, white);
}
.form-section-head .eyebrow{margin-bottom:8px}
.form-section-head h2{
  margin:0 0 6px;
  font-size:clamp(1.4rem, 1.18rem + .5vw, 1.8rem);
  line-height:1.14;
}
.form-section-head .muted{
  display:block;
  max-width:72ch;
  font-size:.98rem;
}
.form-section-grid{
  gap:18px 18px;
}
.form-section-grid > label,
.form-section-grid > .full-width{
  align-self:start;
}
.form-section-grid > label{
  background:var(--ap-form-subtle-bg);
  border:1px solid var(--line);
  border-radius:18px;
  padding:14px 14px 12px;
  box-shadow:0 1px 0 rgba(255,255,255,.82) inset;
}
.form-section-grid > .full-width{
  background:var(--ap-form-subtle-bg);
  border:1px solid var(--line);
  border-radius:20px;
  padding:16px 16px 14px;
}
.form-section-grid label > .muted{
  display:inline-block;
  margin-left:6px;
  font-size:.88rem;
}
.form-section-grid .field-title{
  font-size:1.02rem;
  margin:0 0 12px;
}
.form-section-grid .checkbox-grid{
  gap:12px 14px;
}
.form-section-grid .checkbox{
  min-height:58px;
  align-items:center;
  background:var(--panel-soft);
  border-radius:16px;
}
.form-section-grid textarea{min-height:128px}
.form-section-grid .target-input-list{gap:12px}
.form-section-grid .target-row{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(280px,2fr) auto;
  gap:12px;
  align-items:center;
}
.form-section-grid .top-space-sm{margin-top:12px}
.form-submit-row{
  justify-content:flex-start;
  padding-top:4px;
}

/* stronger inner separation inside strategy section */
.form-section-card:last-of-type .form-section-grid > .full-width{
  background:#fff;
  border:1px solid var(--line);
}
.form-section-card:last-of-type .form-section-grid > .full-width + .full-width{
  margin-top:2px;
}
.form-section-card:last-of-type .field-title{
  font-size:1.04rem;
  padding-bottom:6px;
  border-bottom:1px solid color-mix(in srgb, var(--line) 85%, white);
}
.form-section-card:last-of-type small.muted{
  display:block;
  margin-top:10px;
}

/* source / industry cards: clearer info blocks */
.card.task-card .task-grid{
  margin-top:20px;
}
.card.task-card .task-grid > div{
  background:linear-gradient(180deg, var(--surface-soft) 0%, #f9fbfc 100%);
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px 18px;
}
.card.task-card .task-grid > div strong,
.card.task-card .detail-label{
  display:block;
  margin-bottom:8px;
}

/* score modal polish: cleaner spacing, stronger left-to-right value colour */
.score-dialog{
  width:min(860px, 92vw);
  border-radius:28px;
  overflow:hidden;
}
.score-dialog .dialog-head{
  padding:20px 24px;
}
.score-dialog .dialog-head h3{
  font-size:1.22rem;
  line-height:1.2;
}
.score-breakdown{
  padding:22px 24px 24px;
  gap:10px;
}
.score-row{
  grid-template-columns:220px 1fr 66px;
  gap:16px;
  padding:10px 0;
}
.score-row span{
  font-weight:700;
  color:var(--primary-strong);
}
.score-bar{
  height:16px;
  background:#ede7df;
  border-radius:999px;
  overflow:hidden;
  box-shadow:inset 0 1px 2px rgba(18,39,41,.08);
}
.score-bar-fill{
  background:linear-gradient(90deg, var(--score-red) 0%, var(--score-orange) 25%, var(--score-yellow) 50%, var(--score-lime) 72%, var(--score-green) 100%) !important;
}
.score-value-text{
  font-size:1.02rem;
}

/* make project create more readable on large forms */
@media (min-width: 1101px){
  .form-section-grid.two-col{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 1100px){
  .form-section-grid.two-col,
  .form-grid.two-col,
  .form-section-grid .checkbox-grid.three-col,
  .form-section-grid .checkbox-grid.four-col{
    grid-template-columns:1fr;
  }
}
@media (max-width: 860px){
  .form-shell{padding:14px}
  .form-section-card{padding:18px 16px 16px;border-radius:20px}
  .form-section-head{margin-bottom:14px;padding-bottom:12px}
  .form-section-grid > label,
  .form-section-grid > .full-width{padding:13px 13px 12px}
  .form-section-grid .target-row{grid-template-columns:1fr}
  .score-dialog{width:min(96vw, 760px);border-radius:24px}
  .score-row{grid-template-columns:1fr;gap:8px}
  .score-value-text{text-align:left}
}

/* Module v11: industries cards, project-form sectioning, and score modal fixes */

/* 1) Restore clear info cards inside Branchenbibliothek / industry source cards */
.source-info-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  margin-top:18px;
  margin-bottom:18px;
}
.source-info-box{
  background:linear-gradient(180deg, var(--surface-soft) 0%, #fbfcfd 100%);
  border:1px solid var(--line);
  border-radius:18px;
  padding:15px 16px 14px;
  box-shadow:0 1px 0 rgba(255,255,255,.82) inset;
}
.source-info-box strong{
  display:block;
  margin:0 0 8px;
  font-size:.98rem;
  font-weight:800;
  color:var(--primary-strong);
}
.source-info-box p{
  margin:0;
  line-height:1.6;
  color:var(--text);
}

/* 2) Stronger section rhythm and card language for "Projekt anlegen" */
.form-shell,
.page-head + .card > form.form-grid.two-col{
  gap:24px 22px;
}
.form-section-card{
  padding:24px 24px 22px;
}
.form-section-head{
  margin-bottom:20px;
  padding-bottom:18px;
}
.form-section-head .eyebrow{
  font-size:.84rem;
  letter-spacing:.16em;
}
.form-section-head h2{
  margin:0 0 .45rem;
}
.form-section-grid > label{
  min-height:92px;
}
.form-section-grid > .full-width{
  margin-top:2px;
}
.form-section-grid .field-title{
  margin:0 0 14px;
  font-size:1.06rem;
}
.form-section-card + .form-section-card{
  margin-top:2px;
}
.form-section-grid .checkbox{
  min-height:62px;
  padding:0 14px;
}
.form-section-grid .target-row{
  align-items:stretch;
}
.form-section-grid .target-row > *{
  height:100%;
}
.form-section-grid .target-row .btn,
.form-section-grid .target-row button{
  align-self:stretch;
}
.form-section-grid .full-width textarea{
  min-height:138px;
}

/* also improve legacy project-create layout when section wrappers are not yet present */
.page-head + .card > form.form-grid.two-col > .full-width.checkbox-grid{
  display:grid;
  gap:18px;
}
.page-head + .card > form.form-grid.two-col > .full-width.checkbox-grid > .field-title{
  margin-bottom:8px;
}
.page-head + .card > form.form-grid.two-col > .full-width.checkbox-grid > small.muted{
  display:block;
  margin-top:10px;
  line-height:1.5;
}

/* 3) Score modal: remove flat global gradient and use true value classes */
.score-dialog{
  box-shadow:0 22px 60px rgba(18,39,41,.16);
}
.score-dialog .dialog-head{
  background:linear-gradient(180deg, rgba(250,252,253,.98) 0%, rgba(255,255,255,.98) 100%);
}
.score-breakdown{
  background:#fff;
}
.score-row{
  align-items:center;
}
.score-row + .score-row{
  border-top:1px solid rgba(18,39,41,.035);
}
.score-bar{
  background:#ebe5dd;
}
.score-bar-fill{
  background:none !important;
}
.score-row.score10-bad .score-bar-fill{
  background:linear-gradient(90deg, color-mix(in srgb, var(--score-red) 82%, #f6caca) 0%, var(--score-red) 100%) !important;
}
.score-row.score10-weak .score-bar-fill{
  background:linear-gradient(90deg, color-mix(in srgb, var(--score-orange) 82%, #f7dcc1) 0%, var(--score-orange) 100%) !important;
}
.score-row.score10-ok .score-bar-fill{
  background:linear-gradient(90deg, color-mix(in srgb, var(--score-yellow) 78%, #f1e3a7) 0%, var(--score-yellow) 100%) !important;
}
.score-row.score10-good .score-bar-fill{
  background:linear-gradient(90deg, color-mix(in srgb, var(--score-lime) 78%, #dce8b0) 0%, var(--score-lime) 100%) !important;
}
.score-row.score10-excellent .score-bar-fill{
  background:linear-gradient(90deg, color-mix(in srgb, var(--score-green) 78%, #cfe6d8) 0%, var(--score-green) 100%) !important;
}

/* 4) Slightly stronger headings and spacing inside industry cards */
.task-mini-rich h3{
  margin:12px 0 14px;
}
.task-mini-rich > p{
  margin:0 0 18px;
  font-size:1.02rem;
  line-height:1.6;
}
.task-mini-top{
  margin-bottom:10px;
}

/* 5) Keep pills readable and consistent */
.task-badges-row{
  margin-bottom:12px;
}
.task-badges-row .badge,
.task-badges-row .score-pill{
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset;
}

@media (max-width: 980px){
  .source-info-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
}
@media (max-width: 860px){
  .form-section-card{
    padding:18px 16px 16px;
  }
  .form-section-head{
    margin-bottom:16px;
    padding-bottom:14px;
  }
  .form-section-grid > label{
    min-height:auto;
  }
  .task-mini-rich > p{
    font-size:1rem;
  }
}

/* Module v15: exact global pill system for library/source views */

/* unified pill row */
.task-mini-top,
.task-badges-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.task-mini-top .badge,
.task-badges-row .badge,
.task-badges-row .score-pill{
  min-height:36px !important;
  padding:8px 15px !important;
  border-radius:999px !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  border:1px solid transparent !important;
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset !important;
}

/* pill 1: Core */
.task-mini-top .badge-core,
.task-badges-row .badge-core{
  background:var(--priority-core) !important;
  color:#ffffff !important;
  border-color:var(--priority-core) !important;
}

/* pill 2: Tier */
.task-mini-top .badge-quality,
.task-badges-row .badge-quality{
  background:color-mix(in srgb, var(--priority-nice) 48%, white) !important;
  color:#173c36 !important;
  border-color:color-mix(in srgb, var(--priority-nice) 68%, white) !important;
}

/* pill 3: approval-like pills = white bg + colored text + matching outline */
.task-mini-top .badge-approval,
.task-badges-row .badge-approval{
  background:#ffffff !important;
  color:var(--score-green) !important;
  border-color:color-mix(in srgb, var(--score-green) 74%, white) !important;
}
.task-mini-top .badge-conditional,
.task-badges-row .badge-conditional{
  background:#ffffff !important;
  color:var(--score-orange) !important;
  border-color:color-mix(in srgb, var(--score-orange) 74%, white) !important;
}
.task-mini-top .badge-approval.badge-avoid,
.task-mini-top .badge-avoid,
.task-badges-row .badge-approval.badge-avoid,
.task-badges-row .badge-avoid{
  background:#ffffff !important;
  color:var(--priority-avoid) !important;
  border-color:color-mix(in srgb, var(--priority-avoid) 72%, white) !important;
}
.task-mini-top .badge-later,
.task-badges-row .badge-later{
  background:#ffffff !important;
  color:#6c7389 !important;
  border-color:color-mix(in srgb, var(--priority-later) 82%, white) !important;
}

/* pill 4: score = tied to score scale */
.task-mini-top .badge-score,
.task-badges-row .badge-score,
.task-badges-row .score-pill{
  color:#ffffff !important;
}

.task-mini-top .badge-score.score-excellent,
.task-badges-row .badge-score.score-excellent,
.task-badges-row .score-pill.score-excellent{
  background:var(--score-green) !important;
  border-color:var(--score-green) !important;
}
.task-mini-top .badge-score.score-good,
.task-badges-row .badge-score.score-good,
.task-badges-row .score-pill.score-good{
  background:color-mix(in srgb, var(--score-green) 88%, white) !important;
  border-color:color-mix(in srgb, var(--score-green) 88%, white) !important;
}
.task-mini-top .badge-score.score-ok,
.task-badges-row .badge-score.score-ok,
.task-badges-row .score-pill.score-ok{
  background:var(--score-yellow) !important;
  border-color:var(--score-yellow) !important;
}
.task-mini-top .badge-score.score-weak,
.task-badges-row .badge-score.score-weak,
.task-badges-row .score-pill.score-weak{
  background:var(--score-orange) !important;
  border-color:var(--score-orange) !important;
}
.task-mini-top .badge-score.score-bad,
.task-badges-row .badge-score.score-bad,
.task-badges-row .score-pill.score-bad{
  background:var(--score-red) !important;
  border-color:var(--score-red) !important;
}

/* Module v16: restore score modal fill after pill fix */

/* Fallback: if row classes are missing, bars should still not look broken */
.score-bar-fill{
  background: linear-gradient(
    90deg,
    var(--score-red) 0%,
    var(--score-orange) 25%,
    var(--score-yellow) 50%,
    var(--score-lime) 72%,
    var(--score-green) 100%
  ) !important;
}

/* Value-specific overrides stay stronger than the fallback */
.score-row.score10-bad .score-bar-fill{
  background: linear-gradient(90deg, color-mix(in srgb, var(--score-red) 82%, #f6caca) 0%, var(--score-red) 100%) !important;
}
.score-row.score10-weak .score-bar-fill{
  background: linear-gradient(90deg, color-mix(in srgb, var(--score-orange) 82%, #f7dcc1) 0%, var(--score-orange) 100%) !important;
}
.score-row.score10-ok .score-bar-fill{
  background: linear-gradient(90deg, color-mix(in srgb, var(--score-yellow) 78%, #f1e3a7) 0%, var(--score-yellow) 100%) !important;
}
.score-row.score10-good .score-bar-fill{
  background: linear-gradient(90deg, color-mix(in srgb, var(--score-lime) 78%, #dce8b0) 0%, var(--score-lime) 100%) !important;
}
.score-row.score10-excellent .score-bar-fill{
  background: linear-gradient(90deg, color-mix(in srgb, var(--score-green) 78%, #cfe6d8) 0%, var(--score-green) 100%) !important;
}

/* UI addon: project list cards, collapsible project sections, safer mobile details */
.project-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.project-list-card{display:flex;flex-direction:column;gap:18px}
.project-list-card__head h3{margin:0 0 8px}
.project-list-card__sub{margin:0}
.project-list-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.project-list-card__meta-item{background:var(--surface-soft);border:1px solid var(--line);border-radius:16px;padding:14px}
.project-list-card__meta-item--full{grid-column:1/-1}
.project-list-card__actions{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}

.meta-card-copyable{position:relative}
.meta-card-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.meta-card-copyable .meta-label{margin:0}
.meta-card-copyable .meta-value{display:block;word-break:break-word;overflow-wrap:anywhere}
.meta-card-copyable .icon-only{flex:0 0 auto;align-self:flex-start}
.password-toggle{z-index:2;display:inline-flex;align-items:center;justify-content:center}
.users-form-actions .btn{max-width:100%}
.users-table-card,.users-table-wrap{min-width:0}

.project-section{margin-top:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);box-shadow:0 8px 22px rgba(18,39,41,.045);overflow:hidden}
.project-section > summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;cursor:pointer;font-weight:800;color:var(--primary-strong)}
.project-section > summary::-webkit-details-marker{display:none}
.project-section > summary::after{content:'▾';font-size:1rem;line-height:1;transition:transform .18s ease;color:var(--text-muted)}
.project-section:not([open]) > summary::after{transform:rotate(-90deg)}
.project-section__body{padding:0 18px 18px}
.project-section__body > .card:first-child,.project-section__body > .cards-grid:first-child,.project-section__body > .stats-grid:first-child{margin-top:0}
.project-section .top-space,.project-section .top-space-sm{margin-top:0}

@media (max-width: 900px){
  .project-card-grid{grid-template-columns:1fr}
  .project-list-card__meta{grid-template-columns:1fr}
  .page-head .page-actions .btn,.page-head .page-actions .btn.secondary{width:100%}
  .project-section{margin-top:14px}
  .project-section > summary{padding:16px 18px}
  .project-section__body{padding:0 14px 14px}
  .project-section__body .card{padding:16px}
  .meta-card-row{align-items:center}
  .project-meta-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .project-meta-grid{grid-template-columns:1fr}
  .users-page-grid{grid-template-columns:1fr}
  .meta-card-copyable .meta-value{font-size:1rem;line-height:1.5}
  .page-head{margin-bottom:18px}
}


.badge-source-group{background:#eef2ff;color:#334155;border:1px solid #dbe2ff}.badge-source-group-premium{background:#ecfdf5;color:#166534;border-color:#bbf7d0}.badge-source-group-institutional{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.badge-source-group-check_only{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.badge-source-group-risk_observation{background:#fef2f2;color:#991b1b;border-color:#fecaca}.task-group-head{display:flex;justify-content:space-between;align-items:end;margin:0 0 14px}.task-group-head h2{margin:0 0 4px;font-size:1.05rem}.task-group+.task-group{margin-top:20px}


/* Source group badge / grouping refinements */
.badge-source-group{
  background: color-mix(in srgb, var(--primary) 10%, #ffffff);
  color: var(--primary-strong);
  border-color: color-mix(in srgb, var(--primary) 20%, #ffffff);
}
.badge-source-group-premium_profile{
  background: color-mix(in srgb, #8b5cf6 16%, #ffffff);
  color: #6d28d9;
  border-color: color-mix(in srgb, #8b5cf6 28%, #ffffff);
}
.badge-source-group-institutional{
  background: color-mix(in srgb, #0f766e 16%, #ffffff);
  color: #0f766e;
  border-color: color-mix(in srgb, #0f766e 26%, #ffffff);
}
.badge-source-group-editorial{
  background: color-mix(in srgb, #b45309 16%, #ffffff);
  color: #92400e;
  border-color: color-mix(in srgb, #b45309 26%, #ffffff);
}
.task-group-card{
  border-radius: 22px;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,251,252,.98) 100%);
  box-shadow: 0 6px 18px rgba(18,39,41,.035);
  padding: 18px;
  margin-bottom: 18px;
}
.task-group-card .task-group-head{
  margin-bottom: 16px;
}
.task-group-card.group-premium_profile{
  border-color: color-mix(in srgb, #8b5cf6 22%, var(--line));
}
.task-group-card.group-editorial{
  border-color: color-mix(in srgb, #b45309 22%, var(--line));
}


.task-check-box {
  border: 1px solid rgba(18, 38, 63, 0.08);
  border-radius: 12px;
  padding: 12px 14px;
  background: rgba(248, 250, 252, 0.9);
}
.task-check-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}
.badge-verified { background:#e8f7ee; color:#1f7a4d; }
.badge-candidate { background:#eef4ff; color:#3458a1; }
.badge-manual { background:#fff5e8; color:#9b6517; }
.badge-not-found { background:#f3f4f6; color:#5b6472; }


.listing-data-card {
  border: 1px solid rgba(18,38,63,.08);
  border-radius: 14px;
  padding: 14px 16px;
  background: #f8fafc;
}
.listing-data-card.compact { padding: 12px 14px; }
.listing-data-title {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--ink-strong, #17353d);
  margin-bottom: 10px;
}
.listing-found-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}
.listing-found-grid.compact { grid-template-columns: repeat(2, minmax(0,1fr)); }
.listing-found-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.listing-found-label, .listing-nap-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #6b7b85;
  font-weight: 700;
}
.listing-found-value, .listing-nap-value {
  color: #17353d;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.link-inline { color: #135c66; text-decoration: underline; }
.listing-nap-table {
  display: grid;
  gap: 8px;
}
.listing-nap-head, .listing-nap-row {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) minmax(0, 1fr) 120px;
  gap: 12px;
  align-items: center;
}
.listing-nap-head {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #6b7b85;
}
.listing-nap-row {
  border-top: 1px solid rgba(18,38,63,.08);
  padding-top: 8px;
}
.listing-nap-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.listing-nap-badge.nap-match { background: #e7f7ee; color: #1f7a4d; }
.listing-nap-badge.nap-mismatch { background: #fdecec; color: #b42318; }
.listing-nap-badge.nap-missing { background: #f3f4f6; color: #667085; }
.listing-nap-badge.nap-partial { background: #fff4e5; color: #b26b00; }
.listing-nap-badge.nap-unknown { background: #eef2f6; color: #56626b; }
@media (max-width: 900px) {
  .listing-found-grid, .listing-found-grid.compact { grid-template-columns: 1fr; }
  .listing-nap-head { display: none; }
  .listing-nap-row {
    grid-template-columns: 1fr;
    gap: 6px;
    border: 1px solid rgba(18,38,63,.08);
    border-radius: 12px;
    padding: 10px;
    background: #fff;
  }
  .listing-nap-badge { justify-content: flex-start; width: fit-content; }
}

.listing-entry-form.one-col{grid-template-columns:minmax(260px,420px)}
.listing-entry-form select{max-width:420px}


/* Listing check loader */
.listing-check-loader-overlay[hidden]{display:none !important;}
.listing-check-loader-overlay{
  position:fixed;
  inset:0;
  background:rgba(16,33,35,.28);
  backdrop-filter:blur(2px);
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.listing-check-loader-modal{
  width:min(100%, 470px);
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:0 18px 60px rgba(16,33,35,.18);
  padding:28px 28px 22px;
  text-align:center;
}
.listing-check-loader-modal h3{margin:12px 0 8px;}
.listing-check-loader-modal p{margin:0 0 16px;color:var(--muted);}
.listing-check-loader-spinner{
  width:44px;height:44px;border-radius:50%;
  border:4px solid rgba(33,104,106,.14);
  border-top-color:var(--primary);
  margin:0 auto;
  animation:listingCheckSpin .8s linear infinite;
}
@keyframes listingCheckSpin{to{transform:rotate(360deg);}}
.listing-check-loader-bar{
  height:10px;border-radius:999px;background:#eef3f4;overflow:hidden;margin:0 0 14px;
}
.listing-check-loader-bar-fill{
  display:block;height:100%;width:42%;
  background:linear-gradient(90deg, var(--primary), #79b3b4);
  border-radius:999px;
  animation:listingCheckBar 1.4s ease-in-out infinite;
}
@keyframes listingCheckBar{
  0%{transform:translateX(-110%); width:30%;}
  50%{transform:translateX(70%); width:48%;}
  100%{transform:translateX(250%); width:30%;}
}
.listing-check-loader-steps{
  display:flex;gap:10px;justify-content:center;flex-wrap:wrap;
}
.listing-check-loader-steps span{
  padding:8px 12px;border-radius:999px;background:#f4f7f8;color:var(--text);font-size:.9rem;
}
body.listing-check-loading{cursor:progress;}
