.search-bar-container[data-v-904e3e22]{position:relative;flex:1}.search-dropdown[data-v-904e3e22]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:300;overflow:hidden}.search-dropdown-loading[data-v-904e3e22],.search-dropdown-empty[data-v-904e3e22]{padding:16px;text-align:center;font-size:13px;color:var(--color-text-secondary)}.search-suggestion-item[data-v-904e3e22]{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:none;cursor:pointer;text-align:left;font-family:var(--font-family-primary);font-size:13px;color:var(--color-text-primary);transition:background .1s ease}.search-suggestion-item[data-v-904e3e22]:hover,.search-suggestion-item.focused[data-v-904e3e22]{background:var(--color-bg-hover)}.suggestion-thumb[data-v-904e3e22]{width:36px;height:36px;border-radius:var(--radius-default);overflow:hidden;flex-shrink:0;background:var(--color-bg-page);display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary)}.suggestion-thumb img[data-v-904e3e22]{width:100%;height:100%;object-fit:cover}.suggestion-thumb .material-symbols-outlined[data-v-904e3e22]{font-size:20px}.suggestion-title[data-v-904e3e22]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-suggestion-view-all[data-v-904e3e22]{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 12px;border:none;border-top:1px solid var(--color-border-light);background:none;cursor:pointer;font-family:var(--font-family-primary);font-size:13px;font-weight:600;color:var(--color-link);transition:background .1s ease}.search-suggestion-view-all[data-v-904e3e22]:hover,.search-suggestion-view-all.focused[data-v-904e3e22]{background:var(--color-bg-hover);color:var(--color-link-hover)}.search-suggestion-view-all .material-symbols-outlined[data-v-904e3e22]{font-size:16px}.user-dropdown-org[data-v-a320b1ab]{font-size:13px;color:var(--color-text-secondary);margin-top:4px}.role-switcher[data-v-a320b1ab]{padding:8px 16px}.role-switcher-label[data-v-a320b1ab]{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.role-switcher-buttons[data-v-a320b1ab]{display:flex;gap:4px}.role-btn[data-v-a320b1ab]{flex:1;padding:6px 8px;font-size:12px;font-weight:500;border:1px solid var(--color-border-default);border-radius:4px;background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.role-btn[data-v-a320b1ab]:hover{background:var(--color-bg-hover);border-color:var(--color-border-dark)}.role-btn.active[data-v-a320b1ab]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.app-shell[data-v-da1727b0]{min-height:100vh}.filter-count[data-v-0f1285bb]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:4px;font-size:11px;font-weight:600;color:#fff;background:var(--color-primary);border-radius:9px}.pagination-bar[data-v-21b9bcc6]{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.results-count[data-v-21b9bcc6]{font-family:var(--font-family-body);font-size:14px;color:var(--color-text-secondary);font-weight:400}.pagination-controls[data-v-21b9bcc6]{display:flex;align-items:center;gap:8px}.pagination-controls label[data-v-21b9bcc6]{font-family:var(--font-family-body);font-size:14px;color:var(--color-text-secondary);font-weight:400}.per-page-select[data-v-21b9bcc6]{padding:6px 28px 6px 10px;font-family:var(--font-family-body);font-size:14px;color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%23464F57' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right 8px center;appearance:none;cursor:pointer;margin-right:16px}.per-page-select[data-v-21b9bcc6]:focus{outline:none;border-color:var(--color-primary)}.per-page-select[data-v-21b9bcc6]:disabled{opacity:.6;cursor:not-allowed}.page-info[data-v-21b9bcc6]{font-family:var(--font-family-body);font-size:14px;color:var(--color-text-secondary);font-weight:400;margin-right:16px}.page-nav-buttons[data-v-21b9bcc6]{display:flex;gap:8px}.page-nav-btn[data-v-21b9bcc6]{width:40px;height:40px;border:1px solid var(--color-border-default);border-radius:var(--radius-default);background:var(--color-bg-card);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.page-nav-btn[data-v-21b9bcc6]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark)}.page-nav-btn[data-v-21b9bcc6]:disabled{opacity:.3;cursor:not-allowed}.page-nav-btn .material-symbols-outlined[data-v-21b9bcc6]{font-size:20px;color:var(--color-text-primary)}@media(max-width:640px){.pagination-bar[data-v-21b9bcc6]{flex-direction:column;gap:16px;align-items:flex-start}.pagination-controls[data-v-21b9bcc6]{flex-wrap:wrap;gap:12px}.pagination-controls label[data-v-21b9bcc6]{display:none}.per-page-select[data-v-21b9bcc6],.page-info[data-v-21b9bcc6]{margin-right:8px}}.toast-container[data-v-bce7968d]{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:400px}.toast[data-v-bce7968d]{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-default);box-shadow:var(--shadow-lg);cursor:pointer;min-width:300px}.toast-success[data-v-bce7968d]{background:#e8f5e9;border:1px solid #4CAF50;color:#1b5e20}.toast-error[data-v-bce7968d]{background:#ffebee;border:1px solid #F44336;color:#b71c1c}.toast-warning[data-v-bce7968d]{background:#fff8e1;border:1px solid #FF9800;color:#e65100}.toast-info[data-v-bce7968d]{background:#e3f2fd;border:1px solid #2196F3;color:#0d47a1}.toast-icon[data-v-bce7968d]{flex-shrink:0}.toast-icon[data-v-bce7968d] .material-symbols-outlined{font-size:20px}.toast-message[data-v-bce7968d]{flex:1;font-size:14px;font-weight:500;line-height:1.4}.toast-close[data-v-bce7968d]{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;opacity:.6;border-radius:var(--radius-sm)}.toast-close[data-v-bce7968d]:hover{opacity:1;background:#0000001a}.toast-close[data-v-bce7968d] .material-symbols-outlined{font-size:18px}.toast-enter-active[data-v-bce7968d]{animation:toast-in-bce7968d .3s ease-out}.toast-leave-active[data-v-bce7968d]{animation:toast-out-bce7968d .2s ease-in}@keyframes toast-in-bce7968d{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-out-bce7968d{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@media(max-width:480px){.toast-container[data-v-bce7968d]{left:16px;right:16px;bottom:16px}.toast[data-v-bce7968d]{min-width:unset}}.video-player-container[data-v-590e39e5]{width:100%;position:relative;background:#000;border-radius:var(--radius-lg);overflow:hidden}.wistia_responsive_padding[data-v-590e39e5]{padding:56.25% 0 0;position:relative}.wistia_responsive_wrapper[data-v-590e39e5]{height:100%;left:0;position:absolute;top:0;width:100%}.iframe-wrapper[data-v-590e39e5]{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden}.storyline-iframe[data-v-590e39e5],.external-iframe[data-v-590e39e5]{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.video-loading[data-v-590e39e5]{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#888;z-index:5}.video-loading .spinning[data-v-590e39e5]{font-size:32px;color:var(--color-primary);animation:spin-590e39e5 1s linear infinite}.spinning[data-v-590e39e5]{animation:spin-590e39e5 1s linear infinite}@keyframes spin-590e39e5{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.video-error[data-v-590e39e5]{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:var(--color-error, #ef4444);z-index:5}.video-error .material-symbols-outlined[data-v-590e39e5]{font-size:48px}.video-placeholder[data-v-590e39e5]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:64px;min-height:400px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#666}.video-placeholder .material-symbols-outlined[data-v-590e39e5]{font-size:80px;opacity:.4}.video-placeholder span[data-v-590e39e5]{font-size:16px;font-weight:500}.video-placeholder .placeholder-hint[data-v-590e39e5]{font-size:14px;color:#555;margin-top:8px}.beacon-state-panel[data-v-590e39e5]{gap:16px}.beacon-completed-badge[data-v-590e39e5]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#22c55e26;border:1px solid rgba(34,197,94,.4);border-radius:var(--radius-md, 6px);color:#22c55e;font-weight:600;font-size:14px}.beacon-attended-banner[data-v-590e39e5]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#3b82f626;border:1px solid rgba(59,130,246,.4);border-radius:var(--radius-md, 6px);color:#60a5fa;font-size:14px}.beacon-launch-btn[data-v-590e39e5]{display:flex;align-items:center;gap:8px;font-size:15px}.beacon-certificates[data-v-590e39e5]{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:4px}.beacon-certificates-label[data-v-590e39e5]{font-size:13px;color:#888;text-transform:uppercase;letter-spacing:.05em}.beacon-certificate-link[data-v-590e39e5]{display:flex;align-items:center;gap:6px;color:#60a5fa;font-size:14px;text-decoration:none}.beacon-certificate-link[data-v-590e39e5]:hover{text-decoration:underline}.base-flyout-overlay[data-v-945c1316]{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex}.base-flyout-overlay.position-right[data-v-945c1316]{justify-content:flex-end}.base-flyout-overlay.position-left[data-v-945c1316]{justify-content:flex-start}.base-flyout-panel[data-v-945c1316]{width:100%;height:100%;background:var(--color-bg-card);display:flex;flex-direction:column;box-shadow:-4px 0 20px #00000026}.position-left .base-flyout-panel[data-v-945c1316]{box-shadow:4px 0 20px #00000026}.flyout-header[data-v-945c1316]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4, 24px);border-bottom:1px solid var(--color-border-light);flex-shrink:0}.flyout-title[data-v-945c1316]{font-family:var(--font-family-heading, "Bitter", serif);font-size:1.25rem;font-weight:600;color:var(--color-heading, #2A5488);margin:0}.flyout-close-btn[data-v-945c1316]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:var(--radius-default, 8px);cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast, .15s ease)}.flyout-close-btn[data-v-945c1316]:hover{background:var(--color-bg-hover, #f5f5f5);color:var(--color-text-primary)}.flyout-close-btn[data-v-945c1316]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.flyout-body[data-v-945c1316]{flex:1;overflow-y:auto;padding:var(--space-4, 24px);scrollbar-gutter:stable}.flyout-actions[data-v-945c1316]{display:flex;flex-direction:column;gap:var(--space-2, 8px);padding:var(--space-4, 24px);border-top:1px solid var(--color-border-light);background:var(--color-bg-card);flex-shrink:0}.flyout-enter-active[data-v-945c1316],.flyout-leave-active[data-v-945c1316]{transition:opacity .3s ease}.flyout-enter-active .base-flyout-panel[data-v-945c1316],.flyout-leave-active .base-flyout-panel[data-v-945c1316]{transition:transform .3s ease}.flyout-enter-from[data-v-945c1316],.flyout-leave-to[data-v-945c1316]{opacity:0}.position-right .flyout-enter-from .base-flyout-panel[data-v-945c1316],.position-right .flyout-leave-to .base-flyout-panel[data-v-945c1316]{transform:translate(100%)}.position-left .flyout-enter-from .base-flyout-panel[data-v-945c1316],.position-left .flyout-leave-to .base-flyout-panel[data-v-945c1316]{transform:translate(-100%)}@media(max-width:480px){.base-flyout-panel[data-v-945c1316]{max-width:100%!important}}.flyout-loading[data-v-888060e2]{display:flex;align-items:center;justify-content:center;gap:8px;padding:48px 24px;color:var(--color-text-secondary)}.flyout-loading .spinning[data-v-888060e2]{animation:spin-888060e2 1s linear infinite}@keyframes spin-888060e2{to{transform:rotate(360deg)}}.flyout-error[data-v-888060e2]{padding:16px;background:var(--color-error-bg, #fee2e2);color:var(--color-error, #dc2626);border-radius:8px}.no-credits-message[data-v-888060e2]{text-align:center;padding:48px 24px;color:var(--color-text-secondary)}.credits-section-header[data-v-888060e2]{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--color-border-light)}.credits-section-header[data-v-888060e2]:not(:first-child){margin-top:24px}.credits-jurisdiction-card[data-v-888060e2]{background:var(--color-bg-secondary, #f8f9fa);border-radius:8px;padding:16px 24px;margin-bottom:12px}.credits-jurisdiction-card[data-v-888060e2]:last-child{margin-bottom:0}.credits-jurisdiction-card.user-jurisdiction[data-v-888060e2]{background:var(--color-success-bg, #dcfce7);border:1px solid var(--color-success-border, #86efac)}.jurisdiction-name[data-v-888060e2]{font-weight:600;font-size:15px;color:var(--color-text-primary);margin-bottom:12px;display:flex;align-items:center;gap:8px}.user-jur-icon[data-v-888060e2]{color:var(--color-success, #16a34a);font-size:20px}.jurisdiction-details[data-v-888060e2]{display:grid;grid-template-columns:1fr 1.5fr auto;gap:16px}.jurisdiction-col[data-v-888060e2]{display:flex;flex-direction:column;gap:4px;min-width:0}.col-label[data-v-888060e2]{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:4px}.col-value[data-v-888060e2]{font-size:14px;color:var(--color-text-primary)}.col-value .chip[data-v-888060e2]{margin:0}.chip-with-icon[data-v-888060e2]{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.chip-with-icon .material-symbols-outlined[data-v-888060e2]{font-size:14px;flex-shrink:0}@media(max-width:480px){.jurisdiction-details[data-v-888060e2]{grid-template-columns:1fr 1fr;gap:12px 8px}.jurisdiction-details .jurisdiction-col[data-v-888060e2]:last-child{grid-column:span 2}}.form-group[data-v-3a9da4fc]{margin-bottom:20px}.form-group[data-v-3a9da4fc]:last-child{margin-bottom:0}.form-group>label[data-v-3a9da4fc]{display:block;margin-bottom:8px;font-weight:500;font-size:14px}.required[data-v-3a9da4fc]{color:var(--color-error, #D44400)}.file-input-hidden[data-v-3a9da4fc]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-dropzone[data-v-3a9da4fc]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:140px;padding:24px;border:2px dashed var(--color-border-default, #8C969E);border-radius:var(--radius-lg, 8px);background:var(--color-bg-page, #F0F2F4);cursor:pointer;transition:all .15s ease}.file-dropzone[data-v-3a9da4fc]:hover:not(.is-disabled){border-color:var(--color-primary, #2A5488);background:var(--color-surface-selected, #E5ECF9)}.file-dropzone[data-v-3a9da4fc]:focus-visible{outline:2px solid var(--color-primary, #2A5488);outline-offset:2px}.file-dropzone.is-drag-over[data-v-3a9da4fc]{border-color:var(--color-primary, #2A5488);background:var(--color-surface-selected, #E5ECF9);border-style:solid}.file-dropzone.has-file[data-v-3a9da4fc]{flex-direction:row;justify-content:flex-start;min-height:auto;padding:16px 20px;border-style:solid;border-color:var(--color-success, #447228);background:var(--color-success-light, #E8F0E4)}.file-dropzone.has-error[data-v-3a9da4fc]{border-color:var(--color-error, #D44400)}.file-dropzone.is-disabled[data-v-3a9da4fc]{opacity:.6;cursor:not-allowed;background:var(--color-bg-disabled, #f5f5f5)}.file-dropzone-icon[data-v-3a9da4fc]{font-size:40px;color:var(--color-text-tertiary, #7E878E)}.file-dropzone.has-file .file-dropzone-icon[data-v-3a9da4fc]{font-size:32px;color:var(--color-success, #447228)}.file-dropzone-text[data-v-3a9da4fc]{margin:0;font-size:14px;color:var(--color-text-secondary, #464F57)}.file-dropzone-action[data-v-3a9da4fc]{color:var(--color-link, #235BA8);font-weight:500}.file-dropzone:hover:not(.is-disabled) .file-dropzone-action[data-v-3a9da4fc]{text-decoration:underline}.file-dropzone-hint[data-v-3a9da4fc]{margin:0;font-size:12px;color:var(--color-text-muted, #8C969E)}.file-info[data-v-3a9da4fc]{flex:1;min-width:0}.file-name[data-v-3a9da4fc]{margin:0;font-size:14px;font-weight:500;color:var(--color-text-primary, #001722);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size[data-v-3a9da4fc]{margin:2px 0 0;font-size:12px;color:var(--color-text-secondary, #464F57)}.file-clear-btn[data-v-3a9da4fc]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-default, 4px);background:transparent;color:var(--color-text-secondary, #464F57);cursor:pointer;transition:all .15s ease}.file-clear-btn[data-v-3a9da4fc]:hover:not(:disabled){background:#0000001a;color:var(--color-error, #D44400)}.file-clear-btn[data-v-3a9da4fc]:disabled{cursor:not-allowed;opacity:.5}.file-clear-btn .material-symbols-outlined[data-v-3a9da4fc]{font-size:20px}.helper-text[data-v-3a9da4fc]{display:block;font-size:12px;color:var(--color-text-secondary, #464F57);margin-top:6px}.error-text[data-v-3a9da4fc]{display:block;font-size:12px;color:var(--color-error, #D44400);margin-top:4px}.overdue-loading[data-v-161c27fa]{opacity:.7}.skeleton[data-v-161c27fa]{background:linear-gradient(90deg,#e0e0e0 25%,#f0f0f0,#e0e0e0 75%);background-size:200% 100%;animation:skeleton-pulse-161c27fa 1.5s ease-in-out infinite;border-radius:4px}@keyframes skeleton-pulse-161c27fa{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-icon[data-v-161c27fa]{width:24px;height:24px;border-radius:50%}.skeleton-title[data-v-161c27fa]{width:180px;height:24px}.skeleton-item[data-v-161c27fa]{pointer-events:none}.skeleton-chip[data-v-161c27fa]{width:40px;height:20px}.skeleton-text[data-v-161c27fa]{width:200px;height:16px}.skeleton-badge[data-v-161c27fa]{width:100px;height:20px}:root{--color-primary: #2A5488;--color-primary-light: #3A6A9E;--color-primary-dark: #1E3D66;--color-primary-hover: #1E3D66;--color-text-primary: #001722;--color-text-secondary: #464F57;--color-text-tertiary: #7E878E;--color-text-muted: #464F57;--color-text-disabled: #8C969E;--color-text-inverse: #FFFFFF;--color-bg-page: #F8F9FA;--color-bg-card: #FFFFFF;--color-bg-hover: #F4F5F7;--color-bg-active: #EBECF0;--color-bg-selected: #E3F2FD;--color-bg-input: #F4F5F7;--color-bg-secondary: #F4F5F7;--color-background-tertiary: #F4F5F7;--color-surface: #FFFFFF;--color-surface-primary: #FFFFFF;--color-surface-secondary: #F4F5F7;--color-surface-elevated: #FFFFFF;--color-surface-hover: #F4F5F7;--color-surface-selected: #E5ECF9;--color-border: #D1D5DB;--color-border-light: #ECECEC;--color-border-default: #D1D5DB;--color-border-dark: #8C969E;--color-border-hover: #9CA3AF;--color-border-focus: #2A5488;--color-link: #235BA8;--color-link-hover: #1A4580;--color-link-action: #0052CC;--color-link-action-hover: #0747A6;--color-success: #447228;--color-success-light: #E8F0E4;--color-success-dark: #2D4C1A;--color-success-text: #006644;--color-success-bg: #E3FCEF;--color-warning: #D87F00;--color-warning-light: #FFF4E5;--color-warning-dark: #B36A00;--color-error: #D44400;--color-error-light: #FDEAE3;--color-error-dark: #A53500;--color-info: #0052CC;--color-info-light: #DEEBFF;--color-info-dark: #0747A6;--color-status-active: #447228;--color-status-active-bg: #E8F0E4;--color-status-inactive: #6B778C;--color-status-inactive-bg: #F4F5F7;--color-status-pending: #D87F00;--color-status-pending-bg: #FFF4E5;--color-status-suspended: #D44400;--color-status-suspended-bg: #FDEAE3;--color-status-error: #D44400;--color-status-error-background: #FDEAE3;--font-family-primary: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica", "Arial", sans-serif;--font-family-body: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-family-heading: "Bitter", serif;--font-family-mono: "SF Mono", "Consolas", "Liberation Mono", monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 28px;--font-size-4xl: 32px;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 40px;--space-7: 48px;--space-8: 56px;--space-9: 64px;--space-10: 72px;--space-11: 80px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 3px;--radius-sm: 3px;--radius-default: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--teardrop-sm: 8px 0 8px 0;--teardrop: 12px 0 12px 0;--teardrop-lg: 16px 0 16px 0;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-default: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 8px 24px rgba(0, 0, 0, .15);--shadow-2xl: 0 12px 32px rgba(0, 0, 0, .2);--shadow-focus: 0 0 0 2px var(--color-primary);--shadow-focus-light: 0 0 0 2px rgba(42, 84, 136, .25);--transition-fast: .1s ease;--transition-default: .2s ease;--transition-slow: .3s ease;--transition-colors: background-color .15s ease, border-color .15s ease, color .15s ease;--transition-transform: transform .2s ease;--transition-opacity: opacity .2s ease;--transition-all: all .2s ease;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800;--header-height: 56px;--sidebar-width: 240px;--sidebar-width-collapsed: 64px;--content-max-width: 1200px;--input-height-sm: 32px;--input-height-default: 40px;--input-height-lg: 48px;--input-padding-x: 12px;--input-padding-y: 8px;--btn-padding-x: 16px;--btn-padding-y: 8px;--btn-padding-x-sm: 12px;--btn-padding-y-sm: 6px;--btn-padding-x-lg: 24px;--btn-padding-y-lg: 12px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family-primary);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-page);overflow-x:hidden}#app{width:100%;min-height:100vh}h1{font-family:var(--font-family-heading);font-size:var(--font-size-4xl);font-weight:600;color:var(--color-primary);line-height:1.2}h2{font-family:var(--font-family-heading);font-size:var(--font-size-3xl);font-weight:600;color:var(--color-primary);line-height:1.2}h3{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);font-weight:600;color:var(--color-primary);line-height:1.3}h4{font-family:var(--font-family-heading);font-size:var(--font-size-xl);font-weight:600;color:var(--color-primary);line-height:1.3}h5{font-family:var(--font-family-heading);font-size:var(--font-size-lg);font-weight:600;color:var(--color-primary);line-height:1.4}h6{font-family:var(--font-family-heading);font-size:var(--font-size-md);font-weight:600;color:var(--color-primary);line-height:1.4}a{color:var(--color-link);text-decoration:none}a:hover{color:var(--color-link-hover);text-decoration:underline}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:14px;color:var(--color-text-primary)}select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%236B778C' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 8px center!important;padding-right:32px!important;cursor:pointer}.skip-link{position:absolute;top:0;left:0;background:var(--color-primary);color:#fff;padding:8px 16px;z-index:10000;text-decoration:none;font-weight:600;border-radius:0 0 var(--radius-default) 0;transform:translateY(-100%)}.skip-link:focus{transform:translateY(0)}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:300;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}.top-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:var(--color-bg-card);border-bottom:var(--border-width-thin) solid var(--color-border-light);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);z-index:100}.header-left{display:flex;align-items:center;gap:8px}.header-center{flex:1;max-width:760px;margin:0 24px}.header-right{display:flex;align-items:center;gap:8px}.icon-btn{width:32px;height:32px;border:none;background:transparent;border-radius:var(--radius-default);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);transition:background-color .2s;padding:0}.icon-btn:hover{background-color:var(--color-bg-hover)}.icon-btn .material-symbols-outlined{font-size:24px}.icon-btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.brand-logo{display:flex;align-items:center;gap:8px;margin-left:12px;text-decoration:none}.brand-logo:hover,.brand-logo:hover .brand-logo-text{text-decoration:none}.brand-logo img{display:block;max-width:81px;height:auto}.brand-logo-text{font-family:var(--font-family-body);font-size:18px;font-weight:400;color:var(--color-primary);white-space:nowrap;margin-top:4px}.search-bar{display:flex;align-items:center;background:var(--color-bg-hover);border-radius:var(--radius-default);padding:8px 12px;gap:8px;position:relative}.search-bar .material-symbols-outlined{color:var(--color-text-secondary);flex-shrink:0;font-size:20px}.search-bar input{flex:1;border:none;background:transparent;outline:none;font-family:var(--font-family-primary);font-size:14px;font-weight:400;color:var(--color-text-primary)}.search-bar input::placeholder{color:var(--color-text-secondary)}.user-avatar-small{width:32px;height:32px;border-radius:50%;background:#0052cc;color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.app-switcher-container,.help-menu-container,.user-menu-container{position:relative}.app-switcher-dropdown,.help-dropdown,.user-dropdown{position:absolute;top:calc(100% + 8px);background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-default);z-index:300}.app-switcher-dropdown.show,.help-dropdown.show,.user-dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.app-switcher-dropdown{left:0;width:360px}.help-dropdown,.user-dropdown{right:0;min-width:200px}.app-switcher-section{padding:16px 0}.app-switcher-section-title{padding:8px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.app-switcher-item{display:flex;align-items:center;gap:12px;padding:10px 16px;text-decoration:none;transition:background var(--transition-fast)}.app-switcher-item:hover{background:var(--color-bg-hover);text-decoration:none}.app-icon{width:32px;height:32px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;overflow:hidden}.app-icon img{width:100%;height:100%;object-fit:contain}.app-item-text{flex:1}.app-item-title{font-size:14px;font-weight:600;color:var(--color-text-primary)}.app-item-subtitle{font-size:12px;color:var(--color-text-secondary)}.dropdown-item{display:flex;align-items:center;gap:12px;padding:10px 16px;color:var(--color-text-primary);text-decoration:none;font-size:14px;transition:background var(--transition-fast)}.dropdown-item:hover{background:var(--color-bg-hover);text-decoration:none}.dropdown-item:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:-2px;background:var(--color-bg-hover)}.dropdown-item .material-symbols-outlined{font-size:20px;color:var(--color-text-secondary)}.dropdown-divider{height:1px;background:var(--color-border-light);margin:8px 0}.user-dropdown-header{padding:16px;border-bottom:1px solid var(--color-border-light)}.user-dropdown-name{font-size:14px;font-weight:600;color:var(--color-text-primary)}.user-dropdown-email{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.user-dropdown-org{font-size:12px;color:var(--color-text-secondary);margin-top:4px}.sidebar{width:var(--sidebar-width);background:var(--color-bg-card);border-right:1px solid var(--color-border-light);display:flex;flex-direction:column;position:fixed;left:0;top:var(--header-height);bottom:0;overflow-y:auto;transition:transform var(--transition-slow),width var(--transition-slow);z-index:50}.sidebar.collapsed{transform:translate(-100%)}.sidebar-nav{flex:1;padding:12px 8px}.nav-item{display:block;margin-bottom:2px}.nav-item>a,.nav-item.expandable .nav-link{display:flex;align-items:center;padding:10px 12px;color:var(--color-text-primary);text-decoration:none;border-radius:3px;cursor:pointer;transition:background-color .15s ease;position:relative;font-weight:400}button.nav-link{background:none;border:none;width:100%;text-align:left;font-family:inherit;font-size:inherit}.nav-item>a:hover,.nav-item.expandable .nav-link:hover{background-color:#edf1f7;text-decoration:none}.nav-item>a:focus-visible,.nav-item.expandable .nav-link:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:-2px}.nav-item.active>a,.nav-item.active.expandable .nav-link{background-color:#f0f0f0;color:var(--color-text-primary);font-weight:600}.nav-item.expandable.expanded .nav-link{color:var(--color-text-primary);font-weight:600;background-color:#edf1f7}.nav-icon{flex-shrink:0;margin-right:12px;font-size:20px}.nav-text{flex:1;font-size:14px}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:14px;font-weight:600;color:#fff;background-color:#0052cc;border-radius:10px;margin-left:8px}.nav-item.active .nav-badge{background-color:#0747a6}.nav-chevron{flex-shrink:0;transition:transform var(--transition-default);font-size:20px;margin-left:auto}.nav-item.expandable.expanded .nav-chevron{transform:rotate(90deg)}.sub-menu{display:none;padding:8px 0 8px 24px;margin-top:4px;margin-bottom:4px;margin-left:20px;border-left:3px solid #DFE1E6}.nav-item.expandable.expanded .sub-menu{display:block}.sub-menu a{display:block;padding:8px 12px;color:var(--color-text-primary);text-decoration:none;border-radius:3px;font-size:14px;font-weight:400;margin-bottom:1px;margin-right:8px;transition:background-color .15s ease}.sub-menu a:hover{background-color:#edf1f7;text-decoration:none}.sub-menu a.active{font-weight:600;background-color:#f0f0f0}.sidebar-footer{padding:16px 8px;border-top:1px solid #DFE1E6}.main-container{display:flex;padding-top:var(--header-height)}.scrollable-wrapper{flex:1;margin-left:var(--sidebar-width);transition:margin-left var(--transition-slow);height:calc(100vh - var(--header-height));overflow-y:auto;display:flex;flex-direction:column;background:var(--color-bg-hover)}.scrollable-wrapper.sidebar-collapsed{margin-left:0}.main-content{padding:0 32px;background:var(--color-bg-hover);flex:1}.content-header{display:flex;justify-content:space-between;align-items:flex-start;padding:48px 0;flex-wrap:wrap;gap:16px}.content-header-left{display:flex;flex-direction:column;flex:1;min-width:0}.content-header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.content-header-right .btn-primary,.content-header-right .btn-secondary{display:inline-flex;align-items:center;gap:6px}.content-header-right .btn-primary .material-symbols-outlined,.content-header-right .btn-secondary .material-symbols-outlined{font-size:20px}.content-subtitle{color:var(--color-text-secondary);font-size:14px;margin:4px 0 0}.content-header:has(.content-subtitle):not(:has(.content-header-right)){flex-direction:column;align-items:flex-start;gap:0}.content-header h1{font-family:var(--font-family-heading);font-size:var(--font-size-4xl);font-weight:600;color:var(--color-primary);letter-spacing:-.5px;margin:0}.content-body{padding:0 0 40px}.content-body.library-content{padding:0 0 48px;max-width:1400px;margin:0 auto;width:100%}.library-content-inner{padding:0}.back-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-family-body);font-size:14px;font-weight:600;color:var(--color-text-muted);text-decoration:none;transition:color .2s}.back-link:hover{color:var(--color-text-primary);text-decoration:none}.back-link .material-symbols-outlined{font-size:20px}.content-header:has(.back-link){flex-direction:column;align-items:flex-start;gap:0}.content-header .back-link{margin-bottom:48px}.content-header:has(.back-link) h1{margin-bottom:0}.content-header:has(.back-link):not(:has(h1)){padding-bottom:0}.content-header:has(.back-link):not(:has(h1)) .back-link{margin-bottom:0}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:14px}.breadcrumb a{color:var(--color-text-secondary);text-decoration:none}.breadcrumb a:hover{color:var(--color-text-primary);text-decoration:underline}.breadcrumb .material-symbols-outlined{font-size:16px;color:#97a0af}.breadcrumb span:last-child{color:var(--color-text-primary);font-weight:500}.global-footer{width:100%;padding:48px;border-top:1px solid #DFE1E6;background:var(--color-bg-card);font-size:14px;color:var(--color-text-secondary)}.footer-content-wrapper{display:flex;justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto}.footer-right{display:flex;gap:24px}.footer-right a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-default)}.footer-right a:hover{color:var(--color-link-action);text-decoration:underline}.dashboard-layout{display:flex;flex-direction:column;gap:32px}.dashboard-section{padding:32px;background:var(--color-bg-card);border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--teardrop)}.dashboard-section-full{width:100%}.browse-libraries-section{background:transparent;border:none;padding:0}.dashboard-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dashboard-section .section-header h2{margin:0}.section-title{margin:0 0 16px}.dashboard-section .section-link{font-size:14px;color:var(--color-link-action);text-decoration:none}.dashboard-section .section-link:hover{text-decoration:underline}.overdue-alert-section{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:8px;padding:20px 24px}.overdue-alert-section .overdue-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.overdue-header-content{display:flex;align-items:center;gap:12px}.overdue-header-content .overdue-icon{font-size:24px;color:var(--color-error)}.overdue-alert-section .overdue-header h2,.overdue-alert-section .section-title{color:var(--color-error);margin:0}.overdue-items-list{display:flex;flex-direction:column;gap:8px}.overdue-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:6px;text-decoration:none;transition:box-shadow var(--transition-fast)}.overdue-item:hover{box-shadow:0 2px 8px #0000001a;text-decoration:none}.overdue-item-info{display:flex;align-items:center;gap:12px;min-width:0}.overdue-item-title{font-size:15px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overdue-item-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.overdue-badge{font-size:13px;font-weight:600;color:var(--color-error);background:#fff;border:1px solid var(--color-error);padding:4px 10px;border-radius:4px}.overdue-item-meta .material-symbols-outlined{font-size:20px;color:var(--color-text-tertiary)}.course-cards-list{display:flex;flex-direction:column;gap:1px;background:var(--color-border-light);border:1px solid var(--color-border-default);border-radius:6px}.course-cards-list .course-card-row:first-child{border-radius:6px 6px 0 0}.course-cards-list .course-card-row:last-child{border-radius:0 0 6px 6px}.course-cards-list .course-card-row:only-child{border-radius:6px}.course-card-row{display:grid;grid-template-columns:40px 1fr 130px 180px 150px;gap:16px;align-items:center;padding:16px;background:var(--color-bg-card);transition:background-color var(--transition-fast)}.course-card-row:hover{background:var(--color-bg-hover)}.course-card-row-compact{grid-template-columns:1fr 120px 160px 140px}.course-card-row-3col{grid-template-columns:1fr 120px 140px}.course-card-row-admin{grid-template-columns:1fr 110px 150px 56px;padding-left:48px}.course-card-row-admin .course-card-action{min-width:56px;justify-content:center}.course-card-left{display:flex;align-items:flex-start;justify-content:center;padding-top:2px;width:40px;flex-shrink:0}.course-card-main{min-width:0;display:flex;flex-direction:column;gap:4px}.course-card-title{font-size:16px;font-weight:600;color:#0052cc;text-decoration:none;display:block}.course-card-title:hover{color:#0747a6;text-decoration:underline}.course-card-line2,.course-card-line3,.course-card-line4{display:flex;flex-wrap:wrap;gap:16px;font-size:14px;color:var(--color-text-secondary)}.course-card-line2:empty,.course-card-line3:empty,.course-card-line4:empty{display:none}.course-card-meta-item{display:flex;align-items:center;gap:4px}.course-card-meta-item .material-symbols-outlined{font-size:14px;color:var(--color-text-muted)}.course-card-type{display:flex;align-items:center;justify-content:flex-start;min-width:120px}.course-card-credits{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:140px}.course-card-action{min-width:150px;text-align:right;flex-shrink:0;display:flex;justify-content:flex-end}@media(max-width:768px){.course-card-row{grid-template-columns:1fr;gap:var(--space-2)}.course-card-row-3col{grid-template-columns:1fr}.course-card-type,.course-card-action{justify-content:flex-start}}.course-card-progress-ring{position:relative;width:36px;height:36px}.course-card-progress-ring .circular-progress{width:100%;height:100%;transform:rotate(-90deg)}.course-card-progress-ring .circle-bg{stroke:var(--color-border-light)}.course-card-progress-ring .circle-progress{stroke-linecap:round;transition:stroke-dasharray var(--transition-slow)}.course-card-progress-ring .progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:700;color:var(--color-text-secondary)}.pathway-cards-list{display:flex;flex-direction:column;background:var(--color-bg-card);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--radius-lg)}.pathway-cards-list .pathway-card-row:not(:last-child){border-bottom:var(--border-width-thin) solid var(--color-border-light)}.pathway-card-row{display:grid;grid-template-columns:40px 1fr 140px 150px;gap:16px;align-items:center;padding:16px;background:var(--color-bg-card);transition:background-color .15s ease}.pathway-card-row:hover{background:var(--color-bg-hover)}.pathway-cards-list-admin .pathway-card-row{grid-template-columns:40px 1fr 130px 56px}.pathway-cards-list-admin .pathway-card-action{justify-content:center}.pathway-card-left{display:flex;align-items:flex-start;justify-content:center;padding-top:2px}.pathway-card-icon{color:var(--color-primary)}.pathway-card-icon .material-symbols-outlined{font-size:32px}.pathway-card-main{min-width:0;display:flex;flex-direction:column;gap:4px}.pathway-card-title{font-family:var(--font-family-body);font-size:16px;font-weight:600;color:var(--color-link-action);text-decoration:none;line-height:1.4}.pathway-card-title:hover{color:var(--color-link-action-hover);text-decoration:underline}.pathway-card-line2{display:flex;align-items:flex-start;gap:8px}.pathway-card-description{font-size:14px;color:var(--color-text-secondary);line-height:1.4}.pathway-card-line3{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--color-text-secondary)}.pathway-card-meta-item{display:inline-flex;align-items:center;gap:4px}.pathway-card-meta-item .material-symbols-outlined{font-size:16px}.pathway-card-type{display:flex;align-items:center;justify-content:flex-start}.pathway-card-action{display:flex;align-items:center;justify-content:flex-end}@media(max-width:1024px){.pathway-card-row{grid-template-columns:40px 1fr 140px}.pathway-card-action{display:none}}@media(max-width:768px){.pathway-card-row{grid-template-columns:1fr;gap:12px;position:relative;padding-right:48px}.pathway-card-left{position:absolute;top:12px;right:12px}.pathway-card-type{order:-1}}.course-card-calendar-dropdown{position:relative;display:inline-flex}.course-card-calendar-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;padding:2px 6px;margin:-2px -6px;border-radius:4px;transition:background-color var(--transition-fast),color var(--transition-fast)}.course-card-calendar-btn:hover{background-color:var(--color-bg-hover);color:var(--color-primary)}.course-card-calendar-menu{position:absolute;top:100%;left:0;margin-top:4px;min-width:180px;background:var(--color-bg-card);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:var(--shadow-lg);z-index:200;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast)}.course-card-calendar-dropdown.open .course-card-calendar-menu{opacity:1;visibility:visible;transform:translateY(0)}.filter-tag{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast);white-space:nowrap}.filter-tag:hover{color:var(--color-link-action);text-decoration:underline}.filter-tag-more{color:var(--color-text-muted);font-size:13px;margin-left:4px}.activity-item{display:flex;align-items:flex-start;gap:12px;padding:16px 0;border-bottom:var(--border-width-thin) solid var(--color-border-light)}.activity-avatar{width:40px;height:40px;background:var(--color-bg-hover);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-content{flex:1}.activity-text{font-size:var(--font-size-base);color:var(--color-text-primary);margin-bottom:4px}.activity-course-link{color:var(--color-link-action);text-decoration:none;font-weight:600;transition:color var(--transition-default)}.activity-course-link:hover{color:var(--color-link-action-hover);text-decoration:underline}.activity-time{font-size:var(--font-size-base);color:var(--color-text-secondary)}.library-browse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.library-browse-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--color-bg-card);border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-lg);text-decoration:none;transition:all var(--transition-default)}.library-browse-card:hover{border-color:#b3bac5;box-shadow:0 2px 8px #00000014;text-decoration:none}.library-browse-card.library-cle{border-left:4px solid #2A5488}.library-browse-card.library-cpe{border-left:4px solid #00875A}.library-browse-card.library-skills{border-left:4px solid #00B8D9}.library-browse-card.library-microlearning{border-left:4px solid #FF8B00}.library-browse-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-hover);border-radius:var(--radius-lg);flex-shrink:0}.library-browse-card.library-cle .library-browse-icon{background:#e8f0f8;color:var(--color-primary)}.library-browse-card.library-cpe .library-browse-icon{background:#e6f6f2;color:#00875a}.library-browse-card.library-skills .library-browse-icon{background:#e6f8fb;color:#00b8d9}.library-browse-card.library-microlearning .library-browse-icon{background:#fff4e5;color:#ff8b00}.library-browse-info{flex:1;min-width:0}.library-browse-info h3{font-size:var(--font-size-md);font-weight:600;margin:0 0 4px}.library-browse-info p{font-size:14px;color:var(--color-text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-browse-arrow{color:#97a0af;font-size:20px;flex-shrink:0}.chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:12px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.3px;background:#f4f5f7;color:var(--color-text-secondary);border:1px solid #DFE1E6;white-space:nowrap}.chip .material-symbols-outlined{font-size:14px}.chip-xs{padding:2px 6px;font-size:11px;gap:3px}.chip-xs .material-symbols-outlined{font-size:12px}.chip-sm{padding:3px 8px;font-size:12px}.chip-md{padding:4px 10px;font-size:13px;gap:5px}.chip-md .material-symbols-outlined{font-size:16px}.chip-lg{padding:6px 12px;font-size:14px;gap:6px}.chip-lg .material-symbols-outlined{font-size:18px}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip-cle{background:#deebff;border-color:#4c9aff;color:#0747a6}.chip-cpe{background:#e3fcef;border-color:#57d9a3;color:#064}.chip-microlearning{background:#fff3e0;border-color:#ffb74d;color:#e65100}.chip-skills{background:#f3e5f5;border-color:#ce93d8;color:#7b1fa2}.chip-pathway{background:#eae6ff;border-color:#b8acf6;color:#5243aa}.chip-status-active,.chip-status-completed,.chip-status-approved,.chip-status-published,.chip-success{background:var(--color-success-light);border-color:var(--color-success);color:var(--color-success)}.chip-status-inactive,.chip-status-expired,.chip-danger{background:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.chip-status-pending,.chip-warning,.chip-past-due{background:var(--color-warning-light);border-color:var(--color-warning);color:#b27900}.chip-status-trial,.chip-status-in_progress,.chip-status-new{background:var(--color-info-light);border-color:var(--color-info);color:var(--color-info)}.chip-status-suspended{background:#fff4e5;border-color:#ff8b00;color:#ff8b00}.chip-status-cancelled,.chip-status-draft,.chip-status-unpublished,.chip-status-archived,.chip-status-self,.chip-neutral,.chip-muted,.chip-placeholder{background:#f4f5f7;border-color:#97a0af;color:#5e6c84}.chip-status-planned,.chip-status-secondary{background:#ede9fe;border-color:#a78bfa;color:#7c3aed}.chip-barbri,.chip-type-barbri{background:#e8eef5;border-color:var(--color-primary);color:var(--color-primary)}.chip-internal{background:#e8eaf6;border-color:#9fa8da;color:#3949ab}.chip-you{background:#e0f2f1;border-color:#4db6ac;color:#00897b}.chip-popular{background:#fff8e1;border-color:#ffd54f;color:#f57f17}.chip-type-manual,.chip-type-custom{background:#e0f7fa;border-color:#4dd0e1;color:#00838f}.chip-type-auto{background:#f3e5f5;border-color:#ce93d8;color:#7b1fa2}.chip-type-cle{background:#e8f4fd;border-color:#64b5f6;color:#1565c0}.chip-type-cpe{background:#fff3e0;border-color:#ffb74d;color:#e65100}.chip-default,.chip-credit{background:#f4f5f7;border-color:#dfe1e6;color:var(--color-text-secondary)}.chip-credit-match{background:#e3fcef;border-color:#57d9a3;color:#064}.chip-credit-match .material-symbols-outlined{color:#22c55e}.chip-outline{background:transparent;border-color:var(--color-border-default);color:var(--color-text-secondary)}.chip-level{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.chip-practice-area{background:#fef3c7;border-color:#fcd34d;color:#92400e}.chip-duration{background:#ecfdf5;border-color:#6ee7b7;color:#047857}.chip-category{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.chip-library,.library-badge{text-transform:uppercase}.library-badge.library-cle,.chip-library-cle{background:#e3f2fd;border-color:#64b5f6;color:#1565c0}.library-badge.library-cpe,.chip-library-cpe{background:#fff3e0;border-color:#ffb74d;color:#e65100}.library-badge.library-skills,.chip-library-skills{background:#e8f5e9;border-color:#81c784;color:#2e7d32}.library-badge.library-microlearning,.chip-library-microlearning{background:#f3e5f5;border-color:#ba68c8;color:#7b1fa2}.chip-interactive{cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.chip-interactive:hover{background:#ebecf0;border-color:#c1c7d0;color:var(--color-text-primary)}.chip-interactive.chip-credit:hover{background:#ebecf0;border-color:#c1c7d0}.chip-interactive.chip-credit-match:hover{background:#d3f9e5;border-color:#36b37e}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:var(--color-text-primary);color:#fff;border:none;border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-default);text-decoration:none}.btn-primary:hover{background:#1a2f4d;color:#fff;text-decoration:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-text-primary);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-default);text-decoration:none}.btn-secondary:hover{background:var(--color-bg-hover);color:var(--color-text-primary);text-decoration:none}.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn-destructive{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:var(--color-bg-card);color:var(--color-error);border:1px solid var(--color-error);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-default);text-decoration:none}.btn-destructive:hover{background:var(--color-error-light);color:var(--color-error);text-decoration:none}.btn-destructive:focus-visible{outline:2px solid var(--color-error);outline-offset:2px}.btn-xs{padding:4px 8px;font-size:12px;gap:4px}.btn-xs .material-symbols-outlined{font-size:14px}.btn-sm{padding:6px 12px;font-size:13px;gap:6px}.btn-sm .material-symbols-outlined{font-size:16px}.btn-lg{padding:12px 24px;font-size:16px;gap:8px}.btn-lg .material-symbols-outlined{font-size:20px}.btn-xl{padding:14px 28px;font-size:18px;gap:10px}.btn-xl .material-symbols-outlined{font-size:22px}.btn-table-action{display:inline-block;padding:6px 12px;font-size:14px;font-weight:500;white-space:nowrap;border-radius:var(--radius-default);text-decoration:none;transition:all var(--transition-fast)}.btn-table-action.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-secondary);border:none}.btn-table-action.btn-secondary:hover{background:var(--color-border-default);color:var(--color-text-primary);text-decoration:none}.btn-table-action.btn-outline{background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border-dark)}.btn-table-action.btn-outline:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-text-primary);text-decoration:none}.btn-table-action:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn-icon-only{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;border-radius:var(--radius-default);cursor:pointer;color:var(--color-text-muted);transition:all var(--transition-fast)}.btn-icon-only:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-icon-only:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn-icon-only.saved{color:var(--color-primary)}.btn-icon-only.saved .material-symbols-outlined{font-variation-settings:"FILL" 1}.table-container{overflow:visible;border-radius:var(--radius-default);border:1px solid var(--color-border-light);background:var(--color-surface-primary);margin-bottom:var(--space-2)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-surface-secondary);border-bottom:1px solid var(--color-border-light)}.data-table td{padding:12px 16px;border-bottom:1px solid var(--color-border-light);vertical-align:middle;font-size:14px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-surface-hover)}.user-name-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:36px;height:36px;border-radius:50%;background:#0052cc;color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-name-info{display:flex;flex-direction:column;gap:2px}.user-name-link{font-weight:500;color:var(--color-text-primary);text-decoration:none}.user-name-link:hover{color:var(--color-primary);text-decoration:underline}.user-email{font-size:13px;color:var(--color-text-secondary)}.table-actions-menu{position:relative}.table-menu-btn{background:none;border:none;padding:4px;cursor:pointer;border-radius:4px;color:var(--color-text-secondary)}.table-menu-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.table-dropdown-menu{display:none;position:absolute;right:0;top:100%;background:var(--color-surface-primary);border:1px solid var(--color-border-light);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:1000;padding:4px 0}.table-dropdown-menu.show{display:block}.dropdown-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;border:none;background:none;font-size:14px;color:var(--color-text-primary);cursor:pointer;text-align:left}.dropdown-menu-item:hover{background:var(--color-surface-hover)}.dropdown-menu-item .material-symbols-outlined{font-size:20px;color:var(--color-text-secondary)}.dropdown-menu-item-danger,.dropdown-menu-item-danger .material-symbols-outlined{color:var(--color-error)}.role-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600}.role-learner{background:#e3f2fd;color:#1565c0}.role-org-owner,.role-org-admin,.role-admin{background:#ede7f6;color:#5e35b1}.role-org-manager,.role-manager{background:#e8f5e9;color:#2e7d32}.pagination-bar{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.results-count{font-size:14px;color:var(--color-text-secondary)}.pagination-controls{display:flex;align-items:center;gap:8px}.pagination-controls label{font-size:14px;color:var(--color-text-secondary);font-weight:400}.pagination-controls .per-page-select,.pagination-controls .page-info{margin-right:16px}.per-page-select{padding:6px 28px 6px 10px;border:1px solid var(--color-border-light);border-radius:3px;font-family:var(--font-family-body);font-size:14px;font-weight:500;color:var(--color-text-secondary);background:var(--color-surface-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%236B778C'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.per-page-select:hover{border-color:var(--color-border-default)}.page-info{font-size:14px;color:var(--color-text-secondary)}.page-nav-buttons{display:flex;gap:8px}.page-nav-btn{width:40px;height:40px;border:1px solid var(--color-border-light);background:var(--color-surface-primary);border-radius:3px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.page-nav-btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-default)}.page-nav-btn:disabled{opacity:.3;cursor:not-allowed}.page-nav-btn .material-symbols-outlined{font-size:20px;color:var(--color-text-primary)}.profile-header{display:flex;align-items:flex-start;gap:24px;padding:32px 0;max-width:1120px;margin:0 auto}.profile-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,#4B7BB5 100%);color:#fff;font-size:24px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-avatar.large{width:80px;height:80px;font-size:28px}.profile-info{flex:1;min-width:0}.profile-name{margin:0 0 4px}.profile-subtitle{font-size:16px;color:var(--color-text-secondary);margin:0 0 12px}.profile-meta{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.profile-meta .meta-item{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary)}.profile-meta .meta-item .material-symbols-outlined{font-size:18px;color:var(--color-text-muted)}.profile-meta .meta-item a{color:var(--color-link-action);text-decoration:none}.profile-meta .meta-item a:hover{text-decoration:underline}.profile-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.actions-menu-container{position:relative}.actions-menu-toggle{display:inline-flex;align-items:center;gap:6px}.btn-secondary.actions-menu-toggle{width:auto;height:auto;padding:8px 12px;gap:6px;background:var(--color-bg-card);border:var(--border-width-thin) solid var(--color-border-default);color:var(--color-text-muted);font-size:14px;font-weight:500}.btn-secondary.actions-menu-toggle:hover{background:var(--color-bg-hover);border-color:var(--color-border-default);color:var(--color-text-primary)}.btn-secondary.actions-menu-toggle .material-symbols-outlined{font-size:16px}.actions-dropdown{position:absolute;top:100%;right:0;min-width:200px;background:var(--color-surface-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-default);box-shadow:0 4px 12px #00000026;z-index:100;padding:4px 0;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease}.actions-menu-container.open .actions-dropdown,.actions-dropdown.show{opacity:1;visibility:visible;transform:translateY(4px)}.actions-dropdown .dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:14px;color:var(--color-text-primary);text-decoration:none;border:none;background:none;width:100%;cursor:pointer;text-align:left}.actions-dropdown .dropdown-item:hover{background:var(--color-bg-hover)}.actions-dropdown .dropdown-item .material-symbols-outlined{font-size:18px;color:var(--color-text-secondary)}.actions-dropdown .dropdown-divider{height:1px;background:#dfe1e6;margin:4px 0}.detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border-light);margin-bottom:24px}.detail-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:600;color:var(--color-text-secondary);text-decoration:none;transition:all .15s ease;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.detail-tab .material-symbols-outlined{font-size:20px}.detail-tab:hover{color:var(--color-text-primary);background:var(--color-surface-hover)}.detail-tab.active{color:var(--color-link-action);border-bottom-color:var(--color-link-action)}.tab-count{background:var(--color-bg-hover);padding:2px 8px;border-radius:10px;font-size:var(--font-size-base)}.detail-tab.active .tab-count{background:var(--color-info-light);color:var(--color-primary)}.tab-empty-state{text-align:center;padding:48px 24px;color:var(--color-text-secondary)}.tab-empty-state .material-symbols-outlined{font-size:48px;color:var(--color-text-tertiary);margin-bottom:12px;display:block}.tab-empty-state p{margin-bottom:var(--space-3)}.progress-cell{display:flex;align-items:center;gap:8px}.progress-bar-sm{flex:1;max-width:200px;height:6px;background:var(--color-bg-hover);border-radius:3px;overflow:hidden}.progress-cell .progress-bar-sm{width:80px;flex-shrink:0}.progress-fill-sm{height:100%;background:var(--color-link-action);border-radius:3px;transition:width .3s ease}.progress-text-sm{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.empty-state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;background:#fafbfc;border:1px dashed #DFE1E6;border-radius:8px}.empty-state-container.compact{padding:32px 24px}.empty-state-container.compact .empty-state-icon{width:56px;height:56px}.empty-state-container.compact .empty-state-icon .material-symbols-outlined{font-size:28px}.empty-state-container.inline{border:none;background:transparent;padding:40px 16px}.empty-state-container.inline .empty-state-icon{width:48px;height:48px}.empty-state-container.inline .empty-state-icon .material-symbols-outlined{font-size:24px}.empty-state-icon{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-hover);border-radius:50%;margin-bottom:var(--space-2)}.empty-state-icon .material-symbols-outlined{font-size:40px;color:var(--color-text-secondary)}.empty-state-title{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);font-weight:600;color:var(--color-primary);margin:0 0 var(--space-2)}.empty-state-description{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0 0 var(--space-4);max-width:400px}.empty-state-actions{display:flex;gap:var(--space-2)}.table-empty-state{background:#fafbfc}.table-empty-state td{padding:64px 24px!important;text-align:center;border:none!important}.table-empty-state .empty-state-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2)}.table-empty-state .empty-state-icon,.table-empty-state .empty-state-title,.table-empty-state .empty-state-description{margin-bottom:0}.search-filters-bar{display:flex;gap:12px;margin-bottom:24px;align-items:center}.library-search{flex:1;display:flex;align-items:center;background:var(--color-bg-card);border:1px solid #C1C7D0;border-radius:3px;padding:8px 12px;gap:8px}.library-search:focus-within{border-color:var(--color-border-focus);box-shadow:0 0 0 2px #2a548826}.library-search .material-symbols-outlined{color:var(--color-text-muted);font-size:18px;flex-shrink:0}.library-search input{flex:1;border:none;background:transparent;outline:none;font-family:var(--font-family-body);font-size:14px;padding:0;color:var(--color-text-primary);min-width:0}.library-search input::placeholder{color:#5e6c84;font-weight:400}.library-search input[type=search]::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.search-clear-btn{flex-shrink:0;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.search-clear-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.search-clear-btn .material-symbols-outlined{font-size:18px}.search-btn{flex-shrink:0;padding:8px 16px;white-space:nowrap}.sort-dropdown{display:flex;align-items:center;gap:8px;flex-shrink:0}.sort-dropdown .sort-label{font-size:14px;color:var(--color-text-secondary);white-space:nowrap}.sort-dropdown .sort-select{padding:8px 32px 8px 12px;font-family:var(--font-family-body);font-size:14px;color:var(--color-text-primary);background:var(--color-bg-card);border:1px solid #C1C7D0;border-radius:3px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%23464F57' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.sort-dropdown .sort-select:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 2px #2a548826}.filters-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:var(--color-bg-card);border:1px solid var(--color-text-primary);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:14px;font-weight:600;color:var(--color-text-primary);cursor:pointer;transition:all .2s;white-space:nowrap}.filters-btn:hover{background:var(--color-bg-hover)}.filters-btn .material-symbols-outlined{font-size:18px}.filter-drawer{position:fixed;inset:0;z-index:200;pointer-events:none}.filter-drawer:before{content:"";position:absolute;inset:56px 0 0;background:#00000080;opacity:0;transition:opacity .3s ease;z-index:1}.filter-drawer.open{pointer-events:auto}.filter-drawer.open:before{opacity:1}.filter-drawer .drawer-content{position:absolute;top:56px;right:0;height:calc(100vh - 56px);width:400px;background:var(--color-bg-card);box-shadow:-4px 0 12px #00000026;transform:translate(100%);transition:transform .3s ease;overflow-y:auto;padding:24px 24px 0;z-index:2;pointer-events:auto;box-sizing:border-box;display:flex;flex-direction:column}.filter-drawer.open .drawer-content{transform:translate(0)}.drawer-overlay{position:fixed;inset:56px 0 0;background:#00000080;z-index:199;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.drawer-overlay.visible{opacity:1;visibility:visible}.drawer-close-btn{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:transparent;border-radius:var(--radius-default);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.drawer-close-btn:hover{background:var(--color-bg-hover)}.drawer-close-btn .material-symbols-outlined{font-size:24px;color:var(--color-text-muted)}.drawer-title{font-family:var(--font-family-heading);font-size:24px;font-weight:600;color:var(--color-primary);margin-bottom:24px}.filter-section{border-bottom:1px solid var(--color-border-light);margin-bottom:16px}.filter-section:last-of-type{border-bottom:none}.filter-section-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 0;cursor:pointer;-webkit-user-select:none;user-select:none;background:none;border:none;font:inherit;text-align:left}.filter-section-header:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-default)}.filter-section-title{font-family:var(--font-family-body);font-size:14px;font-weight:600;color:var(--color-text-primary)}.filter-section-header .material-symbols-outlined{font-size:20px;color:var(--color-text-muted);transition:transform .2s ease}.filter-section.collapsed .filter-section-header .material-symbols-outlined{transform:rotate(-90deg)}.filter-section-content{padding-bottom:16px;display:flex;flex-direction:column}.filter-section.collapsed .filter-section-content{display:none}.filter-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;padding:10px 12px;margin:4px 0;font-family:var(--font-family-body);font-size:14px;color:var(--color-text-primary);border-radius:6px;transition:background-color .15s ease}.filter-checkbox:hover{background-color:var(--color-bg-hover)}.filter-checkbox input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;min-width:18px;border:2px solid #DFE1E6;border-radius:var(--radius-default);cursor:pointer;margin:0;position:relative;background:var(--color-bg-card);transition:border-color .15s ease,background-color .15s ease}.filter-checkbox input[type=checkbox]:hover{border-color:#0052cc}.filter-checkbox input[type=checkbox]:checked{border-color:#0052cc;background-color:#0052cc}.filter-checkbox input[type=checkbox]:checked:after{content:"";position:absolute;top:2px;left:5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.filter-checkbox span{flex:1;line-height:1.4}.checkbox-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--color-border-light);border-radius:var(--radius-default);cursor:pointer;transition:background .2s,border-color .2s}.checkbox-item:hover{background:var(--color-bg-hover)}.checkbox-item:has(input:checked){border-color:var(--color-primary);background:var(--color-bg-active)}.checkbox-item input[type=checkbox]{flex-shrink:0;width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.checkbox-item .checkbox-icon{flex-shrink:0;font-size:24px;color:var(--color-primary)}.checkbox-item .checkbox-content{flex:1;min-width:0}.checkbox-item .checkbox-label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);line-height:1.4}.checkbox-item .checkbox-description{display:block;font-size:12px;color:var(--color-text-secondary);margin-top:2px;line-height:1.4}.checkbox-simple{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:8px 0}.checkbox-simple input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:var(--color-primary)}.checkbox-simple .checkbox-content{flex:1;min-width:0}.checkbox-simple .checkbox-label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);line-height:1.4}.checkbox-simple .checkbox-description{display:block;font-size:13px;color:var(--color-text-secondary);margin-top:4px;line-height:1.5}.checkbox-simple--inline .checkbox-content{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.checkbox-simple--inline .checkbox-label{display:inline}.checkbox-simple--inline .checkbox-description{display:inline;margin-top:0}.checkbox-list{display:flex;flex-direction:column;gap:8px}.checkbox-list--compact{gap:4px}.checkbox-list--compact .checkbox-item{padding:8px 12px}.checkbox-list--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.filter-drawer .filter-actions{position:sticky;bottom:0;margin-top:auto;background:var(--color-bg-card);padding:20px 24px 24px;margin-left:-24px;margin-right:-24px;border-top:1px solid var(--color-border-light);display:flex;flex-direction:column;gap:16px;box-sizing:border-box;flex-shrink:0}.filter-apply-btn{width:100%;padding:12px 20px;background:#0d1f3c;color:#fff;border:none;border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.filter-apply-btn:hover{background:#1a2f4d}.filter-apply-btn:active{background:#0a1829}.filter-clear-btn{width:100%}@media(max-width:768px){.search-filters-bar{flex-direction:column;align-items:stretch}.library-search{width:100%}.sort-dropdown{width:100%;justify-content:space-between}.sort-dropdown .sort-select{flex:1}.filters-btn{width:100%;justify-content:center}.filter-drawer .drawer-content{width:100%}}.stats-panel{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stats-card{background:var(--color-bg-card);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:8px}.stats-card-label{font-family:var(--font-family-body);font-size:14px;font-weight:600;color:var(--color-text-secondary)}.stats-card-value-row{display:flex;align-items:baseline;gap:12px}.stats-card-value{font-family:var(--font-family-heading);font-size:40px;font-weight:600;color:var(--color-primary);line-height:1}.stats-card-change{display:flex;align-items:center;gap:2px;font-size:14px;font-weight:600}.stats-card-change.positive{color:var(--color-success)}.stats-card-change.negative{color:var(--color-error)}.stats-card-change .material-symbols-outlined{font-size:18px}@media(max-width:1200px){.stats-panel{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.stats-panel{grid-template-columns:1fr}}.section-header-with-selector{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;min-height:36px}.section-header-with-selector .section-title{margin-bottom:0;min-height:auto}.section-title-period{font-family:var(--font-family-body);font-size:14px;font-weight:400;color:var(--color-text-secondary);margin-left:8px}.time-period-selector{display:flex;gap:0;background:var(--color-bg-secondary);border-radius:var(--radius-default);padding:4px}.period-btn{padding:8px 16px;border:none;background:transparent;font-family:var(--font-family-body);font-size:14px;font-weight:500;color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;text-decoration:none}.period-btn:hover{color:var(--color-text-primary)}.period-btn.active{background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:0 1px 2px #0000000d}.dashboard-two-column{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:992px){.dashboard-two-column{grid-template-columns:1fr}}.trending-toggle{display:flex;gap:0;background:var(--color-bg-secondary);border-radius:var(--radius-default);padding:4px}.trending-toggle-btn{padding:8px 16px;font-family:var(--font-family-body);font-size:14px;font-weight:500;color:var(--color-text-secondary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.trending-toggle-btn:hover{color:var(--color-text-primary)}.trending-toggle-btn.active{background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:0 1px 2px #0000000d}.trending-content-list{display:flex;flex-direction:column;gap:0}.trending-item{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--color-border-light)}.trending-item:first-child{padding-top:0}.trending-item:last-child{border-bottom:none;padding-bottom:0}.trending-rank{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);border-radius:50%;font-family:var(--font-family-body);font-size:14px;font-weight:700;color:var(--color-text-secondary);flex-shrink:0}.trending-item-content{flex:1;min-width:0}.trending-course-link{font-family:var(--font-family-body);font-size:16px;font-weight:600;color:var(--color-link);text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trending-course-link:hover{color:var(--color-link-hover);text-decoration:underline}.trending-item-meta{font-family:var(--font-family-body);font-size:14px;color:var(--color-text-secondary);margin-top:4px}.trending-item-meta .content-separator{margin:0 6px}.activity-feed{display:flex;flex-direction:column;gap:0}.activity-item{display:flex;align-items:flex-start;gap:12px;padding:16px 0;border-bottom:1px solid var(--color-border-light)}.activity-item:first-child{padding-top:0}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-avatar .material-symbols-outlined{color:var(--color-text-secondary);font-size:24px}.activity-content{flex:1;min-width:0}.activity-text{font-family:var(--font-family-body);font-size:15px;color:var(--color-text-primary);line-height:1.4}.activity-user-link{color:var(--color-link);font-weight:600;text-decoration:none}.activity-user-link:hover{text-decoration:underline}.activity-course-link{color:var(--color-link);text-decoration:none}.activity-course-link:hover{text-decoration:underline}.activity-time{font-family:var(--font-family-body);font-size:14px;color:var(--color-text-secondary);margin-top:4px}.activity-org-link{color:var(--color-text-secondary);text-decoration:none}.activity-org-link:hover{color:var(--color-link);text-decoration:underline}.activity-separator{color:var(--color-border-light);margin:0 6px}.load-more-container{display:flex;justify-content:center;padding-top:16px;margin-top:16px;border-top:1px solid var(--color-border-light)}.overdue-item-user{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--color-text-secondary)}.overdue-item-user .material-symbols-outlined{font-size:16px}.overdue-item-due{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--color-text-secondary)}.overdue-item-due .material-symbols-outlined{font-size:16px}.overdue-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;background:var(--color-error);color:#fff;font-size:13px;font-weight:700;border-radius:12px}.jurisdiction-tag{display:inline-flex;align-items:center;gap:2px;padding:4px 8px;background:#f4f5f7;border-radius:4px;font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px}.jurisdiction-tag.user-match{background:#e3fcef;color:#064}.jurisdiction-tag.user-match .material-symbols-outlined{font-size:var(--font-size-sm);color:#22c55e}.jurisdiction-chip-grey{display:inline-flex;align-items:center;gap:2px;padding:4px 8px;background:#f4f5f7;border:none;border-radius:4px;font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;transition:background-color .15s ease}.jurisdiction-chip-grey:hover{background:#ebecf0;color:var(--color-text-primary)}.credits-flyout{position:fixed;top:var(--header-height);right:0;width:400px;height:calc(100vh - var(--header-height));background:var(--color-bg-card);box-shadow:var(--shadow-xl);transform:translate(100%);transition:transform var(--transition-slow);z-index:200;display:flex;flex-direction:column}.credits-flyout.open{transform:translate(0)}.credits-flyout-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-border-light);flex-shrink:0}.credits-flyout-header h2{font-family:var(--font-family-heading);font-size:18px;font-weight:600;color:var(--color-primary);margin:0}.credits-flyout-close-btn{width:32px;height:32px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.credits-flyout-close-btn:hover{background:var(--color-bg-hover)}.credits-flyout-close-btn .material-symbols-outlined{font-size:24px;color:var(--color-text-muted)}.credits-flyout-body{flex:1;overflow-y:auto;padding:24px}.credits-flyout-overlay{position:fixed;top:var(--header-height);left:0;right:0;bottom:0;background:#0000004d;opacity:0;visibility:hidden;transition:opacity var(--transition-default),visibility var(--transition-default);z-index:199}.credits-flyout-overlay.open{opacity:1;visibility:visible}.credits-section-header{font-family:var(--font-family-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin:0 0 12px;padding:0}.credits-section-header:not(:first-child){margin-top:24px}.credits-jurisdiction-card{background:var(--color-bg-card);border:1px solid var(--color-border-light);border-radius:var(--radius-default);padding:16px;margin-bottom:12px}.credits-jurisdiction-card.user-jurisdiction{border-color:var(--color-success);background:#fafffe}.credits-jurisdiction-card .jurisdiction-name{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.credits-jurisdiction-card .user-jur-icon{font-size:18px;color:var(--color-success)}.credits-jurisdiction-card .jurisdiction-details{display:flex;gap:24px}.credits-jurisdiction-card .jurisdiction-col{display:flex;flex-direction:column;gap:2px}.credits-jurisdiction-card .col-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.credits-jurisdiction-card .col-value{font-size:14px;color:var(--color-text-primary)}.credit-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.credit-status-badge .material-symbols-outlined{font-size:14px}.credit-status-badge.status-approved{background:#e3fcef;color:#064}.credit-status-badge.status-pending{background:var(--color-warning-light);color:#b27900}.credit-status-badge.status-available{background:var(--color-info-light);color:var(--color-info)}.flyout-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--color-text-secondary);font-size:14px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--color-text-secondary)}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.error-message{background:var(--color-error-bg, #fee2e2);color:var(--color-error, #dc2626);padding:12px 16px;border-radius:8px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.error-message button{background:none;border:none;color:inherit;cursor:pointer;text-decoration:underline}.loading-state{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-link{color:var(--color-link-action)}.text-link:hover{color:var(--color-link-action-hover);text-decoration:underline}.flyout-error{text-align:center;padding:40px;color:var(--color-error);font-size:14px}.no-credits-message{text-align:center;padding:40px;color:var(--color-text-secondary);font-size:14px}@media(max-width:480px){.credits-flyout{width:100%}}.form-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);padding:24px;margin-bottom:24px}.form-card-title{font-family:var(--font-family-heading);font-size:18px;font-weight:600;color:var(--color-primary);margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid var(--color-border-light)}.form-subsection-title{font-family:var(--font-family-heading);font-size:16px;font-weight:600;color:var(--color-primary);margin:0 0 16px}.form-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-border-light)}.form-card-header .form-card-title{margin:0;padding:0;border:none}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text-primary);font-size:14px}.form-group .required{color:#d44400}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.form-group input[type=text],.form-group input[type=number],.form-group input[type=url],.form-group input[type=email],.form-group input[type=password],.form-group input[type=date],.form-group input[type=datetime-local]{width:100%;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:14px;color:var(--color-text-primary);background:var(--color-bg-card);transition:border-color .15s ease,box-shadow .15s ease}.form-group input:hover{border-color:#b3bac5}.form-group input:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33}.form-group input::placeholder{color:#5e6c84;font-weight:400}.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:14px;line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-bg-card);resize:vertical;min-height:80px;transition:border-color .15s ease,box-shadow .15s ease}.form-group textarea:hover{border-color:#b3bac5}.form-group textarea:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33}.form-group textarea::placeholder{color:#5e6c84;font-weight:400}.form-group select{width:100%;padding:10px 36px 10px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:14px;color:var(--color-text-primary);background-color:var(--color-bg-card);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%236B778C' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s ease,box-shadow .15s ease}.form-group select:hover{border-color:#b3bac5}.form-group select:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#d44400}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 2px #d4440033}.form-group .error-text{display:block;font-size:12px;color:#d44400;margin-top:4px}.form-group .form-help,.form-group .helper-text{display:block;font-size:12px;color:var(--color-text-secondary);margin-top:6px}.required-note{font-size:12px;color:var(--color-text-secondary);margin-bottom:16px}.required-note:before{content:"*";color:#d44400;margin-right:4px}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px}.wizard-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.search-select-container,.search-select-input-wrapper{position:relative}.search-select-input-wrapper .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--color-text-secondary);pointer-events:none}.search-select-input{width:100%;padding:10px 12px 10px 40px;border:1px solid var(--color-border-default);border-radius:var(--radius-default);font-family:var(--font-family-body);font-size:14px;color:var(--color-text-primary);background:var(--color-bg-card);transition:border-color .15s ease,box-shadow .15s ease}.search-select-input:hover{border-color:#b3bac5}.search-select-input:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33}.search-select-input::placeholder{color:#5e6c84}.search-select-dropdown{position:absolute;top:100%;left:0;right:0;z-index:var(--z-dropdown, 100);background:var(--color-bg-card);border:1px solid var(--color-border-default);border-radius:var(--radius-default);box-shadow:0 4px 12px #00000026;max-height:240px;overflow-y:auto;display:none;margin-top:4px}.search-select-dropdown.show{display:block}.search-select-item{padding:10px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .1s}.search-select-item:hover{background:var(--color-bg-hover, #F4F5F7)}.search-select-item .item-name{font-size:14px;color:var(--color-text-primary)}.search-select-item .item-meta{font-size:14px;color:var(--color-text-muted, #6B778C)}.search-select-loading,.search-select-empty{padding:12px 16px;color:var(--color-text-muted, #6B778C);font-size:14px;text-align:center}.search-select-selected{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.search-select-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 8px 4px 12px;background:#e8eef4;border:1px solid #D0D9E3;border-radius:4px;font-size:14px;font-weight:500;color:var(--color-text-primary)}.search-select-tag .tag-text{color:inherit}.search-select-tag .tag-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;background:transparent;color:var(--color-text-muted, #6B778C);cursor:pointer;border-radius:50%;transition:background-color .15s,color .15s;margin-left:2px}.search-select-tag .tag-remove:hover{background:#d444001a;color:#d44400}.search-select-tag .tag-remove .material-symbols-outlined{font-size:16px}.form-card:has(.search-select-container){overflow:visible}.form-card:has(.search-select-container) .form-card-body{overflow:visible}.form-card.has-search-select,.form-card--overflow-visible,.form-card.has-search-select .form-card-body,.form-card--overflow-visible .form-card-body{overflow:visible}.filter-select{padding:8px 32px 8px 12px;font-family:var(--font-family-body);font-size:14px;font-weight:500;color:var(--color-text-primary);background-color:var(--color-bg-card);border:1px solid var(--color-border-default);border-radius:var(--radius-default);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%236B778C' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;min-width:140px;transition:border-color .15s ease,box-shadow .15s ease}.filter-select:hover{border-color:#b3bac5}.filter-select:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33}@media(max-width:1100px){.course-card-row{grid-template-columns:40px 1fr 130px 150px}.course-card-credits{display:none}}@media(max-width:900px){.course-card-row{grid-template-columns:1fr;gap:12px;position:relative;padding-right:48px}.course-card-credits{display:flex;flex-direction:row;flex-wrap:wrap}.course-card-left{position:absolute;top:16px;right:16px}.course-card-type{min-width:auto}.course-card-action{min-width:auto;justify-content:flex-start}.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.scrollable-wrapper{margin-left:0}}@media(max-width:768px){.dashboard-layout{gap:16px}.library-browse-grid{grid-template-columns:1fr}.main-content{padding:0 16px}.content-header{padding:32px 0;flex-direction:column;align-items:stretch}.content-header-left{margin-bottom:16px}.content-header-right{justify-content:flex-start}.content-header h1{font-size:24px}.icon-btn,.action-btn,.table-menu-btn{min-width:44px;min-height:44px}.table-dropdown-menu,.app-switcher-dropdown,.help-dropdown,.user-dropdown{max-width:calc(100vw - 32px)}select{max-width:100%}.dashboard-section{padding:16px}.header-center,.brand-logo-text{display:none}.global-footer{padding:24px 16px}.footer-content-wrapper{flex-direction:column;gap:16px;text-align:center}.footer-right{flex-wrap:wrap;justify-content:center;gap:16px}}@media(max-width:768px){.sidebar-overlay{display:none;position:fixed;top:var(--header-height);left:0;right:0;bottom:0;background:#00000080;z-index:40}.sidebar-overlay.show{display:block}}@media(max-width:480px){.main-content{padding:0 12px}.content-header{padding:24px 0}.content-body{padding:0 0 24px}.dashboard-section,.card,.form-section{padding:12px}.overdue-item{flex-direction:column;align-items:flex-start;gap:8px}.overdue-item-meta{width:100%;justify-content:space-between}.activity-item{padding:12px 0}.activity-avatar{width:32px;height:32px}.activity-avatar .material-symbols-outlined{font-size:20px}.table-container{margin:0 -12px;width:calc(100% + 24px);overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:500px}.data-table th,.data-table td{padding:12px 8px}.search-filters-bar{flex-direction:column;gap:12px}.search-filters-bar .search-input-wrapper{width:100%}.content-header-right .btn-primary,.content-header-right .btn-secondary{width:100%;justify-content:center}}
