/* Fight Circus – Trainingsplan Widget
   Schrift: erbt vom Theme (font-family: inherit).
   Hintergrund: keiner gesetzt, nur weiße Karten auf der Seite. */

.fcs-wrap{
  font-family:inherit;
  color:#1E1E1E;
  font-size:15.5px;
  line-height:1.45;
  box-sizing:border-box;
  width:100%;
}
.fcs-wrap *{box-sizing:border-box}

.fcs-title{font-weight:700;font-size:clamp(20px,3.5vw,28px);margin:0 0 6px;line-height:1.15}
.fcs-lede{margin:0 0 22px;max-width:60ch;color:#5B5B5B;font-size:15.5px}

.fcs-empty-admin{background:#fff;border:1px solid #E7E7E7;border-radius:14px;padding:28px 22px;text-align:center;color:#5B5B5B}
.fcs-empty-admin a{color:#1E1E1E;font-weight:600}

/* ---------- Steuerung ---------- */
.fcs-controls{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}
.fcs-ctl-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.fcs-ctl-label{font-weight:600;font-size:13px;color:#9A9A9A;width:78px;flex:0 0 auto}

.fcs-tabs{display:flex;flex-wrap:wrap;gap:8px}
.fcs-tab{
  appearance:none;border:1.5px solid #D6D6D6;background:#fff;color:#5B5B5B;
  font-family:inherit;font-weight:600;font-size:14.5px;padding:9px 16px;
  border-radius:10px;cursor:pointer;transition:background .12s,border-color .12s,color .12s;
}
.fcs-tab:hover{border-color:#1E1E1E}
.fcs-tab[aria-pressed="true"]{background:#1E1E1E;border-color:#1E1E1E;color:#fff}
.fcs-tab .fcs-full{display:inline}.fcs-tab .fcs-abbr{display:none}

.fcs-seg{display:inline-flex;border:1.5px solid #D6D6D6;border-radius:10px;overflow:hidden}
.fcs-seg button{
  appearance:none;border:0;background:#fff;color:#5B5B5B;font-family:inherit;
  font-weight:600;font-size:14px;padding:8px 14px;cursor:pointer;
  border-right:1.5px solid #D6D6D6;transition:background .12s,color .12s;
}
.fcs-seg button:last-child{border-right:0}
.fcs-seg button[aria-pressed="true"]{background:#1E1E1E;color:#fff}

.fcs-chips{display:flex;flex-wrap:wrap;gap:7px}
.fcs-chip{
  display:inline-flex;align-items:center;gap:7px;cursor:pointer;
  border:1.5px solid #D6D6D6;background:#fff;padding:6px 12px 6px 10px;
  border-radius:999px;font-weight:600;font-size:13.5px;color:#5B5B5B;
  transition:border-color .12s,color .12s,opacity .12s,background .12s;
}
.fcs-chip .fcs-dot{width:10px;height:10px;border-radius:50%;background:var(--c);flex:0 0 auto}
.fcs-chip[aria-pressed="true"]{color:#1E1E1E;border-color:var(--c);background:color-mix(in srgb,var(--c) 8%,#fff)}
.fcs-chip[aria-pressed="false"]{opacity:.45}

.fcs-reset{
  margin-left:auto;appearance:none;background:transparent;border:0;cursor:pointer;
  font-family:inherit;font-weight:600;font-size:13.5px;color:#9A9A9A;
  text-decoration:underline;text-underline-offset:3px;padding:6px 2px;
}
.fcs-reset:hover{color:#1E1E1E}
.fcs-count{font-size:13px;color:#9A9A9A;font-weight:500}

/* ---------- Raster (Desktop) ---------- */
.fcs-board{background:#fff;border:1px solid #E7E7E7;border-radius:16px;overflow:hidden;width:100%}
.fcs-grid{display:grid;grid-template-columns:52px repeat(6,1fr);width:100%}
.fcs-gcell{border-left:1px solid #E7E7E7}
.fcs-gcell:first-child{border-left:0}

.fcs-ghead{padding:13px 8px 12px;text-align:center;border-bottom:1px solid #E7E7E7;position:sticky;top:0;background:#fff;z-index:2}
.fcs-dname{font-weight:600;font-size:14px;color:#1E1E1E}
.fcs-today{display:inline-block;margin-top:4px;font-size:10px;font-weight:700;letter-spacing:.03em;color:#fff;background:#D62B2B;padding:2px 8px;border-radius:999px}
.fcs-is-today .fcs-ghead{background:#FBEFEF}
.fcs-dimmed{opacity:.32}
.fcs-corner{border-bottom:1px solid #E7E7E7;background:#fff}

.fcs-track{position:relative}
.fcs-hourline{position:absolute;left:0;right:0;border-top:1px dashed #E7E7E7}
.fcs-hourlabel{position:absolute;right:8px;transform:translateY(-50%);font-size:11px;font-weight:600;color:#9A9A9A;font-variant-numeric:tabular-nums}

.fcs-event{
  position:absolute;overflow:hidden;cursor:pointer;border:0;text-align:left;
  font-family:inherit;color:#fff;background:var(--c);border-radius:12px;
  padding:8px 10px;box-shadow:0 1px 2px rgba(0,0,0,.06);white-space:normal;
  transition:transform .1s ease,box-shadow .1s ease;
}
.fcs-event:hover{transform:translateY(-1px);box-shadow:0 6px 14px -6px rgba(0,0,0,.35)}
.fcs-is-open{background:repeating-linear-gradient(135deg,var(--c),var(--c) 8px,color-mix(in srgb,var(--c) 82%,#000) 8px,color-mix(in srgb,var(--c) 82%,#000) 16px)}
.fcs-ev-title{font-weight:700;font-size:13.5px;line-height:1.15;white-space:normal;overflow-wrap:break-word;word-break:break-word}
.fcs-ev-time{font-size:11.5px;font-weight:600;opacity:.92;margin-top:2px}
.fcs-ev-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.fcs-tag{font-size:10px;font-weight:700;letter-spacing:.02em;padding:1px 7px;border-radius:999px;background:rgba(255,255,255,.22);color:#fff}

.fcs-narrow{padding:6px 7px}
.fcs-narrow .fcs-ev-title{font-size:12px;line-height:1.15}
.fcs-narrow .fcs-ev-time{font-size:10px}

/* ---------- Agenda (Mobil) ---------- */
.fcs-agenda{display:none}
.fcs-day-block{margin-top:22px}
.fcs-day-block:first-child{margin-top:6px}
.fcs-day-title{display:flex;align-items:baseline;gap:10px;font-weight:700;font-size:18px;color:#1E1E1E;padding-bottom:9px;border-bottom:2px solid #1E1E1E;margin-bottom:12px}
.fcs-day-title .fcs-today{font-size:10.5px}
.fcs-a-card{
  display:grid;grid-template-columns:60px 1fr;gap:12px;align-items:center;
  background:var(--c);color:#fff;border:0;border-radius:14px;padding:13px 15px;
  margin-bottom:9px;cursor:pointer;text-align:left;font-family:inherit;width:100%;
}
.fcs-a-time{font-weight:700;font-size:13.5px;line-height:1.25}
.fcs-a-time small{display:block;opacity:.85;font-weight:600;font-size:11.5px}
.fcs-a-title{font-weight:700;font-size:16px;line-height:1.1}
.fcs-a-note{font-size:12.5px;opacity:.9;margin-top:2px}
.fcs-a-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.fcs-a-tags .fcs-tag{background:rgba(255,255,255,.25)}

.fcs-empty{padding:48px 20px;text-align:center;color:#5B5B5B}
.fcs-empty strong{display:block;font-weight:700;font-size:18px;color:#1E1E1E;margin-bottom:6px}

/* ---------- Detail-Dialog ---------- */
.fcs-dialog{border:0;border-radius:16px;padding:0;max-width:400px;width:calc(100% - 32px);box-shadow:0 24px 60px -18px rgba(0,0,0,.4);color:#1E1E1E;font-family:inherit}
.fcs-dialog::backdrop{background:rgba(20,20,20,.45)}
.fcs-d-head{padding:20px 22px 16px;color:#fff;background:var(--c)}
.fcs-d-kicker{font-size:12px;font-weight:600;letter-spacing:.04em;opacity:.9}
.fcs-d-title{font-weight:700;font-size:23px;line-height:1.1;margin:4px 0 0}
.fcs-d-body{padding:18px 22px 22px}
.fcs-d-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-bottom:14px}
.fcs-d-meta div span{display:block;font-size:11px;font-weight:600;color:#9A9A9A}
.fcs-d-meta div strong{font-weight:600;font-size:15px}
.fcs-d-desc{color:#5B5B5B;font-size:14.5px;margin:0 0 18px}
.fcs-d-actions{display:flex;gap:10px}
.fcs-d-actions button{flex:1;appearance:none;border:0;cursor:pointer;font-family:inherit;font-weight:600;font-size:14.5px;padding:12px;border-radius:10px}
.fcs-btn-primary{background:#1E1E1E;color:#fff}
.fcs-btn-ghost{background:#F8F8F8;color:#1E1E1E}

.fcs-wrap :focus-visible{outline:3px solid #1E1E1E;outline-offset:2px}

@media (max-width:860px){
  .fcs-board{border:0;background:transparent;border-radius:0}
  .fcs-grid{display:none}
  .fcs-agenda{display:block}
  .fcs-ctl-label{width:100%}
  .fcs-reset{margin-left:0}
  .fcs-tab .fcs-full{display:none}.fcs-tab .fcs-abbr{display:inline}
}
@media (prefers-reduced-motion:reduce){.fcs-wrap *{transition:none!important;animation:none!important}}
