.auth input,
.auth textarea,
.auth select,
.form input,
.form textarea,
.form select,
.compose input {
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

#app:focus {
  outline: none;
}

.brand {
  gap: 0;
  letter-spacing: .075em;
  line-height: 1;
}

.brand-mark {
  width: 17px;
  height: 22px;
  margin: 0 1px;
  overflow: visible;
  flex: 0 0 auto;
  fill: var(--rust);
}

.brand-mark > path {
  fill: var(--rust);
}

.pagehead .eyebrow {
  margin-bottom: 26px;
}

.btn:disabled {
  background: #d7d1c8;
  border-color: #d7d1c8;
  color: #6d746f;
  cursor: default;
}

.conversation-principle {
  margin-top: 12px;
  padding: 12px 14px;
  border-left: 3px solid #738d78;
  background: #f1f4ef;
  color: #53615a;
  font-size: 13px;
}

.admin-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:28px; }
.admin-grid > section > h2 { margin:0 0 16px; }
.admin-user { display:grid; grid-template-columns:180px 1fr; gap:22px; }
.admin-shell { display:grid; grid-template-columns:210px minmax(0,1fr); gap:30px; align-items:start; }
.admin-menu { position:sticky; top:96px; display:grid; gap:8px; padding:10px; border:1px solid var(--line); border-radius:12px; background:var(--paper); box-shadow:var(--shadow); }
.admin-tab { width:100%; min-height:48px; border:0; border-radius:8px; padding:12px 14px; background:transparent; color:var(--ink); font:600 14px "DM Sans",sans-serif; text-align:left; cursor:pointer; }
.admin-tab:hover,.admin-tab.active { background:#ece7df; color:var(--rust2); }
.admin-panel { display:none; }
.admin-panel.active { display:block; }
.admin-section-head { margin:0 0 30px; }
.admin-section-head .eyebrow { margin-bottom:14px; }
.admin-section-head h2 { font-size:clamp(34px,5vw,50px); }
.admin-section-head p:last-child { margin:14px 0 0; color:var(--muted); }
.admin-content .discover { gap:28px; }
.admin-content .card > .eyebrow { margin-bottom:14px; }
.admin-content .card > h3 { margin:0 0 10px; }
.admin-content .card > .muted { margin:0 0 22px; }
.admin-content .card p + p { margin-top:18px; }
.admin-subsection { margin-top:44px; padding-top:28px; border-top:1px solid var(--line); }
.admin-subsection > h2 { margin-bottom:24px; }
.profile-photo-field { margin-top:8px; padding-top:28px; border-top:1px solid var(--line); }
.profile-photo-field .eyebrow { margin-bottom:10px; }
.profile-photo-field h2 { font-size:34px; margin-bottom:8px; }
.profile-photo-field .field { margin-top:18px; }
.active-group + .active-group { margin-top:36px; }
.active-group-title { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; }
.active-group-title h3 { margin:0; font:500 27px Newsreader,serif; }
.active-group-title span { min-width:32px; padding:4px 9px; border-radius:20px; background:#ece7df; text-align:center; font-size:13px; }
.active-profiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.active-profile { padding:12px; box-shadow:none; }
.active-profile img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:8px; }
.active-profile h3 { margin:10px 0 2px; font-size:17px; }
.active-profile p { margin:0; color:var(--muted); font-size:13px; }
.metric-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:24px; }
.metric { display:grid; gap:4px; padding:20px; box-shadow:none; }
.metric span,.metric small { color:var(--muted); }
.metric b { font:600 42px/1 Newsreader,serif; color:var(--ink); }
.pilot-dashboard { margin-bottom:28px; padding:26px; }
.pilot-title { display:flex; align-items:end; justify-content:space-between; gap:18px; }
.pilot-title h3 { margin:4px 0 0; font:500 30px/1.15 Newsreader,serif; }
.pilot-title > b { color:var(--rust2); font-size:22px; }
.pilot-progress { height:9px; margin:20px 0 24px; border-radius:20px; overflow:hidden; background:#e6dfd5; }
.pilot-progress span { display:block; height:100%; border-radius:inherit; background:var(--rust); }
.pilot-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
.pilot-metrics .metric { padding:14px; }
.pilot-metrics .metric b { font-size:34px; }
.pilot-breakdown { display:grid; grid-template-columns:1fr 1fr; gap:28px; padding-top:20px; border-top:1px solid var(--line); }
.pilot-breakdown h4 { margin:0 0 12px; font-size:16px; }
.pilot-breakdown p { display:flex; justify-content:space-between; gap:12px; margin:0; padding:8px 0; border-bottom:1px solid var(--line); }
.pilot-note { margin:22px 0 0; }
.analytics-table h3 { margin:0 0 18px; font-size:25px; }
.table-scroll { overflow-x:auto; }
.analytics-table table { width:100%; border-collapse:collapse; min-width:480px; }
.analytics-table th,.analytics-table td { padding:13px 10px; border-bottom:1px solid var(--line); text-align:right; }
.analytics-table th:first-child,.analytics-table td:first-child { text-align:left; }
.form .form { margin-top:0; }
#accessRequest .form.two,#register .form.two { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
#accessRequest input,#accessRequest select,#register input,#register select { min-height:52px; }
#accessRequest .field,#register .field { min-width:0; }
#accessRequest input[type="date"],#register input[type="date"] { display:block; width:100%; max-width:100%; min-width:0; -webkit-appearance:none; appearance:none; }
#toast {
  visibility: hidden;
  opacity: 0;
}

#toast.show {
  visibility: visible;
  opacity: 1;
}

@media (max-width: 760px) {
  .admin-grid,.admin-user { grid-template-columns:1fr; }
  #accessRequest .form.two,#register .form.two { grid-template-columns:1fr; }
  .admin-shell { grid-template-columns:1fr; gap:22px; }
  .admin-menu { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; padding:6px; }
  .active-profiles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pilot-metrics,.pilot-breakdown { grid-template-columns:1fr 1fr; }
  .admin-tab { min-height:44px; padding:8px 6px; text-align:center; font-size:12px; }
  .bar {
    height: auto;
    min-height: 64px;
    padding: 8px 12px;
    flex-wrap: wrap;
    row-gap: 2px;
  }

  .brand {
    font-size: 18px;
    padding: 6px 0;
    gap: 2px;
    margin-inline: auto;
  }

  .brand-mark {
    width: 15px;
    height: 19px;
    margin: 0 1px;
  }

  .bar nav {
    width: 100%;
    justify-content: space-between;
    gap: 2px;
  }

  .navbtn {
    min-height: 44px;
    padding: 8px 6px;
    font-size: 13px;
  }

  .navlabel {
    display: inline;
  }
}

.account-grid { display:grid; gap:22px; max-width:760px; }
.account-grid h2 { font-size:30px; margin-bottom:8px; }
.danger-zone { border-color:#b85a46; }
.btn.danger { background:#8f2f22; border-color:#8f2f22; }
.btn.danger:hover { background:#6f2118; }

footer > div { display:grid; gap:4px; }
footer nav { display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-end; }
footer nav button,.inline-link { border:0; background:none; color:var(--rust2); font:inherit; padding:0; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.legal-wrap { max-width:900px; }
.legal-copy { font-size:16px; line-height:1.75; }
.legal-copy h2 { font-size:30px; margin:34px 0 12px; }
.legal-copy h2:first-child { margin-top:0; }
.legal-copy p,.legal-copy ul { margin:0 0 18px; }
.legal-copy li + li { margin-top:9px; }
.legal-copy a { color:var(--rust2); }
.legal-consents { display:grid; gap:14px; padding-top:8px; }
#accessRequest .consent,#register .consent { display:grid; grid-template-columns:24px minmax(0,1fr); gap:12px; align-items:start; }
#accessRequest .consent input[type="checkbox"],#register .consent input[type="checkbox"] { width:22px; height:22px; min-height:0; margin:2px 0 0; padding:0; flex:none; accent-color:var(--rust); }
#accessRequest .consent span,#register .consent span { min-width:0; line-height:1.55; }

@media (max-width:760px) {
  footer nav { justify-content:flex-start; }
}
