:root{--green:#166534;--green-dark:#0d3f24;--amber:#f59e0b;--ink:#132019;--muted:#5f6f65;--cream:#fbfaf4;--soft:#eef7ef;--white:#fff;--line:#dbe7dd;--shadow:0 24px 70px rgba(16,61,35,.14)}
input:not([type=button]):not([type=submit]):not([type=reset]),textarea,select{font-weight:400!important}input::placeholder,textarea::placeholder{font-weight:400!important}
.language-switcher{position:fixed;right:16px;top:14px;z-index:1000;margin:0;padding:5px 8px;background:rgba(255,255,255,.97);border:1px solid var(--line);border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.12)}.language-switcher label{display:flex;align-items:center;gap:7px}.language-switcher label>span{font-size:.72rem;font-weight:800;color:var(--muted)}.language-switcher select{max-width:150px;padding:6px 28px 6px 8px;border:0;border-radius:8px;background:#f4f8f4;color:var(--ink);font:inherit;font-size:.82rem;font-weight:750;cursor:pointer}.language-switcher select:focus{outline:3px solid rgba(22,101,52,.18)}.language-switcher noscript button{margin-left:5px}.language-switcher+.site-header{padding-top:72px}.home-brand-block{display:grid;justify-items:start;gap:10px}.language-switcher.language-switcher-inline{position:static;right:auto;top:auto;z-index:auto;padding:4px 6px;box-shadow:none}.language-switcher.language-switcher-inline label>span{font-size:.68rem}.language-switcher.language-switcher-inline select{font-size:.76rem;padding-top:5px;padding-bottom:5px}@media(max-width:650px){.language-switcher{position:sticky;top:0;right:auto;display:flex;justify-content:flex-end;border-width:0 0 1px;border-radius:0;box-shadow:none}.language-switcher label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.language-switcher select{max-width:145px}.language-switcher+.site-header{padding-top:16px}.language-switcher.language-switcher-inline{position:static;display:block;border:1px solid var(--line);border-radius:10px}.language-switcher.language-switcher-inline label>span{position:static;width:auto;height:auto;overflow:visible;clip:auto}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit}.site-header{max-width:1180px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:1.25rem;font-weight:800}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--green);font-size:1.35rem}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-weight:650;color:#32463a}.hero{max-width:1180px;min-height:660px;margin:auto;padding:70px 28px 100px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:80px}.hero-copy{max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--green);font-size:.78rem;font-weight:850}.hero h1{margin:14px 0 22px;font-size:clamp(2.8rem,6vw,5.5rem);line-height:1.02;letter-spacing:-.055em}.lead{max-width:620px;color:var(--muted);font-size:1.22rem}.actions{display:flex;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--green);color:white;text-decoration:none;border-radius:999px;padding:14px 23px;font-weight:800;box-shadow:0 10px 28px rgba(22,101,52,.22)}.button-small{padding:8px 16px}.button-outline{background:transparent;color:var(--green);border:1px solid var(--green);box-shadow:none}.text-link{color:var(--green);font-weight:800;text-decoration:none}.microcopy{color:var(--muted);font-size:.88rem}.tag-demo{position:relative;justify-self:center;width:290px;min-height:395px;padding:48px 28px 25px;border-radius:48% 48% 30% 30%/35% 35% 20% 20%;background:linear-gradient(145deg,#fff,#e9eee9);border:10px solid #ced7cf;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;text-align:center;transform:rotate(3deg)}.tag-hole{position:absolute;top:15px;width:28px;height:28px;border-radius:50%;background:#8b9a8e;box-shadow:inset 0 2px 5px #526057}.paw{font-size:2.1rem}.tag-demo strong{font-size:1.15rem}.tag-demo>span:not(.paw){font-size:.8rem;color:var(--muted)}.qr-placeholder{width:150px;height:150px;margin:14px;background:repeating-conic-gradient(#17221b 0 25%,#fff 0 50%) 50%/24px 24px;border:10px solid white;box-shadow:0 3px 12px #aab5ac}.qr-placeholder span{display:block;width:46px;height:46px;margin:42px;background:var(--green);border:8px solid white}.tag-demo small{font-weight:750}.section{max-width:1180px;margin:auto;padding:90px 28px}.section h2{max-width:760px;margin:8px 0 38px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.04em}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:32px}.step{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--soft);color:var(--green);font-weight:900}.cards h3{font-size:1.3rem}.cards p,.centered p{color:var(--muted)}.soft{max-width:none;background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-left:max(28px,calc((100vw - 1124px)/2));padding-right:max(28px,calc((100vw - 1124px)/2))}.check-list{list-style:none;padding:0;margin:0;display:grid;gap:16px}.check-list li{background:#fff;padding:18px 20px 18px 52px;border-radius:14px;position:relative}.check-list li:before{content:"✓";position:absolute;left:20px;color:var(--green);font-weight:900}.centered{text-align:center}.centered h2{margin-left:auto;margin-right:auto}footer{max-width:1180px;margin:auto;padding:30px 28px 45px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.85rem}
@media(max-width:800px){.site-header{padding:16px 20px}.site-header nav a:not(.button){display:none}.hero{min-height:auto;padding:50px 20px 75px;grid-template-columns:1fr;gap:50px}.hero h1{font-size:clamp(2.65rem,14vw,4rem)}.tag-demo{width:250px;min-height:350px}.qr-placeholder{width:130px;height:130px}.qr-placeholder span{margin:32px}.section{padding:70px 20px}.cards,.soft{grid-template-columns:1fr}.soft{gap:20px}footer{margin:0 20px;padding:25px 0 35px;flex-direction:column}}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:36px 18px;background:radial-gradient(circle at top left,#e5f4e8,transparent 45%),var(--cream)}.auth-card{width:min(100%,520px);background:#fff;border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:var(--shadow)}.auth-brand{margin-bottom:34px}.auth-card h1{margin:4px 0 22px;font-size:2.5rem;line-height:1.1}.auth-form{display:grid;gap:17px}.auth-form label{display:grid;gap:7px;font-weight:750}.auth-form label small{color:var(--muted);font-weight:500}.auth-form input:not([type=checkbox]){width:100%;padding:13px 14px;border:1px solid #b8c7bb;border-radius:11px;font:inherit;background:#fff}.auth-form input:focus{outline:3px solid rgba(22,101,52,.14);border-color:var(--green)}.auth-form .button{border:0;font:inherit;cursor:pointer;margin-top:7px}.checkbox{grid-template-columns:auto 1fr!important;align-items:start;font-weight:500!important}.checkbox input{margin-top:6px}.auth-switch{text-align:center;color:var(--muted);margin:24px 0 0}.auth-switch a{color:var(--green);font-weight:800}.alert{padding:13px 15px;border-radius:11px;margin:0 0 16px}.alert-error{background:#fff1f0;color:#8b1e16;border:1px solid #ffc9c5}.alert-success{background:#ecf8ef;color:#145c2e;border:1px solid #bfe3c9}.dashboard{max-width:1050px;margin:40px auto;padding:0 24px}.dashboard>h1{font-size:clamp(2.3rem,5vw,4rem);margin:5px 0 35px}.dashboard-panel{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}.dashboard-panel h2{margin:0}.dashboard-panel p{margin:5px 0;color:var(--muted)}.empty-state{text-align:center;margin-top:22px;padding:55px 25px;border:2px dashed #c7d6ca;border-radius:22px;color:var(--muted)}.empty-state span{font-size:3rem}.empty-state h3{color:var(--ink);font-size:1.3rem}.site-header form{margin:0}@media(max-width:600px){.auth-card{padding:28px 22px}.dashboard-panel{align-items:stretch;flex-direction:column}.dashboard-panel .button{width:100%}}
.form-page{max-width:900px;margin:35px auto 90px;padding:0 24px}.form-page>h1{font-size:clamp(2.3rem,5vw,4rem);margin:4px 0 30px}.entity-form{display:grid;gap:20px}.form-section{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;display:grid;gap:18px}.form-section h2{margin:0;font-size:1.35rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.entity-form label{display:grid;gap:7px;font-weight:750}.entity-form small{font-weight:500;color:var(--muted)}.entity-form input,.entity-form select,.entity-form textarea{width:100%;padding:12px 13px;border:1px solid #b8c7bb;border-radius:10px;font:inherit}.entity-form textarea{resize:vertical}.private-section{background:#f8f7ef}.form-photo{width:150px;height:150px;object-fit:cover;border-radius:16px}.form-actions{display:flex;justify-content:flex-end;gap:12px}.form-actions .button{border:0;font:inherit;cursor:pointer}.entity-list{display:grid;gap:14px;margin-top:20px}.entity-card{display:grid;grid-template-columns:86px 1fr auto;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px}.entity-card img,.entity-thumb{width:86px;height:86px;border-radius:13px;object-fit:cover}.entity-thumb{display:grid;place-items:center;background:var(--soft);font-size:2rem}.entity-title{display:flex;align-items:center;gap:12px}.entity-title h3{margin:0;font-size:1.3rem}.status{font-size:.75rem;font-weight:850;padding:4px 9px;border-radius:99px}.status-safe{background:#e4f5e8;color:#14612e}.status-lost{background:#ffe8e5;color:#9a2118}.entity-links{display:flex;gap:15px;margin-top:7px}.entity-links a{color:var(--green);font-weight:750;font-size:.9rem}.entity-card form{margin:0}.entity-card button{border:0;cursor:pointer}.danger-button{background:#b42318}.public-profile{min-height:100vh;padding:35px 20px 80px;background:var(--soft)}.public-brand{max-width:850px;margin:0 auto 28px}.lost-banner{max-width:850px;margin:0 auto 15px;background:#b42318;color:#fff;padding:13px;text-align:center;border-radius:14px;font-weight:900;letter-spacing:.04em}.profile-card{max-width:850px;margin:auto;background:#fff;border-radius:28px;overflow:hidden;box-shadow:var(--shadow);display:grid;grid-template-columns:45% 55%}.profile-photo{width:100%;height:100%;min-height:550px;object-fit:cover}.profile-photo.placeholder{display:grid;place-items:center;background:#dceadf;font-size:6rem}.profile-content{padding:38px}.profile-content h1{font-size:3.3rem;line-height:1;margin:7px 0 25px}.profile-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 26px}.profile-facts div{background:var(--soft);padding:10px 12px;border-radius:10px}.profile-facts dt{font-size:.72rem;text-transform:uppercase;color:var(--muted);font-weight:800}.profile-facts dd{margin:2px 0 0;font-weight:750}.profile-note{border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.profile-note h2{font-size:1rem;margin:0}.profile-note p{margin:5px 0;color:#435248}.contact-coming{margin-top:25px;padding:18px;background:#fff7e8;border-radius:14px}.contact-coming p{margin:4px 0 0;color:var(--muted);font-size:.9rem}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.entity-card{grid-template-columns:65px 1fr}.entity-card img,.entity-thumb{width:65px;height:65px}.entity-card form{grid-column:1/-1}.entity-card form .button{width:100%}.profile-card{grid-template-columns:1fr}.profile-photo{min-height:0;height:360px}.profile-content{padding:28px 22px}.profile-content h1{font-size:2.6rem}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}}
.finder-card{max-width:850px;margin:22px auto 0;background:#fff;border-radius:24px;padding:32px;box-shadow:0 14px 40px rgba(16,61,35,.08)}.finder-card h2{font-size:2rem;margin:4px 0}.finder-card>p{color:var(--muted)}.finder-form{display:grid;gap:17px;margin-top:24px}.finder-form label{display:grid;gap:7px;font-weight:750}.finder-form small{color:var(--muted)}.finder-form input:not([type=checkbox]),.finder-form textarea{width:100%;padding:12px 13px;border:1px solid #b8c7bb;border-radius:10px;font:inherit}.finder-form textarea{font-weight:400;color:var(--ink)}.finder-form textarea.default-message{color:#738078}.finder-form .button{border:0;font:inherit;cursor:pointer}.location-box{background:var(--soft);border-radius:14px;padding:16px}.location-box p{margin:9px 0;color:var(--muted);font-size:.9rem}.location-consent{margin-top:10px}.location-box>.location-consent{margin:0 0 14px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.sightings-section{margin-top:55px}.sightings-section>h2{font-size:2rem;margin:4px 0 20px}.empty-sightings{padding:25px;border:2px dashed #c7d6ca;border-radius:18px;color:var(--muted)}.sighting-list{display:grid;gap:14px}.sighting-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.sighting-head{display:flex;justify-content:space-between;gap:15px}.sighting-head time{color:var(--muted);font-size:.85rem}.sighting-card>p{padding:12px;background:var(--soft);border-radius:10px}.sighting-card dl{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0}.sighting-card dl div{display:flex;gap:6px}.sighting-card dt{font-weight:800}.sighting-card dd{margin:0}.sighting-card a{color:var(--green)}@media(max-width:700px){.finder-card{padding:25px 20px}.sighting-head{flex-direction:column;gap:2px}}
.qr-page{min-height:calc(100vh - 90px);display:grid;place-items:start center;padding:30px 20px 80px}.qr-card{width:min(100%,650px);background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;text-align:center;box-shadow:var(--shadow)}.qr-card h1{font-size:2.4rem;line-height:1.1}.qr-card>p{color:var(--muted)}.qr-output{display:grid;place-items:center;margin:25px auto;width:min(100%,400px);aspect-ratio:1;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px}.qr-output img{display:block;width:100%;height:auto;image-rendering:pixelated}.qr-url{overflow-wrap:anywhere}.qr-url code{color:var(--ink)}.qr-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0}.qr-actions .button{border:1px solid var(--green);font:inherit;cursor:pointer}@media(max-width:600px){.qr-card{padding:27px 18px}.qr-actions{flex-direction:column}.qr-actions .button{width:100%}}@media print{body{background:#fff}.site-header,.qr-card>p:not(.qr-url),.qr-actions,.microcopy{display:none!important}.qr-page{padding:0}.qr-card{box-shadow:none;border:0}.qr-output{width:9cm}.qr-card h1{font-size:24pt}}
.forgot-link{text-align:right;margin:-8px 0 0}.forgot-link a{color:var(--green);font-size:.9rem;font-weight:750}.account-actions{display:flex;align-items:center;gap:20px}.account-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:20px}.account-card{display:flex;flex-direction:column}.account-card label{display:grid;align-content:start;gap:7px;font-weight:750;min-width:0}.account-card input,.account-card select{display:block;width:100%;height:48px;padding:12px 13px;border:1px solid #b8c7bb;border-radius:10px;background:#fff;font:inherit}.account-card input:disabled{color:#536158;background:#f3f6f3;opacity:1}.account-card .button{width:100%;min-height:48px;margin-top:auto;border:0;font:inherit;cursor:pointer}.account-language-field{gap:9px!important}.account-language-help{color:var(--ink);font:inherit;font-weight:750;line-height:1.35;margin:2px 0}.account-spacer{min-height:116px}.profile-facts dd{white-space:pre-line}@media(max-width:750px){.account-grid{grid-template-columns:1fr}.account-spacer{display:none}.account-actions{gap:10px}.account-actions .text-link{font-size:.9rem}}
.dashboard-header{align-items:center}.dashboard-header .account-actions{display:flex;align-items:center;align-self:center;justify-content:flex-end;gap:12px}.dashboard-header .account-actions form{margin:0}.dashboard-header .account-actions .button{white-space:nowrap}.dashboard-header .account-actions button{font:inherit;cursor:pointer}@media(max-width:700px){.dashboard-header{align-items:stretch;flex-direction:column;gap:16px}.dashboard-header .account-actions{justify-content:stretch}.dashboard-header .account-actions .button,.dashboard-header .account-actions form{flex:1}.dashboard-header .account-actions button{width:100%}.dashboard-header .brand span:last-child{font-size:1.05rem}}
.identifier-create{display:grid;grid-template-columns:1fr auto;align-items:end;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.identifier-create label{display:grid;gap:6px;font-weight:750}.identifier-create input{padding:12px;border:1px solid #b8c7bb;border-radius:10px;font:inherit}.identifier-create .button{border:0;font:inherit;cursor:pointer}.identifier-nfc-note{margin:12px 4px;color:var(--muted);font-size:.9rem}.identifier-list{display:grid;gap:15px;margin-top:20px}.identifier-card{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.identifier-card h2{margin:8px 0 2px;font-size:1.2rem}.identifier-card code{overflow-wrap:anywhere}.identifier-card p{color:var(--muted);font-size:.85rem}.device-type-badge{display:inline-flex;padding:4px 9px;border-radius:99px;background:#eaf0ff;color:#274b8c;font-size:.75rem;font-weight:850}.identifier-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.identifier-actions form{margin:0}.identifier-actions .button{border:1px solid var(--green);font:inherit;cursor:pointer;white-space:nowrap}.identifier-actions .identifier-delete{background:#fff;color:#b42318;border-color:#b42318;box-shadow:none}.nfc-details{margin:22px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--soft);text-align:left}.nfc-details p{margin:6px 0}@media(max-width:700px){.identifier-create{grid-template-columns:1fr}.identifier-card{align-items:stretch;flex-direction:column}.identifier-actions{flex-direction:column}.identifier-actions .button{width:100%}}
.home-header{align-items:flex-start}.home-header>nav{align-self:flex-start}
.admin-button{background:var(--green-dark)}.brand-version{font-size:.72em;font-weight:700;opacity:.78}.admin-page{max-width:1400px;margin:35px auto 90px;padding:0 24px}.admin-page>h1{font-size:clamp(2.3rem,5vw,4rem);margin:4px 0 8px}.admin-page>p{color:var(--muted)}.admin-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:13px;margin:28px 0}.admin-stats article{display:grid;gap:3px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.admin-stats strong{font-size:1.8rem;color:var(--green)}.admin-stats span{color:var(--muted);font-size:.85rem;font-weight:700}.admin-section{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}.admin-section h2{margin:0 0 15px}.table-scroll{overflow-x:auto}.admin-section table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-section th,.admin-section td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.admin-section th{color:var(--muted);font-size:.75rem;text-transform:uppercase}.admin-header .account-actions{display:flex;align-items:center;gap:12px}.admin-header button{font:inherit;cursor:pointer}@media(max-width:1000px){.admin-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-header{align-items:stretch;flex-direction:column;gap:14px}.admin-header .account-actions{align-items:stretch;flex-direction:column}.admin-header .button{width:100%}}
.danger-zone{margin-top:22px;border-color:#efb4ae;background:#fff8f7}.danger-zone h2{color:#8b1e16}.danger-zone p{margin:0;color:#6f3732}.danger-zone label{display:grid;gap:7px;font-weight:750}.danger-zone input[type=password]{width:100%;max-width:440px;padding:12px 13px;border:1px solid #c9857e;border-radius:10px;font:inherit}.danger-zone .danger-button{border:0;font:inherit;cursor:pointer;justify-self:start}
.admin-user-actions{display:grid;gap:8px;min-width:290px}.admin-user-actions form{display:flex;align-items:center;gap:7px}.admin-user-actions select{min-width:130px;padding:7px 9px;border:1px solid #b8c7bb;border-radius:8px;background:#fff;font:inherit;font-size:.8rem}.admin-user-actions .button{border:1px solid var(--green);padding:7px 11px;font-size:.78rem;box-shadow:none}.admin-user-actions .danger-button{border-color:#b42318}.admin-section code{white-space:normal;overflow-wrap:anywhere;font-size:.75rem}
.admin-record-link{color:var(--green);font-weight:800}.admin-detail>h1{margin-bottom:24px}.admin-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:20px}.admin-detail-grid .admin-section{margin-top:0}.admin-data-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px;margin:0}.admin-data-list div{padding:11px 0;border-bottom:1px solid var(--line)}.admin-data-list dt{color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase}.admin-data-list dd{margin:2px 0 0;overflow-wrap:anywhere}.admin-data-list a{color:var(--green)}.admin-text-data{grid-template-columns:1fr}.admin-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-mini-stats div{display:grid;background:var(--soft);border-radius:14px;padding:18px}.admin-mini-stats strong{font-size:2rem;color:var(--green)}.admin-mini-stats span{color:var(--muted);font-weight:700}.admin-dog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-dog-card{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:14px;border:1px solid var(--line);border-radius:15px;padding:12px;text-decoration:none}.admin-dog-card:hover{border-color:var(--green);background:var(--soft)}.admin-dog-card img,.admin-dog-card .entity-thumb{width:70px;height:70px;object-fit:cover;border-radius:11px}.admin-dog-card span:last-child{display:grid}.admin-dog-card small{color:var(--muted)}.admin-dog-profile{padding:0;overflow:hidden;min-height:360px}.admin-dog-profile img,.admin-dog-profile .profile-photo{width:100%;height:100%;min-height:360px;max-height:520px;object-fit:cover}@media(max-width:800px){.admin-detail-grid,.admin-dog-grid{grid-template-columns:1fr}.admin-data-list{grid-template-columns:1fr}.admin-dog-profile{min-height:260px}.admin-dog-profile img,.admin-dog-profile .profile-photo{min-height:260px;max-height:420px}}
.backup-settings-form{display:grid;gap:14px}.backup-settings-form label{display:grid;gap:6px;font-weight:750}.backup-settings-form input,.backup-settings-form select{width:100%;padding:11px 12px;border:1px solid #b8c7bb;border-radius:10px;background:#fff;font:inherit}.backup-settings-form .button{border:0;font:inherit;cursor:pointer;justify-self:start}.backup-inline-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.backup-inline-actions form{margin:0}.backup-inline-actions button{font:inherit;cursor:pointer}@media(max-width:650px){.backup-inline-actions{display:grid}.backup-inline-actions .button{width:100%}}
.backup-now{display:flex;align-items:center;justify-content:space-between;gap:24px}.backup-now h2,.backup-now p{margin:0}.backup-now p{color:var(--muted)}.backup-now button{border:0;font:inherit;cursor:pointer;white-space:nowrap}.backup-now button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:650px){.backup-now{align-items:stretch;flex-direction:column}.backup-now .button{width:100%}}
.legal-page{max-width:900px;margin:35px auto 90px;padding:0 24px}.legal-page>h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.08;margin:5px 0 8px}.legal-meta{color:var(--muted);margin-bottom:30px}.legal-content{background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px}.legal-content section+section{margin-top:30px;padding-top:18px;border-top:1px solid var(--line)}.legal-content h2{margin:0 0 9px;font-size:1.35rem}.legal-content p,.legal-content li{color:#35473c}.legal-links{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:24px}.legal-links a{color:var(--green);font-weight:750;font-size:.88rem}.auth-card .legal-links{justify-content:center}.auth-form .checkbox a,.finder-form .checkbox a{color:var(--green);font-weight:750}.auth-form button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.legal-content{padding:24px 20px}footer .legal-links{width:100%}}
.home-footer{display:grid;gap:18px}.home-footer .footer-legal{grid-row:1}.home-footer .legal-links{justify-content:center;flex-wrap:nowrap;margin:0}.footer-bottom{display:flex;justify-content:space-between;gap:24px}.legal-download{display:inline-flex;margin:0 0 24px}@media(max-width:800px){.home-footer{display:grid}.home-footer .legal-links{justify-content:flex-start;flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:8px}}
.location-map{height:360px;margin-top:14px;border:1px solid #b8c7bb;border-radius:14px;overflow:hidden;background:#dfe8df}.location-map-help{margin:8px 0 14px!important}.coordinate-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.coordinate-grid label{display:grid;gap:6px;font-weight:750}.coordinate-grid input{width:100%;padding:12px 13px;border:1px solid #b8c7bb;border-radius:10px;font:inherit;background:#fff}@media(max-width:600px){.location-map{height:300px}.coordinate-grid{grid-template-columns:1fr}}
.dashboard-dog-card{grid-template-columns:86px minmax(0,1fr)}.dashboard-dog-main{display:grid;grid-template-columns:max-content max-content max-content;align-items:center;gap:8px}.dog-card-title,.dashboard-entity-links{display:contents}.dog-card-title h3{grid-column:1;grid-row:1}.dog-card-title .dog-status-form{grid-column:2/4;grid-row:1;justify-self:start}.dashboard-entity-links>a:nth-of-type(1){grid-column:1;grid-row:2}.dashboard-entity-links>a:nth-of-type(2){grid-column:2;grid-row:2}.dashboard-entity-links>a:nth-of-type(3){grid-column:3;grid-row:2}.dog-status-form{display:inline-flex;align-items:center;gap:8px;margin:0}.entity-action-label,.entity-action-link,.dog-status-select{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border:1px solid #b8d8bf;border-radius:11px;background:#e4f5e8;color:var(--green);font:inherit;font-size:.86rem;font-weight:800;text-decoration:none;white-space:nowrap}.entity-action-link:hover{background:#d5eddb;border-color:#82b98f}.dog-status-select{height:36px;padding-right:34px;cursor:pointer;outline:none}.dog-status-select:focus{box-shadow:0 0 0 3px rgba(22,101,52,.15)}.dog-status-lost{background:#b42318;color:#ffd54a;border-color:#8f1b13}.dog-status-lost:focus{box-shadow:0 0 0 3px rgba(180,35,24,.18)}.dashboard-entity-links a{font-size:.86rem}.dog-status-form noscript{display:inline-flex}.dog-status-form noscript .entity-action-link{cursor:pointer}@media(max-width:700px){.dashboard-dog-card{grid-template-columns:65px minmax(0,1fr)}.dashboard-dog-main{grid-template-columns:max-content minmax(0,1fr)}.dog-card-title .dog-status-form{grid-column:2;max-width:100%;flex-wrap:wrap}.dashboard-entity-links>a:nth-of-type(1),.dashboard-entity-links>a:nth-of-type(2),.dashboard-entity-links>a:nth-of-type(3){grid-column:1/3;justify-content:center}.dashboard-entity-links>a:nth-of-type(1){grid-row:2}.dashboard-entity-links>a:nth-of-type(2){grid-row:3}.dashboard-entity-links>a:nth-of-type(3){grid-row:4}}
.owner-sharing-settings{margin-top:6px;padding-top:20px;border-top:1px solid #d5ddd6;display:grid;gap:12px}.owner-sharing-settings h3,.owner-sharing-settings p{margin:0}.owner-sharing-settings p{color:var(--muted)}.help-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.help-choice{display:flex;min-height:160px;padding:22px 18px;border:1px solid #b8d8bf;border-radius:18px;background:#f2faf3;color:var(--ink);text-decoration:none;flex-direction:column;justify-content:center;gap:9px;text-align:center;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.help-choice:hover{transform:translateY(-2px);border-color:var(--green);box-shadow:0 10px 24px rgba(22,101,52,.12)}.help-choice strong{color:var(--green);font-size:1.05rem}.help-choice span{color:var(--muted);font-size:.9rem;line-height:1.45}.help-back{display:inline-flex;margin:4px 0 14px;color:var(--green);font-weight:800;text-decoration:none}.owner-contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.owner-contact-cards a{display:grid;gap:5px;padding:20px;border:1px solid #b8d8bf;border-radius:15px;background:#f2faf3;color:var(--green);text-decoration:none;overflow-wrap:anywhere}.owner-contact-cards span{color:var(--muted);font-size:.8rem;font-weight:750;text-transform:uppercase}.empty-owner-contact{margin-top:18px;padding:20px;border:1px dashed #aebcaf;border-radius:15px;background:#f8faf8;color:var(--muted)}@media(max-width:750px){.help-choice-grid{grid-template-columns:1fr}.help-choice{min-height:0}.owner-contact-cards{grid-template-columns:1fr}}
.finder-contact-grid{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px}.finder-contact-column{display:grid;gap:17px}.finder-data-note{padding:12px 14px;border-left:4px solid var(--amber);background:#fff7e8;color:var(--ink)!important}.message-field>span{font-weight:750}.coordinates-help{margin:18px 0 10px!important;padding:13px 14px;border-radius:10px;background:#fff;color:var(--ink)!important;line-height:1.5}@media(max-width:700px){.finder-contact-grid{grid-template-columns:1fr}}
.relay-ready{margin-top:20px;padding:22px;background:var(--soft);border-radius:16px}.relay-ready h3{margin-top:0}.relay-ready dl{display:grid;gap:12px;margin:18px 0}.relay-ready dl div{display:grid;gap:4px}.relay-ready dt{font-weight:750}.relay-ready dd{margin:0;overflow-wrap:anywhere}.relay-ready code{font-weight:400;background:#fff;padding:5px 8px;border-radius:7px}.relay-stop-note{margin-top:18px;color:var(--muted);font-size:.9rem}
.help-choice small{display:block;color:var(--green);font-size:.82rem;line-height:1.35;font-weight:700}
.public-status-banner{display:block;max-width:850px;margin:0 auto 15px;padding:13px;border-radius:14px;background:var(--green);color:#fff;text-align:center;text-decoration:none;font-weight:900;letter-spacing:.04em}.public-status-banner:hover{background:var(--green-dark)}.public-status-banner-lost{background:#b42318}.public-status-banner-lost:hover{background:#8f1c14}
.nfc-activation-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:14px;margin:18px 0 25px;padding:18px;border:1px solid #b8d8bf;border-radius:16px;background:#f2faf3}.nfc-activation-form label,.nfc-create-form label{display:grid;gap:6px;font-weight:750}.nfc-activation-form input,.nfc-create-form input,.nfc-create-form select,.nfc-assign-form select{width:100%;padding:11px 12px;border:1px solid #b8c7bb;border-radius:10px;background:#fff;font:inherit}.nfc-activation-form .button,.nfc-create-form .button,.nfc-assign-form .button{border:1px solid var(--green);font:inherit;cursor:pointer}.nfc-create-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:14px}.nfc-assign-form{display:flex;align-items:center;gap:8px;min-width:340px}.nfc-created{border-color:#d7aa40;background:#fffaf0}.activation-code{font-size:1.3rem;letter-spacing:.08em;color:var(--green-dark)}@media(max-width:850px){.nfc-create-form{grid-template-columns:1fr 1fr}.nfc-activation-form{grid-template-columns:1fr}}@media(max-width:600px){.nfc-create-form{grid-template-columns:1fr}.nfc-assign-form{min-width:260px;flex-direction:column;align-items:stretch}}
.admin-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:15px}.admin-section-heading h2{margin:0 0 5px}.admin-section-heading p{margin:0;color:var(--muted);font-size:.9rem}.qr-report-form{display:flex;align-items:end;gap:10px;margin:0}.qr-report-form label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:800}.qr-report-form select{min-width:200px;padding:9px 11px;border:1px solid #b8c7bb;border-radius:9px;background:#fff;font:inherit;color:var(--ink)}.qr-report-form .button{border:1px solid var(--green);font:inherit;cursor:pointer;white-space:nowrap}@media(max-width:700px){.admin-section-heading,.qr-report-form{align-items:stretch;flex-direction:column}.qr-report-form select,.qr-report-form .button{width:100%}}
.admin-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:18px}.admin-pagination a:first-child{justify-self:start}.admin-pagination a:last-child{justify-self:end}.admin-pagination strong{color:var(--muted);font-size:.88rem}@media(max-width:520px){.admin-pagination{grid-template-columns:1fr 1fr}.admin-pagination strong{grid-column:1/-1;grid-row:1;text-align:center}}
.identifier-report-actions{display:flex;align-items:end;gap:10px}.identifier-report-actions>form{margin:0}.identifier-report-actions>form:last-child .button{border:1px solid var(--green);font:inherit;cursor:pointer;white-space:nowrap}@media(max-width:900px){.identifier-report-actions{align-items:stretch;flex-direction:column}.identifier-report-actions>form:last-child .button{width:100%}}
.admin-qr-actions{display:flex;flex-wrap:wrap;gap:10px}.qr-export-controls{display:flex;align-items:end;justify-content:space-between;gap:20px}.qr-export-controls>div{display:flex;align-items:end;flex-wrap:wrap;gap:18px}.qr-export-controls .admin-qr-actions form{margin:0}.qr-export-controls label{display:grid;gap:7px;font-weight:700}.qr-export-controls select{min-width:130px}.qr-export-controls input{min-width:290px}.qr-series-list{display:grid;gap:18px}.qr-series-card{border:1px solid var(--line);border-radius:16px;overflow:hidden}.qr-series-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--soft)}.qr-series-heading label{display:flex;align-items:center;gap:12px;cursor:pointer}.qr-series-heading input,.qr-export-item{width:18px;height:18px}.qr-series-heading span{display:grid;gap:2px}.qr-series-heading small{color:var(--muted);font-weight:400}.qr-series-toggle{border:0;background:transparent;color:var(--green);font:inherit;font-weight:800;cursor:pointer}.qr-series-card .table-scroll{margin:0}.qr-series-card table{margin:0}.qr-series-card th:first-child,.qr-series-card td:first-child{width:42px;text-align:center}@media(max-width:700px){.qr-export-controls{align-items:stretch;flex-direction:column}.qr-export-controls .admin-qr-actions form,.qr-export-controls .button{width:100%}.qr-export-controls input{min-width:0;width:100%}}
.location-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.location-permission-note{color:var(--muted);font-size:.9rem}.location-permission-note a{color:var(--green);font-weight:800;text-decoration:underline;text-underline-offset:2px}.location-help-page li{margin:8px 0}.location-help-page .text-link{display:inline-flex;margin-top:5px}@media(max-width:600px){.location-actions{align-items:stretch;flex-direction:column}.location-actions .button{width:100%}}
.suggestion-panel{margin-top:55px}.suggestion-panel h2{font-size:2rem;margin:4px 0 20px}.suggestion-panel>div>p:last-child{margin:5px 0 18px;color:var(--muted)}.suggestion-panel form,.suggestion-panel label{display:grid;gap:8px}.suggestion-panel textarea{width:100%;padding:13px 14px;border:1px solid #b8c7bb;border-radius:11px;font:inherit;resize:vertical}.suggestion-panel textarea:focus{outline:3px solid rgba(22,101,52,.14);border-color:var(--green)}.suggestion-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:14px}.suggestion-actions .button{border:0;font:inherit;cursor:pointer;white-space:nowrap}.suggestion-message{max-width:420px}.suggestion-open{max-width:390px;padding:0;border:0;background:none;color:var(--green);font:inherit;font-weight:800;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.suggestion-dialog{width:min(680px,calc(100% - 32px));border:0;border-radius:18px;padding:0;box-shadow:0 24px 70px rgba(16,61,35,.25)}.suggestion-dialog::backdrop{background:rgba(9,32,18,.55)}.suggestion-dialog-inner{padding:26px}.suggestion-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.suggestion-dialog-head h2{margin:0}.suggestion-dialog-close{border:0;background:transparent;font-size:1.8rem;cursor:pointer}.suggestion-dialog-message{margin:20px 0 0;padding:16px;background:var(--soft);border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere}.suggestion-status-form{display:flex;gap:7px}.suggestion-status-form select{padding:7px 9px;border:1px solid #b8c7bb;border-radius:8px;background:#fff;font:inherit}.suggestion-status-form .button{border:1px solid var(--green);font:inherit;cursor:pointer}@media(max-width:600px){.suggestion-actions{align-items:stretch;flex-direction:column}.suggestion-actions .button{width:100%}.suggestion-message{min-width:240px}}
.registration-honeypot,.registration-honeypot[hidden]{display:none!important}
