/* Styles from v1.3.2 with chips etc. */
.twc-ritschema-wrap { --twc-accent:#0b5fff; --twc-accent-weak: rgba(11,95,255,.12); margin: 1rem 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color: #111827; }
.twc-ritschema-titlebar { background: var(--twc-accent); color: #fff; padding: .6rem .8rem; border-radius: 12px; display:flex; align-items:center; justify-content:space-between; }
.twc-ritschema-titlebar h2 { margin: 0; font-size: 1.25rem; line-height:1.2; font-weight: 650; }

.twc-ritschema-controls { display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; margin: .8rem 0 .9rem; }
.twc-ritschema-controls .twc-left { display:flex; flex-wrap:wrap; gap:.75rem; align-items:center;}
.twc-ritschema-controls label { display:flex; gap:.5rem; align-items:center; background:#f9fafb; border:1px solid #e5e7eb; padding:.35rem .5rem; border-radius:10px; }
.twc-ritschema-controls input, .twc-ritschema-controls select { border:0; background:transparent; outline:none; }
.twc-ics { margin-left:auto; padding:.45rem .7rem; border-radius:10px; border:1px solid var(--twc-accent); color:#fff; background:var(--twc-accent); text-decoration:none; }
.twc-ics:hover { filter:brightness(0.95); }

.twc-group-filters { gap:.4rem; }
.twc-group-filters button { padding:.35rem .6rem; border-radius:999px; border:1px solid #e5e7eb; background:#fff; cursor:pointer; }
.twc-group-filters button.is-active { border-color: var(--twc-accent); background: var(--twc-accent-weak); }

.twc-ritschema-table { width:100%; border-collapse:separate; border-spacing:0; background:#fff; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; }
.twc-ritschema-table thead th { background: var(--twc-accent); color: #fff; font-weight:600; text-align:left; padding:.65rem .7rem; border-bottom:1px solid var(--twc-accent); }
.twc-ritschema-table td { padding:.6rem .7rem; border-bottom:1px solid #e5e7eb; vertical-align:top; }
.twc-ritschema-table tr:last-child td { border-bottom:0; }
.twc-ritschema-table tbody tr:hover { background:#fafbff; }
.twc-link { color: var(--twc-accent); text-decoration: none; }
.twc-link:hover { text-decoration: underline; }

.twc-chip { display:inline-block; padding:.15rem .45rem; border-radius:999px; font-size:.85em; border:1px solid #e5e7eb; background:#fff; }
.twc-chip-a { background:#ffe7e7; border-color:#ffc0c0; }
.twc-chip-b { background:#e7f0ff; border-color:#c7dcff; }
.twc-chip-g { background:#f3fdf6; border-color:#c8efcf; }
.twc-chip-pauze { background:#fff7ed; border-color:#ffedd5; }
.twc-lock { font-size:.9em; opacity:.8; }

/* Modal */
.twc-modal[hidden]{ display:none !important; }
.twc-modal { position:fixed; inset:0; z-index:9999; }
.twc-modal-dim { position:absolute; inset:0; background:rgba(17,24,39,.5); }
.twc-modal-card { position:relative; max-width:520px; margin:10vh auto 0; background:#fff; border-radius:14px; box-shadow:0 10px 30px rgba(0,0,0,.12); padding:1rem 1.1rem; }
.twc-modal-close { position:absolute; right:.6rem; top:.4rem; font-size:1.6rem; line-height:1; border:0; background:transparent; cursor:pointer; }
.twc-modal-title { margin:0 2rem 0.6rem 0; font-size:1.25rem; color: var(--twc-accent); }
.twc-modal-body p { margin:.25rem 0; }
.twc-modal-actions { display:flex; justify-content:flex-end; margin-top:.8rem; }
.twc-modal-ics { padding:.45rem .7rem; border-radius:10px; border:1px solid var(--twc-accent); color:#fff; background:var(--twc-accent); text-decoration:none; }

@media (max-width: 900px){
  .twc-ritschema-table th:nth-child(3), .twc-ritschema-table td:nth-child(3), /* Ritnr */
  .twc-ritschema-table th:nth-child(7), .twc-ritschema-table td:nth-child(7), /* Wegkapitein */
  .twc-ritschema-table th:nth-child(10), .twc-ritschema-table td:nth-child(10) /* Pauze */
  { display:none; }
}