.account-bar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  padding: 9px 30px;
  border-bottom: 1px solid var(--line);
  background: #edf5f7;
  font-size: 13px;
}
.rail nav {
  overflow-y: auto;
  min-height: 0;
}
.rail-foot {
  flex-shrink: 0;
}
.login-link {
  display: inline-flex;
  text-decoration: none;
}
.entry-panel {
  max-width: 680px;
  margin: 30px auto;
}
.schedule-bar {
  width: 150px;
  max-width: 100%;
  height: 7px;
  background: #e1eaf0;
  border-radius: 4px;
  margin: 8px 0;
}
.schedule-bar span {
  display: block;
  height: 100%;
  background: #648596;
  border-radius: 4px;
}
.schedule-bar.actual span {
  background: #087d78;
}
#plan-editor {
  margin-top: 24px;
}
#management-error {
  scroll-margin-top: 20px;
}
#report-list .secondary {
  margin-top: 8px;
}
#member-list small {
  display: block;
  overflow-wrap: anywhere;
}
fieldset {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 15px;
  margin: 18px 0;
}
fieldset label {
  display: flex;
  align-items: center;
  gap: 10px;
}
input[type="checkbox"] {
  width: 18px;
  min-height: 18px;
  display: inline-block;
  vertical-align: middle;
}
form > .primary,
form > .danger {
  margin-top: 15px;
}
main > .panel + .panel {
  margin-top: 24px;
}
.prose form > label + label {
  margin-top: 14px;
}
@media (max-width: 900px) {
  .rail nav {
    overflow-x: auto;
    overflow-y: hidden;
  }
  .account-bar {
    padding: 8px 18px;
    justify-content: space-between;
    gap: 10px;
  }
  .account-bar span {
    font-size: 12px;
  }
  .guide-grid {
    grid-template-columns: 1fr;
  }
}
@media print {
  .account-bar {
    display: none;
  }
}
