/* Reference styling of existing working screens; no new sections or behavior. */
.reminder-calendar{padding:0 24px 24px;overflow-x:auto}.reminder-calendar nav{align-items:center;justify-content:space-between;margin-bottom:16px}.reminder-calendar h2{font-size:23px;margin:0}.reminder-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:560px;border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.reminder-grid>strong{text-align:center;padding:12px;font-size:13px;background:var(--background)}.reminder-day{min-height:90px;padding:8px;border-top:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);font-size:13px}.reminder-day.is-today{background:var(--green-soft)}.reminder-day>a{display:block;padding:4px;margin-top:4px;border-radius:6px;background:var(--background);color:var(--primary);overflow-wrap:anywhere;font-size:12px}.reminder-row{padding:20px}.reminder-row p{color:var(--text-secondary);overflow-wrap:anywhere}#reminder-form{scroll-margin-top:100px}
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}body>main{flex:1 0 auto;min-width:0;width:100%}body>.site-header,body>.site-footer{flex-shrink:0}body>.site-footer{margin-top:auto;position:static;width:100%}.pet-archive-settings{margin-top:32px;padding-top:24px;border-top:1px solid var(--border-subtle)}.pet-archive-settings p{font-size:14px;color:var(--text-secondary);max-width:600px}
.petpass-page{width:min(1120px,calc(100% - 32px));padding-top:24px}.petpass-topbar{margin-bottom:18px;gap:16px}.petpass-topbar>a,.account-back{font-size:13px;letter-spacing:0;text-transform:none;color:var(--text-secondary);font-weight:500}
.petpass-page .overview-content{grid-template-columns:180px minmax(0,1fr) minmax(240px,.85fr);gap:24px;align-items:start;padding:28px}.petpass-page .passport-avatar{width:180px;height:180px;grid-row:auto;border:0;border-radius:14px;background:var(--green-soft);margin:0;box-shadow:none}.petpass-page .passport-avatar img{object-fit:contain;background:var(--background)}.petpass-page .passport-identity{min-width:0;padding:6px 0 0}.petpass-page .passport-identity h1{font-size:40px;margin:4px 0 10px;line-height:1.15}.petpass-page .passport-identity>span{font-size:12px;text-transform:none;letter-spacing:0;color:var(--text-secondary)}.petpass-page .passport-identity>p{font-size:14px;text-transform:none;letter-spacing:0;font-weight:500;margin-bottom:16px}.petpass-page .passport-identity blockquote{margin:0;padding:12px 16px;border-left:3px solid var(--peach-accent);background:#FFF5EE;border-radius:0 10px 10px 0;font:400 15px/1.6 Manrope,system-ui,sans-serif;color:var(--text-primary);overflow-wrap:anywhere}
.petpass-page .passport-facts{display:grid;grid-template-columns:1fr;grid-column:auto;gap:0;margin:0;padding:4px 16px;background:var(--background);border-radius:12px;min-width:0}.petpass-page .passport-facts>div{padding:12px 0;border:0;border-bottom:1px solid var(--border-subtle);background:transparent;border-radius:0}.petpass-page .passport-facts>div:last-child{border-bottom:0}.petpass-page .passport-facts dt{font-size:12px;margin-bottom:3px}.petpass-page .passport-facts dd{margin:0;font-size:15px;overflow-wrap:anywhere}.petpass-page .overview-actions{grid-column:2/-1;display:flex;align-items:center;justify-content:flex-start;gap:16px;margin:0}.petpass-page .overview-actions form{margin:0}
.petpass-page .passport-folder{border-radius:14px;box-shadow:0 4px 18px #343B2504}.petpass-page .passport-folder>summary{min-height:68px;padding:16px 24px;gap:12px}.petpass-page .folder-icon{width:36px;height:36px;flex-shrink:0;background:var(--green-soft);border-radius:10px;color:var(--primary)}.petpass-page .folder-icon .passport-icon{width:21px;height:21px}.petpass-page .folder-chevron{margin-left:auto;color:var(--text-secondary)}.petpass-page .folder-count+.folder-chevron{margin-left:0}.petpass-page .folder-count{font-size:12px;letter-spacing:0;text-transform:none}.petpass-page .folder-content{padding:24px}.petpass-page .folder-heading{gap:16px;margin-bottom:20px}.petpass-page .folder-heading h2{font:600 25px/1.2 Lora,Georgia,serif;color:var(--text-primary);letter-spacing:-.03em}.petpass-page .folder-heading p{font-size:14px;line-height:1.5}
.petpass-page .medical-preview-grid{gap:10px}.petpass-page .medical-preview-grid a{border-radius:10px;background:var(--surface);border:1px solid var(--border-subtle);padding:14px;gap:12px;min-height:64px}.petpass-page .medical-preview-grid a:hover{background:var(--green-soft);border-color:#A1B496}.petpass-page .medical-preview-grid strong{font-size:14px;letter-spacing:0;text-transform:none;font-weight:600}.petpass-page .medical-preview-grid small{background:var(--green-soft);color:var(--primary-hover);font-size:13px;font-weight:600}.petpass-page .medical-preview-grid span{color:var(--primary)}
.petpass-page .petpass-editor,.petpass-page .life-form,.petpass-page .gallery-upload{padding:20px;border-radius:12px;border-color:var(--border-subtle);box-shadow:none}.petpass-page .petpass-form label,.petpass-page .life-form>label,.petpass-page .gallery-upload>label{font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--text-secondary)}.petpass-page .life-form legend{font-size:13px;letter-spacing:0;text-transform:none;color:var(--text-secondary)}.petpass-page .diet-list article{padding:18px;border-radius:12px;gap:14px}.petpass-page .diet-list dl{gap:16px}.petpass-page .diet-title em{font-size:12px;letter-spacing:0;text-transform:none;font-weight:500}.petpass-page .round-list-icon{width:40px;height:40px;border-radius:10px;background:var(--green-soft)}.petpass-page .petpass-empty{min-height:130px;padding:24px}.petpass-page .petpass-empty.small{min-height:150px}.petpass-page .petpass-table-wrap{border-radius:12px}.petpass-page .petpass-table-wrap th{font-size:12px;text-transform:none;letter-spacing:0}.petpass-page .petpass-table-wrap td{font-size:14px}.petpass-page .gallery-grid figcaption small{color:#fff}.petpass-page .gallery-grid figcaption{background:linear-gradient(transparent,rgba(20,30,24,.92))}
/* Medical history and file attachments share the reference's compact row style. */
.medical-page.shell{width:min(1120px,calc(100% - 32px));padding-top:24px}.medical-page .medical-title{min-height:84px}.medical-page .medical-content-heading{gap:20px}.medical-page .medical-records{gap:10px}.medical-page .medical-record-card{border:1px solid var(--border-subtle);border-radius:12px}.medical-page .medical-record-card[open]{border-color:#A1B496}.medical-page .medical-record-card summary{padding:16px 20px}.medical-page .record-round-icon{width:42px;height:42px;border-radius:12px;background:var(--green-soft)}.medical-page .record-summary-copy{gap:5px}.medical-page .record-summary-copy strong{font-size:17px;line-height:1.4}.medical-page .record-summary-copy em{padding:5px 10px;font-size:12px}.medical-page .medical-record-detail{padding:0 20px 20px 78px}.medical-page .file-chip{background:var(--background);border:1px solid var(--border-subtle);border-radius:10px;padding:14px;gap:12px}.medical-page .file-chip>span{display:grid;place-items:center;width:36px;height:40px;background:var(--green-soft);color:var(--primary);border-radius:8px;flex-shrink:0}.medical-page .file-chip strong{font-size:14px;font-weight:600;white-space:normal;overflow-wrap:anywhere}.medical-page .file-chip small{font-size:12px}.medical-page .file-chip a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}.medical-page .medical-record-detail p{line-height:1.65}.medical-page .medical-sort{border-color:var(--border-subtle)}
.account-page{width:min(1000px,calc(100% - 32px));padding-top:24px}.account-page .account-hero{padding:28px;gap:22px;background:var(--surface)}.account-page .account-hero h1{margin:4px 0 12px;font-size:36px}.account-page .account-section{padding:24px;border-radius:12px}.account-page .account-section-heading{margin-bottom:20px}.account-page .account-badges{gap:8px;flex-wrap:wrap}.account-page .account-badges span,.account-page .account-badges strong,.account-page .account-badges em{font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;line-height:1.5}.account-page .subscription-panel{border-radius:12px;box-shadow:none}.account-page .account-form{gap:20px}.account-page .account-form input{font-size:15px}.account-page .account-section-icon{width:36px;height:36px;border-radius:10px}.account-page .avatar-dialog-choices button{border-radius:12px}.account-page .admin-account-link{border-radius:12px}
@media(max-width:850px){.petpass-page .overview-content{grid-template-columns:150px minmax(0,1fr);gap:20px}.petpass-page .passport-avatar{width:150px;height:150px}.petpass-page .passport-facts{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 0}.petpass-page .passport-facts>div{padding:0 16px;border:0;border-right:1px solid var(--border-subtle)}.petpass-page .passport-facts>div:last-child{border-right:0}.petpass-page .overview-actions{grid-column:1/-1}.petpass-page .medical-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.petpass-page,.medical-page.shell,.account-page{width:calc(100% - 24px);padding-inline:0}.petpass-page .overview-content{grid-template-columns:1fr;padding:18px;gap:18px;text-align:left}.petpass-page .passport-avatar{width:160px;height:160px;margin:0;grid-row:auto}.petpass-page .passport-identity,.petpass-page .passport-facts,.petpass-page .overview-actions{grid-column:1}.petpass-page .passport-identity h1{font-size:34px}.petpass-page .passport-facts{grid-template-columns:1fr;padding:0 14px}.petpass-page .passport-facts>div{padding:10px 0;border:0;border-bottom:1px solid var(--border-subtle)}.petpass-page .passport-facts>div:last-child{border-bottom:0}.petpass-page .overview-actions{flex-wrap:wrap;gap:12px}.petpass-page .folder-content{padding:18px}.petpass-page .passport-folder>summary{padding:16px;gap:10px}.petpass-page .passport-folder>summary>strong{font-size:20px}.petpass-page .medical-preview-grid{grid-template-columns:1fr}.medical-page .medical-record-detail{padding:0 16px 18px}.medical-page .medical-record-card summary{padding:16px;gap:12px}.account-page .account-hero{padding:20px;flex-wrap:wrap}.account-page .account-section{padding:18px}.account-page .account-hero h1{font-size:32px}.petpass-topbar{flex-wrap:wrap}}
.notification-settings-form{display:grid;gap:12px;margin-top:20px}.notification-option{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid rgba(90,139,94,.25);border-radius:18px;background:#fff}.notification-option>span{display:grid;gap:4px}.notification-option strong{color:#234638}.notification-option small{color:#738078}.notification-option input[type=checkbox]{width:24px;height:24px;accent-color:#5a8b5e}.notification-settings-form>.passport-primary-button{justify-self:start;margin-top:4px}@media(max-width:640px){.notification-option{align-items:flex-start}.notification-option .button{flex:0 0 auto}.notification-settings-form>.passport-primary-button{width:100%}}
.image-crop-dialog{width:min(94vw,680px);max-width:none;padding:0;border:0;border-radius:28px;background:transparent;box-shadow:0 30px 90px rgba(18,42,31,.35)}.image-crop-dialog::backdrop{background:rgba(18,34,27,.82);backdrop-filter:blur(6px)}.image-crop-card{padding:25px;background:#faf7ef;color:#294a36}.image-crop-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.image-crop-card header span{font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#809185}.image-crop-card h2{margin:3px 0 0;font-size:27px}.image-crop-card header button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#294a36;font-size:25px;cursor:pointer}.image-crop-card>p{margin:8px 0 18px;color:#738078;font-size:14px}.image-crop-stage{overflow:hidden;width:min(100%,520px);aspect-ratio:1;margin:auto;border:4px solid #fff;border-radius:24px;background:#e8eee5;box-shadow:0 8px 30px rgba(46,70,56,.14)}.image-crop-stage canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}.image-crop-stage canvas:active{cursor:grabbing}.image-crop-zoom{display:flex;align-items:center;gap:16px;width:min(100%,520px);margin:20px auto;color:#294a36;font-size:13px;font-weight:800}.image-crop-zoom input{flex:1;accent-color:#5a895e}.image-crop-actions{display:flex;justify-content:flex-end;gap:12px;width:min(100%,520px);margin:auto}.image-crop-actions .button{margin:0}@media(max-width:560px){.image-crop-card{padding:18px}.image-crop-card h2{font-size:23px}.image-crop-actions{display:grid;grid-template-columns:1fr}.image-crop-actions button{width:100%}}

.image-crop-dialog{width:min(92vw,560px);max-height:calc(100svh - 32px);overflow:auto;border-radius:22px}.image-crop-card{padding:18px 20px}.image-crop-card>p{margin:6px 0 12px}.image-crop-stage{width:min(420px,100%,calc(100svh - 250px));border-radius:20px}.image-crop-zoom{width:min(100%,420px);margin:12px auto}.image-crop-actions{width:min(100%,420px)}
@media(max-height:700px){.image-crop-card{padding:12px 16px}.image-crop-card header span,.image-crop-card>p{display:none}.image-crop-card h2{font-size:21px}.image-crop-stage{width:min(390px,100%,calc(100svh - 190px))}.image-crop-zoom{margin:8px auto}}
.pet-sort-help{margin:-8px 0 14px;color:rgba(46,70,56,.58);font-size:13px}.pet-sort-help[data-state=saving]{color:#7a744d}.pet-sort-help[data-state=saved]{color:#3f7548}.pet-sort-help[data-state=error]{color:#a3473d}.pet-grid[data-pet-sort] .pet-card{position:relative;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.pet-grid[data-pet-sort] .pet-card-dragging{z-index:3;opacity:.58;transform:scale(.98);box-shadow:0 16px 35px rgba(46,70,56,.18)}.pet-drag-handle{position:absolute;z-index:2;top:10px;right:10px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(46,70,56,.18);border-radius:12px;background:rgba(255,255,255,.92);color:#426a4d;font-size:23px;line-height:1;cursor:grab;touch-action:none;box-shadow:0 4px 12px rgba(46,70,56,.09)}.pet-drag-handle:hover{background:#edf4e7}.pet-drag-handle:active{cursor:grabbing}.pet-grid[data-pet-sort] .pet-card>a{padding-right:58px}
.family-invite-stack{display:grid;gap:12px;margin-bottom:24px}.family-invite-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px;border:1px solid #b7cfad;border-radius:18px;background:#edf5df}.family-invite-card p{margin:4px 0 0;color:#627369}.family-invite-card form{display:flex;gap:8px}.family-invite-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px}.family-invite-form label{display:grid;gap:7px}.family-invite-form input{padding:12px 14px;border:1px solid #bbcfb4;border-radius:12px}.family-member-list{display:grid;gap:8px;margin-top:20px}.family-member-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;border-radius:14px;background:#f7f8f2}.family-member-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#dcebb5;font-weight:900}.family-member-list p{display:grid;margin:0}.family-member-list small{color:#758078}.family-member-list em{font-size:12px;font-style:normal;color:#66806e}.family-pending-note{margin:15px 0 0;color:#8b6c37}.pet-sharing-content{display:grid;gap:22px}.share-intro h2,.active-share-links h3{margin:0}.share-intro p{margin:5px 0 0;color:#738078}.simple-share-form{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px;border:1px solid #dce5d7;border-radius:16px;background:#f8faf5}.simple-share-form>div{display:grid;gap:3px}.simple-share-form small{color:#738078}.share-section-form{padding:18px;border:1px solid #eed3c2;border-radius:16px;background:#fff8f2}.share-section-form fieldset{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:0;border:0}.share-section-form legend{margin-bottom:10px;font-weight:800}.share-section-form label{display:flex;align-items:center;gap:7px;padding:10px 12px;border-radius:12px;background:#f3f6ec}.share-section-form input{accent-color:#4f8258}.new-share-link{padding:16px;border:1px solid #9fbd8d;border-radius:16px;background:#edf5df}.new-share-link>div{display:flex;gap:8px;margin-top:10px}.new-share-link input{min-width:0;flex:1;padding:10px;border:1px solid #bbcfb4;border-radius:10px}.active-share-links{display:grid;gap:10px}.active-share-links article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #dce5d7;border-radius:14px}.active-share-links article>div{display:grid;gap:3px}.active-share-links small{color:#738078}.shared-pet-page{width:min(900px,calc(100% - 28px));padding:42px 0 80px}.shared-pet-hero{text-align:center;margin-bottom:24px}.shared-pet-hero>div img{width:130px;height:130px;object-fit:cover;border-radius:50%;border:5px solid #dcebb5}.shared-pet-hero h1{margin:7px 0;font-size:48px}.shared-pet-hero p{color:#738078}.shared-data-card{margin-top:16px;padding:24px;border:1px solid #dce5d7;border-radius:20px;background:#fff}.shared-data-card h2{margin:0 0 16px}.shared-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.shared-facts>div{padding:12px;border-radius:12px;background:#f5f7ef}.shared-facts dt{font-size:11px;color:#768078}.shared-facts dd{margin:4px 0 0;font-weight:800}.shared-record-list{display:grid;gap:9px}.shared-record-list article{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #e5e9e1}.shared-record-list article>div{display:grid;gap:4px}.shared-record-list small,.shared-empty{color:#738078}.shared-record-list p{margin:4px 0 0}.shared-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.shared-gallery figure{margin:0}.shared-gallery img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px}.shared-gallery figcaption{margin-top:5px;color:#738078;font-size:12px}.shared-pet-note{margin-top:24px;text-align:center;color:#7f8982;font-size:12px}@media(max-width:650px){.family-invite-card,.active-share-links article,.simple-share-form{align-items:stretch;flex-direction:column}.family-invite-form{grid-template-columns:1fr}.family-invite-form button,.simple-share-form button{width:100%}.shared-facts,.shared-gallery{grid-template-columns:1fr 1fr}.new-share-link>div{align-items:stretch;flex-direction:column}.shared-record-list article{flex-direction:column}}
.medical-embed-wrap{padding:0!important}.medical-embed{display:block;width:100%;min-height:800px;border:0;background:#fff}.embedded-page{background:#fff!important}.embedded-page>.site-header,.embedded-page>.site-footer{display:none!important}.embedded-page>main{min-height:0}.embedded-page .medical-page{width:100%!important;padding:0!important;margin:0!important}.embedded-page .medical-page>.back-link{display:none}.embedded-page .medical-shell{border:0!important;border-radius:0!important;box-shadow:none!important}.embedded-page .medical-title{display:none}.embedded-page .medical-tabs{margin-top:0}@media(max-width:650px){.medical-embed{min-height:980px}.embedded-page .medical-tabs{overflow-x:auto;flex-wrap:nowrap}.embedded-page .medical-content-heading{padding-left:20px;padding-right:20px}.embedded-page .medical-tools,.embedded-page .medical-records{padding-left:14px;padding-right:14px}}
