.utility-page{min-height:100svh;padding-bottom:40px}.utility-page header{max-width:1440px;margin:auto}.confirmation{max-width:850px;margin:0 auto;padding:80px 24px}.confirmation h1{font-size:clamp(36px,6vw,68px);line-height:1.07;margin:20px 0 28px;letter-spacing:-.045em}.confirmation>p{max-width:660px;line-height:1.75;color:#525252}.success-mark{display:grid;place-items:center;width:62px;height:62px;background:#d6ff63;border-radius:50%;font-size:32px;margin-bottom:30px}.receipt-note{padding:22px 26px;background:white;border:1px solid #deded8;border-radius:16px;margin:28px 0}.receipt-note p{line-height:1.7;margin:10px 0 0;color:#555}.confirmation .back-home{display:inline-block;margin-top:32px}.inbox{max-width:1280px;margin:auto;padding:50px 24px}.inbox-heading{display:flex;gap:25px;align-items:center;justify-content:space-between;margin-bottom:24px}.inbox h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.04em;line-height:1.1;margin:12px 0}.inbox-notice{background:#f0f5e3;padding:18px 22px;border-radius:12px;line-height:1.6;margin-bottom:30px}.leads-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.lead-card{border:1px solid #dddcd5;background:white;border-radius:18px;padding:26px;min-width:0}.lead-top{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;color:#62625e}.lead-status{background:#edf2df;color:#334912;padding:7px 10px;border-radius:40px;font-weight:bold}.status-new{background:#d6ff63;color:#182300}.status-closed{background:#f0f0ed;color:#62625e}.lead-card h2{font-size:28px;letter-spacing:-.03em;margin:25px 0 10px;overflow-wrap:anywhere}.lead-phone{font-size:21px}.lead-card dl{border-top:1px solid #eee;margin-top:22px;padding-top:12px}.lead-card dl>div{display:grid;grid-template-columns:105px 1fr;gap:16px;padding:9px 0;font-size:14px;line-height:1.5}.lead-card dt{color:#777}.lead-card dd{margin:0;overflow-wrap:anywhere}.lead-details{white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f6f2;padding:15px;border-radius:8px;line-height:1.6}.lead-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.status-form{display:flex;align-items:flex-end;gap:15px}.status-form label{display:grid;gap:6px;font-size:12px;color:#555;flex:1}.status-form select{width:100%;padding:10px;border-radius:7px;border:1px solid #ccc;background:white;color:#111;font:inherit;font-size:14px}.status-form button{margin:0;padding:12px;white-space:nowrap}.empty-state{padding:65px 24px;text-align:center;background:white;border:1px solid #ddd;border-radius:18px}.privacy-copy{max-width:760px;line-height:1.8}.privacy-copy h1{margin-bottom:35px}.privacy-copy h2{font-size:23px;margin-top:35px}.privacy-copy ul{padding-left:22px}@media(max-width:720px){.leads-grid{grid-template-columns:1fr}.confirmation{padding-top:42px}.inbox-heading{align-items:flex-start;flex-direction:column}.lead-card{padding:22px}.utility-page header{gap:18px}.utility-page header>a:last-child{font-size:13px}.confirmation .hero-actions{display:grid;grid-template-columns:1fr}}

.notification-card {
  display: grid;
  gap: 14px;
  margin: 28px 0 0;
  padding: 24px;
  border: 1px solid #deded8;
  border-radius: 16px;
  background: #f0f5e3;
}
.notification-card h2, .request-heading { font-size: 20px; margin: 0 0 6px; }
.notification-card p { margin: 0; line-height: 1.5; color: #444; }
.notification-card p:empty, .notification-actions [hidden] { display: none; }
.notification-actions, .inbox-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.inbox-alert-link { font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.inbox { max-width: 900px; }
.inbox :is(#requests, #request-alerts) { scroll-margin-top: 90px; }

.request-heading { display: flex; align-items: center; gap: 10px; }
.request-heading span {
  padding: 4px 9px;
  border-radius: 24px;
  background: #eaeae4;
  font-size: 13px;
  letter-spacing: 0;
}
.request-hint { margin: 8px 0 16px; color: #565650; font-size: 14px; line-height: 1.5; }
.request-list { display: grid; gap: 12px; list-style: none; padding: 0; margin: 0; }
.request-row {
  --request-accent: #41714e;
  --request-tint: #edf5ed;
  --request-ink: #275635;
  padding: 16px 18px;
  border: 1px solid #deded8;
  border-inline-start: 5px solid var(--request-accent);
  border-radius: 14px;
  background: #fff;
}
.request-row[data-stage="new"] {
  --request-accent: #a55d16;
  --request-tint: #fff2d7;
  --request-ink: #6b3808;
  border-color: #d7af79;
  border-inline-start-color: var(--request-accent);
  background: #fffcf5;
}
.request-row[data-stage="started"] {
  --request-accent: #53789b;
  --request-tint: #eaf1f8;
  --request-ink: #294c6e;
  background: #fcfdff;
}
.request-card-head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 8px 12px; }
.request-row .lead-phone { font-weight: 700; font-size: clamp(17px, 3vw, 22px); overflow-wrap: anywhere; }
.request-date { display: block; margin-top: 3px; font-size: 13px; color: #55554f; }
.request-stage {
  padding: 5px 9px;
  border-radius: 999px;
  background: var(--request-tint);
  color: var(--request-ink);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
}
.request-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; max-width: 385px; margin-top: 13px; }
.request-channel {
  display: grid;
  justify-items: start;
  gap: 3px;
  padding: 9px;
  border: 1px solid #e3e3dd;
  border-radius: 10px;
  background: #fff;
}
.request-channel > .button { justify-self: stretch; justify-content: center; min-height: 42px; padding: 8px 10px; }
.request-channel-state { margin: 5px 1px 0; color: #595951; font-size: 13px; }
.request-channel[data-state="opened"] .request-channel-state { color: #294c6e; font-weight: 700; }
.request-channel[data-state="confirmed"] .request-channel-state { color: #275635; font-weight: 700; }
.request-mark {
  min-height: 36px;
  padding: 4px 1px;
  border: 0;
  background: transparent;
  color: #254c31;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.request-feedback { margin: 10px 0 0; color: #803014; font-size: 13px; }
.request-feedback:empty { display: none; }
.request-history { margin-top: 24px; }
.request-history summary { width: fit-content; min-height: 44px; cursor: pointer; }
.request-history summary::before { content: '▸'; font-size: 16px; }
.request-history[open] summary::before { content: '▾'; }
.request-history .request-list { margin-top: 8px; }

@media (max-width: 480px) {
  .inbox-heading { gap: 10px; }
  .notification-card { padding: 18px; }
  .request-row { padding: 14px 12px; }
}
