body.board-page #studentBoardAdminDialog { inset: 0; width: min(510px, calc(100vw - 32px)); height: fit-content; min-height: 0; max-width: none; max-height: calc(100dvh - 32px); margin: auto; overflow-y: auto; padding: 0; border: 1px solid #e1daec; border-radius: 18px; color: #292231; background: #fff; }
body.board-page #studentBoardAdminDialog::backdrop,
body.board-page #studentBoardSettingsDialog::backdrop { background: #30264b66; backdrop-filter: blur(3px); }
body.board-page #studentBoardAdminDialog .student-teacher-login-card { position: relative; width: 100%; height: auto; min-height: 0; max-width: none; padding: 34px 64px; box-sizing: border-box; border: 0; background: #fff; box-shadow: none; text-align: left; }
body.board-page #studentBoardAdminDialog h2 { margin: 0 0 8px; font-size: 24px; color: #292231; }
body.board-page #studentBoardAdminDialog .auth-message { margin: 0 0 22px; font-size: 15px; color: #786c81; }
body.board-page #studentBoardAdminDialog .student-teacher-login-form { display: flex; flex-direction: column; gap: 9px; }
body.board-page #studentBoardAdminDialog label { color: #514459; font-size: 13px; }
body.board-page #studentBoardAdminDialog input { box-sizing: border-box; width: 100%; height: 44px; min-height: 44px; padding: 9px 12px; border: 1px solid #d7cee2; border-radius: 8px; color: #342a40; background: #fff; font: inherit; }
body.board-page #studentBoardAdminDialog .student-board-admin-password { position: relative; margin-bottom: 8px; }
body.board-page #studentBoardAdminDialog #studentBoardAdminPassword { padding-right: 45px; }
body.board-page #studentBoardAdminDialog #studentBoardAdminPasswordReveal { position: absolute; right: 2px; top: 2px; width: 40px; height: 40px; border: 0; color: #766783; background: transparent; }
body.board-page #studentBoardAdminDialog .privacy-note { margin: 8px 0 18px; color: #7b6f83; font-size: 12px; line-height: 1.7; }
body.board-page #studentBoardAdminDialog .student-board-admin-login-actions { display: grid; grid-template-columns: 1fr 1.2fr; gap: 12px; }
body.board-page #studentBoardAdminDialog .student-board-admin-login-actions button { min-height: 44px; padding: 9px 15px; border: 1px solid #d7cee2; border-radius: 8px; background: #fff; color: #55465f; font: inherit; font-weight: 700; }
body.board-page #studentBoardAdminDialog #studentBoardAdminLoginSubmit { margin: 0; border-color: #7149d6; background: #7149d6; color: #fff; }
body.board-page #studentBoardAdminDialog #studentBoardAdminLocalFill { flex: none; width: 100%; height: 44px; min-height: 44px; margin: 0; padding: 8px 12px; }
body.board-page #studentBoardAdminDialog .student-teacher-login-message { margin: 12px 0 0; color: #7c697f; font-size: 12px; }
body.board-page #studentBoardAdminDialog .student-teacher-login-message:empty { display: none; }
body.board-page #studentBoardSettingsDialog { inset: 0; width: min(780px, calc(100vw - 40px)); height: fit-content; max-height: min(860px, calc(100dvh - 40px)); max-width: none; margin: auto; border: 1px solid #e1daec; border-radius: 14px; background: #fff; color: #292231; }
body.board-page #studentBoardSettingsDialog .student-board-settings-sheet { height: auto; max-height: min(858px, calc(100dvh - 42px)); border: 0; background: #fff; box-shadow: none; }
body.board-page #studentBoardSettingsDialog .student-board-settings-header { position: relative; grid-template-columns: minmax(0, 1fr) auto; padding: 28px 32px 22px; border: 0; }
body.board-page #studentBoardSettingsDialog .student-board-settings-back { position: absolute; right: 82px; top: 26px; width: 44px; height: 44px; border: 0; background: #fff; }
body.board-page #studentBoardSettingsDialog .student-board-settings-close { width: 44px; height: 44px; border: 0; background: #fff; }
body.board-page #studentBoardSettingsDialog .student-board-settings-header h2 { font-size: 24px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-header p { color: #302a37; font-size: 15px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-tabs { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 32px; padding: 0; border: 1px solid #e3ddeb; border-radius: 8px; background: #fff; }
body.board-page #studentBoardSettingsDialog .student-board-settings-tabs button { min-height: 50px; padding: 10px 16px; border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: transparent; color: #7b6e84; font-size: 15px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-tabs button.active { border-bottom-color: #7149d6; background: #fff; color: #7149d6; }
body.board-page #studentBoardSettingsDialog .student-board-settings-scroll:has([data-board-settings-section="access"]:not([hidden])) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; align-content: start; }
body.board-page #studentBoardSettingsDialog .student-board-settings-scroll { padding: 22px 32px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-scroll:has([data-board-settings-section="access"]:not([hidden])) > section:not([hidden]) { padding: 20px; border: 1px solid #e4deec; border-radius: 10px; background: #fff; }
body.board-page #studentBoardSettingsDialog .student-board-settings-scroll:has([data-board-settings-section="access"]:not([hidden])) .student-board-settings-section-heading { position: absolute; width: 1px; height: 1px; margin: 0; overflow: hidden; clip-path: inset(50%); }
body.board-page #studentBoardSettingsDialog .student-board-settings-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
body.board-page #studentBoardSettingsDialog :is(.student-board-settings-grid label, .student-board-settings-field) { gap: 8px; color: #403846; font-size: 14px; font-weight: 550; }
body.board-page #studentBoardSettingsDialog .student-board-settings-field-help { color: #837b8a; font-size: 12px; font-weight: 400; line-height: 1.6; }
body.board-page #studentBoardSettingsDialog .student-board-settings-section-heading h3 { font-size: 16px; color: #473852; }
body.board-page #studentBoardSettingsDialog :is(input,select) { min-height: 42px; accent-color: #7149d6; border-color: #dcd3e6; border-radius: 7px; background: #fff; color: #45394e; font-size: 14px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-note { padding: 12px; border-color: #dfd4f5; color: #71589b; background: #f8f5ff; }
body.board-page #studentBoardSettingsDialog .student-board-settings-shelf { grid-template-columns: minmax(0, 1fr) repeat(3, 44px); }
body.board-page #studentBoardSettingsDialog .student-board-settings-shelf button { width: 44px; height: 44px; min-height: 44px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-authority { display: flex; flex: 0 0 auto; align-items: start; gap: 12px; margin: 0 32px; padding: 14px; border: 1px solid #e4deec; border-radius: 9px; color: #42384e; font-size: 13px; line-height: 1.6; }
body.board-page #studentBoardSettingsDialog .student-board-settings-authority > i { padding-top: 3px; color: #7149d6; font-size: 17px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-authority small { display: block; color: #827989; font-size: 12px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-footer { flex-wrap: wrap; padding: 16px 32px 22px; border: 0; background: #fff; }
body.board-page #studentBoardSettingsDialog .student-board-settings-footer button { min-width: 82px; min-height: 44px; border-radius: 8px; font-size: 14px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management-bar { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 20px 32px; border-top: 1px solid #e6e0ed; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management-bar h3 { margin: 0; font-size: 14px; font-weight: 550; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management-bar p { max-width: 265px; margin: 5px 0 0; color: #837b8a; font-size: 11px; line-height: 1.5; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management { display: flex; flex-wrap: wrap; gap: 10px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management > button { display: inline-flex; align-items: center; gap: 7px; min-width: 100px; min-height: 44px; padding: 9px 12px; border-radius: 8px; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management > button > i { width: auto; height: auto; background: transparent; color: inherit; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management strong { font-size: 13px; font-weight: 500; color: inherit; }
body.board-page #studentBoardSettingsDialog .student-board-settings-management small { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
body.board-page #studentBoardSettingsDialog #studentBoardSettingsSave { background: #7149d6; border-color: #7149d6; color: #fff; }
body.board-page #studentBoardSettingsStatus { flex-basis: 100%; margin: 0; color: #846041; font-size: 13px; }
body.board-page #studentBoardSettingsStatus:empty { display: none; }
body.board-page #studentBoardSettingsDialog [hidden] { display: none !important; }
body.board-page :is(#studentBoardAdminDialog, #studentBoardSettingsDialog) button:focus-visible { outline: 3px solid #bda5ed; outline-offset: 2px; }
@media (max-width: 680px) {
  body.board-page #studentBoardSettingsDialog { width: calc(100vw - 24px); height: calc(100dvh - 24px); }
  body.board-page #studentBoardSettingsDialog .student-board-settings-scroll:has([data-board-settings-section="access"]:not([hidden])) { grid-template-columns: minmax(0, 1fr); }
  body.board-page #studentBoardSettingsDialog .student-board-settings-tabs { margin-inline: 16px; }
  body.board-page #studentBoardAdminDialog .student-teacher-login-card { padding: 26px; }
}
