:root{--color-juniper:#2b3d33;--color-juniper-soft:#4a5f53;--color-brass:#8a6226;--color-stone:#f5f3ec;--color-card:#fff;--color-border:#2b3d3324;--color-heart:#b8422f;--color-bronze:#8a5a2e;--color-silver:#6b6f75;--color-gold:#a67c00;--color-moss:#3f7a4a;--color-amber:#996100;--font-display:"Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-sans:-apple-system, "Avenir Next", "Segoe UI", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-juniper);background:var(--color-stone);font:16px/1.5 var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{overscroll-behavior-y:contain;min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;margin:0;font-weight:400;line-height:1.2}h1{font-size:2rem}h2{font-size:1.25rem}h3{font-size:1.0625rem}p{margin:0}button{font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-brass);outline-offset:2px}.offline-banner{background:var(--color-brass);color:var(--color-card);text-align:center;padding-block:.5rem;padding-inline:1rem;font-size:.875rem;font-weight:500}.update-prompt{background:var(--color-juniper);color:var(--color-card);text-align:center;justify-content:center;align-items:center;gap:.75rem;padding-block:.5rem;padding-inline:1rem;font-size:.875rem;font-weight:500;display:flex}.update-prompt button{border:1px solid var(--color-card);min-block-size:2.25rem;color:var(--color-card);cursor:pointer;background:0 0;border-radius:999px;padding-inline:.875rem;font-size:.8125rem;font-weight:600}.install-banner{background:var(--color-juniper);color:var(--color-card);text-align:center;justify-content:center;align-items:center;gap:.75rem;padding-block:.5rem;padding-inline:1rem;font-size:.875rem;font-weight:500;display:flex}.install-banner button{border:1px solid var(--color-card);min-block-size:2.25rem;color:var(--color-card);cursor:pointer;background:0 0;border-radius:999px;padding-inline:.875rem;font-size:.8125rem;font-weight:600}.install-banner-dismiss{border:none;min-inline-size:2.25rem;padding-inline:0;font-size:1.125rem;line-height:1}.pull-to-refresh-banner{background:var(--color-brass);color:var(--color-card);justify-content:center;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;transition:block-size .15s ease-out;display:flex;overflow:hidden}.pull-to-refresh-spinner{border:2px solid var(--color-card);border-block-start-color:#0000;border-radius:999px;flex-shrink:0;block-size:.875rem;inline-size:.875rem}.pull-to-refresh-spinner-active{animation:.7s linear infinite pull-to-refresh-spin}@media (prefers-reduced-motion:reduce){.pull-to-refresh-spinner-active{animation:none}}@keyframes pull-to-refresh-spin{to{transform:rotate(360deg)}}.page-refresh-button{border:1px solid var(--color-border);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding-inline:0;font-weight:400;display:inline-flex}.page-refresh-button:disabled{opacity:.5;cursor:not-allowed}.page-refresh-button svg{transition:transform .3s ease-out}.page-refresh-button[data-refreshing=true] svg{animation:.7s linear infinite pull-to-refresh-spin}@media (prefers-reduced-motion:reduce){.page-refresh-button[data-refreshing=true] svg{animation:none}}.page-heading-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.top-bar{background:var(--color-card);border-block-end:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;min-block-size:3.5rem;padding-block:.75rem;padding-inline:1rem;display:flex}.offline-header{background:var(--color-card);border-block-end:1px solid var(--color-border);padding-block:.75rem;padding-inline:1rem}.offline-header h1{margin-block:0 .25rem;font-size:1.25rem}.offline-header p{color:var(--color-juniper-soft);margin:0;font-size:.875rem}.top-bar-start{flex:1;align-items:center;gap:.75rem;min-inline-size:0;display:flex}.top-bar-start .page-refresh-button{margin-inline-start:auto}.auth-header,.language-switcher,.top-bar-end{align-items:center;gap:.75rem;display:flex}.auth-header button,.language-switcher button{border:1px solid var(--color-border);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.language-switcher{border:1px solid var(--color-border);border-radius:999px;gap:0;overflow:hidden}.language-switcher button{border:none;border-radius:0;padding-inline:.875rem}.language-switcher button[aria-pressed=true]{background:var(--color-juniper);color:var(--color-card);font-weight:600}.auth-header button:last-of-type{background:var(--color-brass);border-color:var(--color-brass);color:var(--color-card)}#center{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding-block:1.5rem 3rem;padding-inline:1rem;display:flex}.landing-tagline{color:var(--color-juniper-soft);max-inline-size:32ch}.landing-hero-illustration{block-size:auto;max-inline-size:100%;margin-block-end:-.5rem}.landing-cta{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;margin-block-start:.25rem;padding-inline:1.75rem;font-size:1rem;font-weight:600}.landing-features{text-align:start;grid-template-columns:1fr;gap:1rem;max-inline-size:44rem;margin-block-start:1.5rem;display:grid}@media (width>=40rem){.landing-features{grid-template-columns:repeat(2,1fr)}}.landing-feature-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.375rem;padding:1.125rem;display:flex}.landing-feature-card svg{color:var(--color-brass)}.landing-feature-card h2{font-family:var(--font-display);margin:0;font-size:1.0625rem}.landing-feature-card p{color:var(--color-juniper-soft);margin:0;font-size:.9375rem}#banned-page{text-align:center;flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:.75rem;padding-inline:1rem;display:flex}#banned-page p{color:var(--color-juniper-soft);max-inline-size:32ch}#connect-failed-page{text-align:center;flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:.75rem;padding-inline:1rem;display:flex}#connect-failed-page p{color:var(--color-juniper-soft);max-inline-size:32ch}#connect-failed-page button{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.bottom-nav{z-index:20;pointer-events:none;justify-content:center;display:flex;position:fixed;inset-block-end:calc(1rem + env(safe-area-inset-bottom,0px));inset-inline:0}.bottom-nav-inner{background:var(--color-card);border:1px solid var(--color-border);pointer-events:auto;border-radius:999px;gap:.375rem;padding:.375rem;display:flex;box-shadow:0 4px 16px #2b3d332e}.bottom-nav-inner button{min-block-size:2.75rem;color:var(--color-juniper-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;padding-inline:1.125rem;font-size:.9375rem;font-weight:500}.bottom-nav-inner button[aria-pressed=true]{background:var(--color-juniper);color:var(--color-card);font-weight:600}.burger-menu{position:relative}.burger-menu-trigger{border:1px solid var(--color-border);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.burger-menu-trigger[aria-expanded=true]{background:var(--color-juniper);border-color:var(--color-juniper);color:var(--color-card)}.burger-menu-panel{z-index:10;background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.625rem;min-inline-size:12rem;padding:.875rem;display:flex;position:absolute;inset-block-start:calc(100% + .5rem);inset-inline-start:0;box-shadow:0 8px 24px #0000001f}.burger-menu-panel.burger-menu-panel-closed{display:none}.burger-menu-item{text-align:start;border:1px solid var(--color-border);min-block-size:2.75rem;inline-size:100%;color:var(--color-juniper-soft);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.9375rem;font-weight:500}.burger-menu-item[aria-pressed=true]{background:var(--color-juniper);border-color:var(--color-juniper);color:var(--color-card);font-weight:600}.burger-menu-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-juniper-soft);margin:.25rem 0 0;padding-inline-start:.25rem;font-size:.75rem;font-weight:600}.burger-menu-account{padding-inline-start:.25rem}#feed-page,#dogs-page,#friends-page,#trick-review-page,#directory-page,#admin-page,#preferences-page,#post-preview-page,#post-detail-page,#found-dog-page{padding-inline:1rem;padding-block:1.5rem calc(5.5rem + env(safe-area-inset-bottom,0px));flex-direction:column;gap:1.5rem;inline-size:100%;max-inline-size:40rem;margin-inline:auto;display:flex}#post-preview-page{text-align:center;place-items:center}#post-preview-page .post-card{text-align:start;inline-size:100%}.create-post,.post-comments form{flex-direction:column;gap:.625rem;display:flex}.create-post{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;padding:1.125rem}.create-post h2{margin-block-end:.25rem}.create-post-upload-progress{align-items:center;gap:.625rem;display:flex}.create-post-upload-progress progress{block-size:.5rem;accent-color:var(--color-brass);flex:1}.create-post-upload-progress span{color:var(--color-juniper-soft);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8125rem}.create-post label,.post-comments label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.create-post input,.create-post select,.post-comments input{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.create-post input:focus-visible,.create-post select:focus-visible,.post-comments input:focus-visible{outline:2px solid var(--color-brass);outline-offset:1px}.create-post-trigger{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;align-self:flex-start;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.create-post-actions{gap:.5rem;display:flex}.create-post-actions button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1.25rem;font-size:.9375rem;font-weight:500}.create-post-actions button:disabled{opacity:.5;cursor:not-allowed}button.create-post-primary-button{border:1px solid var(--color-brass);background:var(--color-brass);color:var(--color-card);font-weight:600}.create-post button[type=submit]{background:var(--color-brass);border:1px solid var(--color-brass);color:var(--color-card);border-radius:999px;align-self:flex-start;font-size:.9375rem;font-weight:600}.create-post button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.create-post [role=alert]{color:var(--color-heart);margin:0;font-size:.875rem}.walk-tracker-active{flex-direction:column;gap:.625rem;display:flex}.walk-tracker-stats{font-variant-numeric:tabular-nums;color:var(--color-juniper);justify-content:space-between;align-items:baseline;font-size:1.5rem;font-weight:700;display:flex}.walk-tracker-hint{color:var(--color-juniper-soft);margin:0;font-size:.875rem}.walk-indicator{border:1px solid var(--color-amber);background:color-mix(in srgb, var(--color-amber) 12%, var(--color-card));min-block-size:2.75rem;color:var(--color-juniper);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:999px;align-items:center;gap:.375rem;padding-inline:1rem;font-size:.875rem;font-weight:600;display:flex}.walk-indicator:before{content:"";background:var(--color-amber);border-radius:50%;flex-shrink:0;block-size:.5rem;inline-size:.5rem}@media (prefers-reduced-motion:no-preference){.walk-indicator:before{animation:2s ease-in-out infinite walk-indicator-pulse}}@keyframes walk-indicator-pulse{0%,to{opacity:1}50%{opacity:.35}}.walk-tracker-dogs{border:none;flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex}.walk-tracker-dogs legend{color:var(--color-juniper-soft);padding:0;font-size:.8125rem;font-weight:600}.walk-tracker-dogs .preferences-checkbox{min-block-size:2.75rem}.feed{flex-direction:column;gap:1.5rem;display:flex}.feed>p{color:var(--color-juniper-soft)}.post-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;overflow:hidden;box-shadow:0 1px 3px #2b3d330f}.post-card img,.post-card video{object-fit:cover;background:linear-gradient(to bottom right, color-mix(in srgb, var(--color-juniper-soft) 25%, var(--color-stone)), color-mix(in srgb, var(--color-brass) 20%, var(--color-stone)));block-size:auto;max-block-size:32rem;inline-size:100%;display:block}.post-card-body{flex-direction:column;gap:.5rem;padding:1rem;display:flex}.post-card-title-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.post-card-title-row .dog-profile-breed-link{flex-shrink:0;margin-block-start:0}.post-card-body p{color:var(--color-juniper-soft);font-size:.9375rem;line-height:1.45}.post-card-visibility{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.post-card-visibility label{color:var(--color-juniper-soft);font-size:.8125rem}.post-card-visibility select{border:1px solid var(--color-border);background:var(--color-card);min-block-size:2.75rem;color:var(--color-juniper);border-radius:.5rem;padding-inline:.5rem;font-size:.875rem}.post-card-visibility-label{background:color-mix(in srgb, var(--color-juniper-soft) 12%, transparent);color:var(--color-juniper-soft);border-radius:999px;align-items:center;padding-block:.25rem;padding-inline:.625rem;font-size:.75rem;font-weight:500;display:inline-flex}.post-card-visibility button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.8125rem;font-weight:500}.post-card-actions{border-block-start:1px solid var(--color-border);flex-wrap:wrap;gap:.75rem;margin-block-start:.25rem;padding-block-start:.75rem;display:flex}.post-card-actions button,.feed>button,.create-post button[type=submit]{min-block-size:2.75rem;min-inline-size:2.75rem;padding-inline:1rem}.post-card-actions button{color:var(--color-juniper-soft);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;display:inline-flex}.post-card-actions button[aria-pressed=true]{color:var(--color-heart)}.feed>button{border:1px solid var(--color-border);color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;align-self:center;font-weight:500}.post-comments ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.post-comments li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;font-size:.9375rem;display:flex}.post-comments button{color:var(--color-juniper-soft);cursor:pointer;background:0 0;border:none;min-block-size:2.75rem;padding-inline:.5rem;font-size:.8125rem}.dog-profiles{flex-direction:column;gap:1rem;display:flex}.dog-profiles>p{color:var(--color-juniper-soft)}.dog-profiles-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.dog-profile-row{text-align:start;background:var(--color-card);border:1px solid var(--color-border);width:100%;color:var(--color-juniper);font:inherit;cursor:pointer;border-radius:1rem;align-items:center;gap:.875rem;padding:.875rem 1.125rem;display:flex}.dog-profile-row>div{flex:auto;min-inline-size:0}.dog-avatar{object-fit:cover;background:var(--color-stone);border-radius:999px;flex-shrink:0}.dog-avatar-sm{block-size:3rem;inline-size:3rem}.dog-avatar-lg{block-size:6rem;inline-size:6rem}.dog-avatar-fallback{color:var(--color-brass);font-family:var(--font-display);justify-content:center;align-items:center;font-weight:400;display:flex}.dog-avatar-sm.dog-avatar-fallback{font-size:1.25rem}.dog-avatar-lg.dog-avatar-fallback{font-size:2.25rem}.user-avatar{object-fit:cover;background:var(--color-stone);border-radius:999px;flex-shrink:0;block-size:2.25rem;inline-size:2.25rem}.user-avatar-fallback{color:var(--color-brass);font-family:var(--font-display);justify-content:center;align-items:center;font-size:1rem;font-weight:400;display:flex}.dog-profile-row h3{font-size:1.0625rem}.dog-profile-row p{color:var(--color-juniper-soft);margin-block-start:.125rem;font-size:.875rem}.dog-profile-breed-link{color:var(--color-brass);cursor:pointer;background:0 0;border:none;align-items:center;min-block-size:2.75rem;margin-block-start:.125rem;padding:0;font-size:.875rem;font-weight:500;text-decoration:underline;display:inline-flex}.dog-progress{align-items:center;gap:.5rem;margin-block-start:.5rem;display:flex}.dog-progress-bar{background:var(--color-border);border-radius:999px;flex:auto;block-size:.5rem;min-inline-size:4rem;display:flex;overflow:hidden}.dog-progress-bar-scored{background:var(--color-moss)}.dog-progress-bar-pending{background:var(--color-amber)}.dog-progress-bar-not-started{background:var(--color-heart)}.dog-progress-summary{color:var(--color-juniper-soft);white-space:nowrap;flex-shrink:0;font-size:.8125rem}.dog-profile-form{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.625rem;padding:1.125rem;display:flex}.dog-profile-form label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.breed-picker-hint{color:var(--color-juniper-soft);margin:0;font-size:.8125rem}.breed-combobox{flex-direction:column;gap:.25rem;display:flex}.breed-combobox-label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.breed-combobox-field{gap:.375rem;display:flex}.breed-combobox-input{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;min-inline-size:0;color:var(--color-juniper);font:inherit;border-radius:.5rem;flex:1;padding-inline:.75rem;font-size:.9375rem}.breed-combobox-input:focus-visible{outline:2px solid var(--color-brass);outline-offset:1px}.breed-combobox-button{border:1px solid var(--color-border);background:var(--color-card);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-juniper-soft);cursor:pointer;border-radius:.5rem;font-size:.75rem}.breed-combobox-button[data-focus-visible]{outline:2px solid var(--color-brass);outline-offset:1px}.breed-combobox-popover{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;max-block-size:min(60vh,22rem);overflow:hidden;box-shadow:0 4px 16px #2b3d331f}.breed-combobox-listbox{max-block-size:inherit;padding:.25rem;overflow-y:auto}.breed-combobox-item{min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;border-radius:.5rem;align-items:center;gap:.625rem;padding-inline:.625rem;font-size:.9375rem;display:flex}.breed-combobox-item img,.breed-combobox-item-noimage{object-fit:cover;background:var(--color-stone);border-radius:999px;flex-shrink:0;block-size:1.75rem;inline-size:1.75rem}.breed-combobox-item[data-focused],.breed-combobox-item[data-hovered]{background:var(--color-stone)}.breed-combobox-item[data-selected]{background:color-mix(in srgb, var(--color-brass) 15%, var(--color-card));font-weight:600}.dog-profile-form input,.dog-profile-form select{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.dog-profile-form-actions{gap:.5rem;margin-block-start:.25rem;display:flex}.dog-profile-form-actions button[type=submit]{background:var(--color-brass);border:1px solid var(--color-brass);color:var(--color-card);font-weight:600}.dog-profile-form-actions button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.9375rem;font-weight:500}.dog-profile-form-actions button:disabled{opacity:.5;cursor:not-allowed}.preferences-checkbox{align-items:center;gap:.5rem;display:flex}.preferences-email{color:var(--color-juniper-soft);margin:0;font-size:.9375rem}.preferences-field-section{flex-direction:column;gap:.5rem;display:flex}.preferences-field-display{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.preferences-field-display button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem}.dog-profiles>button{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;align-self:flex-start;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.directory{flex-direction:column;gap:1rem;display:flex}.directory-view-toggle{border:1px solid var(--color-border);border-radius:999px;align-self:flex-start;gap:0;display:flex;overflow:hidden}.directory-view-toggle button{min-block-size:2.75rem;color:var(--color-juniper-soft);cursor:pointer;background:0 0;border:none;padding-inline:1.25rem;font-size:.875rem;font-weight:500}.directory-view-toggle button[aria-pressed=true]{background:var(--color-juniper);color:var(--color-card);font-weight:600}.map-view{border:1px solid var(--color-border);border-radius:1rem;block-size:60vh;min-block-size:20rem;overflow:hidden}.listing-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.listing-card{text-align:start;background:var(--color-card);border:1px solid var(--color-border);cursor:pointer;border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.25rem;min-block-size:2.75rem;inline-size:100%;padding:.875rem 1.125rem;display:flex}.listing-card h3{margin:0;font-size:1.0625rem}.listing-card p{color:var(--color-juniper-soft);margin:0;font-size:.875rem}.listing-card-category{letter-spacing:.04em;text-transform:uppercase;color:var(--color-brass);font-size:11px;font-weight:600;display:inline-block}.listing-detail{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.listing-detail>button:first-child{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.listing-detail h2{margin:0}.listing-detail p{color:var(--color-juniper-soft);margin:0}.listing-detail a{color:var(--color-brass)}.review-list{flex-direction:column;gap:.5rem;inline-size:100%;margin:0;padding:0;list-style:none;display:flex}.review-list li{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;padding:.75rem 1rem}.review-list li p{color:var(--color-juniper);margin-block-start:.25rem;font-size:.9375rem}.review-form,.add-listing-form{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.625rem;inline-size:100%;padding:1.125rem;display:flex}.review-form label,.add-listing-form label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.review-form input,.add-listing-form input,.add-listing-form select,.add-listing-form textarea{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.add-listing-form textarea{resize:vertical;padding-block:.625rem}.star-picker{gap:.25rem;display:flex}.star-picker button{min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--color-brass);cursor:pointer;background:0 0;border:none;font-size:1.5rem}.review-form button[type=submit],.add-listing-form-actions button[type=submit]{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;align-self:flex-start;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.review-form button[type=submit]:disabled,.add-listing-form-actions button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.add-listing-form-actions{gap:.5rem;display:flex}.add-listing-form-actions button[type=button]{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.9375rem;font-weight:500}.hometown-cta{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 1.125rem;display:flex}.hometown-cta p{color:var(--color-juniper-soft);margin:0}.hometown-cta button{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.hometown-change-link,.directory-refresh-area{min-block-size:2.75rem;color:var(--color-juniper-soft);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding-inline:0;font-size:.875rem;text-decoration:underline}.directory-refresh-area:disabled{opacity:.5;cursor:not-allowed}.hometown-prompt{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.625rem;inline-size:100%;padding:1.125rem;display:flex}.hometown-prompt p{color:var(--color-juniper-soft);margin:0}.hometown-prompt label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.hometown-prompt input{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.hometown-prompt-actions{gap:.5rem;display:flex}.hometown-prompt-actions button[type=submit]{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.hometown-prompt-actions button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.hometown-prompt-actions button[type=button]{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.9375rem;font-weight:500}.directory-recentre{flex-wrap:wrap;gap:.5rem;display:flex}.directory-recentre button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.directory-recentre-form{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.625rem;inline-size:100%;padding:1.125rem;display:flex}.directory-recentre-form label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.directory-recentre-form input,.directory-recentre-form select{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.directory-recentre-actions{gap:.5rem;display:flex}.directory-recentre-actions button[type=submit]{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.directory-recentre-actions button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.directory-recentre-actions button[type=button]{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.9375rem;font-weight:500}.directory-favorites-filter{color:var(--color-juniper-soft);align-items:center;gap:.5rem;min-block-size:2.75rem;font-size:.875rem;display:inline-flex}.directory-favorites-filter input{block-size:1.25rem;inline-size:1.25rem}.favorite-button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:.375rem;padding-inline:1rem;font-size:.875rem;font-weight:500;display:inline-flex}.favorite-button[aria-pressed=true]{border-color:var(--color-brass);color:var(--color-brass)}.admin-dashboard{flex-direction:column;gap:1.25rem;display:flex}.admin-stat-tiles{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem;display:grid}.admin-stat-tile{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.25rem;padding:1rem 1.125rem;display:flex}.admin-stat-tile-link{text-align:start;font:inherit;cursor:pointer}.admin-stat-tile-link:hover{border-color:var(--color-brass)}.admin-stat-value{font-variant-numeric:tabular-nums;color:var(--color-juniper);font-size:1.75rem;font-weight:700}.admin-stat-label{color:var(--color-juniper-soft);font-size:.8125rem}.admin-usage-list{flex-direction:column;gap:.875rem;display:flex}.admin-usage-row{flex-direction:column;gap:.375rem;display:flex}.admin-usage-row-header{color:var(--color-juniper);justify-content:space-between;font-size:.875rem;display:flex}.admin-usage-row-header span:last-child{font-variant-numeric:tabular-nums;color:var(--color-juniper-soft)}.admin-usage-bar{background:var(--color-stone);border:1px solid var(--color-border);border-radius:999px;block-size:.625rem;overflow:hidden}.admin-usage-bar-fill{border-radius:999px;block-size:100%}.admin-usage-bar-fill-ok{background:var(--color-brass)}.admin-usage-bar-fill-warning{background:var(--color-heart)}.admin-usage-note{color:var(--color-juniper-soft);margin:0;font-size:.8125rem}.admin-directory-list{flex-direction:column;gap:1.25rem;display:flex}.admin-directory-list-header{align-items:center;gap:.75rem;display:flex}.admin-directory-list-header button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.admin-directory-list-header h2{margin:0}.admin-directory-filters{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.admin-directory-filters label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.admin-directory-filters select,.admin-directory-filters input{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.admin-listing-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.admin-listing-row{text-align:start;background:var(--color-card);border:1px solid var(--color-border);cursor:pointer;border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.25rem;min-block-size:2.75rem;inline-size:100%;padding:.875rem 1.125rem;display:flex}.admin-listing-row h3,.admin-listing-row h4{margin:0;font-size:1.0625rem}.admin-trick-category{flex-direction:column;gap:.5rem;display:flex}.admin-trick-category h3{font-family:var(--font-display);color:var(--color-juniper-soft);margin:0;font-size:1rem;font-weight:400}.admin-listing-row p{color:var(--color-juniper-soft);margin:0;font-size:.875rem}.admin-listing-row-stats{color:var(--color-juniper-soft);font-size:.8125rem}.admin-user-row{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.25rem;inline-size:100%;padding:.875rem 1.125rem;display:flex}.admin-user-row h3{margin:0;font-size:1.0625rem}.admin-user-row p{color:var(--color-juniper-soft);margin:0;font-size:.875rem}.admin-listing-delete-button{border:1px solid var(--color-heart);min-block-size:2.75rem;color:var(--color-heart);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;padding-inline:1rem;font-size:.875rem;font-weight:500}.report-trigger{color:var(--color-juniper-soft);cursor:pointer;background:0 0;border:none;min-block-size:2.75rem;padding-inline:.5rem;font-size:.8125rem;font-weight:500}.report-confirmed{color:var(--color-juniper-soft);font-size:.8125rem}.report-form,.dog-tag-back{background:var(--color-stone);border:1px solid var(--color-border);border-radius:.75rem;flex-direction:column;flex:100%;gap:.5rem;inline-size:100%;margin-block-start:.5rem;padding:.75rem;display:flex}.report-form label,.dog-tag-back label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.report-form select,.report-form textarea,.report-form input[type=text],.dog-tag-back input[type=text],.dog-tag-back textarea{border:1px solid var(--color-border);background:var(--color-card);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding:.5rem .75rem;font-size:.9375rem}.report-form textarea{resize:vertical;min-block-size:4.5rem}.report-form-actions{gap:.5rem;display:flex}.report-form-actions button{cursor:pointer;border-radius:999px;min-block-size:2.75rem;padding-inline:1rem;font-size:.875rem;font-weight:500}.report-form-actions button[type=submit]{background:var(--color-brass);color:var(--color-stone);border:none}.report-form-actions button[type=button]{border:1px solid var(--color-border);color:var(--color-juniper);background:0 0}.found-dog-header{align-items:center;gap:.75rem;display:flex}.found-dog-header h2{margin:0}.dog-tag-section{flex-direction:column;gap:1rem;display:flex}.dog-tag-card{border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.dog-tag-front{flex-direction:column;align-items:center;gap:.75rem;display:flex}.dog-tag-qr{border:1px solid var(--color-border);background:var(--color-card);border-radius:.75rem;block-size:12rem;inline-size:12rem;max-inline-size:100%}.dog-tag-back h4{margin:0}.dog-tag-disclaimer{color:var(--color-juniper-soft);margin:0;font-size:.8125rem}.dog-tag-preview{white-space:pre-wrap;background:var(--color-card);border:1px solid var(--color-border);color:var(--color-juniper);border-radius:.5rem;margin:0;padding:.75rem;font-size:.9375rem}.admin-reports{flex-direction:column;gap:1.25rem;display:flex}.admin-reports-header{align-items:center;gap:.75rem;display:flex}.admin-reports-header button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.admin-reports-header h2{margin:0}.admin-report-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.admin-report-row{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.5rem;padding:.875rem 1.125rem;display:flex}.admin-report-row-header{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.admin-report-type{color:var(--color-juniper);font-weight:700}.admin-report-reason{background:var(--color-stone);color:var(--color-juniper-soft);border-radius:999px;padding-inline:.5rem}.admin-report-date{color:var(--color-juniper-soft);font-variant-numeric:tabular-nums;margin-inline-start:auto}.admin-report-preview{background:var(--color-stone);border-radius:.75rem;padding:.625rem .75rem}.admin-report-preview p{color:var(--color-juniper);margin:0;font-size:.9375rem}.admin-report-preview p+p{margin-block-start:.25rem}.admin-report-context{color:var(--color-juniper-soft);font-size:.8125rem}.admin-report-gone{color:var(--color-juniper-soft);margin:0;font-size:.875rem;font-style:italic}.admin-report-details{color:var(--color-juniper-soft);margin:0;font-size:.875rem}.admin-report-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-report-actions button{cursor:pointer;border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.admin-report-actions button.admin-report-destructive-button{border-color:var(--color-heart);color:var(--color-heart)}.breed-detail{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.breed-detail>button:first-child{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.breed-detail-image{object-fit:cover;border-radius:1rem;max-block-size:14rem;inline-size:100%}.breed-detail h2{margin:0}.breed-detail h3{margin-block-end:0;font-size:1.0625rem}.breed-detail p{color:var(--color-juniper-soft);margin:0;line-height:1.5}.breed-detail-facts{flex-wrap:wrap;gap:1rem 1.5rem;inline-size:100%;margin:0;display:flex}.breed-detail-facts>div{flex-direction:column;gap:.125rem;display:flex}.breed-detail-facts dt{text-transform:uppercase;letter-spacing:.03em;color:var(--color-juniper-soft);font-size:.75rem;font-weight:600}.breed-detail-facts dd{color:var(--color-juniper);font-variant-numeric:tabular-nums;margin:0;font-size:.9375rem}.breed-detail-temperament{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.breed-detail-temperament li{background:var(--color-stone);border:1px solid var(--color-border);color:var(--color-juniper);border-radius:999px;padding:.25rem .75rem;font-size:.8125rem}.breed-detail-untranslated-note{font-size:.875rem;font-style:italic}.invite-note{color:var(--color-brass);font-weight:500}.invite-redeemed-note{border:1px solid var(--color-brass);background:color-mix(in srgb, var(--color-brass) 12%, var(--color-card));color:var(--color-juniper);border-radius:.75rem;margin:0;padding:.75rem 1rem;font-weight:500}.friends,.friends-display-name-prompt{flex-direction:column;gap:1rem;display:flex}.friends-display-name-prompt form{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.625rem;padding:1.125rem;display:flex}.friends-display-name-prompt label,.friends-panel label{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.friends-display-name-prompt input,.friends-panel input{border:1px solid var(--color-border);background:var(--color-stone);min-block-size:2.75rem;color:var(--color-juniper);font:inherit;border-radius:.5rem;padding-inline:.75rem;font-size:.9375rem}.friends-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.friends-tabs button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper-soft);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.friends-tabs button[aria-selected=true]{border-color:var(--color-brass);background:color-mix(in srgb, var(--color-brass) 15%, var(--color-card));color:var(--color-juniper)}.friends-panel{flex-direction:column;gap:.75rem;display:flex}.friends-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.friends-list li{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.friends-list button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:.875rem;font-size:.875rem;font-weight:500}.friends-list button.friends-list-row{min-inline-size:0;color:var(--color-juniper);text-align:start;background:0 0;border:none;flex:auto;justify-content:flex-start;align-items:center;gap:.5rem;padding-inline:0;font-size:1rem;font-weight:600;display:flex}.friends-list-identity{align-items:center;gap:.5rem;min-inline-size:0;display:flex}.friends-request-actions{gap:.5rem;display:flex}.friends-pending-label{color:var(--color-juniper-soft);font-size:.8125rem}.friends-invite-link{flex-wrap:wrap;gap:.5rem;display:flex}.friends-invite-link input{flex:1;min-inline-size:12rem}.friends-invite-link button{background:var(--color-brass);min-block-size:2.75rem;color:var(--color-stone);cursor:pointer;border:none;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.dog-detail{flex-direction:column;gap:1.25rem;display:flex}.dog-detail>button:first-child,.friends>button:first-child,.create-post>button:first-child{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;padding-inline:1rem;font-size:.875rem;font-weight:500}.dog-detail-tabs{flex-wrap:wrap;gap:.375rem;display:flex}.dog-detail-tabs button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper-soft);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.dog-detail-tabs button[aria-pressed=true]{border-color:var(--color-juniper);background:var(--color-juniper);color:var(--color-card);font-weight:600}.dog-detail-section{background:var(--color-card);border:1px solid var(--color-border);border-radius:1rem;flex-direction:column;gap:.75rem;padding:1.125rem;display:flex}.dog-detail-facts{flex-direction:column;gap:.5rem;margin:0;display:flex}.dog-detail-facts dt{color:var(--color-juniper-soft);font-size:.8125rem;font-weight:600}.dog-detail-facts dd{margin:0;font-size:.9375rem}.dog-detail-actions{gap:.5rem;display:flex}.dog-detail-actions button{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.dog-family,.dog-scorecard{flex-direction:column;gap:1rem;display:flex}.scorecard-category{flex-direction:column;gap:.5rem;display:flex}.scorecard-category h4{font-family:var(--font-display);color:var(--color-juniper-soft);margin:0;font-size:.9375rem;font-weight:400}.scorecard-grid{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.scorecard-icon{aspect-ratio:1;border:2px solid var(--color-border);background:var(--color-stone);inline-size:100%;color:var(--color-juniper-soft);text-align:center;cursor:pointer;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:.375rem;padding:.5rem;font-size:.75rem;font-weight:600;display:flex}.scorecard-icon:disabled{cursor:default;opacity:.5}.scorecard-icon-label{line-height:1.2}.scorecard-icon-progress{opacity:.85;font-size:.6875rem;font-weight:500}.scorecard-icon-pending{border-color:var(--color-amber);background:color-mix(in srgb, var(--color-amber) 12%, var(--color-card));color:var(--color-juniper)}.scorecard-icon-fail{border-color:var(--color-heart);background:color-mix(in srgb, var(--color-heart) 15%, var(--color-card));color:var(--color-heart)}.scorecard-icon-bronze,.scorecard-icon-silver,.scorecard-icon-gold,.scorecard-icon-bronze .scorecard-icon-progress,.scorecard-icon-silver .scorecard-icon-progress,.scorecard-icon-gold .scorecard-icon-progress{text-shadow:0 1px 3px color-mix(in srgb, var(--color-card) 85%, transparent)}.scorecard-icon-bronze{border-color:var(--color-bronze);background-color:color-mix(in srgb, var(--color-bronze) 18%, var(--color-card));background-image:linear-gradient(color-mix(in srgb, var(--color-card) 42%, transparent), color-mix(in srgb, var(--color-card) 42%, transparent)), url(/system/rosette-bronze.svg);color:var(--color-bronze);background-position:50%;background-size:cover}.scorecard-icon-silver{border-color:var(--color-silver);background-color:color-mix(in srgb, var(--color-silver) 18%, var(--color-card));background-image:linear-gradient(color-mix(in srgb, var(--color-card) 42%, transparent), color-mix(in srgb, var(--color-card) 42%, transparent)), url(/system/rosette-silver.svg);color:var(--color-silver);background-position:50%;background-size:cover}.scorecard-icon-gold{border-color:var(--color-gold);background-color:color-mix(in srgb, var(--color-gold) 20%, var(--color-card));background-image:linear-gradient(color-mix(in srgb, var(--color-card) 38%, transparent), color-mix(in srgb, var(--color-card) 38%, transparent)), url(/system/rosette-gold.svg);color:var(--color-gold);background-position:50%;background-size:cover}.trick-submission-detail{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.trick-submission-detail>button:first-child{border:1px solid var(--color-border);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;background:0 0;border-radius:999px;padding-inline:1rem;font-size:.875rem;font-weight:500}.trick-submission-detail h2{margin:0}.trick-submission-detail p{color:var(--color-juniper-soft);margin:0;line-height:1.5}.trick-submission-detail video{background:#000;border-radius:1rem;max-block-size:24rem;inline-size:100%}.trick-review-actions{flex-wrap:wrap;gap:.625rem;display:flex}.trick-review-actions button{border:1px solid var(--color-border);background:var(--color-card);min-block-size:2.75rem;color:var(--color-juniper);cursor:pointer;border-radius:999px;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.trick-review-preview{flex-direction:column;gap:.75rem;display:flex}.trick-review-preview-more{border:1px solid var(--color-brass);background:var(--color-brass);min-block-size:2.75rem;color:var(--color-card);cursor:pointer;border-radius:999px;align-self:flex-start;padding-inline:1.25rem;font-size:.9375rem;font-weight:600}.admin-report-media{object-fit:contain;background:#000;border-radius:.75rem;max-block-size:16rem;inline-size:100%;display:block}
