:root{--cisco-blue: #049fd9;--cisco-blue-dark: #0278a8;--cisco-blue-light: #17a5d9;--cisco-navy: #003b5c;--cisco-teal: #00b5ad;--cisco-green: #6cc04a;--cisco-green-dark: #3aa639;--cisco-gold: #fdb913;--cisco-orange: #ff6600;--cisco-red: #e2231a;--cisco-violet: #76529a;--cisco-medium-blue: #0a60ff;--cisco-magenta: #ff007f;--coach-color: #ff6600;--tutor-color: #049fd9;--teacher-color: #6cc04a;--danger: #e2231a57;--danger-border: #e2231a63;--font-body: "Nunito Sans", "Segoe UI", Ubuntu, "Gill Sans", "Trebuchet MS", Helvetica, Arial, sans-serif;--header-height: 73px}body[data-theme=dark],body:not([data-theme]){--body-bg: #0b1220;--bg-nav: #0d1828;--surface: #111d2e;--surface-alt: #162335;--surface-card: #1a2840;--border: #1e3048;--border-mid: #244060;--text: #e8eff7;--text-muted: #7b90a8;--text-dim: #3d5470;--input-bg: #0b1220;--shadow: rgba(0, 0, 0, .5);--shadow-blue: rgba(4, 159, 217, .2);--nav-active-bg: rgba(4, 159, 217, .1);--msg-ai-bg: #162335;--msg-ai-border: #1e3048;--msg-user-bg: rgba(4, 159, 217, .12);--msg-user-border: rgba(4, 159, 217, .3);--stat-bg: #162335;color-scheme:dark}body[data-theme=light]{--body-bg: #f4f7fb;--bg-nav: #ffffff;--surface: #ffffff;--surface-alt: #f0f4f9;--surface-card: #ffffff;--border: #d8e3ee;--border-mid: #c2d2e2;--text: #0d1e30;--text-muted: #5a7898;--text-dim: #a0b8cc;--input-bg: #f8fafc;--shadow: rgba(0, 60, 100, .08);--shadow-blue: rgba(4, 159, 217, .12);--nav-active-bg: rgba(4, 159, 217, .07);--msg-ai-bg: #f0f4f9;--msg-ai-border: #d8e3ee;--msg-user-bg: rgba(4, 159, 217, .07);--msg-user-border: rgba(4, 159, 217, .2);--stat-bg: #f0f4f9;color-scheme:light}html{height:100%;--mat-sys-background: light-dark(#fef8fc, #151316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f5eff4, #323033);--mat-sys-inverse-primary: light-dark(#d5baff, #7d00fa);--mat-sys-inverse-surface: light-dark(#323033, #e6e1e6);--mat-sys-on-background: light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #42008a);--mat-sys-on-primary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-primary-fixed: light-dark(#270057, #270057);--mat-sys-on-primary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-on-secondary: light-dark(#ffffff, #352d40);--mat-sys-on-secondary-container: light-dark(#4b4357, #eadef7);--mat-sys-on-secondary-fixed: light-dark(#1f182a, #1f182a);--mat-sys-on-secondary-fixed-variant: light-dark(#4b4357, #4b4357);--mat-sys-on-surface: light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-surface-variant: light-dark(#49454e, #e8e0eb);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#7b757f, #958e99);--mat-sys-outline-variant: light-dark(#cbc4cf, #49454e);--mat-sys-primary: light-dark(#7d00fa, #d5baff);--mat-sys-primary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-primary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-primary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#645b70, #cec2db);--mat-sys-secondary-container: light-dark(#eadef7, #4b4357);--mat-sys-secondary-fixed: light-dark(#eadef7, #eadef7);--mat-sys-secondary-fixed-dim: light-dark(#cec2db, #cec2db);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fef8fc, #151316);--mat-sys-surface-bright: light-dark(#fef8fc, #3b383c);--mat-sys-surface-container: light-dark(#f2ecf1, #211f22);--mat-sys-surface-container-high: light-dark(#ede6eb, #2b292d);--mat-sys-surface-container-highest: light-dark(#e6e1e6, #363437);--mat-sys-surface-container-low: light-dark(#f8f2f6, #1d1b1e);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0f0d11);--mat-sys-surface-dim: light-dark(#ded8dd, #151316);--mat-sys-surface-tint: light-dark(#7d00fa, #d5baff);--mat-sys-surface-variant: light-dark(#e8e0eb, #49454e);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #332f37;--mat-sys-neutral10: #1d1b1e;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem var(--font-body);--mat-sys-body-large-font: var(--font-body);--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem var(--font-body);--mat-sys-body-medium-font: var(--font-body);--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem var(--font-body);--mat-sys-body-small-font: var(--font-body);--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem var(--font-body);--mat-sys-display-large-font: var(--font-body);--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem var(--font-body);--mat-sys-display-medium-font: var(--font-body);--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem var(--font-body);--mat-sys-display-small-font: var(--font-body);--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem var(--font-body);--mat-sys-headline-large-font: var(--font-body);--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem var(--font-body);--mat-sys-headline-medium-font: var(--font-body);--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem var(--font-body);--mat-sys-headline-small-font: var(--font-body);--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem var(--font-body);--mat-sys-label-large-font: var(--font-body);--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem var(--font-body);--mat-sys-label-medium-font: var(--font-body);--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem var(--font-body);--mat-sys-label-small-font: var(--font-body);--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem var(--font-body);--mat-sys-title-large-font: var(--font-body);--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem var(--font-body);--mat-sys-title-medium-font: var(--font-body);--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem var(--font-body);--mat-sys-title-small-font: var(--font-body);--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}body{background-color:var(--body-bg);color:var(--text);font:var(--mat-sys-body-medium);margin:0;height:100%;overflow:hidden;transition:background-color .3s,color .3s}*{box-sizing:border-box}blockquote.md-blockquote{margin:0;padding:0;font-style:inherit;color:inherit}.app-scrollbar{scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}.app-scrollbar::-webkit-scrollbar{width:5px;height:5px}.app-scrollbar::-webkit-scrollbar-track{background:transparent}.app-scrollbar::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:3px}html,body,*{scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{width:5px;height:5px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,*::-webkit-scrollbar-track{background:transparent}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,*::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:3px}:root{--gradient-btn-primary: linear-gradient( 135deg, var(--cisco-blue-light) 0%, var(--cisco-blue) 48%, var(--cisco-blue-dark) 100% );--gradient-btn-primary-hover: linear-gradient( 135deg, color-mix(in srgb, var(--cisco-blue-light) 75%, white) 0%, var(--cisco-blue-light) 48%, var(--cisco-blue) 100% );--shadow-btn-blue: 0 2px 8px rgba(4, 159, 217, .35);--shadow-btn-blue-hover: 0 6px 22px rgba(4, 159, 217, .45)}.btn-gradient-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;border:none;border-radius:2rem;font-family:var(--font-body);font-size:14px;font-weight:600;line-height:1.2;color:#fff;cursor:pointer;text-decoration:none;transition:background .25s ease,box-shadow .25s ease,transform .2s ease}.btn-gradient-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-gradient-primary{background:var(--gradient-btn-primary);box-shadow:var(--shadow-btn-blue),inset 0 1px #ffffff2e}.btn-gradient-primary:hover:not(:disabled){background:var(--gradient-btn-primary-hover);box-shadow:var(--shadow-btn-blue-hover),inset 0 1px #ffffff38;transform:translateY(-1px)}.btn-gradient-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-btn-blue)}.help-btn{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface-alt);color:var(--text-muted);font-size:13px;font-weight:700;font-family:var(--font-body);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;transition:background .15s,border-color .15s,color .15s}.help-btn:hover{background:var(--cisco-blue);border-color:var(--cisco-blue);color:#fff}.mat-mdc-outlined-button:not(:disabled){color:var(--cisco-blue)!important;border-color:var(--border-mid, var(--border))!important}.mat-mdc-outlined-button:not(:disabled) .mat-icon{color:var(--cisco-blue)!important}.mat-mdc-outlined-button:not(:disabled):hover{border-color:var(--cisco-blue)!important;background:color-mix(in srgb,var(--cisco-blue) 6%,transparent)!important}.btn-submit{background:var(--cisco-blue)!important}.btn-trash{width:32px;height:32px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:box-shadow .2s,transform .15s;background:var(--surface-alt);transition:background .05s ease-in-out}.btn-trash mat-icon{font-size:18px;width:18px;height:18px;color:color-mix(in srgb,var(--cisco-red) 75%,transparent)}.btn-trash:hover{background:color-mix(in srgb,var(--cisco-red) 10%,var(--surface))}.btn-trash:hover mat-icon{color:var(--cisco-red)}.cdk-overlay-backdrop.app-dialog-backdrop{background:#0b122094!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cdk-overlay-pane.mat-mdc-dialog-panel{display:flex;flex-direction:column;max-height:min(90vh,900px)}.mat-mdc-dialog-container{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:auto!important;max-height:100%;overflow:hidden;background-color:var(--surface-alt);border-radius:16px;border:1px solid var(--border)!important;box-shadow:0 24px 48px -12px #00000080!important;padding:1.25rem!important}.mat-mdc-dialog-container .mat-mdc-dialog-component-host{display:contents!important}.mat-mdc-dialog-container .mat-mdc-dialog-inner-container{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;flex:1 1 auto;min-height:0;height:auto!important;max-height:100%;overflow:hidden}.mat-mdc-dialog-container .mat-mdc-dialog-surface,.mat-mdc-dialog-container .mdc-dialog__surface{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;flex-grow:1!important;flex-shrink:1!important;min-height:0!important;height:auto!important;max-height:100%;background:transparent!important;overflow:hidden!important}.mat-mdc-dialog-container .mat-mdc-dialog-title{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;width:100%;padding:0 6px 12px!important;margin:0!important;color:var(--text)}.mat-mdc-dialog-container .mat-mdc-dialog-title:before{display:none!important;height:0!important;width:0!important;content:none!important}.mat-mdc-dialog-container .mat-mdc-dialog-title .header-title-container{display:flex;gap:8px;align-items:center;color:var(--text);margin-right:auto;min-width:0}.mat-mdc-dialog-container .mat-mdc-dialog-title .header-title-container .title{margin:0;padding:0;font-size:1.125rem;font-weight:700;line-height:1.3}.mat-mdc-dialog-container .mat-mdc-dialog-title .header-title-container .header-icon{display:inline-flex;align-items:center;justify-content:center;font-size:24px;width:24px;height:24px;line-height:1;color:var(--cisco-blue);flex-shrink:0}.mat-mdc-dialog-container .mat-mdc-dialog-title .close-btn{flex-shrink:0;color:var(--text-muted)}.mat-mdc-dialog-container h2[mat-dialog-title],.mat-mdc-dialog-container .progress-dialog-title{display:flex;align-items:center;gap:8px;font-size:1.125rem;font-weight:700;color:var(--text)}.mat-mdc-dialog-container h2[mat-dialog-title] mat-icon,.mat-mdc-dialog-container .progress-dialog-title mat-icon{color:var(--cisco-blue)}.mat-mdc-dialog-container .mat-mdc-dialog-content{flex:1 1 auto!important;flex-grow:1!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0 6px 0 0!important;margin:0!important;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}.mat-mdc-dialog-container .mat-mdc-dialog-content::-webkit-scrollbar{width:5px}.mat-mdc-dialog-container .mat-mdc-dialog-content::-webkit-scrollbar-track{background:transparent;margin-block:4px}.mat-mdc-dialog-container .mat-mdc-dialog-content::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:3px}.mat-mdc-dialog-container .mat-mdc-dialog-actions{flex:0 0 auto;justify-content:flex-end;align-items:center;gap:10px;padding:12px 6px 6px!important;margin:0!important;min-height:unset!important;border-top:1px solid var(--border)}.cdk-overlay-pane.mat-mdc-dialog-panel.app-dialog-panel--wide{max-height:min(92vh,960px)}.mat-mdc-dialog-panel.app-dialog-panel--wide .mat-mdc-dialog-container,.mat-mdc-dialog-panel.progress-dialog-panel .mat-mdc-dialog-container,.mat-mdc-dialog-panel.custom-team-dialog .mat-mdc-dialog-container,.mat-mdc-dialog-panel.upload-dialog-panel .mat-mdc-dialog-container{max-height:100%}.fhm-backdrop,.fvm-backdrop,.fcm-backdrop,app-diagram-zoom-modal .backdrop{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.progress-dialog-stats{display:grid;gap:12px;margin-bottom:20px}.progress-dialog-stats--quad{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:640px){.progress-dialog-stats--quad{grid-template-columns:repeat(2,minmax(0,1fr))}}.progress-dialog-stat{background:var(--surface-card);border:1px solid var(--border);border-radius:12px;padding:14px 12px;text-align:center}.progress-dialog-stat-value{font-size:1.25rem;font-weight:800;line-height:1.2}.progress-dialog-stat-value.stat-avg{color:var(--cisco-blue)}.progress-dialog-stat-value.stat-best{color:var(--cisco-green)}.progress-dialog-stat-value.stat-low{color:var(--cisco-orange)}.progress-dialog-stat-value.stat-up{color:var(--cisco-green)}.progress-dialog-stat-value.stat-down{color:var(--cisco-red)}.progress-dialog-stat-label{margin-top:4px;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.progress-dialog-stats--dual{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-dialog-skill-card{background:var(--surface-card);border:1px solid var(--border);border-left:4px solid var(--cisco-blue);border-radius:12px;padding:16px;margin-bottom:20px}.progress-dialog-skill-card.tier-expert{border-left-color:var(--cisco-green)}.progress-dialog-skill-card.tier-advanced,.progress-dialog-skill-card.tier-proficient{border-left-color:var(--cisco-blue)}.progress-dialog-skill-card.tier-developing{border-left-color:var(--cisco-orange)}.progress-dialog-skill-card.tier-needs-improvement{border-left-color:#c4b5fd}.progress-dialog-skill-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.progress-dialog-skill-name{font-size:1rem;font-weight:700;color:var(--text)}.progress-dialog-score{font-size:1.5rem;font-weight:800;line-height:1.1}.progress-dialog-recommendation{margin:12px 0 0;font-size:.875rem;color:var(--text-muted);line-height:1.4}.progress-dialog-chart{margin-bottom:20px}.progress-dialog-section-title{margin:0 0 12px;font-size:.9375rem;font-weight:700;color:var(--text)}.progress-dialog-session-list{display:flex;flex-direction:column;gap:8px;padding-right:2px}.progress-dialog-session-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--surface-card);border:1px solid var(--border);border-radius:10px}.progress-dialog-session-info{display:flex;align-items:center;gap:10px;min-width:0}.progress-dialog-session-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#6cc04a1f;color:var(--cisco-green);flex-shrink:0}.progress-dialog-session-icon mat-icon{font-size:16px;width:16px;height:16px}.progress-dialog-session-type{font-size:.8125rem;font-weight:600;color:var(--text)}.progress-dialog-session-date{font-size:.75rem;color:var(--text-muted)}.progress-empty-copy{margin:0;color:var(--text-muted);text-align:center;padding:24px 0}.custom-switch-dialog .mat-mdc-dialog-container{max-width:420px}.custom-switch-dialog .header-icon{color:var(--cisco-blue)!important}.custom-switch-dialog .mat-mdc-dialog-content,.custom-switch-dialog .mdc-dialog__content,.custom-switch-dialog .mat-mdc-dialog-container .mat-mdc-dialog-content,.custom-switch-dialog .mat-mdc-dialog-container .mdc-dialog__content{padding:12px 6px 16px!important;border-top:none!important;border-bottom:none!important}.custom-switch-dialog .cd-content{padding:4px 0 8px;display:flex;flex-direction:column;gap:12px}.custom-switch-dialog .cd-message{font-size:14px!important;color:var(--text-muted)!important;line-height:1.65!important;margin:0!important}.custom-switch-dialog .mat-mdc-dialog-actions,.custom-switch-dialog .mdc-dialog__actions,.custom-switch-dialog .mat-mdc-dialog-container .mat-mdc-dialog-actions,.custom-switch-dialog .mat-mdc-dialog-container .mdc-dialog__actions{padding:12px 6px 0!important;gap:12px!important;border-top:none!important}.custom-switch-dialog .mat-mdc-outlined-button,.custom-switch-dialog .mat-mdc-unelevated-button{font-family:inherit!important;font-size:14px!important;font-weight:600!important;height:38px!important;min-width:130px!important;border-radius:20px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease!important;padding:0 20px!important;box-sizing:border-box!important}.custom-switch-dialog .mat-mdc-outlined-button{background-color:transparent!important;color:var(--text-muted)!important;border:1px solid var(--border-mid, var(--border))!important}.custom-switch-dialog .mat-mdc-outlined-button:hover{color:var(--cisco-blue)!important;border-color:var(--cisco-blue)!important;background-color:color-mix(in srgb,var(--cisco-blue) 8%,transparent)!important;transform:translateY(-1px)!important}.custom-switch-dialog .mat-mdc-outlined-button:active{transform:translateY(0)!important}.custom-switch-dialog .mat-mdc-unelevated-button{background-color:var(--cisco-blue)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 2px 8px color-mix(in srgb,var(--cisco-blue) 25%,transparent)!important}.custom-switch-dialog .mat-mdc-unelevated-button:hover{background-color:var(--cisco-blue-dark)!important;box-shadow:0 4px 12px color-mix(in srgb,var(--cisco-blue) 40%,transparent)!important;transform:translateY(-1px)!important}.custom-switch-dialog .mat-mdc-unelevated-button:active{transform:translateY(0)!important}.tutorial-dialog .mat-mdc-dialog-surface,.tutorial-dialog .mdc-dialog__surface{border-radius:0!important;overflow:visible!important}body[data-theme=dark],body:not([data-theme]){--chat-bg: var(--surface);--chat-input-bg: var(--surface-alt);--chat-input-border: var(--border);--chat-bubble-bot: var(--msg-ai-bg);--chat-bubble-bot-border: var(--msg-ai-border);--chat-bubble-bot-text: var(--text);--chat-bubble-user: var(--msg-user-bg);--chat-bubble-user-border: var(--msg-user-border);--chat-bubble-user-text: var(--text);--sb-border: var(--border);--sb-hover: var(--surface-alt)}body[data-theme=light]{--chat-bg: var(--surface);--chat-input-bg: var(--surface-alt);--chat-input-border: var(--border);--chat-bubble-bot: var(--msg-ai-bg);--chat-bubble-bot-border: var(--msg-ai-border);--chat-bubble-bot-text: var(--text);--chat-bubble-user: var(--msg-user-bg);--chat-bubble-user-border: var(--msg-user-border);--chat-bubble-user-text: var(--text);--sb-border: var(--border);--sb-hover: var(--surface-alt)}.panel-header{display:flex;align-items:center;gap:.75rem;padding-bottom:.85rem;border-bottom:1px solid var(--border);margin-bottom:1rem;flex-shrink:0}.panel-header .panel-header-icon{width:40px;height:40px;border-radius:.75rem;background:linear-gradient(135deg,#049fd91f,#049fd940);display:flex;align-items:center;justify-content:center;color:var(--cisco-blue);flex-shrink:0}.panel-header .panel-header-icon mat-icon{font-size:20px;width:20px;height:20px;line-height:20px}.panel-header .panel-header-text{min-width:0}.panel-header .panel-header-text h3{margin:0 0 .15rem;font-size:.95rem;font-weight:700;color:var(--text)}.panel-header .panel-header-text p{margin:0;font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.right-panel{background-color:var(--surface-alt);border-radius:12px;border:1px solid var(--border);padding:1.25rem;overflow:hidden;height:100%;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;gap:1.25rem}.right-panel__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:1.25rem;padding-right:.25rem;margin-right:-.25rem}.right-panel__pinned{display:flex;flex-direction:column;gap:1.25rem;flex-shrink:0}.bp-select-panel{background:var(--surface-alt)!important;border:1px solid var(--border)!important;border-radius:10px!important;box-shadow:0 8px 24px -4px #0006!important;padding:4px!important}.bp-select-panel .mat-mdc-option{border-radius:6px!important;min-height:36px!important;font-size:.8rem!important;color:var(--text)!important}.bp-select-panel .mat-mdc-option .mdc-list-item__primary-text{color:var(--text)!important;font-size:.8rem!important}.bp-select-panel .mat-mdc-option:hover:not(.mdc-list-item--disabled){background:#049fd914!important}.bp-select-panel .mat-mdc-option.mdc-list-item--selected{background:#049fd91f!important}.bp-select-panel .mat-mdc-option.mdc-list-item--selected .mdc-list-item__primary-text{color:var(--cisco-blue)!important;font-weight:600!important}.bp-select-panel .mat-mdc-option.mdc-list-item--selected .mat-pseudo-checkbox-full{border-color:var(--cisco-blue)!important}.bp-select-panel .mat-mdc-option.mdc-list-item--selected .mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked{background:var(--cisco-blue)!important}@keyframes spin{to{transform:rotate(360deg)}}.spinner{position:relative;width:52px;height:52px}.spinner:before,.spinner:after{content:"";display:block;position:absolute;border-radius:50%}.spinner:before{inset:0;border:3.5px solid color-mix(in srgb,var(--cisco-blue) 18%,transparent);border-top-color:var(--cisco-blue);animation:spin 1.1s linear infinite}.spinner:after{inset:8px;border:2.5px solid color-mix(in srgb,var(--cisco-blue) 12%,transparent);border-top-color:var(--cisco-teal);animation:spin .8s linear infinite reverse}.btn-spinner{display:inline-block;width:16px;height:16px;border:2px solid color-mix(in srgb,currentColor 25%,transparent);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0;vertical-align:middle}.app-snackbar,.app-snackbar.mat-mdc-snack-bar-container{background:transparent!important;box-shadow:none!important}.app-snackbar .mat-mdc-snackbar-surface,.app-snackbar .mdc-snackbar__surface{padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}.app-snackbar .mat-mdc-snack-bar-label,.app-snackbar .mdc-snackbar__label{padding:0!important}.progress-section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.progress-metric-card{background:var(--surface-card);border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 20px var(--shadow);position:relative;padding:20px;cursor:default;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.progress-metric-card--clickable{cursor:pointer}.progress-metric-card--clickable:hover{transform:translateY(-2px);border-color:var(--cisco-blue);box-shadow:0 8px 24px var(--shadow)}.progress-metric-label{font-size:.8125rem;font-weight:600;color:var(--text-muted);margin-bottom:8px}.progress-metric-value{font-size:2rem;font-weight:800;line-height:1.1}.progress-metric-trend{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:.75rem;color:var(--text-muted)}.progress-metric-trend.trend-up{color:var(--cisco-green)}.progress-metric-trend.trend-down{color:var(--cisco-red)}.progress-metric-hint{margin-top:8px;font-size:.75rem;color:var(--cisco-blue)}.progress-section-card{background:var(--surface-card);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 4px 20px var(--shadow);margin-bottom:24px}.progress-section-title{display:flex;align-items:center;gap:8px;margin:0 0 20px;font-size:1.125rem;font-weight:700;color:var(--text)}.progress-section-title mat-icon{color:var(--cisco-blue)}.progress-skill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:20px}.progress-skill-card{background:var(--surface-alt);border:1px solid var(--border);border-left:4px solid var(--cisco-blue);border-radius:12px;padding:16px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.progress-skill-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow)}.progress-skill-card.tier-expert{border-left-color:var(--cisco-green)}.progress-skill-card.tier-advanced,.progress-skill-card.tier-proficient{border-left-color:var(--cisco-blue)}.progress-skill-card.tier-developing{border-left-color:var(--cisco-orange)}.progress-skill-card.tier-needs-improvement{border-left-color:#c4b5fd}.progress-skill-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.progress-skill-name{font-size:.9375rem;font-weight:700;color:var(--text)}.progress-skill-score{font-size:1.25rem;font-weight:800}.progress-skill-level{display:inline-flex;align-items:center;margin-top:6px;padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:700;background:var(--msg-user-bg);color:var(--cisco-blue-dark)}.progress-skill-level.level-expert{background:#6cc04a1f;color:var(--cisco-green-dark)}.progress-skill-level.level-advanced,.progress-skill-level.level-proficient{background:var(--msg-user-bg);color:var(--cisco-blue-dark)}.progress-skill-level.level-developing{background:color-mix(in srgb,var(--cisco-orange) 10%,transparent);color:var(--cisco-orange)}.progress-skill-trend{margin-left:8px;font-size:.6875rem;font-weight:700}.progress-skill-trend.trend-up{color:var(--cisco-green)}.progress-skill-trend.trend-down{color:var(--cisco-red)}.progress-skill-bar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.progress-skill-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.progress-chart-container{height:320px;width:100%}.progress-chart-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);text-align:center;gap:8px;flex-direction:column}.progress-time-range{display:flex;flex-wrap:wrap;gap:4px;padding:4px;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px}.progress-time-range-btn{border:none;background:transparent;color:var(--text-muted);border-radius:6px;padding:8px 16px;font-size:.8125rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.progress-time-range-btn:hover:not(.active){color:var(--text);background:color-mix(in srgb,var(--cisco-blue) 8%,transparent)}.progress-time-range-btn.active{background:var(--cisco-blue);color:#fff;box-shadow:0 1px 3px color-mix(in srgb,var(--cisco-blue) 35%,transparent)}.progress-tab-nav{display:flex;gap:24px;margin:12px 0 8px;border-bottom:1px solid var(--border)}.progress-tab-btn{border:none;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:600;padding:10px 0;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:color .2s ease,border-color .2s ease}.progress-tab-btn:hover:not(.active){color:var(--text)}.progress-tab-btn.active{color:var(--cisco-blue);border-bottom-color:var(--cisco-blue)}.progress-session-card{background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;padding:16px;cursor:pointer;transition:border-color .2s ease}.progress-session-card:hover{border-color:var(--cisco-blue)}.progress-session-grid{display:grid;grid-template-columns:minmax(100px,.8fr) 2fr auto;gap:0 24px;align-items:center;width:100%}@media(max-width:768px){.progress-session-grid{grid-template-columns:1fr;gap:12px}}.progress-session-card-info{display:flex;flex-direction:column;gap:4px;min-width:0}.progress-session-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.progress-session-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.75rem;color:var(--text-muted)}.progress-score-bar{width:100%;height:8px;border-radius:999px;background:var(--border);overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.progress-score-bar-fill{height:100%;border-radius:999px;transition:width .5s ease}.progress-session-card-type{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-muted);white-space:nowrap}.progress-session-card-type mat-icon{font-size:14px;width:14px;height:14px}.progress-score-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:4.5rem;padding:6px 14px;border-radius:20px;font-size:1rem;font-weight:700;color:#fff;white-space:nowrap;flex-shrink:0}.progress-score-badge mat-icon{font-size:16px;width:16px;height:16px}.progress-score-badge.excellent{background:var(--cisco-green)}.progress-score-badge.good,.progress-score-badge.poor{background:var(--cisco-blue)}.progress-hero-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-bottom:20px}.progress-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;gap:16px;color:var(--text-muted)}.progress-empty-state mat-icon{font-size:48px;width:48px;height:48px;color:var(--cisco-blue)}.mat-mdc-tab-group,.mat-mdc-tab-nav-bar{--mat-tab-active-indicator-color: var(--cisco-blue);--mat-tab-active-label-text-color: var(--cisco-blue);--mat-tab-active-focus-label-text-color: var(--cisco-blue);--mat-tab-active-hover-label-text-color: var(--cisco-blue);--mat-tab-active-focus-indicator-color: var(--cisco-blue);--mat-tab-active-hover-indicator-color: var(--cisco-blue);--mat-tab-active-ripple-color: var(--cisco-blue)}
