@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600&display=swap");

:root {
  --brick-ember: #b80c09;
  --yale-blue: #0b4f6c;
  --bright-sky: #01baef;
  --ghost-white: #fbfbff;
  --ink-black: #040f16;
  --canvas: #f5f7f7;
  --surface: #ffffff;
  --soft-blue: #e9f3f7;
  --muted: #6f7e85;
  --line: #e2e9ea;
  --success: #1a8962;
  --shadow: 0 12px 32px rgba(4, 15, 22, .06);
  --radius: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--canvas); color: var(--ink-black); font-family: "DM Sans", system-ui, sans-serif; }
button, a { font: inherit; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }

.dashboard { display: grid; grid-template-columns: 244px minmax(0, 1fr); min-height: 100vh; }
.flash-message { position: fixed; z-index: 10; top: 16px; left: 50%; transform: translateX(-50%); margin: 0; padding: 10px 16px; border-radius: 9px; color: #07563d; background: #e5f5ed; box-shadow: var(--shadow); font-size: 13px; font-weight: 600; }
.flash-alert { color: #8b0907; background: #fff0ef; }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 32px 18px 20px; background: var(--surface); border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.brand { color: var(--yale-blue); font-size: 23px; font-weight: 700; display: flex; align-items: center; gap: 9px; padding: 0 10px; }
.brand-mark { display: grid; place-items: center; width: 31px; height: 31px; color: var(--brick-ember); border: 1.5px solid currentColor; border-radius: 50% 50% 45% 45%; font-size: 20px; }.brand-logo { width: 31px; height: 31px; border-radius: 9px; object-fit: cover; }
.brand-tagline { margin: 5px 0 44px 51px; color: var(--muted); font-size: 10px; letter-spacing: .04em; }
.main-nav { display: grid; gap: 5px; }
.nav-link { color: #536169; display: flex; align-items: center; gap: 14px; padding: 12px 13px; border-radius: 10px; font-size: 14px; font-weight: 500; }
.nav-link span { width: 18px; color: var(--yale-blue); text-align: center; font-size: 18px; }
.nav-link:hover, .nav-link.active { color: var(--yale-blue); background: var(--soft-blue); }
.sidebar-footer { margin-top: auto; display: flex; align-items: center; gap: 9px; border-top: 1px solid var(--line); padding: 18px 5px 0; font-size: 12px; }
.sidebar-footer strong, .sidebar-footer span { display: block; }.sidebar-footer span { color: var(--muted); margin-top: 3px; }.more-button { border: 0; background: transparent; color: var(--muted); margin-left: auto; }
.member-switcher { margin: 22px 5px 0; padding: 12px 0; border-top: 1px solid var(--line); }.member-switcher-label { display: block; margin-bottom: 7px; color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }.member-switcher-controls { display: flex; gap: 6px; }.member-switcher select { min-width: 0; flex: 1; padding: 7px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); font: inherit; font-size: 12px; }.member-switcher-button { border: 0; border-radius: 7px; padding: 7px 8px; color: white; background: var(--yale-blue); font-size: 11px; font-weight: 700; }.workflow-card > .member-switcher { margin: 0 0 20px; padding: 12px 0; }
.avatar { flex: 0 0 auto; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(145deg, var(--bright-sky), var(--yale-blue)); color: white; font-size: 13px; font-weight: 700; border: 2px solid white; box-shadow: 0 2px 8px rgba(11,79,108,.22); }.avatar.small { width: 31px; height: 31px; font-size: 11px; }

.service-request-item { align-items: flex-start; }.service-provider-disclosure { margin-top: 5px; }.service-provider-disclosure summary { width: fit-content; cursor: pointer; color: var(--yale-blue); font-size: 11px; font-weight: 800; list-style: none; }.service-provider-disclosure summary::-webkit-details-marker { display: none; }.service-provider-disclosure summary:after { content: "⌄"; margin-left: 5px; }.service-provider-disclosure[open] summary:after { content: "⌃"; }.service-provider-card { display: flex; align-items: center; gap: 10px; min-width: min(360px, 100%); margin-top: 9px; padding: 11px; border: 1px solid #cfe5e3; border-radius: 10px; background: #f2faf8; }.service-provider-photo,.service-provider-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 50%; object-fit: cover; color: white; background: var(--yale-blue); font-size: 13px; font-weight: 800; }.service-provider-card > div { min-width: 0; flex: 1; }.service-provider-card strong,.service-provider-card small { display: block; }.service-provider-card strong { font-size: 12px; }.service-provider-card small { margin-top: 2px; color: var(--muted); font-size: 10px; }.service-provider-actions { display: grid; gap: 6px; margin-left: auto; }.service-provider-actions .secondary-button { min-width: 54px; }
.content { width: min(1440px, 100%); padding: 30px 38px 20px; margin: 0 auto; }
.topbar, .panel-heading, .section-heading, .top-actions, .summary-card, .schedule-item, .contact, .event, .assistant-card { display: flex; align-items: center; }
.topbar { justify-content: space-between; margin-bottom: 24px; }.eyebrow { margin: 0 0 5px; color: var(--yale-blue); font-size: 10px; font-weight: 700; letter-spacing: .12em; }.topbar h1, h2, h3, p { margin-top: 0; }.topbar h1 { margin-bottom: 0; font-family: Fraunces, Georgia, serif; font-size: clamp(25px, 3vw, 34px); font-weight: 600; letter-spacing: -.035em; }.topbar h1 span { color: var(--bright-sky); }
.top-actions { gap: 15px; }.help-link { background: transparent; color: var(--yale-blue); border: 0; font-weight: 600; font-size: 13px; }.notification { position: relative; border: 1px solid var(--line); background: var(--surface); border-radius: 50%; height: 36px; width: 36px; color: var(--yale-blue); }.notification i { position: absolute; width: 6px; height: 6px; background: var(--brick-ember); border-radius: 50%; right: 7px; top: 7px; }

.hero-card { overflow: hidden; min-height: 185px; display: flex; align-items: center; justify-content: space-between; border-radius: var(--radius); padding: 26px 36px; color: white; background: linear-gradient(112deg, var(--yale-blue), #147798); position: relative; box-shadow: var(--shadow); }.hero-card:after { content: ""; position: absolute; height: 260px; width: 260px; border: 35px solid rgba(255,255,255,.07); border-radius: 50%; right: 7%; top: -105px; }.hero-copy { position: relative; z-index: 2; }.hero-kicker { padding: 5px 9px; border-radius: 999px; background: rgba(255,255,255,.17); font-size: 11px; font-weight: 600; }.hero-copy h2 { margin: 13px 0 5px; font-family: Fraunces, Georgia, serif; font-size: 29px; letter-spacing: -.03em; }.hero-copy p { color: rgba(255,255,255,.78); margin-bottom: 14px; font-size: 13px; }.text-link { font-size: 13px; font-weight: 700; }.text-link span { padding-left: 5px; font-size: 17px; }.hero-art { position: relative; width: 260px; height: 138px; z-index: 1; }.sun { width: 83px; height: 83px; border-radius: 50%; background: #f9d78c; opacity: .9; position: absolute; right: 12px; top: 4px; }.care-figure { position: absolute; right: 54px; bottom: -17px; border: 7px solid white; width: 102px; height: 115px; border-radius: 53px 53px 25px 25px; display: grid; place-items: center; font-size: 44px; color: var(--brick-ember); background: #eaf9f5; }.plant { position: absolute; bottom: -7px; left: 18px; display: flex; align-items: end; gap: 3px; }.plant i { display: block; width: 17px; height: 55px; background: #77c5ac; border-radius: 100% 0 100% 0; transform: rotate(-28deg); }.plant i:nth-child(2) { height: 88px; transform: rotate(23deg); }.plant i:nth-child(3) { height: 40px; transform: rotate(41deg); }

.summary-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 18px 0; }.summary-card { min-width: 0; gap: 11px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 4px 14px rgba(4,15,22,.025); }.summary-card p { margin: 0 0 4px; color: var(--muted); font-size: 11px; }.summary-card strong, .summary-card small { display: block; }.summary-card strong { font-size: 13px; }.summary-card small { margin-top: 3px; color: var(--muted); font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }.card-icon { display: grid; place-items: center; flex: 0 0 auto; width: 35px; height: 35px; border-radius: 10px; color: var(--yale-blue); background: var(--soft-blue); font-size: 19px; }.card-icon.green { background: #e9f7f1; color: var(--success); }.card-icon.sky { background: #e5f9ff; color: #008bb3; }.card-icon.amber { background: #fff4df; color: #bd7900; }.trend { margin-left: auto; color: var(--yale-blue); }.status-pill { white-space: nowrap; padding: 4px 7px; border-radius: 5px; color: var(--yale-blue); background: var(--soft-blue); font-size: 9px; font-weight: 700; }.status-pill.success { color: var(--success); background: #e5f5ed; }.summary-card .status-pill { margin-left: auto; }.status-pill.blue { background: #e4f6fb; color: var(--yale-blue); }

.dashboard-columns { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(260px, .85fr); gap: 18px; margin-bottom: 18px; }.panel, .service-card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 4px 18px rgba(4,15,22,.025); }.panel { padding: 22px; }.panel-heading, .section-heading { justify-content: space-between; gap: 14px; }.panel-heading h2, .section-heading h2 { margin: 0; font-size: 18px; letter-spacing: -.02em; }.panel-heading > a, .section-heading > a { color: var(--yale-blue); font-size: 12px; font-weight: 700; white-space: nowrap; }
.schedule-list { margin-top: 18px; }.schedule-item { min-height: 66px; position: relative; gap: 14px; }.schedule-item:not(:last-child):after { content: ""; position: absolute; left: 68px; top: 43px; height: 28px; border-left: 1px dashed #cddcdf; }.schedule-item time { width: 49px; color: var(--muted); font-size: 10px; font-weight: 600; }.timeline-dot { width: 11px; height: 11px; flex: 0 0 auto; border-radius: 50%; background: var(--surface); border: 3px solid #b5d7e4; }.schedule-item.now .timeline-dot { width: 13px; height: 13px; border-color: var(--bright-sky); box-shadow: 0 0 0 4px #e7fbff; }.schedule-item div { min-width: 0; }.schedule-item strong, .schedule-item small { display: block; }.schedule-item strong { font-size: 13px; }.schedule-item small { color: var(--muted); font-size: 11px; margin-top: 3px; }.schedule-item .status-pill { margin-left: auto; }
.status-action, .service-action { display: inline-block; border: 0; border-radius: 6px; color: var(--yale-blue); background: var(--soft-blue); padding: 6px 8px; font-size: 10px; font-weight: 700; white-space: nowrap; }.status-action { margin-left: auto; }.service-action { width: 100%; text-align: center; }
.quick-panel { display: grid; gap: 18px; }.quick-actions > a, .quick-actions > button { width: 100%; display: flex; align-items: center; gap: 10px; margin-top: 10px; padding: 10px; border: 1px solid var(--line); border-radius: 9px; color: #31434a; background: var(--surface); text-align: left; font-size: 12px; }.quick-actions > a:hover, .quick-actions > button:hover { border-color: var(--bright-sky); color: var(--yale-blue); }.quick-actions span { font-weight: 600; }.quick-actions b { margin-left: auto; color: var(--yale-blue); }.quick-actions .sos-button { border-color: #ffd5d3; background: #fff8f7; color: var(--brick-ember); }.assistant-card { gap: 11px; padding: 17px; border-radius: var(--radius); background: #e9f5f7; }.assistant-card p { color: var(--yale-blue); font-size: 11px; font-weight: 700; margin-bottom: 3px; }.assistant-card strong { font-size: 12px; }.assistant-orb { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 15px; color: white; background: linear-gradient(135deg, var(--bright-sky), var(--yale-blue)); }.outline-button { display: block; margin-left: auto; border: 0; background: transparent; color: var(--yale-blue); font-size: 10px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.quick-actions button { font: inherit; cursor: pointer; }.agent-dialog { width: min(560px, calc(100vw - 32px)); border: 0; border-radius: 18px; padding: 24px; color: var(--ink-black); box-shadow: 0 22px 70px rgba(4,15,22,.28); }.agent-dialog::backdrop { background: rgba(4,15,22,.48); }.agent-dialog-header { display: flex; justify-content: space-between; gap: 18px; }.agent-dialog h2 { margin-bottom: 0; font-family: Fraunces, Georgia, serif; }.dialog-close { border: 0; background: transparent; color: var(--muted); font-size: 30px; line-height: 28px; }.agent-intro, .agent-safety { margin: 16px 0; color: var(--muted); font-size: 13px; line-height: 1.5; }.agent-safety { font-size: 11px; }.agent-label { display: block; margin: 13px 0 6px; color: var(--yale-blue); font-size: 12px; font-weight: 700; }.agent-dialog select, .agent-dialog textarea { width: 100%; border: 1px solid var(--line); border-radius: 9px; padding: 10px; color: var(--ink-black); background: white; font: inherit; }.agent-dialog textarea { min-height: 92px; resize: vertical; }.agent-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 12px; }.agent-primary, .agent-secondary { border: 0; border-radius: 8px; padding: 10px 13px; font-size: 12px; font-weight: 700; cursor: pointer; }.agent-primary { color: white; background: var(--yale-blue); }.agent-secondary { color: var(--yale-blue); background: var(--soft-blue); }.agent-reply, .agent-proposal { margin: 15px 0 0; padding: 13px; border-radius: 10px; background: var(--soft-blue); color: #24404b; font-size: 13px; line-height: 1.5; }.agent-proposal { background: #e5f5ed; }.agent-proposal p { margin: 5px 0; }.agent-location { display: block; margin: 10px 0; color: #24404b; font-size: 12px; }.agent-emergency-call { display: block; margin-top: 10px; color: var(--brick-ember); font-size: 13px; font-weight: 700; }
.request-panel { padding: 17px; }.request-item { display: flex; align-items: center; gap: 8px; padding: 12px 0; border-bottom: 1px solid var(--line); }.request-item:last-child { border-bottom: 0; }.request-item strong, .request-item small { display: block; }.request-item strong { font-size: 12px; }.request-item small { margin-top: 3px; color: var(--muted); font-size: 10px; }.request-item .status-pill { margin-left: auto; }
.request-list-heading { margin: 24px 0 8px; padding-top: 18px; border-top: 1px solid var(--line); }.request-list-heading h3 { margin: 0; font-size: 15px; }

.section-block { padding: 36px 0 28px; }.service-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; margin-top: 16px; }.service-card { padding: 15px; border-radius: 13px; }.service-icon { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; color: white; background: var(--yale-blue); font-size: 17px; }.service-icon.sky { background: var(--bright-sky); }.service-icon.red { background: var(--brick-ember); }.service-card h3 { margin: 12px 0 4px; font-size: 12px; line-height: 1.3; }.service-card p { margin-bottom: 12px; color: var(--muted); font-size: 10px; }.service-card button { width: 100%; padding: 7px; border: 0; border-radius: 6px; color: var(--yale-blue); background: var(--soft-blue); font-size: 10px; font-weight: 700; }.service-card button span { margin-left: 3px; }
.lower-grid { display: grid; grid-template-columns: 1.25fr .9fr; gap: 18px; }.event { gap: 11px; padding: 13px 0; border-bottom: 1px solid var(--line); }.event:last-child { border: 0; }.event-icon { display: grid; place-items: center; flex: 0 0 auto; width: 30px; height: 30px; border-radius: 9px; background: var(--soft-blue); color: var(--yale-blue); }.event div { min-width: 0; }.event small, .event strong, .event p { display: block; }.event small, .event p { color: var(--muted); font-size: 10px; }.event strong { margin: 3px 0; font-size: 12px; }.event p { margin-bottom: 0; }.event-type { margin-left: auto; color: var(--yale-blue); background: #edf6f7; padding: 4px 7px; border-radius: 5px; font-size: 9px; font-weight: 700; }.contact { gap: 9px; padding: 13px 0; border-bottom: 1px solid var(--line); }.contact:last-child { border: 0; }.contact strong { display: block; font-size: 12px; }.contact strong small, .contact p { color: var(--muted); font-weight: 400; font-size: 10px; }.contact p { margin: 4px 0 0; }.contact button { margin-left: auto; border: 0; color: var(--yale-blue); background: transparent; font-size: 18px; }.safety-note { color: var(--muted); font-size: 10px; text-align: center; padding: 24px 0 6px; }.safety-note a { color: var(--yale-blue); text-decoration: underline; }
.contact > a { margin-left: auto; color: var(--yale-blue); font-size: 18px; }.empty-state { color: var(--muted); font-size: 12px; }
.workflow-page { width: min(760px, calc(100% - 32px)); margin: 0 auto; padding: 45px 0; }.back-link { display: inline-block; margin-bottom: 18px; color: var(--yale-blue); font-size: 13px; font-weight: 700; }.workflow-card { padding: clamp(24px, 5vw, 42px); border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }.workflow-card h1 { margin: 0 0 9px; font-family: Fraunces, Georgia, serif; font-size: 30px; letter-spacing: -.03em; }.workflow-intro { margin-bottom: 25px; color: var(--muted); font-size: 14px; line-height: 1.55; }.workflow-form { display: grid; gap: 22px; }.form-grid { display: grid; grid-template-columns: 1fr; gap: 7px; }.form-grid label { margin-top: 10px; font-size: 12px; font-weight: 700; }.form-grid input, .form-grid select, .form-grid textarea { width: 100%; padding: 10px 11px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink-black); background: white; font: inherit; font-size: 14px; }.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus { outline: 2px solid #bdebf8; border-color: var(--bright-sky); }.primary-button { justify-self: start; border: 0; border-radius: 8px; padding: 11px 15px; color: white; background: var(--yale-blue); font-weight: 700; font-size: 13px; }.form-errors { margin-bottom: 18px; padding: 10px; border-radius: 8px; color: #8b0907; background: #fff0ef; font-size: 13px; }.contact-list { margin-top: 28px; border-top: 1px solid var(--line); }.managed-contact { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 0; border-bottom: 1px solid var(--line); }.managed-contact strong, .managed-contact span { display: block; }.managed-contact strong { font-size: 14px; }.managed-contact span { margin-top: 3px; color: var(--muted); font-size: 12px; }.text-button { border: 0; color: var(--brick-ember); background: transparent; font-size: 12px; font-weight: 700; }
.auth-page { display: grid; min-height: 100vh; place-items: center; padding: 28px 16px; }.auth-card { width: min(560px, 100%); }.auth-card .brand { margin-bottom: 36px; padding: 0; }.auth-switch { margin: 24px 0 0; color: var(--muted); font-size: 13px; }.auth-switch a { color: var(--yale-blue); font-weight: 700; }.form-divider { width: 100%; margin: 14px 0 4px; border: 0; border-top: 1px solid var(--line); }.form-section-title { margin: 0; color: var(--yale-blue); font-size: 12px; font-weight: 700; }
.identifier-fields { display: grid; gap: 8px; min-width: 0; margin: 10px 0 0; padding: 0; border: 0; }.identifier-fields legend { margin-bottom: 2px; font-size: 12px; font-weight: 700; }.identifier-fields label { display: block; margin: 4px 0; font-size: 12px; font-weight: 700; }.identifier-fields input, .identifier-fields select { width: 100%; padding: 10px 11px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink-black); background: white; font: inherit; font-size: 14px; }.identifier-toggle { display: flex; gap: 7px; }.identifier-toggle button { flex: 1; padding: 9px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: #edf2f3; font-size: 12px; font-weight: 700; }.identifier-toggle .identifier-toggle-active { border-color: var(--yale-blue); color: white; background: var(--yale-blue); }.phone-number-input { display: grid; grid-template-columns: minmax(145px, .8fr) minmax(0, 1.2fr); gap: 8px; }.phone-number-input select, .phone-number-input input { min-width: 0; }
.address-fields { display: contents; }.address-results { position: relative; z-index: 4; }.address-suggestions { overflow: hidden; border: 1px solid var(--line); border-radius: 9px; background: white; box-shadow: var(--shadow); }.address-suggestion { display: block; width: 100%; padding: 10px 11px; border: 0; border-bottom: 1px solid var(--line); color: var(--ink-black); background: white; text-align: left; font-size: 13px; }.address-suggestion:hover, .address-suggestion:focus { color: var(--yale-blue); background: var(--soft-blue); outline: 0; }.google-attribution { display: block; padding: 7px 10px; color: var(--muted); font-size: 10px; font-weight: 600; }.address-message { margin: 0; padding: 9px 10px; border-radius: 8px; color: #8b0907; background: #fff0ef; font-size: 12px; }

@media (max-width: 1100px) { .content { padding: 25px; }.summary-grid { grid-template-columns: repeat(2, 1fr); }.service-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) { .dashboard { display: block; }.sidebar { position: static; height: auto; padding: 16px; border-right: 0; border-bottom: 1px solid var(--line); }.brand-tagline, .sidebar-footer { display: none; }.main-nav { display: flex; overflow-x: auto; margin-top: 16px; }.nav-link { flex: 0 0 auto; padding: 8px 10px; font-size: 12px; }.content { padding: 20px 15px; }.topbar { align-items: flex-start; }.top-actions { gap: 7px; }.help-link { display: none; }.hero-card { padding: 24px; min-height: 190px; }.hero-copy h2 { font-size: 25px; }.hero-art { display: none; }.summary-grid, .dashboard-columns, .lower-grid { grid-template-columns: 1fr; }.service-grid { grid-template-columns: repeat(2, 1fr); }.summary-card { padding: 13px; }.section-block { padding-top: 28px; }.panel { padding: 17px; }.assistant-card { flex-wrap: wrap; }.outline-button { margin-left: 50px; } }
/* Profile-aware workflows keep the active person and consent controls readable on small screens. */
.active-profile-banner { margin: .5rem 0 0; color: #35515e; font-size: .95rem; }
.setup-choice, .permission-fields, .access-review { border: 1px solid #d9e4e7; border-radius: 14px; padding: 1rem; margin: 1rem 0; }
.setup-choice label, .permission-fields label, .consent-check { display: block; margin: .65rem 0; }
.permission-fields label { display: flex; align-items: center; gap: .75rem; justify-content: space-between; }
.permission-fields select { max-width: 10rem; }
@media (max-width: 640px) { .permission-fields label { align-items: flex-start; flex-direction: column; gap: .25rem; } .permission-fields select { max-width: none; width: 100%; } }
.calendar-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.calendar-navigation { display: flex; flex-wrap: wrap; gap: .5rem; }
.calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.calendar-weekday { padding: .65rem; background: #edf2f3; color: var(--muted); font-size: .75rem; font-weight: 700; text-align: center; }
.calendar-day { min-height: 8.5rem; padding: .5rem; border-right: 1px solid var(--line); border-top: 1px solid var(--line); }
.calendar-day:nth-child(7n) { border-right: 0; }
.calendar-day time { display: block; margin-bottom: .35rem; color: var(--ink); font-size: .8rem; font-weight: 700; }
.calendar-day.outside-month { background: #f7fafb; opacity: .55; }
.calendar-day.today { background: #edf8fb; }
.calendar-event { display: block; overflow: hidden; margin: .25rem 0; padding: .25rem .35rem; border-radius: 5px; color: #123; font-size: .72rem; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.reminder-event { background: #dff4ed; }
.service-event { background: #e6f0fb; }
.calendar-key { display: flex; gap: .6rem; margin-top: 1rem; }
@media (max-width: 720px) { .calendar-header { flex-direction: column; } .calendar-day { min-height: 6rem; padding: .35rem; } .calendar-event { font-size: .63rem; } }

/* Public landing page */
.landing-page { --landing-navy:#0b4f6c; --landing-teal:#01baef; min-height:100vh; overflow:hidden; background:#fbfdfc; color:#09212b; }
.landing-nav { position:sticky; z-index:20; top:0; display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:76px; padding:14px max(5vw,30px); border-bottom:1px solid rgba(11,79,108,.09); background:rgba(251,253,252,.92); backdrop-filter:blur(14px); }
.landing-brand { display:inline-flex; align-items:center; gap:10px; color:var(--landing-navy); font-family:Fraunces,Georgia,serif; font-size:23px; font-weight:600; letter-spacing:-.04em; }.landing-logo { width:37px; height:37px; border-radius:11px; object-fit:cover; box-shadow:0 5px 13px rgba(11,79,108,.14); }
.landing-links,.landing-nav-actions,.landing-hero-actions,.landing-trust-row,.landing-footer,.provider-preview-list { display:flex; align-items:center; }.landing-links { gap:clamp(16px,2.8vw,37px); margin-left:auto; }.landing-links a,.landing-provider-link,.landing-login { color:#37535d; font-size:13px; font-weight:700; }.landing-links a:hover,.landing-provider-link:hover,.landing-login:hover { color:var(--landing-teal); }.landing-nav-actions { gap:15px; }
.landing-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 20px; border-radius:12px; color:white; background:var(--landing-navy); box-shadow:0 10px 20px rgba(11,79,108,.18); font-size:13px; font-weight:700; transition:transform .2s,background .2s; }.landing-button:hover { color:white; background:#063b52; transform:translateY(-2px); }.landing-button-small { min-height:38px; padding:0 14px; border-radius:10px; font-size:12px; }
.landing-hero { position:relative; display:grid; grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr); align-items:center; gap:clamp(36px,6vw,92px); max-width:1270px; min-height:620px; margin:0 auto; padding:70px max(5vw,30px) 80px; }.landing-hero:before { content:""; position:absolute; width:min(48vw,660px); height:min(48vw,660px); right:-180px; top:-210px; border-radius:50%; background:radial-gradient(circle,rgba(1,186,239,.16),rgba(1,186,239,0) 68%); }.landing-hero-copy,.landing-hero-visual { position:relative; z-index:1; }
.landing-kicker { display:flex; align-items:center; gap:8px; margin:0 0 16px; color:var(--landing-navy); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.landing-kicker span { width:8px; height:8px; border-radius:50%; background:var(--landing-teal); box-shadow:0 0 0 5px rgba(1,186,239,.13); }.landing-hero h1,.provider-preview-hero h1 { max-width:620px; margin:0; font-family:Fraunces,Georgia,serif; font-size:clamp(44px,5.2vw,72px); font-weight:600; line-height:1.02; letter-spacing:-.062em; }.landing-hero h1 em { color:var(--landing-teal); font-style:normal; }.landing-lead { max-width:530px; margin:24px 0 28px; color:#566e76; font-size:clamp(16px,1.6vw,18px); line-height:1.62; }.landing-hero-actions { flex-wrap:wrap; gap:20px; }.landing-text-button { color:var(--landing-navy); font-size:13px; font-weight:800; }.landing-text-button span { padding-left:5px; font-size:17px; }.landing-trust-row { flex-wrap:wrap; gap:16px 24px; margin-top:34px; color:#688089; font-size:12px; font-weight:600; }
.landing-hero-visual { height:470px; }.landing-visual-glow { position:absolute; inset:44px 18px 10px; border-radius:42% 58% 52% 48%; background:linear-gradient(145deg,#d6f4f8,#eff9e7); transform:rotate(-7deg); }.landing-plan-card,.landing-profile-card,.landing-note-card { position:absolute; border:1px solid rgba(11,79,108,.1); background:rgba(255,255,255,.96); box-shadow:0 23px 55px rgba(9,33,43,.13); }.landing-plan-card { z-index:2; top:75px; right:5%; width:min(100%,385px); padding:22px; border-radius:20px; animation:landing-rise .8s ease-out both; }.landing-plan-heading { display:flex; flex-direction:column-reverse; gap:3px; padding-bottom:18px; border-bottom:1px solid #e3edef; }.landing-plan-heading span { color:#7b9197; font-size:11px; font-weight:600; }.landing-plan-heading b { font-size:17px; }.landing-plan-item { display:flex; align-items:center; gap:11px; padding:16px 0; border-bottom:1px solid #edf2f1; }.landing-plan-item>div { min-width:0; flex:1; }.landing-plan-item strong,.landing-plan-item small,.landing-profile-card strong,.landing-profile-card small,.landing-note-card strong,.landing-note-card small { display:block; }.landing-plan-item strong { font-size:13px; }.landing-plan-item small,.landing-profile-card small,.landing-note-card small { margin-top:4px; color:#71858a; font-size:10px; }.landing-plan-icon { display:grid; place-items:center; flex:0 0 auto; width:35px; height:35px; border-radius:11px; color:white; background:var(--landing-navy); font-style:normal; font-weight:800; }.landing-plan-icon.support { color:#087c61; background:#ddf5e9; }.landing-status { padding:5px 7px; border-radius:6px; color:#ae6200; background:#fff0d5; font-size:9px; font-weight:800; }.landing-status.soft { color:#177c98; background:#e4f5f9; }
.landing-circle-preview { display:flex; align-items:center; gap:9px; padding-top:17px; color:#46616a; font-size:11px; font-weight:700; }.landing-circle-preview i { margin-left:auto; color:var(--landing-navy); font-size:16px; font-style:normal; }.landing-mini-avatars { display:flex; }.landing-mini-avatars b { display:grid; place-items:center; width:24px; height:24px; margin-left:-5px; border:2px solid white; border-radius:50%; color:white; background:#0b4f6c; font-size:9px; }.landing-mini-avatars b:nth-child(2) { background:#01a5cb; }.landing-mini-avatars b:nth-child(3) { background:#279873; }.landing-profile-card { z-index:3; top:25px; left:3%; display:flex; align-items:center; gap:10px; width:234px; padding:12px; border-radius:14px; animation:landing-float 5.5s ease-in-out infinite; }.landing-avatar { display:grid; place-items:center; flex:0 0 auto; width:34px; height:34px; border-radius:50%; color:white; background:linear-gradient(145deg,var(--landing-teal),var(--landing-navy)); font-size:12px; font-weight:800; }.landing-profile-card strong { font-size:11px; }.landing-check { display:grid; place-items:center; width:18px; height:18px; margin-left:auto; border-radius:50%; color:white; background:#2ca477; font-size:10px; font-weight:800; }.landing-note-card { z-index:3; right:-1%; bottom:20px; display:flex; align-items:center; gap:10px; width:255px; padding:13px; border-radius:14px; animation:landing-float 6.6s ease-in-out -1.8s infinite; }.landing-note-card>span { display:grid; place-items:center; width:29px; height:29px; border-radius:9px; color:#087c61; background:#ddf5e9; font-size:14px; }.landing-note-card strong { font-size:10px; }
.landing-proof { display:grid; grid-template-columns:repeat(3,1fr); max-width:1160px; margin:0 auto 75px; border:1px solid #dce9e8; border-radius:16px; background:white; box-shadow:0 15px 35px rgba(9,33,43,.04); }.landing-proof div { padding:20px 26px; text-align:center; }.landing-proof div+div { border-left:1px solid #e3eeec; }.landing-proof b,.landing-proof span { display:block; }.landing-proof b { color:var(--landing-navy); font-size:13px; }.landing-proof span { margin-top:5px; color:#71858a; font-size:11px; }
.landing-section { max-width:1270px; margin:0 auto; padding:90px max(5vw,30px); }.landing-section-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; }.landing-section-heading>div { max-width:620px; }.landing-section-heading h2,.landing-pricing-copy h2 { margin:0; font-family:Fraunces,Georgia,serif; font-size:clamp(31px,4vw,48px); line-height:1.05; letter-spacing:-.052em; }.landing-section-heading>p,.landing-section-heading.centered>p { max-width:365px; margin:0; color:#60777e; font-size:14px; line-height:1.6; }.landing-section-heading.centered { display:block; max-width:650px; margin:0 auto; text-align:center; }.landing-section-heading.centered .landing-kicker { justify-content:center; }.landing-section-heading.centered>p { max-width:510px; margin:17px auto 0; }.landing-services { padding-top:25px; }
.landing-service-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; margin-top:37px; }.landing-service-grid article { min-height:205px; padding:20px 17px; border:1px solid #dfe9e8; border-radius:16px; background:white; transition:transform .25s,box-shadow .25s,border-color .25s; }.landing-service-grid article:hover { border-color:rgba(1,186,239,.45); box-shadow:0 18px 35px rgba(9,33,43,.08); transform:translateY(-5px); }.landing-service-grid i { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; color:var(--landing-navy); background:#e8f5f7; font-size:18px; font-style:normal; }.landing-service-grid article:nth-child(2) i,.landing-service-grid article:nth-child(5) i { color:#087f62; background:#e3f6ed; }.landing-service-grid article:nth-child(3) i,.landing-service-grid article:nth-child(6) i { color:#9b6300; background:#fff3dc; }.landing-service-grid h3 { margin:21px 0 7px; font-size:14px; }.landing-service-grid p { margin:0; color:#71858a; font-size:11px; line-height:1.55; }
.landing-how { max-width:none; padding:95px max(5vw,30px); background:linear-gradient(180deg,#f0faf8,#fbfdfc); }.landing-how .landing-section-heading { max-width:1270px; }.landing-steps { display:grid; grid-template-columns:1fr 80px 1fr 80px 1fr; align-items:center; max-width:1040px; margin:54px auto 0; }.landing-steps article { position:relative; min-height:235px; padding:27px; border:1px solid #dcebe6; border-radius:18px; background:white; box-shadow:0 12px 25px rgba(9,33,43,.04); }.landing-step-number { position:absolute; top:18px; right:20px; color:#bdd8d2; font-size:11px; font-weight:800; }.landing-steps article>i { display:grid; place-items:center; width:48px; height:48px; border-radius:15px; color:white; background:var(--landing-navy); font-size:22px; font-style:normal; }.landing-steps article:nth-of-type(2)>i { background:var(--landing-teal); }.landing-steps article:nth-of-type(3)>i { background:#2ca477; }.landing-steps h3 { margin:22px 0 8px; font-size:16px; }.landing-steps p { margin:0; color:#6a8187; font-size:12px; line-height:1.58; }.landing-step-line { display:grid; place-items:center; color:#50b7b2; font-size:25px; }.landing-step-line:before { content:""; position:absolute; width:64px; border-top:2px dashed #8acfc6; }.landing-step-line span { position:relative; z-index:1; padding-left:42px; background:#f3fbf9; }
.landing-pricing { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:clamp(45px,9vw,140px); }.landing-pricing-copy>p:not(.landing-kicker) { max-width:505px; margin:20px 0 25px; color:#60777e; font-size:14px; line-height:1.65; }.landing-pricing-card { position:relative; overflow:hidden; padding:34px; border-radius:20px; color:white; background:linear-gradient(135deg,#0b4f6c,#087b87); box-shadow:0 23px 42px rgba(11,79,108,.19); }.landing-pricing-label { margin:0 0 16px; color:#aee6e9; font-size:10px; font-weight:800; letter-spacing:.12em; }.landing-pricing-card h3 { margin:0; font-family:Fraunces,Georgia,serif; font-size:29px; letter-spacing:-.04em; }.landing-pricing-card>p:not(.landing-pricing-label) { margin:13px 0 20px; color:rgba(255,255,255,.78); font-size:13px; line-height:1.6; }.landing-pricing-card ul { display:grid; gap:9px; margin:0 0 24px; padding:0; list-style:none; font-size:12px; }.landing-pricing-card li:before { content:"✓"; margin-right:8px; color:#b8f2e5; font-weight:900; }.landing-pricing-note { display:block; padding-top:17px; border-top:1px solid rgba(255,255,255,.18); color:#b9e6e5; font-size:10px; line-height:1.5; }
.landing-footer { justify-content:space-between; gap:20px; padding:28px max(5vw,30px); border-top:1px solid #dce8e7; }.landing-footer p,.landing-footer>a:not(.landing-brand) { margin:0; color:#71858a; font-size:12px; }.landing-footer>a:not(.landing-brand) { color:var(--landing-navy); font-weight:700; }.provider-preview { background:linear-gradient(145deg,#f7fcfc,#eaf7f4); }.provider-preview-hero { max-width:820px; margin:0 auto; padding:150px max(5vw,30px); }.provider-preview-hero>p:not(.landing-kicker) { max-width:630px; margin:24px 0; color:#5c757d; font-size:17px; line-height:1.65; }.provider-preview-list { flex-wrap:wrap; gap:9px; margin:29px 0; }.provider-preview-list span { padding:9px 12px; border:1px solid #cce5e1; border-radius:9px; color:#186673; background:white; font-size:12px; font-weight:700; }
@keyframes landing-rise { from { opacity:0; transform:translateY(24px) rotate(2deg); } to { opacity:1; transform:translateY(0) rotate(0); } } @keyframes landing-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-11px); } }
@media (max-width:1050px) { .landing-links { display:none; }.landing-hero { grid-template-columns:1fr; padding-top:70px; }.landing-hero-copy { max-width:680px; }.landing-hero-visual { width:min(680px,100%); margin:0 auto; }.landing-proof { width:calc(100% - max(10vw,60px)); }.landing-service-grid { grid-template-columns:repeat(3,1fr); }.landing-pricing { grid-template-columns:1fr; } }
@media (max-width:690px) { .landing-nav { min-height:66px; padding:10px 18px; }.landing-brand { font-size:20px; }.landing-logo { width:32px; height:32px; }.landing-provider-link { display:none; }.landing-nav-actions { gap:10px; }.landing-login { font-size:12px; }.landing-button-small { min-height:35px; padding:0 10px; }.landing-hero { min-height:auto; padding:55px 22px 45px; }.landing-hero h1,.provider-preview-hero h1 { font-size:43px; }.landing-lead { font-size:15px; }.landing-hero-visual { height:380px; margin-top:6px; }.landing-plan-card { top:70px; right:0; width:92%; padding:16px; }.landing-profile-card { left:0; top:20px; width:205px; }.landing-note-card { right:0; bottom:10px; width:220px; }.landing-proof { grid-template-columns:1fr; width:calc(100% - 44px); margin-bottom:42px; }.landing-proof div { padding:14px; }.landing-proof div+div { border-top:1px solid #e3eeec; border-left:0; }.landing-section { padding:65px 22px; }.landing-section-heading { display:block; }.landing-section-heading>p { margin-top:15px; }.landing-service-grid { grid-template-columns:repeat(2,1fr); gap:10px; margin-top:28px; }.landing-service-grid article { min-height:175px; padding:15px; }.landing-service-grid h3 { margin-top:16px; font-size:13px; }.landing-steps { grid-template-columns:1fr; gap:12px; margin-top:35px; }.landing-step-line { height:29px; transform:rotate(90deg); }.landing-step-line span { background:#f2faf8; }.landing-steps article { min-height:190px; }.landing-pricing { gap:33px; }.landing-pricing-card { padding:26px; }.landing-footer { display:grid; justify-items:start; padding:27px 22px; }.provider-preview-hero { padding:100px 22px; } } @media (prefers-reduced-motion:reduce) { .landing-plan-card,.landing-profile-card,.landing-note-card { animation:none; }.landing-button,.landing-service-grid article { transition:none; } }
.landing-service-grid i svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.landing-showcase { padding:86px max(5vw,30px) 102px; background:#f2faf9; }.landing-showcase-heading { max-width:660px; margin:0 auto 42px; text-align:center; }.landing-showcase-heading .landing-kicker { justify-content:center; }.landing-showcase-heading h2 { margin:0; font-family:Fraunces,Georgia,serif; font-size:clamp(31px,4vw,48px); line-height:1.06; letter-spacing:-.052em; }.landing-showcase-heading>p:not(.landing-kicker) { margin:17px 0 0; color:#60777e; font-size:14px; line-height:1.65; }.landing-showcase-grid { display:grid; grid-template-columns:1.2fr .8fr; align-items:stretch; gap:24px; max-width:1120px; margin:0 auto; }.landing-web-shot,.landing-mobile-story { overflow:hidden; border:1px solid #d7e8e5; border-radius:22px; background:white; box-shadow:0 18px 42px rgba(9,33,43,.08); }.landing-preview-label { display:flex; align-items:center; gap:9px; min-height:49px; padding:0 17px; border-bottom:1px solid #e6efed; }.landing-preview-label strong { color:#234a57; font-size:12px; }.landing-preview-label small { color:#7a9297; font-size:10px; }.landing-window-dots { display:flex; gap:5px; margin-right:2px; }.landing-window-dots i { width:7px; height:7px; border-radius:50%; background:#f1b59e; }.landing-window-dots i:nth-child(2) { background:#f4d58b; }.landing-window-dots i:nth-child(3) { background:#99d7bb; }.landing-web-image { display:block; width:100%; min-height:310px; object-fit:cover; object-position:left top; }.landing-mobile-story { position:relative; display:flex; align-items:center; min-height:390px; padding:28px; background:linear-gradient(145deg,#0b4f6c,#0b787e); }.landing-mobile-story:after { content:""; position:absolute; right:-70px; bottom:-100px; width:300px; height:300px; border:36px solid rgba(255,255,255,.07); border-radius:50%; }.landing-mobile-copy { position:relative; z-index:2; width:47%; color:white; }.landing-mobile-copy>span { color:#a7e8e6; font-size:9px; font-weight:800; letter-spacing:.11em; }.landing-mobile-copy h3 { margin:11px 0; font-family:Fraunces,Georgia,serif; font-size:28px; line-height:1.04; letter-spacing:-.04em; }.landing-mobile-copy p { color:rgba(255,255,255,.73); font-size:11px; line-height:1.6; }.landing-mobile-copy ul { display:grid; gap:7px; margin:19px 0 0; padding:0; list-style:none; color:#d8f7f1; font-size:10px; font-weight:700; }.landing-mobile-copy li:before { content:"✓"; display:inline-grid; place-items:center; width:15px; height:15px; margin-right:6px; border-radius:50%; color:#0b7378; background:#c8f5e9; font-size:9px; }.landing-phone { position:absolute; z-index:2; right:26px; bottom:-14px; width:200px; min-height:365px; padding:23px 14px 13px; border:6px solid #152e37; border-radius:28px; background:#fbfcfb; box-shadow:0 22px 40px rgba(0,0,0,.25); color:#112a33; transform:rotate(3deg); animation:landing-phone-float 6s ease-in-out infinite; }.landing-phone-speaker { position:absolute; top:8px; left:50%; width:47px; height:4px; border-radius:4px; background:#2d444c; transform:translateX(-50%); }.landing-phone-header { display:flex; align-items:center; gap:7px; font-size:11px; font-weight:800; }.landing-phone-header b { display:grid; place-items:center; width:21px; height:21px; border-radius:8px; color:white; background:#0b4f6c; }.landing-phone-header i { margin-left:auto; color:#637b82; font-style:normal; }.landing-phone-kicker { margin:18px 0 5px; color:#59757c; font-size:8px; font-weight:800; letter-spacing:.11em; }.landing-phone h4 { margin:0; font-family:Fraunces,Georgia,serif; font-size:20px; }.landing-phone-wellbeing { display:flex; align-items:center; gap:8px; margin-top:11px; padding:9px; border-radius:10px; background:#e2f5ed; }.landing-phone-wellbeing>span { color:#17815e; font-size:17px; }.landing-phone-wellbeing p,.landing-phone-task p { margin:0; }.landing-phone-wellbeing b,.landing-phone-wellbeing small,.landing-phone-task b,.landing-phone-task small { display:block; }.landing-phone-wellbeing b,.landing-phone-task b { font-size:9px; }.landing-phone-wellbeing small,.landing-phone-task small { margin-top:2px; color:#688087; font-size:7px; }.landing-phone-task { display:flex; align-items:center; gap:7px; padding:8px 0; border-bottom:1px solid #e6efed; }.landing-phone-task>i { display:grid; place-items:center; width:23px; height:23px; border-radius:7px; color:white; background:#0b4f6c; font-size:12px; font-style:normal; font-weight:800; }.landing-phone-task:nth-of-type(2)>i { color:#15745a; background:#def4e9; }.landing-phone-task em { margin-left:auto; padding:3px; border-radius:4px; color:#b56d00; background:#fff1d7; font-size:6px; font-style:normal; font-weight:800; }.landing-phone-talk { display:flex; align-items:center; justify-content:center; gap:4px; margin-top:13px; padding:8px; border-radius:16px; color:white; background:#0b4f6c; font-size:8px; font-weight:800; }.landing-phone-nav { display:flex; justify-content:space-around; margin-top:10px; color:#54737a; font-size:12px; }.landing-phone-nav span:nth-child(2) { color:#0b4f6c; }.landing-reveal { opacity:0; transform:translateY(24px); transition:opacity .6s ease var(--reveal-delay,0ms),transform .6s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms); }.landing-reveal.is-visible { opacity:1; transform:translateY(0); }.landing-steps article small { display:block; margin-top:18px; padding-top:13px; border-top:1px solid #e4efeb; color:#4a8d81; font-size:9px; font-weight:800; letter-spacing:.04em; }.landing-step-line { opacity:0; transition:opacity .45s ease var(--reveal-delay,0ms); }.landing-step-line.is-visible { opacity:1; }.landing-step-line.is-visible span { animation:landing-arrow 1.5s ease-in-out infinite .8s; } @keyframes landing-phone-float { 0%,100% { transform:rotate(3deg) translateY(0); } 50% { transform:rotate(3deg) translateY(-10px); } } @keyframes landing-arrow { 0%,100% { transform:translateX(0); } 50% { transform:translateX(8px); } }
@media (max-width:900px) { .landing-showcase-grid { grid-template-columns:1fr; }.landing-mobile-story { min-height:420px; }.landing-mobile-copy { width:52%; } }.landing-web-image { min-height:0; }
@media (max-width:560px) { .landing-showcase { padding:65px 22px; }.landing-mobile-story { min-height:420px; padding:22px; }.landing-mobile-copy { width:50%; }.landing-mobile-copy h3 { font-size:23px; }.landing-mobile-copy p { font-size:10px; }.landing-mobile-copy ul { font-size:8px; }.landing-phone { right:10px; width:184px; transform:rotate(2deg) scale(.94); transform-origin:bottom right; }.landing-phone-float { transform:rotate(2deg); } }
@media (prefers-reduced-motion:reduce) { .landing-reveal,.landing-step-line { opacity:1; transform:none; transition:none; }.landing-phone,.landing-step-line.is-visible span { animation:none; } }

.provider-session-note { margin:15px 0 0; color:#638087; font-size:12px; font-weight:600; }.care-partner-auth-page { background:linear-gradient(145deg,#f4fbfa,#edf6f7); }.care-partner-auth-card { border-top:4px solid #087e7b; }.care-partner-auth-hint { margin:7px 0 0; padding:10px; border-radius:8px; color:#27635c; background:#edf8f6; font-size:11px; line-height:1.5; }.profile-photo-field small { color:var(--muted); font-size:10px; }.profile-photo-preview { display:block; width:78px; height:78px; margin-top:6px; border:2px solid #d6ebea; border-radius:50%; object-fit:cover; }.care-partner-address-fields { display:grid; gap:7px; }.care-partner-address-components { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px 16px; }.care-partner-address-components>div { display:grid; gap:7px; }.care-partner-address-fields .address-results { grid-column:1/-1; }.care-partner-address-fields .declaration { margin-top:4px; }

/* Care Partner workspace */
.care-partner-workspace { display:grid; grid-template-columns:244px minmax(0,1fr); min-height:100vh; background:#f4f8f7; }.care-partner-sidebar { background:#fff; }.care-partner-switch { margin:0 10px 18px; padding:7px 10px; border-radius:7px; color:#087b87; background:#e4f7f3; font-size:9px; font-weight:800; letter-spacing:.1em; }.care-partner-admin-links { display:grid; gap:3px; margin:21px 5px 0; padding-top:17px; border-top:1px solid var(--line); }.care-partner-admin-links .eyebrow { margin:0 8px 5px; }.care-partner-admin-links .nav-link { padding:8px 10px; font-size:12px; }.care-partner-content { width:min(1260px,100%); margin:0 auto; padding:35px 38px 54px; }.care-partner-topbar,.care-partner-page-heading,.care-partner-panel-heading,.care-partner-list-item,.offer-card-heading,.offer-actions,.assignment-row,.payout-row { display:flex; align-items:center; }.care-partner-topbar,.care-partner-panel-heading { justify-content:space-between; gap:20px; }.care-partner-topbar { margin-bottom:25px; }.care-partner-topbar h1,.care-partner-page-heading h1 { margin:0; font-family:Fraunces,Georgia,serif; font-size:clamp(29px,3vw,42px); letter-spacing:-.045em; }.care-partner-topbar>div>p:last-child,.care-partner-page-heading>p:last-child { max-width:630px; margin:9px 0 0; color:var(--muted); font-size:14px; line-height:1.55; }.availability-toggle { display:flex; align-items:center; gap:9px; padding:7px 8px 7px 13px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--muted); font-size:11px; font-weight:700; }.availability-button { border:0; border-radius:999px; padding:8px 13px; color:#936000; background:#fff2d9; font:inherit; font-size:11px; font-weight:800; }.availability-button.is-available { color:#087354; background:#dbf4e9; }.care-partner-hero { display:flex; align-items:center; justify-content:space-between; gap:28px; overflow:hidden; position:relative; padding:31px 34px; border-radius:20px; color:white; background:linear-gradient(120deg,#0b4f6c,#087e7b); box-shadow:0 16px 35px rgba(11,79,108,.15); }.care-partner-hero:after { content:""; position:absolute; right:-70px; top:-110px; width:330px; height:330px; border:42px solid rgba(255,255,255,.08); border-radius:50%; }.care-partner-hero>div { position:relative; z-index:1; }.care-partner-hero h2 { max-width:600px; margin:13px 0 7px; font-family:Fraunces,Georgia,serif; font-size:28px; letter-spacing:-.035em; }.care-partner-hero p { max-width:580px; margin:0 0 15px; color:rgba(255,255,255,.8); font-size:13px; line-height:1.55; }.care-partner-light-link { color:white; font-size:12px; font-weight:800; }.care-partner-progress { display:grid; justify-items:center; flex:0 0 180px; gap:5px; padding:21px; border:1px solid rgba(255,255,255,.2); border-radius:15px; background:rgba(255,255,255,.1); }.care-partner-progress strong { font-family:Fraunces,Georgia,serif; font-size:32px; }.care-partner-progress span { color:#c5efed; font-size:10px; font-weight:700; }.care-partner-progress i { overflow:hidden; display:block; width:100%; height:5px; margin-top:8px; border-radius:10px; background:rgba(255,255,255,.22); }.care-partner-progress b { display:block; height:100%; border-radius:inherit; background:#b6f0de; }.care-partner-summary-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; margin:19px 0; }.care-partner-summary-grid article { display:flex; align-items:center; gap:11px; min-width:0; padding:17px; border:1px solid var(--line); border-radius:14px; background:#fff; }.care-partner-summary-grid article>span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; color:var(--yale-blue); background:#eaf5f7; font-size:17px; }.care-partner-summary-grid article:nth-child(2)>span { color:#16825f; background:#e6f6ed; }.care-partner-summary-grid article:nth-child(3)>span { color:#a66c00; background:#fff3dd; }.care-partner-summary-grid small,.care-partner-summary-grid strong { display:block; }.care-partner-summary-grid small { color:var(--muted); font-size:10px; }.care-partner-summary-grid strong { margin-top:3px; font-size:15px; }.care-partner-columns,.care-partner-two-column-page,.moderation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.care-partner-panel,.care-partner-form-card { padding:25px; border:1px solid var(--line); border-radius:17px; background:#fff; box-shadow:0 6px 20px rgba(4,15,22,.025); }.care-partner-panel-heading h2,.care-partner-form-card h2 { margin:0; font-family:Fraunces,Georgia,serif; font-size:23px; letter-spacing:-.03em; }.care-partner-panel-heading>a { color:var(--yale-blue); font-size:12px; font-weight:800; }.care-partner-list-item { gap:11px; min-height:67px; padding:13px 0; border-bottom:1px solid var(--line); }.care-partner-list-item:last-child { border-bottom:0; }.care-partner-list-item>div { min-width:0; flex:1; }.care-partner-list-item strong,.care-partner-list-item small { display:block; }.care-partner-list-item strong { font-size:13px; }.care-partner-list-item small { margin-top:4px; overflow:hidden; color:var(--muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.care-partner-list-item em { color:#087b69; font-size:11px; font-style:normal; font-weight:800; }.care-partner-list-item.is-link:hover { color:var(--yale-blue); }.care-partner-list-icon { display:grid; place-items:center; flex:0 0 auto; width:34px; height:34px; border-radius:10px; color:var(--yale-blue); background:#e7f4f6; font-size:15px; }.care-partner-page-heading { display:block; margin:3px 0 26px; }.care-partner-page-heading .eyebrow { margin-bottom:8px; }.onboarding-content { width:min(1080px,100%); }.onboarding-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin:0 0 20px; }.onboarding-steps a { display:flex; align-items:center; gap:8px; padding:10px; border:1px solid var(--line); border-radius:10px; color:var(--muted); background:#fff; font-size:11px; font-weight:700; }.onboarding-steps a b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; color:#6f858a; background:#edf2f2; font-size:10px; }.onboarding-steps a.active { color:var(--yale-blue); border-color:#9bd6df; background:#edf9fa; }.onboarding-steps a.active b,.onboarding-steps a.complete b { color:white; background:var(--yale-blue); }.care-partner-form-card>p:not(.eyebrow),.care-partner-form-card>h2+p { color:var(--muted); font-size:13px; line-height:1.6; }.care-partner-form { display:grid; gap:18px; margin-top:20px; }.care-partner-form-grid { display:grid; grid-template-columns:1fr; gap:7px; }.care-partner-form-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px 16px; }.care-partner-form-grid.two>div { display:grid; gap:7px; }.care-partner-form-grid .full { grid-column:1/-1; }.care-partner-form label,.care-partner-form-grid label { color:#20333a; font-size:12px; font-weight:800; }.care-partner-form input,.care-partner-form select,.care-partner-form textarea,.review-status-controls select { width:100%; padding:10px 11px; border:1px solid var(--line); border-radius:8px; color:var(--ink-black); background:#fff; font:inherit; font-size:13px; }.care-partner-form input:focus,.care-partner-form select:focus,.care-partner-form textarea:focus { outline:2px solid #bdebf8; border-color:var(--bright-sky); }.compact-form { margin:18px 0 0; padding-top:18px; border-top:1px solid var(--line); }.secondary-button { display:inline-flex; align-items:center; justify-content:center; border:1px solid #b9d5db; border-radius:8px; padding:9px 12px; color:var(--yale-blue); background:#fff; font-size:12px; font-weight:800; }.primary-button:disabled { cursor:not-allowed; opacity:.45; }.evidence-list { margin-top:17px; border-top:1px solid var(--line); }.evidence-list article { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }.evidence-list strong,.evidence-list small { display:block; }.evidence-list strong { font-size:12px; }.evidence-list small { margin-top:3px; color:var(--muted); font-size:10px; }.application-readiness { margin:19px 0; padding:15px; border-radius:10px; background:#eff8f7; color:#205249; font-size:12px; line-height:1.55; }.application-readiness p { margin:6px 0 0; }.application-readiness ul { display:grid; gap:5px; margin:9px 0 0; padding-left:18px; }.declaration { display:flex; align-items:flex-start; gap:8px; line-height:1.45; }.declaration input { width:auto; margin:2px 0 0; }.scope-item,.ledger-item,.review-evidence,.review-history article { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px 0; border-bottom:1px solid var(--line); }.scope-item:last-child,.ledger-item:last-child,.review-evidence:last-child,.review-history article:last-child { border-bottom:0; }.scope-item strong,.scope-item small,.ledger-item strong,.ledger-item small,.review-evidence strong,.review-evidence small { display:block; }.scope-item strong,.ledger-item strong,.review-evidence strong { font-size:13px; }.scope-item small,.ledger-item small,.review-evidence small { margin-top:4px; color:var(--muted); font-size:10px; }.scope-item p { margin:7px 0 0; color:#4d656d; font-size:11px; }.offer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }.offer-card { display:flex; flex-direction:column; padding:22px; border:1px solid var(--line); border-radius:17px; background:#fff; box-shadow:0 7px 21px rgba(4,15,22,.03); }.offer-card.is-closed { opacity:.62; }.offer-card-heading { justify-content:space-between; }.offer-card h2 { margin:17px 0 5px; font-family:Fraunces,Georgia,serif; font-size:22px; letter-spacing:-.035em; }.offer-card>p { min-height:35px; margin:0; color:var(--muted); font-size:12px; line-height:1.45; }.offer-card dl,.visit-details dl,.review-details { display:grid; gap:9px; margin:19px 0; }.offer-card dl div,.visit-details dl div,.review-details div { display:flex; justify-content:space-between; gap:12px; font-size:11px; }.offer-card dt,.visit-details dt,.review-details dt { color:var(--muted); }.offer-card dd,.visit-details dd,.review-details dd { margin:0; text-align:right; font-weight:700; }.offer-actions { gap:8px; margin-top:auto; padding-top:12px; }.offer-actions .primary-button,.offer-actions .secondary-button { flex:1; }.offer-card>small { display:block; margin-top:12px; color:var(--muted); font-size:10px; line-height:1.45; }.care-partner-empty { display:grid; justify-items:center; max-width:550px; margin:45px auto; padding:40px 25px; text-align:center; }.care-partner-empty>span { display:grid; place-items:center; width:52px; height:52px; border-radius:17px; color:var(--yale-blue); background:#e5f4f6; font-size:25px; }.care-partner-empty h2 { margin:15px 0 7px; font-family:Fraunces,Georgia,serif; font-size:26px; }.care-partner-empty p { margin:0 0 18px; color:var(--muted); font-size:13px; line-height:1.55; }.assignment-table { overflow:hidden; border:1px solid var(--line); border-radius:16px; background:#fff; }.assignment-row { gap:13px; padding:18px 21px; border-bottom:1px solid var(--line); }.assignment-row:last-child { border-bottom:0; }.assignment-row>div { min-width:0; flex:1; }.assignment-row strong,.assignment-row small { display:block; }.assignment-row strong { font-size:13px; }.assignment-row small { margin-top:4px; color:var(--muted); font-size:11px; }.assignment-row>b { color:var(--yale-blue); }.assignment-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; }.assignment-detail-grid { align-items:start; }.visit-details dl { margin-bottom:21px; }.visit-details dd { max-width:60%; }.visit-notes { margin:19px 0; padding:14px; border-radius:10px; background:#f2f8f8; font-size:12px; line-height:1.55; }.visit-notes p { margin:6px 0 0; }.privacy-callout { padding-top:14px; border-top:1px solid var(--line); color:#8a5a00; font-size:11px; line-height:1.5; }.visit-actions>p:not(.eyebrow) { margin:10px 0 16px; color:var(--muted); font-size:13px; line-height:1.55; }.visit-completion-form { margin-top:18px; }.checklist-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }.checklist-grid label { padding:11px; border:1px solid var(--line); border-radius:8px; font-size:11px; line-height:1.4; }.checklist-grid input { width:auto; margin-right:5px; }.earnings-summary { margin-bottom:20px; }.manual-pill { padding:5px 8px; border-radius:7px; color:#8a5a00; background:#fff1d7; font-size:10px; font-weight:800; }.ledger-item>div { flex:1; }.ledger-item>b { min-width:72px; text-align:right; color:#0a7360; font-size:13px; }.member-workspace-link { margin:16px 5px 0; padding:12px 6px; border-top:1px solid var(--line); color:var(--yale-blue); font-size:11px; font-weight:800; }.completion-card { max-width:720px; }.dispute-form { margin-top:26px; padding-top:19px; border-top:1px solid var(--line); }.moderation-row { display:flex; align-items:center; gap:12px; padding:15px 0; border-bottom:1px solid var(--line); }.moderation-row>div { flex:1; }.moderation-row strong,.moderation-row small { display:block; }.moderation-row strong { font-size:13px; }.moderation-row small { margin-top:4px; color:var(--muted); font-size:11px; }.moderation-row>b { color:var(--yale-blue); }.moderation-grid { align-items:start; }.review-evidence { align-items:flex-start; }.review-evidence>a { color:var(--yale-blue); font-size:11px; font-weight:800; }.review-status-controls { display:grid; gap:9px; padding-top:17px; border-top:1px solid var(--line); }.review-status-controls p { margin:4px 0 0; font-size:12px; }.review-status-controls label { display:grid; grid-template-columns:1fr 135px; align-items:center; gap:12px; }.review-history { margin-top:18px; }.review-history article { display:block; }.review-history article div { display:flex; justify-content:space-between; gap:12px; }.review-history strong,.review-history small { display:block; }.review-history small { color:var(--muted); font-size:10px; }.review-history p { margin:7px 0 0; color:#4e6268; font-size:12px; line-height:1.5; }.payout-row { justify-content:space-between; gap:18px; padding:16px 0; border-bottom:1px solid var(--line); }.payout-row>div { flex:1; }.payout-row strong,.payout-row small { display:block; }.payout-row strong { font-size:13px; }.payout-row small { margin-top:4px; color:var(--muted); font-size:11px; }.inline-payout-form { display:flex; align-items:center; gap:7px; }.inline-payout-form input,.inline-payout-form select { padding:8px; border:1px solid var(--line); border-radius:7px; font:inherit; font-size:11px; }
@media (max-width:1000px) { .care-partner-summary-grid { grid-template-columns:repeat(2,1fr); }.offer-grid { grid-template-columns:repeat(2,1fr); }.care-partner-columns,.care-partner-two-column-page,.moderation-grid { grid-template-columns:1fr; } }

.document-evidence-upload small { color:var(--muted); font-size:10px; line-height:1.45; }.evidence-photo-list { display:flex; gap:6px; margin-top:8px; }.evidence-photo-thumbnail { width:44px; height:44px; border:1px solid #d6ebea; border-radius:7px; object-fit:cover; }.review-evidence-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.review-evidence-links a { color:var(--yale-blue); font-size:11px; font-weight:800; }.onboarding-steps .locked { display:flex; align-items:center; gap:8px; padding:10px; border:1px solid var(--line); border-radius:10px; color:#99a9ad; background:#f5f7f7; font-size:11px; font-weight:700; cursor:not-allowed; }.onboarding-steps .locked b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; color:#99a9ad; background:#e8eeee; font-size:10px; }

.care-partner-workspace .primary-button,.care-partner-workspace .secondary-button { display:inline-flex; align-items:center; justify-content:center; justify-self:end; width:auto; min-height:46px; border:0; border-radius:15px; padding:12px 21px; color:#fff; background:#0b5878; box-shadow:0 7px 16px rgba(11,88,120,.16); font:inherit; font-size:13px; font-weight:800; cursor:pointer; transition:background .18s ease,transform .18s ease,box-shadow .18s ease; }.care-partner-workspace .primary-button:hover,.care-partner-workspace .secondary-button:hover { background:#084866; box-shadow:0 10px 20px rgba(11,88,120,.22); transform:translateY(-1px); }.care-partner-workspace .primary-button:disabled,.care-partner-workspace .secondary-button:disabled { cursor:not-allowed; opacity:.45; transform:none; }.care-partner-workspace .text-button { display:inline-flex; align-items:center; justify-content:center; min-height:37px; border:1px solid #0b5878; border-radius:11px; padding:8px 12px; color:#0b5878; background:#fff; font:inherit; font-size:11px; font-weight:800; cursor:pointer; }.care-partner-workspace .text-button:hover { color:#fff; background:#0b5878; }.service-enrollment-list { display:grid; gap:9px; margin:18px 0; }.service-enrollment-item { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 0; border-bottom:1px solid var(--line); }.service-enrollment-item strong,.service-enrollment-item small { display:block; }.service-enrollment-item strong { font-size:13px; }.service-enrollment-item small { margin-top:4px; color:var(--muted); font-size:11px; }.service-enrollment-card { margin-top:20px; padding:20px; border:1px solid #d3e7e6; border-radius:15px; background:#f8fcfb; }.service-enrollment-card h3 { margin:3px 0 0; font-size:18px; }.service-enrollment-card .care-partner-form { margin-top:15px; }.service-enrollment-details { margin-top:4px; padding-top:16px; border-top:1px solid #dcebea; }.service-credential-fields { margin-top:16px; padding:15px; border:1px solid #d3e7e6; border-radius:12px; background:#eef8f6; }.service-credential-fields p { margin:0 0 13px; color:#27635c; font-size:11px; line-height:1.5; }

.service-field-label { display:block; margin-bottom:8px; color:#20333a; font-size:12px; font-weight:800; }.service-field-label small { color:var(--muted); font-size:10px; font-weight:600; }.available-days-options { display:flex; flex-wrap:wrap; gap:8px; }.care-partner-form .available-day-option { display:inline-flex; align-items:center; gap:6px; width:auto; padding:8px 10px; border:1px solid #c9dddf; border-radius:9px; color:#315259; background:#fff; font-size:11px; font-weight:700; cursor:pointer; }.care-partner-form .available-day-option input { width:auto; margin:0; accent-color:#0b5878; }.available-day-option:has(input:checked) { border-color:#0b5878; color:#0b5878; background:#e8f5f6; }

.service-enrollment-item { display:block; padding:0; border:1px solid #d7e8e5; border-radius:12px; background:#fff; }.service-enrollment-item+ .service-enrollment-item { margin-top:8px; }.service-enrollment-item summary { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; cursor:pointer; list-style:none; }.service-enrollment-item summary::-webkit-details-marker { display:none; }.service-enrollment-item summary>span { color:#0b5878; font-size:11px; font-weight:800; }.service-enrollment-item[open] summary { border-bottom:1px solid #d7e8e5; background:#f8fcfb; }.service-enrollment-expanded { padding:0 14px 14px; }.service-enrollment-expanded>p { margin:13px 0 0; color:#536e74; font-size:11px; line-height:1.5; }.service-enrollment-expanded .service-enrollment-form { margin-top:14px; }.service-card-actions { display:flex; justify-content:flex-end; margin-top:12px; }.add-service-disclosure { margin-top:18px; }.add-service-disclosure>summary { list-style:none; }.add-service-disclosure>summary::-webkit-details-marker { display:none; }.add-service-disclosure[open]>summary { color:#fff; background:#0b5878; }.add-service-disclosure .service-enrollment-card { margin-top:12px; }.service-limit-message { margin:18px 0 0; padding:12px 14px; border-radius:12px; color:#35635d; background:#eef8f6; font-size:12px; }
.offer-notifications { position:fixed; z-index:30; right:20px; bottom:20px; display:grid; gap:10px; width:min(360px, calc(100vw - 40px)); }.offer-notification { display:grid; gap:4px; padding:15px; border:1px solid #b9ded8; border-radius:14px; color:#124b56; background:#f4fffc; box-shadow:0 14px 30px rgba(12, 67, 83, .18); font-size:12px; }.offer-notification strong { font-size:13px; }.offer-notification span { color:#4d6970; }.offer-notification a { justify-self:start; margin-top:3px; color:#0b5878; font-weight:800; text-decoration:none; }
@media (max-width:760px) { .care-partner-workspace { display:block; }.care-partner-sidebar { position:static; height:auto; padding:17px; border-right:0; border-bottom:1px solid var(--line); }.care-partner-sidebar .brand-tagline,.care-partner-sidebar .care-partner-switch,.care-partner-sidebar .main-nav,.care-partner-sidebar .care-partner-admin-links { display:none; }.care-partner-sidebar .sidebar-footer { margin:0; padding:0; border:0; }.care-partner-content { padding:25px 18px 40px; }.care-partner-topbar,.care-partner-hero,.assignment-heading { align-items:flex-start; flex-direction:column; }.care-partner-progress { width:100%; }.onboarding-steps { overflow:auto; grid-template-columns:repeat(4,150px); }.care-partner-form-grid.two,.care-partner-address-components,.checklist-grid { grid-template-columns:1fr; }.offer-grid { grid-template-columns:1fr; }.care-partner-summary-grid { grid-template-columns:1fr 1fr; }.inline-payout-form { align-items:stretch; flex-direction:column; }.payout-row { align-items:flex-start; flex-direction:column; }.review-status-controls label { grid-template-columns:1fr; } }

/* Admin workspace: deliberately separate from member and Care Partner sessions. */
.admin-workspace { display:grid; grid-template-columns:244px minmax(0,1fr); min-height:100vh; background:#f4f8f7; }.admin-sidebar { background:#fff; }.admin-switch { margin:0 10px 18px; padding:7px 10px; border-radius:7px; color:#6b4b00; background:#fff1d9; font-size:9px; font-weight:800; letter-spacing:.1em; }.admin-content { width:min(1320px,100%); margin:0 auto; padding:35px 38px 54px; }.admin-page-heading { margin:3px 0 26px; }.admin-page-heading h1 { margin:0; font-family:Fraunces,Georgia,serif; font-size:clamp(29px,3vw,42px); letter-spacing:-.045em; }.admin-page-heading>p:last-child { max-width:700px; margin:9px 0 0; color:var(--muted); font-size:14px; line-height:1.55; }.admin-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin:19px 0; }.admin-summary-grid article { display:flex; align-items:center; gap:11px; padding:17px; border:1px solid var(--line); border-radius:14px; background:#fff; }.admin-summary-grid article>span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; color:var(--yale-blue); background:#eaf5f7; font-size:17px; }.admin-summary-grid article:nth-child(2)>span { color:#a66c00; background:#fff3dd; }.admin-summary-grid article:nth-child(3)>span { color:#16825f; background:#e6f6ed; }.admin-summary-grid small,.admin-summary-grid strong { display:block; }.admin-summary-grid small { color:var(--muted); font-size:10px; }.admin-summary-grid strong { margin-top:3px; font-size:15px; }.admin-columns,.admin-review-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.admin-panel { padding:25px; border:1px solid var(--line); border-radius:17px; background:#fff; box-shadow:0 6px 20px rgba(4,15,22,.025); }.admin-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; }.admin-panel-heading h2,.admin-panel h2 { margin:0; font-family:Fraunces,Georgia,serif; font-size:23px; letter-spacing:-.03em; }.admin-panel-heading>a { color:var(--yale-blue); font-size:12px; font-weight:800; }.admin-list-row { display:flex; align-items:center; gap:12px; padding:15px 0; border-bottom:1px solid var(--line); }.admin-list-row:last-child { border-bottom:0; }.admin-list-row>div:not(.avatar) { min-width:0; flex:1; }.admin-list-row>.avatar { flex:0 0 31px; width:31px; height:31px; aspect-ratio:1; }.admin-list-row strong,.admin-list-row small { display:block; }.admin-list-row strong { font-size:13px; }.admin-list-row small { margin-top:4px; overflow:hidden; color:var(--muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.admin-list-row>b,.admin-table-row>b { color:var(--yale-blue); }.admin-filter-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }.admin-filter-tabs a { padding:8px 10px; border:1px solid var(--line); border-radius:999px; color:#52666c; background:#fff; font-size:11px; font-weight:800; }.admin-filter-tabs a:hover,.admin-filter-tabs a.active { border-color:#9bd6df; color:var(--yale-blue); background:#edf9fa; }.admin-table-panel { padding:0; overflow:hidden; }.admin-table { display:grid; }.admin-table-row { display:grid; grid-template-columns:1.05fr 1.2fr 1.15fr .6fr .85fr 18px; align-items:center; gap:14px; min-height:65px; padding:13px 20px; border-bottom:1px solid var(--line); font-size:12px; }.admin-table-row:last-child { border-bottom:0; }.admin-table-row strong,.admin-table-row small { display:block; }.admin-table-row strong { font-size:13px; }.admin-table-row small { margin-top:3px; color:var(--muted); font-size:10px; }.admin-table-heading { min-height:42px; color:var(--muted); background:#f8fbfb; font-size:10px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }.provider-table-row { grid-template-columns:1.05fr 1.1fr 1.25fr 1fr .75fr 18px; }.provider-table-heading { grid-template-columns:1.05fr 1.1fr 1.25fr 1fr .75fr 18px; }.admin-details { display:grid; gap:10px; margin:19px 0; }.admin-details div { display:flex; justify-content:space-between; gap:16px; font-size:12px; }.admin-details dt { color:var(--muted); }.admin-details dd { max-width:62%; margin:0; text-align:right; font-weight:700; overflow-wrap:anywhere; }.admin-record-row,.admin-evidence-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px 0; border-bottom:1px solid var(--line); }.admin-record-row strong,.admin-record-row small,.admin-evidence-row strong,.admin-evidence-row small { display:block; }.admin-record-row strong,.admin-evidence-row strong { font-size:13px; }.admin-record-row small,.admin-evidence-row small { margin-top:4px; color:var(--muted); font-size:10px; }.admin-subnote { margin:8px 0 0; color:var(--muted); font-size:11px; }.admin-evidence-row { align-items:flex-start; }.admin-evidence-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.admin-evidence-links a,.admin-evidence-row>a { color:var(--yale-blue); font-size:11px; font-weight:800; }.admin-decision-panel>p:not(.eyebrow) { color:var(--muted); font-size:13px; line-height:1.6; }.admin-ready-callout { margin:18px 0 0; padding:13px; border-radius:10px; color:#176750; background:#e9f7f1; font-weight:700; }.admin-decision-form { display:grid; gap:8px; margin-top:20px; }.admin-decision-form label { margin-top:8px; color:#20333a; font-size:12px; font-weight:800; }.admin-decision-form input,.admin-decision-form select,.admin-decision-form textarea { width:100%; padding:10px 11px; border:1px solid var(--line); border-radius:8px; color:var(--ink-black); background:#fff; font:inherit; font-size:13px; }.admin-decision-form .primary-button { margin-top:10px; justify-self:end; min-height:46px; border-radius:15px; padding:12px 21px; background:#0b5878; box-shadow:0 7px 16px rgba(11,88,120,.16); }.admin-review-history { margin-top:18px; }.admin-review-history article { padding:15px 0; border-bottom:1px solid var(--line); }.admin-review-history article:last-child { border-bottom:0; }.admin-review-history article>div { display:flex; justify-content:space-between; gap:12px; }.admin-review-history strong,.admin-review-history small { display:block; }.admin-review-history small { color:var(--muted); font-size:10px; }.admin-review-history p { margin:7px 0 0; color:#4e6268; font-size:12px; line-height:1.5; }
@media (max-width:1000px) { .admin-summary-grid { grid-template-columns:repeat(2,1fr); }.admin-columns,.admin-review-grid { grid-template-columns:1fr; }.admin-table-row,.provider-table-row,.provider-table-heading { grid-template-columns:1.1fr 1fr .9fr 18px; }.admin-table-row>span:nth-child(3),.admin-table-row>span:nth-child(4),.provider-table-row>span:nth-child(3),.provider-table-row>span:nth-child(4),.admin-table-heading>span:nth-child(3),.admin-table-heading>span:nth-child(4),.provider-table-heading>span:nth-child(3),.provider-table-heading>span:nth-child(4) { display:none; } }
@media (max-width:760px) { .admin-workspace { display:block; }.admin-sidebar { position:static; height:auto; padding:17px; border-right:0; border-bottom:1px solid var(--line); }.admin-sidebar .brand-tagline,.admin-sidebar .admin-switch,.admin-sidebar .main-nav { display:none; }.admin-sidebar .sidebar-footer { margin:0; padding:0; border:0; }.admin-content { padding:25px 18px 40px; }.admin-summary-grid { grid-template-columns:1fr 1fr; }.admin-table-row,.provider-table-row,.provider-table-heading { grid-template-columns:1.2fr 1fr 18px; gap:10px; padding:12px; }.admin-table-row>span:nth-child(2),.admin-table-heading>span:nth-child(2),.provider-table-row>span:nth-child(2),.provider-table-heading>span:nth-child(2) { display:none; }.admin-table-row>span:last-of-type { justify-self:end; }.admin-details div { align-items:flex-start; flex-direction:column; gap:3px; }.admin-details dd { max-width:100%; text-align:left; }.admin-review-history article>div { align-items:flex-start; flex-direction:column; gap:4px; } }
