.personal-profile-page { display: grid; place-items: stretch; width: 100%; max-width: 1040px; min-height: 0; gap: 16px; margin-inline: auto; padding: 0; }
.personal-profile-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
.personal-profile-heading h1 { margin: 3px 0 6px; font-size: 28px; line-height: 1.2; }
.personal-profile-heading p { margin: 0; font-size: 14px; }
.personal-profile-heading nav { display: flex; flex-wrap: wrap; gap: 8px; }
.personal-profile-heading nav .button { padding: 9px 12px; font-size: 13px; }
.personal-profile-overview { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(290px, 100%), 1fr)); gap: 14px; }
.personal-profile-page .emergency-profile-card { width: 100%; max-width: none; padding: 20px; border-radius: 8px; }
.personal-profile-page .emergency-profile-card h1,
.personal-profile-page .emergency-profile-card h2 { font-size: 19px; margin: 0 0 10px; }
.work-schedule-card fieldset { border: 0; margin: 16px 0; padding: 0; min-width: 0; }
.work-schedule-card legend { font-size: 13px; margin-bottom: 10px; }
.work-schedule-choices { display: flex; flex-wrap: wrap; gap: 12px; }
.personal-profile-page .work-schedule-choice { display: flex; align-items: center; gap: 12px; flex: 1 1 200px; padding: 18px; margin: 0; border: 1px solid #b9cce1; border-radius: 8px; background: #fff; color: #17375e; cursor: pointer; }
.personal-profile-page .work-schedule-choice input { width: 18px; height: 18px; min-height: 0; margin: 0; accent-color: #246ab1; }
.work-schedule-choice span { font-size: 19px; font-weight: 650; font-variant-numeric: tabular-nums; }
.personal-profile-page .work-schedule-choice:has(input:checked) { background: #edf6ff; border-color: #3276bb; }
.work-schedule-choice:focus-within { outline: 2px solid #3276bb; outline-offset: 2px; }
html[data-theme="dark"] .personal-profile-page .work-schedule-choice { background: #24374b; color: #eef5fc; border-color: #6b829b; }
html[data-theme="dark"] .personal-profile-page .work-schedule-choice:has(input:checked) { background: #294f72; border-color: #a4d0ff; }
.personal-profile-overview p { margin-block: 7px; font-size: 13px; line-height: 1.45; }
.personal-profile-overview form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 9px 12px; }
.personal-profile-overview form > label,
.personal-profile-overview [data-other-office-field] { grid-column: 1 / -1; }
.personal-profile-overview form > .toolbar { margin: 0; }
.personal-profile-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px 22px; }
.personal-profile-page label { display: block; margin: 0 0 6px; font-size: 13px; font-weight: 600; }
.personal-profile-page input,
.personal-profile-page select,
.personal-profile-page textarea { width: 100%; box-sizing: border-box; min-height: 40px; margin: 0; }
.personal-profile-page textarea { min-height: 72px; resize: vertical; }
.personal-profile-page .profile-readonly-field { padding: 0; }
.personal-profile-page .profile-readonly-field .readonly-value { min-height: 40px; padding: 6px 10px; font-size: 16px; font-weight: 600; }
.personal-profile-page .profile-readonly-field p { margin: 3px 0 0; font-size: 12px; line-height: 1.4; }
.personal-profile-section-title { margin: 22px 0 13px; padding-top: 18px; border-top: 1px solid #dce5ee; font-size: 16px; }
.personal-profile-details form > label { margin-top: 15px; }
.personal-profile-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 0; padding-top: 16px; border-top: 1px solid #dce5ee; }
.personal-profile-settings > h2 { margin: 3px 0 12px; font-size: 18px; }
.personal-profile-settings-item { margin: 0 0 10px; padding: 0 !important; border-radius: 8px; }
.personal-profile-settings-item > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 20px; cursor: pointer; font-weight: 600; }
.personal-profile-settings-item > summary::after { content: "+"; font-size: 22px; margin-left: 5px; }
.personal-profile-settings-item[open] > summary::after { content: "−"; }
.personal-profile-settings-item > summary > .small { margin-left: auto; font-weight: 400; }
.personal-profile-settings-body { padding: 0 20px 20px; }
.personal-profile-settings-body > p { margin-top: 0; }
.personal-profile-settings-body input[type="checkbox"] { width: auto; min-height: 0; }
html[data-theme="dark"] .personal-profile-section-title,
html[data-theme="dark"] .personal-profile-actions { border-color: #40556c; }
html[data-theme="dark"] .personal-profile-page .readonly-value { background: #23374c; color: #f0f6fc; border-color: #52677c; }
@media (max-width: 650px) {
  .personal-profile-heading { flex-direction: column; }
  .personal-profile-heading h1 { font-size: 24px; }
  .personal-profile-fields { grid-template-columns: 1fr; gap: 13px; }
  .personal-profile-page .emergency-profile-card { padding: 16px; }
  .personal-profile-overview form { grid-template-columns: 1fr; }
  .personal-profile-settings-item > summary { padding: 16px; }
  .personal-profile-settings-item > summary > .small { display: none; }
  .personal-profile-settings-body { padding: 0 16px 16px; }
}
