body{margin:0;padding:0;overflow:hidden}.mt-05{margin-top:4px}.mb-05{margin-bottom:4px}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-6{margin-top:48px}.mt-8{margin-top:64px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.my-4{margin-top:32px;margin-bottom:32px}.py-3{padding-top:24px;padding-bottom:24px}.p-2{padding:16px}.p-4{padding:32px}.p-5{padding:40px}.flex-col{display:flex;flex-direction:column}.flex-center{display:flex;justify-content:center;align-items:center}.flex-center-grow{display:flex;justify-content:center;align-items:center;flex-grow:1}.flex-col-grow{display:flex;flex-direction:column;flex-grow:1}.flex-justify-center{display:flex;justify-content:center}.flex-align-center{display:flex;align-items:center}.flex-row-gap-1-center{display:flex;gap:8px;align-items:center}.font-bold{font-weight:700}.bg-white{background-color:#fff}.w-100{width:100%}.divider-shrink-0{flex-shrink:0}.main-layout-root{min-height:100vh;display:flex;flex-direction:column;background-color:#d9d9d9}.main-content-box{flex-grow:1;display:flex;flex-direction:column;overflow:hidden}header.MuiAppBar-root.appbar-custom{background-color:#3f51b5}.appbar-title{font-weight:700;white-space:nowrap;margin-right:24px}.appbar-search-container{display:flex;align-items:center;background-color:#fff;border-radius:4px;padding:4px 12px;flex-grow:1;margin-left:24px}div.MuiInputBase-root.appbar-search-input{margin-left:8px;flex-grow:1}.menu-icon-btn{margin-right:16px}.drawer-container{width:280px;height:100%;background-color:#d9d9d9;padding:24px;display:flex;flex-direction:column}.drawer-stack{flex-grow:1;display:flex;flex-direction:column;gap:16px}.drawer-list-main{flex-grow:1}button.MuiButton-root.btn-menu,button.MuiButton-root.btn-drawer-item,button.MuiButton-root.btn-logout{background-color:#fff;color:#000;font-weight:700;box-shadow:0 3px 1px -2px #0003}button.MuiButton-root.btn-menu:hover,button.MuiButton-root.btn-drawer-item:hover,button.MuiButton-root.btn-logout:hover{background-color:#f0f0f0}.btn-logout{margin-top:auto}.logout-text{color:#d32f2f;font-weight:700}.login-paper{display:flex;flex-direction:column;padding:32px}.login-title{margin-bottom:24px;font-weight:700}.form-gap-16{display:flex;flex-direction:column;gap:16px}.session-page-root{flex-grow:1;height:calc(100vh - 64px);display:flex;flex-direction:column;overflow:hidden;padding:0;box-sizing:border-box}.session-page-title{font-weight:700;flex-shrink:0}.session-columns-container{display:flex;flex-grow:1;overflow:hidden;background-color:#fff}.session-col-left{width:320px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid #ccc}.session-col-mid{width:300px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid #ccc}.session-col-right{flex-grow:1;display:flex;flex-direction:column;min-width:0}.session-paper-bordered{display:flex;flex-direction:column;height:100%;border-right:1px solid #ccc}.header-bold-p2{padding:16px 16px 8px;flex-shrink:0;font-weight:700}.filter-box{padding:8px 16px;flex-shrink:0;display:flex;flex-direction:column;gap:8px}.form-group-no-gap{gap:0}span.MuiCheckbox-root.checkbox-small-pad{padding:4px}ul.MuiList-root.list-scrollable-no-pad{flex-grow:1;overflow-y:auto;padding:0}ul.MuiList-root.list-scrollable-hidden-x{flex-grow:1;overflow-y:auto;overflow-x:hidden;padding:0}.text-empty-list{margin-top:16px;text-align:center;font-style:italic;color:#0009}div.MuiListItemButton-root.list-item-btn-pr2{padding-right:16px}.list-item-btn-col{display:flex;flex-direction:column;align-items:flex-start;padding-top:8px;padding-bottom:4px}.search-box-p2{flex-shrink:0;padding:16px}.list-item-text-nowrap{min-width:0;margin:0}.list-item-text-nowrap span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-matches-bg{background-color:#0000000a}div.MuiListItemButton-root.match-item-btn{padding-left:24px;padding-top:2px;padding-bottom:2px}.match-text-mono span{font-family:monospace;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toggle-arrow-container{display:flex;justify-content:center;width:100%;margin-top:4px;border-radius:4px;cursor:pointer}.toggle-arrow-container:hover{background-color:#00000014}.chevron-icon-center{color:#0009}button.MuiIconButton-root.chevron-icon{color:#0009;margin-left:4px;flex-shrink:0;padding:2px}svg.MuiSvgIcon-root.icon-arrow-req{font-size:14px;color:#1976d2;margin-right:8px;flex-shrink:0}svg.MuiSvgIcon-root.icon-arrow-res{font-size:14px;color:#9c27b0;margin-right:8px;flex-shrink:0}div.MuiPaper-root.editor-paper-dark{display:flex;flex-direction:column;height:100%;background-color:#1e1e1e}.editor-tabs-container{flex-shrink:0;background-color:#fff}.editor-wrapper{flex-grow:1;overflow:hidden}button.MuiTab-root.tab-bold{font-weight:700}.flex-center-h100{display:flex;justify-content:center;align-items:center;height:100%}.text-italic-light{font-style:italic;color:#fff9}.action-panel{flex-shrink:0;padding:16px 16px 8px;border-bottom:1px solid #ccc;background-color:#fafafa}.text-bold-mb1{font-weight:700;margin-bottom:8px}.flex-center-gap2{display:flex;gap:16px;justify-content:center}button.MuiIconButton-root.icon-btn-outlined-primary{border:1px solid #1976d2;border-radius:4px;padding:4px;color:#1976d2}button.MuiIconButton-root.icon-btn-outlined-error{border:1px solid #d32f2f;border-radius:4px;padding:4px;color:#d32f2f}.text-italic-center{font-style:italic;text-align:center;color:#0009}.user-page-wrapper{display:flex;flex-direction:column;flex-grow:1;background-color:transparent;overflow-y:auto}.filter-bar-container{display:flex;align-items:center;padding:12px 24px;background-color:#f5f5f5;border-bottom:1px solid #ccc}button.MuiButton-root.user-filter-btn{background-color:#3f51b5;color:#fff;font-weight:700}button.MuiButton-root.user-filter-btn:hover{background-color:#303f9f}.user-table-wrapper{padding:24px}.user-table-container{background-color:#fff}th.MuiTableCell-root.table-header-cell{font-weight:700}.table-row-hover{cursor:pointer}.table-row-hover:hover{background-color:#0000000a}.status-dot-active{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:12px;background-color:#4caf50}.status-dot-inactive{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:12px;background-color:#f44336}button.MuiFab-root.user-fab-add{position:fixed;bottom:24px;right:24px;background-color:#3f51b5;color:#fff;font-weight:700;padding-left:24px;padding-right:24px}button.MuiFab-root.user-fab-add:hover{background-color:#303f9f}.fab-icon-margin{margin-right:8px}.user-list-container{max-width:600px;margin:48px auto 0}.user-list-paper{padding:32px;background-color:#fff;border-radius:8px;display:flex;flex-direction:column}.user-list-gap-2-mb-3{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.user-item-card{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#fafafa;border:1px solid #e0e0e0;border-radius:4px}button.MuiButton-root.btn-details{background-color:#d9d9d9;color:#000;box-shadow:none}button.MuiButton-root.btn-details:hover{background-color:silver}.btn-add-user{font-weight:700;padding:8px 32px;font-size:.95rem;letter-spacing:.5px}.user-page-container{max-width:500px;margin:48px auto 0}.user-form-paper{padding:40px;background-color:#fff;border-radius:8px}.form-gap-32{display:flex;flex-direction:column;gap:32px}.flex-col-align-start{display:flex;flex-direction:column;align-items:flex-start}.btn-large-bold{margin-top:16px;padding:12px 0;font-size:1.05rem;font-weight:700;letter-spacing:.5px}.btn-bold-spacing{font-weight:700;letter-spacing:.5px}.success-text-mt-1{margin-top:8px;color:#2e7d32}button.MuiToggleButton-root.toggle-btn-active.Mui-selected{background-color:#1976d2;color:#fff}button.MuiToggleButton-root.toggle-btn-active.Mui-selected:hover{background-color:#1565c0}button.MuiToggleButton-root.toggle-btn-inactive.Mui-selected{background-color:#d32f2f;color:#fff}button.MuiToggleButton-root.toggle-btn-inactive.Mui-selected:hover{background-color:#c62828}div.MuiDialogContent-root.dialog-content-custom{padding-top:24px;display:flex;flex-direction:column;gap:16px}div.MuiDialogContent-root.dialog-form-content{padding-top:16px;display:flex;flex-direction:column;gap:24px}.dialog-title-error{font-weight:700;color:#d32f2f}.dialog-actions-p2{padding:16px}
