/* === CSS extrahiert aus portal-preise.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);
  }
  [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);
  }
  body { font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif; min-height:100vh; background:var(--bg); background-size:400% 400%; animation:gradShift 20s ease infinite; -webkit-font-smoothing:antialiased; }
  @keyframes gradShift{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 cubic-bezier(.4,0,.2,1); }
  [data-theme="dark"] .toggle-knob { transform:translateX(14px); }

  .container { max-width:1200px; margin:0 auto; padding:24px; }

  .page-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; 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-secondary); margin-top:4px; display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
  .meta-chip { display:inline-flex; align-items:center; gap:5px; padding:3px 9px; border-radius:999px; background:var(--badge-bg); color:var(--badge-color); font-weight:500; font-size:11px; }
  .meta-sep { color:var(--text-tertiary); }
  .stand-cell { font-size:11px; color:var(--text-tertiary); font-variant-numeric:tabular-nums; }

  .stats-row { display:grid; grid-template-columns:repeat(auto-fit, minmax(120px, 1fr)); gap:12px; margin-bottom:20px; }
  .stat-card { background:var(--card-bg); backdrop-filter:blur(20px); border:1px solid var(--card-border); border-radius:14px; padding:14px 16px; text-align:center; }
  .stat-val { font-size:22px; font-weight:700; color:var(--text-primary); }
  .stat-label { font-size:11px; color:var(--text-tertiary); margin-top:2px; }

  .filter-bar { display:flex; gap:10px; margin-bottom:16px; flex-wrap:wrap; align-items:center; }
  .search-wrap { position:relative; flex:1; min-width:200px; }
  .search-icon { position:absolute; left:12px; top:50%; transform:translateY(-50%); font-size:14px; color:var(--text-tertiary); pointer-events:none; }
  .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:14px 18px; margin-bottom:20px; box-shadow:0 2px 12px rgba(4,179,214,0.04); }
  .info-box-icon { flex-shrink:0; width:32px; height:32px; border-radius:10px; 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:0.5px; margin-bottom:4px; }
  .info-box-text { font-size:13px; color:var(--text-secondary); line-height:1.55; }
  .search-input { width:100%; padding:10px 12px 10px 36px; border-radius:10px; border:1px solid var(--input-border); background:var(--input-bg); backdrop-filter:blur(10px); font-size:13px; font-family:inherit; 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 { padding:10px 12px; border-radius:10px; border:1px solid var(--input-border); background:var(--input-bg); backdrop-filter:blur(10px); font-size:13px; font-family:inherit; color:var(--text-primary); cursor:pointer; outline:none; }

  .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; }
  table { width:100%; border-collapse:collapse; font-size:13px; }
  thead { background:rgba(0,0,0,0.02); }
  [data-theme="dark"] thead { background:rgba(255,255,255,0.03); }
  th { padding:10px 12px; text-align:left; font-weight:600; color:var(--text-secondary); font-size:11px; text-transform:uppercase; letter-spacing:0.3px; white-space:nowrap; border-bottom:1px solid var(--card-border); }
  td { padding:10px 12px; border-bottom:1px solid rgba(0,0,0,0.03); color:var(--text-primary); white-space:nowrap; }
  [data-theme="dark"] td { border-bottom-color:rgba(255,255,255,0.04); }
  tr:hover td { background:var(--card-hover-bg); }

  .preis { font-weight:600; font-variant-numeric:tabular-nums; }
  .preis-box { color:#30d158; }
  .preis-pal { color:var(--badge-color); }
  .nicht-vorr { color:#ff453a; font-weight:500; font-size:11px; }
  .kat-badge { display:inline-block; padding:2px 8px; border-radius:6px; font-size:11px; font-weight:500; background:var(--badge-bg); color:var(--badge-color); max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .land-flag { font-size:11px; color:var(--text-secondary); }
  .empty-state { text-align:center; padding:60px 20px; color:var(--text-tertiary); }
  .empty-state-icon { font-size:40px; margin-bottom:12px; }
  .empty-state-text { font-size:14px; }
  .result-count { font-size:12px; color:var(--text-tertiary); padding:10px 16px; border-top:1px solid var(--card-border); }

  @media (max-width:600px) {
    nav { padding:0 12px; }
    .container { padding:16px 12px; }
    .page-header h1 { font-size:18px; }
    .filter-bar { flex-direction:column; }
    .search-wrap { min-width:100%; }
    td, th { padding:8px 6px; font-size:12px; }
    .stats-row { grid-template-columns:repeat(2, 1fr); }
  }


/* === Auto-generierte Klassen aus inline style="..." (portal-preise.html, 1 unique) === */
.s-e24c7e { display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;background:var(--badge-bg);color:var(--badge-color);font-size:13px;font-weight:500;text-decoration:none;border:1px solid var(--card-border); }
