/* === CSS extrahiert aus touren.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;--accent:#04b3d6}
  [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}
  body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;background:var(--bg);background-size:400% 400%;animation:gs 20s ease infinite;-webkit-font-smoothing:antialiased}
  @keyframes gs{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}

  nav{position:sticky;top:0;z-index:200;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:56px;display:flex;align-items:center;justify-content:space-between}
  .nav-left{display:flex;align-items:center;gap:10px}
  .nav-logo{height:28px}[data-theme="dark"] .nav-logo{filter:brightness(2.2) contrast(0.85)}
  .nav-brand{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:-.4px}
  .nav-divider{width:1px;height:18px;background:var(--nav-border);margin:0 2px}
  .nav-subtitle{font-size:12px;color:var(--text-secondary);font-weight:500}
  .nav-right{display:flex;align-items:center;gap:12px}
  .nav-back{font-size:13px;font-weight:500;color:var(--badge-color);text-decoration:none;padding:5px 10px;border-radius:8px}
  .nav-back:hover{background:var(--badge-bg)}
  .theme-toggle{display:flex;align-items:center;gap:6px;cursor:pointer}
  .toggle-icon{font-size:14px;line-height:1}
  .toggle-track{width:44px;height:26px;border-radius:13px;background:var(--toggle-bg);backdrop-filter:blur(20px);border:1px solid var(--card-border);position:relative}
  .toggle-knob{width:20px;height:20px;border-radius:10px;background:var(--toggle-knob);position:absolute;top:2px;left:3px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 4px rgba(0,0,0,.15)}
  [data-theme="dark"] .toggle-knob{left:21px;background:#f5f5f7}

  .container{max-width:1200px;margin:0 auto;padding:32px 24px 60px}
  .toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}
  .btn{padding:8px 16px;border-radius:10px;border:1px solid var(--card-border);background:var(--card-bg);backdrop-filter:blur(20px);color:var(--text-primary);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s;white-space:nowrap}
  .btn:hover{background:var(--card-hover-bg)}
  .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
  .btn.primary:hover{opacity:.9}
  .btn.danger{color:#ff453a;border-color:rgba(255,69,58,.3)}
  .btn-group{display:flex;gap:8px;flex-wrap:wrap}

  /* Layout */
  .touren-layout{display:flex;gap:20px;min-height:500px}
  .touren-list{width:300px;flex-shrink:0}
  .touren-detail{flex:1;min-width:0}
  .tour-item{background:var(--card-bg);backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:12px;padding:14px 16px;margin-bottom:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:12px}
  .tour-item:hover{background:var(--card-hover-bg)}
  .tour-item.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}
  .tour-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}
  .tour-meta{flex:1;min-width:0}
  .tour-name{font-size:14px;font-weight:600;color:var(--text-primary)}
  .tour-info{font-size:11px;color:var(--text-tertiary);margin-top:2px}
  .wochentag-badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;background:var(--badge-bg);color:var(--badge-color);margin-right:3px}

  /* Stops */
  .stop-list{background:var(--card-bg);backdrop-filter:blur(60px);border:1px solid var(--card-border);border-radius:16px;overflow:hidden}
  .stop-item{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.03);transition:background .2s}
  [data-theme="dark"] .stop-item{border-bottom-color:rgba(255,255,255,.04)}
  .stop-item:last-child{border-bottom:none}
  .stop-pos{font-size:13px;font-weight:700;color:var(--accent);width:24px;text-align:center;flex-shrink:0}
  .stop-info{flex:1;min-width:0}
  .stop-name{font-size:13px;font-weight:600;color:var(--text-primary)}
  .stop-addr{font-size:11px;color:var(--text-tertiary);margin-top:2px}
  .stop-actions{display:flex;gap:4px;flex-shrink:0}
  .stop-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--card-border);background:var(--toggle-bg);color:var(--text-secondary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}
  .stop-btn:hover{background:var(--card-hover-bg);color:var(--text-primary)}
  .stop-btn.remove:hover{color:#ff453a;border-color:rgba(255,69,58,.3)}

  /* Map */
  #touren-map{width:100%;height:400px;border-radius:16px;border:1px solid var(--card-border);overflow:hidden;margin-top:20px}

  /* Modal */
  .modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(8px);z-index:1000;align-items:center;justify-content:center}
  .modal-overlay.open{display:flex}
  .modal{background:var(--card-bg);backdrop-filter:blur(60px) saturate(200%);border:1px solid var(--card-border);border-radius:20px;padding:28px;max-width:480px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px rgba(0,0,0,.2)}
  .modal h3{font-size:18px;font-weight:700;color:var(--text-primary);margin-bottom:20px}
  .form-group{margin-bottom:16px}
  .form-label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}
  .form-input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--card-border);background:var(--toggle-bg);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none}
  .form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(4,179,214,.15)}
  .color-picker{display:flex;gap:6px;flex-wrap:wrap}
  .color-opt{width:28px;height:28px;border-radius:50%;cursor:pointer;border:3px solid transparent;transition:all .2s}
  .color-opt:hover,.color-opt.active{border-color:var(--text-primary);transform:scale(1.15)}
  .weekday-picker{display:flex;gap:4px}
  .weekday-btn{padding:6px 10px;border-radius:8px;border:1px solid var(--card-border);background:var(--toggle-bg);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer}
  .weekday-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}

  .toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 24px;border-radius:12px;font-size:13px;font-weight:500;color:#fff;z-index:2000;opacity:0;transition:opacity .3s;pointer-events:none}
  .toast.show{opacity:1}.toast.success{background:#30d158}.toast.error{background:#ff453a}.toast.info{background:var(--accent)}

  @media(max-width:768px){
    .container{padding:20px 16px 60px}
    .touren-layout{flex-direction:column}
    .touren-list{width:100%}
    .touren-detail.hidden-mobile{display:none}
    .touren-list.hidden-mobile{display:none}
    .back-to-list{display:inline-flex!important}
    .stop-btn{width:40px;height:40px;font-size:16px}
    #touren-map{height:280px}
    .nav-subtitle{display:none}
  }
  .back-to-list{display:none;margin-bottom:12px}
  @media(min-width:769px){.back-to-list{display:none!important}}


/* === Auto-generierte Klassen aus inline style="..." (touren.html, 5 unique) === */
.s-542279 { font-size:20px;font-weight:700;color:var(--text-primary); }
.s-341c08 { text-align:center;padding:60px 20px;color:var(--text-tertiary); }
.s-f01fc7 { justify-content:flex-end;margin-top:24px; }
.s-d0d77b { max-height:200px;overflow-y:auto;margin-top:8px; }
.s-c2487e { justify-content:flex-end;margin-top:16px; }


/* === Auto-Klassen aus inline style="..." in touren.js (10 unique) === */
.s-b640cf { text-align:center;padding:40px;color:var(--text-tertiary); }
.s-97091f { display:flex;align-items:center;gap:12px;margin-bottom:16px; }
.s-542279 { font-size:20px;font-weight:700;color:var(--text-primary); }
.s-dd850a { color:var(--text-tertiary);font-size:12px; }
.s-d5e8c5 { flex:1; }
.s-5534b3 { margin-bottom:16px; }
.s-0b5e2b { color:var(--text-tertiary);font-size:11px; }
.s-ffb44b { text-align:center;padding:60px;color:var(--text-tertiary); }
.s-29cb11 { margin-bottom:4px; }
.s-1d8549 { padding:12px;color:var(--text-tertiary);font-size:13px; }
