/* ============================================================
   Light-Theme – als body.light-Override in website-security-report.css
   einfügen (am Ende der Datei)
   ============================================================ */

body.light {
  --bg-page:        #f0f2f5;
  --bg-container:   #ffffff;
  --bg-surface:     #f8f9fb;
  --bg-sunken:      #eef0f4;
  --text-primary:   #0f172a;
  --text-secondary: #475569;
  --text-muted:     #94a3b8;
  --border-default: #d1d9e6;
  --border-strong:  #b0bccf;
  --border-subtle:  #e8ecf2;

  --clr-critical-bg:   #fff1f1;
  --clr-critical-bdr:  #f87171;
  --clr-critical-text: #991b1b;
  --clr-critical-acc:  #dc2626;
  --clr-high-bg:       #fff7ed;
  --clr-high-bdr:      #fb923c;
  --clr-high-text:     #9a3412;
  --clr-high-acc:      #ea580c;
  --clr-medium-bg:     #fffbeb;
  --clr-medium-bdr:    #fbbf24;
  --clr-medium-text:   #92400e;
  --clr-medium-acc:    #d97706;
  --clr-low-bg:        #eff6ff;
  --clr-low-bdr:       #60a5fa;
  --clr-low-text:      #1e40af;
  --clr-low-acc:       #2563eb;
  --clr-ok-bg:         #f0fdf4;
  --clr-ok-bdr:        #4ade80;
  --clr-ok-text:       #166534;
  --clr-ok-acc:        #16a34a;
  --clr-info-bg:       #f0f9ff;
  --clr-info-bdr:      #38bdf8;
  --clr-info-text:     #0c4a6e;
  --clr-info-acc:      #0284c7;

  --shadow-sm: 0 1px 3px rgba(15,23,42,.08), 0 1px 2px rgba(15,23,42,.04);
  --shadow-md: 0 4px 12px rgba(15,23,42,.10), 0 2px 4px rgba(15,23,42,.06);
  --shadow-lg: 0 8px 24px rgba(15,23,42,.12), 0 4px 8px rgba(15,23,42,.06);

  color: var(--text-primary);
  background: var(--bg-page);
}

/* ── Container ── */
body.light .container {
  background: var(--bg-container);
  border: 1px solid var(--border-default);
}

/* ── Header ── */
body.light header {
  background: #ffffff;
  color: var(--text-primary);
  border-bottom: 1px solid var(--border-default);
}
body.light header h1 { color: var(--text-primary); }
body.light .report-domain { color: #1d4ed8; }
body.light .meta-info { color: var(--text-secondary); border-top: 1px solid var(--border-subtle); }
body.light .meta-info div strong { color: var(--text-primary); }

/* ── Footer ── */
body.light footer {
  background: var(--bg-surface);
  color: var(--text-secondary);
  border-top: 1px solid var(--border-default);
}
body.light footer strong { color: var(--text-primary); }

/* ── Top-Bar ── */
body.light .top-bar {
  background: #ffffff;
  border: 1px solid var(--border-default);
}
body.light .site-info h1      { color: var(--text-primary); }
body.light .site-info__domain { color: var(--text-primary); }
body.light .site-info__url    { color: var(--text-secondary) !important; }
body.light .stat-value        { color: var(--text-primary) !important;}

/* ── Score-Strip ── */
body.light .score-strip {
  background: var(--border-default);
  border: 1px solid var(--border-default);
}
body.light .score-segment           { background: var(--bg-container); }
body.light .score-segment.overview  { background: #f8fafc; }
body.light .score-segment.security  { background: #fff5f5; }
body.light .score-segment.seo       { background: #eff6ff; }
body.light .score-segment.accessibility { background: #f5f3ff; }
body.light .score-segment.performance   { background: #f0fdf4; }
body.light .score-segment.colors    { background: #fffbeb; }
body.light .score-segment.tech      { background: #fff7ed; }
body.light .segment-title  { color: var(--text-primary); }
body.light .segment-badge  { background: rgba(0,0,0,.07); border: 1px solid rgba(0,0,0,.05); }
body.light .metric-row     { color: var(--text-secondary); }
body.light .metric-value   { color: var(--text-primary); }

/* ── Screenshot / Farbpunkte ── */
body.light .screenshot-mini  { background: var(--bg-surface); border: 1px solid var(--border-default); }
body.light .screenshot-label { background: var(--bg-sunken); color: var(--text-muted); }
body.light .color-dot        { border: 2px solid var(--border-default); }
body.light .color-swatch     { border: 2px solid var(--border-default); }

/* ── Content ── */
body.light .content { background: #ffffff; }

/* Inline-dark-Boxen aufhellen */
body.light .content > div[style*="background: #1e293b"],
body.light .content > div[style*="background:#1e293b"] {
  background: var(--bg-surface) !important;
  border: 1px solid var(--border-default) !important;
  color: var(--text-primary) !important;
}
body.light a[style*="#1e293b"],
body.light a[style*="background: linear-gradient(135deg, #1e293b"] {
  background: var(--bg-surface) !important;
  border-color: var(--border-default) !important;
  color: var(--text-primary) !important;
}
body.light a[href^="#"]:hover {
  background: linear-gradient(135deg, #1d4ed8 0%, #4f46e5 100%) !important;
  border-color: transparent !important;
}
body.light button[onclick="window.print()"] {
  background: linear-gradient(135deg, var(--clr-low-bg) 0%, #dbeafe 100%) !important;
  border-color: var(--clr-low-bdr) !important;
  color: var(--clr-low-acc) !important;
}

/* ── Headings ── */
body.light h2 { color: var(--text-primary); border-bottom: 3px solid #1d4ed8; }
body.light h3 { color: var(--text-primary); }
body.light h4 { color: var(--text-secondary); }

/* ── Stats-Grid ── */
body.light .stats-grid {
  background: var(--bg-sunken);
  border: 1px solid var(--border-subtle);
}
body.light .stat-item {
  background: var(--bg-container);
  border: 1px solid var(--border-subtle);
  border-left: 3px solid var(--border-default);
}

/* ── Issue / Vuln Cards ── */
body.light .issue-card,
body.light .vuln-card {
  background: var(--bg-container);
  border: 1px solid var(--border-default);
  border-left: 4px solid var(--border-default);
}
body.light .issue-card.error,
body.light .vuln-card.CRITICAL { border-left-color: var(--clr-critical-acc); background: var(--clr-critical-bg); }
body.light .issue-card.warning,
body.light .vuln-card.HIGH     { border-left-color: var(--clr-high-acc);     background: var(--clr-high-bg); }
body.light .vuln-card.MEDIUM   { border-left-color: var(--clr-medium-acc);   background: var(--clr-medium-bg); }
body.light .vuln-card.LOW      { border-left-color: var(--clr-low-acc);      background: var(--clr-low-bg); }
body.light .issue-card.info    { border-left-color: var(--clr-info-bdr);     background: var(--clr-info-bg); }
body.light .issue-card.LOW     { border-left-color: var(--clr-low-bdr);      background: var(--clr-low-bg); }
body.light .issue-message      { color: var(--text-primary); }
body.light .issue-details      { color: var(--text-secondary); }
body.light .issue-details2 {
  background: var(--bg-surface);
  border-left: 3px solid var(--border-default);
}

/* ── Info/Warning/Error/Success-Boxen ── */
body.light .info-box    { background: var(--clr-info-bg);     border-left-color: var(--clr-info-bdr);     color: var(--clr-info-text); }
body.light .warning-box { background: var(--clr-medium-bg);   border-left-color: var(--clr-medium-bdr);   color: var(--clr-medium-text); }
body.light .error-box   { background: var(--clr-critical-bg); border-left-color: var(--clr-critical-bdr); color: var(--clr-critical-text); }
body.light .success-box { background: var(--clr-ok-bg);       border-left-color: var(--clr-ok-bdr);       color: var(--clr-ok-text); }

/* ── Meta-Card ── */
body.light .meta-card {
  background: var(--bg-surface);
  border: 1px solid var(--border-subtle);
}
body.light .meta-card h4      { color: var(--text-secondary); }
body.light .meta-card .content { color: var(--text-primary); }

/* ── Recommendation / Code-Snippet ── */
body.light .recommendation {
  background: var(--clr-low-bg);
  border-left-color: var(--clr-low-bdr);
  color: var(--clr-low-text);
}
body.light .code-snippet {
  background: #f8fafc;
  color: #1e293b;
  border: 1px solid var(--border-default);
}

/* ── Tabellen ── */
body.light table  { background: var(--bg-container); }
body.light th     { background: var(--bg-sunken); color: var(--text-primary); border-bottom: 1px solid var(--border-default); }
body.light td     { color: var(--text-secondary); border-bottom: 1px solid var(--border-subtle); }
body.light tr:hover           { background: var(--bg-surface); }
body.light tr:hover td        { color: var(--text-primary); }
body.light .table-responsive a { color: var(--clr-low-acc) !important; }

/* ── Tech-Badge / Tile ── */
body.light .tech-badge {
  background: #eff6ff;
  color: #1d4ed8;
  border: 1px solid #bfdbfe;
}
body.light .tech-tile {
  background: var(--bg-container);
  border: 1px solid var(--border-default);
}


.light .tech-tile:hover   { background: #f1f5f9; border-color: #94a3b8; }
.light .tech-tile__name   { color: #1e293b; }
.light .tech-tile__version{ color: #64748b; }
.light .tech-tile__conf--high   { color: #16a34a; }
.light .tech-tile__conf--medium { color: #d97706; }
.light .tech-tile__conf--low    { color: #dc2626; }
.light .tech-tile__conf--unknown{ color: #94a3b8; }
.light .tech-tile__type   { color: #94a3b8; }
.light .tech-tile__source { color: #3b82f6; }
.light .tech-tile__url    { color: #64748b; }


/* ── Score-Ring ── */
body.light .score-ring { background: var(--bg-surface); }

/* ── Progress-Bar ── */
body.light .progress-bar {
  background: var(--bg-sunken);
  border: 1px solid var(--border-subtle);
}

/* ── Summary-Grid ── */
body.light .summary-grid { background: var(--border-default); }
body.light .summary-card {
  background: linear-gradient(135deg, var(--bg-surface), var(--bg-sunken));
}
body.light .summary-card h3    { color: var(--text-secondary); }
body.light .summary-card .subtext { color: var(--text-muted); }

/* ── Diag-Wrapper ── */
body.light .diag-header {
  background: linear-gradient(90deg, #fffbeb 0%, #fef3c7 100%);
  border-bottom: 1px solid #fde68a;
}
body.light .diag-title  { color: #92400e; }
body.light .diag-body   { background: #fffef5; color: #44403c; }
body.light .diag-body h2 { color: #92400e; border-bottom: 1px solid #fde68a; }
body.light .diag-body p  { color: #57534e; }
body.light .diag-body pre {
  background: #fafaf9;
  border: 1px solid #d6d3d1;
}
body.light .diag-body code { color: #0f766e; }
body.light .diag-body pre code.language-nginx { color: #1e40af; }
body.light .diag-helptext {
  border-left-color: #1d4ed8;
  background: #f0f6ff;
}
body.light .diag-helptext ul { color: #334155; }

/* ── Suppressed ── */
body.light .suppressed-toggle {
  color: var(--text-secondary);
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
}
body.light .suppressed-toggle:hover { color: var(--text-primary); }

/* ── Section-Header-Bar ── */
body.light .section-header-bar.startpage {
  background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
  border-left-color: #2563eb;
  color: #1e3a5f;
}
body.light .section-header-bar.subpage {
  background: var(--bg-surface);
  border-left-color: var(--border-default);
  color: var(--text-secondary);
}
body.light .shb-badge   { background: rgba(0,0,0,.08); color: var(--text-secondary); }
body.light .shb-warning { background: #fef3c7; border-left-color: #f59e0b; color: #92400e; }

/* ── Tooltip ── */
body.light .tooltip-box {
  background: #1e293b;
  color: #f1f5f9;
  border: 1px solid #334155;
}
body.light [data-tooltip]::after {
  background: #1e293b;
  color: #fff;
}

/* ── Toggle-Buttons ── */
body.light .report-toggle  { border: 2px solid #1d4ed8; }
body.light .toggle-btn     { background: #fff; color: #1d4ed8; }
body.light .toggle-btn:not(:last-child) { border-right: 2px solid #1d4ed8; }
body.light .toggle-btn.active           { background: #1d4ed8; color: #fff; }
body.light .toggle-btn:hover:not(.active) { background: #eff6ff; }

/* ── ch-Blöcke ── */
body.light .ch-container        { background: var(--bg-container); border: 1px solid var(--border-default); }
body.light .ch-container-header { background: var(--bg-surface); border-bottom: 1px solid var(--border-default); }
body.light .ch-container-icon   { background: var(--bg-sunken); }
body.light .ch-container-title  { color: var(--text-primary); }
body.light .ch-container-badge  { background: var(--clr-critical-bg); color: var(--clr-critical-text); border: 1px solid var(--clr-critical-bdr); }
body.light .ch-block    { background: var(--bg-container); border: 1px solid var(--border-default); }
body.light .ch-neutral  { border-left-color: var(--border-strong); }
body.light .ch-ok       { border-left-color: var(--clr-ok-acc); }
body.light .ch-crit     { border-left-color: var(--clr-critical-acc); }
body.light .ch-warn     { border-left-color: var(--clr-medium-acc); }
body.light .ch-summary  { background: var(--bg-surface); }
body.light .ch-summary:hover { background: var(--bg-sunken); }
body.light .ch-title    { color: var(--text-primary); }
body.light .ch-arrow    { color: var(--text-muted); }
body.light .ch-body     { border-top: 1px solid var(--border-subtle); }
body.light .ch-p        { color: var(--text-secondary); }
body.light .ch-list li  { color: var(--text-secondary); }
body.light .ch-list li strong { color: var(--text-primary); }
body.light .ch-list li em     { color: var(--text-muted); }

/* ── URL-Warnings ── */
body.light ul.url-warnings {
  background: #fffbeb;
  border-left-color: #f59e0b;
  color: #78350f;
}
body.light ul.url-warnings a { color: #1d4ed8; }

/* ── CTA-Widget ── */
body.light .cta-report-widget { background: var(--bg-container); border: 1px solid var(--border-default); }
body.light .crw-icon-col      { background: var(--bg-sunken); border: 1px solid var(--border-default); }
body.light .crw-title         { color: var(--text-primary); }
body.light .crw-score         { background: var(--bg-sunken); border: 1px solid var(--border-subtle); }
body.light .crw-footer        { background: var(--bg-surface); border-top: 1px solid var(--border-subtle); color: var(--text-muted); }
body.light .crw-secondary     { border: 1px solid var(--border-default); color: var(--text-secondary); }
body.light .crw-secondary:hover { border-color: #1d4ed8; color: #1d4ed8; }

/* ── Error-Liste ── */
body.light .error-list {
  background: var(--clr-critical-bg);
  border-left-color: var(--clr-critical-bdr);
}
body.light .error-list li { color: var(--clr-critical-text); }
body.light details.error-details {
  background: #fff5f5;
  border-left-color: var(--clr-critical-bdr);
  color: var(--clr-critical-text);
}

/* ── Details/Summary ── */
body.light details > summary::before { color: #1d4ed8; }
body.light .info-box-summary { color: var(--text-secondary); }
body.light .info-box-details  { background: var(--bg-surface); color: var(--text-secondary); }

/* ── Meaning / Misc ── */
body.light .meaning        { border-left-color: var(--border-default); color: var(--text-secondary); }
body.light .toggle-details { color: var(--clr-low-acc); }
body.light .dedup-hint     { color: var(--text-muted); }
body.light .cookie-name    { color: var(--text-secondary); }
body.light .more-toggle    { color: var(--clr-low-acc); }

/* ── Form-Snippet ── */
body.light .form-snippet { background: var(--bg-sunken); border: 1px solid var(--border-subtle); }
body.light .form-snippet code { color: #0f766e; }

/* ── Fields-Table ── */
body.light .fields-table th { background: var(--bg-sunken); color: var(--text-secondary); border-bottom: 1px solid var(--border-default); }
body.light .fields-table td { color: var(--text-secondary); border-bottom: 1px solid var(--border-subtle); }
body.light .fields-table tr:hover td { background: var(--bg-surface); }

/* ── Expand-Btn ── */
body.light .expand-btn { border: 1px solid var(--border-default); color: var(--text-secondary); }
body.light .expand-btn:hover { background: var(--bg-sunken); }

/* ── A11y ── */
body.light .a11y-help--group  { border: 1px solid var(--border-default); }
body.light .a11y-help__item   { border-top: 1px solid var(--border-subtle); }
body.light .a11y-help__summary { color: var(--text-secondary); }
body.light .a11y-help__summary::before { color: var(--text-muted); }
body.light .a11y-help__summary:hover   { color: var(--text-primary); }
body.light .a11y-help__body   { color: var(--text-secondary); }



/* DNS-Diagnose */
.light .dns-diag-item--ok    { background: #e6f4ee; border-left-color: #2d6a4f; }
.light .dns-diag-item--info  { background: #e8f0fb; border-left-color: #2d5a8a; }
.light .dns-diag-item--warn  { background: #fef9ec; border-left-color: #8a6a2d; }
.light .dns-diag-item--error { background: #fdecea; border-left-color: #8a2d2d; }
.light .dns-diag-item__rtype { background: #dbeafe; color: #1e40af; }
.light .dns-diag-item__title { color: #1e293b; }
.light .dns-diag-item__detail{ color: #475569; }
.light .dns-help-link        { color: #2563eb; border-color: #93c5fd; }
.light .dns-help-link:hover  { background: #dbeafe; }

/* Quicklink */
.light .quicklink            { background: linear-gradient(135deg,#f1f5f9 0%,#e2e8f0 100%); border-color: #cbd5e1; color: #3b3f45; }
.light .quicklink:hover      { border-color: #94a3b8; }


/* acc-report-banner */
.light .acc-report-banner    { background: linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%); border-color: #93c5fd; border-left-color: #2563eb; }
.light .acc-report-label     { color: #1d4ed8; }
.light .acc-report-title     { color: #1e293b; }
.light .acc-report-tag       { background: #eff6ff; border-color: #bfdbfe; }
.light .acc-report-tag-name  { color: #1d4ed8; }
.light .acc-report-tag-desc  { color: #3b82f6; }
.light .acc-report-example-note { background: #eff6ff; border-color: #bfdbfe; color: #1d4ed8; }


/* Seitentypen */
.light .page-types-infobox__title { color: #1e40af; }
.light .page-type-card        { background: #f8fafc; border-color: inherit; }
.light .page-type-url         { color: #2563eb; }
.light .itf-cell              { color: #64748b; }
.light .repeat-hint           { background: #eef2ff; border-left-color: #6366f1; color: #4338ca; }
.light .repeat-hint__label    { color: #4338ca; }
.light .repeat-hint__link     { color: #4338ca; }
.light .repeat-badge--cookie  { background: #fde68a; color: #78350f; }
.light .repeat-badge--search  { background: #c7d2fe; color: #3730a3; }
.light .repeat-badge--login   { background: #fecaca; color: #991b1b; }
.light .repeat-badge--repeated{ background: #e2e8f0; color: #475569; }

.light .banner-dev    { background: repeating-linear-gradient(-45deg,#fef3c7,#fef3c7 14px,#fde68a 14px,#fde68a 28px); border-color: #d97706; box-shadow: 0 0 0 4px #fde68a44; }
.light .banner-demo   { background: repeating-linear-gradient(-45deg,#eff6ff,#eff6ff 14px,#dbeafe 14px,#dbeafe 28px); border-color: #3b82f6; box-shadow: 0 0 0 4px #bfdbfe44; }
.light .banner-no-ssl { background: linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%); border-color: #ef4444; }
.light .banner-dev  .banner-title  { color: #92400e; }
.light .banner-demo .banner-title  { color: #1e40af; }
.light .banner-no-ssl .banner-title{ color: #991b1b; }
.light .banner-dev  .banner-text   { color: #78350f; }
.light .banner-demo .banner-text   { color: #1d4ed8; }
.light .banner-no-ssl .banner-text { color: #b91c1c; }

.light .tech-cve-badge {
    background: #dc2626;
    color: #fff;
}

.report-header a {
text-decoration:none;
}


/* V2-Banner */
.light .v2-banner           { background: #eff6ff; border-color: #2563eb; }
.light .v2-banner__text     { color: #1e293b; }
.light .v2-banner__btn      { background: #dbeafe; border-color: #3b82f6; color: #1e40af; }
.light .v2-banner__btn:hover{ background: #bfdbfe; }
.light .v2-banner__btn--medium      { background: #dcfce7; border-color: #16a34a; color: #14532d; }
.light .v2-banner__btn--medium:hover{ background: #bbf7d0; }

/* Schnellzugriff-Box */
.light .quickaccess-box             { background: #f8fafc; border: 1px solid #e2e8f0; }
.light .quickaccess-box__title      { color: #1e293b; }


.light .export-bar              { background: #f8fafc; border-color: #e2e8f0; }
.light .export-bar__title       { color: #1e293b; }
.light .export-bar__subtitle    { color: #94a3b8; }
.light .export-bar__btn-print   { background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%); border-color: #3b82f6; color: #1d4ed8; }
.light .export-bar__btn-print:hover { background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%); color: #1e40af; }
.light .export-bar__btn-pdf     { background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%); border-color: #22c55e; color: #15803d; }
.light .export-bar__btn-pdf:hover { background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%); color: #14532d; }

.light .metric-success { color: #15803d !important; }
.light .metric-info    { color: #0369a1 !important; }
.light .metric-warning { color: #b45309 !important; }
.light .metric-critical{ color: #b91c1c !important; }

.light .segment-score .max { color: rgba(0,0,0,0.35); }
.light .score-label        { color: rgba(0,0,0,0.45); }

.light .stat-label { color: #64748b; }

.light .risk-score-row         { color: #64748b; }
.light .risk-score-row__value  { color: #1e293b; }
.light .risk-score-row__ip     { color: #475569; }

.light .dns-diag-item__detail-inner { color: #475569; }