
.itg-portal,
.itg-portal-login {
    --navy:#003b73;
    --navy-dark:#002b55;
    --blue:#00569b;
    --cyan:#00a9e0;
    --cyan-soft:#e8f8fd;
    --ink:#173b5e;
    --muted:#65798e;
    --line:#d7e3ee;
    --surface:#fff;
    --soft:#f4f8fc;
    --success:#197a45;
    --warning:#a86500;
    --danger:#b4232b;
    width:min(1500px,100%);
    margin:20px auto;
    color:var(--ink);
    font-family:Arial,Helvetica,sans-serif;
}
.itg-portal *,.itg-portal-login * { box-sizing:border-box; }
.itg-portal a { color:var(--blue); }
.itg-portal button,.itg-portal input,.itg-portal select,.itg-portal textarea { font:inherit; }

.itg-portal-hero {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    overflow:hidden;
    min-height:205px;
    padding:32px 36px;
    border-radius:22px 22px 0 0;
    background:linear-gradient(125deg,var(--navy-dark),var(--navy) 55%,#076aa3);
    color:#fff;
}
.itg-portal-hero::after { content:""; position:absolute; right:-70px; bottom:-120px; width:280px; height:280px; border:38px solid rgba(255,255,255,.06); border-radius:50%; }
.itg-portal-hero__main,.itg-portal-user { position:relative; z-index:1; }
.itg-portal-eyebrow { display:block; margin-bottom:8px; color:#7fe1ff; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.itg-portal-hero h1 { margin:0; color:#fff; font-size:clamp(32px,4vw,52px); line-height:1.05; }
.itg-portal-hero p { max-width:760px; margin:12px 0 0; color:#d8eaff; font-size:15px; }
.itg-portal-user { display:grid; grid-template-columns:auto 1fr; gap:4px 12px; min-width:270px; padding:16px; border:1px solid rgba(255,255,255,.2); border-radius:14px; background:rgba(255,255,255,.1); }
.itg-portal-user__avatar { grid-row:1/3; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:#00a9e0; font-weight:900; }
.itg-portal-user small { display:block; color:#bcdaf1; font-size:10px; text-transform:uppercase; }
.itg-portal-user strong { display:block; color:#fff; font-size:13px; word-break:break-word; }
.itg-portal-user a { grid-column:2; color:#fff; font-size:12px; }

.itg-portal-tabs { display:flex; align-items:center; gap:5px; padding:7px; border:1px solid var(--line); border-top:0; border-radius:0 0 15px 15px; background:#edf5fb; box-shadow:0 8px 22px rgba(0,59,115,.08); }
.itg-portal-tabs a { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:9px 17px; border-radius:9px; color:#45627f; font-weight:800; text-decoration:none; }
.itg-portal-tabs a:hover,.itg-portal-tabs a:focus { background:#fff; color:var(--navy); }
.itg-portal-tabs a.is-active { background:var(--navy); color:#fff; box-shadow:0 5px 13px rgba(0,59,115,.18); }
.itg-portal-tabs__back { margin-left:auto; }
.itg-portal-content { padding:22px 0 45px; }

.itg-portal-notice { margin:16px 0 0; padding:13px 16px; border-left:4px solid var(--cyan); border-radius:9px; background:#eef8fd; }
.itg-portal-notice.is-error { border-left-color:var(--danger); background:#fff0f1; color:#841a21; }
.itg-portal-notice.is-warning { border-left-color:#f1a726; background:#fff7e7; color:#744900; }
.itg-portal-notice.is-success { border-left-color:#38a86a; background:#edf8f1; color:#17613a; }

.itg-portal-page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:4px 0 15px; }
.itg-portal-page-heading h2 { margin:0; color:var(--navy); font-size:31px; }
.itg-portal-page-heading p { margin:6px 0 0; color:var(--muted); }
.itg-portal-back,.itg-portal-export-actions a { display:inline-flex; align-items:center; min-height:39px; padding:8px 13px; border:1px solid #c5d6e4; border-radius:8px; background:#fff; color:var(--navy) !important; font-weight:800; text-decoration:none; }
.itg-portal-export-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }

.itg-portal-subtabs { display:inline-flex; gap:5px; margin:0 0 16px; padding:5px; border:1px solid #cbdbe8; border-radius:12px; background:#eef5fb; }
.itg-portal-subtabs a { padding:9px 14px; border-radius:8px; color:#45627f; font-weight:800; text-decoration:none; }
.itg-portal-subtabs a.is-active { background:var(--navy); color:#fff; }

.itg-portal-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0 0 18px; }
.itg-portal-kpis.is-six { grid-template-columns:repeat(3,minmax(0,1fr)); }
.itg-portal-kpis article { min-height:125px; padding:20px; border:1px solid var(--line); border-top:4px solid var(--cyan); border-radius:14px; background:#fff; box-shadow:0 5px 18px rgba(0,59,115,.05); }
.itg-portal-kpis small { display:block; color:#00569b; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.itg-portal-kpis strong { display:block; margin-top:7px; color:#002b55; font-size:28px; }
.itg-portal-kpis span { display:block; margin-top:4px; color:var(--muted); font-size:12px; }

.itg-portal-card { overflow:hidden; margin-bottom:18px; border:1px solid var(--line); border-radius:15px; background:#fff; box-shadow:0 5px 20px rgba(0,59,115,.05); }
.itg-portal-card__header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 20px; border-bottom:1px solid #e1eaf2; background:linear-gradient(180deg,#fbfdff,#f4f8fc); }
.itg-portal-card__header h3 { margin:0; color:var(--navy); font-size:20px; }
.itg-portal-card__header p { margin:5px 0 0; color:var(--muted); font-size:13px; }
.itg-portal-search { width:min(100%,360px); min-height:39px; padding:8px 11px; border:1px solid #c6d7e5; border-radius:9px; }
.itg-portal-table-wrap { overflow:auto; }
.itg-portal-table { width:100%; border-collapse:collapse; }
.itg-portal-table th { padding:12px 14px; background:#edf5fb; color:#45627f; font-size:11px; letter-spacing:.08em; text-align:left; text-transform:uppercase; }
.itg-portal-table td { padding:13px 14px; border-top:1px solid #e3eaf1; vertical-align:middle; }
.itg-portal-table td small { display:block; margin-top:3px; color:var(--muted); }
.itg-portal-number { color:var(--navy) !important; font-size:16px; font-weight:900; }
.itg-portal-status { display:inline-block; padding:5px 10px; border-radius:999px; font-size:11px; font-weight:900; }
.itg-portal-status.is-paid { background:#e9f7ef; color:#18703e; }
.itg-portal-status.is-open { background:#fff3d8; color:#986000; }
.itg-portal-row-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.itg-portal-row-actions form { margin:0; }
.itg-portal-row-actions a,.itg-portal-row-actions button,.itg-portal-entry-edit button,.itg-portal-form button,.itg-portal-club-tools button,.itg-portal-club-card footer a,.itg-portal-club-card footer button,.itg-portal-add-account button,.itg-portal-account-actions button,.itg-portal-savebar button { min-height:34px; padding:6px 10px; border:1px solid #bfd0df; border-radius:7px; background:#fff; color:var(--navy); font-weight:800; text-decoration:none; cursor:pointer; }
.itg-portal-row-actions .is-danger,.itg-portal-entry-edit .is-danger,.itg-portal-account-actions .is-danger { color:var(--danger); border-color:#e6b8bb; }
.itg-portal-entry-row td { padding-top:0; background:#f7fbff; }
.itg-portal-entry-row details { padding:9px 12px; border-left:4px solid var(--cyan); border-radius:0 0 8px 8px; background:#fff; }
.itg-portal-entry-row summary { color:var(--navy); font-weight:800; cursor:pointer; }
.itg-portal-entry-chips { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.itg-portal-entry-chips span { padding:7px 9px; border:1px solid #d9e5ef; border-radius:8px; background:#f7fbff; font-size:12px; }
.itg-portal-entry-chips strong { display:block; color:var(--navy); }

.itg-portal-detail-grid { display:grid; grid-template-columns:minmax(300px,.7fr) minmax(600px,1.3fr); gap:18px; }
.itg-portal-form { display:grid; gap:12px; padding:18px 20px; }
.itg-portal-form label,.itg-portal-settings-grid label,.itg-portal-entry-edit label,.itg-portal-add-account label,.itg-portal-day-grid label { display:flex; flex-direction:column; gap:6px; color:var(--navy); font-size:12px; font-weight:800; }
.itg-portal-form input,.itg-portal-settings-grid input,.itg-portal-settings-grid select,.itg-portal-settings-grid textarea,.itg-portal-entry-edit input,.itg-portal-entry-edit select,.itg-portal-add-account input,.itg-portal-day-grid input,.itg-portal-category-settings input,.itg-portal-category-settings select { width:100%; min-height:39px; padding:8px 10px; border:1px solid #bdcedd; border-radius:8px; background:#fff; color:var(--ink); }
.itg-portal-summary-list { display:grid; grid-template-columns:150px 1fr; gap:10px; margin:0 20px 20px; padding-top:18px; border-top:1px solid var(--line); }
.itg-portal-summary-list dt { color:var(--navy); font-weight:800; }
.itg-portal-summary-list dd { margin:0; }
.itg-portal-entry-edit-list { display:grid; gap:12px; padding:16px; }
.itg-portal-entry-edit { display:grid; grid-template-columns:repeat(3,minmax(130px,1fr)); gap:10px; padding:13px; border:1px solid var(--line); border-radius:10px; background:#fbfdff; }
.itg-portal-entry-edit__actions { display:flex; align-items:flex-end; gap:7px; }
.itg-portal-add-entry { padding:12px; border:1px dashed #9fc3dd; border-radius:10px; }
.itg-portal-add-entry summary { color:var(--navy); font-weight:900; cursor:pointer; }
.itg-portal-add-entry .itg-portal-entry-edit { margin-top:12px; }

.itg-portal-club-tools { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.itg-portal-club-tools form { margin:0; }
.itg-portal-club-list { display:grid; gap:14px; padding:16px; }
.itg-portal-club-card { overflow:hidden; border:1px solid var(--line); border-radius:13px; background:#fff; }
.itg-portal-club-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:17px 19px; background:#f5f9fc; border-bottom:1px solid #e0e8f0; }
.itg-portal-club-card header small { color:var(--cyan); font-weight:900; text-transform:uppercase; }
.itg-portal-club-card h3 { margin:5px 0; color:var(--navy); }
.itg-portal-club-card p { margin:0; color:var(--muted); }
.itg-portal-club-amounts { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.itg-portal-club-amounts span { min-width:115px; padding:8px 10px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.itg-portal-club-amounts small { display:block; color:var(--muted) !important; font-size:9px; }
.itg-portal-club-amounts strong { display:block; margin-top:3px; color:var(--navy); }
.itg-portal-club-amounts .is-paid { background:#edf8f1; }
.itg-portal-club-amounts .is-open { background:#fff8e8; }
.itg-portal-club-ids { display:flex; gap:8px; flex-wrap:wrap; padding:14px 19px; }
.itg-portal-club-ids a { min-width:150px; padding:8px 10px; border:1px solid var(--line); border-left:4px solid var(--cyan); border-radius:8px; background:#fbfdff; color:var(--navy); font-weight:900; text-decoration:none; }
.itg-portal-club-ids small { display:block; margin-top:3px; color:var(--muted); font-weight:400; }
.itg-portal-club-card footer { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:12px 19px; border-top:1px solid #e4ecf3; background:#fbfdff; color:var(--muted); font-size:12px; }
.itg-portal-club-card footer > div { display:flex; gap:8px; align-items:center; }
.itg-portal-club-card footer form { margin:0; }

.itg-portal-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.itg-portal-info-grid .is-wide { grid-column:1/-1; }
.itg-portal-weight-panels,.itg-portal-ranking,.itg-portal-weekly { padding:18px 20px; }
.itg-portal-bar { display:grid; grid-template-columns:55px 1fr 45px; align-items:center; gap:10px; margin-bottom:10px; }
.itg-portal-bar i,.itg-portal-weekly i { display:block; overflow:hidden; height:12px; border-radius:999px; background:#dce6f0; }
.itg-portal-bar b,.itg-portal-weekly b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--cyan),var(--blue)); }
.itg-portal-ranking div { display:grid; grid-template-columns:42px 1fr auto; gap:10px; padding:10px 0; border-bottom:1px solid #e7edf3; }
.itg-portal-ranking span { color:var(--cyan); font-weight:900; }
.itg-portal-ranking strong { color:var(--navy); }
.itg-portal-ranking em { font-style:normal; font-weight:900; }
.itg-portal-weekly > div { display:grid; grid-template-columns:95px 1fr 90px 100px; align-items:center; gap:10px; margin-bottom:10px; }
.itg-portal-weekly small { color:var(--muted); }

.itg-portal-settings-form { display:grid; gap:16px; }
.itg-portal-settings-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:18px 20px; }
.itg-portal-settings-grid .is-full { grid-column:1/-1; }
.itg-portal-toggle { justify-content:center; padding:12px; border:1px solid var(--line); border-radius:9px; background:#f7fbff; }
.itg-portal-toggle input { width:auto !important; min-height:0 !important; }
.itg-portal-day-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:18px 20px; }
.itg-portal-day-grid fieldset { display:grid; grid-template-columns:2fr 1fr 1fr; gap:10px; padding:14px; border:1px solid var(--line); border-radius:10px; }
.itg-portal-day-grid legend { padding:0 7px; color:var(--navy); font-weight:900; }
.itg-portal-category-settings { padding:0 20px 20px; overflow:auto; }
.itg-portal-category-settings__head,.itg-portal-category-settings__row { display:grid; grid-template-columns:100px 170px 110px 180px 130px 220px; gap:10px; align-items:center; min-width:980px; padding:10px 0; }
.itg-portal-category-settings__head { color:var(--muted); font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid var(--line); }
.itg-portal-category-settings__row { border-bottom:1px solid #edf1f5; }
.itg-portal-category-settings__row > label { position:relative; }
.itg-portal-category-settings__row > label span { position:absolute; right:9px; top:50%; transform:translateY(-50%); color:var(--muted); }
.itg-portal-time-pair { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.itg-portal-savebar { position:sticky; bottom:12px; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:13px 16px; border:1px solid #bfd0df; border-radius:12px; background:#fff; box-shadow:0 10px 28px rgba(0,59,115,.15); z-index:2; }
.itg-portal-savebar button { background:var(--navy); color:#fff; }

.itg-portal-accounts { margin-top:20px; }
.itg-portal-account-list { display:grid; gap:10px; padding:16px 20px; }
.itg-portal-account-list article { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:13px; border:1px solid var(--line); border-radius:9px; background:#fbfdff; }
.itg-portal-account-list strong { display:block; color:var(--navy); }
.itg-portal-account-list span { display:block; margin-top:3px; color:var(--muted); font-size:12px; }
.itg-portal-account-actions { display:flex; gap:7px; flex-wrap:wrap; align-items:center; }
.itg-portal-account-actions form { margin:0; }
.itg-portal-account-actions details { position:relative; }
.itg-portal-account-actions summary { padding:7px 10px; border:1px solid #bfd0df; border-radius:7px; color:var(--navy); font-weight:800; cursor:pointer; }
.itg-portal-account-actions details form { display:flex; gap:6px; margin-top:6px; }
.itg-portal-add-account { display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:12px; align-items:end; padding:17px 20px; border-top:1px solid var(--line); background:#f7fbff; }

.itg-portal-login { display:grid; grid-template-columns:1.1fr .9fr; overflow:hidden; min-height:460px; border-radius:22px; background:#fff; box-shadow:0 18px 44px rgba(0,43,85,.17); }
.itg-portal-login__brand { padding:48px; color:#fff; background:linear-gradient(135deg,#002b55,#003b73 60%,#0874ad); }
.itg-portal-login__brand h2 { margin:12px 0; color:#fff; font-size:42px; }
.itg-portal-login__brand p { color:#d8eaff; line-height:1.6; }
.itg-portal-login__form { display:flex; flex-direction:column; justify-content:center; gap:15px; padding:46px; }
.itg-portal-login__form label { display:flex; flex-direction:column; gap:6px; color:#003b73; font-weight:800; }
.itg-portal-login__form input { min-height:44px; padding:9px 11px; border:1px solid #bdcedd; border-radius:8px; }
.itg-portal-login__form button { min-height:44px; border:0; border-radius:9px; background:#003b73; color:#fff; font-weight:900; cursor:pointer; }
.itg-portal-login__error { padding:11px 13px; border-left:4px solid #b4232b; background:#fff0f1; color:#841a21; }

@media (max-width:1100px) {
    .itg-portal-detail-grid { grid-template-columns:1fr; }
    .itg-portal-settings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .itg-portal-entry-edit { grid-template-columns:repeat(2,minmax(130px,1fr)); }
    .itg-portal-kpis.is-six { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:800px) {
    .itg-portal-hero,.itg-portal-page-heading,.itg-portal-card__header,.itg-portal-club-card > header,.itg-portal-club-card footer,.itg-portal-account-list article { align-items:stretch; flex-direction:column; }
    .itg-portal-tabs { flex-wrap:wrap; }
    .itg-portal-tabs__back { margin-left:0; }
    .itg-portal-kpis,.itg-portal-kpis.is-six,.itg-portal-info-grid,.itg-portal-day-grid { grid-template-columns:1fr; }
    .itg-portal-settings-grid { grid-template-columns:1fr; }
    .itg-portal-login { grid-template-columns:1fr; }
    .itg-portal-login__brand,.itg-portal-login__form { padding:30px; }
    .itg-portal-add-account { grid-template-columns:1fr; }
    .itg-portal-weekly > div { grid-template-columns:80px 1fr 70px; }
    .itg-portal-weekly small { grid-column:2/-1; }
}
@media (max-width:560px) {
    .itg-portal-hero { padding:24px 20px; border-radius:15px 15px 0 0; }
    .itg-portal-user { min-width:0; }
    .itg-portal-entry-edit { grid-template-columns:1fr; }
    .itg-form-heading__tools { align-items:flex-end; flex-direction:column; }
}


/* ITG 1.0.28 – robuuste zelfstandige Frontend-Verwaltung */
html { scroll-behavior: smooth; }
body.itg-portal-standalone-body {
    min-height: 100vh;
    margin: 0;
    background: linear-gradient(180deg, #eef3f8 0%, #f7f9fc 100%);
}
body.itg-portal-standalone-body #wpadminbar { position: fixed; }
.itg-portal-standalone-shell {
    width: 100%;
    max-width: 1580px;
    min-height: 100vh;
    margin: 0 auto;
    padding: 24px 28px 56px;
}
.itg-portal-standalone-shell > .itg-portal,
.itg-portal-standalone-shell > .itg-portal-login {
    margin-top: 0;
}
@media (max-width: 782px) {
    .itg-portal-standalone-shell { padding: 12px 10px 36px; }
    body.admin-bar .itg-portal-standalone-shell { padding-top: 58px; }
}


/* ITG 1.0.29 – modernere Portaloptik und bessere Lesbarkeit */
.itg-portal-card {
    border-color: #d6e3ee;
    border-radius: 18px;
    box-shadow: 0 12px 28px rgba(0,59,115,.06);
}
.itg-portal-card__header {
    padding: 20px 22px;
    background: linear-gradient(180deg,#ffffff 0%,#f6fafe 100%);
}
.itg-portal-card__header h3 { font-size: 22px; }
.itg-portal-card__header p { font-size: 14px; }
.itg-portal-page-heading h2 { font-size: 34px; }
.itg-portal-search {
    min-height: 42px;
    padding: 10px 14px;
    border-color: #c2d4e2;
    border-radius: 10px;
    background: #fff;
    color: var(--ink);
    box-shadow: inset 0 1px 2px rgba(0,43,85,.04);
}
.itg-portal-search:focus,
.itg-portal-form input:focus,
.itg-portal-form select:focus,
.itg-portal-settings-grid input:focus,
.itg-portal-settings-grid select:focus,
.itg-portal-settings-grid textarea:focus,
.itg-portal-entry-edit input:focus,
.itg-portal-entry-edit select:focus,
.itg-portal-add-account input:focus,
.itg-portal-day-grid input:focus,
.itg-portal-category-settings input:focus,
.itg-portal-category-settings select:focus {
    border-color: var(--cyan);
    box-shadow: 0 0 0 2px rgba(0,169,224,.14);
    outline: none;
}

.itg-portal-subtabs,
.itg-portal-tabs {
    box-shadow: 0 8px 20px rgba(0,59,115,.06);
}
.itg-portal-subtabs a,
.itg-portal-tabs a {
    min-height: 40px;
    border-radius: 10px;
}
.itg-portal-subtabs a.is-active,
.itg-portal-tabs a.is-active {
    box-shadow: 0 8px 16px rgba(0,59,115,.18);
}

.itg-portal-row-actions a,
.itg-portal-row-actions button,
.itg-portal-entry-edit button,
.itg-portal-form button,
.itg-portal-club-tools button,
.itg-portal-club-card footer a,
.itg-portal-club-card footer button,
.itg-portal-add-account button,
.itg-portal-account-actions button,
.itg-portal-savebar button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}
.itg-portal-row-actions a:hover,
.itg-portal-row-actions button:hover,
.itg-portal-entry-edit button:hover,
.itg-portal-form button:hover,
.itg-portal-club-tools button:hover,
.itg-portal-club-card footer a:hover,
.itg-portal-club-card footer button:hover,
.itg-portal-add-account button:hover,
.itg-portal-account-actions button:hover,
.itg-portal-savebar button:hover,
.itg-portal-row-actions a:focus,
.itg-portal-row-actions button:focus,
.itg-portal-entry-edit button:focus,
.itg-portal-form button:focus,
.itg-portal-club-tools button:focus,
.itg-portal-club-card footer a:focus,
.itg-portal-club-card footer button:focus,
.itg-portal-add-account button:focus,
.itg-portal-account-actions button:focus,
.itg-portal-savebar button:focus {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(0,59,115,.10);
    outline: none;
}
.itg-portal-row-actions a,
.itg-portal-club-card footer a {
    background: #fff;
    color: var(--navy) !important;
}
.itg-portal-row-actions a:hover,
.itg-portal-club-card footer a:hover,
.itg-portal-row-actions a:focus,
.itg-portal-club-card footer a:focus {
    background: #f0f7fd;
    border-color: #9bc8e1;
    color: var(--blue) !important;
}
.itg-portal-row-actions form:nth-of-type(1) button,
.itg-portal-form > button,
.itg-portal-add-account button,
.itg-portal-savebar button,
.itg-portal-club-tools button,
.itg-portal-club-card footer button {
    border-color: var(--navy);
    background: var(--navy);
    color: #fff;
}
.itg-portal-row-actions form:nth-of-type(1) button:hover,
.itg-portal-form > button:hover,
.itg-portal-add-account button:hover,
.itg-portal-savebar button:hover,
.itg-portal-club-tools button:hover,
.itg-portal-club-card footer button:hover,
.itg-portal-row-actions form:nth-of-type(1) button:focus,
.itg-portal-form > button:focus,
.itg-portal-add-account button:focus,
.itg-portal-savebar button:focus,
.itg-portal-club-tools button:focus,
.itg-portal-club-card footer button:focus {
    border-color: #00569b;
    background: #00569b;
    color: #fff;
}
.itg-portal-row-actions .is-danger,
.itg-portal-entry-edit .is-danger,
.itg-portal-account-actions .is-danger {
    background: #fff5f5;
    border-color: #efc0c4;
    color: #a6222b;
}
.itg-portal-row-actions .is-danger:hover,
.itg-portal-entry-edit .is-danger:hover,
.itg-portal-account-actions .is-danger:hover,
.itg-portal-row-actions .is-danger:focus,
.itg-portal-entry-edit .is-danger:focus,
.itg-portal-account-actions .is-danger:focus {
    background: #ffe8ea;
    border-color: #e39ca1;
    color: #8f1b23;
}
.itg-portal-club-tools {
    align-items: center;
}
.itg-portal-club-tools form { flex: 0 0 auto; }
.itg-portal-club-tools button {
    min-width: 260px;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.itg-portal-club-card {
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(0,59,115,.05);
}
.itg-portal-club-card > header {
    padding: 20px 20px 18px;
    background: linear-gradient(180deg,#fbfdff 0%,#f4f8fc 100%);
}
.itg-portal-club-card h3 {
    font-size: 22px;
    line-height: 1.2;
}
.itg-portal-club-card p {
    font-size: 14px;
}
.itg-portal-club-amounts span {
    min-width: 122px;
    padding: 10px 12px;
    border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
}
.itg-portal-club-amounts strong { font-size: 14px; }
.itg-portal-club-ids {
    padding: 16px 20px;
    background: #fff;
}
.itg-portal-club-ids a {
    min-width: 160px;
    padding: 10px 12px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0,59,115,.04);
}
.itg-portal-club-card footer {
    flex-wrap: wrap;
    padding: 14px 20px;
    background: #f8fbfe;
    color: var(--muted);
    font-size: 12px;
}
.itg-portal-club-card footer > span {
    font-weight: 700;
    color: #50667d;
}
.itg-portal-club-card footer > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-left: auto;
}
.itg-portal-club-card footer a,
.itg-portal-club-card footer button {
    min-width: 170px;
}
.itg-portal-club-card footer button[disabled] {
    border-color: #dbe3eb;
    background: #eef2f6;
    color: #6a7e92;
    box-shadow: none;
    cursor: not-allowed;
    transform: none;
}

.itg-portal-table th {
    background: #f1f6fb;
    color: #4d647b;
}
.itg-portal-table td {
    padding: 15px 14px;
}
.itg-portal-table tbody tr:nth-child(4n+1) td,
.itg-portal-table tbody tr:nth-child(4n+2) td {
    background: #fff;
}
.itg-portal-table tbody tr:nth-child(4n+3) td,
.itg-portal-table tbody tr:nth-child(4n+4) td {
    background: #fbfdff;
}
.itg-portal-entry-row details {
    padding: 10px 14px;
    border-radius: 10px;
    box-shadow: inset 0 0 0 1px #e5edf4;
}
.itg-portal-entry-row summary {
    font-size: 14px;
}
.itg-portal-status {
    padding: 6px 11px;
    font-size: 11px;
    letter-spacing: .02em;
}

@media (max-width: 900px) {
    .itg-portal-club-tools {
        width: 100%;
        justify-content: stretch;
    }
    .itg-portal-club-tools form,
    .itg-portal-club-tools .itg-portal-search {
        width: 100%;
    }
    .itg-portal-club-tools button,
    .itg-portal-club-card footer a,
    .itg-portal-club-card footer button {
        width: 100%;
        min-width: 0;
    }
}


/* ITG 1.0.31 – kaartweergave voor Alle Anmeldungen */
.itg-portal-registration-section {
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
}
.itg-portal-registration-section__header {
    margin-bottom: 14px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0,59,115,.055);
}
.itg-portal-registration-section__header .itg-portal-eyebrow {
    margin-bottom: 5px;
    color: var(--cyan);
}
.itg-portal-search-wrap {
    position: relative;
    display: block;
    width: min(100%, 470px);
    flex: 0 1 470px;
}
.itg-portal-search-wrap .itg-portal-search {
    width: 100%;
    padding-left: 42px;
}
.itg-portal-search-icon {
    position: absolute;
    left: 15px;
    top: 50%;
    z-index: 1;
    transform: translateY(-50%);
    color: #6d8398;
    font-size: 20px;
    pointer-events: none;
}
.itg-portal-registration-cards {
    display: grid;
    gap: 14px;
}
.itg-portal-registration-card {
    position: relative;
    overflow: hidden;
    border: 1px solid #d8e4ee;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0,59,115,.05);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.itg-portal-registration-card::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 5px;
    background: #f0aa2a;
    content: "";
}
.itg-portal-registration-card.is-paid::before { background: #38a86a; }
.itg-portal-registration-card:hover {
    transform: translateY(-1px);
    border-color: #c5d8e7;
    box-shadow: 0 13px 30px rgba(0,59,115,.075);
}
.itg-portal-registration-card__main {
    display: grid;
    grid-template-columns: 120px minmax(190px,1.15fr) minmax(220px,1.25fr) minmax(260px,.95fr) minmax(230px,auto);
    gap: 22px;
    align-items: center;
    padding: 20px 22px 18px 26px;
}
.itg-portal-registration-label {
    display: block;
    margin-bottom: 6px;
    color: #7890a5;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.itg-portal-registration-id small,
.itg-portal-registration-club small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 12px;
}
.itg-portal-registration-id .itg-portal-number {
    font-size: 21px;
    line-height: 1;
}
.itg-portal-registration-club strong {
    display: block;
    color: var(--navy);
    font-size: 16px;
    line-height: 1.25;
}
.itg-portal-registration-contact {
    min-width: 0;
}
.itg-portal-registration-contact a {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
    color: var(--blue);
    font-size: 14px;
    text-decoration: none;
}
.itg-portal-registration-contact a:hover,
.itg-portal-registration-contact a:focus {
    text-decoration: underline;
}
.itg-portal-registration-metrics {
    display: grid;
    grid-template-columns: repeat(3,minmax(72px,1fr));
    gap: 8px;
}
.itg-portal-registration-metrics > span {
    min-height: 67px;
    padding: 10px 11px;
    border: 1px solid #dce6ef;
    border-radius: 12px;
    background: #f8fbfe;
}
.itg-portal-registration-metrics small {
    display: block;
    margin-bottom: 6px;
    color: #74899d;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.itg-portal-registration-metrics strong {
    color: var(--navy);
    font-size: 15px;
    white-space: nowrap;
}
.itg-portal-registration-metrics .itg-portal-status {
    padding: 5px 9px;
    font-size: 10px;
}
.itg-portal-registration-actions {
    justify-content: flex-end;
    align-content: center;
}
.itg-portal-registration-actions a,
.itg-portal-registration-actions button {
    min-height: 36px;
    padding: 7px 12px;
    border-radius: 9px;
    font-size: 12px;
}
.itg-portal-registration-actions .is-edit {
    border-color: #b6d3e5;
    background: #fff;
    color: var(--navy) !important;
}
.itg-portal-registration-actions form:first-of-type button {
    border-color: #0d5ba0;
    background: #0d5ba0;
    color: #fff;
}
.itg-portal-registration-actions .is-danger {
    background: #fff;
    color: #a6222b;
}
.itg-portal-registration-card__entries {
    margin: 0;
    border-top: 1px solid #e5edf4;
    background: #f8fbfe;
}
.itg-portal-registration-card__entries summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 13px 20px 13px 26px;
    color: var(--navy);
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
}
.itg-portal-registration-card__entries summary::-webkit-details-marker { display: none; }
.itg-portal-registration-card__entries summary::before {
    display: inline-grid;
    place-items: center;
    width: 22px;
    height: 22px;
    margin-right: 8px;
    border-radius: 7px;
    background: #e7f5fb;
    color: #0078b6;
    content: "+";
    font-size: 16px;
    line-height: 1;
}
.itg-portal-registration-card__entries[open] summary::before { content: "−"; }
.itg-portal-registration-card__entries summary > span:first-child {
    display: inline-flex;
    align-items: center;
}
.itg-portal-registration-card__entries-action {
    color: #6b8195;
    font-size: 11px;
    font-weight: 700;
}
.itg-portal-registration-card__entries[open] .itg-portal-registration-card__entries-action::after { content: ""; }
.itg-portal-registration-card__entries[open] .itg-portal-registration-card__entries-action { color: var(--blue); }
.itg-portal-registration-card__entries .itg-portal-entry-chips {
    margin: 0;
    padding: 0 20px 18px 26px;
}
.itg-portal-registration-card__entries .itg-portal-entry-chips span {
    min-width: 170px;
    padding: 9px 11px;
    border-radius: 10px;
    background: #fff;
}

@media (max-width: 1300px) {
    .itg-portal-registration-card__main {
        grid-template-columns: 110px minmax(170px,1fr) minmax(190px,1fr) minmax(245px,1fr);
    }
    .itg-portal-registration-actions {
        grid-column: 1/-1;
        justify-content: flex-end;
        padding-top: 2px;
    }
}
@media (max-width: 980px) {
    .itg-portal-registration-card__main {
        grid-template-columns: 110px minmax(0,1fr);
        gap: 18px;
    }
    .itg-portal-registration-contact,
    .itg-portal-registration-metrics,
    .itg-portal-registration-actions {
        grid-column: 1/-1;
    }
    .itg-portal-registration-actions { justify-content: flex-start; }
}
@media (max-width: 700px) {
    .itg-portal-registration-section__header { align-items: stretch; flex-direction: column; }
    .itg-portal-search-wrap { width: 100%; flex-basis: auto; }
    .itg-portal-registration-card__main {
        grid-template-columns: 1fr;
        padding: 19px 18px 16px 22px;
    }
    .itg-portal-registration-contact,
    .itg-portal-registration-metrics,
    .itg-portal-registration-actions { grid-column: auto; }
    .itg-portal-registration-metrics { grid-template-columns: repeat(3,1fr); }
    .itg-portal-registration-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    .itg-portal-registration-actions form,
    .itg-portal-registration-actions a,
    .itg-portal-registration-actions button { width: 100%; }
    .itg-portal-registration-actions form:last-child { grid-column: 1/-1; }
    .itg-portal-registration-card__entries summary {
        padding-left: 22px;
    }
    .itg-portal-registration-card__entries-action { display: none; }
}

/* ITG 1.0.32 – volledig interactieve gewichtsverdeling in frontend-admin */
.itg-portal-weight-header {
    align-items: flex-end;
}
.itg-portal-weight-header__tools {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    min-width: min(100%, 430px);
}
.itg-portal-weight-header__tools label {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 6px;
    color: var(--navy);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.itg-portal-weight-header__tools select {
    width: 100%;
    min-height: 42px;
    padding: 8px 38px 8px 12px;
    border: 1px solid #bdd0df;
    border-radius: 10px;
    background: #fff;
    color: var(--ink);
    font-size: 14px;
    font-weight: 700;
    text-transform: none;
    box-shadow: inset 0 1px 2px rgba(0,43,85,.04);
}
.itg-portal-weight-header__tools select:focus {
    border-color: var(--cyan);
    box-shadow: 0 0 0 2px rgba(0,169,224,.14);
    outline: none;
}
.itg-portal-weight-total {
    min-width: 92px;
    padding: 9px 13px;
    border: 1px solid #bfe1ef;
    border-radius: 11px;
    background: var(--cyan-soft);
    text-align: center;
}
.itg-portal-weight-total small {
    display: block;
    color: #36718f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.itg-portal-weight-total strong {
    display: block;
    margin-top: 2px;
    color: var(--navy);
    font-size: 21px;
    line-height: 1.1;
}
.itg-portal-weight-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(300px, .7fr);
    gap: 18px;
    padding: 20px;
    background: #f7fafc;
}
.itg-portal-weight-chart {
    display: grid;
    align-content: start;
    gap: 9px;
    min-width: 0;
}
.itg-portal-weight-row {
    display: grid;
    grid-template-columns: 64px minmax(100px, 1fr) 70px;
    align-items: center;
    gap: 13px;
    width: 100%;
    min-height: 53px;
    padding: 8px 11px 8px 14px;
    border: 1px solid #d4e1eb;
    border-radius: 12px;
    background: #fff;
    color: var(--ink);
    text-align: left;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(0,59,115,.035);
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease, transform .15s ease;
}
.itg-portal-weight-row:hover,
.itg-portal-weight-row:focus {
    border-color: #91cbe3;
    background: #fbfeff;
    box-shadow: 0 7px 17px rgba(0,59,115,.08);
    outline: none;
    transform: translateY(-1px);
}
.itg-portal-weight-row.is-selected {
    border-color: var(--cyan);
    background: linear-gradient(90deg, #f0fbff 0%, #fff 70%);
    box-shadow: 0 0 0 2px rgba(0,169,224,.11), 0 7px 18px rgba(0,59,115,.08);
}
.itg-portal-weight-row.is-empty {
    color: #6f8294;
    background: #fbfcfd;
}
.itg-portal-weight-row__label {
    color: var(--navy);
    font-size: 15px;
    font-weight: 900;
}
.itg-portal-weight-row__track {
    display: block;
    overflow: hidden;
    height: 11px;
    border-radius: 999px;
    background: #dce7f0;
}
.itg-portal-weight-row__fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--cyan), var(--blue));
    transition: width .25s ease;
}
.itg-portal-weight-row.is-selected .itg-portal-weight-row__fill {
    background: linear-gradient(90deg, #00b8eb, #003b73);
}
.itg-portal-weight-row__value {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    gap: 5px;
    color: var(--navy);
}
.itg-portal-weight-row__value strong {
    font-size: 18px;
    line-height: 1;
}
.itg-portal-weight-row__value small {
    color: var(--muted);
    font-size: 10px;
    font-weight: 700;
}
.itg-portal-weight-detail {
    align-self: start;
    min-height: 320px;
    padding: 20px;
    border: 1px solid #d5e2ec;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 7px 20px rgba(0,59,115,.055);
}
.itg-portal-weight-detail__eyebrow {
    display: block;
    color: var(--cyan);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.itg-portal-weight-detail h4 {
    margin: 7px 0 5px;
    color: var(--navy);
    font-size: 24px;
    line-height: 1.1;
}
.itg-portal-weight-detail > p {
    margin: 0;
    color: var(--muted);
    line-height: 1.5;
}
.itg-portal-weight-detail__count {
    margin-bottom: 15px !important;
    color: var(--blue) !important;
    font-size: 13px;
    font-weight: 800;
}
.itg-portal-weight-detail__empty {
    display: grid;
    gap: 4px;
    margin-top: 18px;
    padding: 16px;
    border: 1px dashed #c5d6e3;
    border-radius: 11px;
    background: #f7fafc;
}
.itg-portal-weight-detail__empty strong { color: var(--navy); }
.itg-portal-weight-detail__empty span { color: var(--muted); font-size: 12px; }
.itg-portal-weight-members {
    display: grid;
    gap: 8px;
    max-height: 440px;
    margin: 0;
    padding: 0;
    overflow: auto;
    list-style: none;
}
.itg-portal-weight-member {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 11px 12px;
    border: 1px solid #e0e8ef;
    border-left: 4px solid var(--cyan);
    border-radius: 10px;
    background: #fbfdff;
}
.itg-portal-weight-member__main {
    min-width: 0;
}
.itg-portal-weight-member__main strong {
    display: block;
    overflow: hidden;
    color: var(--navy);
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.itg-portal-weight-member__main small {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    color: var(--muted);
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.itg-portal-weight-member__meta {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-end;
    flex-direction: column;
    gap: 3px;
}
.itg-portal-weight-member__meta b {
    padding: 4px 7px;
    border-radius: 7px;
    background: var(--cyan-soft);
    color: var(--blue);
    font-size: 11px;
}
.itg-portal-weight-member__meta small {
    color: #7890a4;
    font-size: 10px;
}
.itg-portal-weight-chart__empty {
    margin: 0;
    padding: 18px;
    border: 1px dashed #c7d7e4;
    border-radius: 12px;
    background: #fff;
    color: var(--muted);
}
@media (max-width: 1050px) {
    .itg-portal-weight-layout { grid-template-columns: 1fr; }
    .itg-portal-weight-detail { min-height: 0; }
}
@media (max-width: 800px) {
    .itg-portal-weight-header__tools { width: 100%; min-width: 0; }
}
@media (max-width: 560px) {
    .itg-portal-weight-header__tools { align-items: stretch; flex-direction: column; }
    .itg-portal-weight-total { width: 100%; }
    .itg-portal-weight-layout { padding: 14px; }
    .itg-portal-weight-row { grid-template-columns: 52px minmax(80px,1fr) 54px; gap: 8px; padding-left: 10px; }
    .itg-portal-weight-row__value small { display: none; }
    .itg-portal-weight-member { align-items: flex-start; }
}


/* ITG 1.0.33 – Turniertage und vollständige Wochenentwicklung */
.itg-portal-day-overview {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 18px;
}
.itg-portal-day-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(0,59,115,.055);
}
.itg-portal-day-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 22px 15px;
}
.itg-portal-day-card__eyebrow {
    display: block;
    margin-bottom: 5px;
    color: var(--cyan);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.itg-portal-day-card h3 {
    margin: 0;
    color: var(--navy);
    font-size: 21px;
    line-height: 1.2;
}
.itg-portal-day-card__header p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 12px;
}
.itg-portal-day-card__starts {
    flex: 0 0 auto;
    padding: 8px 12px;
    border-radius: 999px;
    background: var(--cyan-soft);
    color: var(--blue);
    font-size: 12px;
    font-weight: 900;
}
.itg-portal-day-card__metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    padding: 0 22px 14px;
}
.itg-portal-day-card__metrics span {
    min-width: 0;
    padding: 11px 12px;
    border-radius: 11px;
    background: #f3f7fb;
}
.itg-portal-day-card__metrics small {
    display: block;
    color: #60758a;
    font-size: 9px;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.itg-portal-day-card__metrics strong {
    display: block;
    margin-top: 5px;
    color: var(--navy);
    font-size: 15px;
    white-space: nowrap;
}
.itg-portal-day-card__schedule {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 0 22px 20px;
}
.itg-portal-day-card__schedule > span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 30px;
    padding: 6px 10px;
    border: 1px solid #cfe0ed;
    border-radius: 999px;
    background: #f9fcff;
    color: #34536f;
    font-size: 11px;
}
.itg-portal-day-card__schedule strong { color: var(--navy); }
.itg-portal-day-card__schedule small { color: #71859a; font-size: 9px; }

.itg-portal-weekly-insights { margin-bottom: 18px; }
.itg-portal-chart-downloads {
    display: flex;
    gap: 8px;
    flex: 0 0 auto;
}
.itg-portal-chart-downloads button {
    min-width: 58px;
    min-height: 38px;
    padding: 8px 13px;
    border: 1px solid #bfd0df;
    border-radius: 10px;
    background: #fff;
    color: var(--navy);
    font-weight: 800;
    cursor: pointer;
}
.itg-portal-chart-downloads button:hover,
.itg-portal-chart-downloads button:focus {
    border-color: var(--cyan);
    background: #f0f9fd;
    outline: none;
}
.itg-portal-weekly-controls {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
    padding:0 22px 8px;
}
.itg-portal-weekly-range,
.itg-portal-weekly-toggles,
.itg-portal-weekly-summary {
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.itg-portal-weekly-range span { color:var(--muted); font-weight:700; }
.itg-portal-weekly-range label { display:inline-flex; align-items:center; gap:8px; color:var(--ink); }
.itg-portal-weekly-range select {
    min-width:96px;
    border:1px solid #c7d7e5;
    border-radius:10px;
    padding:9px 34px 9px 12px;
    color:var(--navy);
    font-weight:700;
    background:#fff;
}
.itg-portal-weekly-range button,
.itg-portal-weekly-toggle {
    border:1px solid #c7d7e5;
    border-radius:999px;
    background:#f6fbff;
    color:var(--navy);
    font-weight:800;
}
.itg-portal-weekly-range button { padding:9px 14px; cursor:pointer; }
.itg-portal-weekly-toggle { display:inline-flex; align-items:center; gap:8px; padding:8px 13px; }
.itg-portal-weekly-toggle input { accent-color:var(--navy); }
.itg-portal-weekly-summary { padding:0 22px 10px; }
.itg-portal-weekly-summary span {
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:#eef6fc;
    color:var(--navy);
    font-weight:800;
}
.itg-portal-weekly-chart { padding:0 22px 22px; }
.itg-portal-weekly-visual {
    border:1px solid #d8e6f1;
    border-radius:18px;
    background:linear-gradient(180deg,#fbfdff 0%,#f4f8fc 100%);
    padding:18px;
    overflow-x:auto;
}
.itg-portal-weekly-svg { width:100%; min-width:760px; height:auto; display:block; }
.itg-portal-weekly-grid-line { stroke:#dce6f0; stroke-width:1; }
.itg-portal-weekly-axis-label { fill:#60758a; font-size:14px; font-weight:700; }
.itg-portal-weekly-axis-label.is-x { fill:var(--ink); }
.itg-portal-weekly-bar-rect { fill:#19a4d5; }
.itg-portal-weekly-line { fill:none; stroke:#0b4f9f; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.itg-portal-weekly-point { fill:#0b4f9f; }
.itg-portal-weekly-value-label { fill:var(--navy); font-size:16px; font-weight:800; }
.itg-portal-weekly-point-label { fill:#0b4f9f; font-size:15px; font-weight:800; }
.itg-portal-empty { margin: 0; color: var(--muted); }
@media (max-width: 1050px) {
    .itg-portal-day-overview { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
    .itg-portal-day-card__header,
    .itg-portal-weekly-controls,
    .itg-portal-weekly-range,
    .itg-portal-weekly-toggles { align-items: flex-start; flex-direction: column; }
    .itg-portal-day-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .itg-portal-chart-downloads { width: 100%; }
    .itg-portal-chart-downloads button { flex: 1; }
    .itg-portal-weekly-chart,
    .itg-portal-weekly-controls,
    .itg-portal-weekly-summary { padding-left:16px; padding-right:16px; }
    .itg-portal-weekly-visual { padding:12px; }
}

/* ITG 1.0.34 – Frontend-Informationen auf Backoffice-Niveau */
.itg-portal-information-heading {
    margin-bottom: 18px;
}
.itg-portal-insight-panel {
    margin: 18px 0;
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,59,115,.065);
}
.itg-portal-insight-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 21px;
}
.itg-portal-insight-panel__eyebrow {
    display: inline-block;
    color: var(--cyan);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.itg-portal-insight-panel__header h3 {
    margin: 5px 0 5px;
    color: var(--navy);
    font-size: 24px;
    line-height: 1.2;
}
.itg-portal-insight-panel__header p {
    max-width: 760px;
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}
.itg-portal-insight-panel__header-tools {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}
.itg-portal-insight-panel__meta {
    min-width: 155px;
    padding: 10px 13px;
    border-radius: 11px;
    background: #f3f7fb;
    text-align: right;
}
.itg-portal-insight-panel__meta span {
    display: block;
    color: var(--muted);
    font-size: 11px;
}
.itg-portal-insight-panel__meta span.is-open { color: #18864b; }
.itg-portal-insight-panel__meta span.is-full { color: #bd7100; }
.itg-portal-insight-panel__meta span.is-disabled { color: #718096; }
.itg-portal-insight-panel__meta strong {
    display: block;
    margin-top: 4px;
    color: var(--navy);
    font-size: 18px;
}
.itg-portal-insight-empty {
    margin: 0;
    padding: 20px;
    color: var(--muted);
}

.itg-portal-weight-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}
.itg-portal-weight-tab {
    appearance: none;
    min-width: 68px;
    padding: 8px 13px !important;
    border: 1px solid #cbd9e6 !important;
    border-radius: 999px !important;
    background: #f8fbfe !important;
    color: #315774 !important;
    font: inherit;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    box-shadow: none !important;
    cursor: pointer;
}
.itg-portal-weight-tab:hover,
.itg-portal-weight-tab:focus {
    border-color: var(--cyan) !important;
    background: #eefaff !important;
    color: var(--navy) !important;
    outline: none !important;
}
.itg-portal-weight-tab.is-active {
    border-color: var(--navy) !important;
    background: var(--navy) !important;
    color: #fff !important;
    box-shadow: 0 5px 12px rgba(0,59,115,.17) !important;
}
.itg-portal-insight-weight-layout {
    display: grid;
    grid-template-columns: minmax(0,1.55fr) minmax(300px,.75fr);
    gap: 22px;
}
.itg-portal-insight-weight-chart {
    display: grid;
    align-content: start;
    gap: 9px;
    min-width: 0;
}
.itg-portal-insight-weight-bar {
    appearance: none;
    display: grid !important;
    grid-template-columns: 62px minmax(120px,1fr) 54px;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 46px;
    margin: 0 !important;
    padding: 9px 11px !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: var(--ink) !important;
    font: inherit !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-transform: none !important;
    box-shadow: none !important;
    cursor: pointer;
}
.itg-portal-insight-weight-bar:hover,
.itg-portal-insight-weight-bar:focus {
    border-color: #cfe0ed !important;
    background: #f7fbfe !important;
    color: var(--ink) !important;
    outline: none !important;
    transform: none !important;
}
.itg-portal-insight-weight-bar.is-selected {
    border-color: #8edcf2 !important;
    background: #eefaff !important;
    box-shadow: 0 0 0 1px rgba(0,169,224,.13) !important;
}
.itg-portal-insight-weight-bar.is-empty {
    opacity: .48;
}
.itg-portal-insight-weight-bar__label {
    color: var(--navy);
    font-size: 13px;
    font-weight: 900;
}
.itg-portal-insight-weight-bar__track {
    display: block;
    overflow: hidden;
    height: 16px;
    border-radius: 999px;
    background: #dce6f0;
}
.itg-portal-insight-weight-bar__fill {
    display: block;
    min-width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg,var(--cyan),#0074bd);
    transition: width .25s ease;
}
.itg-portal-insight-weight-bar__value {
    color: var(--navy);
    font-size: 14px;
    text-align: right;
}
.itg-portal-insight-weight-detail {
    min-height: 320px;
    padding: 20px;
    border: 1px solid #d8e5ef;
    border-radius: 14px;
    background: linear-gradient(180deg,#f8fbfe 0%,#fff 100%);
}
.itg-portal-insight-weight-detail__eyebrow {
    color: var(--cyan);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.itg-portal-insight-weight-detail h4 {
    margin: 6px 0 5px;
    color: var(--navy);
    font-size: 21px;
}
.itg-portal-insight-weight-detail > p {
    color: var(--muted);
}
.itg-portal-insight-weight-detail__count {
    margin: 0 0 14px !important;
    color: #00518f !important;
    font-weight: 800;
}
.itg-portal-insight-weight-detail__empty {
    display: grid;
    gap: 4px;
    margin-top: 16px;
    padding: 16px;
    border: 1px dashed #c5d6e3;
    border-radius: 11px;
    background: #f7fafc;
}
.itg-portal-insight-weight-detail__empty strong { color: var(--navy); }
.itg-portal-insight-weight-detail__empty span { color: var(--muted); font-size: 12px; }
.itg-portal-insight-weight-members {
    display: grid;
    gap: 7px;
    max-height: 390px;
    margin: 0;
    padding: 0;
    overflow: auto;
    list-style: none;
}
.itg-portal-insight-weight-member {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0;
    padding: 10px 11px;
    border: 1px solid #e1eaf2;
    border-radius: 9px;
    background: #fff;
}
.itg-portal-insight-weight-member__main {
    min-width: 0;
}
.itg-portal-insight-weight-member__main strong {
    display: block;
    overflow: hidden;
    color: var(--navy);
    text-overflow: ellipsis;
    white-space: nowrap;
}
.itg-portal-insight-weight-member__main small {
    display: block;
    margin-top: 2px;
    overflow: hidden;
    color: var(--muted);
    text-overflow: ellipsis;
    white-space: nowrap;
}
.itg-portal-insight-weight-member__meta {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-end;
    flex-direction: column;
    gap: 4px;
}
.itg-portal-insight-weight-member__meta b {
    padding: 4px 7px;
    border-radius: 7px;
    background: var(--cyan-soft);
    color: var(--blue);
    font-size: 11px;
}
.itg-portal-insight-weight-member__meta small {
    color: #7890a4;
    font-size: 10px;
}

.itg-portal-insight-segmented {
    display: inline-flex;
    overflow: hidden;
    border: 1px solid #cbd9e6;
    border-radius: 10px;
    background: #f6f9fc;
}
.itg-portal-insight-segmented button {
    appearance: none;
    min-height: 36px;
    padding: 0 13px !important;
    border: 0 !important;
    border-right: 1px solid #d8e3ed !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #45627f !important;
    font: inherit !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-transform: none !important;
    box-shadow: none !important;
    cursor: pointer;
}
.itg-portal-insight-segmented button:last-child { border-right: 0 !important; }
.itg-portal-insight-segmented button.is-active {
    background: var(--navy) !important;
    color: #fff !important;
}
.itg-portal-federation-layout {
    display: grid;
    grid-template-columns: minmax(360px,.85fr) minmax(520px,1.15fr);
    gap: 26px;
}
.itg-portal-federation-chart {
    display: grid;
    align-content: start;
    gap: 12px;
}
.itg-portal-federation-bar__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 5px;
}
.itg-portal-federation-bar__label {
    overflow: hidden;
    color: var(--navy);
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.itg-portal-federation-bar__heading strong {
    flex: 0 0 auto;
    color: #00518f;
    font-size: 12px;
}
.itg-portal-federation-bar__track {
    display: block;
    overflow: hidden;
    height: 12px;
    border-radius: 999px;
    background: #dce5ef;
}
.itg-portal-federation-bar__fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg,#00a9e0,#0056a6);
    transition: width .25s ease;
}
.itg-portal-insight-table-wrap {
    overflow-x: auto;
    border: 1px solid #d8e3ed;
    border-radius: 12px;
}
.itg-portal-insight-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}
.itg-portal-insight-table th,
.itg-portal-insight-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #e5edf4;
    text-align: left;
    vertical-align: middle;
}
.itg-portal-insight-table thead th {
    background: #f2f7fb;
    color: #44617d;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.itg-portal-insight-table tbody th { color: var(--navy); }
.itg-portal-insight-table tbody tr:last-child th,
.itg-portal-insight-table tbody tr:last-child td { border-bottom: 0; }
.itg-portal-insight-table tbody tr:hover { background: #fbfdff; }
.itg-portal-category-state {
    display: inline-flex;
    align-items: center;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
}
.itg-portal-category-state.is-open { background: #e8f7ee; color: #14783f; }
.itg-portal-category-state.is-full { background: #fff4dd; color: #a45e00; }
.itg-portal-category-state.is-disabled { background: #eef1f5; color: #687789; }

.itg-portal-country-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(300px,1fr));
    gap: 13px;
}
.itg-portal-country-card {
    position: relative;
    padding: 18px 20px;
    border: 1px solid #d9e5ef;
    border-radius: 13px;
    background: linear-gradient(180deg,#fff,#f8fbfe);
}
.itg-portal-country-card h4 {
    margin: 0 60px 13px 0;
    color: var(--navy);
    font-size: 18px;
    text-transform: uppercase;
}
.itg-portal-country-card__rank {
    position: absolute;
    top: 17px;
    right: 18px;
    color: #1265a1;
    font-size: 12px;
}
.itg-portal-country-card__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    color: var(--muted);
    font-size: 12px;
}
.itg-portal-country-card__stats strong { color: var(--navy); }
.itg-portal-country-card__bar {
    display: block;
    overflow: hidden;
    height: 12px;
    margin-top: 15px;
    border-radius: 999px;
    background: #dbe4ee;
}
.itg-portal-country-card__bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--cyan);
}

.itg-portal-chart-downloads button {
    appearance: none;
    background: #fff !important;
    color: var(--navy) !important;
    text-transform: none !important;
    box-shadow: none !important;
}
.itg-portal-chart-downloads button:hover,
.itg-portal-chart-downloads button:focus {
    border-color: var(--cyan) !important;
    background: #f0f9fd !important;
    color: var(--navy) !important;
}

@media (max-width: 1180px) {
    .itg-portal-insight-weight-layout,
    .itg-portal-federation-layout {
        grid-template-columns: 1fr;
    }
    .itg-portal-insight-weight-detail { min-height: 0; }
}
@media (max-width: 900px) {
    .itg-portal-insight-panel__header {
        align-items: stretch;
        flex-direction: column;
    }
    .itg-portal-insight-panel__header-tools {
        justify-content: flex-start;
    }
    .itg-portal-insight-panel__meta {
        text-align: left;
    }
    .itg-portal-country-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 640px) {
    .itg-portal-insight-panel {
        padding: 18px;
    }
    .itg-portal-insight-weight-bar {
        grid-template-columns: 52px minmax(90px,1fr) 40px;
        gap: 8px;
        padding: 8px 5px !important;
    }
    .itg-portal-insight-segmented {
        width: 100%;
    }
    .itg-portal-insight-segmented button {
        flex: 1;
        padding: 0 8px !important;
    }
}

/* ITG 1.0.35 – frontend-instellingen gelijkgetrokken met de backoffice */
.itg-portal-settings-panel {
    overflow: hidden;
    margin-bottom: 20px;
    border: 1px solid #d5e2ed;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0,59,115,.055);
}
.itg-portal-settings-panel__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 24px;
    border-bottom: 1px solid #dfe8f0;
    background: linear-gradient(180deg,#ffffff 0%,#f8fbfe 100%);
}
.itg-portal-settings-panel__header.is-split { align-items: flex-start; }
.itg-portal-settings-panel__title {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    min-width: 0;
}
.itg-portal-settings-panel__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 11px;
    background: linear-gradient(135deg,#00b6e9,#008bc7);
    color: #fff;
    font-size: 18px;
    box-shadow: 0 6px 15px rgba(0,169,224,.22);
}
.itg-portal-settings-panel__kicker {
    display: block;
    margin-bottom: 4px;
    color: #008ec7;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.itg-portal-settings-panel__header h3 {
    margin: 0;
    color: #003b73;
    font-size: 22px;
    line-height: 1.2;
}
.itg-portal-settings-panel__header p {
    margin: 5px 0 0;
    color: #65798e;
    font-size: 13px;
    line-height: 1.5;
}
.itg-portal-status-legend {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 12px;
    padding-top: 7px;
    color: #526a81;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}
.itg-portal-status-legend span { display: inline-flex; align-items: center; gap: 6px; }
.itg-portal-status-legend i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #718096;
}
.itg-portal-status-legend .is-open i { background: #26945a; }
.itg-portal-status-legend .is-full i { background: #c27a0b; }
.itg-portal-status-legend .is-disabled i { background: #718096; }

.itg-portal-category-grid-modern {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
    padding: 18px 22px 22px;
}
.itg-portal-category-card-modern {
    overflow: hidden;
    border: 1px solid #d5e3ee;
    border-radius: 14px;
    background: #fff;
}
.itg-portal-category-card-modern > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 15px;
    border-bottom: 1px solid #dce7f0;
    background: #eef7fd;
}
.itg-portal-category-card-modern > header span {
    display: block;
    color: #6f8397;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.itg-portal-category-card-modern > header strong {
    display: block;
    margin-top: 2px;
    color: #003b73;
    font-size: 18px;
}
.itg-portal-category-card-modern > header b {
    padding: 6px 9px;
    border-radius: 999px;
    background: #fff;
    color: #397092;
    font-size: 9px;
    box-shadow: 0 2px 8px rgba(0,59,115,.07);
}
.itg-portal-category-row-modern {
    position: relative;
    display: grid;
    grid-template-columns: minmax(120px,.75fr) minmax(150px,1fr) minmax(120px,.65fr);
    gap: 12px;
    align-items: end;
    padding: 14px 15px 14px 18px;
    border-bottom: 1px solid #e4ecf3;
    background: #fff;
}
.itg-portal-category-row-modern:last-child { border-bottom: 0; }
.itg-portal-category-row-modern::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: #718096;
    content: "";
}
.itg-portal-category-row-modern[data-status="open"]::before { background: #2b9a5f; }
.itg-portal-category-row-modern[data-status="full"]::before { background: #c27a0b; }
.itg-portal-category-row-modern[data-status="disabled"]::before { background: #718096; }
.itg-portal-category-identity {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
}
.itg-portal-gender-mark {
    display: grid;
    place-items: center;
    width: 31px;
    height: 31px;
    flex: 0 0 31px;
    border-radius: 9px;
    background: #00a9e0;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
}
.itg-portal-gender-mark.is-male { background: #004f8f; }
.itg-portal-category-identity strong {
    display: block;
    color: #003b73;
    font-size: 14px;
}
.itg-portal-category-identity small {
    display: block;
    margin-top: 2px;
    color: #7a8da0;
    font-size: 9px;
}
.itg-portal-category-control {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 6px;
}
.itg-portal-category-control > span:first-child,
.itg-portal-tournament-day-modern label > span,
.itg-portal-schedule-card-modern label > span {
    color: #637b91;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.itg-portal-category-control select,
.itg-portal-category-control input,
.itg-portal-tournament-day-modern input,
.itg-portal-schedule-card-modern input,
.itg-portal-schedule-card-modern select {
    width: 100%;
    min-height: 39px;
    padding: 8px 10px;
    border: 1px solid #bcd0e0;
    border-radius: 8px;
    background: #fff;
    color: #173b5e;
    font: inherit;
    box-shadow: inset 0 1px 2px rgba(0,59,115,.035);
}
.itg-portal-category-row-modern[data-status="open"] select { border-color: #8fd5ad; background: #f2fbf5; color: #167440; }
.itg-portal-category-row-modern[data-status="full"] select { border-color: #e4c27c; background: #fff9ed; color: #9a6200; }
.itg-portal-category-row-modern[data-status="disabled"] select { border-color: #ced6df; background: #f4f6f8; color: #647384; }
.itg-portal-input-suffix { position: relative; display: block; }
.itg-portal-input-suffix input { padding-right: 30px; }
.itg-portal-input-suffix b {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    color: #6d8297;
    font-size: 11px;
    pointer-events: none;
}
.itg-portal-settings-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0 22px 22px;
    padding: 12px 14px;
    border: 1px solid #cfe1ee;
    border-radius: 10px;
    background: #f4faff;
}
.itg-portal-settings-note > span {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    border-radius: 50%;
    background: #00a9e0;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}
.itg-portal-settings-note p { margin: 0; color: #5d748a; font-size: 12px; line-height: 1.55; }

.itg-portal-schedule-hint {
    max-width: 320px;
    padding: 9px 12px;
    border: 1px solid #cfe1ee;
    border-radius: 9px;
    background: #f3f9fd;
    color: #557087;
    font-size: 11px;
    line-height: 1.45;
}
.itg-portal-tournament-days-modern {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
    padding: 18px 22px 8px;
}
.itg-portal-tournament-day-modern {
    overflow: hidden;
    border: 1px solid #d5e3ee;
    border-radius: 13px;
    background: #fff;
}
.itg-portal-tournament-day-modern > header {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 12px 14px;
    background: #003b73;
    color: #fff;
}
.itg-portal-tournament-day-modern > header span { color: #80e1ff; }
.itg-portal-tournament-day-modern > header strong { font-size: 13px; }
.itg-portal-tournament-day-modern > div {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 10px;
    padding: 13px 14px 15px;
}
.itg-portal-tournament-day-modern label,
.itg-portal-schedule-card-modern label { display: flex; min-width: 0; flex-direction: column; gap: 6px; }
.itg-portal-schedule-grid-modern {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 14px 22px 22px;
}
.itg-portal-schedule-card-modern {
    display: grid;
    grid-template-columns: 105px minmax(0,1fr);
    overflow: hidden;
    border: 1px solid #d5e3ee;
    border-radius: 13px;
    background: #fff;
}
.itg-portal-schedule-card-modern > header {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    padding: 14px;
    background: linear-gradient(145deg,#003b73,#075e99);
    color: #fff;
}
.itg-portal-schedule-card-modern > header span { font-size: 18px; font-weight: 900; }
.itg-portal-schedule-card-modern > header small {
    margin-top: 4px;
    color: #bfeeff;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.itg-portal-schedule-card-modern > div {
    display: grid;
    grid-template-columns: 1.35fr 1fr 1fr 1fr;
    gap: 9px;
    padding: 12px;
}

/* Gewichtsverdeling: solide, lichte rijen en leesbare lege klassen, ongeacht het WordPress-thema. */
body.itg-portal-standalone-body .itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar,
.itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar {
    opacity: 1 !important;
    border: 1px solid transparent !important;
    border-radius: 11px !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #173b5e !important;
    filter: none !important;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar.is-empty,
.itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar.is-empty {
    opacity: 1 !important;
    border-color: #edf2f6 !important;
    background-color: #fbfdff !important;
}
.itg-portal-insight-weight-bar.is-empty .itg-portal-insight-weight-bar__label,
.itg-portal-insight-weight-bar.is-empty .itg-portal-insight-weight-bar__value { color: #7a8fa3 !important; }
.itg-portal-insight-weight-bar.is-empty .itg-portal-insight-weight-bar__track { background: #e9f0f6 !important; }
body.itg-portal-standalone-body .itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar:hover,
.itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar:hover {
    border-color: #c9dce9 !important;
    background-color: #f7fbfe !important;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar.is-selected,
.itg-portal .itg-portal-insight-weight-chart > button.itg-portal-insight-weight-bar.is-selected {
    border-color: #71cce9 !important;
    background-color: #eefaff !important;
    box-shadow: 0 0 0 2px rgba(0,169,224,.10) !important;
}

@media (max-width: 1180px) {
    .itg-portal-category-row-modern { grid-template-columns: minmax(110px,.7fr) minmax(140px,1fr) minmax(105px,.6fr); }
    .itg-portal-schedule-card-modern { grid-template-columns: 92px minmax(0,1fr); }
    .itg-portal-schedule-card-modern > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 900px) {
    .itg-portal-settings-panel__header.is-split { flex-direction: column; }
    .itg-portal-status-legend { justify-content: flex-start; padding-top: 0; }
    .itg-portal-schedule-hint { max-width: none; }
    .itg-portal-category-grid-modern,
    .itg-portal-tournament-days-modern,
    .itg-portal-schedule-grid-modern { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
    .itg-portal-settings-panel__header { padding: 18px; }
    .itg-portal-settings-panel__title { gap: 11px; }
    .itg-portal-settings-panel__icon { width: 38px; height: 38px; flex-basis: 38px; }
    .itg-portal-category-grid-modern,
    .itg-portal-tournament-days-modern,
    .itg-portal-schedule-grid-modern { padding-right: 14px; padding-left: 14px; }
    .itg-portal-category-row-modern { grid-template-columns: 1fr; align-items: stretch; }
    .itg-portal-tournament-day-modern > div,
    .itg-portal-schedule-card-modern > div { grid-template-columns: 1fr; }
    .itg-portal-schedule-card-modern { grid-template-columns: 1fr; }
    .itg-portal-schedule-card-modern > header { align-items: center; flex-direction: row; justify-content: space-between; }
    .itg-portal-settings-note { margin-right: 14px; margin-left: 14px; }
}

/* ITG 1.0.36 – Mollie instellingen in de frontend-admin */
.itg-portal-mollie-settings .itg-portal-card__header { align-items:flex-start; gap:18px; }
.itg-portal-mollie-status {
    display:inline-flex;
    max-width:390px;
    padding:9px 12px;
    border:1px solid #d8e4ed;
    border-radius:10px;
    background:#f6f9fc;
    color:#526b80;
    font-size:12px;
    font-weight:800;
    line-height:1.4;
}
.itg-portal-mollie-status.is-ready { border-color:#a9dfbb; background:#edf9f1; color:#176a36; }
.itg-portal-settings-grid .is-full { grid-column:1 / -1; }
@media (max-width:720px) {
    .itg-portal-mollie-settings .itg-portal-card__header { flex-direction:column; }
    .itg-portal-mollie-status { max-width:none; }
}


/* ITG 1.0.37 – Mollie-Vorschaumodus im Frontend-Admin */
.itg-portal-mollie-status.is-preview { border-color:#ead28d; background:#fff9e8; color:#775300; }
.itg-portal-toggle span small { display:block; margin-top:4px; color:#6b8193; font-weight:500; line-height:1.4; }
.itg-portal-mollie-preview { border:1px solid #d8e4ed; border-radius:14px; background:#f8fbfd; overflow:hidden; }
.itg-portal-mollie-preview > summary { padding:13px 15px; color:#003b73; font-weight:800; cursor:pointer; list-style:none; }
.itg-portal-mollie-preview > summary::-webkit-details-marker { display:none; }
.itg-portal-mollie-preview[open] > summary { border-bottom:1px solid #d8e4ed; background:#f1f7fb; }
.itg-portal-mollie-preview__body { padding:18px; }
.itg-portal-mollie-preview__body > header { display:grid; gap:3px; margin-bottom:13px; text-align:center; }
.itg-portal-mollie-preview__body > header span { color:#00a9e0; font-size:11px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.itg-portal-mollie-preview__body > header strong { color:#003b73; font-size:21px; }
.itg-portal-mollie-preview__body > header small { color:#637b8f; }
.itg-portal-mollie-preview__body > div { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.itg-portal-mollie-preview article { padding:17px; border:1px solid #d7e4ee; border-radius:13px; background:#fff; }
.itg-portal-mollie-preview article.is-online { border-color:#8ecce8; background:#f2fbff; }
.itg-portal-mollie-preview article > b { display:inline-flex; padding:5px 8px; border-radius:999px; background:#fff4cf; color:#775300; font-size:10px; text-transform:uppercase; }
.itg-portal-mollie-preview h4 { margin:10px 0 6px; color:#003b73; font-size:18px; }
.itg-portal-mollie-preview article p { color:#5b7286; line-height:1.45; }
.itg-portal-mollie-preview article button { width:100%; padding:10px; border:0; border-radius:9px; background:#0057a5; color:#fff; font-weight:800; opacity:.8; }
.itg-portal-mollie-preview dl { display:grid; grid-template-columns:90px 1fr; gap:6px 9px; margin:12px 0 0; }
.itg-portal-mollie-preview dt { color:#6c8294; font-size:11px; font-weight:800; }
.itg-portal-mollie-preview dd { margin:0; color:#173b5e; font-weight:700; overflow-wrap:anywhere; }
.itg-portal-mollie-preview__body > p { margin:13px 0 0; color:#775300; font-weight:700; text-align:center; }
@media (max-width:720px) { .itg-portal-mollie-preview__body > div { grid-template-columns:1fr; } }

/* ITG 1.0.38 – Zusatzangebote im Frontend-Admin */
.itg-portal-addon-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:18px 20px 4px; }
.itg-portal-addon-setting-card { padding:17px; border:1px solid #d7e4ee; border-radius:14px; background:#fff; box-shadow:0 9px 24px rgba(0,59,115,.045); }
.itg-portal-addon-setting-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:14px; }
.itg-portal-addon-setting-card > header > div { display:grid; gap:2px; }
.itg-portal-addon-setting-card > header small { color:#00a9e0; font-size:10px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.itg-portal-addon-setting-card > header strong { color:#003b73; font-size:17px; }
.itg-portal-addon-setting-card__fields,.itg-portal-training-session-setting__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.itg-portal-addon-setting-card__fields label,.itg-portal-training-session-setting__grid label { display:grid; gap:6px; color:#244c70; font-size:12px; font-weight:800; }
.itg-portal-addon-setting-card__fields input,.itg-portal-addon-setting-card__fields textarea,.itg-portal-training-session-setting__grid input,.itg-portal-training-session-setting__grid select { width:100%; min-height:40px; padding:8px 10px; border:1px solid #bdcedd; border-radius:9px; background:#fff; color:#173b5e; }
.itg-portal-addon-setting-card__fields textarea { min-height:100px; resize:vertical; }
.itg-portal-addon-setting-card__fields .is-wide,.itg-portal-training-session-setting__grid .is-wide { grid-column:1/-1; }
.itg-portal-training-settings-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:20px 20px 10px; }
.itg-portal-training-settings-heading h4 { margin:0; color:#003b73; font-size:18px; }
.itg-portal-training-settings-heading p { margin:4px 0 0; color:#687f92; }
.itg-portal-training-settings-heading button { min-height:40px; padding:8px 13px; border:1px solid #00569b; border-radius:9px; background:#00569b; color:#fff; font-weight:800; cursor:pointer; }
.itg-portal-training-session-settings { display:grid; gap:12px; padding:0 20px 6px; }
.itg-portal-training-session-setting { padding:15px; border:1px solid #d8e4ed; border-radius:13px; background:#fbfdff; }
.itg-portal-training-session-setting > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.itg-portal-training-session-setting > header div { display:grid; gap:2px; }
.itg-portal-training-session-setting > header span { color:#00a9e0; font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.itg-portal-training-session-setting > header strong { color:#003b73; }
.itg-portal-training-session-setting .is-danger-link { border:0; background:transparent; color:#a82f38; font-weight:800; cursor:pointer; }
.itg-portal-input-suffix { display:flex; align-items:stretch; }
.itg-portal-input-suffix input { border-radius:9px 0 0 9px !important; }
.itg-portal-input-suffix b { display:grid; place-items:center; min-width:38px; border:1px solid #bdcedd; border-left:0; border-radius:0 9px 9px 0; background:#eef4f8; color:#47647d; }
.itg-portal-entry-addons { grid-column:1/-1; overflow:hidden; border:1px solid #d8e5ee; border-radius:12px; background:#fff; }
.itg-portal-entry-addons > header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 13px; border-bottom:1px solid #e2eaf0; background:#f3f8fb; }
.itg-portal-entry-addons > header > div { display:grid; gap:1px; }
.itg-portal-entry-addons > header span { color:#00a9e0; font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.itg-portal-entry-addons > header strong { color:#003b73; }
.itg-portal-entry-addons > header small { color:#60788d; font-weight:700; }
.itg-portal-entry-addons__grid { display:grid; grid-template-columns:minmax(190px,.7fr) minmax(0,1.5fr); gap:12px; padding:13px; }
.itg-portal-entry-camping { align-self:start; }
.itg-portal-entry-training { margin:0; padding:0; border:0; }
.itg-portal-entry-training legend { color:#003b73; font-size:12px; font-weight:900; }
.itg-portal-entry-training > p { margin:3px 0 8px; color:#6a8093; font-size:11px; }
.itg-portal-entry-training > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.itg-portal-entry-training label { display:flex; flex-direction:row; align-items:flex-start; gap:8px; padding:9px; border:1px solid #dce7ef; border-radius:9px; background:#f8fbfd; }
.itg-portal-entry-training input { flex:0 0 auto; width:16px !important; height:16px !important; min-height:0 !important; margin-top:2px; }
.itg-portal-entry-training label > span { display:grid; gap:2px; }
.itg-portal-entry-training small { color:#6a8093; font-weight:500; line-height:1.35; }
@media (max-width:900px) { .itg-portal-addon-settings-grid { grid-template-columns:1fr; } .itg-portal-entry-addons__grid { grid-template-columns:1fr; } }
@media (max-width:650px) { .itg-portal-addon-setting-card__fields,.itg-portal-training-session-setting__grid,.itg-portal-entry-training > div { grid-template-columns:1fr; } .itg-portal-training-settings-heading { align-items:flex-start; flex-direction:column; } .itg-portal-entry-addons > header { align-items:flex-start; flex-direction:column; } }

/* ITG 1.0.39 – Zahlungsbeträge auf Mobilgeräten immer in einer Reihe */
@media (max-width: 800px) {
    .itg-portal-club-amounts {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: 100%;
        gap: 7px;
        justify-content: stretch;
    }
    .itg-portal-club-amounts span {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        padding: 9px 7px;
    }
    .itg-portal-club-amounts small {
        overflow: hidden;
        font-size: 8px;
        line-height: 1.2;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .itg-portal-club-amounts strong {
        overflow: hidden;
        font-size: clamp(12px, 3.7vw, 15px);
        line-height: 1.25;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

/* ITG 1.0.41 – Zusatzangebote in Portal-Informationen */
.itg-portal-addon-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  margin:18px 0;
}
.itg-portal-addon-panel { min-width:0; }
.itg-portal-addon-kpis {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-bottom:18px;
}
.itg-portal-addon-kpis > span {
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:12px 14px;
  border:1px solid #dbe8f3;
  border-radius:14px;
  background:#f8fbff;
}
.itg-portal-addon-kpis small {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#6f879b;
  font-weight:700;
}
.itg-portal-addon-kpis strong {
  font-size:22px;
  line-height:1.2;
  color:#083f78;
}
.itg-portal-addon-bars {
  display:flex;
  flex-direction:column;
  gap:12px;
}
.itg-portal-addon-card,
.itg-portal-addon-row {
  border:1px solid #dbe8f3;
  border-radius:16px;
  background:#fff;
  padding:14px 16px;
}
.itg-portal-addon-card.is-full { border-color:#f0c98f; background:#fffaf2; }
.itg-portal-addon-card.is-inactive { opacity:.78; }
.itg-portal-addon-card__header {
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:12px;
  align-items:center;
  margin-bottom:10px;
}
.itg-portal-addon-card__header strong,
.itg-portal-addon-row__label strong { color:#083f78; font-size:15px; }
.itg-portal-addon-card__header small,
.itg-portal-addon-row__label span,
.itg-portal-addon-card__footer,
.itg-portal-addon-row__meta {
  color:#637f96;
  font-size:12px;
}
.itg-portal-addon-card__meta {
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
  color:#083f78;
}
.itg-portal-addon-card__footer {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:10px;
}
.itg-portal-addon-track {
  display:block;
  width:100%;
  height:12px;
  border-radius:999px;
  background:#dce8f3;
  overflow:hidden;
}
.itg-portal-addon-track > i {
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, #17a6d9 0%, #0b4f9f 100%);
}
.itg-portal-addon-bars.is-compact { gap:10px; }
.itg-portal-addon-row {
  display:grid;
  grid-template-columns:170px minmax(0,1fr) 60px;
  gap:12px;
  align-items:center;
}
.itg-portal-addon-row__label {
  display:flex;
  flex-direction:column;
  gap:4px;
}
@media (max-width: 1080px) {
  .itg-portal-addon-grid { grid-template-columns:1fr; }
}
@media (max-width: 767px) {
  .itg-portal-addon-kpis { grid-template-columns:repeat(2, minmax(0,1fr)); }
  .itg-portal-addon-row,
  .itg-portal-addon-card__header,
  .itg-portal-addon-card__footer { grid-template-columns:1fr; display:grid; }
  .itg-portal-addon-card__meta { align-items:flex-start; }
}

/* ITG 1.0.42 – Kapazität en veilige jaaropschoning */
.itg-portal-addon-kpis {
  grid-template-columns:repeat(auto-fit, minmax(115px, 1fr));
}
.itg-portal-danger-zone {
  border-color:#efb8b8 !important;
  background:linear-gradient(180deg, #fff 0%, #fff8f8 100%) !important;
}
.itg-portal-danger-count {
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:#fff0f0;
  color:#a3261d;
  font-size:12px;
  font-weight:800;
}
.itg-portal-danger-zone__body {
  display:grid;
  gap:14px;
}
.itg-portal-danger-zone__body > p,
.itg-portal-danger-zone__body > small {
  margin:0;
  color:#6f5151;
}
.itg-portal-danger-warning {
  padding:12px 14px;
  border-radius:13px;
  background:#fff3cd;
  color:#765800;
  font-weight:700;
}
.itg-portal-delete-all-form {
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(260px, 420px) auto;
  gap:14px;
  align-items:end;
  padding:16px;
  border:1px solid #efc7c7;
  border-radius:15px;
  background:#fff;
}
.itg-portal-delete-all-form label {
  display:flex;
  gap:8px;
  color:#543f3f;
}
.itg-portal-delete-all-form label:first-of-type { align-items:flex-start; }
.itg-portal-delete-all-form label:nth-of-type(2) { flex-direction:column; }
.itg-portal-delete-all-form label strong {
  color:#a3261d;
  letter-spacing:.04em;
}
.itg-portal-delete-all-form input[type="text"] {
  min-height:43px;
  border-color:#d9a9a9;
}
.itg-portal-delete-all-form button.is-danger:not(:disabled) {
  background:#b42318 !important;
  border-color:#b42318 !important;
  color:#fff !important;
}
.itg-portal-delete-all-form button:disabled { opacity:.55; }
@media (max-width: 900px) {
  .itg-portal-delete-all-form { grid-template-columns:1fr; }
  .itg-portal-delete-all-form button { justify-self:start; }
}
.itg-portal-addon-capacity-overview {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px, 1.4fr) auto;
  gap:14px;
  align-items:center;
  margin:0 0 14px;
  padding:14px 16px;
  border:1px solid #dbe8f3;
  border-radius:16px;
  background:#f8fbff;
}
.itg-portal-addon-capacity-overview > div {
  display:flex;
  flex-direction:column;
  gap:3px;
}
.itg-portal-addon-capacity-overview strong { color:#083f78; }
.itg-portal-addon-capacity-overview span,
.itg-portal-addon-capacity-overview small { color:#637f96; }
.itg-portal-addon-capacity-overview.is-full {
  border-color:#efc98f;
  background:#fffaf2;
}
@media (max-width: 767px) {
  .itg-portal-addon-capacity-overview { grid-template-columns:1fr; }
}

/* ITG 1.0.45 – Zahlungsalter, Warteliste und Jahresarchiv */
.itg-portal-status.is-due { background:#fff0cc; color:#875400; }
.itg-portal-status.is-overdue { background:#fde8e8; color:#a51d1d; }
.itg-portal-status.is-waitlist { background:#f0eafe; color:#694b9b; }
.itg-portal-status.is-rejected,.itg-portal-status.is-cancelled { background:#edf1f5; color:#59697a; }
.itg-portal-payment-aging {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0 0 18px;
}
.itg-portal-payment-aging article { display:flex; flex-direction:column; gap:4px; padding:15px 17px; border:1px solid #d7e4ef; border-radius:16px; background:#fff; }
.itg-portal-payment-aging small { color:#6b8195; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.itg-portal-payment-aging strong { color:var(--navy); font-size:25px; }
.itg-portal-payment-aging span { color:#72879a; font-size:12px; }
.itg-portal-payment-aging .is-due { background:#fffaf0; border-color:#f0d8a5; }
.itg-portal-payment-aging .is-overdue { background:#fff6f6; border-color:#efc7c7; }
.itg-portal-payment-aging .is-overdue strong { color:#a51d1d; }
.itg-portal-payment-aging .is-paid { background:#f3fbf6; border-color:#c9e7d3; }
.itg-portal-waitlist-grid { display:grid; gap:15px; padding:18px; }
.itg-portal-waitlist-card { border:1px solid #d7e4ef; border-radius:17px; background:#fff; overflow:hidden; }
.itg-portal-waitlist-card > header { display:flex; justify-content:space-between; gap:15px; padding:17px 18px; background:#f7fbff; border-bottom:1px solid #dfeaf3; }
.itg-portal-waitlist-card h3 { margin:4px 0; color:var(--navy); }
.itg-portal-waitlist-card p,.itg-portal-waitlist-card small { margin:0; color:var(--muted); }
.itg-portal-waitlist-card > header > span { align-self:flex-start; padding:7px 11px; border-radius:999px; background:#e9f4fb; color:var(--navy); font-weight:800; }
.itg-portal-waitlist-members { display:flex; flex-wrap:wrap; gap:8px; padding:15px 18px; }
.itg-portal-waitlist-members span { display:flex; flex-direction:column; gap:2px; padding:8px 11px; border:1px solid #d9e6f0; border-radius:12px; background:#fbfdff; color:var(--muted); font-size:12px; }
.itg-portal-waitlist-members strong { color:var(--ink); }
.itg-portal-waitlist-card > footer { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:15px 18px; border-top:1px solid #e2ebf3; background:#fbfdff; }
.itg-portal-waitlist-card > footer > div { display:flex; gap:9px; flex-wrap:wrap; }
.itg-portal-waitlist-card form { margin:0; }
.itg-portal-waitlist-card button { border:0; border-radius:999px; padding:10px 15px; background:var(--blue); color:#fff; font-weight:800; cursor:pointer; }
.itg-portal-waitlist-card button.is-danger { background:#a51d1d; }
.itg-portal-archive-zone { border-color:#bfdbea; }
.itg-portal-archive-summary { display:flex; flex-direction:column; gap:5px; margin:16px 18px; padding:15px 17px; border:1px solid #d7e5ef; border-radius:14px; background:#f6fbff; }
.itg-portal-archive-summary strong { color:var(--navy); font-size:18px; }
.itg-portal-archive-summary span { color:var(--muted); }
.itg-portal-archive-form { display:grid; gap:13px; margin:0 18px 18px; padding:17px; border:1px solid #d5e3ed; border-radius:15px; background:#fff; }
.itg-portal-archive-form label { display:flex; flex-direction:column; gap:7px; }
.itg-portal-archive-form button { justify-self:start; border:0; border-radius:999px; padding:11px 17px; background:var(--blue); color:#fff; font-weight:800; }
.itg-portal-archive-form button:disabled { opacity:.45; cursor:not-allowed; }
.itg-portal-archive-list { padding:0 18px 20px; }
.itg-portal-archive-list h4 { color:var(--navy); }
.itg-portal-archive-list article { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:14px 16px; border:1px solid #d9e5ef; border-radius:13px; background:#fbfdff; }
.itg-portal-archive-list article + article { margin-top:10px; }
.itg-portal-archive-list article > div { display:flex; flex-direction:column; gap:4px; }
.itg-portal-archive-list a { color:var(--navy); font-weight:800; }
@media (max-width:800px) {
  .itg-portal-payment-aging { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .itg-portal-waitlist-card > header,.itg-portal-waitlist-card > footer,.itg-portal-archive-list article { flex-direction:column; align-items:stretch; }
}
@media (max-width:520px) { .itg-portal-payment-aging { grid-template-columns:1fr; } }
.itg-portal-registration-filter-tools { display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; justify-content:flex-end; }
.itg-portal-payment-filter-wrap { display:flex; flex-direction:column; gap:5px; color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.itg-portal-payment-filter-wrap select { min-width:145px; border:1px solid #c8d9e7; border-radius:12px; padding:10px 34px 10px 12px; color:var(--navy); background:#fff; font-weight:800; text-transform:none; letter-spacing:normal; }
@media (max-width:700px) { .itg-portal-registration-filter-tools { width:100%; justify-content:stretch; } .itg-portal-payment-filter-wrap,.itg-portal-search-wrap { width:100%; } .itg-portal-payment-filter-wrap select { width:100%; } }
.itg-portal-waitlist-capacity { display:flex; gap:9px; flex-wrap:wrap; }
.itg-portal-waitlist-capacity > span { display:flex; flex-direction:column; gap:2px; min-width:108px; padding:9px 12px; border:1px solid #d4e3ee; border-radius:13px; background:#fff; }
.itg-portal-waitlist-capacity small { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.06em; font-weight:800; }
.itg-portal-waitlist-capacity strong { color:var(--navy); font-size:20px; }
.itg-portal-waitlist-capacity-warning { margin:0 18px 13px; padding:10px 12px; border:1px solid #efd5a5; border-radius:11px; background:#fff8e8; color:#755000; font-weight:800; }

/* ITG 1.0.46 – Unterbesetzte Gewichtsklassen */
.itg-portal-underfilled-insights { margin:18px 0; }
.itg-portal-insight-panel__meta.is-warning {
    border-color:#f0c98f;
    background:#fff8e8;
    color:#8a5a00;
}
.itg-portal-insight-panel__meta.is-ok {
    border-color:#bfe3cd;
    background:#f1fbf5;
    color:#087443;
}
.itg-portal-underfilled-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    padding:0 20px 20px;
}
.itg-portal-underfilled-card {
    border:1px solid #d8e5f0;
    border-left:5px solid #f0aa26;
    border-radius:16px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 8px 22px rgba(0,59,115,.05);
}
.itg-portal-underfilled-card > header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:15px 16px 12px;
    background:linear-gradient(180deg,#fffaf1 0%,#fff 100%);
}
.itg-portal-underfilled-card > header div { display:flex; align-items:baseline; gap:9px; }
.itg-portal-underfilled-card > header span {
    color:#006da7;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.itg-portal-underfilled-card > header strong { color:var(--navy); font-size:24px; }
.itg-portal-underfilled-card > header b {
    padding:7px 10px;
    border-radius:999px;
    background:#fff0cf;
    color:#8a5a00;
    font-size:12px;
}
.itg-portal-underfilled-card__meta {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:0 16px 12px;
    color:#647b8f;
    font-size:12px;
}
.itg-portal-underfilled-card__meta strong { color:#9a6400; text-align:right; }
.itg-portal-underfilled-card ul { list-style:none; margin:0; padding:0 16px 14px; }
.itg-portal-underfilled-card li {
    display:flex;
    flex-direction:column;
    gap:2px;
    padding:8px 0;
    border-top:1px solid #edf2f6;
}
.itg-portal-underfilled-card li span { color:var(--ink); font-weight:800; }
.itg-portal-underfilled-card li small { color:#6c8295; }
.itg-portal-underfilled-card li.is-more { color:#6c8295; font-weight:800; }
.itg-portal-underfilled-empty {
    display:flex;
    flex-direction:column;
    gap:3px;
    margin:0 20px 20px;
    padding:18px 20px;
    border:1px solid #c8e6d4;
    border-radius:16px;
    background:#f3fbf6;
}
.itg-portal-underfilled-empty strong { color:#087443; }
.itg-portal-underfilled-empty span { color:#5e7d6b; }
@media (max-width:1080px) {
    .itg-portal-underfilled-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
    .itg-portal-underfilled-grid { grid-template-columns:1fr; padding-left:16px; padding-right:16px; }
    .itg-portal-underfilled-card__meta { flex-direction:column; }
    .itg-portal-underfilled-card__meta strong { text-align:left; }
    .itg-portal-underfilled-empty { margin-left:16px; margin-right:16px; }
}

/* ITG 1.0.47 – lege gewichtsklassen tellen mee als onderbezet */
.itg-portal-underfilled-card.is-empty {
    border-left-color:#8aa0b4;
    background:#f8fafc;
}
.itg-portal-underfilled-card.is-empty > header b {
    background:#edf2f6;
    color:#5f7487;
}
.itg-portal-underfilled-card li.is-empty-message {
    color:#6f8293;
    font-style:italic;
    border-bottom:0;
}

/* ITG 1.0.48 – Turnier-Einstellungen optisch an die WordPress-Backoffice-Ansicht angeglichen */
.itg-portal .screen-reader-text {
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
}
.itg-portal-settings-overview {
    display:grid;
    grid-template-columns:repeat(5,minmax(140px,1fr));
    gap:12px;
    margin:0 0 14px;
}
.itg-portal-settings-overview__item {
    display:flex;
    align-items:center;
    gap:11px;
    min-width:0;
    padding:14px 15px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fff;
    box-shadow:0 4px 14px rgba(0,59,115,.04);
}
.itg-portal-settings-overview__icon {
    display:grid;
    place-items:center;
    width:35px;
    height:35px;
    flex:0 0 35px;
    border-radius:10px;
    color:var(--navy);
    background:#eaf2f9;
    font-size:17px;
    font-weight:900;
}
.itg-portal-settings-overview__item.is-open .itg-portal-settings-overview__icon { color:#197a45; background:#eaf7ef; }
.itg-portal-settings-overview__item.is-full .itg-portal-settings-overview__icon { color:#a86500; background:#fff3dc; }
.itg-portal-settings-overview__item.is-disabled .itg-portal-settings-overview__icon { color:#718096; background:#edf1f5; }
.itg-portal-settings-overview__item small {
    display:block;
    overflow:hidden;
    color:var(--muted);
    font-size:10px;
    font-weight:700;
    letter-spacing:.04em;
    text-overflow:ellipsis;
    text-transform:uppercase;
    white-space:nowrap;
}
.itg-portal-settings-overview__item strong {
    display:block;
    margin-top:2px;
    color:var(--navy);
    font-size:20px;
    line-height:1.15;
}
.itg-portal-settings-nav {
    position:sticky;
    top:10px;
    z-index:15;
    display:flex;
    align-items:center;
    gap:7px;
    overflow-x:auto;
    margin:0 0 18px;
    padding:9px;
    border:1px solid var(--line);
    border-radius:13px;
    background:rgba(255,255,255,.95);
    box-shadow:0 8px 22px rgba(0,59,115,.07);
    backdrop-filter:blur(8px);
}
.itg-portal-settings-nav a {
    display:inline-flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
    padding:9px 12px;
    border-radius:8px;
    color:var(--ink) !important;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
    transition:.18s ease;
}
.itg-portal-settings-nav a span { color:var(--cyan); font-weight:900; }
.itg-portal-settings-nav a:hover,
.itg-portal-settings-nav a:focus {
    color:var(--navy) !important;
    background:var(--cyan-soft);
    outline:none;
}
.itg-portal-settings-panel,
.itg-portal-card[id] { scroll-margin-top:88px; }
.itg-portal-base-settings-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    padding:18px 22px 22px;
}
.itg-portal-field-card,
.itg-portal-setting-tile {
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:15px;
    border:1px solid #dfe9f2;
    border-radius:11px;
    background:#f7fbfe;
}
.itg-portal-field-card { gap:7px; cursor:default; }
.itg-portal-field-card > span:first-child,
.itg-portal-setting-tile__text > strong {
    color:var(--navy);
    font-size:12px;
    font-weight:800;
}
.itg-portal-field-card small,
.itg-portal-setting-tile p {
    margin:0;
    color:var(--muted);
    font-size:10px;
    font-weight:500;
    line-height:1.45;
}
.itg-portal-field-card input {
    width:100%;
    min-height:40px;
    margin:0;
    padding:8px 10px;
    border:1px solid #bfcfdd;
    border-radius:8px;
    background:#fff;
    color:var(--ink);
    box-shadow:inset 0 1px 2px rgba(0,59,115,.035);
}
.itg-portal-field-card input:focus {
    border-color:var(--cyan);
    outline:none;
    box-shadow:0 0 0 2px rgba(0,169,224,.14);
}
.itg-portal-field-suffix {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    overflow:hidden;
    border:1px solid #bfcfdd;
    border-radius:8px;
    background:#fff;
}
.itg-portal-field-suffix input {
    min-width:0;
    border:0 !important;
    border-radius:0;
    box-shadow:none !important;
}
.itg-portal-field-suffix b {
    padding:0 11px;
    color:#60758a;
    font-size:11px;
    white-space:nowrap;
}
.itg-portal-setting-tile--toggle {
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    border-color:#cce1ef;
    background:linear-gradient(140deg,#f4fbff,#edf6fc);
}
.itg-portal-setting-tile__text { min-width:0; }
.itg-portal-setting-tile__text p { margin-top:5px; }
.itg-portal-switch {
    position:relative;
    display:inline-flex;
    flex:0 0 auto;
    cursor:pointer;
}
.itg-portal-switch input {
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.itg-portal-switch__track {
    position:relative;
    display:block;
    width:52px;
    height:29px;
    border-radius:999px;
    background:#aebbc7;
    transition:.2s ease;
}
.itg-portal-switch__thumb {
    position:absolute;
    top:4px;
    left:4px;
    width:21px;
    height:21px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 2px 6px rgba(0,0,0,.22);
    transition:.2s ease;
}
.itg-portal-switch input:checked + .itg-portal-switch__track { background:#26945a; }
.itg-portal-switch input:checked + .itg-portal-switch__track .itg-portal-switch__thumb { transform:translateX(23px); }
.itg-portal-switch input:focus-visible + .itg-portal-switch__track { box-shadow:0 0 0 3px rgba(0,169,224,.22); }
.itg-portal-settings-subsection {
    margin:0 22px 22px;
    padding-top:20px;
    border-top:1px solid #e3ecf3;
}
.itg-portal-settings-subsection .itg-portal-base-settings-grid { padding:14px 0 0; }
.itg-portal-settings-subsection__heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
}
.itg-portal-settings-subsection__heading span {
    color:var(--cyan);
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.itg-portal-settings-subsection__heading h4 {
    margin:4px 0 0;
    color:var(--navy);
    font-size:17px;
}
.itg-portal-settings-subsection__heading p {
    max-width:520px;
    margin:0;
    color:var(--muted);
    font-size:11px;
    line-height:1.45;
    text-align:right;
}
@media (max-width:1180px) {
    .itg-portal-settings-overview { grid-template-columns:repeat(3,minmax(140px,1fr)); }
    .itg-portal-base-settings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
    .itg-portal-settings-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .itg-portal-settings-nav { top:6px; }
    .itg-portal-base-settings-grid { grid-template-columns:1fr; padding-right:14px; padding-left:14px; }
    .itg-portal-settings-subsection { margin-right:14px; margin-left:14px; }
    .itg-portal-settings-subsection__heading { align-items:flex-start; flex-direction:column; gap:7px; }
    .itg-portal-settings-subsection__heading p { text-align:left; }
}
@media (max-width:480px) {
    .itg-portal-settings-overview { grid-template-columns:1fr; }
    .itg-portal-settings-nav a { padding:8px 9px; }
    .itg-portal-settings-nav a span { display:none; }
}

/* ITG 1.0.49 – Klappbare Trainingseinheiten und Gewichtsklassen */
.itg-portal-training-settings-heading__actions,
.itg-portal-underfilled-header-actions {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.itg-portal-training-settings-heading__actions button,
.itg-portal-underfilled-header-actions button {
    min-height:38px;
    padding:8px 13px;
    border:1px solid #bfd2e2;
    border-radius:10px;
    background:#fff;
    color:var(--navy);
    font-weight:800;
    cursor:pointer;
}
.itg-portal-training-settings-heading__actions button:last-child {
    background:var(--navy);
    border-color:var(--navy);
    color:#fff;
}
.itg-portal-training-session-setting {
    padding:0;
}
.itg-portal-training-session-setting > header {
    margin:0;
    padding:0;
    align-items:stretch;
    background:linear-gradient(180deg,#fbfdff 0%,#f4f8fc 100%);
}
.itg-portal-training-session-toggle {
    flex:1 1 auto;
    min-width:0;
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    border:0;
    background:transparent;
    color:var(--navy);
    text-align:left;
    cursor:pointer;
}
.itg-portal-training-session-toggle__chevron {
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:22px;
    height:22px;
    font-size:22px;
    line-height:1;
    transition:transform .18s ease;
}
.itg-portal-training-session-setting:not(.is-collapsed) .itg-portal-training-session-toggle__chevron {
    transform:rotate(180deg);
}
.itg-portal-training-session-toggle__title {
    min-width:0;
    display:grid;
    gap:3px;
}
.itg-portal-training-session-toggle__title small {
    color:var(--cyan);
    font-size:10px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.itg-portal-training-session-toggle__title strong {
    color:var(--navy);
    font-size:15px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.itg-portal-training-session-toggle__title em {
    color:#647b8f;
    font-size:12px;
    font-style:normal;
    font-weight:600;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.itg-portal-training-session-setting > header .is-danger-link {
    align-self:center;
    margin-right:15px;
}
.itg-portal-training-session-setting__body {
    padding:0 15px 15px;
    border-top:1px solid #e3ecf3;
    background:#fff;
}
.itg-portal-training-session-setting__grid {
    padding-top:14px;
}
.itg-portal-training-session-setting.is-collapsed {
    box-shadow:none;
}
.itg-portal-underfilled-header-tools {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.itg-portal-underfilled-card__toggle {
    width:100%;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:13px 14px;
    border:0;
    background:linear-gradient(180deg,#fffaf1 0%,#fff 100%);
    color:var(--navy);
    text-align:left;
    cursor:pointer;
}
.itg-portal-underfilled-card__chevron {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    font-size:19px;
    transition:transform .18s ease;
}
.itg-portal-underfilled-card:not(.is-collapsed) .itg-portal-underfilled-card__chevron {
    transform:rotate(180deg);
}
.itg-portal-underfilled-card__title {
    min-width:0;
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:baseline;
    column-gap:8px;
}
.itg-portal-underfilled-card__title small {
    color:#006da7;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.itg-portal-underfilled-card__title strong {
    color:var(--navy);
    font-size:20px;
}
.itg-portal-underfilled-card__title em {
    grid-column:1/-1;
    color:#9a6400;
    font-size:11px;
    font-style:normal;
    font-weight:800;
}
.itg-portal-underfilled-card__toggle > b {
    padding:6px 9px;
    border-radius:999px;
    background:#fff0cf;
    color:#8a5a00;
    font-size:11px;
    white-space:nowrap;
}
.itg-portal-underfilled-card__body {
    border-top:1px solid #edf2f6;
    padding-top:11px;
}
.itg-portal-underfilled-card.is-collapsed {
    box-shadow:none;
}
@media (max-width:700px) {
    .itg-portal-training-settings-heading__actions,
    .itg-portal-underfilled-header-tools,
    .itg-portal-underfilled-header-actions { align-items:stretch; flex-direction:column; width:100%; }
    .itg-portal-training-settings-heading__actions button,
    .itg-portal-underfilled-header-actions button { width:100%; }
    .itg-portal-training-session-toggle__title strong,
    .itg-portal-training-session-toggle__title em { white-space:normal; }
}

/* ITG 1.0.50 – ruhige, kompakte Akkordeons ohne globale Button-Optik */
body.itg-portal-standalone-body .itg-portal .itg-portal-training-session-setting,
.itg-portal .itg-portal-training-session-setting {
    overflow:hidden;
    padding:0;
    border:1px solid #d7e4ee;
    border-radius:14px;
    background:#fff;
    box-shadow:0 5px 16px rgba(0,59,115,.045);
}
body.itg-portal-standalone-body .itg-portal .itg-portal-training-session-setting > header,
.itg-portal .itg-portal-training-session-setting > header {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    margin:0;
    padding:0;
    background:#fff;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle,
body.itg-portal-standalone-body .itg-portal button.itg-portal-training-session-toggle,
.itg-portal button.itg-portal-training-session-toggle {
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    align-items:center;
    justify-content:stretch;
    width:100%;
    min-width:0;
    min-height:72px;
    margin:0;
    padding:11px 14px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    color:var(--navy);
    text-align:left;
    white-space:normal;
    transform:none;
    cursor:pointer;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle:hover,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle:focus,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle:focus {
    background:#f6faff;
    box-shadow:none;
    transform:none;
    outline:none;
}
.itg-portal .itg-portal-training-session-toggle__chevron {
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:8px;
    background:#eaf6fc;
    color:#008fc7;
    font-size:17px;
    font-weight:900;
}
.itg-portal .itg-portal-training-session-toggle__title {
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:baseline;
    gap:2px 9px;
    min-width:0;
}
.itg-portal .itg-portal-training-session-toggle__title small {
    grid-column:1;
    grid-row:1;
    color:#008fc7;
    font-size:10px;
    line-height:1;
}
.itg-portal .itg-portal-training-session-toggle__title strong {
    grid-column:2;
    grid-row:1;
    min-width:0;
    overflow:hidden;
    color:var(--navy);
    font-size:15px;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.itg-portal .itg-portal-training-session-toggle__title em {
    grid-column:1/-1;
    grid-row:2;
    overflow:hidden;
    color:#6a8195;
    font-size:12px;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session],
.itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session] {
    align-self:center;
    min-height:34px;
    margin:0 12px 0 0;
    padding:7px 11px;
    border:1px solid #efd4d7;
    border-radius:9px;
    background:#fff7f8;
    box-shadow:none;
    color:#a42c36;
    font-size:12px;
    font-weight:800;
    transform:none;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session]:hover,
.itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session]:hover {
    border-color:#dcaeb3;
    background:#fff0f1;
    box-shadow:none;
    transform:none;
}
.itg-portal .itg-portal-training-session-setting:not(.is-collapsed) {
    border-color:#9fcfe5;
    box-shadow:0 8px 22px rgba(0,105,165,.08);
}
.itg-portal .itg-portal-training-session-setting__body {
    padding:15px;
    border-top:1px solid #e2edf5;
    background:#fbfdff;
}
.itg-portal .itg-portal-training-session-setting__grid {
    padding:0;
}

body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card,
.itg-portal .itg-portal-underfilled-card {
    overflow:hidden;
    min-height:0;
    border:1px solid #d7e4ee;
    border-left:4px solid #edae24;
    border-radius:14px;
    background:#fff;
    box-shadow:0 4px 13px rgba(0,59,115,.035);
}
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card.is-empty,
.itg-portal .itg-portal-underfilled-card.is-empty {
    border-left-color:#9aafc0;
    background:#fbfcfd;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
.itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
body.itg-portal-standalone-body .itg-portal button.itg-portal-underfilled-card__toggle,
.itg-portal button.itg-portal-underfilled-card__toggle {
    display:grid;
    grid-template-columns:28px minmax(0,1fr) auto;
    align-items:center;
    justify-content:stretch;
    gap:10px;
    width:100%;
    min-height:70px;
    margin:0;
    padding:10px 12px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    color:var(--navy);
    text-align:left;
    white-space:normal;
    transform:none;
    cursor:pointer;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:hover,
.itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:focus,
.itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:focus {
    background:#fffaf1;
    box-shadow:none;
    transform:none;
    outline:none;
}
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__toggle:hover,
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__toggle:focus {
    background:#f5f8fa;
}
.itg-portal .itg-portal-underfilled-card__chevron {
    display:grid;
    place-items:center;
    width:26px;
    height:26px;
    border-radius:8px;
    background:#fff3d5;
    color:#9a6400;
    font-size:16px;
    font-weight:900;
}
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__chevron {
    background:#edf2f6;
    color:#6f8496;
}
.itg-portal .itg-portal-underfilled-card__title {
    display:grid;
    grid-template-columns:auto auto minmax(0,1fr);
    align-items:center;
    gap:4px 9px;
    min-width:0;
}
.itg-portal .itg-portal-underfilled-card__title small {
    grid-column:1;
    grid-row:1;
    color:#0077ad;
    font-size:10px;
    line-height:1;
}
.itg-portal .itg-portal-underfilled-card__title strong {
    grid-column:2;
    grid-row:1;
    color:var(--navy);
    font-size:18px;
    line-height:1.1;
}
.itg-portal .itg-portal-underfilled-card__title em {
    grid-column:1/-1;
    grid-row:2;
    color:#8a610f;
    font-size:11px;
    line-height:1.2;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card__toggle > b,
.itg-portal .itg-portal-underfilled-card__toggle > b {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:5px 9px;
    border:0;
    border-radius:999px;
    background:#fff0cf;
    color:#855700;
    font-size:11px;
    line-height:1;
    white-space:nowrap;
}
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__toggle > b {
    background:#edf2f6;
    color:#607789;
}
.itg-portal .itg-portal-underfilled-card__body {
    padding:12px 14px 14px;
    border-top:1px solid #edf2f6;
    background:#fff;
}
.itg-portal .itg-portal-underfilled-card__meta {
    padding:0 0 10px;
}
.itg-portal .itg-portal-underfilled-card ul {
    padding:0;
}
.itg-portal .itg-portal-underfilled-card li:last-child {
    border-bottom:0;
}

@media (min-width:1350px) {
    .itg-portal .itg-portal-underfilled-grid {
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
}
@media (max-width:700px) {
    body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle,
    .itg-portal .itg-portal-form button.itg-portal-training-session-toggle {
        grid-template-columns:30px minmax(0,1fr);
        min-height:68px;
        padding:10px;
    }
    .itg-portal .itg-portal-training-session-toggle__title {
        grid-template-columns:1fr;
    }
    .itg-portal .itg-portal-training-session-toggle__title small,
    .itg-portal .itg-portal-training-session-toggle__title strong,
    .itg-portal .itg-portal-training-session-toggle__title em {
        grid-column:1;
        white-space:normal;
    }
    .itg-portal .itg-portal-training-session-toggle__title small { grid-row:1; }
    .itg-portal .itg-portal-training-session-toggle__title strong { grid-row:2; }
    .itg-portal .itg-portal-training-session-toggle__title em { grid-row:3; }
    body.itg-portal-standalone-body .itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session],
    .itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session] {
        margin-right:8px;
        padding:7px 8px;
    }
    body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
    .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle {
        grid-template-columns:26px minmax(0,1fr);
    }
    .itg-portal .itg-portal-underfilled-card__toggle > b {
        grid-column:2;
        justify-self:start;
    }
}

body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button,
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-underfilled-header-actions button,
.itg-portal .itg-portal-form .itg-portal-underfilled-header-actions button {
    min-height:36px;
    padding:7px 12px;
    border:1px solid #bfd2e2;
    border-radius:9px;
    background:#fff;
    box-shadow:none;
    color:var(--navy);
    font-size:12px;
    font-weight:800;
    transform:none;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:hover,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-underfilled-header-actions button:hover,
.itg-portal .itg-portal-form .itg-portal-underfilled-header-actions button:hover {
    border-color:#8fbfd8;
    background:#f3f9fd;
    box-shadow:none;
    transform:none;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:last-child,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:last-child {
    border-color:var(--navy);
    background:var(--navy);
    color:#fff;
}

/* ITG 1.0.51 – Training und Qualitätskontrolle im einheitlichen Einstellungsstil */
.itg-portal .itg-portal-training-settings-heading {
    align-items:flex-end;
    margin-top:18px;
    padding-top:22px;
    border-top:1px solid #dce7ef;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button {
    min-height:36px;
    padding:7px 12px;
    border:1px solid #bfd2e2;
    border-radius:10px;
    background:#fff;
    color:var(--navy);
    font-size:12px;
    font-weight:800;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:last-child,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:last-child {
    border-color:var(--blue);
    background:var(--blue);
    color:#fff;
}
.itg-portal .itg-portal-training-session-settings {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:0 20px 8px;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-training-session-setting,
.itg-portal .itg-portal-training-session-setting {
    min-width:0;
    border:1px solid #d4e2ec;
    border-radius:13px;
    background:#f4f9fd;
    box-shadow:none;
}
.itg-portal .itg-portal-training-session-setting:not(.is-collapsed) {
    grid-column:1/-1;
    border-color:#9fcfe5;
    background:#fff;
    box-shadow:0 8px 22px rgba(0,86,155,.07);
}
.itg-portal .itg-portal-training-session-setting.is-inactive { opacity:.75; }
body.itg-portal-standalone-body .itg-portal .itg-portal-training-session-setting > header,
.itg-portal .itg-portal-training-session-setting > header {
    min-height:84px;
    background:transparent;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle {
    min-height:84px;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    padding:13px 14px;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle:hover,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle:focus,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle:focus { background:#edf6fc; }
.itg-portal .itg-portal-training-session-toggle__chevron {
    width:40px;
    height:40px;
    border-radius:11px;
    background:#08a4dc;
    color:#fff;
    border:0;
    box-shadow:0 5px 12px rgba(0,169,224,.18);
}
.itg-portal .itg-portal-training-session-setting.is-inactive .itg-portal-training-session-toggle__chevron {
    background:#a7b8c6;
    box-shadow:none;
}
.itg-portal .itg-portal-training-session-toggle__title {
    display:grid;
    grid-template-columns:1fr;
    gap:4px;
}
.itg-portal .itg-portal-training-session-toggle__title small,
.itg-portal .itg-portal-training-session-toggle__title strong,
.itg-portal .itg-portal-training-session-toggle__title em {
    grid-column:1;
    grid-row:auto;
}
.itg-portal .itg-portal-training-session-toggle__title strong {
    font-size:15px;
    white-space:normal;
}
.itg-portal .itg-portal-training-session-toggle__title em {
    font-size:11px;
    white-space:normal;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session],
.itg-portal .itg-portal-form button.is-danger-link[data-itg-portal-remove-training-session] {
    margin-right:12px;
    padding:7px 9px;
    border:1px solid #ead4d7;
    border-radius:9px;
    background:#fff;
    color:#a42c36;
    font-size:11px;
}
.itg-portal .itg-portal-training-session-setting__body {
    padding:16px;
    border-top:1px solid #dce8f0;
    background:#fff;
}
.itg-portal .itg-portal-training-session-setting__grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.itg-portal .itg-portal-training-session-setting__grid > label {
    padding:13px;
    border:1px solid #d6e3ed;
    border-radius:12px;
    background:#f5f9fc;
}
.itg-portal .itg-portal-training-session-setting__grid > label.is-wide { grid-column:span 2; }
.itg-portal .itg-portal-training-session-setting__grid > label:last-child { grid-column:1/-1; }
.itg-portal .itg-portal-training-session-setting__grid .itg-portal-toggle { grid-column:1/-1; min-height:58px; }

.itg-portal .itg-portal-underfilled-sections {
    display:grid;
    gap:16px;
    padding:0 20px 20px;
}
.itg-portal .itg-portal-underfilled-group,
.itg-portal .itg-portal-underfilled-group.is-empty-group {
    overflow:hidden;
    border:1px solid #d4e2ec;
    border-radius:15px;
    background:#fff;
}
.itg-portal .itg-portal-underfilled-group__header,
.itg-portal .itg-portal-underfilled-group > summary {
    padding:16px 18px;
    background:#f4f9fd;
}
.itg-portal .itg-portal-underfilled-group__header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.itg-portal .itg-portal-underfilled-group__header > div {
    display:flex;
    align-items:center;
    gap:12px;
}
.itg-portal .itg-portal-underfilled-group__icon {
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:40px;
    height:40px;
    border-radius:11px;
    background:#08a4dc;
    color:#fff;
    font-size:18px;
    font-weight:900;
}
.itg-portal .itg-portal-underfilled-group__icon.is-muted { background:#9fb1c0; }
.itg-portal .itg-portal-underfilled-group__header small,
.itg-portal .itg-portal-underfilled-group__summary-text small {
    display:block;
    color:#008fc7;
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.itg-portal .itg-portal-underfilled-group__header h4,
.itg-portal .itg-portal-underfilled-group__summary-text strong {
    display:block;
    margin:2px 0 0;
    color:var(--navy);
    font-size:16px;
}
.itg-portal .itg-portal-underfilled-group__header p,
.itg-portal .itg-portal-underfilled-group__summary-text em {
    display:block;
    margin:3px 0 0;
    color:#60788d;
    font-size:11px;
    font-style:normal;
    font-weight:500;
}
.itg-portal .itg-portal-underfilled-group__header > b,
.itg-portal .itg-portal-underfilled-group > summary > b {
    flex:0 0 auto;
    padding:7px 10px;
    border-radius:999px;
    background:#e8f4fb;
    color:#00569b;
    font-size:11px;
}
.itg-portal .itg-portal-underfilled-group > summary {
    display:grid;
    grid-template-columns:40px minmax(0,1fr) auto 24px;
    align-items:center;
    gap:14px;
    cursor:pointer;
    list-style:none;
}
.itg-portal .itg-portal-underfilled-group > summary::-webkit-details-marker { display:none; }
.itg-portal .itg-portal-underfilled-group__chevron { transition:transform .18s ease; }
.itg-portal .itg-portal-underfilled-group[open] .itg-portal-underfilled-group__chevron { transform:rotate(180deg); }
.itg-portal .itg-portal-underfilled-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    padding:14px;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card,
.itg-portal .itg-portal-underfilled-card,
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card.is-empty,
.itg-portal .itg-portal-underfilled-card.is-empty {
    min-width:0;
    border:1px solid #d6e3ed;
    border-left:0;
    border-radius:12px;
    background:#f5f9fc;
    box-shadow:inset 3px 0 0 #e8aa2f;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card.is-empty,
.itg-portal .itg-portal-underfilled-card.is-empty {
    background:#f7f9fb;
    box-shadow:inset 3px 0 0 #9fb1c0;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
.itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
body.itg-portal-standalone-body .itg-portal button.itg-portal-underfilled-card__toggle,
.itg-portal button.itg-portal-underfilled-card__toggle {
    min-height:76px;
    grid-template-columns:34px minmax(0,1fr) auto;
    padding:11px 12px;
}
.itg-portal .itg-portal-underfilled-card__chevron {
    width:32px;
    height:32px;
    border-radius:9px;
    background:#fff;
    color:#008fc7;
    border:1px solid #cfe0eb;
}
.itg-portal .itg-portal-underfilled-card__title {
    display:grid;
    grid-template-columns:auto auto;
    justify-content:start;
    gap:3px 8px;
}
.itg-portal .itg-portal-underfilled-card__title small { grid-column:1; grid-row:1; }
.itg-portal .itg-portal-underfilled-card__title strong { grid-column:2; grid-row:1; font-size:17px; }
.itg-portal .itg-portal-underfilled-card__title em { grid-column:1/-1; grid-row:2; color:#8a610f; }
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card__toggle > b,
.itg-portal .itg-portal-underfilled-card__toggle > b {
    background:#fff;
    border:1px solid #ead7ab;
    color:#805800;
}
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__toggle > b {
    border-color:#d6e0e7;
    background:#fff;
    color:#607789;
}
.itg-portal .itg-portal-underfilled-card__body {
    padding:12px;
    border-top:1px solid #dce7ef;
    background:#fff;
}

@media (max-width:1100px) {
    .itg-portal .itg-portal-training-session-settings { grid-template-columns:1fr; }
    .itg-portal .itg-portal-training-session-setting:not(.is-collapsed) { grid-column:auto; }
    .itg-portal .itg-portal-training-session-setting__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .itg-portal .itg-portal-underfilled-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
    .itg-portal .itg-portal-training-session-setting__grid { grid-template-columns:1fr; }
    .itg-portal .itg-portal-training-session-setting__grid > label.is-wide,
    .itg-portal .itg-portal-training-session-setting__grid > label:last-child { grid-column:auto; }
    .itg-portal .itg-portal-underfilled-sections { padding:0 16px 16px; }
    .itg-portal .itg-portal-underfilled-group__header { align-items:flex-start; flex-direction:column; }
    .itg-portal .itg-portal-underfilled-group > summary { grid-template-columns:36px minmax(0,1fr) 22px; }
    .itg-portal .itg-portal-underfilled-group > summary > b { grid-column:2; justify-self:start; }
    .itg-portal .itg-portal-underfilled-grid { grid-template-columns:1fr; padding:10px; }
}

/* ITG 1.0.52 – rustige kaarten zonder donkerblauwe knoppen of goud-bruine tekst */
.itg-portal .itg-portal-underfilled-insights > .itg-portal-insight-panel__header {
    align-items:flex-start;
    gap:24px;
}
.itg-portal .itg-portal-underfilled-header-tools {
    flex:0 0 auto;
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
}
.itg-portal .itg-portal-underfilled-insights .itg-portal-insight-panel__meta,
.itg-portal .itg-portal-underfilled-insights .itg-portal-insight-panel__meta.is-warning,
.itg-portal .itg-portal-underfilled-insights .itg-portal-insight-panel__meta.is-ok {
    min-width:188px;
    border:1px solid #d4e2ec;
    border-radius:13px;
    background:#f7fbfe;
    color:#60788d;
    box-shadow:none;
}
.itg-portal .itg-portal-underfilled-insights .itg-portal-insight-panel__meta strong {
    color:var(--navy);
}
.itg-portal .itg-portal-underfilled-sections {
    gap:14px;
    padding:0 20px 20px;
}
.itg-portal .itg-portal-underfilled-group,
.itg-portal .itg-portal-underfilled-group.is-empty-group {
    border:1px solid #d4e2ec;
    border-radius:14px;
    background:#fff;
    box-shadow:none;
}
.itg-portal .itg-portal-underfilled-group__header,
.itg-portal .itg-portal-underfilled-group > summary {
    padding:15px 17px;
    background:#f4f9fd;
}
.itg-portal .itg-portal-underfilled-group__icon {
    width:38px;
    height:38px;
    border:1px solid #cfe2ee;
    border-radius:10px;
    background:#eaf6fc;
    color:#008fc7;
    box-shadow:none;
}
.itg-portal .itg-portal-underfilled-group__icon.is-muted {
    border-color:#d8e2e9;
    background:#f1f5f8;
    color:#74899b;
}
.itg-portal .itg-portal-underfilled-group__header > b,
.itg-portal .itg-portal-underfilled-group > summary > b {
    border:1px solid #d7e7f1;
    background:#eaf5fb;
    color:#174f79;
    font-weight:800;
}
.itg-portal .itg-portal-underfilled-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    padding:14px;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card,
.itg-portal .itg-portal-underfilled-card,
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card.is-empty,
.itg-portal .itg-portal-underfilled-card.is-empty {
    overflow:hidden;
    min-width:0;
    border:1px solid #d7e4ee;
    border-radius:12px;
    background:#fbfdff;
    box-shadow:none;
}
.itg-portal .itg-portal-underfilled-card:not(.is-collapsed) {
    border-color:#a9d2e6;
    background:#fff;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
.itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
body.itg-portal-standalone-body .itg-portal button.itg-portal-underfilled-card__toggle,
.itg-portal button.itg-portal-underfilled-card__toggle {
    appearance:none !important;
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) auto !important;
    align-items:center !important;
    justify-content:stretch !important;
    gap:11px !important;
    width:100% !important;
    min-height:74px !important;
    margin:0 !important;
    padding:11px 12px !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fbfdff !important;
    box-shadow:none !important;
    color:var(--navy) !important;
    font:inherit !important;
    line-height:1.2 !important;
    text-align:left !important;
    text-transform:none !important;
    white-space:normal !important;
    transform:none !important;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:hover,
.itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle:focus,
.itg-portal button.itg-portal-underfilled-card__toggle:hover,
.itg-portal button.itg-portal-underfilled-card__toggle:focus {
    border:0 !important;
    background:#f3f9fd !important;
    box-shadow:none !important;
    color:var(--navy) !important;
    outline:none !important;
    transform:none !important;
}
.itg-portal .itg-portal-underfilled-card__chevron {
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border:1px solid #cfe0eb;
    border-radius:9px;
    background:#fff;
    color:#007fad;
    font-size:15px;
    font-weight:900;
    box-shadow:none;
}
.itg-portal .itg-portal-underfilled-card__title {
    display:grid;
    grid-template-columns:auto auto;
    justify-content:start;
    align-items:baseline;
    gap:3px 9px;
    min-width:0;
}
.itg-portal .itg-portal-underfilled-card__title small {
    grid-column:1;
    grid-row:1;
    color:#008fc7;
    font-size:10px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.itg-portal .itg-portal-underfilled-card__title strong {
    grid-column:2;
    grid-row:1;
    color:var(--navy);
    font-size:17px;
    line-height:1.15;
}
.itg-portal .itg-portal-underfilled-card__title em {
    grid-column:1/-1;
    grid-row:2;
    color:#60788d;
    font-size:11px;
    font-style:normal;
    font-weight:600;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-underfilled-card__toggle > b,
.itg-portal .itg-portal-underfilled-card__toggle > b {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:28px !important;
    padding:5px 9px !important;
    border:1px solid #d7e7f1 !important;
    border-radius:999px !important;
    background:#eaf5fb !important;
    color:#174f79 !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-transform:none !important;
    white-space:nowrap !important;
}
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__chevron,
.itg-portal .itg-portal-underfilled-card.is-empty .itg-portal-underfilled-card__toggle > b {
    border-color:#dbe4ea !important;
    background:#f1f5f8 !important;
    color:#687e90 !important;
}
.itg-portal .itg-portal-underfilled-card__body {
    padding:12px 14px 14px;
    border-top:1px solid #e1ebf2;
    background:#fff;
}
.itg-portal .itg-portal-underfilled-card__meta strong {
    color:#365f7e;
}

.itg-portal .itg-portal-training-settings-heading {
    align-items:flex-end;
    gap:16px;
    margin-top:18px;
    padding:22px 20px 12px;
    border-top:1px solid #dce7ef;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button,
body.itg-portal-standalone-body .itg-portal .itg-portal-training-settings-heading__actions button,
.itg-portal .itg-portal-training-settings-heading__actions button {
    appearance:none !important;
    min-height:36px !important;
    margin:0 !important;
    padding:7px 12px !important;
    border:1px solid #bfd2e2 !important;
    border-radius:9px !important;
    background:#fff !important;
    box-shadow:none !important;
    color:var(--navy) !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-transform:none !important;
    transform:none !important;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:hover,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-training-settings-heading__actions button:hover,
.itg-portal .itg-portal-training-settings-heading__actions button:hover {
    border-color:#99c5dc !important;
    background:#f3f9fd !important;
    color:var(--navy) !important;
    box-shadow:none !important;
    transform:none !important;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:last-child,
.itg-portal .itg-portal-form .itg-portal-training-settings-heading__actions button:last-child,
body.itg-portal-standalone-body .itg-portal .itg-portal-training-settings-heading__actions button:last-child,
.itg-portal .itg-portal-training-settings-heading__actions button:last-child {
    border-color:#b9d8e8 !important;
    background:#eaf6fc !important;
    color:#07537d !important;
}
.itg-portal .itg-portal-training-session-settings {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:0 20px 8px;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-training-session-setting,
.itg-portal .itg-portal-training-session-setting {
    overflow:hidden;
    min-width:0;
    padding:0;
    border:1px solid #d7e4ee;
    border-radius:12px;
    background:#fbfdff;
    box-shadow:none;
}
.itg-portal .itg-portal-training-session-setting:not(.is-collapsed) {
    grid-column:1/-1;
    border-color:#a9d2e6;
    background:#fff;
    box-shadow:none;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-training-session-setting > header,
.itg-portal .itg-portal-training-session-setting > header {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:8px;
    min-height:74px;
    margin:0;
    padding:0;
    background:#fbfdff;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle,
body.itg-portal-standalone-body .itg-portal button.itg-portal-training-session-toggle,
.itg-portal button.itg-portal-training-session-toggle {
    appearance:none !important;
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) !important;
    align-items:center !important;
    gap:11px !important;
    width:100% !important;
    min-height:74px !important;
    margin:0 !important;
    padding:11px 12px !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fbfdff !important;
    box-shadow:none !important;
    color:var(--navy) !important;
    font:inherit !important;
    text-align:left !important;
    text-transform:none !important;
    white-space:normal !important;
    transform:none !important;
}
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle:hover,
.itg-portal .itg-portal-form button.itg-portal-training-session-toggle:hover,
body.itg-portal-standalone-body .itg-portal button.itg-portal-training-session-toggle:hover,
.itg-portal button.itg-portal-training-session-toggle:hover,
body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-training-session-toggle:focus,
.itg-portal button.itg-portal-training-session-toggle:focus {
    background:#f3f9fd !important;
    box-shadow:none !important;
    color:var(--navy) !important;
    outline:none !important;
    transform:none !important;
}
.itg-portal .itg-portal-training-session-toggle__chevron {
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border:1px solid #cfe0eb;
    border-radius:9px;
    background:#fff;
    color:#007fad;
    font-size:15px;
    font-weight:900;
    box-shadow:none;
}
.itg-portal .itg-portal-training-session-setting.is-inactive .itg-portal-training-session-toggle__chevron {
    border-color:#dbe4ea;
    background:#f1f5f8;
    color:#74899b;
}
.itg-portal .itg-portal-training-session-toggle__title {
    display:grid;
    grid-template-columns:1fr;
    gap:3px;
    min-width:0;
}
.itg-portal .itg-portal-training-session-toggle__title small {
    color:#008fc7;
    font-size:10px;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
}
.itg-portal .itg-portal-training-session-toggle__title strong {
    color:var(--navy);
    font-size:15px;
    line-height:1.25;
    white-space:normal;
}
.itg-portal .itg-portal-training-session-toggle__title em {
    color:#60788d;
    font-size:11px;
    line-height:1.35;
    white-space:normal;
}
.itg-portal .itg-portal-training-session-setting__body {
    padding:15px;
    border-top:1px solid #e1ebf2;
    background:#fff;
}
.itg-portal .itg-portal-training-session-setting__grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.itg-portal .itg-portal-training-session-setting__grid > label {
    padding:12px;
    border:1px solid #d7e4ee;
    border-radius:11px;
    background:#f7fbfe;
}

@media (max-width:1100px) {
    .itg-portal .itg-portal-training-session-settings { grid-template-columns:1fr; }
    .itg-portal .itg-portal-training-session-setting:not(.is-collapsed) { grid-column:auto; }
    .itg-portal .itg-portal-training-session-setting__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .itg-portal .itg-portal-underfilled-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
    .itg-portal .itg-portal-underfilled-insights > .itg-portal-insight-panel__header { flex-direction:column; }
    .itg-portal .itg-portal-underfilled-header-tools,
    .itg-portal .itg-portal-underfilled-insights .itg-portal-insight-panel__meta { width:100%; }
    .itg-portal .itg-portal-underfilled-group__header { align-items:flex-start; flex-direction:column; }
    .itg-portal .itg-portal-underfilled-group > summary { grid-template-columns:36px minmax(0,1fr) 22px; }
    .itg-portal .itg-portal-underfilled-group > summary > b { grid-column:2; justify-self:start; }
    .itg-portal .itg-portal-underfilled-grid { grid-template-columns:1fr; padding:10px; }
    body.itg-portal-standalone-body .itg-portal .itg-portal-form button.itg-portal-underfilled-card__toggle,
    .itg-portal button.itg-portal-underfilled-card__toggle { grid-template-columns:30px minmax(0,1fr) !important; }
    .itg-portal .itg-portal-underfilled-card__toggle > b { grid-column:2; justify-self:start; }
    .itg-portal .itg-portal-training-settings-heading { align-items:stretch; flex-direction:column; }
    .itg-portal .itg-portal-training-settings-heading__actions { display:grid; grid-template-columns:1fr; width:100%; }
    .itg-portal .itg-portal-training-session-setting__grid { grid-template-columns:1fr; }
    .itg-portal .itg-portal-training-session-setting__grid > label.is-wide,
    .itg-portal .itg-portal-training-session-setting__grid > label:last-child { grid-column:auto; }
}

/* ITG 1.0.57 – Vereinskonten im Frontend und fein abgestufte Admin-Rechte */
.itg-portal-account-statuses,
.itg-portal-data-counters,
.itg-portal-account-metrics {
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}
.itg-portal-account-status {
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:5px 10px;
    border:1px solid #cbdbe8;
    border-radius:999px;
    background:#f3f8fc;
    color:#345a78;
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}
.itg-portal-account-status.is-active,
.itg-portal-account-status.is-verified,
.itg-portal-account-status.is-registered { border-color:#b9dfca; background:#edf8f1; color:#17643a; }
.itg-portal-account-status.is-inactive,
.itg-portal-account-status.is-rejected,
.itg-portal-account-status.is-cancelled { border-color:#edc5c8; background:#fff3f4; color:#8c2229; }
.itg-portal-account-status.is-unverified,
.itg-portal-account-status.is-waitlist { border-color:#ecd59f; background:#fff8e8; color:#805300; }
.itg-portal-account-metrics {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    padding:16px 20px;
    border-bottom:1px solid var(--line);
    background:#fff;
}
.itg-portal-account-metrics > span,
.itg-portal-data-counters > span {
    padding:10px 12px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#f8fbfe;
}
.itg-portal-account-metrics small,
.itg-portal-data-counters small { display:block; color:var(--muted); font-size:10px; font-weight:800; text-transform:uppercase; }
.itg-portal-account-metrics strong,
.itg-portal-data-counters strong { display:block; margin-top:3px; color:var(--navy); }
.itg-portal-backlink { margin:0 0 12px; }
.itg-portal-backlink a { font-weight:800; text-decoration:none; }
.itg-portal-club-account-form {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    padding:18px 20px 20px;
}
.itg-portal-club-account-form > label:not(.itg-portal-permission-toggle) { display:flex; flex-direction:column; gap:6px; color:var(--navy); font-size:12px; font-weight:800; }
.itg-portal-club-account-form input[type="email"],
.itg-portal-club-account-search input,
.itg-portal-my-account input,
.itg-portal-admin-account-card input[type="password"],
.itg-portal-add-account--permissions input {
    width:100%;
    min-height:42px;
    padding:9px 11px;
    border:1px solid #bfd0df;
    border-radius:9px;
    background:#fff;
    color:var(--ink);
}
.itg-portal-club-account-form small { color:var(--muted); font-weight:400; }
.itg-portal-club-account-form .is-wide { grid-column:1/-1; }
.itg-portal-permission-toggle {
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:13px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#f8fbfe;
}
.itg-portal-permission-toggle input { width:18px; height:18px; margin-top:2px; }
.itg-portal-permission-toggle span { display:block; }
.itg-portal-permission-toggle strong { display:block; color:var(--navy); }
.itg-portal-permission-toggle small { display:block; margin-top:4px; }
.itg-portal-club-account-form__actions {
    grid-column:1/-1;
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.itg-portal-club-account-form__actions button,
.itg-portal-action-card-body button,
.itg-portal-club-account-search button,
.itg-portal-my-account button,
.itg-portal-admin-permissions-form button,
.itg-portal-add-account--permissions > button,
.itg-portal-inline-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:39px;
    padding:8px 13px;
    border:1px solid #bfd0df;
    border-radius:8px;
    background:#fff;
    color:var(--navy) !important;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
}
.itg-portal-club-account-form__actions button,
.itg-portal-add-account--permissions > button { background:var(--navy); color:#fff !important; border-color:var(--navy); }
.itg-portal-club-account-form__actions span { color:var(--muted); font-size:12px; }
.itg-portal-account-action-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.itg-portal-action-card-body { padding:18px 20px; }
.itg-portal-action-card-body form { margin:0; }
.itg-portal-data-counters { justify-content:flex-end; }
.itg-portal-roster-status {
    display:inline-flex;
    padding:5px 9px;
    border:1px solid #cbdbe8;
    border-radius:999px;
    background:#f3f8fc;
    color:#345a78;
    font-size:11px;
    font-weight:900;
}
.itg-portal-roster-status.is-registered { border-color:#b9dfca; background:#edf8f1; color:#17643a; }
.itg-portal-roster-status.is-waitlist { border-color:#ecd59f; background:#fff8e8; color:#805300; }
.itg-portal-roster-status.is-former { border-color:#d5dce3; background:#f4f6f8; color:#5f6d7a; }
.itg-portal-roster-status.is-saved { border-color:#c6dcec; background:#edf6fc; color:#275f89; }
.itg-portal-roster-starts { display:grid; gap:3px; margin-top:6px; }
.itg-portal-roster-starts span { color:var(--muted); font-size:11px; }
.itg-portal-club-registration-list { display:grid; gap:10px; padding:16px 20px 20px; }
.itg-portal-club-registration { overflow:hidden; border:1px solid var(--line); border-radius:11px; background:#fff; }
.itg-portal-club-registration summary {
    display:grid;
    grid-template-columns:120px minmax(180px,1fr) auto auto 120px;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    background:#f8fbfe;
    cursor:pointer;
}
.itg-portal-club-registration summary small { display:block; color:var(--muted); font-size:10px; }
.itg-portal-club-registration summary strong { color:var(--navy); }
.itg-portal-club-registration__body { padding:0 0 14px; }
.itg-portal-club-registration__body > p { margin:12px 16px 0; }
.itg-portal-club-account-search {
    display:flex;
    align-items:center;
    gap:9px;
    padding:16px 20px;
    border-bottom:1px solid var(--line);
}
.itg-portal-club-account-search input { flex:1; }
.itg-portal-club-account-search a { font-weight:800; text-decoration:none; }
.itg-portal-result-count { padding:7px 11px; border-radius:999px; background:#e9f5fc; color:var(--navy); font-size:12px; font-weight:900; }
.itg-portal-pagination { display:flex; align-items:center; justify-content:center; gap:14px; padding:15px 20px; border-top:1px solid var(--line); }
.itg-portal-pagination a { font-weight:800; text-decoration:none; }
.itg-portal-my-account__body { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(320px,1.2fr); gap:18px; padding:18px 20px; }
.itg-portal-my-account form { display:flex; align-items:flex-end; gap:9px; }
.itg-portal-my-account form label { flex:1; display:flex; flex-direction:column; gap:6px; color:var(--navy); font-size:12px; font-weight:800; }
.itg-portal-current-permissions > strong { display:block; margin-bottom:8px; color:var(--navy); }
.itg-portal-current-permissions > div { display:flex; gap:6px; flex-wrap:wrap; }
.itg-portal-current-permissions span { padding:5px 8px; border:1px solid #cfe0ec; border-radius:999px; background:#f1f7fb; color:#3c5d78; font-size:11px; font-weight:700; }
.itg-portal-account-list .itg-portal-admin-account-card {
    display:block;
    padding:0;
    overflow:hidden;
    border-radius:12px;
    background:#fff;
}
.itg-portal-admin-account-card__header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; background:#f8fbfe; border-bottom:1px solid var(--line); }
.itg-portal-admin-account-card__header b { padding:5px 9px; border-radius:999px; background:#e8f8fd; color:var(--navy); font-size:11px; }
.itg-portal-admin-permissions-form { padding:15px 16px; }
.itg-portal-permission-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:12px; }
.itg-portal-permission-grid label { display:flex; align-items:flex-start; gap:8px; min-height:46px; padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:#fbfdff; color:var(--ink); font-size:12px; font-weight:700; }
.itg-portal-permission-grid input { width:17px; height:17px; margin-top:1px; flex:0 0 auto; }
.itg-portal-admin-account-card > .itg-portal-account-actions { padding:0 16px 15px; }
.itg-portal-add-account--permissions { display:block; }
.itg-portal-add-account__fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.itg-portal-add-account__permissions { margin:16px 0 12px; padding-top:15px; border-top:1px solid var(--line); }
.itg-portal-add-account__permissions > strong { display:block; color:var(--navy); }
.itg-portal-add-account__permissions > p { margin:4px 0 12px; color:var(--muted); font-size:12px; }
.itg-portal-summary-list--contact { margin-top:18px; }

@media (max-width:1050px) {
    .itg-portal-account-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .itg-portal-permission-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .itg-portal-club-registration summary { grid-template-columns:100px minmax(160px,1fr) auto auto; }
    .itg-portal-club-registration summary > strong:last-child { grid-column:4; }
}
@media (max-width:800px) {
    .itg-portal-club-account-form,
    .itg-portal-account-action-grid,
    .itg-portal-my-account__body,
    .itg-portal-add-account__fields { grid-template-columns:1fr; }
    .itg-portal-club-account-form .is-wide,
    .itg-portal-club-account-form__actions { grid-column:auto; }
    .itg-portal-my-account form,
    .itg-portal-club-account-search { align-items:stretch; flex-direction:column; }
    .itg-portal-data-counters { justify-content:flex-start; }
    .itg-portal-club-registration summary { grid-template-columns:1fr 1fr; }
    .itg-portal-club-registration summary > strong:last-child { grid-column:auto; }
}
@media (max-width:560px) {
    .itg-portal-account-metrics,
    .itg-portal-permission-grid { grid-template-columns:1fr; }
    .itg-portal-club-registration summary { grid-template-columns:1fr; }
}

/* ITG 1.0.58 – compact account access in the portal header */
.itg-portal-user__identity { min-width:0; }
.itg-portal-user__actions { grid-column:2; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.itg-portal-user__actions > a { grid-column:auto; }
.itg-portal-user__password { position:relative; }
.itg-portal-user__password summary { color:#fff; font-size:12px; font-weight:700; cursor:pointer; list-style:none; }
.itg-portal-user__password summary::-webkit-details-marker { display:none; }
.itg-portal-user__password summary::after { content:" ▾"; opacity:.8; }
.itg-portal-user__password[open] summary::after { content:" ▴"; }
.itg-portal-user__password form { display:grid; grid-template-columns:minmax(180px,1fr) auto; gap:8px; align-items:end; margin-top:10px; padding-top:10px; border-top:1px solid rgba(255,255,255,.2); }
.itg-portal-user__password label { display:grid; gap:4px; }
.itg-portal-user__password label span { color:#cfe6f7; font-size:10px; font-weight:700; text-transform:uppercase; }
.itg-portal-user__password input { min-height:36px; padding:7px 9px; border:1px solid rgba(255,255,255,.38); border-radius:8px; background:rgba(255,255,255,.96); color:#173b5e; }
.itg-portal-user__password button { min-height:36px; padding:7px 12px; border:1px solid rgba(255,255,255,.32); border-radius:8px; background:#fff; color:#003b73; font-weight:800; cursor:pointer; }
@media (max-width:560px) {
    .itg-portal-user__actions { grid-column:1/-1; }
    .itg-portal-user__password form { grid-template-columns:1fr; }
}

/* ITG 1.0.63 – Camping-Nächte statt manueller An-/Abreise */
.itg-portal-camping-night-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    width: 100%;
}
.itg-portal-camping-night-list label {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid rgba(0, 75, 141, .18);
    border-radius: 14px;
    background: #fff;
    font-weight: 700;
    color: #004b8d;
}
.itg-portal-camping-night-list input { width: auto; margin: 0; }
.itg-portal-entry-camping {
    grid-column: 1 / -1;
    border: 1px solid rgba(0, 75, 141, .14);
    border-radius: 16px;
    padding: 14px;
    background: #f8fbff;
}
.itg-portal-entry-camping legend { font-weight: 800; color: #004b8d; }
.itg-portal-entry-camping p { margin: 0 0 10px; color: #4b6584; font-size: .9rem; }

/* 1.0.64: automatisch aus Turnier-/Trainingscampdaten erzeugte Campingnächte */
.itg-portal-camping-auto-window {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px;
    border: 1px solid rgba(0, 75, 141, 0.18);
    border-radius: 14px;
    background: rgba(0, 169, 224, 0.08);
    color: #003b73;
}
.itg-portal-camping-auto-window span {
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.itg-portal-camping-auto-window strong {
    font-size: 14px;
    line-height: 1.35;
}
.itg-portal-camping-auto-window small {
    color: #345b7f;
    line-height: 1.45;
}

/* 1.0.66: onbeperkte campingcapaciteit */
.itg-portal-addon-limit-setting {
    display: grid;
    gap: 7px;
}
.itg-portal-addon-limit-setting > span {
    font-weight: 800;
    color: #003b73;
}
.itg-portal-checkbox-line {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
}
.itg-portal-checkbox-line input { margin: 0; width: auto; }


/* ITG 1.0.70 – edit view nicer for camping/training */
.itg-portal-entry-addons {
    margin-top: 10px;
    border: 1px solid rgba(0,59,115,.12);
    border-radius: 18px;
    background: linear-gradient(180deg, #f9fbfe 0%, #f3f8fc 100%);
    overflow: hidden;
}
.itg-portal-entry-addons > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px 10px;
    border-bottom: 1px solid rgba(0,59,115,.08);
}
.itg-portal-entry-addons > header strong { color: #003b73; font-size: 18px; }
.itg-portal-entry-addons > header span { color:#00a9e0; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.itg-portal-entry-addons > header small { color:#60788d; line-height:1.45; }
.itg-portal-entry-addons__grid { display:grid; grid-template-columns:1fr; gap:16px; padding:16px 18px 18px; }
.itg-portal-entry-camping,
.itg-portal-entry-training {
    margin: 0;
    padding: 16px;
    border: 1px solid rgba(0,75,141,.14);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0,59,115,.05);
}
.itg-portal-entry-training legend,
.itg-portal-entry-camping legend { padding: 0 6px; color:#003b73; font-size: 14px; font-weight:900; }
.itg-portal-entry-training > p,
.itg-portal-entry-camping p { margin:4px 0 12px; color:#60788d; font-size:12px; line-height:1.45; }
.itg-portal-camping-night-list {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(170px, 1fr));
    gap:12px;
}
.itg-portal-camping-night-list label {
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:start;
    gap:10px;
    min-height:100px;
    padding:12px 14px;
    border:1px solid #dce7ef;
    border-radius:14px;
    background:#f8fbfd;
    transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.itg-portal-camping-night-list label > span { display:grid; gap:8px; min-width:0; }
.itg-portal-camping-night-list label > span > strong { color:#003b73; font-size:14px; line-height:1.25; }
.itg-portal-camping-night-card__badges { display:flex; flex-wrap:wrap; gap:6px; }
.itg-portal-camping-badge {
    display:inline-flex; align-items:center; justify-content:center;
    padding:4px 8px; border-radius:999px; font-size:10px; line-height:1.2; font-style:normal; font-weight:800;
    background:#eef4fa; color:#31506d; border:1px solid rgba(49,80,109,.12);
}
.itg-portal-camping-badge.tournament { background:#003b73; border-color:#003b73; color:#fff; }
.itg-portal-camping-badge.training { background:rgba(0,169,224,.12); border-color:rgba(0,169,224,.28); color:#003b73; }
.itg-portal-camping-badge.arrival { background:rgba(96,112,134,.12); border-color:rgba(96,112,134,.22); color:#4a4f59; }
.itg-portal-camping-night-list label.is-itg-day { background:linear-gradient(180deg, rgba(0,95,168,.06), #fff); border-color:rgba(0,59,115,.24); }
.itg-portal-camping-night-list label.is-training-day { background:linear-gradient(180deg, rgba(0,169,224,.06), #fff); border-color:rgba(0,169,224,.22); }
.itg-portal-camping-night-list label.is-arrival-day:not(.is-itg-day):not(.is-training-day) { border-style:dashed; }
.itg-portal-camping-night-list label:has(input:checked) {
    border-color:#00a9e0;
    background:linear-gradient(180deg, rgba(0,169,224,.12), #fff);
    box-shadow:0 10px 22px rgba(0,169,224,.10);
}
.itg-portal-entry-training > div {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));
    gap:12px;
}
.itg-portal-entry-training label {
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:start;
    gap:10px;
    min-height:110px;
    padding:12px 14px;
    border:1px solid #dce7ef;
    border-radius:14px;
    background:#f8fbfd;
    transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.itg-portal-entry-training label > span { display:grid; gap:6px; }
.itg-portal-entry-training label > span strong { color:#003b73; font-size:14px; line-height:1.2; }
.itg-portal-entry-training small { color:#60788d; font-size:12px; line-height:1.45; }
.itg-portal-entry-training label:has(input:checked) {
    border-color:#00a9e0;
    background:linear-gradient(180deg, rgba(0,169,224,.10), #fff);
    box-shadow:0 10px 22px rgba(0,169,224,.08);
}
@media (max-width: 900px) {
    .itg-portal-entry-addons > header { flex-direction:column; align-items:flex-start; }
}
@media (max-width: 650px) {
    .itg-portal-entry-addons__grid,
    .itg-portal-entry-addons > header { padding-left:14px; padding-right:14px; }
    .itg-portal-camping-night-list,
    .itg-portal-entry-training > div { grid-template-columns:1fr; }
}


/* ITG 1.0.71 – camping management in frontend info */
.itg-portal-addon-subsection {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(0,59,115,.10);
}
.itg-portal-addon-subsection__header {
    margin-bottom: 12px;
}
.itg-portal-addon-subsection__header h4 {
    margin: 0 0 4px;
    color: #003b73;
    font-size: 18px;
}
.itg-portal-addon-subsection__header p {
    margin: 0;
    color: #60788d;
}
.itg-portal-camping-management-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 16px;
}
.itg-portal-camping-management-summary--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.itg-portal-camping-management-summary article,
.itg-portal-camping-payment-lists article {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid rgba(0,59,115,.12);
    border-radius: 16px;
    background: #f4f8fc;
}
.itg-portal-camping-management-summary article > strong,
.itg-portal-camping-payment-lists article > header strong {
    color: #003b73;
    font-size: 15px;
}
.itg-portal-camping-management-summary article span,
.itg-portal-camping-payment-lists article > span {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding: 7px 9px;
    border-radius: 999px;
    background: #fff;
    color: #173b5e;
}
.itg-portal-camping-management-summary article em,
.itg-portal-camping-payment-lists article > span em {
    min-width: 34px;
    text-align: center;
    padding: 3px 8px;
    border-radius: 999px;
    font-style: normal;
    font-weight: 800;
    background: #003b73;
    color: #fff;
}
.itg-portal-camping-payment-lists {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 16px;
}
.itg-portal-camping-payment-lists article > header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.itg-portal-camping-payment-lists article > p,
.itg-portal-camping-management-table small { color: #60788d; }
.itg-portal-payment-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 76px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    background: #fff4de;
    color: #805400;
}
.itg-portal-payment-pill.is-paid { background: #e9f8ef; color: #11602f; }
@media (max-width: 1200px) {
    .itg-portal-camping-management-summary--three { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
    .itg-portal-camping-management-summary,
    .itg-portal-camping-payment-lists { grid-template-columns: 1fr; }
}


/* ITG 1.0.74 – interactive camping management in frontend */
.itg-portal-camping-management-summary--interactive {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.itg-portal-camping-day-column {
    align-content: start;
}
.itg-portal-camping-day-detail {
    border: 1px solid rgba(0,59,115,.10);
    border-radius: 14px;
    background: #fff;
    overflow: hidden;
}
.itg-portal-camping-day-detail + .itg-portal-camping-day-detail {
    margin-top: 8px;
}
.itg-portal-camping-day-detail summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 10px;
    list-style: none;
    color: #003b73;
    font-weight: 900;
}
.itg-portal-camping-day-detail summary::-webkit-details-marker,
.itg-portal-camping-compact-list summary::-webkit-details-marker {
    display: none;
}
.itg-portal-camping-day-detail summary::before {
    content: '▸';
    color: #00a9e0;
    font-size: 12px;
    transition: transform .15s ease;
}
.itg-portal-camping-day-detail[open] summary::before {
    transform: rotate(90deg);
}
.itg-portal-camping-day-detail summary span {
    flex: 1;
}
.itg-portal-camping-day-detail summary em {
    min-width: 30px;
    text-align: center;
    padding: 3px 8px;
    border-radius: 999px;
    font-style: normal;
    color: #fff;
    background: #003b73;
}
.itg-portal-camping-day-detail__list {
    display: grid;
    gap: 8px;
    padding: 0 10px 10px 10px;
}
.itg-portal-camping-day-detail__list section {
    display: grid;
    gap: 4px;
    padding: 10px;
    border-radius: 12px;
    background: #f8fbff;
    border: 1px solid rgba(0,75,141,.10);
}
.itg-portal-camping-day-detail__list header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
.itg-portal-camping-day-detail__list p {
    margin: 0;
    color: #173b5e;
    line-height: 1.4;
}
.itg-portal-camping-day-detail__list small,
.itg-portal-camping-booking-cards small {
    color: #60788d;
    overflow-wrap: anywhere;
}
.itg-portal-camping-compact-list {
    margin-top: 16px;
    border: 1px solid rgba(0,59,115,.12);
    border-radius: 16px;
    background: #f8fbff;
    overflow: hidden;
}
.itg-portal-camping-compact-list > summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    list-style: none;
    color: #003b73;
    font-weight: 900;
}
.itg-portal-camping-compact-list > summary span::before {
    content: '▸';
    display: inline-block;
    margin-right: 8px;
    color: #00a9e0;
    transition: transform .15s ease;
}
.itg-portal-camping-compact-list[open] > summary span::before {
    transform: rotate(90deg);
}
.itg-portal-camping-compact-list > summary em {
    font-style: normal;
    color: #60788d;
}
.itg-portal-camping-booking-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 12px;
    padding: 0 14px 14px;
}
.itg-portal-camping-booking-cards article {
    display: grid;
    gap: 8px;
    padding: 12px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(0,75,141,.12);
}
.itg-portal-camping-booking-cards article header,
.itg-portal-camping-booking-cards article footer {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.itg-portal-camping-booking-cards article p {
    margin: 0;
    color: #173b5e;
    line-height: 1.45;
}
.itg-portal-camping-booking-cards article footer {
    font-weight: 900;
    color: #003b73;
}
@media (max-width: 1200px) {
    .itg-portal-camping-management-summary--interactive {
        grid-template-columns: 1fr;
    }
}


/* ITG 1.0.75 – Zusatzangebote untereinander statt nebeneinander */
.itg-portal-addon-grid {
    grid-template-columns: 1fr !important;
}
.itg-portal-addon-panel {
    width: 100%;
}


/* ITG 1.0.85 – modernere Campingverwaltung im Frontend */
.itg-portal-addon-subsection {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid rgba(0, 59, 115, 0.08);
}
.itg-portal-addon-subsection__header h4 {
    font-size: 22px;
    margin-bottom: 6px;
}
.itg-portal-addon-subsection__header p {
    max-width: 760px;
    line-height: 1.5;
}
.itg-portal-camping-management-summary--interactive {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.itg-portal-camping-day-column {
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(0, 75, 141, 0.12);
    background: linear-gradient(180deg, #fbfdff 0%, #f3f8fc 100%);
    box-shadow: 0 18px 40px rgba(0, 59, 115, 0.06);
}
.itg-portal-camping-day-column > strong {
    display: block;
    color: #003b73;
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: -.01em;
}
.itg-portal-camping-day-detail {
    border: 1px solid rgba(0, 59, 115, 0.08);
    border-radius: 18px;
    background: #ffffff;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(0, 59, 115, 0.05);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.itg-portal-camping-day-detail:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(0, 59, 115, 0.08);
    border-color: rgba(0, 169, 224, 0.28);
}
.itg-portal-camping-day-detail + .itg-portal-camping-day-detail {
    margin-top: 10px;
}
.itg-portal-camping-day-detail summary {
    gap: 14px;
    padding: 14px 16px;
    color: #003b73;
    font-size: 17px;
    line-height: 1.25;
}
.itg-portal-camping-day-detail summary::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: rgba(0, 169, 224, 0.10);
    color: #00a9e0;
    font-size: 11px;
    flex: 0 0 22px;
}
.itg-portal-camping-day-detail summary span {
    font-weight: 800;
}
.itg-portal-camping-day-detail summary em {
    min-width: 36px;
    padding: 5px 10px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 13px;
    box-shadow: inset 0 -1px 0 rgba(255,255,255,.18);
}
.itg-portal-camping-day-detail__list {
    gap: 10px;
    padding: 0 16px 16px;
}
.itg-portal-camping-day-detail__list section {
    gap: 6px;
    padding: 12px 14px;
    border-radius: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    border: 1px solid rgba(0, 75, 141, 0.08);
}
.itg-portal-camping-day-detail__list header {
    gap: 12px;
}
.itg-portal-camping-day-detail__list header strong {
    color: #003b73;
    line-height: 1.35;
}
.itg-portal-camping-day-detail__list p {
    color: #244665;
    font-size: 14px;
}
.itg-portal-camping-day-detail__list small,
.itg-portal-camping-booking-cards small {
    color: #5f768c;
    font-size: 13px;
    line-height: 1.45;
}
.itg-portal-camping-compact-list {
    margin-top: 20px;
    border: 1px solid rgba(0, 75, 141, 0.12);
    border-radius: 24px;
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
    box-shadow: 0 18px 40px rgba(0, 59, 115, 0.06);
}
.itg-portal-camping-compact-list > summary {
    padding: 18px 20px;
    color: #003b73;
    font-size: 20px;
    letter-spacing: -.01em;
}
.itg-portal-camping-compact-list > summary span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.itg-portal-camping-compact-list > summary span::before {
    margin-right: 0;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    background: rgba(0, 169, 224, 0.10);
    color: #00a9e0;
    text-align: center;
    line-height: 24px;
}
.itg-portal-camping-compact-list > summary em {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(0, 59, 115, 0.08);
    color: #476581;
    font-weight: 800;
}
.itg-portal-camping-booking-cards {
    gap: 14px;
    padding: 0 20px 20px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.itg-portal-camping-booking-cards article {
    position: relative;
    gap: 10px;
    padding: 16px;
    border-radius: 20px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
    border: 1px solid rgba(0, 75, 141, 0.10);
    box-shadow: 0 14px 28px rgba(0, 59, 115, 0.05);
    overflow: hidden;
}
.itg-portal-camping-booking-cards article::before {
    content: '';
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: linear-gradient(90deg, #00a9e0 0%, #0a4e96 100%);
}
.itg-portal-camping-booking-cards article header,
.itg-portal-camping-booking-cards article footer {
    gap: 10px;
}
.itg-portal-camping-booking-cards article header strong {
    color: #003b73;
    font-size: 18px;
    line-height: 1.2;
}
.itg-portal-camping-booking-cards article header small {
    display: block;
    margin-top: 2px;
}
.itg-portal-camping-booking-cards article p {
    color: #234564;
    font-size: 15px;
    line-height: 1.5;
}
.itg-portal-camping-booking-cards article p strong {
    display: block;
    margin-bottom: 4px;
    color: #0c3f78;
    font-size: 20px;
    line-height: 1.25;
}
.itg-portal-camping-booking-cards article footer {
    align-items: center;
    padding-top: 4px;
    font-weight: 800;
}
.itg-portal-camping-booking-cards article footer span:first-child {
    color: #476581;
    font-weight: 700;
}
.itg-portal-camping-booking-cards article footer span:last-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 999px;
    background: #0c4a8d;
    color: #fff;
    font-size: 15px;
    box-shadow: 0 8px 18px rgba(12, 74, 141, 0.18);
}
.itg-portal-payment-pill {
    min-width: auto;
    padding: 6px 11px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
}
.itg-portal-payment-pill.is-open {
    background: #fff4da;
    color: #946100;
}
.itg-portal-payment-pill.is-paid {
    background: #eaf8f0;
    color: #16633b;
}
@media (max-width: 1200px) {
    .itg-portal-camping-management-summary--interactive {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 700px) {
    .itg-portal-camping-day-column,
    .itg-portal-camping-compact-list > summary,
    .itg-portal-camping-booking-cards {
        padding-left: 14px;
        padding-right: 14px;
    }
    .itg-portal-camping-compact-list > summary {
        font-size: 18px;
        flex-direction: column;
        align-items: flex-start;
    }
    .itg-portal-camping-booking-cards {
        grid-template-columns: 1fr;
    }
}


/* ITG 1.0.87 – hochwertigere Preis-/Infobadges in Campingbuchungen */
.itg-portal-camping-booking-cards article {
    gap: 12px;
}
.itg-portal-camping-booking-cards article footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding-top: 8px;
    border-top: 1px solid rgba(0, 75, 141, 0.08);
}
.itg-portal-camping-booking-cards article footer span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 12px;
    border-radius: 14px;
    font-size: 14px;
    line-height: 1.2;
}
.itg-portal-camping-booking-cards article footer span:first-child {
    color: #476581;
    font-weight: 700;
    background: rgba(0, 59, 115, 0.06);
    border: 1px solid rgba(0, 59, 115, 0.08);
}
.itg-portal-camping-booking-cards article footer span:last-child {
    padding: 8px 14px;
    border-radius: 14px;
    background: linear-gradient(180deg, #f3f8fd 0%, #e8f1fb 100%);
    border: 1px solid rgba(12, 74, 141, 0.12);
    color: #0c4a8d;
    font-size: 16px;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(12, 74, 141, 0.08);
}
@media (max-width: 640px) {
    .itg-portal-camping-booking-cards article footer {
        flex-direction: column;
        align-items: stretch;
    }
    .itg-portal-camping-booking-cards article footer span {
        width: 100%;
    }
}
