:root {
	--spc-green: #087a46;
	--spc-green-dark: #075535;
	--spc-green-soft: #e8f5ee;
	--spc-gold: #f2bd2e;
	--spc-red: #c93434;
	--spc-ink: #17251f;
	--spc-muted: #637168;
	--spc-line: #dce5df;
	--spc-paper: #f7faf8;
	--spc-white: #fff;
	--spc-radius: 18px;
	--spc-shadow: 0 16px 40px rgba(18, 55, 38, .1);
}

.spc-app, .spc-public { color: var(--spc-ink); font-family: inherit; line-height: 1.55; }
.spc-app { width: min(1180px, calc(100% - 40px)); margin: 48px auto 80px; }
.spc-public { background: linear-gradient(180deg, #edf8f2 0, #fff 420px); min-height: 70vh; padding: 48px 20px 80px; }
.spc-app *, .spc-public * { box-sizing: border-box; }
.spc-app h1, .spc-app h2, .spc-app h3, .spc-public h1, .spc-public h2, .spc-public h3 { color: var(--spc-ink); font-family: inherit; line-height: 1.15; margin-top: 0; }
.spc-app h1, .spc-public h1 { font-size: clamp(2rem, 5vw, 3.5rem); letter-spacing: -.045em; margin-bottom: 14px; }
.spc-app h2, .spc-public h2 { font-size: clamp(1.45rem, 3vw, 2.15rem); letter-spacing: -.025em; margin-bottom: 10px; }
.spc-app h3, .spc-public h3 { font-size: 1.25rem; margin-bottom: 8px; }
.spc-app p, .spc-public p { margin-top: 0; }
.spc-app a, .spc-public a { text-underline-offset: 3px; }
.spc-confirm { background: transparent; border: 0; box-sizing: border-box !important; height: 100dvh; inset: 0 !important; margin: auto !important; max-height: none; max-width: none; padding: 14px; position: fixed !important; width: 100vw; z-index: 2147483000; }
.spc-confirm * { box-sizing: border-box; }
.spc-confirm[open] { align-items: center; display: grid; justify-items: center; }
.spc-confirm::backdrop { background: rgba(8, 24, 17, .62); }
.spc-confirm > div { background: #fff; border-radius: 16px; box-shadow: var(--spc-shadow); color: var(--spc-ink); margin: auto; max-height: calc(100dvh - 28px); overflow: auto; padding: 26px; width: min(460px, 100%); }
.spc-confirm h2 { color: var(--spc-ink); font-family: inherit; font-size: 1.45rem; margin: 0 0 8px; }
.spc-confirm p { color: var(--spc-muted); margin: 0 0 20px; }
.spc-confirm .spc-actions { justify-content: flex-end; }
.spc-eyebrow { color: var(--spc-green); font-size: .75rem; font-weight: 800; letter-spacing: .14em; margin-bottom: 8px; text-transform: uppercase; }

.spc-app-header { align-items: end; border-bottom: 1px solid var(--spc-line); display: flex; gap: 40px; justify-content: space-between; margin-bottom: 32px; padding-bottom: 28px; }
.spc-app-header > div > p:last-child { color: var(--spc-muted); font-size: 1.05rem; margin-bottom: 0; max-width: 680px; }
.spc-app-header nav { background: var(--spc-paper); border: 1px solid var(--spc-line); border-radius: 999px; display: flex; flex: none; gap: 3px; padding: 5px; }
.spc-app-header nav a { border-radius: 999px; color: var(--spc-ink); font-size: .92rem; font-weight: 700; padding: 10px 15px; text-decoration: none; }
.spc-app-header nav a:hover, .spc-app-header nav a:focus-visible { background: var(--spc-white); color: var(--spc-green-dark); }

.spc-button, .sp-core-poster .button { align-items: center; appearance: none; border: 1px solid transparent; border-radius: 10px; cursor: pointer; display: inline-flex; font: inherit; font-size: .92rem; font-weight: 750; justify-content: center; line-height: 1.2; min-height: 44px; padding: 11px 17px; text-align: center; text-decoration: none !important; transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.spc-button:hover, .spc-button:focus-visible, .sp-core-poster .button:hover, .sp-core-poster .button:focus-visible { box-shadow: 0 8px 20px rgba(18,55,38,.14); transform: translateY(-1px); }
.spc-button:disabled { cursor: wait; opacity: .62; transform: none; }
.spc-button--primary, .sp-core-poster .button { background: var(--spc-green); color: #fff !important; }
.spc-button--dark { background: var(--spc-ink); color: #fff !important; }
.spc-button--light, .sp-core-poster .button-secondary { background: #fff; border-color: var(--spc-line); color: var(--spc-ink) !important; }
.spc-button--danger { background: #fff; border-color: #edbcbc; color: #a21f1f !important; }
.spc-button--alert { background: var(--spc-red); color: #fff !important; }
.spc-button--success { background: var(--spc-green); color: #fff !important; }
.spc-button--primary:hover, .spc-button--primary:focus-visible, .spc-button--success:hover, .spc-button--success:focus-visible, .sp-core-poster .button:hover, .sp-core-poster .button:focus-visible { background: var(--spc-green-dark) !important; color: #fff !important; }
.spc-button--dark:hover, .spc-button--dark:focus-visible { background: #061d13 !important; color: #fff !important; }
.spc-button--light:hover, .spc-button--light:focus-visible, .sp-core-poster .button-secondary:hover, .sp-core-poster .button-secondary:focus-visible { background: var(--spc-green-soft) !important; border-color: #9bc9ae !important; color: var(--spc-green-dark) !important; }
.spc-button--alert:hover, .spc-button--alert:focus-visible { background: #9e2424 !important; color: #fff !important; }
.spc-button--danger:hover, .spc-button--danger:focus-visible { background: #fff0f0 !important; border-color: #cf7777 !important; color: #851717 !important; }
.spc-actions, .sp-core-poster__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; }

.spc-membership-banner, .spc-shop-callout { align-items: center; background: linear-gradient(130deg, var(--spc-green-dark), #0a8a50); border-radius: var(--spc-radius); color: #fff; display: flex; gap: 30px; justify-content: space-between; margin: 0 0 38px; overflow: hidden; padding: 28px 32px; position: relative; }
.spc-membership-banner::after, .spc-shop-callout::after { border: 22px solid rgba(242,189,46,.7); border-radius: 50%; content: ""; height: 115px; position: absolute; right: 22%; top: -70px; width: 115px; }
.spc-membership-banner > *, .spc-shop-callout > * { position: relative; z-index: 1; }
.spc-membership-banner h2, .spc-membership-banner p, .spc-shop-callout h2, .spc-shop-callout p { color: #fff; }
.spc-membership-banner p, .spc-shop-callout p { margin-bottom: 0; max-width: 740px; opacity: .88; }
.spc-membership-banner .spc-status { background: rgba(255,255,255,.14); color: #fff; }

.spc-section { margin-bottom: 44px; }
.spc-dashboard-stats { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: -14px 0 34px; }
.spc-dashboard-stats > div { background: #fff; border: 1px solid var(--spc-line); border-radius: 15px; box-shadow: 0 8px 24px rgba(18,55,38,.05); padding: 18px 20px; }
.spc-dashboard-stats small { color: var(--spc-muted); display: block; font-weight: 700; }
.spc-dashboard-stats strong { color: var(--spc-green-dark); display: block; font-size: 1.8rem; line-height: 1.2; margin-top: 4px; }
.spc-owner-panel { background: #fff; border: 1px solid var(--spc-line); border-radius: 14px; margin: -18px 0 34px; }
.spc-owner-panel summary { align-items: center; cursor: pointer; display: flex; gap: 20px; justify-content: space-between; list-style: none; padding: 17px 20px; }
.spc-owner-panel summary::-webkit-details-marker { display: none; }
.spc-owner-panel summary > span:first-child { display: grid; gap: 2px; }
.spc-owner-panel summary small { color: var(--spc-muted); font-weight: 400; }
.spc-owner-panel summary > span:last-child { color: var(--spc-green); font-size: .86rem; font-weight: 800; }
.spc-inline-owner-form { border-top: 1px solid var(--spc-line); padding: 22px; }
.spc-inline-owner-form label { color: var(--spc-ink); display: grid; font-size: .88rem; font-weight: 750; gap: 7px; }
.spc-inline-owner-form input { background: #fff; border: 1px solid #bccbc2; border-radius: 9px; min-height: 46px; padding: 10px 12px; width: 100%; }
.spc-inline-owner-form input:disabled { background: var(--spc-paper); color: var(--spc-muted); }
.spc-app .iti, .spc-public .iti, .spc-woocommerce-account .iti, .woocommerce-checkout .iti { display: block; width: 100%; }
.spc-app .iti input[type="tel"], .spc-public .iti input[type="tel"], .spc-woocommerce-account .iti input[type="tel"], .woocommerce-checkout .iti input[type="tel"] { width: 100%; }
.iti__dropdown-content { z-index: 2147483001; }
.spc-inline-owner-form label small { color: var(--spc-muted); font-weight: 400; }
.spc-section-heading { align-items: end; display: flex; gap: 25px; justify-content: space-between; margin-bottom: 20px; }
.spc-section-heading h2 { margin-bottom: 0; }
.spc-pet-grid { display: grid; gap: 22px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.spc-pet-card { background: #fff; border: 1px solid var(--spc-line); border-radius: var(--spc-radius); box-shadow: 0 8px 26px rgba(18,55,38,.06); min-width: 0; overflow: hidden; }
.spc-pet-card.is-missing { border-color: #e8a1a1; }
.spc-pet-card__photo { align-items: center; aspect-ratio: 4 / 3; background: var(--spc-green-soft); display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.spc-pet-card__photo img { height: 100%; object-fit: cover; width: 100%; }
.spc-pet-card__photo span { color: var(--spc-green); font-size: 3rem; line-height: 1; }
.spc-pet-card__photo small { color: var(--spc-muted); }
.spc-pet-card__body { padding: 20px; }
.spc-pet-card__body > p { color: var(--spc-muted); min-height: 25px; }
.spc-pet-card__top { align-items: center; display: flex; gap: 10px; justify-content: space-between; margin-bottom: 14px; }
.spc-tag-state { color: var(--spc-muted); font-size: .82rem; }
.spc-status { border-radius: 999px; display: inline-flex; font-size: .73rem; font-weight: 800; letter-spacing: .055em; padding: 6px 10px; text-transform: uppercase; }
.spc-status.is-active { background: var(--spc-green-soft); color: var(--spc-green-dark); }
.spc-status.is-missing { background: #fde8e8; color: #a41e1e; }
.spc-status.is-neutral { background: #eef1ef; color: #4c5d54; }

.spc-empty { background: var(--spc-paper); border: 1px dashed #b8cbbf; border-radius: var(--spc-radius); padding: clamp(35px, 7vw, 70px) 24px; text-align: center; }
.spc-empty > p { color: var(--spc-muted); margin: 0 auto 22px; max-width: 610px; }
.spc-empty .spc-actions { justify-content: center; }
.spc-empty__icon { align-items: center; background: var(--spc-green-soft); border-radius: 50%; color: var(--spc-green); display: flex; font-size: 2rem; font-weight: 800; height: 70px; justify-content: center; margin: 0 auto 20px; width: 70px; }

.spc-form { background: #fff; border: 1px solid var(--spc-line); border-radius: var(--spc-radius); box-shadow: var(--spc-shadow); padding: 28px; }
.spc-form-layout { display: grid; gap: 30px; grid-template-columns: 280px minmax(0, 1fr); }
.spc-photo-card { align-self: start; position: sticky; top: 30px; }
.spc-photo-preview { align-items: center; aspect-ratio: 1 / 1; background: var(--spc-paper); border: 2px dashed #b9ccc0; border-radius: 15px; display: flex; flex-direction: column; gap: 7px; justify-content: center; margin-bottom: 12px; overflow: hidden; padding: 20px; text-align: center; }
.spc-photo-preview img { height: 100%; object-fit: cover; width: 100%; }
.spc-photo-preview.has-photo { border: 0; padding: 0; }
.spc-photo-preview span { color: var(--spc-green); font-size: 2.2rem; }
.spc-photo-preview small { color: var(--spc-muted); }
.spc-file-button { width: 100%; }
.spc-file-button input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.spc-form fieldset { border: 0; border-bottom: 1px solid var(--spc-line); margin: 0 0 27px; padding: 0 0 27px; }
.spc-form fieldset:last-of-type { border: 0; }
.spc-form legend { color: var(--spc-ink); font-size: 1.25rem; font-weight: 800; margin-bottom: 18px; padding: 0; }
.spc-fields { display: grid; gap: 18px; }
.spc-fields--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.spc-form label, .spc-inline-form label, .spc-missing-form label { color: var(--spc-ink); display: grid; font-size: .88rem; font-weight: 750; gap: 7px; }
.spc-form input:not([type="checkbox"]):not([type="file"]), .spc-form select, .spc-form textarea, .spc-inline-form input, .spc-missing-form input, .spc-missing-form textarea { background: #fff; border: 1px solid #bccbc2; border-radius: 9px; box-shadow: none; color: var(--spc-ink); font: inherit; min-height: 46px; padding: 10px 12px; width: 100%; }
.spc-form textarea, .spc-missing-form textarea { resize: vertical; }
.spc-form input:focus, .spc-form select:focus, .spc-form textarea:focus, .spc-inline-form input:focus, .spc-missing-form input:focus, .spc-missing-form textarea:focus { border-color: var(--spc-green); box-shadow: 0 0 0 3px rgba(8,122,70,.14); outline: none; }
.spc-field--wide { grid-column: 1 / -1; }
.spc-check-grid { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.spc-check { align-items: center !important; display: flex !important; font-weight: 600 !important; gap: 9px !important; margin-top: 10px; }
.spc-check input { accent-color: var(--spc-green); height: 18px; width: 18px; }
.spc-privacy-fieldset { background: linear-gradient(135deg, #f1faf5, #fff); border: 1px solid #cfe3d7 !important; border-radius: 15px; padding: 22px !important; }
.spc-privacy-choice { align-items: flex-start !important; background: #fff; border: 1px solid var(--spc-line); border-radius: 12px; cursor: pointer; display: flex !important; gap: 11px !important; padding: 14px; }
.spc-privacy-choice:has(input:checked) { background: var(--spc-green-soft); border-color: #8dc7a6; box-shadow: inset 0 0 0 1px #8dc7a6; }
.spc-privacy-choice input { accent-color: var(--spc-green); flex: 0 0 auto; height: 19px; margin-top: 2px; width: 19px; }
.spc-privacy-choice span { display: grid; gap: 3px; }
.spc-privacy-choice strong { color: var(--spc-ink); }
.spc-privacy-choice small { color: var(--spc-muted); font-weight: 500; line-height: 1.35; }
.spc-privacy-summary { background: #fff; border: 1px solid var(--spc-line); border-radius: 10px; color: var(--spc-muted); font-size: .9rem; margin-top: 13px; padding: 12px 14px; }
.spc-privacy-summary strong { color: var(--spc-green-dark); }
.spc-preview-link { color: var(--spc-green-dark); display: inline-block; font-weight: 800; margin-top: 13px; }
.spc-help { color: var(--spc-muted); font-size: .88rem; }
.spc-form-actions { align-items: center; display: flex; gap: 12px; justify-content: flex-end; }
.spc-form-message, [data-spc-message], [data-spc-location-message] { border-radius: 8px; display: block; font-size: .9rem; margin-top: 12px; }
.spc-message--success { background: var(--spc-green-soft); color: var(--spc-green-dark); padding: 10px 12px; }
.spc-message--error { background: #fde8e8; color: #941e1e; padding: 10px 12px; }

.spc-notice { background: #eef7f2; border-left: 4px solid var(--spc-green); border-radius: 9px; margin: 16px 0; padding: 13px 15px; }
.spc-notice--warning { background: #fff5db; border-color: var(--spc-gold); }
.spc-notice--success { margin-bottom: 20px; }
.spc-back { margin-bottom: 18px; }
.spc-back a { color: var(--spc-green-dark); font-weight: 750; text-decoration: none; }
.spc-pet-hero { align-items: center; background: linear-gradient(120deg, #e7f5ed, #f8fbf9); border: 1px solid var(--spc-line); border-radius: var(--spc-radius); display: grid; gap: 28px; grid-template-columns: 200px minmax(0, 1fr); margin-bottom: 24px; padding: 24px; }
.spc-pet-hero.is-missing { background: linear-gradient(120deg, #fff0f0, #fff9f9); border-color: #e6b1b1; }
.spc-pet-hero__image { align-items: center; aspect-ratio: 1; background: #d8e9df; border-radius: 14px; display: flex; justify-content: center; overflow: hidden; }
.spc-pet-hero__image img { height: 100%; object-fit: cover; width: 100%; }
.spc-pet-hero__image span { color: var(--spc-green); font-size: 4rem; }
.spc-pet-hero__main > p { color: var(--spc-muted); }
.spc-manager-grid, .spc-finder-grid { display: grid; gap: 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.spc-panel { background: #fff; border: 1px solid var(--spc-line); border-radius: var(--spc-radius); box-shadow: 0 8px 24px rgba(18,55,38,.055); padding: clamp(22px, 4vw, 32px); }
.spc-missing-form { border-top: 1px solid var(--spc-line); display: grid; gap: 15px; margin-top: 20px; padding-top: 20px; }
.spc-missing-form[hidden] { display: none; }
.sp-core-poster { background: #f4faf6; border: 1px solid #cfe2d6; border-radius: 13px; margin-top: 22px; padding: 20px; }
.sp-core-poster h3 { margin-bottom: 7px; }
.sp-core-poster p { color: var(--spc-muted); }
.sp-core-poster__flag { color: var(--spc-green); display: block; font-size: .72rem; font-weight: 850; letter-spacing: .12em; margin-bottom: 8px; text-transform: uppercase; }
.sp-core-poster__privacy { background: #fff; border: 1px solid var(--spc-line); border-radius: 9px; display: grid; font-size: .84rem; gap: 3px; margin: 14px 0; padding: 12px; }
.sp-core-poster__privacy span { color: var(--spc-muted); }
.sp-core-poster--locked { align-items: start; background: linear-gradient(135deg, #fff8df, #fffdf5); border-color: #e4c65f; display: grid; gap: 16px; grid-template-columns: 48px minmax(0,1fr); padding: 22px; }
.sp-core-poster__lock { align-items: center; background: var(--spc-gold); border-radius: 14px; color: #432f00; display: flex; font-size: 1.35rem; height: 48px; justify-content: center; width: 48px; }
.sp-core-poster__locked-copy h3 { font-size: 1.35rem; margin: 0 0 7px; }
.sp-core-poster__locked-copy p { margin-bottom: 12px; }
.sp-core-poster__locked-copy ul { color: #4f5e55; display: grid; gap: 5px; margin: 0 0 17px; padding-left: 19px; }
.spc-danger-zone { align-items: center; border: 1px solid #f0caca; border-radius: var(--spc-radius); display: flex; gap: 25px; justify-content: space-between; margin-top: 34px; padding: 22px 26px; }
.spc-danger-zone h2, .spc-danger-zone p { margin-bottom: 4px; }
.spc-danger-zone p { color: var(--spc-muted); }

.spc-tag-list { display: grid; gap: 18px; }
.spc-tag-card { align-items: center; background: #fff; border: 1px solid var(--spc-line); border-radius: var(--spc-radius); display: grid; gap: 22px; grid-template-columns: 72px minmax(0,1fr) auto; padding: 22px; }
.spc-tag-icon { align-items: center; aspect-ratio: 1; background: var(--spc-green-soft); border-radius: 13px; color: var(--spc-green-dark); display: flex; font-weight: 900; justify-content: center; }
.spc-tag-main h2 { font-size: 1.4rem; margin: 8px 0 3px; }
.spc-tag-main > p { color: var(--spc-muted); }
.spc-tag-actions { align-items: stretch; display: flex; flex-direction: column; gap: 8px; text-align: center; }
.spc-inline-form { align-items: end; display: grid; gap: 10px; grid-template-columns: minmax(180px, 340px) auto minmax(120px, 1fr); }
.spc-product-mini-grid { display: grid; gap: 15px; grid-template-columns: repeat(2, minmax(0,1fr)); margin-top: 22px; }
.spc-product-mini-grid article { align-items: center; background: #fff; border: 1px solid var(--spc-line); border-radius: 14px; display: grid; gap: 15px; grid-template-columns: 110px minmax(0,1fr); padding: 14px; text-align: left; }
.spc-product-image img { aspect-ratio: 1; border-radius: 9px; height: auto; object-fit: contain; width: 100%; }
.spc-product-mini-grid h3 { font-size: 1rem; }
.spc-price { color: var(--spc-green-dark); font-size: 1.05rem; font-weight: 850; margin-bottom: 8px; }
.spc-product-order { align-items: end; display: grid; gap: 8px; grid-template-columns: 72px minmax(90px, 1fr); }
.spc-product-order label { color: var(--spc-muted); display: grid; font-size: .75rem; font-weight: 750; gap: 3px; }
.spc-product-order input { border: 1px solid #bccbc2; border-radius: 8px; height: 44px; padding: 8px; width: 100%; }
.spc-membership-plan-intro { align-items: start; background: #fff; border: 1px solid var(--spc-line); border-radius: var(--spc-radius); display: grid; gap: 16px; grid-template-columns: 44px minmax(0,1fr); margin: 18px auto 0; max-width: 760px; padding: clamp(22px, 4vw, 32px); text-align: left; }
.sp-pricing, .sp-pricing * { box-sizing: border-box; }
.spc-membership-plan-intro h2 { color: var(--spc-ink); font-size: clamp(1.55rem, 3vw, 2.1rem); margin: 0 0 7px; }
.spc-membership-plan-intro > div > p:last-child { color: var(--spc-muted); margin: 0; }
.spc-membership-tags { background: var(--spc-paper); border: 1px solid var(--spc-line); border-radius: var(--spc-radius); box-shadow: 0 18px 48px rgba(18,55,38,.09); margin: 48px auto; max-width: 1180px; padding: clamp(24px, 5vw, 44px); }
.spc-membership-tags[hidden] { display: none !important; }
.spc-membership-tags__intro { align-items: start; display: grid; gap: 16px; grid-template-columns: 44px minmax(0,1fr); max-width: 840px; }
.spc-membership-tags__intro > p:last-child { color: var(--spc-muted); }
.spc-membership-tags__intro > div > p:last-child { color: var(--spc-muted); margin-bottom: 0; }
.spc-section-number { align-items: center; background: var(--spc-green); border-radius: 50%; color: #fff; display: flex; font-size: 1.05rem; font-weight: 900; height: 42px; justify-content: center; width: 42px; }
.spc-funnel-context { align-items: center; background: #fff4ce; border: 1px solid #e3c765; border-radius: 13px; display: flex; flex-wrap: wrap; gap: 5px 14px; margin-bottom: 22px; padding: 14px 16px; }
.spc-funnel-context strong { color: #604700; }
.spc-funnel-context span { color: #6c6041; }
.spc-selected-plan { align-items: center; background: #fff; border: 1px solid #cddfd4; border-left: 5px solid var(--spc-green); border-radius: 12px; display: grid; gap: 2px 16px; grid-template-columns: minmax(0,1fr) auto; margin-top: 22px; padding: 14px 16px; }
.spc-selected-plan > span { color: var(--spc-muted); font-size: .76rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.spc-selected-plan > strong { color: var(--spc-ink); grid-column: 1; }
.spc-selected-plan > button { align-self: center; background: transparent !important; border: 0; color: var(--spc-green-dark) !important; cursor: pointer; font: inherit; font-size: .82rem; font-weight: 850; grid-column: 2; grid-row: 1 / 3; padding: 7px; text-decoration: underline; text-underline-offset: 3px; }
.spc-tag-choice-grid { display: grid; gap: 13px; grid-template-columns: repeat(2, minmax(0,1fr)); margin-top: 25px; }
.spc-tag-choice { align-items: start; appearance: none; background: #fff !important; border: 1px solid var(--spc-line) !important; border-radius: 14px; color: var(--spc-ink) !important; cursor: pointer; display: grid; gap: 4px; grid-template-columns: 36px minmax(0,1fr); padding: 16px; text-align: left; }
.spc-tag-choice > span { align-items: center; background: var(--spc-green-soft); border-radius: 50%; color: var(--spc-green-dark); display: flex; font-weight: 900; grid-row: 1 / 3; height: 30px; justify-content: center; width: 30px; }
.spc-tag-choice strong, .spc-tag-choice small { grid-column: 2; }
.spc-tag-choice small { color: var(--spc-muted); }
.spc-tag-choice.is-active { background: var(--spc-green-soft) !important; border-color: #80bd9a !important; box-shadow: inset 0 0 0 1px #80bd9a; color: var(--spc-ink) !important; }
.spc-tag-choice.is-active > span { background: var(--spc-green); color: #fff; }
.spc-tag-choice:hover, .spc-tag-choice:focus-visible { background: #f4fbf7 !important; border-color: var(--spc-green) !important; color: var(--spc-ink) !important; outline: none; }
.spc-tag-choice.is-active:hover, .spc-tag-choice.is-active:focus-visible { background: var(--spc-green-soft) !important; }
.spc-tag-choice-message { color: var(--spc-green-dark); font-size: .88rem; font-weight: 750; margin: 12px 0 0; }
[data-spc-tag-products] { border-top: 1px solid var(--spc-line); margin-top: 22px; padding-top: 22px; }
[data-spc-tag-products][hidden] { display: none !important; }
.spc-tag-product-heading { align-items: center; display: flex; gap: 16px; justify-content: space-between; }
.spc-tag-product-heading strong { color: var(--spc-ink); font-size: 1.12rem; }
.spc-tag-product-heading span { color: var(--spc-muted); font-size: .82rem; }
.spc-product-mini-grid--funnel article { align-items: stretch; grid-template-columns: minmax(110px, 150px) minmax(0,1fr); }
.spc-product-mini-grid--funnel .spc-product-image { align-items: center; background: #fff; border-radius: 11px; display: flex; }
.spc-product-mini-grid--funnel h3 { color: var(--spc-ink); font-size: 1.08rem; margin: 0 0 5px; }
.spc-product-help { color: var(--spc-muted); font-size: .82rem; margin: 0 0 12px; }
.spc-quantity-stepper { align-items: center; display: flex; gap: 14px; justify-content: space-between; }
.spc-quantity-stepper > span:first-child { color: var(--spc-ink); font-size: .86rem; font-weight: 800; }
.spc-stepper-controls { align-items: stretch; display: inline-grid; grid-template-columns: 42px 64px 42px; }
.spc-stepper-controls button, .spc-stepper-controls input { appearance: auto; background: #fff !important; border: 1px solid #aebfb5 !important; border-radius: 0; color: var(--spc-ink) !important; font: inherit; height: 44px; margin: 0 !important; min-width: 0; padding: 6px; text-align: center; }
.spc-stepper-controls button { cursor: pointer; font-size: 1.3rem; font-weight: 800; }
.spc-stepper-controls button:first-child { border-radius: 9px 0 0 9px; }
.spc-stepper-controls button:last-child { border-radius: 0 9px 9px 0; }
.spc-stepper-controls button:hover, .spc-stepper-controls button:focus-visible { background: var(--spc-green-soft) !important; color: var(--spc-green-dark) !important; }
.spc-stepper-controls input { border-left: 0 !important; border-right: 0 !important; font-weight: 850; width: 64px; }
.spc-membership-submit { align-items: center; background: #fff; border: 1px solid var(--spc-line); border-radius: 14px; display: grid; gap: 13px; grid-template-columns: 42px minmax(0,1fr) auto; margin-top: 24px; padding: 16px; }
.spc-membership-submit > div { display: grid; gap: 2px; }
.spc-membership-submit > div > strong { color: var(--spc-ink); }
.spc-membership-submit > div > small { color: var(--spc-muted); }
.spc-membership-submit .spc-button:disabled { background: #b5c2ba !important; color: #fff !important; cursor: not-allowed; opacity: 1; }
.spc-membership-checkout .spc-form-message { color: var(--spc-green-dark); font-size: .86rem; font-weight: 750; margin: 10px 0 0; text-align: right; }
.spc-product-order .added_to_cart { color: var(--spc-green-dark) !important; display: block; font-weight: 800; grid-column: 1 / -1; padding: 8px 0 0 !important; }

.spc-public-shell, .spc-activation-card { margin: 0 auto; max-width: 900px; }
.spc-activation-card { background: #fff; border: 1px solid var(--spc-line); border-radius: 24px; box-shadow: var(--spc-shadow); padding: clamp(30px, 7vw, 70px); text-align: center; }
.spc-activation-card > p { color: var(--spc-muted); font-size: 1.08rem; margin: 0 auto 25px; max-width: 680px; }
.spc-activation-card .spc-actions { justify-content: center; }
.spc-steps { display: grid; gap: 12px; list-style: none; margin: 30px 0; padding: 0; text-align: left; }
.spc-steps li { background: var(--spc-paper); border-radius: 12px; counter-increment: step; display: grid; gap: 2px; grid-template-columns: 42px 1fr; padding: 14px; }
.spc-steps { counter-reset: step; }
.spc-steps li::before { align-items: center; background: var(--spc-green); border-radius: 50%; color: #fff; content: counter(step); display: flex; font-weight: 800; grid-row: 1 / 3; height: 32px; justify-content: center; width: 32px; }
.spc-steps li span { color: var(--spc-muted); font-size: .9rem; }
.spc-activation-options { border-top: 1px solid var(--spc-line); margin-top: 28px; padding-top: 28px; }
.spc-pet-choice-grid { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0,1fr)); }
.spc-pet-choice { background: var(--spc-paper); border: 1px solid var(--spc-line); border-radius: 13px; display: grid; gap: 7px; padding: 16px; }
.spc-pet-choice span { color: var(--spc-muted); }
.spc-or { align-items: center; color: var(--spc-muted); display: flex; gap: 12px; margin: 20px 0; }
.spc-or::before, .spc-or::after { background: var(--spc-line); content: ""; flex: 1; height: 1px; }

.spc-public.spc-finder { margin: -48px 0 -80px; min-height: 100vh; padding-left: 0; padding-right: 0; }
.spc-finder-hero { align-items: center; background: linear-gradient(130deg, #e6f5ed, #fff); display: grid; gap: clamp(28px, 6vw, 70px); grid-template-columns: minmax(260px, 500px) minmax(0, 650px); justify-content: center; padding: clamp(36px, 7vw, 80px) 24px; }
.spc-finder-hero.is-missing { background: linear-gradient(130deg, #ffe8e8, #fff8ed); }
.spc-finder-photo { align-items: center; aspect-ratio: 4 / 3; background: #dcebe2; border: 8px solid #fff; border-radius: 24px; box-shadow: var(--spc-shadow); display: flex; justify-content: center; overflow: hidden; }
.spc-finder-photo img { height: 100%; object-fit: cover; width: 100%; }
.spc-finder-photo span { color: var(--spc-green); font-size: 6rem; }
.spc-finder-intro > p { color: var(--spc-muted); font-size: 1.08rem; }
.spc-last-seen { background: #fff; border-left: 5px solid var(--spc-red); border-radius: 11px; display: grid; gap: 2px; margin-top: 22px; padding: 14px 17px; }
.spc-last-seen small { color: var(--spc-muted); }
.spc-finder-grid { margin: 30px auto; max-width: 1120px; padding: 0 20px; }
.spc-public-contacts { display: grid; gap: 12px; margin: 20px 0 24px; }
.spc-public-contacts > article { background: #f5faf7; border: 1px solid #cfe2d6; border-radius: 13px; display: grid; gap: 3px; padding: 15px; }
.spc-public-contacts > article > small { color: var(--spc-muted); font-size: .76rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.spc-public-contacts > article > strong { color: var(--spc-ink); font-size: 1.08rem; overflow-wrap: anywhere; }
.spc-contact-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.spc-contact-actions a { align-items: center; background: #fff; border: 1px solid #a9c9b7; border-radius: 9px; color: var(--spc-green-dark); display: inline-flex; font-size: .84rem; font-weight: 800; gap: 7px; min-height: 40px; padding: 8px 12px; text-decoration: none; }
.spc-contact-actions a:hover, .spc-contact-actions a:focus-visible { background: var(--spc-green-dark); border-color: var(--spc-green-dark); color: #fff; }
.spc-contact-actions a span { align-items: center; background: var(--spc-green-soft); border-radius: 50%; color: var(--spc-green-dark); display: inline-flex; font-size: .76rem; font-weight: 900; height: 23px; justify-content: center; width: 23px; }
.spc-contact-actions a:hover span, .spc-contact-actions a:focus-visible span { background: rgba(255,255,255,.18); color: #fff; }
.spc-detail-list { display: grid; gap: 0; }
.spc-detail-list > div { border-bottom: 1px solid var(--spc-line); display: grid; gap: 3px; padding: 13px 0; }
.spc-detail-list > div:last-child { border: 0; }
.spc-detail-list span { color: var(--spc-muted); font-size: .82rem; }
.spc-public-footer { color: var(--spc-muted); display: grid; font-size: .82rem; gap: 5px; margin: 35px auto 0; max-width: 820px; padding: 22px 20px; text-align: center; }
.spc-public-footer strong { color: var(--spc-green-dark); }

.spc-recovery-panel { overflow: hidden; }
.spc-finder-report { border-top: 1px solid var(--spc-line); margin-top: 22px; padding-top: 22px; }
.spc-recovery-choice { align-items: center; display: flex; gap: 12px; margin-bottom: 14px; }
.spc-recovery-choice > div { display: grid; gap: 2px; }
.spc-recovery-choice small { color: var(--spc-muted); }
.spc-recovery-number { align-items: center; background: var(--spc-green); border-radius: 50%; color: #fff; display: inline-flex; flex: 0 0 34px; font-weight: 850; height: 34px; justify-content: center; }
.spc-button--location { align-items: center; background: linear-gradient(130deg, var(--spc-green), var(--spc-green-dark)); color: #fff !important; gap: 12px; justify-content: flex-start; min-height: 62px; padding: 11px 16px; width: 100%; }
.spc-button--location:hover, .spc-button--location:focus-visible { background: var(--spc-green-dark) !important; color: #fff !important; }
.spc-public .spc-button.spc-button--location:hover, .spc-public .spc-button.spc-button--location:focus-visible { background-color: var(--spc-green-dark) !important; background-image: none !important; color: #fff !important; }
#page .spc-public button.spc-button.spc-button--location[data-spc-location]:hover, #page .spc-public button.spc-button.spc-button--location[data-spc-location]:focus-visible { background: #075535 !important; color: #fff !important; }
.spc-button--location > span:first-child { align-items: center; background: rgba(255,255,255,.16); border-radius: 50%; display: flex; font-size: 1.5rem; height: 38px; justify-content: center; width: 38px; }
.spc-button--location > span:last-child { align-items: start; display: grid; gap: 2px; text-align: left; }
.spc-button--location small { font-size: .76rem; font-weight: 500; opacity: .86; }
.spc-map-preview { background: #f6faf8; border: 1px solid var(--spc-line); border-radius: 13px; margin-top: 12px; overflow: hidden; }
.spc-map-preview[hidden], .spc-thank-you[hidden] { display: none !important; }
.spc-map-preview iframe { border: 0; display: block; height: 220px; width: 100%; }
.spc-map-preview > div { align-items: center; display: grid; gap: 2px; grid-template-columns: 1fr auto; padding: 12px 14px; }
.spc-map-preview > div strong, .spc-map-preview > div span { grid-column: 1; }
.spc-map-preview > div span { color: var(--spc-muted); font-size: .8rem; }
.spc-map-preview button { background: transparent; border: 0; color: #9b2222; cursor: pointer; font-weight: 750; grid-column: 2; grid-row: 1 / 3; }
.spc-finder-fields { display: grid; gap: 13px; grid-template-columns: repeat(2, minmax(0,1fr)); margin-top: 18px; }
.spc-finder-fields label { color: var(--spc-ink); display: grid; font-size: .85rem; font-weight: 750; gap: 6px; }
.spc-finder-fields label > small { color: var(--spc-muted); font-weight: 500; }
.spc-finder-fields input, .spc-finder-fields textarea { background: #fff; border: 1px solid #bccbc2; border-radius: 9px; color: var(--spc-ink); font: inherit; min-height: 46px; padding: 10px 12px; width: 100%; }
.spc-finder-fields input:focus, .spc-finder-fields textarea:focus { border-color: var(--spc-green); box-shadow: 0 0 0 3px rgba(8,122,70,.14); outline: 0; }
.spc-consent { align-items: flex-start; background: var(--spc-paper); border-radius: 10px; display: flex; font-size: .82rem; gap: 9px; margin: 15px 0; padding: 11px 12px; }
.spc-consent input { accent-color: var(--spc-green); flex: 0 0 auto; height: 18px; margin-top: 1px; width: 18px; }
.spc-button--wide { width: 100%; }
.spc-thank-you { align-items: center; background: var(--spc-green-soft); border: 1px solid #a8d3b9; border-radius: 13px; display: flex; gap: 12px; margin-top: 14px; padding: 14px; }
.spc-thank-you > span { align-items: center; background: var(--spc-green); border-radius: 50%; color: #fff; display: flex; flex: 0 0 36px; font-weight: 900; height: 36px; justify-content: center; }
.spc-thank-you p { color: var(--spc-muted); margin: 2px 0 0; }
.spc-safety-note { background: #fff8e4; border-radius: 11px; margin-top: 20px; padding: 14px; }
.spc-safety-note p { color: #6e602f; margin: 4px 0 0; }

.spc-recovery-history { background: #fff; border: 1px solid var(--spc-line); border-radius: var(--spc-radius); box-shadow: 0 8px 24px rgba(18,55,38,.055); margin-top: 24px; padding: clamp(22px, 4vw, 32px); }
.spc-recovery-history .spc-section-heading { align-items: start; }
.spc-recovery-history .spc-section-heading p:last-child { color: var(--spc-muted); margin: 5px 0 0; max-width: 700px; }
.spc-history-count { background: var(--spc-green-soft); border-radius: 99px; color: var(--spc-green-dark); font-size: .82rem; font-weight: 800; padding: 7px 11px; white-space: nowrap; }
.spc-history-empty { align-items: center; background: var(--spc-paper); border: 1px dashed #b8cbbf; border-radius: 13px; display: flex; gap: 14px; padding: 18px; }
.spc-history-empty > span { align-items: center; background: var(--spc-green-soft); border-radius: 50%; color: var(--spc-green); display: flex; flex: 0 0 42px; font-size: 1.35rem; height: 42px; justify-content: center; }
.spc-history-empty p { color: var(--spc-muted); margin: 2px 0 0; }
.spc-history-list { display: grid; gap: 16px; }
.spc-history-list article { background: #f7faf8; border: 1px solid #dce5df; border-radius: 15px; display: grid; gap: 13px; grid-template-columns: 16px minmax(0,1fr); padding: 19px; }
.spc-history-list article:nth-child(even) { background: #eef7f2; border-color: #c9ded2; }
.spc-history-dot { background: var(--spc-green); border: 4px solid var(--spc-green-soft); border-radius: 50%; height: 16px; margin-top: 5px; width: 16px; }
.spc-history-main { min-width: 0; }
.spc-history-head { align-items: center; display: flex; gap: 12px; justify-content: space-between; }
.spc-history-head time { color: var(--spc-muted); font-size: .82rem; }
.spc-delivery { font-size: .82rem; font-weight: 700; margin: 5px 0 11px; }
.spc-delivery.is-sent { color: var(--spc-green-dark); }
.spc-delivery.is-saved { color: #825f18; }
.spc-history-main blockquote { background: var(--spc-paper); border-left: 3px solid var(--spc-green); margin: 10px 0; padding: 10px 13px; }
.spc-history-contact { display: flex; flex-wrap: wrap; gap: 10px; }
.spc-history-contact > * { background: var(--spc-paper); border-radius: 9px; color: var(--spc-ink); display: grid; font-weight: 700; padding: 9px 11px; text-decoration: none; }
.spc-history-contact small { color: var(--spc-muted); font-weight: 500; }
.spc-map-link { color: var(--spc-green-dark); display: inline-block; font-weight: 800; margin-top: 11px; }
.spc-history-location { background: #fff; border: 1px solid #c9ded2; border-radius: 13px; margin-top: 15px; overflow: hidden; }
.spc-history-location__heading { align-items: center; display: flex; gap: 10px; padding: 13px 14px; }
.spc-history-location__heading > span { align-items: center; background: var(--spc-green-soft); border-radius: 50%; color: var(--spc-green-dark); display: flex; flex: 0 0 34px; font-size: 1.1rem; height: 34px; justify-content: center; }
.spc-history-location__heading > div { display: grid; gap: 1px; }
.spc-history-location__heading small { color: var(--spc-muted); }
.spc-history-location iframe { border: 0; display: block; height: 265px; width: 100%; }
.spc-map-actions { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px 14px 14px; }
.spc-map-actions a { align-items: center; background: #f6faf8; border: 1px solid #b9d3c4; border-radius: 9px; color: var(--spc-green-dark); display: inline-flex; font-size: .82rem; font-weight: 800; gap: 7px; min-height: 40px; padding: 8px 11px; text-decoration: none; }
.spc-map-actions a:hover, .spc-map-actions a:focus-visible { background: var(--spc-green-dark); border-color: var(--spc-green-dark); color: #fff; }
.spc-map-actions a img { flex: 0 0 22px; height: 22px; object-fit: contain; width: 22px; }
.spc-map-actions a span { align-items: center; background: var(--spc-green-soft); border-radius: 50%; display: inline-flex; font-size: .72rem; font-weight: 900; height: 22px; justify-content: center; width: 22px; }
.spc-map-actions a:hover span, .spc-map-actions a:focus-visible span { background: rgba(255,255,255,.18); }

.page-id-1020 .elementor-element.elementor-element-6fe57e94 { background: transparent !important; display: block !important; padding: 0 !important; }
.page-id-1020 .elementor-element.elementor-element-20569d8, .spc-woocommerce-account .entry-header, .spc-woocommerce-account .entry-title { display: none !important; }
.page-id-1020 .elementor-element.elementor-element-35947b9b { width: 100% !important; }
.dashboard-content, .dashboard-container { height: auto !important; min-height: 0 !important; overflow: visible !important; }
.dashboard-container { padding-bottom: 60px; }
.spc-woocommerce-account .site-content { padding-top: clamp(24px, 4vw, 50px); }
.spc-woocommerce-account .elementor-element-35947b9b > .elementor-widget-container > p { margin: 0; }
.spc-woocommerce-account .woocommerce { background: #fff !important; border: 1px solid var(--spc-line) !important; border-radius: 22px !important; box-shadow: 0 20px 55px rgba(12,58,37,.12) !important; display: grid !important; grid-template-columns: 250px minmax(0,1fr); margin: 18px auto 70px !important; max-width: 1180px; overflow: hidden !important; }
.spc-woocommerce-account .woocommerce::before, .spc-woocommerce-account .woocommerce::after { display: none !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation { background: linear-gradient(180deg, #073f2a, #086b40) !important; float: none !important; min-height: 100% !important; padding: 24px 16px !important; width: auto !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation::before { color: #fff; content: "My account"; display: block; font-size: 18px; font-weight: 850; padding: 4px 12px 18px; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation ul { align-content: start !important; display: grid !important; gap: 4px !important; grid-auto-rows: minmax(42px, auto); height: auto !important; margin: 0 !important; min-height: 0 !important; padding: 0 !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation li { background: transparent !important; border: 0 !important; list-style: none !important; margin: 0 !important; padding: 0 !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation a { align-items: center; background: transparent !important; border: 0 !important; border-radius: 10px !important; color: #dceee4 !important; display: flex !important; font-size: 15px !important; font-weight: 700 !important; gap: 10px; line-height: 1.25 !important; margin: 0 !important; min-height: 42px !important; padding: 9px 12px !important; text-decoration: none !important; width: 100% !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation a > br { display: none !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation a::before { content: none !important; display: none !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before { content: "⌂"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--safe-paws-pets a::before { content: "♡"; font-size: 1rem; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--safe-paws-tags a::before { content: "QR"; font-size: .58rem; font-weight: 900; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before { content: "▣"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--subscriptions a::before { content: "★"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before { content: "↓"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before { content: "⌖"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before { content: "☺"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before { content: "→"; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation .is-active a, .spc-woocommerce-account .woocommerce-MyAccount-navigation a:hover, .spc-woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible { background: #fff !important; color: var(--spc-green-dark) !important; }
.spc-woocommerce-account .woocommerce-MyAccount-navigation .is-active a::before, .spc-woocommerce-account .woocommerce-MyAccount-navigation a:hover::before { background: var(--spc-green-soft); }
.spc-woocommerce-account .woocommerce-MyAccount-content { float: none !important; min-width: 0; padding: clamp(24px, 4vw, 42px) !important; width: auto !important; }
.spc-account-dashboard .woocommerce-MyAccount-content > p:first-of-type, .spc-account-dashboard .woocommerce-MyAccount-content > p:nth-of-type(2) { display: none; }
.spc-account-home { color: var(--spc-ink); }
.spc-account-home * { box-sizing: border-box; }
.spc-account-hero { background: linear-gradient(135deg, #e8f6ee, #fff8df); border: 1px solid #cde1d4; border-radius: 18px; display: grid; gap: 24px; grid-template-columns: minmax(0,1.1fr) minmax(280px,.9fr); padding: clamp(22px, 4vw, 34px); }
.spc-account-hero h2 { color: var(--spc-ink); font-size: clamp(1.8rem, 3.5vw, 2.55rem); letter-spacing: -.035em; margin: 0 0 10px; }
.spc-account-hero > div:first-child > p:last-child { color: var(--spc-muted); margin: 0; max-width: 560px; }
.spc-account-membership { align-items: start; background: #fff; border: 1px solid #cbded2; border-radius: 14px; display: grid; gap: 12px; grid-template-columns: 40px minmax(0,1fr); padding: 16px; }
.spc-account-membership > p, .spc-protection-steps > br, .spc-account-cards > br { display: none !important; }
.spc-account-membership__icon { align-items: center; background: var(--spc-green-soft); border-radius: 11px; color: var(--spc-green-dark); display: flex; font-size: 1.2rem; height: 40px; justify-content: center; }
.spc-account-membership > div { display: grid; gap: 4px; }
.spc-account-membership small { color: var(--spc-green-dark); font-size: .69rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.spc-account-membership strong { color: var(--spc-ink); }
.spc-account-membership p { color: var(--spc-muted); font-size: .82rem; line-height: 1.4; margin: 1px 0 4px; }
.spc-account-membership a { color: var(--spc-green-dark); font-size: .82rem; font-weight: 850; text-decoration: none; }
.spc-account-membership.is-premium { border-top: 4px solid var(--spc-gold); }
.spc-account-membership.is-expired { border-top: 4px solid var(--spc-red); }
.spc-account-stats { display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 18px 0; }
.spc-account-stats > div { background: var(--spc-paper); border: 1px solid var(--spc-line); border-radius: 13px; display: flex; gap: 12px; justify-content: space-between; padding: 13px 15px; }
.spc-account-stats small { color: var(--spc-muted); font-weight: 700; }
.spc-account-stats strong { color: var(--spc-green-dark); font-size: 1.2rem; }
.spc-protection-path, .spc-account-actions { border-top: 1px solid var(--spc-line); margin-top: 24px; padding-top: 24px; }
.spc-account-section-heading { align-items: end; display: flex; gap: 18px; justify-content: space-between; margin-bottom: 15px; }
.spc-account-section-heading h3 { color: var(--spc-ink); font-size: 1.35rem; margin: 0; }
.spc-account-section-heading > span { background: var(--spc-green-soft); border-radius: 999px; color: var(--spc-green-dark); font-size: .74rem; font-weight: 800; padding: 6px 10px; }
.spc-account-section-heading > p { margin: 0; }
.spc-account-section-heading > p > span { background: var(--spc-green-soft); border-radius: 999px; color: var(--spc-green-dark); display: inline-block; font-size: .74rem; font-weight: 800; padding: 6px 10px; }
.spc-protection-steps { display: grid; gap: 11px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.spc-protection-steps > a { background: #fff; border: 1px solid var(--spc-line); border-radius: 14px; color: var(--spc-ink); display: grid; gap: 10px; grid-template-columns: 34px minmax(0,1fr); min-width: 0; padding: 15px; text-decoration: none; }
.spc-protection-steps > a:hover { border-color: #92c3a6; box-shadow: 0 7px 18px rgba(18,55,38,.08); transform: translateY(-1px); }
.spc-protection-steps > a.needs-action { background: #fffaf0; border-color: #e7d18a; }
.spc-protection-steps i { align-items: center; background: var(--spc-green); border-radius: 50%; color: #fff; display: flex; font-size: .8rem; font-style: normal; font-weight: 900; height: 30px; justify-content: center; width: 30px; }
.spc-protection-steps > a.needs-action i { background: #b28200; }
.spc-protection-steps span { display: grid; gap: 3px; }
.spc-protection-steps small { color: var(--spc-muted); }
.spc-protection-steps strong { color: var(--spc-ink); font-size: .91rem; line-height: 1.3; }
.spc-protection-steps b { color: var(--spc-green-dark); font-size: .76rem; margin-top: 5px; }
.spc-account-cards { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0,1fr)); margin: 0; }
.spc-account-cards > a { background: var(--spc-paper); border: 1px solid var(--spc-line); border-radius: 14px; display: grid; gap: 4px; grid-template-columns: 42px minmax(0,1fr); min-width: 0; padding: 16px; text-decoration: none; transition: .15s ease; }
.spc-account-cards > a:hover { background: var(--spc-green-soft); border-color: #9bc9ae; transform: translateY(-2px); }
.spc-account-icon { align-items: center; background: var(--spc-green-soft); border-radius: 11px; color: var(--spc-green-dark); display: flex; font-weight: 900; height: 42px; justify-content: center; margin-bottom: 8px; width: 42px; }
.spc-account-cards strong, .spc-account-cards small, .spc-account-cards b { grid-column: 2; }
.spc-account-cards strong { color: var(--spc-ink); font-size: 1rem; }
.spc-account-cards small { color: var(--spc-muted); }
.spc-account-cards b { color: var(--spc-green-dark); font-size: .8rem; margin-top: 6px; }

.spc-order-next-steps { background: linear-gradient(135deg, #edf8f2, #fff9e5); border: 1px solid #bdd9c8; border-radius: 20px; box-shadow: 0 16px 40px rgba(18,55,38,.09); margin: 30px 0; padding: clamp(22px, 4vw, 34px); }
.spc-order-next-steps__heading { align-items: start; display: grid; gap: 15px; grid-template-columns: 46px minmax(0,1fr); }
.spc-order-next-steps__heading > p:empty, .spc-order-steps > br { display: none !important; }
.spc-order-next-steps__heading > div { grid-column: 2; }
.spc-order-next-steps__heading > span { align-items: center; background: var(--spc-green); border-radius: 50%; color: #fff; display: flex; font-size: 1.25rem; font-weight: 900; height: 46px; justify-content: center; }
.spc-order-next-steps h2 { color: var(--spc-ink); font-size: clamp(1.5rem, 3vw, 2rem); margin: 0 0 8px; }
.spc-order-next-steps__heading p:last-child { color: var(--spc-muted); margin: 0; max-width: 760px; }
.spc-order-steps { display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 24px 0; }
.spc-order-steps > a { background: #fff; border: 1px solid var(--spc-line); border-radius: 13px; color: var(--spc-ink); display: grid; gap: 10px; grid-template-columns: 32px minmax(0,1fr); padding: 15px; text-decoration: none; }
.spc-order-steps > a:hover { border-color: #8cbfa1; box-shadow: 0 8px 20px rgba(18,55,38,.07); }
.spc-order-steps i { align-items: center; background: var(--spc-green-soft); border-radius: 50%; color: var(--spc-green-dark); display: flex; font-style: normal; font-weight: 900; height: 30px; justify-content: center; }
.spc-order-steps span { display: grid; gap: 4px; }
.spc-order-steps strong { color: var(--spc-ink); line-height: 1.25; }
.spc-order-steps small { color: var(--spc-muted); line-height: 1.4; }
.sp-login-register #user-registration-form .sp-form-controls:has(#phone) { display: block; }
.sp-login-register #user-registration-form .sp-form-controls .iti { display: block; width: 100%; }
.sp-login-register #user-registration-form #phone { padding-left: 92px; width: 100%; }
.sp-login-register #user-registration-form #countryCode { display: none !important; }
.spc-woocommerce-account .woocommerce .password-input { display: block; position: relative; }
.spc-woocommerce-account .woocommerce .password-input .show-password-input { align-items: center; background: #eef8f2 !important; border: 1px solid #b9dec8 !important; border-radius: 999px !important; color: #075535 !important; display: inline-flex !important; font-family: inherit !important; font-size: 0 !important; height: 32px !important; justify-content: center; min-width: 62px; padding: 0 10px !important; position: absolute !important; right: 8px; top: 50% !important; transform: translateY(-50%); width: auto !important; }
.spc-woocommerce-account .woocommerce .password-input .show-password-input::after { content: 'Show'; font-family: inherit !important; font-size: 12px !important; line-height: 1 !important; margin: 0 !important; }
.spc-woocommerce-account .woocommerce .password-input .show-password-input.display-password::after { content: 'Hide'; }
.spc-multi-pet-upsell { align-items: start; background: linear-gradient(135deg, #fff8df, #edf8f2); border: 1px solid #d8c87f; border-radius: 22px; box-shadow: var(--spc-shadow); display: grid; gap: 22px; grid-template-columns: 78px minmax(0,1fr); margin: 20px auto; max-width: 850px; padding: clamp(25px, 5vw, 46px); }
.spc-multi-pet-upsell__icon { align-items: center; background: var(--spc-gold); border-radius: 20px; color: #3f3100; display: flex; font-size: 1.45rem; font-weight: 900; height: 72px; justify-content: center; }
.spc-multi-pet-upsell h2 { color: var(--spc-ink); font-size: clamp(1.7rem, 3vw, 2.4rem); margin: 0 0 9px; }
.spc-multi-pet-upsell p, .spc-multi-pet-upsell li { color: var(--spc-muted); }
.spc-multi-pet-upsell ul { display: grid; gap: 6px; margin: 15px 0 22px; padding-left: 20px; }

@media (max-width: 920px) {
	.spc-app-header { align-items: start; flex-direction: column; gap: 20px; }
	.spc-app-header nav { width: 100%; }
	.spc-app-header nav a { flex: 1; text-align: center; }
	.spc-pet-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.spc-form-layout { grid-template-columns: 220px minmax(0, 1fr); }
	.spc-check-grid { grid-template-columns: 1fr; }
	.spc-tag-card { grid-template-columns: 60px minmax(0,1fr); }
	.spc-tag-actions { flex-direction: row; flex-wrap: wrap; grid-column: 2; }
	.spc-account-cards { grid-template-columns: 1fr; }
	.spc-account-hero { grid-template-columns: 1fr; }
	.spc-protection-steps { grid-template-columns: 1fr; }
	.spc-order-steps { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
	.spc-app { margin: 26px auto 60px; width: min(100% - 28px, 1180px); }
	.spc-public { padding: 26px 14px 60px; }
	.spc-app-header nav { border-radius: 12px; overflow-x: auto; }
	.spc-app-header nav a { flex: none; }
	.spc-membership-banner, .spc-shop-callout, .spc-section-heading { align-items: stretch; flex-direction: column; }
	.spc-membership-banner, .spc-shop-callout { padding: 24px; }
	.spc-membership-banner::after, .spc-shop-callout::after { opacity: .45; right: -36px; }
	.spc-pet-grid, .spc-manager-grid, .spc-finder-grid, .spc-product-mini-grid, .spc-pet-choice-grid { grid-template-columns: 1fr; }
	.spc-dashboard-stats { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.spc-form { padding: 18px; }
	.spc-form-layout { grid-template-columns: 1fr; }
	.spc-photo-card { position: static; }
	.spc-photo-preview { aspect-ratio: 16 / 10; }
	.spc-fields--2 { grid-template-columns: 1fr; }
	.spc-form-actions .spc-button { flex: 1; }
	.spc-pet-hero { align-items: start; grid-template-columns: 100px minmax(0,1fr); padding: 16px; }
	.spc-pet-hero__main h1 { font-size: 2rem; }
	.spc-pet-hero__main .spc-actions { grid-column: 1 / -1; }
	.spc-danger-zone { align-items: stretch; flex-direction: column; }
	.spc-tag-card { align-items: start; grid-template-columns: 52px minmax(0,1fr); padding: 16px; }
	.spc-tag-actions { grid-column: 1 / -1; }
	.spc-inline-form { align-items: stretch; grid-template-columns: 1fr; }
	.spc-product-mini-grid article { grid-template-columns: 90px minmax(0,1fr); }
	.spc-public.spc-finder { margin: -26px 0 -60px; }
	.spc-finder-hero { gap: 25px; grid-template-columns: 1fr; padding: 30px 18px; }
	.spc-finder-photo { aspect-ratio: 4 / 3; }
	.spc-finder-fields { grid-template-columns: 1fr; }
	.spc-map-preview > div { grid-template-columns: 1fr; }
	.spc-map-preview button { grid-column: 1; grid-row: auto; justify-self: start; margin-top: 7px; }
	.spc-history-list article { grid-template-columns: 12px minmax(0,1fr); padding: 15px 13px; }
	.spc-history-dot { border-width: 3px; height: 12px; width: 12px; }
	.spc-history-head { align-items: start; flex-direction: column; gap: 3px; }
	.spc-history-location iframe { height: 220px; }
	.spc-map-actions a, .spc-contact-actions a { flex: 1 1 auto; justify-content: center; }
	.spc-tag-choice-grid { grid-template-columns: 1fr; }
	.spc-tag-product-heading { align-items: start; flex-direction: column; gap: 3px; }
	.spc-membership-plan-intro, .spc-membership-tags__intro { grid-template-columns: 38px minmax(0,1fr); }
	.spc-membership-tags { margin: 30px 14px; padding: 22px 16px; }
	.spc-selected-plan { grid-template-columns: 1fr; }
	.spc-selected-plan > button { grid-column: 1; grid-row: auto; justify-self: start; padding-left: 0; }
	.spc-product-mini-grid--funnel article { grid-template-columns: 82px minmax(0,1fr); padding: 12px; }
	.spc-quantity-stepper { align-items: start; flex-direction: column; gap: 7px; }
	.spc-membership-submit { grid-template-columns: 38px minmax(0,1fr); }
	.spc-membership-submit .spc-button { grid-column: 1 / -1; width: 100%; }
	.spc-membership-checkout .spc-form-message { text-align: left; }
	.spc-multi-pet-upsell { grid-template-columns: 1fr; }
	.spc-multi-pet-upsell__icon { height: 58px; width: 58px; }
	.spc-woocommerce-account .woocommerce { display: block !important; margin: 16px 14px 55px !important; }
	.spc-woocommerce-account .woocommerce-MyAccount-navigation { min-height: 0 !important; padding: 12px !important; width: 100% !important; }
	.spc-woocommerce-account .woocommerce-MyAccount-navigation::before { padding: 5px 7px 11px; }
	.spc-woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid !important; gap: 6px !important; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; padding: 0 !important; }
	.spc-woocommerce-account .woocommerce-MyAccount-navigation li { min-width: 0; width: 100%; }
	.spc-woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { grid-column: 1 / -1; }
	.spc-woocommerce-account .woocommerce-MyAccount-navigation a { justify-content: center; min-height: 42px !important; padding: 8px 9px !important; text-align: center; white-space: normal; }
	.spc-woocommerce-account .woocommerce-MyAccount-content { padding: 20px 16px 26px !important; width: 100% !important; }
	.spc-account-hero { padding: 20px; }
	.spc-account-stats { grid-template-columns: 1fr; }
	.spc-account-section-heading { align-items: start; flex-direction: column; }
	.spc-activation-card { border-radius: 18px; padding: 28px 18px; }
}

@media (max-width: 390px) {
	.spc-pet-grid { grid-template-columns: 1fr; }
	.spc-dashboard-stats { grid-template-columns: 1fr; }
	.spc-app-header nav a { padding-inline: 12px; }
	.spc-pet-hero { grid-template-columns: 1fr; }
	.spc-pet-hero__image { aspect-ratio: 16 / 10; }
	.spc-actions > .spc-button { width: 100%; }
	.sp-core-poster--locked { grid-template-columns: 1fr; }
	.spc-product-mini-grid--funnel article { grid-template-columns: 1fr; }
	.spc-product-mini-grid--funnel .spc-product-image { margin: 0 auto; max-width: 150px; }
}

@media (prefers-reduced-motion: reduce) {
	.spc-button, .sp-core-poster .button { transition: none; }
}
