.summary-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.summary-card, .companion-card, .section-card { border: 1px solid var(--msk-line); border-radius: var(--msk-radius); background: var(--msk-white); box-shadow: var(--msk-shadow); }
.summary-card { min-height: 202px; padding: 24px; text-decoration: none; }
.summary-card__number { display: block; color: var(--msk-navy); font-size: 2.2rem; font-weight: 500; letter-spacing: -.05em; }
.summary-card__label { display: block; margin: 3px 0 22px; color: var(--msk-muted); }
.summary-card ul { margin: 0; padding: 0; list-style: none; color: var(--msk-muted); line-height: 1.8; }
.summary-card li { display: flex; justify-content: space-between; gap: 12px; }
.summary-card__empty { color: var(--msk-muted); line-height: 1.5; }
.companion-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.companion-card { display: flex; align-items: center; gap: 18px; padding: 24px; text-decoration: none; transition: transform .15s ease, border-color .15s ease; }
.companion-card:hover { transform: translateY(-2px); border-color: var(--msk-gold); }
.avatar { display: grid; flex: 0 0 auto; place-items: center; width: 60px; height: 60px; border-radius: 50%; background: var(--msk-gold-soft); color: var(--msk-navy); font-family: Georgia, serif; font-size: 1.6rem; }
.companion-card h2 { margin-bottom: 6px; font-size: 1.35rem; }
.companion-card p { margin: 0; color: var(--msk-muted); line-height: 1.5; }
.card-arrow { margin-left: auto; color: var(--msk-gold); font-size: 1.4rem; }
.identity { display: flex; align-items: center; gap: 16px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid var(--msk-line); }
.identity__details { margin: 5px 0 0; color: var(--msk-muted); }
.identity .button { margin-left: auto; }
.tabs { display: flex; gap: 24px; margin: 0 0 26px; border-bottom: 1px solid var(--msk-line); }
.tabs a { padding: 0 0 12px; color: var(--msk-muted); text-decoration: none; }
.tabs a[aria-current="page"] { border-bottom: 2px solid var(--msk-gold); color: var(--msk-navy); }
.section-card { padding: 28px; }
.empty-state { min-height: 188px; display: grid; align-content: center; justify-items: start; border: 1px dashed #b8c3cb; border-radius: var(--msk-radius); padding: 28px; background: var(--msk-white); }
.empty-state h2 { margin-bottom: 8px; font-size: 1.2rem; }
.empty-state p { max-width: 440px; margin-bottom: 18px; color: var(--msk-muted); line-height: 1.5; }
.timeline-item { padding: 18px 0; border-bottom: 1px solid var(--msk-line); }
.timeline-item:last-child { border-bottom: 0; }
.timeline-item time { display: block; margin-bottom: 5px; color: var(--msk-muted); font-size: .88rem; }
.timeline-item h3 { margin-bottom: 6px; }
.timeline-item p { margin-bottom: 0; color: var(--msk-muted); }
@media (max-width: 700px) {
  .summary-grid, .companion-grid { grid-template-columns: 1fr; }
  .identity { align-items: flex-start; flex-wrap: wrap; }
  .identity .button { margin-left: auto; }
  .tabs { gap: 18px; overflow-x: auto; }
}

/* PawPass inherits the established owner-portal rhythm: calm paper, navy
   structure, gold detail, compact controls, and generous record space. */
:root { --pawpass-navy:#06275c; --pawpass-blue:#0b4e98; --pawpass-gold:#c99a2b; --pawpass-paper:#f7f4eb; --pawpass-ink:#1c2d43; --pawpass-muted:#68778b; --pawpass-line:#d7e0e7; }
body { --msk-control-height:32px; min-height:100vh; background:var(--pawpass-paper); color:var(--pawpass-ink); font-family:Arial,"Helvetica Neue",sans-serif; }
body, button, input, select, textarea { font-family:Arial,"Helvetica Neue",sans-serif; }
.pawpass-theme .app-header .content-width, .pawpass-theme .page > .content-width, .pawpass-theme .product-footer .content-width { width:min(calc(100% - 56px),var(--product-app-content)); }
.app-header { position:sticky; z-index:20; top:0; border-bottom:1px solid rgba(201,154,43,.42); background:var(--pawpass-navy); }
.app-header__inner { min-height:72px; }
.wordmark { color:#fff; font-size:1.35rem; font-weight:500; letter-spacing:.01em; }
.wordmark__mark { width:34px; height:42px; border-radius:0; color:var(--pawpass-gold); font-size:1.05rem; }
.app-nav { gap:22px; margin-left:auto; }
.app-nav a, .app-nav__sign-out { padding:9px 0; border:0; border-bottom:2px solid transparent; background:transparent; color:rgba(255,255,255,.78); font-size:14px; font-weight:500; letter-spacing:.025em; text-decoration:none; }
.app-nav a[aria-current="page"] { border-color:var(--pawpass-gold); color:#fff; }
.page { min-height:calc(100vh - 72px); padding:48px 0 82px; background:var(--pawpass-paper); }
.page--white { background:var(--pawpass-paper); }
.page-header { margin-bottom:34px; }

.page-header--stack {
  display:block;
}
.pawpass-theme .profile-section ~ .profile-section { margin-top: 24px; }
.pawpass-theme .page-header:has(+ .profile-section) { display:grid; grid-template-columns:minmax(340px,.65fr) minmax(0,1fr); align-items:end; column-gap:48px; row-gap:0; }
.pawpass-theme .page-header:has(+ .profile-section) .eyebrow { grid-column:1; grid-row:1; }
.pawpass-theme .page-header:has(+ .profile-section) h1 { grid-column:1; grid-row:2; margin-bottom:0; white-space:nowrap; }
.pawpass-theme .page-header:has(+ .profile-section) .lede { grid-column:2; grid-row:2; max-width:560px; margin:0; }
.eyebrow { margin-bottom:9px; color:#8a671c; font-size:.69rem; font-weight:500; letter-spacing:.13em; }
h1, h2, h3 { color:var(--pawpass-navy); font-weight:500; }
h1 { margin-bottom:10px; font-size:clamp(2.5rem,5vw,4.1rem); line-height:.98; letter-spacing:-.052em; }
h2 { letter-spacing:-.035em; }
.lede { color:var(--pawpass-muted); font-size:1rem; line-height:1.55; }
.button { min-height:var(--msk-control-height); border-color:var(--pawpass-blue); border-radius:0; background:var(--pawpass-blue); color:#fff; font-size:12px; font-weight:600; letter-spacing:.07em; text-transform:uppercase; }
.button:hover { background:var(--pawpass-navy); transform:translateY(-1px); }
.button--secondary { border-color:rgba(6,39,92,.24); background:#fff; color:var(--pawpass-blue); }
.summary-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.summary-card { min-height:320px; border:1px solid var(--pawpass-line); border-radius:0; box-shadow:none; padding:24px; background:#fff; color:var(--pawpass-ink); transition:border-color .18s,box-shadow .18s,transform .18s; }
.summary-card:hover { border-color:var(--pawpass-gold); box-shadow:0 12px 28px rgba(6,39,92,.08); transform:translateY(-2px); }
.summary-card__number { color:var(--pawpass-navy); font-size:3.7rem; font-weight:500; letter-spacing:-.06em; line-height:1; }
.summary-card__label { margin:8px 0 24px; color:#718093; font-size:.68rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; }
.summary-card a { display:block; padding:13px 0; border-top:1px solid var(--pawpass-line); color:var(--pawpass-navy); font-size:.87rem; text-decoration:none; }
.summary-card__empty { padding-top:14px; color:var(--pawpass-muted); font-size:.88rem; }
.companion-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
.companion-card { min-height:142px; border:1px solid rgba(6,39,92,.15); border-radius:0; box-shadow:none; padding:28px; color:var(--pawpass-ink); }
.companion-card:hover { border-color:var(--pawpass-gold); box-shadow:0 14px 26px rgba(6,39,92,.09); }
.avatar { width:84px; height:84px; border:1px solid rgba(201,154,43,.75); border-radius:50%; background:linear-gradient(145deg,#edf4f7,#fff); color:var(--pawpass-blue); font-size:2.2rem; font-weight:500; }
.companion-card h2 { margin:0; color:var(--pawpass-navy); font-size:2rem; font-weight:500; letter-spacing:-.05em; }
.companion-card p { margin-top:7px; color:var(--pawpass-muted); font-size:.9rem; }
.card-arrow { color:var(--pawpass-gold); font-size:1.7rem; }
.identity { gap:22px; margin-bottom:22px; padding:24px 0; border-top:1px solid var(--pawpass-line); border-bottom:1px solid var(--pawpass-line); }
.identity h1 { font-size:clamp(2.6rem,5vw,4rem); }
.identity__details { color:var(--pawpass-muted); }
.breadcrumb { display:flex; flex-wrap:wrap; gap:11px; margin:0 0 22px; color:var(--pawpass-muted); font-size:.82rem; }
.breadcrumb a { color:var(--pawpass-blue); text-decoration:none; }
.identity__facts { display:grid; grid-template-columns:repeat(3,minmax(110px,1fr)); gap:20px; margin:0 0 0 auto; }
.identity__facts dt { margin-bottom:5px; color:#8a671c; font-size:.65rem; font-weight:500; letter-spacing:.11em; text-transform:uppercase; }
.identity__facts dd { margin:0; color:var(--pawpass-navy); font-size:.92rem; }
.companion-overview { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(220px,.9fr); gap:18px; margin-bottom:20px; }
.companion-overview > .section-card { height:100%; margin-top:0; }
.profile-summary { color:var(--pawpass-navy); font-size:1.15rem; line-height:1.5; }
.quick-link { display:block; padding:15px 0; border-top:1px solid var(--pawpass-line); color:var(--pawpass-navy); text-decoration:none; }
.quick-link span { display:block; margin-top:4px; color:var(--pawpass-muted); font-size:.84rem; }
.record-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 20px; max-width:820px; margin-top:28px; }
.record-form .auth-field:nth-of-type(5), .record-form .auth-field:nth-of-type(6), .record-form__actions { grid-column:1 / -1; }
.record-form__actions { display:flex; gap:12px; padding-top:5px; }
.tabs { gap:22px; margin-bottom:22px; }
.tabs a { padding-bottom:8px; color:#63758a; font-size:.72rem; font-weight:500; letter-spacing:.065em; text-transform:uppercase; }
.tabs a[aria-current="page"] { border-color:var(--pawpass-gold); color:var(--pawpass-navy); }
.section-card { border:1px solid var(--pawpass-line); border-radius:0; box-shadow:none; padding:27px; background:#fff; }
.section-card h2 { font-size:1.7rem; }
.section-card + .section-card { margin-top:20px; }
.pawpass-attachment-form { margin:0; }
.pawpass-attachment-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--pawpass-line); }
.pawpass-attachment-list li { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:15px 0; border-bottom:1px solid var(--pawpass-line); }
.pawpass-attachment-list small { display:block; margin-top:4px; color:var(--pawpass-muted); }
.pawpass-attachment-actions { display:flex; gap:8px; flex:0 0 auto; }
.pawpass-attachment-event { display:block; margin-top:10px; color:var(--pawpass-muted); font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.pawpass-attachment-event select { display:block; width:min(320px,100%); margin-top:5px; }
.profile-photo-form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:12px; margin-top:22px; }
.profile-photo-form .auth-field { margin:0; }
.profile-section h2{margin:0 0 11px}.profile-section>p{max-width:680px;margin:0 0 18px;color:var(--pawpass-muted);line-height:1.55}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;max-width:820px}.profile-form-grid__wide{grid-column:1/-1}.profile-actions{display:flex;flex-wrap:wrap;gap:10px}
.pawpass-theme .invite-feedback:empty { display:none; }
.pawpass-theme .invite-feedback:not(:empty) { display:block; margin:22px 0 0; padding:15px 18px; border-left:3px solid var(--pawpass-gold); background:#f7f3e8; color:var(--pawpass-ink); font-size:.94rem; line-height:1.5; }
.pawpass-theme .invite-feedback.auth-message--error { border-left-color:var(--msk-danger); background:#fff5f3; color:var(--msk-danger); }
.pawpass-theme .invite-help { max-width:640px; margin:11px 0 20px; color:var(--pawpass-muted); font-size:.88rem; line-height:1.5; }
.pawpass-theme .family-access-workspace { padding:32px 38px; }
.pawpass-theme [data-pawpass-household-members] { margin-top:32px; padding:28px 0 0; border-top:1px solid var(--pawpass-line); }
.pawpass-theme [data-pawpass-household-members] h2 { margin:0 0 22px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table th { padding:0 0 11px; border-bottom:1px solid var(--pawpass-line); color:var(--pawpass-muted); font-size:.69rem; font-weight:500; letter-spacing:.1em; text-align:left; text-transform:uppercase; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table th:first-child { width:60%; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table th:nth-child(2) { width:22%; padding-left:32px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table td { padding:16px 0; border-bottom:1px solid var(--pawpass-line); color:var(--pawpass-ink); vertical-align:middle; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table td:first-child { overflow-wrap:anywhere; font-weight:500; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table td:nth-child(2) { color:var(--pawpass-muted); }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table td:nth-child(2) { padding-left:32px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table td:last-child, .pawpass-theme [data-pawpass-household-members] .pawport-directory-table th:last-child { text-align:right; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table select { width:100%; max-width:170px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table .button { min-width:126px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table { table-layout:auto; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table th:first-child { width:auto; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table th:nth-child(2), .pawpass-theme [data-pawpass-household-members] .pawport-directory-table td:nth-child(2) { width:190px; padding-left:24px; padding-right:24px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table th:last-child, .pawpass-theme [data-pawpass-household-members] .pawport-directory-table td:last-child { width:150px; }
.pawpass-theme [data-pawpass-household-members] .pawport-directory-table select { max-width:none; }
.timeline-item { padding:20px 0 20px 27px; border-color:var(--pawpass-line); position:relative; }
.timeline-item::before { position:absolute; top:26px; left:0; width:8px; height:8px; border:2px solid var(--pawpass-gold); border-radius:50%; background:#fff; content:""; }
.timeline-item time { color:#8a671c; font-size:.68rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; }
.timeline-item h3 { font-size:1rem; font-weight:500; }
.timeline-item p { color:var(--pawpass-muted); }
.empty-state { border-color:rgba(6,39,92,.26); border-radius:0; background:rgba(255,255,255,.55); color:var(--pawpass-muted); }
.empty-state h2 { font-size:1.75rem; font-weight:500; }
.auth-shell { min-height:100vh; grid-template-columns:minmax(0,7fr) minmax(360px,3fr); background:var(--pawpass-paper); }
.auth-intro { padding:55px max(7vw,45px); background:linear-gradient(150deg,var(--pawpass-navy),var(--pawpass-blue)); color:#fff; }
.auth-intro .wordmark { color:#fff; }
.auth-intro h1 { max-width:550px; margin:90px 0 18px; color:#fff; font-size:clamp(2.8rem,5vw,4.7rem); font-weight:500; }
.auth-intro > div > p { max-width:460px; color:rgba(255,255,255,.77); font-size:1rem; line-height:1.55; }
.auth-intro .eyebrow { color:#e5c35e; }
.auth-highlights { border-color:rgba(255,255,255,.2); }
.auth-highlights li { color:rgba(255,255,255,.78); }
.auth-highlights strong { color:#fff; font-weight:500; }
.auth-panel { min-width:0; padding:56px 40px; background:var(--pawpass-paper); }
.auth-form { width:min(100%,430px); min-width:0; max-width:100%; }
.auth-form .auth-actions { display:block; }
.auth-form .auth-actions .button { margin-left:0; max-width:100%; }
.auth-form h2 { color:var(--pawpass-navy); font-size:2rem; font-weight:500; letter-spacing:-.045em; }
.auth-field { display:grid; grid-template-columns:1fr; gap:5px; color:var(--pawpass-navy); font-size:10px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.auth-field input,.auth-field select,.auth-field textarea { box-sizing:border-box; width:100%; max-width:100%; border-color:rgba(6,39,92,.22); border-radius:0; color:var(--pawpass-ink); font-size:1rem; font-weight:400; letter-spacing:0; text-transform:none; }
.auth-field input:focus,.auth-field select:focus,.auth-field textarea:focus { outline:2px solid rgba(201,154,43,.42); outline-offset:1px; }
.auth-field .char-count {
  align-self:flex-end;
  color:var(--pawpass-muted);
  font-size:10px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.pawpass-theme .pawpass-panel-open { overflow:hidden; }
.pawpass-theme .pawpass-detail-panel, .pawpass-detail-panel{position:fixed;inset:0;z-index:1000}
.pawpass-theme .pawpass-detail-panel__scrim, .pawpass-detail-panel__scrim{position:absolute;inset:0;background:rgba(6,39,92,.22);backdrop-filter:blur(2px)}
.pawpass-theme .pawpass-detail-panel__sheet, .pawpass-detail-panel__sheet{position:absolute;top:0;right:0;width:min(100%,500px);height:100%;overflow-y:auto;background:#fff;border-left:1px solid rgba(6,39,92,.18);box-shadow:-18px 0 48px rgba(17,34,51,.16)}
.pawpass-theme .pawpass-detail-panel__header, .pawpass-detail-panel__header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:0 24px;background:#fff;border-bottom:1px solid rgba(6,39,92,.18)}
.pawpass-theme .pawpass-detail-panel__header h2, .pawpass-detail-panel__header h2{margin:0;color:var(--pawpass-navy);font-size:1.2rem;letter-spacing:-.02em}
.pawpass-theme .pawpass-detail-panel__close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:var(--pawpass-navy);font:300 30px/1 Arial,sans-serif;cursor:pointer}
.pawpass-theme .pawpass-detail-panel__close:hover{color:var(--pawpass-navy-deep,#06275c)}
.pawpass-theme .pawpass-detail-panel__form, .pawpass-detail-panel__form{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:18px;
  margin:0;
  padding:24px 24px 32px;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important
}
.pawpass-theme .pawpass-detail-panel__form .pawpass-panel-form-heading, .pawpass-detail-panel__form .pawpass-panel-form-heading{display:none}
.pawpass-theme .pawpass-detail-panel__form .auth-field,
.pawpass-detail-panel__form .auth-field{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
  margin:0;
  color:var(--pawpass-muted);
  font-size:10px;
  font-weight:500;
  letter-spacing:.04em;
  text-transform:uppercase
}
.pawpass-theme .pawpass-detail-panel__form .auth-field.full,
.pawpass-theme .pawpass-detail-panel__form .auth-field.half,
.pawpass-detail-panel__form .auth-field.full,
.pawpass-detail-panel__form .auth-field.half{grid-column:1 / -1}
.pawpass-theme .pawpass-detail-panel__form .auth-field input,.pawpass-theme .pawpass-detail-panel__form .auth-field select,.pawpass-theme .pawpass-detail-panel__form .auth-field textarea,
.pawpass-detail-panel__form .auth-field input,.pawpass-detail-panel__form .auth-field select,.pawpass-detail-panel__form .auth-field textarea{
  min-height:var(--msk-control-height);
  padding:0 11px;
  color:var(--pawpass-ink);
  font-size:16px;
  font-weight:400;
  letter-spacing:0;
  text-transform:none;
  background:#fff;
  border:1px solid var(--pawpass-line);
  border-radius:3px
}
.pawpass-theme .pawpass-detail-panel__form .auth-field textarea,.pawpass-detail-panel__form .auth-field textarea{min-height:92px;resize:vertical}
.pawpass-theme .pawpass-detail-panel__form .button,
.pawpass-theme .pawpass-detail-panel__form .form-actions,
.pawpass-theme .pawpass-detail-panel__form .record-form__actions,
.pawpass-detail-panel__form .button,
.pawpass-detail-panel__form .form-actions,
.pawpass-detail-panel__form .record-form__actions{margin-top:8px}
.pawpass-theme .pawpass-detail-panel__form .form-actions,
.pawpass-theme .pawpass-detail-panel__form .record-form__actions,
.pawpass-detail-panel__form .form-actions,
.pawpass-detail-panel__form .record-form__actions{display:flex;align-items:center;gap:10px}
.pawpass-theme .pawpass-detail-panel__form .form-actions .button--secondary,
.pawpass-theme .pawpass-detail-panel__form .record-form__actions .button--secondary,
.pawpass-detail-panel__form .form-actions .button--secondary,
.pawpass-detail-panel__form .record-form__actions .button--secondary{margin-left:auto}
.pawpass-theme .pawpass-detail-panel__form .button{min-height:var(--msk-control-height);padding:0 16px;font-size:12px;font-weight:600}
.pawpass-theme .auth-field--check,
.pawpass-detail-panel__form .auth-field--check { display:flex; flex-direction:row; align-items:center; gap:10px; }
.pawpass-theme .auth-field--check input[type="checkbox"],
.pawpass-detail-panel__form .auth-field--check input[type="checkbox"] { flex:0 0 16px; width:16px; height:16px; min-height:16px; margin:0; padding:0; }
@media (max-width:900px) { .auth-shell { grid-template-columns:1fr; }.auth-intro,.auth-panel { min-width:0; }.auth-intro { min-height:auto; padding:34px 27px; }.auth-panel { padding:38px 28px; }.auth-intro h1 { margin:45px 0 13px; }.pawpass-theme .app-header .content-width, .pawpass-theme .page > .content-width, .pawpass-theme .product-footer .content-width { width:min(calc(100% - 42px),var(--product-app-content)); }.summary-grid { grid-template-columns:1fr 1fr; }.summary-card:first-child { grid-column:1 / -1; min-height:180px; } }
@media (max-width:700px) { .pawpass-theme .app-header .content-width, .pawpass-theme .page > .content-width, .pawpass-theme .product-footer .content-width { width:min(calc(100% - 32px),var(--product-app-content)); }.app-header__inner { min-height:64px; }.app-nav { gap:12px; }.app-nav a { font-size:13px; }.page { padding:30px 0 56px; }.summary-grid,.companion-grid,.companion-overview,.record-form { grid-template-columns:1fr; }.summary-card:first-child { grid-column:auto; }.summary-card { min-height:0; }.companion-card { padding:20px; }.avatar { width:64px; height:64px; font-size:1.65rem; }.companion-card h2 { font-size:1.65rem; }.identity__facts { grid-template-columns:1fr 1fr; width:100%; margin:0; }.record-form .auth-field:nth-of-type(5), .record-form .auth-field:nth-of-type(6), .record-form__actions { grid-column:auto; } }
@media (max-width:700px) { .pawpass-theme .page-header:has(+ .profile-section) { display:block; }.pawpass-theme .page-header:has(+ .profile-section) .lede { margin-top:14px; } }
@media (max-width:700px) { .profile-photo-form { grid-template-columns:1fr; }.pawpass-attachment-list li { align-items:flex-start; flex-direction:column; }.pawpass-attachment-actions { width:100%; } }

/* Keep PawPass controls at the shared MySoulKick size. */
.auth-field input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.auth-field select,
.pawpass-theme .pawpass-detail-panel__form .button,
.pawpass-detail-panel__form .button {
  box-sizing:border-box;
  height:var(--msk-control-height);
  min-height:var(--msk-control-height);
}

/* PawPass page rhythm: one title, then content at a consistent distance. */
.pawpass-theme .page .eyebrow { display:none; }
.pawpass-theme .page .lede { display:none; }
.pawpass-theme .page-header,
.pawpass-theme .page-header:has(+ .profile-section) { display:block; margin-bottom:32px; }
.pawpass-theme .page-header h1,
.pawpass-theme .page-header:has(+ .profile-section) h1 { margin-bottom:0; white-space:normal; }
.pawpass-theme .page-header > .button { margin-top:24px; }
.pawpass-theme .page > .content-width > h1 { margin-bottom:32px; }

/* Some older PawPass pages receive their theme class after loading. */
.page .eyebrow { display:none; }
.page .lede { display:none; }
.page-header,
.page-header:has(+ .profile-section) { display:block; margin-bottom:32px; }
.page-header h1,
.page-header:has(+ .profile-section) h1 { margin-bottom:0; white-space:normal; }
.page-header > .button { margin-top:24px; }
.page > .content-width > h1 { margin-bottom:32px; }

/* Keep page actions aligned with the title; only supporting copy is removed. */
.page-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.page-header:has(+ .profile-section) { display:block; }
.page-header > .button { margin-top:0; }

.pawpass-theme .page-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.pawpass-theme .page-header:has(+ .profile-section) { display:block; }
.pawpass-theme .page-header > .button { margin-top:0; }

/* Standard app-page header and settings composition. */
.pawpass-theme .page-header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:24px; margin-bottom:32px; }
.pawpass-theme .page-header:has(+ .profile-section) { display:block; }
.pawpass-theme .page-header > .button { justify-self:end; margin:0; }
.pawpass-theme [data-pawpass-settings] { max-width:720px; }
.pawpass-theme [data-pawpass-settings] .section-card { margin-top:0; }

.pawpass-theme [data-pawpass-settings] .section-card { padding:32px; }
.pawpass-theme [data-pawpass-settings] h2 { margin-bottom:18px; }
.pawpass-theme [data-pawpass-settings] p { margin:0; padding:14px 0; border-top:1px solid var(--pawpass-line); }
.pawpass-theme [data-pawpass-settings] .button { margin-top:18px; }

/* Actions always breathe after fields or supporting copy. */
.pawpass-theme form > .auth-field + .button,
.pawpass-theme form > .form-note + .button,
.pawpass-theme form > .invite-feedback + .button,
.pawpass-theme form > .record-form__actions,
.pawpass-theme .profile-actions,
.pawpass-theme .section-card > .button { margin-top:24px; }
