/* === CSS extrahiert aus cockpit.html (extrahiert 2026-04-26) === */
  @import url('/shared/fonts/inter.css');
  *{margin:0;padding:0;box-sizing:border-box}
  :root{--bg:linear-gradient(145deg,#eef2f7 0%,#e4ecf4 25%,#dfe8f0 50%,#e8eef5 75%,#f0f4f8 100%);--nav-bg:rgba(255,255,255,0.55);--nav-border:rgba(255,255,255,0.5);--card-bg:rgba(255,255,255,0.45);--card-border:rgba(255,255,255,0.6);--card-hover-bg:rgba(255,255,255,0.65);--card-shadow:0 2px 16px rgba(0,0,0,0.04);--text-primary:#1c1c1e;--text-secondary:#636366;--text-tertiary:#8e8e93;--badge-bg:rgba(4,179,214,0.1);--badge-color:#04b3d6;--toggle-bg:rgba(0,0,0,0.06);--toggle-knob:#fff;--input-bg:rgba(255,255,255,0.6);--input-border:rgba(0,0,0,0.08);--best-bg:rgba(48,209,88,0.12);--best-border:rgba(48,209,88,0.35)}
  [data-theme="dark"]{--bg:linear-gradient(145deg,#0a0a1a 0%,#0f1528 20%,#151022 40%,#1a0f1e 60%,#12111a 80%,#0d1318 100%);--nav-bg:rgba(255,255,255,0.05);--nav-border:rgba(255,255,255,0.09);--card-bg:rgba(255,255,255,0.06);--card-border:rgba(255,255,255,0.1);--card-hover-bg:rgba(255,255,255,0.1);--card-shadow:0 2px 16px rgba(0,0,0,0.2);--text-primary:#f5f5f7;--text-secondary:#a1a1a6;--text-tertiary:#636366;--badge-bg:rgba(4,179,214,0.15);--badge-color:#2cc5e4;--toggle-bg:rgba(255,255,255,0.1);--toggle-knob:#1c1c1e;--input-bg:rgba(255,255,255,0.06);--input-border:rgba(255,255,255,0.1);--best-bg:rgba(48,209,88,0.18);--best-border:rgba(48,209,88,0.4)}
  body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;background:var(--bg);background-size:400% 400%;animation:g 20s ease infinite;-webkit-font-smoothing:antialiased}
  @keyframes g{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
  nav{position:sticky;top:0;z-index:100;background:var(--nav-bg);backdrop-filter:blur(44px) saturate(180%);-webkit-backdrop-filter:blur(44px) saturate(180%);border-bottom:1px solid var(--nav-border);padding:0 24px;height:52px;display:flex;align-items:center;justify-content:space-between}
  .nav-left{display:flex;align-items:center;gap:10px;min-width:0;flex-shrink:1;overflow:hidden}
  .nav-logo{height:26px}[data-theme="dark"] .nav-logo{filter:brightness(2.2) contrast(0.85)}
  .nav-brand{font-size:15px;font-weight:700;color:var(--text-primary)}
  .nav-divider{width:1px;height:18px;background:var(--nav-border)}
  .nav-sub{font-size:12px;color:var(--text-secondary);white-space:nowrap}
  .nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
  .nav-back{font-size:12px;color:var(--badge-color);text-decoration:none;font-weight:500;display:flex;align-items:center;gap:4px}
  .theme-toggle{display:flex;align-items:center;gap:5px;cursor:pointer;padding:3px;border-radius:16px;background:var(--toggle-bg)}
  .toggle-icon{font-size:12px}.toggle-track{width:32px;height:18px;border-radius:9px;background:var(--toggle-bg);position:relative}
  .toggle-knob{width:14px;height:14px;border-radius:50%;background:var(--toggle-knob);position:absolute;top:2px;left:2px;transition:transform .3s}
  [data-theme="dark"] .toggle-knob{transform:translateX(14px)}
  .container{max-width:1800px;margin:0 auto;padding:24px}
  .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}
  .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}
  .header-meta{font-size:12px;color:var(--text-tertiary);margin-top:2px}
  .info-box{display:flex;gap:14px;align-items:flex-start;background:linear-gradient(135deg,rgba(4,179,214,0.08),rgba(4,179,214,0.01));border:1px solid var(--card-border);border-left:3px solid var(--badge-color);backdrop-filter:blur(20px);border-radius:14px;padding:12px 16px;margin-bottom:16px}
  .info-box-icon{flex-shrink:0;width:28px;height:28px;border-radius:8px;background:rgba(4,179,214,0.15);display:flex;align-items:center;justify-content:center;color:var(--badge-color)}
  .info-box-body{flex:1;min-width:0}
  .info-box-title{font-size:11px;font-weight:700;color:var(--badge-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
  .info-box-text{font-size:12px;color:var(--text-secondary);line-height:1.5}
  .toolbar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;align-items:center}
  .search-wrap{position:relative;flex:1;min-width:240px}
  .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--text-tertiary);pointer-events:none}
  .search-input{width:100%;padding:10px 12px 10px 36px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);font-size:13px;color:var(--text-primary);outline:none}
  .search-input:focus{border-color:var(--badge-color);box-shadow:0 0 0 3px rgba(4,179,214,0.12)}
  .filter-select,input[type=date]{padding:10px 12px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);font-size:13px;color:var(--text-primary);cursor:pointer;outline:none;font-family:inherit}
  .chip-group{display:flex;gap:4px;flex-wrap:wrap}
  .chip{padding:8px 14px;border-radius:999px;border:1px solid var(--input-border);background:var(--input-bg);font-size:12px;font-weight:500;color:var(--text-secondary);cursor:pointer;user-select:none;transition:all .15s;white-space:nowrap}
  .chip:hover{background:var(--card-hover-bg)}
  .chip.active{background:var(--badge-color);border-color:var(--badge-color);color:#fff}
  .toggle-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--input-border);background:var(--input-bg);cursor:pointer;user-select:none;font-size:12px;color:var(--text-secondary)}
  .main-card{background:var(--card-bg);backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:16px;box-shadow:var(--card-shadow);overflow:hidden}
  .tbl-wrap{overflow-x:auto;max-height:calc(100vh - 340px)}
  table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px}
  thead{position:sticky;top:0;z-index:10;background:var(--nav-bg);backdrop-filter:blur(20px)}
  th{padding:12px 10px;text-align:left;font-weight:600;color:var(--text-secondary);font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;border-bottom:1px solid var(--card-border);background:var(--nav-bg)}
  th.lief-col{text-align:right}
  td{padding:8px 10px;border-bottom:1px solid rgba(0,0,0,0.03);color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums;vertical-align:middle}
  [data-theme="dark"] td{border-bottom-color:rgba(255,255,255,0.04)}
  tr:hover td{background:var(--card-hover-bg)}
  td.rw-cell{font-weight:600;position:sticky;left:0;background:var(--card-bg);backdrop-filter:blur(20px);z-index:5;min-width:200px;max-width:240px;overflow:hidden;text-overflow:ellipsis}
  tr:hover td.rw-cell{background:var(--card-hover-bg)}
  td.preis-cell{text-align:right;min-width:92px;position:relative}
  td.preis-cell.best{background:var(--best-bg);font-weight:700}
  td.preis-cell.best-kg{box-shadow:inset 0 0 0 2px #30d158}
  td.preis-cell.best-kg .best-icon{color:#30d158}
  td.preis-cell.clickable:hover{background:rgba(4,179,214,0.15);box-shadow:inset 0 0 0 2px var(--badge-color)}
  td.preis-cell.empty{color:var(--text-tertiary);font-weight:400;opacity:0.35}
  .preis-val{font-size:13px;font-weight:600}
  .preis-einheit{font-size:9px;color:var(--text-tertiary);font-weight:400}
  .preis-trend{font-size:10px;margin-left:4px;font-weight:600}
  .trend-up{color:#ff453a}.trend-down{color:#30d158}.trend-flat{color:var(--text-tertiary)}
  .best-icon{position:absolute;top:3px;right:4px;font-size:9px;color:#30d158;font-weight:700}
  .bestpreis-cell{text-align:right;font-weight:700;color:#30d158;min-width:140px}
  .bestpreis-cell small{color:var(--text-tertiary);font-size:10px;font-weight:500}
  .result-count{font-size:12px;color:var(--text-tertiary);padding:10px 16px;border-top:1px solid var(--card-border)}
  .empty-state{text-align:center;padding:60px 20px;color:var(--text-tertiary)}
  .empty-state-icon{font-size:40px;margin-bottom:12px}
  /* Stats */
  .stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}
  .stat-card{background:var(--card-bg);backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:12px;padding:12px 14px;text-align:center}
  .stat-val{font-size:20px;font-weight:700;color:var(--text-primary)}
  .stat-label{font-size:11px;color:var(--text-tertiary);margin-top:2px}
  .btn-action{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);font-size:12.5px;font-weight:500;cursor:pointer;text-decoration:none;font-family:inherit}
  .btn-action:hover{background:var(--card-hover-bg)}
  @media(max-width:900px){.container{max-width:100%;padding:16px 12px}td.rw-cell{min-width:140px}}
  @media(max-width:600px){nav{padding:0 12px}.page-header h1{font-size:18px}.toolbar{flex-direction:column;align-items:stretch}.search-wrap{min-width:100%}td,th{padding:6px 8px;font-size:11.5px}}


/* === Auto-generierte Klassen aus inline style="..." (cockpit.html, 17 unique) === */
.s-bbeec1 { color:#30d158;font-weight:600; }
.s-ac353d { display:none;margin-bottom:20px; }
.s-bf53d8 { display:flex;align-items:center;gap:10px;margin-bottom:8px; }
.s-e5f8d6 { font-size:14px;font-weight:700;color:#ff9f0a;margin:0; }
.s-161768 { font-size:12px;color:var(--text-tertiary); }
.s-67431f { margin-left:auto;padding:4px 10px;font-size:11px; }
.s-8e39bd { overflow:hidden; }
.s-f4b1c0 { max-height:400px;overflow-y:auto; }
.s-cbba0d { font-size:12px;table-layout:fixed;width:100%; }
.s-a712ff { width:260px; }
.s-64fa8f { width:160px; }
.s-a2ad19 { width:180px; }
.s-df8e30 { display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;align-items:center; }
.s-6fb482 { font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-weight:700;margin-right:4px; }
.s-0d2168 { display:contents; }
.s-58aba5 { cursor:pointer; }
.s-cd130d { background:rgba(255,159,10,0.15);color:#ff9f0a;border-color:rgba(255,159,10,0.3);font-weight:600; }


/* === Auto-Klassen aus inline style="..." in cockpit.js (36 unique) === */
.s-6f99c1 { vertical-align:top; }
.s-9f9a31 { width:100%;padding:5px 7px;border-radius:6px;border:1px solid var(--input-border);background:var(--input-bg);font-size:11px;font-family:inherit;resize:vertical;min-height:42px;box-sizing:border-box; }
.s-00e54d { display:flex;gap:4px;margin-top:4px; }
.s-a8c26e { flex:1;padding:5px 6px;font-size:10.5px;background:rgba(4,179,214,0.15);color:var(--badge-color);border:none;font-weight:600; }
.s-2e973f { word-wrap:break-word; }
.s-0b5e2b { color:var(--text-tertiary);font-size:11px; }
.s-a30501 { font-size:11px;word-wrap:break-word; }
.s-60dbb8 { display:inline-flex;align-items:center;gap:4px;color:var(--badge-color);font-size:10.5px;text-decoration:none;margin-top:3px;padding:3px 8px;background:var(--badge-bg);border-radius:6px; }
.s-b4c1c5 { font-size:11px;white-space:normal;line-height:1.4; }
.s-f55526 { color:' + schColor + ';font-weight:700;text-transform:uppercase;font-size:9px; }
.s-8ede5d { color:var(--badge-color);font-size:10.5px; }
.s-161768 { font-size:12px;color:var(--text-tertiary); }
.s-476ab0 { display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid ' + border + ';background:' + bg + ';color:var(--text-primary);font-size:12px;text-decoration:none;font-weight:500; }
.s-d1ba26 { color:var(--text-tertiary);font-size:10.5px; }
.s-d27006 { color:#ff9f0a; }
.s-632c2a { color:#30d158; }
.s-ac2646 { position:sticky;left:0;background:var(--nav-bg);z-index:11;min-width:200px; }
.s-5b684c { color:#04b3d6;font-size:9px;margin-left:3px; }
.s-58aba5 { cursor:pointer; }
.s-7953e0 { font-size:9.5px;color:var(--text-tertiary);margin-top:1px; }
.s-ef6102 { color:#30d158;font-weight:700; }
.s-64fa8e { font-size:10px;color:var(--text-tertiary); }
.s-798c4e { font-size:11px;opacity:0.9; }
.s-5460e9 { position:fixed;inset:0;background:rgba(0,0,0,0.55);backdrop-filter:blur(12px);z-index:500;display:flex;align-items:center;justify-content:center;padding:20px; }
.s-7d945e { background:var(--card-bg);backdrop-filter:blur(40px) saturate(180%);border:1px solid var(--card-border);border-radius:18px;max-width:560px;width:100%;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,0.4); }
.s-e6d1f3 { display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px; }
.s-e3faae { font-size:18px;font-weight:700;color:var(--text-primary); }
.s-34c6c9 { font-size:12px;color:var(--text-tertiary);margin-top:4px; }
.s-7e7350 { background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-tertiary);padding:4px 8px; }
.s-b51e65 { display:block;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px; }
.s-ad52da { width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);font-size:13px;color:var(--text-primary);margin-bottom:12px;font-family:inherit; }
.s-361ddb { width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);font-size:13px;color:var(--text-primary);font-family:inherit;resize:vertical; }
.s-4e49c0 { display:flex;gap:8px;margin-top:12px; }
.s-d5e8c5 { flex:1; }
.s-10b3fc { display:flex;gap:8px;margin-top:16px;justify-content:flex-end; }
.s-0f225e { background:var(--badge-color);color:#fff;border-color:var(--badge-color);font-weight:600; }

/* CSP-Helper */
.kg-default { color: var(--text-primary); font-style: italic; }
