*{box-sizing:border-box}html,body{color:#17201b;background:#f6f7f4;min-height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#15241c;flex-direction:column;gap:32px;padding:32px 22px;display:flex}.sidebar h1{margin:5px 0;font-size:24px}.muted{color:#758078;margin:5px 0;line-height:1.5}.sidebar .muted{color:#aeb9b1}.eyebrow{letter-spacing:.16em;color:#7d8a81;font-size:11px;font-weight:800}.sidebar .eyebrow{color:#8ba293}nav{flex-direction:column;gap:5px;display:flex}.nav{color:#b9c5bd;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 13px}.nav.active{color:#fff;background:#263a2f;font-weight:700}.sidebarBottom{flex-direction:column;gap:12px;margin-top:auto;display:flex}.connection{color:#b9c5bd;align-items:center;gap:8px;font-size:12px;display:flex}.connection span{background:#72b886;border-radius:50%;width:8px;height:8px}.signout{color:#d5ddd8;text-align:left;cursor:pointer;background:0 0;border:1px solid #3d5045;border-radius:9px;width:100%;padding:9px 12px}.content{width:100%;max-width:1500px;padding:46px}header{justify-content:space-between;align-items:center;margin-bottom:34px;display:flex}header h2{margin:5px 0;font-size:34px}.primary{color:#fff;cursor:pointer;background:#1f6a46;border:0;border-radius:10px;justify-content:center;align-items:center;padding:12px 18px;font-weight:750;display:inline-flex}.primary:disabled{opacity:.45;cursor:not-allowed}.secondaryButton{color:#314038;background:#fff;border:1px solid #d5ddd7;border-radius:10px;align-items:center;padding:10px 14px;font-weight:700;display:inline-flex}.dangerButton{color:#93472f;cursor:pointer;background:#fff7f4;border:1px solid #e2c5bc;border-radius:10px;align-items:center;padding:10px 14px;font-weight:750;display:inline-flex}.card{background:#fff;border:1px solid #e1e5e1;border-radius:14px;padding:23px}.cardhead{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.card h3{margin:0;font-size:17px}.textbutton,.textButton{color:#26734e;cursor:pointer;background:0 0;border:0;font-weight:700}.muted{color:#758078}.empty{text-align:center;color:#7b857f;max-width:390px;margin:65px auto 35px}.empty strong{color:#374139;margin:10px;display:block}.empty p{font-size:13px;line-height:1.5}.emptyicon{color:#52715f;background:#eff3ef;border-radius:50%;place-items:center;width:42px;height:42px;margin:auto;font-size:20px;display:grid}.compactEmpty{margin:35px auto}.pageShell{max-width:1500px;margin:0 auto;padding:46px}.narrowPage{max-width:900px}.pageTopbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.pageTopbar h1{margin:5px 0;font-size:34px}.pageActions,.formActions{align-items:center;gap:10px;display:flex}.formActions{justify-content:flex-end;margin-top:4px}.inactiveNotice{color:#5f6962;background:#f1f2f0;border:1px solid #dde1dd;border-radius:10px;margin-bottom:18px;padding:12px 14px;font-size:13px}.clientList,.teamList{flex-direction:column;margin-top:18px;display:flex}.clientRow,.teamRow{border-top:1px solid #edf0ed;grid-template-columns:auto 1.2fr 1.4fr auto;align-items:center;gap:15px;padding:15px 0;display:grid}.clientAvatar,.petAvatar{color:#315c45;background:#eff3ef;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.clientMain,.clientMeta{flex-direction:column;gap:4px;display:flex}.clientMain span,.clientMeta span{color:#748078;font-size:13px}.clientForm{flex-direction:column;gap:15px;margin-top:20px;display:flex}.clientForm label{color:#39443d;flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.clientForm input,.clientForm textarea,.clientForm select{background:#fff;border:1px solid #cfd7d1;border-radius:10px;outline:none;width:100%;padding:11px 12px}.clientForm textarea{resize:vertical}.clientForm input:focus,.clientForm textarea:focus,.clientForm select:focus{border-color:#4b8061;box-shadow:0 0 0 3px #4b80611f}.formTwo{grid-template-columns:1fr 1fr;gap:12px;display:grid}.optional{color:#8b948e;font-weight:500}.successBanner,.errorBanner{border-radius:10px;margin-bottom:18px;padding:11px 13px;font-size:13px}.successBanner{color:#286443;background:#edf7ef;border:1px solid #cfe6d5}.errorBanner{color:#8a442d;background:#fff1ec;border:1px solid #f0d1c5}.detailList{flex-direction:column;margin-top:16px;display:flex}.detailItem{border-top:1px solid #edf0ed;grid-template-columns:110px 1fr;gap:18px;padding:11px 0;display:grid}.detailItem span,.detailLabel{color:#758078;font-size:13px}.detailItem strong{font-size:14px}.detailNote{color:#556159;margin:18px 0 0;line-height:1.65}.petGrid{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px;display:grid}.petCard{border:1px solid #e4e9e5;border-radius:12px;gap:14px;padding:16px;display:flex}.petCard p{color:#748078;margin:5px 0;font-size:13px;line-height:1.45}.petMedical{border-top:1px solid #edf0ed;padding-top:8px}.petMedical strong{color:#4c5b52}.petAvatar{flex:0 0 42px}.clientProfilePage{max-width:1180px}.clientProfileTopbar{margin-bottom:22px}.clientTitleRow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.clientStatusBadge,.portalBadge{border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.clientStatusBadge.isActive,.portalBadge-active{color:#286443;background:#e9f3ec}.clientStatusBadge.isLead,.portalBadge-invited{color:#8a6420;background:#fff4df}.clientStatusBadge.isInactive,.portalBadge-not-invited{color:#68726b;background:#eff1ef}.clientOverviewGrid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:18px;margin-bottom:18px;display:grid}.clientPortalCard{flex-direction:column;gap:18px;display:flex}.portalSummary{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.portalStatusRow{border-top:1px solid #edf0ed;border-bottom:1px solid #edf0ed;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:13px 0;display:flex}.clientPetsCard{margin-bottom:18px}.petCardHeader{align-items:center}.addPetPanel{background:#fafbf9;border:1px solid #dfe5df;border-radius:12px;width:min(100%,560px);padding:18px}.addPetHeader{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.addPetHeader h3{margin:0}.addPetPanel .clientForm{margin-top:16px}.clientNotesCard{margin-bottom:18px}.clientNotesCard .detailNote{margin-top:12px}@media (max-width:900px){.content,.pageShell{padding:24px}.clientOverviewGrid,.petGrid{grid-template-columns:1fr}}@media (max-width:520px){header,.pageTopbar{align-items:flex-start;gap:20px}.pageTopbar{flex-direction:column}.pageActions{flex-wrap:wrap;justify-content:space-between;width:100%}.formTwo{grid-template-columns:1fr}.detailItem{grid-template-columns:1fr;gap:4px}.clientProfilePage{padding:20px 16px}.clientProfileTopbar h1{font-size:30px}.petCardHeader{flex-direction:column;align-items:flex-start}.petCardHeader>.primary{width:100%}.addPetPanel{padding:15px}.formActions{justify-content:space-between}}.statsGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.statCard{background:#fff;border:1px solid #e1e5e1;border-radius:14px;padding:18px}.statCard span{color:#758078;margin-bottom:6px;font-size:13px;display:block}.statCard strong{color:#17201b;font-size:24px}.warningBanner{color:#7a5616;background:#fff8e8;border:1px solid #efd3a4;border-radius:12px;padding:13px 15px}.successBanner{transition:opacity .45s,transform .45s,max-height .45s,margin .45s,padding .45s}.successBanner.bannerLeaving{opacity:0;max-height:0;margin:0;padding-top:0;padding-bottom:0;overflow:hidden;transform:translateY(-4px)}.tableWrap{width:100%;margin-top:14px;overflow:auto}.dataTable{border-collapse:collapse;width:100%}.dataTable th,.dataTable td{text-align:left;vertical-align:top;border-top:1px solid #edf0ed;padding:13px 10px}.dataTable th{letter-spacing:.08em;text-transform:uppercase;color:#758078;font-size:12px}.dataTable small{display:block}.simpleList{border-top:1px solid #edf0ed;flex-direction:column;display:flex}.listRow{border-bottom:1px solid #edf0ed;justify-content:space-between;gap:14px;padding:11px 0;display:flex}.listRow span{color:#2f3a33;flex-direction:column;gap:3px;display:flex}.listRow strong{white-space:nowrap}.detailColumns h3{margin:0 0 10px;font-size:16px}
