:root { color: #1c1c1c; background: #fff; color-scheme: light; font-family: "Segoe UI", sans-serif; }
body { margin: 0; background: #fff; color: #1c1c1c; }
header { display: flex; align-items: center; gap: 1rem; min-height: 4.5rem; height: 4.5rem; padding: 0 1rem; background: #17324d; color: #fff; }
header a, header button, header label { color: #fff; font-weight: 700; text-decoration: none; }
header a:hover, header a:focus, header a:visited, header label { text-decoration: none; }
.page-heading { flex: 1; text-align: center; }
.page-name { margin: 0; font-size: 1.35rem; }
.app-name { margin: 0; font-size: 0.8rem; }
nav { margin-left: auto; }
.site-links { display: flex; align-items: center; gap: 1rem; }
.site-links a[aria-current="page"] { color: #f0d48a; }
.menu-toggle, .menu-button { display: none; }
button, .button, main a.button, main a.button:visited { background: #0f6b4c; color: #fff; border: 0; border-radius: 0.3rem; padding: 0.45rem 0.8rem; font-weight: 700; text-decoration: none; display: inline-block; }
main { padding: 1rem; max-width: 70rem; }
main a { color: purple; text-decoration: none; }
main a:hover, main a:focus, main a:visited { text-decoration: none; }
.notice { background: #f4f0e6; padding: 0.6rem 0.8rem; }
.note { color: #5c5346; }
.actions { display: flex; gap: 0.5rem; align-items: center; }
.record-search { display: block; width: min(24rem, 100%); margin: 0.8rem 0; }
table { width: 100%; border-collapse: collapse; }
th, td { text-align: left; padding: 0.35rem 0.5rem; border-bottom: 1px solid #ddd; vertical-align: top; }
.company-form { display: grid; gap: 0.7rem; max-width: 36rem; }
.company-form label { display: grid; gap: 0.25rem; }
.company-form input, .company-form textarea, .company-form select { width: 100%; box-sizing: border-box; }
fieldset { border: 0; margin: 0; padding: 0; display: flex; gap: 1rem; }
.choice { display: inline-flex; gap: 0.35rem; align-items: center; }
article { margin: 0 0 1.2rem; }
@media (max-width: 800px) {
  header { height: auto; min-height: 4.5rem; flex-wrap: wrap; padding: 0.4rem 1rem; }
  .menu-button { display: inline-block; }
  .site-links { display: none; width: 100%; flex-direction: column; align-items: flex-start; padding-bottom: 0.6rem; }
  .menu-toggle:checked ~ .site-links { display: flex; }
}
