*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f5f7fb;color:#1f2937}button,input,select{font:inherit}.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px}.card{width:100%;max-width:860px;background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:32px;box-shadow:0 20px 60px #0f172a14}.wideCard{max-width:1240px}.loginCard{max-width:460px}.eyebrow{margin:0 0 12px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#2563eb}h1{margin:0 0 20px;font-size:36px}h2{margin:0;font-size:24px}.text{margin:0 0 24px;font-size:18px;line-height:1.6;color:#4b5563}.mainNav,.subNav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid #e5e7eb;padding-bottom:14px}.subNav{border-bottom:0;padding-bottom:0;margin-bottom:22px}.mainNavButton,.subNavButton{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:12px;padding:11px 15px;cursor:pointer;font-weight:700}.activeMainNavButton,.activeSubNavButton{border-color:#2563eb;background:#2563eb;color:#fff}.form,.createUserForm,.editUserForm,.roleForm{display:flex;flex-direction:column;gap:18px}.createUserForm,.editUserForm,.roleForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #e5e7eb;border-radius:14px;padding:20px;background:#f8fafc}.editUserForm,.editRoleForm{border-color:#bfdbfe;background:#eff6ff}.roleForm{margin-bottom:16px}.formButtonRow{display:flex;align-items:end;gap:10px}.field{display:flex;flex-direction:column;gap:8px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:13px 14px;outline:none;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1f}.checkboxField{display:flex;align-items:center;gap:10px;min-height:48px;font-weight:700}.checkboxField input{width:18px;height:18px}.primaryButton,.secondaryButton,.secondarySmallButton,.dangerButton{border:0;border-radius:12px;padding:13px 16px;cursor:pointer;font-weight:700}.primaryButton{background:#2563eb;color:#fff}.createUserForm .primaryButton,.createUserForm .messageBox,.editUserForm .primaryButton,.editUserForm .messageBox{grid-column:1 / -1}.primaryButton:disabled,.secondaryButton:disabled,.secondarySmallButton:disabled,.dangerButton:disabled{opacity:.7;cursor:not-allowed}.secondaryButton,.secondarySmallButton{background:#e5e7eb;color:#111827}.secondarySmallButton,.dangerButton{padding:10px 13px;font-size:14px}.dangerButton{background:#dc2626;color:#fff}.errorBox,.messageBox,.hintBox{border-radius:12px;padding:12px 14px;font-weight:700}.errorBox{border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.messageBox,.hintBox{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a}.hintBox{margin-top:18px}.tableMessage,.standaloneMessage{margin-bottom:14px}.topRow,.sectionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.sectionHeader{margin-top:32px;margin-bottom:16px}.sectionHeader p{margin:8px 0 0;color:#64748b}.infoGrid,.statsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.statsGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.infoBox,.statBox{border:1px solid #dbeafe;background:#eff6ff;border-radius:14px;padding:16px}.statBox strong{display:block;font-size:34px}.label{display:block;margin-bottom:8px;color:#64748b;font-size:14px}.tableWrap{width:100%;overflow-x:auto;border:1px solid #e5e7eb;border-radius:14px}.compactTable{margin-bottom:28px}table{width:100%;border-collapse:collapse;min-width:980px}th,td{padding:14px 16px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle}th{background:#f8fafc;font-size:14px;color:#475569}tr:last-child td{border-bottom:0}.actionButtons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mutedText{color:#64748b;font-size:14px;font-weight:700}@media(max-width:900px){.statsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.page{padding:18px}.card{padding:24px}.topRow,.sectionHeader{flex-direction:column}.infoGrid,.statsGrid,.createUserForm,.editUserForm,.roleForm{grid-template-columns:1fr}.formButtonRow{align-items:stretch;flex-direction:column}h1{font-size:30px}}.settingsAreaGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px}.settingsAreaCard{text-align:left;border:1px solid #dbeafe;background:#fff;border-radius:16px;padding:18px;cursor:pointer;display:flex;flex-direction:column;gap:10px;color:#1f2937;box-shadow:0 10px 30px #0f172a0d}.settingsAreaCard:hover{border-color:#2563eb}.activeSettingsAreaCard{border-color:#2563eb;background:#eff6ff}.settingsAreaTitle{font-size:20px;font-weight:800}.settingsAreaText{color:#475569;line-height:1.5}.settingsAreaMeta{color:#2563eb;font-weight:800;font-size:14px}.settingsContentCard{border:1px solid #e5e7eb;border-radius:18px;padding:22px;background:#fff}@media(max-width:760px){.settingsAreaGrid{grid-template-columns:1fr}.settingsContentCard{padding:16px}}.appPage{min-height:100vh;width:100%;padding:18px;background:#f5f7fb}.appShell{width:100%;min-height:calc(100vh - 36px);background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 20px 60px #0f172a14;overflow:hidden}.titleBar{display:grid;grid-template-columns:260px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid #e5e7eb;background:#fff}.titleBrand h1{margin:0;font-size:30px}.titleBrand .eyebrow{margin-bottom:6px}.moduleTabs{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.moduleTab,.settingsButton,.logoutButton{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:12px;padding:11px 14px;cursor:pointer;font-weight:800}.moduleTab:hover,.settingsButton:hover{border-color:#2563eb}.activeModuleTab,.activeSettingsButton{border-color:#2563eb;background:#2563eb;color:#fff}.titleActions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.logoutButton{border-color:#fecaca;background:#fef2f2;color:#991b1b}.loggedInBar{display:flex;gap:22px;flex-wrap:wrap;padding:12px 22px;border-bottom:1px solid #e5e7eb;background:#f8fafc;color:#475569}.contentPanel{padding:24px}.modulePlaceholderGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.modulePlaceholderCard{border:1px solid #dbeafe;background:#eff6ff;border-radius:16px;padding:18px}.modulePlaceholderCard strong{display:block;font-size:24px;margin-bottom:8px}.modulePlaceholderCard p{margin:0;color:#475569}@media(max-width:1100px){.titleBar{grid-template-columns:1fr}.moduleTabs,.titleActions{justify-content:flex-start}}@media(max-width:760px){.appPage{padding:10px}.contentPanel{padding:16px}.modulePlaceholderGrid{grid-template-columns:1fr}.titleBrand h1{font-size:26px}}.welcomeBox{border:1px solid #dbeafe;background:#eff6ff;border-radius:18px;padding:28px;max-width:760px}.welcomeBox h2{font-size:34px;margin-bottom:12px}.welcomeBox p{margin:0;color:#475569;line-height:1.6}.emptyModule{padding:8px 0}.emptyModule h2{margin-bottom:8px}.emptyModule p{margin:0;color:#64748b}.loggedInBar,.infoGrid+.sectionHeader:first-of-type{display:none}.logoButton{border:0;background:transparent;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:flex-start}.logoPlaceholder{width:170px;height:58px;border:2px dashed #cbd5e1;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#64748b;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:#f8fafc}.logoButton:hover .logoPlaceholder{border-color:#2563eb;color:#2563eb;background:#eff6ff}.settingsDropdownWrap{position:relative;display:inline-flex}.settingsDropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:230px;background:#fff;border:1px solid #cbd5e1;border-radius:14px;box-shadow:0 18px 45px #0f172a29;padding:8px;z-index:50}.settingsDropdownItem{width:100%;border:0;background:transparent;color:#1f2937;text-align:left;border-radius:10px;padding:11px 12px;font-weight:800;cursor:pointer}.settingsDropdownItem:hover{background:#eff6ff;color:#2563eb}.administrationLayout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.administrationSidebar{border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc;padding:12px;display:flex;flex-direction:column;gap:8px;position:sticky;top:18px}.administrationSidebarButton{width:100%;border:1px solid transparent;background:transparent;color:#334155;text-align:left;border-radius:12px;padding:12px 13px;font-weight:800;cursor:pointer}.administrationSidebarButton:hover{background:#eff6ff;color:#2563eb}.activeAdministrationSidebarButton{border-color:#2563eb;background:#2563eb;color:#fff}.activeAdministrationSidebarButton:hover{background:#2563eb;color:#fff}.disabledSidebarButton{opacity:.45;cursor:not-allowed}.administrationContent{min-width:0;border:1px solid #e5e7eb;border-radius:18px;padding:22px;background:#fff}@media(max-width:900px){.administrationLayout{grid-template-columns:1fr}.administrationSidebar{position:static}}.permissionsPanel{display:flex;flex-direction:column;gap:18px}.permissionRoleSelect{max-width:420px}.permissionHint{border:1px solid #dbeafe;background:#eff6ff;color:#1e3a8a;border-radius:14px;padding:12px 14px}.permissionLevelSelect{min-width:160px;border:1px solid #cbd5e1;border-radius:10px;padding:9px 10px;background:#fff;font-weight:700}.passwordOverlay{position:fixed;inset:0;z-index:200;background:#f1f5f9;display:flex;align-items:center;justify-content:center;padding:24px}.passwordModal{width:min(100%,520px);background:#fff;border-radius:22px;padding:28px;box-shadow:0 24px 80px #0f172a59;display:flex;flex-direction:column;gap:16px}.passwordModal h2{margin:0;font-size:28px}.passwordModalText{margin:0;color:#475569;line-height:1.6}.passwordModalActions{align-items:center}.passwordOnlyPage{min-height:100vh;background:#f1f5f9}.personalSettingsCard{display:grid;gap:22px}.profileSummary{border:1px solid #e5e7eb;border-radius:16px;padding:18px;background:#f8fafc}.profileSummary h2,.profileSummary p,.personalPasswordForm h3{margin:0}.profileSummary p{margin-top:8px;color:#475569}.personalPasswordForm{max-width:560px;display:grid;gap:16px}.companySettingsForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.formSectionTitle,.fullWidthField,.fullWidthButton{grid-column:1 / -1}.formSectionTitle{margin-top:8px;border-bottom:1px solid #e5e7eb;padding-bottom:8px}.formSectionTitle h3{margin:0;font-size:18px}.field textarea{resize:vertical;min-height:120px;font-family:inherit}@media(max-width:820px){.companySettingsForm{grid-template-columns:1fr}}.permissionTree{display:grid;gap:14px}.permissionTreeGroup{border:1px solid #e5e7eb;border-radius:16px;background:#fff;overflow:hidden}.permissionTreeHeader{width:100%;border:0;background:#f8fafc;color:#0f172a;padding:16px 18px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;cursor:pointer;font-weight:900;text-align:left}.permissionTreeHeader:hover{background:#eff6ff}.permissionTreeArrow{font-size:18px;color:#2563eb}.permissionTreeTitle{font-size:17px}.permissionTreeCount{color:#64748b;font-size:13px;font-weight:800}.permissionTreeItems{display:grid}.permissionTreeItem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;border-top:1px solid #e5e7eb}.permissionTreeInfo{display:grid;gap:5px}.permissionTreeInfo strong{color:#0f172a}.permissionTreeInfo span{color:#64748b;line-height:1.45}.permissionLevelToggle{display:inline-grid;grid-template-columns:repeat(3,1fr);border:1px solid #cbd5e1;border-radius:999px;overflow:hidden;background:#f8fafc;min-width:360px}.permissionToggleOption{border:0;background:transparent;color:#334155;padding:10px 14px;font-weight:800;cursor:pointer;white-space:nowrap}.permissionToggleOption:hover:not(:disabled){background:#eff6ff;color:#2563eb}.activePermissionToggleOption{background:#2563eb;color:#fff}.activePermissionToggleOption:hover:not(:disabled){background:#2563eb;color:#fff}.permissionToggleOption:disabled{cursor:not-allowed;opacity:.75}.permissionMobileLevel{display:none;color:#64748b;font-size:13px}@media(max-width:980px){.permissionTreeItem{grid-template-columns:1fr}.permissionLevelToggle{min-width:0;width:100%}.permissionMobileLevel{display:block}}@media(max-width:620px){.permissionLevelToggle{grid-template-columns:1fr;border-radius:14px}.permissionToggleOption{text-align:left}}.permissionTree{gap:10px}.permissionTreeGroup{border-radius:12px}.permissionTreeHeader{width:100%;border:0;background:#f8fafc;color:#0f172a;padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;font-weight:900;text-align:left}.permissionTreeExpandButton{border:0;background:transparent;color:inherit;display:grid;grid-template-columns:auto auto 1fr;gap:8px;align-items:center;text-align:left;cursor:pointer;padding:0;font-weight:900}.permissionTreeExpandButton:hover .permissionTreeTitle{color:#2563eb}.permissionTreeTitle{font-size:15px}.permissionTreeCount{font-size:12px}.permissionTreeItem{padding:10px 12px;gap:12px}.permissionTreeInfo{gap:2px}.permissionLevelToggle,.permissionModuleToggle{min-width:285px}.permissionToggleOption{padding:7px 10px;font-size:12px}.permissionLevel-none.activePermissionToggleOption{background:#dc2626;color:#fff}.permissionLevel-read.activePermissionToggleOption{background:#64748b;color:#fff}.permissionLevel-write.activePermissionToggleOption{background:#16a34a;color:#fff}.permissionLevel-none:hover:not(:disabled){background:#fee2e2;color:#991b1b}.permissionLevel-read:hover:not(:disabled){background:#e2e8f0;color:#334155}.permissionLevel-write:hover:not(:disabled){background:#dcfce7;color:#166534}@media(max-width:1100px){.permissionTreeHeader{grid-template-columns:1fr}.permissionModuleToggle{width:100%;min-width:0}}.permissionTreeHeader{padding:8px 12px;grid-template-columns:minmax(0,1fr) auto}.permissionTitleWithToggle{display:inline-flex;align-items:center;gap:10px;min-width:0}.permissionTreeExpandButton{grid-template-columns:auto auto}.permissionIconToggle{display:inline-grid;grid-template-columns:repeat(3,28px);border:1px solid #cbd5e1;border-radius:999px;overflow:hidden;background:#f8fafc;width:max-content;flex:0 0 auto}.permissionIconOption{width:28px;height:24px;border:0;background:transparent;color:#334155;font-weight:900;font-size:13px;line-height:1;cursor:pointer}.permissionIconOption:disabled{cursor:not-allowed;opacity:.7}.permissionIconOption.permissionLevel-none:hover:not(:disabled){background:#fee2e2;color:#991b1b}.permissionIconOption.permissionLevel-read:hover:not(:disabled){background:#e2e8f0;color:#334155}.permissionIconOption.permissionLevel-write:hover:not(:disabled){background:#dcfce7;color:#166534}.permissionTreeItem{grid-template-columns:1fr;padding:9px 12px}.permissionTreeInfo strong{font-size:14px}.permissionTreeInfo span{font-size:12px}.permissionTreeCount{white-space:nowrap}@media(max-width:720px){.permissionTreeHeader{grid-template-columns:1fr}.permissionTreeCount{padding-left:24px}}.permissionIconToggle,.permissionIconToggle.permissionModuleToggle{min-width:0!important;width:max-content!important;max-width:max-content!important;grid-template-columns:repeat(3,28px)!important}.permissionModuleToggle{min-width:0!important;width:max-content!important}.permissionTitleWithToggle{width:max-content;max-width:100%}.permissionTreeHeader{grid-template-columns:minmax(0,1fr) auto}.permissionIconOption.permissionLevel-write.activePermissionIconOption{background:#16a34a;color:#fff}.permissionIconOption.permissionLevel-read.activePermissionIconOption{background:#64748b;color:#fff}.permissionIconOption.permissionLevel-none.activePermissionIconOption{background:#dc2626;color:#fff}.roleCheckboxGrid{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.roleCheckboxPill{display:inline-flex;align-items:center;gap:8px;border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:8px 12px;font-weight:800;color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none}.roleCheckboxPill:hover{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.roleCheckboxPill input{width:16px;height:16px;accent-color:#2563eb}.fullWidthField{grid-column:1 / -1}.multiRoleDropdown{position:relative;margin-top:6px;max-width:520px}.multiRoleDropdown summary{list-style:none;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;padding:11px 13px;cursor:pointer;font-weight:800;min-height:44px}.multiRoleDropdown summary::-webkit-details-marker{display:none}.multiRoleDropdown summary:after{content:"▾";float:right;color:#2563eb;font-weight:900}.multiRoleDropdown[open] summary{border-color:#2563eb;background:#eff6ff}.multiRoleDropdownMenu{position:absolute;z-index:80;top:calc(100% + 6px);left:0;right:0;border:1px solid #cbd5e1;border-radius:14px;background:#fff;box-shadow:0 18px 45px #0f172a2e;padding:8px;display:grid;gap:4px}.multiRoleDropdownItem{display:flex;align-items:center;gap:9px;border-radius:10px;padding:10px 11px;cursor:pointer;font-weight:800;color:#334155}.multiRoleDropdownItem:hover{background:#eff6ff;color:#1d4ed8}.multiRoleDropdownItem input{width:16px;height:16px;accent-color:#2563eb}
