/* SQL Server Health Check (/sql-server-health-check/) */

/* Hero: Berichtszusammenfassung als schwebende Karte */
.hc-summary{background:#fff;border-color:rgba(5,28,44,.12)}
.hc-summary .shot-bar{background:#0f2a3d}
.hc-sum-body{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;padding:22px 24px 24px;color:var(--ink)}
.hc-amp{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.hc-amp li{display:grid;grid-template-columns:18px 1fr;column-gap:12px;align-items:center;padding:8px 10px;border-radius:10px;background:var(--blue-50);font-weight:600;font-size:.9rem;line-height:1.3}
.hc-amp small{grid-column:2;font-weight:400;font-size:.78rem;color:var(--muted)}
.amp{grid-row:span 2;width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 4px rgba(0,0,0,.04)}
.amp.g{background:#2f9e6a}.amp.y{background:#e0a100}.amp.r{background:#d2372c}
.hc-top3{border-left:3px solid var(--orange);padding-left:16px;align-self:start}
.hc-top3 b{font-family:var(--display);font-weight:600;font-size:1.05rem;line-height:1.2;display:block;margin-bottom:10px}
.hc-top3 ol{margin:0;padding-left:1.1em;font-size:.88rem;color:var(--ink-2);display:flex;flex-direction:column;gap:8px;line-height:1.4}
/* Ampeln leuchten nacheinander auf */
.hc-ready .hc-amp li{opacity:0;transform:translateX(14px)}
.hc-ready .hc-amp.on li{opacity:1;transform:none;transition:opacity .5s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i,0) * 90ms)}

/* Immer gleich / zugeschnitten */
.hc-fix{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.hc-fix-col{border-radius:var(--radius);padding:32px 34px}
.hc-fix-col.fixed{background:var(--blue);color:#fff}
.hc-fix-col.tailored{background:var(--orange-100);color:var(--ink)}
.hc-tag{display:inline-block;font-family:var(--mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px}
.fixed .hc-tag{color:#ffc79a}.tailored .hc-tag{color:var(--orange-600)}
.hc-fix-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.hc-fix-col li b{display:block;font-family:var(--display);font-weight:600;font-size:1.25rem;line-height:1.2;margin-bottom:2px}
.fixed li{color:#d4e6f3}.fixed li b{color:#fff}
.tailored li{color:var(--ink-2)}.tailored li b{color:var(--ink)}
.hc-note{margin:22px 0 0;padding:20px 24px;border:1px dashed var(--blue-300);border-radius:var(--radius-sm);max-width:none;color:var(--ink-2)}
.hc-note b{color:var(--ink)}

/* Ablauf */
.hc-work{align-items:start}
.hc-work .console{position:sticky;top:120px}
.hc-work .console pre{min-height:290px}
.hc-opt{font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--orange-600);background:var(--orange-100);border-radius:999px;padding:3px 9px;vertical-align:4px;margin-left:6px}

/* Prüfraster */
.hc-raster .col-card ul{margin:0;padding:0 0 0 1.05em;color:var(--ink-2);font-size:.95rem;display:flex;flex-direction:column;gap:6px}
.hc-raster .col-card li::marker{color:var(--orange)}

/* Zuschnitte: Reiter, Beschreibung, Matrix */
.hc-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.hc-tabs button{font:inherit;font-weight:600;font-size:.95rem;padding:11px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}
.hc-tabs button:hover{border-color:var(--blue);transform:translateY(-2px)}
.hc-tabs button[aria-selected="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.hc-tabs button:focus-visible,.hc-matrix button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.hc-zu{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:start}
.hc-panels{position:relative}
.hc-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 36px}
.hc-panel + .hc-panel{margin-top:18px}
.hc-ready .hc-panels.tabbed .hc-panel{margin-top:0}
.hc-ready .hc-panels.tabbed .hc-panel:not(.on){display:none}
.hc-ready .hc-panels.tabbed .hc-panel.on{animation:hcIn .45s var(--ease)}
@keyframes hcIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hc-kicker{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--orange-600)}
.hc-panel h3{font-size:1.9rem;margin:8px 0 12px}
.hc-q{font-family:var(--display);font-weight:500;font-size:1.3rem;line-height:1.3;color:var(--blue);margin:0 0 22px}
.hc-panel dl{margin:0;display:grid;grid-template-columns:150px 1fr;gap:14px 20px}
.hc-panel dt{font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:4px}
.hc-panel dd{margin:0;color:var(--ink-2);font-size:.97rem}
.hc-more{display:inline-block;margin-top:22px;font-weight:650;color:var(--blue);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:2px}

.hc-matrix-wrap{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 18px 16px;overflow-x:auto}
.hc-matrix{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem}
.hc-matrix caption{caption-side:top;text-align:left;font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 6px 14px}
.hc-matrix th,.hc-matrix td{padding:9px 4px;text-align:center;border-bottom:1px solid var(--blue-50)}
.hc-matrix tbody th{text-align:left;font-weight:600;color:var(--ink);padding-right:12px;line-height:1.3;min-width:150px}
.hc-matrix thead th{border-bottom:1px solid var(--line)}
.hc-matrix thead th:first-child{text-align:left;font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500}
.hc-matrix thead button{font:inherit;font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:0;color:var(--ink-2);background:none;border:0;padding:6px 4px;border-radius:8px;cursor:pointer;transition:background .2s,color .2s}
.hc-matrix thead button:hover{background:var(--blue-50);color:var(--blue)}
.hc-matrix td::before,.hc-legend .dot{content:"";display:inline-block;width:16px;height:16px;border-radius:50%;vertical-align:middle;box-sizing:border-box}
.hc-matrix td.d2::before,.hc-legend .d2{background:var(--blue)}
.hc-matrix td.d1::before,.hc-legend .d1{border:2px solid var(--blue-300);background:#fff}
.hc-matrix td.d0::before,.hc-legend .d0{width:12px;height:2px;border-radius:2px;background:var(--line)}
.hc-matrix td::before{transition:transform .4s var(--ease),background .3s,border-color .3s}
/* Gewählte Spalte hervorheben (Klasse auf der Tabelle: col-1 … col-6) */
.hc-matrix [data-col],.hc-matrix td{transition:background .3s}
.hc-matrix.c1 tr > :nth-child(2),.hc-matrix.c2 tr > :nth-child(3),.hc-matrix.c3 tr > :nth-child(4),
.hc-matrix.c4 tr > :nth-child(5),.hc-matrix.c5 tr > :nth-child(6),.hc-matrix.c6 tr > :nth-child(7){background:var(--orange-100)}
.hc-matrix.c1 thead th:nth-child(2) button,.hc-matrix.c2 thead th:nth-child(3) button,.hc-matrix.c3 thead th:nth-child(4) button,
.hc-matrix.c4 thead th:nth-child(5) button,.hc-matrix.c5 thead th:nth-child(6) button,.hc-matrix.c6 thead th:nth-child(7) button{color:var(--orange-600)}
.hc-matrix.c1 td:nth-child(2).d2::before,.hc-matrix.c2 td:nth-child(3).d2::before,.hc-matrix.c3 td:nth-child(4).d2::before,
.hc-matrix.c4 td:nth-child(5).d2::before,.hc-matrix.c5 td:nth-child(6).d2::before,.hc-matrix.c6 td:nth-child(7).d2::before{background:var(--orange);transform:scale(1.2)}
.hc-matrix.c1 td:nth-child(2).d1::before,.hc-matrix.c2 td:nth-child(3).d1::before,.hc-matrix.c3 td:nth-child(4).d1::before,
.hc-matrix.c4 td:nth-child(5).d1::before,.hc-matrix.c5 td:nth-child(6).d1::before,.hc-matrix.c6 td:nth-child(7).d1::before{border-color:var(--orange)}
.hc-matrix thead th:nth-child(2){border-radius:10px 10px 0 0}
.hc-matrix tbody tr:hover th{color:var(--blue)}
/* Punkte der gewählten Spalte „pulsen“ nacheinander ein */
.hc-matrix td.pop::before{animation:hcPop .5s var(--ease) both;animation-delay:calc(var(--r,0) * 45ms)}
@keyframes hcPop{0%{transform:scale(.2)}60%{transform:scale(1.45)}100%{transform:scale(1.2)}}
.hc-legend{display:flex;flex-wrap:wrap;gap:18px;margin:14px 6px 0;font-size:.82rem;color:var(--muted)}
.hc-legend span{display:inline-flex;align-items:center;gap:8px}
.hc-legend .dot{width:13px;height:13px}.hc-legend .d0{width:12px;height:2px}

.hc-extra{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 30px;margin-top:22px;padding:20px 26px;border-radius:var(--radius-sm);background:#fff;border:1px solid var(--line)}
.hc-extra p{margin:0;color:var(--ink-2)}
.hc-extra b{color:var(--ink)}
.hc-extra a{font-weight:650;color:var(--blue);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:2px}

/* Bericht */
.hc-report{margin-top:28px}
#ergebnis .console pre{min-height:340px}

/* Dunkler Abschnitt „Liste vs. Einordnung“ */
.hc-dark .checks li{color:#fff}
.hc-dark .checks span{color:#b9cddb}
.hc-dark .lead{color:#c3d6e4}
.hc-dark .lead a{color:#9ccbea}
.hc-dark .eyebrow{color:#9ccbea}

/* „Danach“: nicht verlinkte Karten ohne Hover-Sprung */
div.occ:hover{transform:none;box-shadow:none;background:var(--blue-50)}

@media (max-width:1100px){
  .hc-zu{grid-template-columns:1fr}
}
@media (max-width:960px){
  .hc-fix{grid-template-columns:1fr}
  .hc-work .console{position:static}
  .hc-panel{padding:26px 22px}
  .hc-panel dl{grid-template-columns:1fr;gap:4px}
  .hc-panel dd{margin-bottom:12px}
  .hc-matrix-wrap{padding:16px 10px 12px}
  .hc-matrix{font-size:.84rem}
  .hc-matrix tbody th{min-width:112px}
}
@media (prefers-reduced-motion:reduce){
  .hc-ready .hc-amp li{opacity:1;transform:none}
  .hc-matrix td.pop::before,.hc-ready .hc-panels.tabbed .hc-panel.on{animation:none}
}

/* F-065: Titel in zwei Zeilen, über die volle Breite (die Berichtskarte sitzt weiter unten) */
.page-hero.with-shot.hc-hero .wrap > h1{max-width:none;font-size:clamp(2.2rem,4.4vw,4.4rem)}

/* F-067: PSG QX im intensiven Healthcheck */
.hc-qx{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center;margin-top:22px;padding:40px 44px;border-radius:var(--radius);background:var(--navy);color:#fff}
.hc-qx h3{font-size:clamp(1.6rem,2.4vw,2.2rem);margin:10px 0 14px;color:#fff}
.hc-qx > div > p{color:#c3d6e4;margin:0 0 22px}
.hc-qx .hc-kicker{color:#ffc79a}
.hc-qx .checks li{color:#fff}
.hc-qx .checks li b{color:#fff}
.hc-qx .checks{color:#b9cddb}
.hc-qx .hc-more{color:#9ccbea;margin-top:8px}
.hc-qx .shot{transform:perspective(1400px) rotateY(-6deg);box-shadow:0 40px 80px rgba(0,0,0,.45)}
@media (max-width:960px){
  .hc-qx{grid-template-columns:1fr;padding:28px 22px;gap:28px}
  .hc-qx .shot{transform:none}
}

/* F-068: Berichtskarte im Hero etwas tiefer */
.page-hero.with-shot.hc-hero .hero-shot{bottom:-100px}
.page-hero.with-shot.hc-hero{margin-bottom:120px}
@media (max-width:1100px){.page-hero.with-shot.hc-hero{margin-bottom:0}}

/* Sprungziele: nicht unter der Kopfleiste landen */
#zuschnitte,.hc-qx{scroll-margin-top:110px}
