.pets-page .pets-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 0 30px}.pets-page .pets-hero h1{font-size:clamp(40px,4vw,58px)}.pets-page .pets-hero h1 em{font-style:normal;color:var(--cyan)}.pets-page .pets-hero p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:14px;line-height:1.8;margin:18px 0 0}.pets-hero-mark{width:170px;flex-shrink:0;text-align:center;color:var(--gold);font-size:65px;line-height:1.2}.pets-hero-mark small{display:block;font-size:8px;line-height:1.9;letter-spacing:2px;color:var(--muted);margin-top:10px}.pets-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#0c182199;margin-bottom:24px}.pets-stats>div{padding:18px 25px;border-right:1px solid var(--line)}.pets-stats>div:last-child{border:0}.pets-stats b{font-family:Georgia,serif;font-weight:400;color:var(--gold);font-size:29px}.pets-stats span{display:block;margin-top:6px;font-size:11px;color:var(--muted)}.pets-page button,.pets-page select,.pet-dialog select,.pet-dialog button{font:inherit}.pets-page select,.pets-page .pets-inline-form input,.pet-dialog select{background:#08151e;border:1px solid #35505d;color:var(--text);padding:10px 12px;font-size:12px;border-radius:2px;max-width:100%}.pets-page input{height:auto}.pets-page .pets-inline-form input{width:100%;height:39px}.pets-page .pets-character-panel{margin:0 0 36px}.pets-page .pets-character-panel summary{padding:16px 22px}.pets-page .pets-character-panel summary small{font-size:8px;margin-bottom:5px;letter-spacing:1.5px}.pets-page .pets-character-panel summary:after{top:22px}.pets-page .pets-character-panel .answer{padding:16px 22px 22px}.pets-inline-form{display:flex;gap:12px;align-items:flex-end;margin:17px 0}.pets-inline-form label{display:grid;gap:7px;font-size:11px;color:var(--muted);min-width:0;flex:1}.pets-inline-form button,.pets-profile-row button,.pets-import-button,.pets-more{padding:10px 16px;border:1px solid #446576;background:#142a35;color:#b7e5e7;font-size:12px;cursor:pointer;line-height:1.5}.pets-inline-form button:hover,.pets-profile-row button:hover,.pets-import-button:hover,.pets-more:hover{border-color:var(--gold);color:var(--gold)}.pets-profile-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-top:20px;font-size:11px;color:var(--muted)}.pets-profile-row select{flex:1;min-width:180px}.pets-import-button{position:relative;display:inline-flex;overflow:hidden}.pets-import-button input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.pets-import-button:focus-within{outline:2px solid var(--cyan)}#pet-character-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}#pet-character-results button{padding:12px;text-align:left;background:#08151e;border:1px solid var(--line);color:var(--cyan);font-size:11px}.pets-page .pets-small,.pet-dialog .pets-small{font-size:11px;line-height:1.8;color:var(--muted)}.pets-page .pets-small a,.pet-dialog a{color:var(--cyan)}.pets-library{padding-top:5px}.pets-library-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.pets-library-heading .eyebrow{margin-bottom:10px}.pets-library-heading h2{font-size:23px}.pets-library-heading>span{font-size:11px;color:var(--gold);white-space:nowrap}.pets-search{display:flex;align-items:center;gap:15px;border:1px solid #35505d;background:#0b1822;padding:14px 18px;color:var(--cyan)}.pets-search>span{font-size:26px}.pets-search input{height:28px;font-size:14px}.pets-search button{border:0;background:none;color:var(--muted);font-size:11px}.pets-page .pets-type-filters{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.pets-type-filters button{padding:11px 17px;border:1px solid var(--line);background:var(--panel);color:var(--muted);font-size:12px}.pets-type-filters button[aria-pressed=true],.pets-type-filters button:hover{color:var(--gold);border-color:#bca36b;background:#24302d}.pets-filters{display:flex;gap:20px;flex-wrap:wrap;margin:0 0 16px}.pets-filters label{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--muted)}.pets-filters select{font-size:11px}.pets-filters select:disabled{opacity:.5}.pets-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.pet-card{--genus:#8ddde2;display:flex;align-items:center;gap:16px;text-align:left;min-height:147px;padding:18px;background:linear-gradient(115deg,#14252e,#0b1620);border:1px solid var(--line);border-left:3px solid var(--genus);color:var(--text);transition:border-color .15s,background .15s}.pet-card:hover,.pet-card:focus-visible{border-color:var(--gold);background:#172a35}.pet-card.genus-cogni{--genus:#bda4ea}.pet-card.genus-fera{--genus:#cda579}.pet-card.genus-natura{--genus:#91c8a3}.pet-card.genus-varian{--genus:#7cb5db}.pet-card.genus-special{--genus:#e5c268}.pet-portrait,.pet-portrait-fallback{width:72px;height:72px;object-fit:contain;flex-shrink:0;border:1px solid #31414b;background:#071017;border-radius:9px}.pet-portrait-fallback{display:grid;place-items:center;font-size:42px;color:var(--gold)}.pet-card-copy{display:grid;gap:8px;min-width:0}.pet-card-copy>small{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:var(--genus)}.pet-card-copy>strong{font-size:14px;line-height:1.45;overflow-wrap:anywhere}.pet-card .pet-map-count,.pet-card .pet-english-name{font-size:10px;line-height:1.6;color:var(--muted)}.pet-card .pet-english-name{font-style:italic}.pet-progress-badge,.pet-equipped-badge{font-size:10px;color:#b8d3dd;line-height:1.5}.pet-equipped-badge{color:var(--gold)}.pets-more{display:block;margin:24px auto 30px}.pets-empty{padding:40px 15px;text-align:center;color:var(--muted);border:1px solid var(--line)}.pets-reference{padding:32px 0 42px;margin-top:38px;border-top:1px solid var(--line)}.pets-reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:22px}.pets-reference-grid h3{font-size:15px;color:var(--gold)}.pets-reference-grid p{font-size:12px;line-height:1.9;color:var(--muted)}.pets-reference>.pets-small{margin-top:22px}.pet-dialog{--line:#263e4b;--text:#e8eef0;--muted:#a0b4c0;--gold:#d8bd7b;--cyan:#8ddde2;color:var(--text);background:#0b1720;border:1px solid #47606d;width:min(1000px,94vw);max-height:90dvh;padding:30px;border-radius:4px;box-sizing:border-box;overflow:auto;color-scheme:dark}.pet-dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}.pet-dialog *{box-sizing:border-box}.pet-dialog .pet-close{position:sticky;top:0;float:right;z-index:1100;width:36px;height:36px;background:#162b37;border:1px solid #4b6575;color:var(--text);font-size:23px;cursor:pointer}.pet-dialog .pet-detail-header{display:flex;gap:20px;align-items:center;padding:8px 42px 26px 0}.pet-dialog .pet-detail-header .eyebrow{color:var(--gold);font-size:11px;letter-spacing:2px;margin:0 0 9px}.pet-dialog .pet-detail-header h2{margin:0;font-size:27px;line-height:1.3;border:0;padding:0;overflow-wrap:anywhere}.pet-dialog .pet-portrait.large,.pet-dialog .pet-portrait-fallback.large{width:96px;height:96px}.pet-dialog .pet-detail-panels{display:grid;grid-template-columns:1fr 1.3fr;gap:30px;border-top:1px solid var(--line);padding-top:22px}.pet-dialog h3{font-size:17px;color:var(--gold);margin:0 0 15px}.pet-dialog h4{font-size:12px;margin:20px 0 12px}.pet-dialog p,.pet-dialog li{font-size:12px;line-height:1.9;color:var(--muted)}.pet-dialog ul{padding-left:18px}.pet-dialog a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.pet-dialog .pet-source-link{display:block;margin-top:14px}.pet-growth-wrap{overflow-x:auto;margin-bottom:22px}.pet-growth-table{border-collapse:collapse;width:100%;font-size:11px}.pet-growth-table caption{font-size:10px;line-height:1.7;color:var(--muted);text-align:left;padding-bottom:12px}.pet-growth-table th,.pet-growth-table td{text-align:left;border:1px solid var(--line);padding:10px;white-space:nowrap}.pet-growth-table th{color:var(--cyan);background:#102630}.pet-manual-label{display:grid;gap:10px;font-size:11px;color:var(--muted)}.pet-dialog .pet-official-level{color:var(--gold)}.pet-locations{border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.pet-locations label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:12px}.pet-locations select{margin:10px 0}#pet-map{height:390px;border:1px solid var(--line);background:#071016;margin-top:12px;border-radius:3px}#pet-map .leaflet-popup-content-wrapper,#pet-map .leaflet-popup-tip{background:#102632;color:var(--text)}#pet-map .leaflet-popup-content p{color:#b8cbd6;margin:8px 0}#pet-map .leaflet-popup-content small{color:#b8cbd6;font-size:10px}#pet-location-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px;max-height:130px;overflow:auto}#pet-location-list button{padding:7px 9px;font-size:10px;color:var(--cyan);background:#122b37;border:1px solid var(--line);cursor:pointer}.pet-dialog button:focus-visible,.pet-dialog a:focus-visible,.pet-dialog select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
@media(max-width:1050px){.pets-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-card{padding:16px}.pets-filters{gap:12px}.pets-filters label{flex-wrap:wrap}.pets-reference-grid{gap:18px}}
@media(max-width:700px){.pets-page .pets-hero{padding:28px 0}.pets-hero-mark{display:none}.pets-page .pets-hero h1{font-size:39px}.pets-page .pets-hero p:not(.eyebrow){font-size:12px}.pets-stats{grid-template-columns:repeat(2,1fr)}.pets-stats>div{padding:15px 18px}.pets-stats>div:nth-child(2){border-right:0}.pets-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.pets-stats b{font-size:26px}.pets-inline-form{flex-wrap:wrap}.pets-inline-form label:first-child{flex-basis:100%}.pets-inline-form button{white-space:nowrap}.pets-profile-row{align-items:stretch}.pets-profile-row>label:first-child{width:100%}.pets-profile-row select{width:100%;flex-basis:100%}#pet-character-results{grid-template-columns:1fr}.pets-library-heading{align-items:flex-start}.pets-library-heading h2{font-size:20px}.pets-library-heading>span{font-size:10px}.pets-search{padding:12px;gap:8px}.pets-search input{font-size:12px}.pets-search button{font-size:10px}.pets-type-filters{gap:7px}.pets-type-filters button{padding:9px 12px;font-size:11px}.pets-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pets-filters label{display:grid;gap:7px;min-width:0}.pets-filters select{width:100%;min-width:0;padding:9px}.pets-grid{grid-template-columns:1fr;gap:11px}.pet-card{min-height:126px}.pet-card-copy>strong{font-size:15px}.pets-reference-grid{grid-template-columns:1fr;gap:12px}.pet-dialog{padding:18px;width:96vw;max-height:94dvh}.pet-dialog .pet-detail-header{gap:13px;padding-right:25px}.pet-dialog .pet-detail-header h2{font-size:22px}.pet-dialog .pet-portrait.large{width:70px;height:70px}.pet-dialog .pet-detail-panels{grid-template-columns:1fr;gap:25px}#pet-map{height:320px}.pet-locations label{align-items:flex-start;flex-direction:column;gap:0}.pet-locations select{width:100%}}
@media(prefers-reduced-motion:reduce){.pet-card{transition:none}}
.pet-dialog{margin:auto}.pet-card .pet-progress-badge{font-size:10px}
.pet-dialog{max-width:96vw}.pet-detail-panels>div{min-width:0}.pet-dialog .pet-growth-wrap{max-width:100%}.pet-dialog .pet-detail-header>div{min-width:0}
@media(max-width:700px){.pets-hud{flex-wrap:wrap;gap:12px}.pets-hud .maps-main-nav{width:100%;justify-content:space-between;gap:8px;overflow-x:auto}.pet-dialog .pet-detail-panels{min-width:0}.pet-dialog #pet-map{max-width:100%}}
/* Taller pet map with wheel and touch zoom handled by Leaflet. */
#pet-map{height:clamp(460px,62vh,680px)}
@media(max-width:700px){#pet-map{height:clamp(380px,60dvh,580px)}}
#pet-location-list>a{flex-basis:100%;margin:5px 0 9px}
