.detail-page{background:var(--surface-card);min-height:100vh}.detail-back-bar{background:var(--surface-raised);border-bottom:1px solid var(--border-subtle);padding:0 24px}.detail-back-inner{align-items:center;max-width:800px;height:52px;margin:0 auto;display:flex}.detail-back{color:var(--text-muted);letter-spacing:.3px;align-items:center;gap:4px;font-size:12px;font-weight:700;text-decoration:none;transition:color .2s;display:flex}.detail-back:hover{color:var(--text-strong)}.detail-hero{background:var(--surface-inverse);padding:40px 24px 44px;position:relative;overflow:hidden}.detail-hero:after{content:"";pointer-events:none;background:#c2c0a60f;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-60px;right:-60px}.detail-hero-inner{z-index:1;max-width:1100px;margin:0 auto;position:relative}.detail-hero-top{align-items:center;gap:12px;margin-bottom:16px;display:flex}.detail-category{color:#fff6;letter-spacing:1.5px;text-transform:uppercase;font-size:11px;font-weight:700}.detail-badge{border-radius:var(--radius-xs);padding:4px 10px;font-size:11px;font-weight:700}.detail-badge--green{background:var(--success);color:var(--white)}.detail-badge--yellow{background:var(--accent-soft);color:var(--text-on-accent)}.detail-badge--red{background:var(--danger);color:var(--white)}.detail-title{color:var(--text-on-dark);letter-spacing:-1px;font-size:36px;font-weight:800;line-height:1.2}@media (max-width:640px){.detail-title{font-size:26px}}.detail-content{padding:40px 24px 80px}.detail-content-inner{max-width:800px;margin:0 auto}.detail-info-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px;display:grid}@media (max-width:480px){.detail-info-grid{grid-template-columns:1fr}}.detail-info-card{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background-color:var(--surface-sunken);border:var(--border-hairline) solid var(--sage-200);flex-direction:column;gap:4px;padding:18px 20px;display:flex}.detail-info-label{color:var(--text-strong);margin-top:6px;margin-bottom:6px;font-size:18px;font-weight:700}.detail-info-value{color:var(--text-body);white-space:pre-wrap;font-size:15px;line-height:1.6}.detail-time-end{color:var(--text-muted);font-weight:500}.detail-description{border-radius:var(--radius-sm);background-color:var(--surface-sunken);border:var(--border-hairline) solid var(--sage-200);border:1px solid var(--border-default);flex-direction:column;gap:4px;margin-top:12px;margin-bottom:12px;padding:18px 20px;display:flex}.detail-description-title{color:var(--text-strong);margin-top:12px;margin-bottom:12px;font-size:18px;font-weight:700}.detail-description-text{color:var(--text-body);white-space:pre-wrap;font-size:15px;line-height:1.6}.detail-capacity-block{border-radius:var(--radius-sm);border:1px solid var(--border-default);flex-direction:column;gap:4px;margin-top:36px;margin-bottom:36px;padding:18px 20px;display:flex}.detail-capacity-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.detail-capacity-label{color:var(--text-strong);letter-spacing:.5px;font-size:16px;font-weight:700}.detail-capacity-percent{color:var(--text-strong);font-size:13px;font-weight:800}.detail-progress-track{height:var(--space-2);background:var(--neutral-200);border-radius:var(--radius-xs);margin-bottom:8px;overflow:hidden}.detail-progress-fill{border-radius:var(--radius-xs);height:100%;transition:width .6s}.detail-capacity-sub{color:var(--text-strong);font-size:12px;font-weight:500}.detail-cta{margin-top:8px}.detail-book-btn{width:100%;max-width:360px;height:56px;font-family:var(--font-sans);cursor:pointer;letter-spacing:.3px;background:var(--accent-soft);color:var(--text-on-accent);border-radius:var(--radius-pill);text-transform:uppercase;border:none;font-size:15px;font-weight:800;transition:background .2s,transform .15s}.detail-book-btn:hover:not(.detail-book-btn--disabled){background:var(--accent-soft-hover);transform:translateY(-1px)}.detail-book-btn--disabled{background:var(--neutral-100);color:var(--text-subtle);cursor:not-allowed}.detail-login-hint{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);max-width:360px;padding:24px}.detail-login-hint p{color:var(--text-muted);margin-bottom:14px;font-size:13px;font-weight:500;line-height:1.5}.detail-login-btn{background:var(--surface-inverse);color:var(--accent-soft);font-family:var(--font-sans);border-radius:var(--radius-sm);padding:12px 24px;font-size:13px;font-weight:800;text-decoration:none;transition:background .2s;display:inline-block}.detail-login-btn:hover{background:var(--neutral-700)}.detail-loading{text-align:center;padding:2rem}.toast{color:var(--text-on-dark);font-family:var(--font-sans);border-radius:var(--radius-sm);z-index:1000;white-space:nowrap;text-align:center;max-width:90vw;padding:14px 24px;font-size:14px;font-weight:600;animation:.3s toastIn;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0000002e}.toast--success{background:var(--success)}.toast--error{background:var(--danger)}.detail-already-booked{color:var(--success);border:1px solid var(--success);border-radius:var(--radius-sm);background:#6e7a4f1a;width:100%;padding:15px 28px;font-size:16px;font-weight:500;display:inline-block}.detail-already-booked-block{flex-direction:column;gap:12px;max-width:360px;display:flex}.detail-cancel-btn{border:1.5px solid var(--danger);width:100%;height:48px;color:var(--danger);border-radius:var(--radius-pill);font-family:var(--font-sans);cursor:pointer;background:0 0;font-size:14px;font-weight:700;transition:background .2s}.detail-cancel-btn:hover:not(:disabled){background:#a6473c1a}.detail-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.detail-participants{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:32px;padding:20px}.detail-participants-title{color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:14px;font-size:12px;font-weight:700}.detail-participants-empty{color:var(--text-muted);font-size:13px;font-weight:500}.detail-participants-error{color:var(--danger);border:var(--border-hairline) solid var(--danger);border-radius:var(--radius-sm);background:var(--sage-50);padding:var(--space-3) var(--space-4);font-size:13px;font-weight:500}.detail-participants-list{flex-direction:column;gap:8px;display:flex}.detail-participant-row{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-strong);justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.detail-participant-icon{font-size:14px}.detail-admin-hint{background:var(--surface-sunken);border:1px solid var(--warning);border-radius:var(--radius-sm);color:var(--bark);padding:14px 18px;font-size:13px;font-weight:600}.attendance-row-name{align-items:center;gap:.75rem;display:flex}.attendance-row-actions{gap:.5rem;display:flex}.attendance-row-btn{border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:2px solid;padding:.5rem 1rem;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,color .15s}.attendance-row-btn:disabled{cursor:not-allowed;opacity:.5}.attendance-row-btn--present{color:var(--text-body);border-color:#0000001a}.attendance-row-btn--present.attendance-row-btn--active-present{background:var(--success);border-color:var(--success);color:var(--white)}.attendance-row-btn--absent{color:var(--text-body);border-color:#0000001a}.attendance-row-btn--absent.attendance-row-btn--active-absent{background:var(--danger);border-color:var(--danger);color:var(--white)}.detail-trial-block{flex-direction:column;gap:12px;max-width:360px;display:flex}.detail-trial-hint{background:var(--neutral-100);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-strong);align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.detail-trial-hint__icon{color:var(--text-strong);flex-shrink:0}.detail-membership-block{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);max-width:360px;padding:24px}.detail-membership-text{color:var(--text-body);margin-bottom:16px;font-size:13px;font-weight:500;line-height:1.6}.detail-membership-text__icon{color:var(--text-strong);margin-bottom:8px}.detail-membership-btn{background:var(--surface-inverse);width:100%;height:52px;color:var(--accent-soft);font-family:var(--font-sans);font-size:var(--fs-body-sm);border-radius:var(--radius-sm);justify-content:center;align-items:center;font-weight:800;text-decoration:none;transition:background .2s;display:flex}.detail-membership-btn:hover{background:var(--neutral-700)}.detail-booked-status{background:var(--success);border-radius:var(--radius-sm);border:1px solid #e4e4e4;flex-direction:column;gap:.65rem;margin-bottom:20px;padding:.75rem 1rem;display:flex}.detail-booked-status__label{color:var(--text-on-dark);align-items:center;gap:.5rem;font-size:14px;font-weight:600;display:flex}.detail-booked-status__actions{gap:.5rem;display:flex}.detail-booked-status__btn{border-radius:var(--radius-pill);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-sans);align-items:center;gap:.4rem;padding:.45rem .85rem;transition:opacity .15s;display:flex}.detail-booked-status__btn:hover{opacity:.8}.detail-booked-status__btn--calendar{color:var(--text-on-dark);background:#ffffff2d;border:1.5px solid #fff}.detail-booked-status__btn--cancel{border:1.5px solid var(--white);background:var(--white);color:var(--text-strong)}.attendance-stats{flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;display:flex}.stat-card{border-radius:var(--radius-sm);border:1px solid;flex:1;min-width:120px;padding:.75rem 1rem}.stat-present{background:#6e7a4f1f;border-color:#6e7a4f59}.stat-absent{background:#a6473c1f;border-color:#a6473c59}.stat-unchecked{background:#7574651a;border-color:#7574654d}.stat-value{font-size:24px;font-weight:800}.stat-present .stat-value{color:var(--success)}.stat-absent .stat-value{color:var(--danger)}.stat-unchecked .stat-value{color:var(--text-muted)}.stat-label{color:var(--text-muted);margin-top:.25rem;font-size:12px}.attendance-list{flex-direction:column;gap:.75rem;display:flex}.attendance-item{background:var(--surface-inverse);border-radius:var(--radius-sm);border:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:1rem;display:flex}.attendance-info{flex:1}.attendance-name{color:var(--text-on-dark);margin-bottom:.25rem;font-weight:700}.attendance-email{color:var(--text-muted);font-size:13px}.attendance-btn{border-radius:var(--radius-pill);cursor:pointer;border:2px solid;justify-content:center;align-items:center;gap:.5rem;min-width:130px;padding:.625rem 1.25rem;font-size:14px;font-weight:700;transition:all .2s;display:flex}.attendance-btn--present{background:var(--success);border-color:var(--success);color:var(--white)}.attendance-btn--absent{background:var(--danger);border-color:var(--danger);color:var(--white)}.attendance-btn--unchecked{color:var(--text-muted);background:#7574651a;border-color:#7574654d}.attendance-btn:hover:not(:disabled){opacity:.8}.attendance-btn:disabled{opacity:.5;cursor:not-allowed}.detail-action-area{margin-bottom:24px}.trainer-probe-marke,.probe-marke{background:var(--accent-soft);color:var(--text-on-accent);font-family:var(--font-sans);font-size:var(--fs-overline);font-weight:var(--fw-bold);letter-spacing:var(--ls-overline);text-transform:uppercase;padding:2px var(--space-2);border-radius:var(--radius-xs);white-space:nowrap;flex-shrink:0;align-items:center;display:inline-flex}.detail-info{align-items:start;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4);background:var(--surface-sunken);border:var(--border-hairline) solid var(--sage-200);border-left:var(--border-heavy) solid var(--accent-soft);border-radius:var(--radius-sm);font-size:var(--fs-body-sm);line-height:var(--lh-normal);color:var(--text-body);grid-template-columns:20px 1fr;display:grid}.detail-info svg{color:var(--stone);margin-top:1px}.mitkommende{margin-bottom:var(--space-5);padding:var(--space-5);background:var(--surface-card);border:var(--border-hairline) solid var(--border-subtle);border-radius:var(--radius-sm)}.mitkommende-titel{margin:0 0 var(--space-4);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-extra);letter-spacing:var(--ls-heading);text-transform:uppercase;color:var(--text-strong)}.mitkommende-liste{gap:var(--space-4) var(--space-5);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.mitkommende-person{align-items:center;gap:var(--space-2);min-width:0;display:flex}.mitkommende-foto{border-radius:var(--radius-sm);object-fit:cover;background:var(--neutral-100);border:var(--border-hairline) solid var(--border-subtle);flex-shrink:0;width:40px;height:40px}.mitkommende-foto--leer{background:var(--surface-accent);color:var(--text-on-accent);font-family:var(--font-sans);font-weight:var(--fw-extra);font-size:var(--fs-body-sm);justify-content:center;align-items:center;display:inline-flex}.mitkommende-name{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mitkommende-fuss{margin:var(--space-4) 0 0;font-size:var(--fs-caption);color:var(--text-muted)}@media (max-width:560px){.detail-participant-row{align-items:stretch;gap:var(--space-3);flex-direction:column}.attendance-row-name{row-gap:var(--space-1);flex-wrap:wrap}.attendance-row-actions{width:100%}.attendance-row-actions .attendance-row-btn{flex:1 1 0;justify-content:center;min-width:0}}
