@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--color-primary: #2f64f6;--color-primary-hover: #2552cc;--color-primary-active: #1a3b99;--color-primary-light: #ecf2fe;--color-primary-muted: #d3e1fc;--color-bg-page: #f6f9ff;--color-bg-surface: #ecf4ff;--color-bg-card: #ffffff;--color-text-primary: #013652;--color-text-secondary: #3a6381;--color-text-tertiary: #8eb6d9;--color-border-ghost: rgba(142, 182, 217, .15);--color-success: #22c55e;--color-error: #e11d48;--color-warning: #f59e0b;--color-info: #0ea5e9;--color-risk-low: #22c55e;--color-risk-medium: #f59e0b;--color-risk-high: #e11d48;--color-learning-focus: #7c3aed;--color-parent-care: #0ea5e9;--shadow-ambient: 0 12px 24px rgba(1, 54, 82, .04);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 9999px;--topbar-height: 52px;--sidebar-expanded: 240px;--sidebar-collapsed: 64px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;width:100%}body{background:var(--color-bg-page);color:var(--color-text-primary);font-family:Be Vietnam Pro,Inter,system-ui,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}svg{flex-shrink:0;stroke-width:1.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#8eb6d9cc;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#3a6381e6}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.mia-table-toolbar{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin:10px 0 6px;min-height:32px}.mia-table-icon-button{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg-card);border:1px solid var(--color-border-ghost);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;justify-content:center;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.mia-table-icon-button:hover{background:var(--color-primary-light);border-color:var(--color-primary-muted);color:var(--color-primary-active)}.mia-table-icon-button{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:12px;font-weight:850;height:26px;justify-content:center;line-height:1;min-width:26px;padding:0;position:relative}.mia-table-icon-button svg{height:14px;width:14px}.mia-table-icon-badge{align-items:center;background:var(--color-primary);border-radius:var(--radius-pill);color:#fff;display:inline-flex;font-size:9px;font-weight:850;height:14px;justify-content:center;line-height:1;min-width:14px;padding:0 3px;position:absolute;right:-4px;top:-5px}.mia-enhanced-table{table-layout:fixed}.mia-table-scroll-host{max-width:100%;overflow-x:auto;scrollbar-gutter:stable}.mia-enhanced-table .MuiTableCell-root{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mia-enhanced-table .MuiTableCell-root>*{min-width:0}.mia-enhanced-table .mia-table-header-cell-shell{background:color-mix(in srgb,var(--color-bg-page) 72%,var(--color-bg-card));overflow:visible;padding:13px 14px;position:relative;vertical-align:middle}.mia-table-header-cell{align-items:center;display:flex;gap:6px;min-height:30px;min-width:100%;padding-right:7px;position:relative}.mia-table-header-cell.is-right-aligned{justify-content:flex-end}.mia-table-header-sort-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--color-text-primary);cursor:pointer;flex:1;font-size:14px;font-weight:850;line-height:1.3;min-width:0;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.mia-table-header-sort-button:disabled{cursor:default}.mia-table-header-sort-button:hover,.mia-table-header-sort-button.is-sorted{color:var(--color-primary-active)}.mia-table-sort-indicator{color:var(--color-text-tertiary);font-size:11px;font-weight:900;opacity:0;transition:color .14s ease,opacity .14s ease}.mia-table-sort-indicator.is-active,.mia-table-header-cell:hover .mia-table-sort-indicator{opacity:1}.mia-table-sort-indicator.is-active{color:var(--color-primary-active)}.mia-table-header-actions{display:flex;flex-wrap:nowrap;gap:4px;opacity:1}.mia-table-filter-button.is-active{background:var(--color-primary-light);border-color:var(--color-primary-muted);color:var(--color-primary-active);min-width:28px}.mia-table-column-menu-trigger{opacity:0;transition:opacity .14s ease}.mia-table-header-cell-shell:hover .mia-table-column-menu-trigger,.mia-table-header-cell-shell:focus-within .mia-table-column-menu-trigger{opacity:.92}.mia-table-column-resize-handle{bottom:6px;cursor:col-resize;position:absolute;right:-5px;top:6px;width:10px;z-index:10}.mia-table-column-resize-handle:after{background:transparent;border-radius:var(--radius-pill);content:"";height:100%;left:4px;position:absolute;top:0;transition:background-color .12s ease,box-shadow .12s ease;width:2px}.mia-table-header-cell-shell:hover .mia-table-column-resize-handle:after,.mia-table-column-resize-handle.is-resizing:after{background:var(--color-primary);box-shadow:0 0 0 2px #2f64f61f}.mia-table-is-resizing,.mia-table-is-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.mia-table-active-filter-strip{align-items:center;background:var(--color-primary-light);border:1px solid rgba(47,100,246,.08);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px;min-height:42px;padding:8px 12px}.mia-table-active-filter-label{color:var(--color-text-secondary);font-size:12px;font-weight:650}.mia-table-active-filter-chip{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg-card);border:1px solid var(--color-primary-muted);border-radius:var(--radius-pill);color:var(--color-primary-active);cursor:pointer;display:inline-flex;font-size:12px;font-weight:650;gap:6px;max-width:260px;min-height:26px;overflow:hidden;padding:3px 9px 3px 11px;text-overflow:ellipsis;transition:background-color .12s ease,border-color .12s ease,transform .12s ease;white-space:nowrap}.mia-table-active-filter-chip:hover{background:#fff;border-color:var(--color-primary);transform:translateY(-1px)}.mia-table-active-filter-chip-close{color:var(--color-primary);font-size:14px;font-weight:900;line-height:1}.mia-table-active-filter-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:var(--radius-pill);color:var(--color-text-secondary);cursor:pointer;font-size:12px;font-weight:700;margin-left:auto;min-height:26px;padding:3px 9px}.mia-table-active-filter-clear:hover{background:#ffffffb8;color:var(--color-primary-active)}.mia-table-popover{background:var(--color-bg-card);border:1px solid var(--color-border-ghost);border-radius:var(--radius-md);box-shadow:0 16px 42px #01365224;color:var(--color-text-primary);min-width:228px;overflow:hidden;position:fixed;z-index:1700}.mia-table-popover-header{border-bottom:1px solid var(--color-border-ghost);padding:12px 14px 9px}.mia-table-popover-title{color:var(--color-text-primary);font-size:13px;font-weight:850;line-height:1.3}.mia-table-popover-subtitle{color:var(--color-text-tertiary);font-size:11px;line-height:1.35;margin-top:3px;max-width:260px}.mia-table-option-list,.mia-table-column-editor-list{max-height:320px;overflow-y:auto;padding:6px}.mia-table-option-row{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:grid;gap:8px;grid-template-columns:16px minmax(0,1fr) auto;min-height:32px;padding:6px 8px}.mia-table-option-row:hover{background:var(--color-primary-light)}.mia-table-option-row input{accent-color:var(--color-primary);height:14px;margin:0;width:14px}.mia-table-option-label{color:var(--color-text-primary);font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mia-table-option-count{color:var(--color-text-tertiary);font-size:11px;font-weight:750}.mia-table-popover-footer{border-top:1px solid var(--color-border-ghost);padding:6px}.mia-table-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:block;font-size:12px;font-weight:700;min-height:32px;padding:7px 9px;text-align:left;width:100%}.mia-table-menu-item:hover,.mia-table-menu-item:focus,.mia-table-menu-item.is-active{background:var(--color-primary-light);color:var(--color-primary-active)}.mia-table-column-editor-popover{min-width:270px}.mia-table-column-editor-row{align-items:center;border:1px solid transparent;border-radius:var(--radius-sm);cursor:grab;display:flex;gap:8px;min-height:34px;padding:6px 8px;transition:background-color .14s ease,border-color .14s ease}.mia-table-column-editor-row:hover,.mia-table-column-editor-row.is-drop-target{background:var(--color-primary-light);border-color:var(--color-primary-muted)}.mia-table-column-editor-row.is-dragging{opacity:.58}.mia-table-column-editor-grip{color:var(--color-text-tertiary);font-size:14px;font-weight:900;letter-spacing:-3px;line-height:1;width:16px}.mia-table-column-editor-label{color:var(--color-text-primary);flex:1;font-size:12.5px;font-weight:750;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mia-table-column-editor-badge{background:var(--color-primary-light);border:1px solid var(--color-primary-muted);border-radius:var(--radius-sm);color:var(--color-primary-active);font-size:10px;font-weight:800;padding:2px 5px}.mia-table-cell-pinned-left,.mia-table-cell-pinned-left.MuiTableCell-root,.mia-table-cell-pinned-right,.mia-table-cell-pinned-right.MuiTableCell-root{background:var(--color-bg-card);position:sticky}.mia-table-cell-pinned-left{box-shadow:10px 0 16px #0136520f}.mia-table-cell-pinned-right{box-shadow:-10px 0 16px #01365214}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:0ms!important;transition-duration:0ms!important}}
