/* Matrik Serien-Tracking 1.1: kompakte Detailansicht */
.series-tracker-panel{min-width:0;overflow:hidden;padding:clamp(15px,2.2vw,22px)}
.series-tracker-panel *{min-width:0}
.series-tracker-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;margin-bottom:14px}
.series-tracker-title{max-width:760px}
.series-tracker-head h2{margin:3px 0 4px;font-size:clamp(24px,2.4vw,34px)}
.series-tracker-head p{margin:0;line-height:1.45}
.series-tracker-actions{display:flex;align-items:end;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.series-control{display:grid;gap:5px}
.series-control>span,.series-season-jump>span{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.series-status-select,.series-season-jump select{width:100%;min-width:170px;border:1px solid var(--line);background:#0c0c11;color:var(--text);border-radius:13px;padding:10px 36px 10px 12px;font:inherit;font-size:13px;font-weight:850}
.series-tracker-actions .btn{min-height:40px;padding:9px 14px;justify-content:center}

.series-summary-grid{display:grid;grid-template-columns:minmax(250px,.82fr) minmax(0,1.18fr);gap:11px;align-items:stretch}
.series-progress-card,.series-next-wrap{min-width:0;border:1px solid var(--line);background:rgba(0,0,0,.18);border-radius:18px;padding:14px}
.series-progress-card{display:grid;align-content:start}
.series-progress-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.series-progress-top strong{display:block;font-size:clamp(25px,3.2vw,38px);line-height:1;font-weight:950}
.series-progress-top strong small{font-size:13px;color:var(--muted);font-weight:850}
.series-progress-caption{display:block;margin-top:4px;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.series-progress-percent{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:rgba(229,9,20,.16);border:1px solid rgba(229,9,20,.32);font-size:13px;color:#fff}
.series-progress-track{height:8px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden;margin:13px 0 11px}
.series-progress-track>span{display:block;height:100%;width:var(--series-progress,0%);background:linear-gradient(90deg,var(--brand),#ff5964);border-radius:inherit;transition:width .25s ease}
.series-progress-foot{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.series-status-pill{display:inline-flex;align-items:center;flex:0 0 auto;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line);font-size:10px;font-weight:900}
.series-last-watched{flex:1 1 180px;color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.series-last-watched b{color:#fff}
.series-new-episode{display:flex;gap:8px;align-items:center;margin-top:10px;padding:8px 10px;border:1px solid rgba(55,214,122,.35);background:rgba(55,214,122,.08);border-radius:12px;font-size:12px;overflow-wrap:anywhere}
.series-new-episode strong{flex:0 0 auto;color:var(--good);text-transform:uppercase;letter-spacing:.06em;font-size:10px}

.series-next-wrap{display:grid;align-items:center}
.series-next-card{display:grid;grid-template-columns:clamp(92px,12vw,132px) minmax(0,1fr);gap:13px;align-items:center;min-width:0}
.series-next-card img,.series-next-visual{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#202027;display:block}
.series-next-card h3{margin:3px 0 3px;font-size:clamp(16px,1.8vw,21px);line-height:1.15;overflow-wrap:anywhere}
.series-next-card p{margin:4px 0;color:#d6d6dd;font-size:12px;line-height:1.38;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.series-next-card .meta{font-size:11px}
.series-next-card.is-future{opacity:.88}
.series-next-empty{display:grid;gap:5px;color:var(--muted);font-size:13px}
.series-next-empty b{color:#fff;font-size:15px}

.series-seasons{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.series-seasons-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:9px}
.series-seasons-head h3{margin:2px 0 0;font-size:20px}
.series-season-jump{display:none;gap:5px;margin:0 0 10px}
.series-season-tabs{display:flex;gap:7px;overflow-x:auto;padding:1px 0 9px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain}
.series-season-tab{flex:0 0 auto;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;gap:6px;min-width:72px;min-height:38px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:#fff;border-radius:999px;padding:7px 10px;text-align:center;cursor:pointer;transition:.15s background,.15s border-color,.15s transform}
.series-season-tab b{font-size:12px}
.series-season-tab small{color:var(--muted);font-size:10px;font-weight:800}
.series-season-tab:hover{transform:translateY(-1px);background:rgba(255,255,255,.09)}
.series-season-tab.is-active{background:rgba(229,9,20,.24);border-color:rgba(229,9,20,.68);box-shadow:inset 0 0 0 1px rgba(229,9,20,.12)}
.series-season-tab.is-active small{color:#fff}
.series-season-content{min-width:0}
.series-season-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0 9px}
.series-season-toolbar h3{margin:1px 0 0;font-size:18px}
.series-season-tools{display:flex;gap:7px;flex-wrap:wrap}
.series-season-tools .btn{min-height:34px;padding:7px 10px;font-size:11px}
.series-episodes{display:grid;gap:7px}
.series-episode{display:grid;grid-template-columns:clamp(100px,13vw,145px) minmax(0,1fr) 88px;gap:11px;align-items:center;min-width:0;padding:8px;border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:15px;transition:.15s background,.15s border-color}
.series-episode:hover{background:rgba(255,255,255,.065)}
.series-episode.is-watched{background:rgba(55,214,122,.065);border-color:rgba(55,214,122,.26)}
.series-episode.is-future{opacity:.78}
.series-episode-image{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#19191f;display:grid;place-items:center;color:var(--muted);font-size:22px}
.series-episode-image img{width:100%;height:100%;object-fit:cover;display:block}
.series-episode-copy{min-width:0}
.series-episode-copy h4{margin:3px 0 3px;font-size:15px;line-height:1.2;overflow-wrap:anywhere}
.series-episode-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.series-episode-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.045em;overflow-wrap:anywhere}
.series-episode-code{color:#fff}
.series-episode-future{display:inline-flex;padding:2px 5px;border-radius:999px;border:1px solid rgba(255,209,102,.35);background:rgba(255,209,102,.08);color:var(--warn)}
.series-watch-btn{width:88px;min-height:48px;border:1px solid var(--line);background:rgba(255,255,255,.065);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px;cursor:pointer}
.series-watch-btn span{font-size:18px;line-height:1}
.series-watch-btn b{font-size:10px;line-height:1.15}
.series-watch-btn.is-on{background:rgba(55,214,122,.14);border-color:rgba(55,214,122,.46)}
.series-watch-btn:disabled{opacity:.55;cursor:wait}
.series-loading{padding:18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);text-align:center;font-size:12px}
.series-tracker-note{margin:11px 2px 0;color:var(--muted);font-size:11px;line-height:1.42}
.series-tracker-toast{position:fixed;left:50%;bottom:22px;z-index:120;transform:translate(-50%,16px);opacity:0;pointer-events:none;background:#fff;color:#111;border-radius:999px;padding:10px 15px;font-weight:900;box-shadow:0 18px 50px rgba(0,0,0,.4);transition:.18s}
.series-tracker-toast.is-visible{opacity:1;transform:translate(-50%,0)}

/* Übersicht Meine Serien */
.series-overview{padding:24px clamp(16px,3vw,42px) 42px}
.series-overview-hero{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:15px 0 24px}
.series-overview-hero h1{margin:4px 0;font-size:clamp(32px,5vw,58px)}
.series-filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.series-filterbar a{padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.06);font-size:13px;font-weight:800}
.series-filterbar a.is-active{background:var(--brand);border-color:var(--brand)}
.series-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}
.series-library-card{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;min-width:0;padding:12px;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.055)}
.series-library-card img{width:100px;aspect-ratio:2/3;object-fit:cover;border-radius:14px;background:#222}
.series-library-card h3{margin:3px 0 6px;overflow-wrap:anywhere}
.series-library-card p{margin:4px 0;color:var(--muted);font-size:12px;line-height:1.4}
.series-library-progress{height:8px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden;margin:10px 0}
.series-library-progress span{display:block;height:100%;background:var(--brand)}

@media(max-width:900px){
  .series-tracker-head{grid-template-columns:1fr;align-items:start}
  .series-tracker-actions{justify-content:flex-start}
  .series-summary-grid{grid-template-columns:1fr}
  .series-next-card{grid-template-columns:110px minmax(0,1fr)}
}
@media(max-width:700px){
  .series-season-tabs{display:none}
  .series-season-jump{display:grid}
  .series-season-jump select{min-width:0}
  .series-episode{grid-template-columns:96px minmax(0,1fr)}
  .series-watch-btn{grid-column:1/-1;width:100%;min-height:38px}
  .series-season-toolbar{align-items:start}
}
@media(max-width:520px){
  .series-tracker-panel{margin-left:max(10px,env(safe-area-inset-left));margin-right:max(10px,env(safe-area-inset-right));padding:13px}
  .series-tracker-actions{display:grid;grid-template-columns:1fr;width:100%}
  .series-control,.series-status-select,.series-tracker-actions .btn{width:100%;min-width:0}
  .series-summary-grid{gap:8px}
  .series-progress-card,.series-next-wrap{padding:12px;border-radius:15px}
  .series-progress-top strong{font-size:27px}
  .series-progress-foot{align-items:flex-start}
  .series-next-card{grid-template-columns:88px minmax(0,1fr);gap:10px}
  .series-next-card p:not(.meta){display:none}
  .series-next-card h3{font-size:15px}
  .series-seasons-head{display:grid;gap:3px}
  .series-season-toolbar{display:grid}
  .series-season-tools{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .series-season-tools .btn{width:100%;justify-content:center;white-space:normal;text-align:center}
  .series-episode{grid-template-columns:82px minmax(0,1fr);gap:9px;padding:7px}
  .series-episode-copy h4{font-size:14px}
  .series-episode-copy p{display:none}
  .series-episode-meta{font-size:8px}
  .series-tracker-note{font-size:10px}
  .series-library-grid{grid-template-columns:1fr}
  .series-library-card{grid-template-columns:82px minmax(0,1fr)}
  .series-library-card img{width:82px}
  .series-overview-hero{display:grid}
  .series-tracker-toast{max-width:calc(100vw - 24px);text-align:center;white-space:normal}
}
@media(max-width:340px){
  .series-tracker-panel{margin-left:6px;margin-right:6px;padding:11px}
  .series-next-card{grid-template-columns:1fr}
  .series-next-card img,.series-next-visual{display:none}
  .series-progress-top{gap:7px}
  .series-progress-top strong small{font-size:11px}
  .series-progress-percent{font-size:11px}
  .series-episode{grid-template-columns:72px minmax(0,1fr)}
  .series-season-tools{grid-template-columns:1fr}
}

/* Matrik 1.8.2: Serienfortschritt standardmässig kompakt eingeklappt */
.series-tracker-disclosure{padding:0!important}
.series-tracker-disclosure>summary{list-style:none}
.series-tracker-disclosure>summary::-webkit-details-marker{display:none}
.series-disclosure-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:14px;padding:clamp(15px,2.2vw,22px);cursor:pointer;user-select:none}
.series-disclosure-summary:focus-visible{outline:2px solid var(--brand);outline-offset:-3px;border-radius:inherit}
.series-disclosure-copy{display:grid;gap:3px;min-width:0}
.series-disclosure-copy>strong{display:block;color:#fff;font-size:clamp(19px,2.2vw,28px);line-height:1.12;letter-spacing:-.025em;overflow-wrap:anywhere}
.series-disclosure-copy>small{display:block;color:var(--muted);font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.series-disclosure-stats{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:11px;white-space:nowrap}
.series-disclosure-stats>span:first-child{display:inline-flex;align-items:baseline;gap:4px}
.series-disclosure-stats b{color:#fff;font-size:13px}
.series-disclosure-percent{display:inline-flex;padding:5px 8px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.055);color:#fff;font-weight:900}
.series-disclosure-chevron{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.07);font-size:20px;line-height:1;transition:transform .18s ease,background .18s ease}
.series-tracker-disclosure[open] .series-disclosure-chevron{transform:rotate(180deg);background:rgba(229,9,20,.2)}
.series-disclosure-body{padding:0 clamp(15px,2.2vw,22px) clamp(15px,2.2vw,22px);border-top:1px solid rgba(255,255,255,.08)}
.series-disclosure-body>.series-tracker-head{margin-top:15px}
.series-tracker-disclosure:not([open]) .series-disclosure-summary:hover{background:rgba(255,255,255,.025)}

@media(max-width:700px){
  .series-disclosure-summary{grid-template-columns:minmax(0,1fr) 32px;gap:9px;padding:14px}
  .series-disclosure-stats{grid-column:1/-1;grid-row:2;justify-content:flex-start;white-space:normal}
  .series-disclosure-chevron{grid-column:2;grid-row:1;width:32px;height:32px}
  .series-disclosure-body{padding:0 14px 14px}
}
@media(max-width:340px){
  .series-disclosure-summary{padding:12px}
  .series-disclosure-copy>strong{font-size:17px}
  .series-disclosure-copy>small{font-size:10px}
  .series-disclosure-stats{font-size:10px}
  .series-disclosure-body{padding:0 12px 12px}
}
