/* Boot Camp owns this scope, including Mud dialog portals. */
.bootcamp-workspace {height:100%;min-height:0;overflow:auto;container-type:inline-size;background:#0b0c0f;color:#dbcfb9;font-family:Jura,sans-serif;}
.bc-hero {display:flex;align-items:center;justify-content:space-between;gap:36px;position:relative;padding:30px 36px 24px;border-bottom:1px solid #bd9a5938;background:radial-gradient(ellipse at 85% 0,#b7944724,transparent 65%),linear-gradient(115deg,#1b1d21,#0b0c0f);}
.bc-hero-copy {position:relative;z-index:1;min-width:0;flex:1;}
.bc-academy-art {--bc-badge-size:122px;--bc-fan-step:58px;width:400px;flex:none;display:grid;grid-template-columns:1fr;grid-template-rows:164px auto;isolation:isolate;pointer-events:none;background:radial-gradient(ellipse at 50% 55%,#c29b5420,transparent 65%);}
.bc-academy-art img {grid-area:1/1;justify-self:center;align-self:start;width:var(--bc-badge-size);aspect-ratio:1;object-fit:contain;filter:saturate(.85) drop-shadow(0 8px 9px #0009);transform-origin:50% 85%;}
.bc-academy-art img:nth-child(1) {transform:translate(calc(var(--bc-fan-step) * -2),28px) rotate(-24deg);z-index:1;}
.bc-academy-art img:nth-child(2) {transform:translate(calc(var(--bc-fan-step) * -1),8px) rotate(-12deg);z-index:2;}
.bc-academy-art img:nth-child(3) {z-index:3;}
.bc-academy-art img:nth-child(4) {transform:translate(var(--bc-fan-step),8px) rotate(12deg);z-index:2;}
.bc-academy-art img:nth-child(5) {transform:translate(calc(var(--bc-fan-step) * 2),28px) rotate(24deg);z-index:1;}
.bc-academy-art span {grid-area:2/1;text-align:center;margin-top:6px;font-size:10px;letter-spacing:.08em;color:#aa9776;}
.bc-hero-trainer .bc-academy-art,.bc-hero-matrix .bc-academy-art,.bc-hero-templates .bc-academy-art {display:none;}
.bc-kicker {color:#bda372;text-transform:uppercase;font-size:11px;letter-spacing:.1em;line-height:1.5;}
.bc-hero h1 {font:600 40px/1.15 Jura,sans-serif;letter-spacing:-.035em;margin:12px 0;color:#eee1cc;}
.bc-hero p {font-size:15px;line-height:1.6;color:#b6ab98;margin:0 0 18px;max-width:760px;}
.bc-shortcuts {display:flex;gap:8px 22px;flex-wrap:wrap;position:relative;z-index:1;}
.bootcamp-workspace .bc-shortcuts .mud-button {border:0!important;background:transparent!important;box-shadow:none!important;padding:4px 0;min-width:0;border-radius:0!important;color:#c6b799;text-transform:none;font-size:12px;}
.bc-shortcuts .mud-button:hover {color:#edc27b!important;}
.bc-shortcuts .mud-icon-root {width:15px;height:15px;opacity:.65;}
.bc-body,.bootcamp-workspace>.trainer-page,.bootcamp-workspace>.templates-page,.bootcamp-workspace>.tm-page {padding:28px 36px 44px;min-width:0;}
.bootcamp-workspace h2 {font-size:23px;font-weight:600;line-height:1.3;letter-spacing:-.02em;color:#e6d8bf;margin:9px 0 15px;}
.bootcamp-workspace h3 {font-size:18px;font-weight:600;color:#dfd2ba;margin:8px 0 14px;}
.bc-section {padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid #ffffff13;}
.bc-section:last-child {border:0;margin-bottom:0;}
.bc-section-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px;}
.bc-section-heading>span,.bc-muted {font-size:13px;color:#afa391;line-height:1.6;}
.bc-sessions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.bc-session {position:relative;width:100%;min-width:0;display:grid;grid-template-columns:64px minmax(0,1fr) 72px;grid-template-rows:1fr auto;gap:20px;text-align:left;padding:26px;border:1px solid #c9b38725;border-radius:var(--radius-card);background:linear-gradient(135deg,#1a1d21,#101215 75%);color:inherit;font:inherit;cursor:pointer;transition:border-color .18s,background .18s;}
.bc-session:hover {border-color:#c6a26580;background:linear-gradient(135deg,#222323,#141619 75%);}
.bc-session-next {border-color:#c4a25f60;background:radial-gradient(ellipse at 0 0,#b8954e18,transparent 70%),#141619;}
.bc-next-label {position:absolute;left:26px;top:-9px;background:#17191b;padding:0 9px;color:#e0bb77;font-size:10px;letter-spacing:.08em;text-transform:uppercase;}
.bc-insignia {display:flex;align-items:center;justify-content:center;width:72px;height:72px;flex:none;color:#ad9569;}
.bc-insignia img {width:100%;height:100%;object-fit:contain;}
.bc-insignia>.mud-icon-root {width:38px;height:38px;}
.bc-session>.bc-insignia {grid-column:3;grid-row:1;align-self:start;opacity:.85;}
.bc-session-copy {grid-column:2;grid-row:1;min-width:0;}
.bc-session:hover h3,.bc-archive-row:hover strong {color:#e6ba70;}
.bc-date {display:flex;flex-direction:column;align-items:center;gap:2px;color:#c4ab7c;border-right:1px solid #b4975c34;padding-right:16px;}
.bc-date strong {font-size:32px;font-weight:500;line-height:1.1;}
.bc-date>span {font-size:12px;text-transform:uppercase;letter-spacing:.1em;}
.bc-date small {font-size:11px;color:#aaa08f;margin-top:6px;}
.bc-session h3 {font-size:22px;line-height:1.3;margin:6px 0 8px;overflow-wrap:anywhere;}
.bc-session-copy p {color:#aaa18f;font-size:14px;line-height:1.65;margin:12px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.bc-session-action {grid-column:2/4;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#d6bb87;font-size:12px;padding-top:16px;border-top:1px solid #ffffff10;}
.bc-session-action .mud-icon-root {width:16px;height:16px;}
.bc-recent {display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:0 0 30px;}
.bc-recent .bc-results {border-left:1px solid #9dbb9d30;padding-left:30px;}
.bc-recent .bc-kicker {color:#a5b99b;}
.bc-results {align-self:center;}
.bc-result {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #ffffff0d;font-size:13px;}
.bc-result-button {width:100%;background:none;border:0;border-bottom:1px solid #ffffff0d;font:inherit;color:inherit;cursor:pointer;text-align:left;}
.bc-result>span:last-child {display:flex;gap:8px;align-items:center;}
.bc-insights {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:24px;}
.bc-toolbar {display:flex;gap:16px;align-items:center;margin:18px 0 24px;flex-wrap:wrap;}
.bc-toolbar>.mud-input-control {flex:1;min-width:220px;max-width:650px;margin-top:0;}
.bc-toolbar>.mud-select {max-width:260px;}
.bc-switches {display:flex;gap:5px;}
.bc-switches button {padding:10px 14px;background:transparent;border:1px solid transparent;color:#aea491;font:inherit;font-size:13px;border-radius:var(--radius-input);cursor:pointer;}
.bc-switches button.active {border-color:#b398554a;background:#b3985514;color:#e1c38b;}
.bc-empty,.bootcamp-workspace .empty-state {padding:32px 0;color:#a99e8c;line-height:1.7;font-size:14px;}
.bc-state,.bootcamp-dialog .loading-state,.bootcamp-dialog .empty-state {min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#b4a994;text-align:center;padding:30px;}
.bc-archive-row {display:grid;grid-template-columns:110px minmax(220px,1.5fr) 1fr 1fr 20px;gap:20px;align-items:center;width:100%;text-align:left;padding:19px 0;border:0;border-bottom:1px solid #ffffff12;background:none;color:#c7baa5;font:13px Jura,sans-serif;cursor:pointer;}
.bc-archive-row strong {font-size:15px;}
.bootcamp-workspace button:focus-visible,.bootcamp-dialog button:focus-visible {outline:2px solid #dfb564;outline-offset:3px;}
/* Training management and template catalogue */
.bootcamp-workspace .trainer-filters,.bootcamp-workspace .templates-filters {padding:0 0 24px;border-bottom:1px solid #ffffff14;margin-bottom:24px;}
.bootcamp-workspace .mud-input-control {margin-top:0;}
.bootcamp-workspace .trainer-filter-expander .mud-expansion-panel {background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;}
.bootcamp-workspace .trainer-filter-expander .mud-expand-panel-header {padding:12px 0;min-height:44px;}
.bootcamp-workspace .trainer-filter-expander .mud-expand-panel-content {padding:16px 0;}
.bootcamp-workspace .trainer-actions,.bootcamp-workspace .templates-actions {flex-wrap:wrap;gap:10px;}
.bootcamp-workspace .trainer-actions .mud-button,.bootcamp-workspace .templates-actions .mud-button {text-transform:none;}
.bootcamp-workspace .main-grid {display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:32px;}
.bootcamp-workspace .sessions-panel {margin-bottom:30px;min-width:0;}
.bootcamp-workspace .panel-header,.bootcamp-workspace .section-header {display:flex;align-items:center;gap:10px;margin-bottom:18px;color:#e0d0b3;font-size:18px;font-weight:600;letter-spacing:-.02em;}
.bootcamp-workspace .panel-count,.bootcamp-workspace .section-count {margin-left:auto;font-size:12px;color:#a69a86;}
.bootcamp-workspace .panel-icon,.bootcamp-workspace .section-icon {display:none;}
.bootcamp-workspace .trainer-recent-panel {border:1px solid #b9985c35;border-radius:var(--radius-card);padding:20px 22px;background:linear-gradient(120deg,#b9985c0b,transparent 70%);}
.bootcamp-workspace .participants-panel {border-left:1px solid #ffffff14;padding-left:24px;}
.bootcamp-workspace .mud-table-row:hover {background:#bba16a08;}
.tm-table tbody tr:hover td {background:#1a1b1c;}
.tm-member-name {font-weight:600;}
.bootcamp-workspace .mud-table,.bootcamp-workspace .mud-table-container {background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;}
.bootcamp-workspace .mud-table-container {overflow:auto;}
.bootcamp-workspace .mud-table-cell {padding:14px 12px;border-color:#ffffff12;font-size:13px;}
.bootcamp-workspace .mud-table-head .mud-table-cell {font-size:11px;letter-spacing:.05em;color:#a99b83;background:#101215;}
.bootcamp-workspace .mud-table-head {position:sticky;top:0;z-index:1;}
.bootcamp-workspace .trainer-title-btn {text-transform:none;justify-content:flex-start;text-align:left;color:#e0d2b8;font-size:14px;padding:0;min-width:0;}
.bootcamp-workspace .trainer-title-cell {min-width:160px;flex-wrap:wrap;}
.bootcamp-workspace .mud-table-pagination {color:#9f9584;background:transparent;}
.bootcamp-workspace .trainer-table .mud-icon-button {padding:6px;color:#bca477;}
.bootcamp-workspace .participants-toolbar {margin-bottom:12px;}
.bootcamp-workspace .participant-name-btn {width:100%;text-transform:none;text-align:left;justify-content:flex-start;font-size:13px;padding:8px 0;}
.bootcamp-workspace .participant-row {width:100%;}
.bootcamp-workspace .template-title-text {font-size:16px;font-weight:600;color:#dfd2ba;}
.bootcamp-workspace .template-desc-text {display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:340px;line-height:1.6;}
.bootcamp-workspace .template-prereq-chips {display:flex;flex-wrap:wrap;gap:4px;}
/* Matrix keeps both axes readable and scrolls inside the workspace. */
.bootcamp-workspace.bc-matrix {display:flex;flex-direction:column;overflow:hidden;}
.bc-hero-trainer,.bc-hero-matrix,.bc-hero-templates {flex:none;padding-top:20px;padding-bottom:16px;}
.bc-hero-trainer h1,.bc-hero-matrix h1,.bc-hero-templates h1 {font-size:32px;margin:8px 0;}
.bc-hero-trainer p,.bc-hero-matrix p,.bc-hero-templates p {margin-bottom:10px;font-size:14px;}
.bootcamp-workspace>.tm-page {flex:1;min-height:0;display:flex;flex-direction:column;padding-top:22px;padding-bottom:18px;}
.tm-actionbar {display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:20px;}
.tm-actionbar>.mud-input-control {flex:1;min-width:160px;}
.tm-kpis {display:flex;gap:18px;font-size:12px;color:#9f947e;}
.tm-kpi {display:flex;gap:8px;}.tm-kpi-value {color:#d9c7a5;}
.tm-container {flex:1;min-height:0;overflow:hidden;}.tm-scroll {height:100%;overflow:auto;border:1px solid #ffffff16;border-radius:var(--radius-card);}
.tm-table {border-collapse:separate;border-spacing:0;min-width:100%;font-size:13px;}
.tm-table th,.tm-table td {padding:12px 16px;border-bottom:1px solid #ffffff0c;border-right:1px solid #ffffff08;text-align:center;}
.tm-table thead th {position:sticky;top:0;z-index:2;background:#141619;color:#cdb892;font-weight:500;}
.tm-table thead tr:nth-child(2) th {top:40px;}
.tm-table .tm-sticky {position:sticky;left:0;background:#101215;z-index:3;text-align:left;min-width:180px;}
.tm-table thead .tm-sticky {z-index:4;}
.tm-training-header {min-width:180px;max-width:260px;}.tm-training-title {line-height:1.5;}.tm-training-sub,.tm-member-sub {font-size:11px;color:#9c937f;margin-top:6px;display:flex;gap:10px;justify-content:center;}
.tm-member-sub {justify-content:flex-start;}.tm-member-name {color:#e0d2b9;}
.tm-score {min-width:44px;min-height:38px;border:1px solid #b89a5140;background:#b89a5115;color:#dbbd7f;border-radius:var(--radius-input);font:inherit;cursor:pointer;}
.tm-col-highlight {background:#bca0500c!important;}.tm-empty-cell {display:inline-block;width:10px;height:1px;background:#555149;}
.tm-footer {display:flex;align-items:center;padding-top:16px;gap:20px;}.tm-footer-left {display:flex;gap:24px;flex-wrap:wrap;}.tm-footer-text {font-size:11px;color:#938974;}.tm-footer-legend {display:flex;flex-wrap:wrap;gap:14px;font-size:11px;}.tm-legend-item {display:flex;gap:7px;align-items:center;}.tm-col-tooltip {display:none;}
/* Shared dialog portal surface: open sections and consistent form sizing. */
.bootcamp-dialog {color:#dbcfb9;font-family:Jura,sans-serif;container-type:inline-size;}
.bootcamp-dialog .mud-dialog-content {padding:24px 28px!important;}
.bootcamp-dialog .mud-dialog-title {padding:22px 28px!important;border-bottom:1px solid #ffffff12;}
.bootcamp-dialog .mud-dialog-actions {padding:16px 28px!important;border-top:1px solid #ffffff12;gap:12px;flex-wrap:wrap;}
.bootcamp-dialog .hysec-dialog-header,.bootcamp-dialog .dialog-header {display:flex;gap:14px;align-items:center;}
.bootcamp-dialog .header-icon,.bootcamp-dialog .dialog-icon {color:#dfbd7c;display:flex;align-items:center;justify-content:center;width:46px;height:46px;flex:none;border:1px solid #c3a16630;border-radius:var(--radius-card);background:linear-gradient(135deg,#b8995820,#b8995804);}
.bootcamp-dialog .header-title,.bootcamp-dialog .dialog-title {font:600 23px/1.3 Jura,sans-serif;letter-spacing:-.02em;color:#e9dbc1;margin:0;}
.bootcamp-dialog .header-subtitle,.bootcamp-dialog .dialog-subtitle {display:block;font-size:13px;color:#a79b86;margin-top:6px;}
.bootcamp-dialog .form-content {display:flex;flex-direction:column;gap:24px;border:0;padding:0;margin:0;min-width:0;}
.bootcamp-dialog .form-section,.bootcamp-dialog .info-panel,.bootcamp-dialog .participants-panel,.bootcamp-dialog .participants-section,.bootcamp-dialog .history-section {border:0;border-bottom:1px solid #ffffff14;background:transparent;box-shadow:none;border-radius:0;padding:0 0 24px;margin:0 0 6px;min-width:0;}
.bootcamp-dialog .form-section:last-child {border:0;padding-bottom:0;}
.bootcamp-dialog .section-header,.bootcamp-dialog .panel-header {display:flex;align-items:center;gap:10px;margin-bottom:18px;color:#d5c19a;font-size:15px;font-weight:600;}
.bootcamp-dialog .section-count,.bootcamp-dialog .panel-count {margin-left:auto;font-size:11px;color:#ac9b7c;}
.bootcamp-dialog .section-action-btn {border:1px solid #c6a55e35;border-radius:var(--radius-input);background:transparent;color:#d4b77e;cursor:pointer;padding:7px;display:flex;align-items:center;}
.bootcamp-dialog .section-content {display:flex;flex-direction:column;gap:16px;min-width:0;}
.bootcamp-dialog .form-group {display:flex;flex-direction:column;gap:7px;min-width:0;}
.bootcamp-dialog .form-label,.bootcamp-dialog .info-label,.bootcamp-dialog .score-label {font-size:12px;color:#af9e81;line-height:1.5;}
.bootcamp-dialog .form-group:has(>.mud-input-control)>.form-label {display:none;}
.bootcamp-dialog .mud-input-control {margin-top:0;}
.bootcamp-dialog .form-input,.bootcamp-dialog .form-select,.bootcamp-dialog .form-textarea {font:14px Jura,sans-serif;width:100%;min-height:44px;padding:11px 13px;color:#ddd0b6;background:#0d1014;border:1px solid #ffffff26;border-radius:var(--radius-input);box-sizing:border-box;color-scheme:dark;}
.bootcamp-dialog .form-textarea {resize:vertical;line-height:1.6;}
.bootcamp-dialog .locked-field {display:flex;align-items:center;gap:10px;padding:12px;background:#b69c5610;border-left:2px solid #b69c5680;color:#d1bd96;}
.bootcamp-dialog .locked-icon {width:16px;height:16px;}
.bootcamp-dialog .select-template-btn,.bootcamp-dialog .select-btn,.bootcamp-dialog .add-participants-btn {display:flex;align-items:center;gap:10px;font:14px Jura,sans-serif;color:#dec18b;padding:12px 15px;background:#b4955112;border:1px solid #b4955138;border-radius:var(--radius-input);cursor:pointer;text-align:left;}
.bootcamp-dialog .select-template-btn .btn-arrow {margin-left:auto;}
.bootcamp-dialog .dialog-buttons {display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-left:auto;}
.bootcamp-dialog .dialog-btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 17px;border-radius:var(--radius-input);font:600 13px Jura,sans-serif;cursor:pointer;border:1px solid #ffffff20;background:#ffffff04;color:#cfc1a8;}
.bootcamp-dialog .dialog-btn.primary {background:#d6ad62;color:#17150f;border-color:#d6ad62;}.bootcamp-dialog .dialog-btn:disabled {opacity:.4;cursor:default;}
.bootcamp-dialog .template-checkbox {display:flex;align-items:center;gap:10px;font-size:13px;color:#b7aa91;}.bootcamp-dialog input[type=checkbox] {accent-color:#d6ad62;}
.bootcamp-dialog .participants-quick-list,.bootcamp-dialog .prereq-list {display:flex;gap:8px;flex-wrap:wrap;}
.bootcamp-dialog .participant-chip,.bootcamp-dialog .prereq-chip {display:flex;align-items:center;gap:8px;padding:8px 11px;background:#ffffff04;border:1px solid #ffffff16;border-radius:var(--radius-input);font-size:12px;max-width:100%;overflow-wrap:anywhere;}
.bootcamp-dialog .chip-remove {border:0;background:transparent;color:#b7a583;cursor:pointer;padding:4px;}.bootcamp-dialog .chip-icon {display:flex;}
.bootcamp-dialog .empty-participants>.empty-icon,.bootcamp-dialog .empty-prereq>.empty-icon,.bc-detail .empty-state>.empty-icon {display:none;}
.bootcamp-dialog .empty-participants,.bootcamp-dialog .empty-prereq {display:flex;align-items:flex-start;flex-direction:column;gap:13px;font-size:13px;color:#948872;padding:10px 0;}
.bootcamp-dialog .panel-inline,.bootcamp-dialog .form-hint {margin-bottom:16px;font-size:12px;line-height:1.6;color:#a89b84;}
.bootcamp-dialog .participant-card {border-bottom:1px solid #ffffff16;padding:18px 0;background:none;border-radius:0;}
.bootcamp-dialog .card-header {display:flex;align-items:center;gap:10px;margin-bottom:18px;}.bootcamp-dialog .card-name {font-size:17px;font-weight:600;}.bootcamp-dialog .participant-status-badge {margin-left:auto;font-size:12px;color:#baa475;}
.bootcamp-dialog .card-content {display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;}.bootcamp-dialog .score-options {display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px;}
.bootcamp-dialog .score-option {display:flex;gap:6px;align-items:center;padding:8px 10px;background:transparent;color:#ada08a;border:1px solid #ffffff20;border-radius:var(--radius-input);cursor:pointer;font:12px Jura,sans-serif;}
.bootcamp-dialog .score-option.active {border-color:#d6ad62;color:#e1c68f;background:#d6ad6215;}
.bootcamp-dialog .mud-table-container {background:transparent!important;border-radius:0!important;border:0!important;box-shadow:none!important;overflow:auto;}
.bootcamp-dialog .mud-table-cell {font-size:13px;padding:12px;border-color:#ffffff12;}
.bootcamp-dialog .picker-list {border:0;}.bootcamp-dialog .picker-dialog-body {display:flex;flex-direction:column;gap:16px;min-height:0;}
.bootcamp-dialog .picker-row {width:100%;min-width:0;}.bootcamp-dialog .picker-text {min-width:0;flex:1;}.bootcamp-dialog .picker-meta {font-size:12px;color:#9d9079;}
.bootcamp-dialog .mud-list-item {border-bottom:1px solid #ffffff10;padding:13px 10px;border-radius:0;}.bootcamp-dialog .mud-list-item-selected {background:#b3934d16!important;color:#dfc289;}
.bootcamp-dialog .picker-selected {color:#ddbe85;}.bootcamp-dialog .picker-search {flex:none;}
/* Detail pages share dossier typography with the modal forms. */
.bootcamp-dialog.bc-detail {height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:#0b0c0f;}
.bc-detail>.hysec-dialog-title {padding:28px 32px 24px;background:radial-gradient(ellipse at 85% 0,#b6975121,transparent 70%);border-bottom:1px solid #c8a86a24;flex:none;}
.bc-detail .dialog-title {font-size:32px;}.bc-detail>.hysec-dialog-content {flex:1;min-height:0;overflow:auto;padding:28px 32px;}
.bc-detail>.hysec-dialog-actions {flex:none;padding:14px 32px;display:flex;gap:10px;background:#0d0f12;border-top:1px solid #ffffff12;}
.bc-detail .training-details,.bc-detail .details-content {display:grid;grid-template-columns:minmax(0,1fr);gap:26px;align-items:start;}
.bc-detail .dialog-header {gap:24px;}
.bc-detail .dialog-header>.bc-insignia {width:84px;height:84px;}
.bc-detail .dialog-title {margin:7px 0 0;}
.bc-detail .description-text h2,.bc-detail .detail-description h2 {font-size:23px;margin:16px 0;}
.bc-detail .description-text h3,.bc-detail .detail-description h3 {font-size:19px;margin:16px 0;}
.bc-detail .description-text li,.bc-detail .detail-description li {padding:3px 0;}
.bc-detail .description-text p:last-child,.bc-detail .detail-description p:last-child {margin-bottom:0;}
.bc-detail .detail-header {padding:0;}.bc-detail .detail-title {font-size:24px;color:#e2d1b5;margin:0 0 16px;}.bc-detail .detail-title-row {display:flex;align-items:center;gap:16px;}
.bc-detail .detail-meta,.bc-detail .info-grid {display:flex;gap:24px;flex-wrap:wrap;color:#d5c29f;font-size:14px;padding:18px 22px;background:#bba16b08;border:1px solid #bba16b20;border-radius:var(--radius-card);}.bc-detail .meta-item {display:flex;gap:8px;align-items:center;}.bc-detail .info-item {display:flex;flex-direction:column;gap:8px;min-width:140px;}
.bc-detail .description-block {padding-top:24px;}.bc-detail .description-label {display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#ba9f6d;margin-bottom:10px;}.bc-detail .description-text,.bc-detail .detail-description {font-size:15px;line-height:1.8;color:#cbbb9f;max-width:1000px;}
.bc-detail .detail-title {display:none;}.bc-detail .detail-header:has(.private-badge) .detail-title-row {margin-bottom:14px;}
.bootcamp-dialog .table-header,.bootcamp-dialog .table-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid #ffffff12;font-size:13px;}
.bootcamp-dialog .table-header {color:#a9997e;font-size:11px;text-transform:uppercase;letter-spacing:.05em;}
.bootcamp-dialog .participants-panel .table-header,.bootcamp-dialog .participants-panel .table-row {grid-template-columns:1fr 1fr 1fr 2fr;}
.bootcamp-dialog .history-table {overflow:auto;}.bootcamp-dialog .history-table .participant-view {min-width:850px;grid-template-columns:90px 1.6fr 1fr .9fr 125px 105px 1.2fr;}
.bootcamp-dialog .notes-text {white-space:pre-wrap;line-height:1.6;}.bootcamp-dialog .score-icon small {display:block;font-size:11px;color:#ad9a79;}.bootcamp-dialog .td {min-width:0;overflow-wrap:anywhere;}
.bootcamp-workspace .status-badge,.bootcamp-dialog .status-badge,.bootcamp-dialog .private-badge {white-space:nowrap;display:inline-flex;gap:6px;align-items:center;padding:4px 8px;border:1px solid #b3935030;border-radius:var(--radius-input);font-size:11px;color:#b8a682;}
.bootcamp-workspace .status-badge.completed,.bootcamp-dialog .status-badge.completed {color:#9dbb9d;border-color:#91ad7838;}.bootcamp-workspace .private-badge {font-size:11px;color:#b1a18a;}
.bootcamp-dialog .loading-spinner {width:28px;height:28px;border:2px solid #a98a4528;border-top-color:#c4a262;border-radius:50%;animation:bc-spin 1s linear infinite;}
@keyframes bc-spin {to{transform:rotate(360deg)}}
@container (min-width:720px) { .bc-addtrainingsessiondialog .form-content {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;} .bc-addtrainingsessiondialog .form-content>.form-section:nth-child(1) {grid-column:1/-1;} .bc-addtrainingsessiondialog .form-content>.form-section:nth-child(2) {grid-column:1;grid-row:2/5;} .bc-addtrainingsessiondialog .form-content>.form-section {margin:0;} }
@container (max-width:1050px) { .bc-hero {padding:26px 26px 22px;}.bc-body,.bootcamp-workspace>.trainer-page,.bootcamp-workspace>.templates-page,.bootcamp-workspace>.tm-page {padding:24px;} .bootcamp-workspace .main-grid {grid-template-columns:1fr;} .bootcamp-workspace .participants-list {display:flex;flex-wrap:wrap;} .bc-archive-row {grid-template-columns:100px minmax(160px,1.5fr) 1fr 20px;} .bc-archive-row>span:nth-last-child(2) {display:none;}.bc-insights {gap:24px;} }
@container (max-width:760px) { .bc-sessions,.bc-recent,.bc-insights {grid-template-columns:1fr;}.bc-hero h1 {font-size:32px;}.bc-recent {gap:20px;}.bc-shortcuts {gap:8px 16px;}.bc-archive-row {grid-template-columns:90px 1fr 20px;}.bc-archive-row>span:nth-child(3) {display:none;}.bc-detail .dialog-title {font-size:26px;}.bootcamp-dialog .card-content {grid-template-columns:1fr;gap:12px;}.bootcamp-dialog .table-row,.bootcamp-dialog .table-header {gap:12px;}.bc-toolbar {align-items:stretch;} }
@media(prefers-reduced-motion:reduce){.bootcamp-dialog .loading-spinner{animation:none;}}
.bc-template-catalog {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.bc-template {min-width:0;display:flex;flex-direction:column;padding:26px;border:1px solid #c6b18a25;border-radius:var(--radius-card);background:linear-gradient(150deg,#1b1d20,#101215 60%);}
.bc-template-heading {display:flex;gap:20px;align-items:flex-start;margin-bottom:22px;}
.bc-template-heading>div {flex:1;min-width:0;}
.bc-template .bc-insignia {width:68px;height:68px;}
.bc-template .bc-template-description {flex:1;}
.bc-template-top {display:flex;justify-content:space-between;align-items:center;gap:16px;}
.bc-template h3 {font-size:23px;line-height:1.3;margin:10px 0 0;}
.bc-template-description {font-size:14px;color:#ada18b;line-height:1.8;white-space:pre-wrap;}
.bc-prerequisites {margin:20px 0;}.bc-prerequisites>span {font-size:11px;color:#c0a26d;text-transform:uppercase;letter-spacing:.07em;}.bc-prerequisites p {font-size:13px;line-height:1.6;margin-top:8px;}
.bc-template-meta {font-size:11px;color:#948973;line-height:1.7;}.bc-template-actions {display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid #ffffff12;}.bc-template-actions>.mud-icon-button {margin-left:auto;}
@container(max-width:760px){.bc-template-catalog{grid-template-columns:1fr;}}
/* Modal roots deliberately do not inherit the legacy hysec-dialog skin. */
.mud-dialog.bootcamp-dialog {background:#101216;border:1px solid #b3955d38;border-radius:var(--radius-card);box-shadow:0 24px 90px #0009;max-height:calc(100dvh - 48px);}
.bootcamp-dialog .mud-dialog-title {flex:none;background:radial-gradient(ellipse at 100% 0,#b395511c,transparent 70%);}
.bootcamp-dialog .mud-dialog-actions {flex:none;justify-content:flex-end;background:#0e1013;}
.bootcamp-dialog .mud-dialog-content {min-height:0;overflow:auto;}
.bootcamp-dialog .mud-button {text-transform:none;}
.bootcamp-dialog .dialog-hint,.bootcamp-dialog .hint {color:#ae9d82;font-size:13px;line-height:1.7;margin-bottom:18px;}
.bootcamp-dialog .picker-item.selected {background:#c0a15c16;border-left:2px solid #c0a15c;}
.bootcamp-dialog .picker-name {overflow-wrap:anywhere;min-width:0;}
.bootcamp-dialog .picker-title {font-size:15px;line-height:1.6;color:#ddceb2;}
.bootcamp-dialog .picker-row {display:flex;gap:14px;align-items:center;}
.bootcamp-dialog .picker-row>.mud-icon-root:last-child {margin-left:auto;flex:none;}
.bootcamp-dialog .locked-field.multi {align-items:flex-start;white-space:pre-wrap;line-height:1.6;max-height:180px;overflow:auto;}
.bootcamp-dialog .diff {border-top:1px solid #ffffff18;margin-top:24px;padding-top:24px;}
.bootcamp-dialog .diff-header {display:flex;gap:20px;color:#d2b882;margin-bottom:18px;}
.bootcamp-dialog .diff-fields {display:flex;flex-direction:column;gap:20px;}
.bootcamp-dialog .diff-field>.label {font-size:12px;color:#ae9d80;margin-bottom:8px;}
.bootcamp-dialog .value-grid {display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.bootcamp-dialog .value {padding:14px;white-space:pre-wrap;font-size:13px;line-height:1.7;overflow-wrap:anywhere;background:#ffffff03;border-left:2px solid #ffffff20;}
.bootcamp-dialog .value.added {background:#74a7840b;border-color:#74a78470;}.bootcamp-dialog .value.removed {background:#d293790a;border-color:#d2937960;}
.bootcamp-dialog .diff .chips {flex-wrap:wrap;}
.bootcamp-dialog .actions {gap:12px;margin-top:20px;flex-wrap:wrap;}
.bc-createtrainingcalendarentrydialog .mud-form {display:grid;gap:18px;}
.bc-detail .empty-participants,.bc-detail .empty-state {min-height:0;padding:18px 0;text-align:left;align-items:flex-start;}
.bc-detail .dialog-title-group {min-width:0;}.bc-detail .dialog-title {overflow-wrap:anywhere;line-height:1.3;}
.bc-detail .score-icon {display:flex;gap:10px;align-items:center;}
.bc-detail .table-row .notes-text {max-height:160px;overflow:auto;}
.bootcamp-workspace .trainer-title-btn {background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:4px 0!important;}
.bootcamp-workspace .trainer-title-btn:hover {color:#ebc279!important;}
.bootcamp-workspace .bc-archive-row,.bootcamp-workspace .bc-result-button {border-radius:0!important;}
.bootcamp-workspace .templates-actions {margin-bottom:10px;}
.bootcamp-workspace .bc-create-action {flex:0 0 200px;max-width:200px;align-self:center;}
.bootcamp-workspace .bc-search-action {flex:1;max-width:none;min-width:260px;}
.bootcamp-workspace .bc-template-description {white-space:normal;max-height:110px;overflow:auto;}
.bootcamp-workspace .bc-template-description h2,.bootcamp-workspace .bc-template-description h3 {font-size:16px;margin:0 0 10px;}
.bootcamp-workspace .bc-template-description p {margin:0 0 10px;}
/* Desktop windows adapt to their own width, independently of the browser. */
@container(min-width:1000px){
 .bc-usertrainingdetailsdialog .training-details {grid-template-columns:minmax(0,1fr) 350px;gap:24px 40px;}
 .bc-usertrainingdetailsdialog .training-details>.detail-header {grid-column:1/-1;}
 .bc-usertrainingdetailsdialog .training-details>.detail-description,.bc-usertrainingdetailsdialog .training-details>.participants-section {grid-column:1;}
 .bc-usertrainingdetailsdialog .training-details>.bc-attendance {grid-column:2;grid-row:2/6;border-left:1px solid #ffffff14;border-bottom:0;padding-left:28px;}
 .bc-detail .bc-attendance .table-row {grid-template-columns:minmax(0,1fr) auto;}

 .bc-detail .details-content {grid-template-columns:minmax(0,1fr) 300px;gap:28px 36px;}
 .bc-detail .details-content>.info-panel {grid-column:1;grid-row:1;}
 .bc-detail .bc-attachments-panel {grid-column:2;grid-row:1;border-left:1px solid #ffffff14;padding-left:24px;}
 .bc-detail .details-content>.participants-panel:last-child {grid-column:1/-1;}
}
@container(min-width:720px){
 .bc-addedittrainingtemplatedialog .form-content {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;}
 .bc-addedittrainingtemplatedialog .form-section:first-child {grid-row:1/3;border:0;border-right:1px solid #ffffff14;padding-right:28px;}
}
@container(max-width:1050px){
 .bc-academy-art {--bc-badge-size:84px;--bc-fan-step:40px;width:270px;grid-template-rows:126px auto;}
 .bc-session {padding:22px;grid-template-columns:54px minmax(0,1fr);gap:16px;}.bc-session>.bc-insignia {display:none;}.bc-session-action {grid-column:2;}
 .bc-template-heading {gap:14px;}.bc-template .bc-insignia {width:50px;height:50px;}.bc-template-top {align-items:flex-start;flex-direction:column;gap:3px;}
 .bootcamp-workspace .participants-panel {border-left:0;padding-left:0;}
}
@container(max-width:760px){
 .bc-academy-art {display:none;}.bc-session {grid-template-columns:56px minmax(0,1fr) 58px;}.bc-session>.bc-insignia {display:flex;width:58px;height:58px;}.bc-session-action {grid-column:2/4;}
 .bc-recent .bc-results {padding-left:0;border-left:0;}.bc-template-top {flex-direction:row;}.bc-template .bc-insignia {width:64px;height:64px;}
}
@container(max-width:520px){.bc-session {grid-template-columns:48px minmax(0,1fr);}.bc-session>.bc-insignia {display:none;}.bc-session-action {grid-column:2;}.bc-detail .dialog-header>.bc-insignia {width:56px;height:56px;}}
/* Dedicated mobile shell: open sections, date rails and touch targets. */
.bc-mobile {padding:8px 8px 30px;color:#dbcfb9;font:14px/1.6 Jura,sans-serif;min-width:0;}
.bc-mobile .header {padding:20px 0 24px;margin-bottom:6px;border-bottom:1px solid #c4a56b38;}
.bc-mobile .title {color:#eddfc4;font:600 28px/1.25 Jura,sans-serif;margin:10px 0;letter-spacing:-.025em;}
.bc-mobile .subtitle {font-size:14px;color:#ae9e81;margin:8px 0 0;}
.bc-mobile .panel,.bc-mobile .section {padding:24px 0;border-bottom:1px solid #ffffff14;background:none;}
.bc-mobile .panel-title,.bc-mobile .section-title {font-size:19px;font-weight:600;color:#decdac;line-height:1.4;}
.bc-mobile .panel-text,.bc-mobile .panel-inline {font-size:13px;line-height:1.7;color:#aea087;margin-top:10px;}
.bc-mobile .count {font-size:12px;color:#a8997c;}
.bc-mobile .list {margin-top:12px;}
.bc-mobile .item {border-radius:0!important;display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;width:100%;text-align:left;border:0;border-bottom:1px solid #ffffff0e;border-radius:0;background:transparent;color:inherit;padding:20px 0;font:inherit;}
.bc-mobile .time {display:flex;flex-direction:column;justify-content:center;border-right:1px solid #c0a16550;padding-right:12px;color:#d5b679;}
.bc-mobile .time-top {font-size:17px;}.bc-mobile .time-bottom {font-size:12px;color:#b09e7e;}.bc-mobile .time-bottom:empty {display:none;}
.bc-mobile .content {min-width:0;}.bc-mobile .subject {font-size:17px;font-weight:600;color:#e0d0b1;line-height:1.4;overflow-wrap:anywhere;}
.bc-mobile .when {font-size:12px;color:#9f957f;margin-top:6px;}
.bc-mobile .collapse-toggle {display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:0;border:0;background:none;color:inherit;text-align:left;gap:12px;font:inherit;}
.bc-mobile .hero {padding:24px 0;border-bottom:1px solid #c3a16938;}.bc-mobile .hero-title {font-size:26px;line-height:1.35;font-weight:600;color:#ead8b5;overflow-wrap:anywhere;}
.bc-mobile .hero-meta {display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;}.bc-mobile .meta-item {display:flex;gap:7px;align-items:center;font-size:13px;color:#bba98b;}
.bc-mobile .section-body {margin-top:16px;line-height:1.8;overflow-wrap:anywhere;}
.bc-mobile .participant {display:flex;gap:12px;justify-content:space-between;padding:15px 0;border-bottom:1px solid #ffffff10;}.bc-mobile .participant-name {font-weight:600;overflow-wrap:anywhere;}.bc-mobile .participant-status {font-size:11px;color:#bba679;}
.bc-mobile .actions {display:flex;flex-direction:column;gap:10px;margin-top:20px;}
.bc-mobile .primary,.bc-mobile .secondary,.bc-mobile .danger {display:flex;align-items:center;justify-content:center;min-height:46px;width:100%;padding:11px 16px;border:1px solid #ffffff26;border-radius:var(--radius-input);font:600 14px Jura,sans-serif;color:#d5c7ad;background:#ffffff04;cursor:pointer;}
.bc-mobile .primary {background:#d2aa5b;border-color:#d2aa5b;color:#17150e;}.bc-mobile .danger {color:#df9e8c;}
.bc-mobile button:disabled {opacity:.45;cursor:default;}.bc-mobile button:focus-visible {outline:2px solid #d2aa5b;outline-offset:3px;}
.bc-mobile .add-row {display:grid;gap:12px;margin-top:16px;}.bc-mobile .member-input,.bc-mobile textarea.notes {width:100%;padding:14px;border:1px solid #ffffff28;border-radius:var(--radius-input);background:#0c0e12;color:#d9c7a8;font:14px/1.6 Jura,sans-serif;}
.bc-mobile textarea.notes {margin-top:8px;resize:vertical;}
.bc-mobile .score-block,.bc-mobile .notes-block {margin-top:20px;}.bc-mobile .score-title,.bc-mobile .notes-title {font-size:12px;color:#af9c7b;}
.bc-mobile .score-options {display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}.bc-mobile .score-option {display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid #ffffff24;border-radius:var(--radius-input);font:13px Jura,sans-serif;color:#c4b394;background:transparent;}
.bc-mobile .score-option.active {border-color:#d2aa5b99;background:#d2aa5b12;color:#e3c687;}.bc-mobile .score-option input {accent-color:#d2aa5b;width:18px;height:18px;}
.bc-mobile .error {color:#df9e8c;line-height:1.7;margin-top:12px;}
@container(max-width:650px){.bootcamp-dialog .value-grid{grid-template-columns:1fr}.bc-detail>.hysec-dialog-title,.bc-detail>.hysec-dialog-content{padding:22px}.bc-detail>.hysec-dialog-actions{padding:14px 22px;flex-wrap:wrap}.bootcamp-dialog .participants-panel .table-header,.bootcamp-dialog .participants-panel .table-row {grid-template-columns:1fr 1fr 1fr 2fr;min-width:650px}.bootcamp-dialog .participants-panel>.panel-content{overflow:auto}}
.bootcamp-dialog .form-group:has(>.mud-select)>.form-label {display:none;}
.bootcamp-dialog .participant-item {display:flex;gap:14px;align-items:center;width:100%;padding:16px 0;border:0;border-bottom:1px solid #ffffff14;border-radius:0;background:none;color:#d5c4a4;font:14px Jura,sans-serif;text-align:left;cursor:pointer;}
.bootcamp-dialog .participant-arrow {margin-left:auto;}
.bootcamp-dialog .pending-removal {opacity:.55;text-decoration:line-through;}
.bootcamp-dialog .requires-pretraining .picker-name::after {content:'Vortraining offen';display:block;font-size:11px;color:#d3b479;margin-top:4px;}
.bootcamp-dialog .diff-description-lines {font-size:13px;line-height:1.7;overflow:auto;}
.bootcamp-dialog .diff-line.added {color:#9cc3a0;}.bootcamp-dialog .diff-line.removed {color:#d49c8b;}
@container(max-width:1050px){.bc-matrix .bc-hero{padding:16px 24px}.bc-matrix .bc-hero h1{font-size:30px;margin:8px 0}.bc-matrix .bc-hero p{font-size:13px;margin-bottom:10px}.bc-matrix .tm-actionbar{gap:12px;margin-bottom:14px}}
