#modal[data-view="灵宠"],#modal[data-view="宠物商城"]{width:min(92vw,470px)!important;max-width:92vw!important;height:auto!important;max-height:86dvh!important;margin:auto!important;box-sizing:border-box;font:clamp(13px,3.5vw,16px)/1.45 system-ui,sans-serif!important;overflow:hidden;display:flex;flex-direction:column;transform:none!important;inset:0!important}
#modal[data-view="灵宠"]:not([open]),#modal[data-view="宠物商城"]:not([open]){display:none}
#modal[data-view="灵宠"] .original-content,#modal[data-view="宠物商城"] .original-content{padding:10px!important;overflow:auto;min-height:0;max-height:calc(86dvh - 100px);height:auto!important;flex:1}
#modal[data-view="灵宠"] .original-footer,#modal[data-view="宠物商城"] .original-footer{position:static!important;display:flex;gap:8px;flex-shrink:0;padding:8px!important}
#modal[data-view="灵宠"] .original-footer button,#modal[data-view="宠物商城"] .original-footer button{flex:1}
.pet-panel button,.pet-shop button,#modal[data-view="灵宠"] .original-footer button,#modal[data-view="宠物商城"] .original-footer button{min-height:44px;font:inherit;white-space:normal;padding:6px 10px;line-height:1.3;touch-action:manipulation}
.pet-panel h3{margin:5px 0;color:#ffe9ac;font-size:1.1em}.pet-panel p{margin:6px 0}.pet-hint{font-size:.85em;color:#c1cdb8}.pet-notice,.pet-capture{background:#1c4237;border:1px solid #b8a65c;padding:10px;border-radius:8px;margin:8px 0}
.pet-roster{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px}.pet-roster button{flex:0 0 auto;background:#204638;border:1px solid #719675;border-radius:6px;color:#e8ecc9}.pet-roster button[aria-pressed="true"]{border-color:#eed38b;background:#486143}.pet-roster small{display:block;font-size:.8em}
.pet-profile{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:12px;align-items:center}.pet-portrait{width:100%;height:auto;aspect-ratio:407/848;border:1px solid #738d70;border-radius:9px;box-sizing:border-box}.pet-details{min-width:0}.pet-details dl{margin:8px 0}.pet-details dl div{display:flex;justify-content:space-between;gap:6px;border-bottom:1px solid #ffffff18;padding:4px 0}.pet-details dd{margin:0;color:#ffe9ac;font-variant-numeric:tabular-nums}.pet-details p{font-size:.85em;overflow-wrap:anywhere}
.pet-actions{display:flex;gap:8px;margin-top:10px}.pet-actions button{flex:1}.pet-strategy{display:flex;align-items:center;justify-content:space-between;margin:10px 0}.pet-strategy select{font:inherit;min-height:44px;background:#193d32;color:#e8ecc9;border:1px solid #7b9971;max-width:60%}.pet-skills{display:grid;gap:6px;margin-top:10px}.pet-skills>div{padding:8px 10px;background:#122e26;border:1px solid #536e55;border-radius:6px}.pet-skills span,.pet-skills small{display:block;font-size:.85em;color:#c5d3c3}.pet-item-icon{display:inline-block;width:38px;height:38px;object-fit:contain;vertical-align:middle;flex-shrink:0;image-rendering:auto!important}
.pet-eggs>div,.pet-shop>div{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #ffffff25}.pet-eggs span,.pet-shop span{flex:1;min-width:0;overflow-wrap:anywhere}.pet-shop small{display:block;font-size:.85em;color:#bacbbb}.pet-shop b{font-size:1em}.pet-capture-entry{min-height:44px;width:100%;margin:8px 0}.pet-panel button:disabled,.pet-shop button:disabled{opacity:.5}

.pet-portrait canvas{display:block;width:100%;height:100%;border-radius:8px}

#modal[data-view="灵宠"] button,#modal[data-view="宠物商城"] button{min-height:44px!important;font-family:system-ui,sans-serif!important}
#modal.original-panel[data-view="灵宠"] .original-footer button,#modal.original-panel[data-view="宠物商城"] .original-footer button{min-height:44px!important;height:auto!important;font:inherit!important}
.pet-details dd{min-width:0;overflow-wrap:anywhere;text-align:right}.pet-details dt{flex-shrink:0}.pet-portrait{background-image:url("pets/spirit-concepts.png");background-size:300% 151.77%;background-position:0 22.78%}.pet-portrait canvas{opacity:0}.pet-portrait.ready canvas{opacity:1}

.pet-dex-entry{width:100%;margin-bottom:8px}.pet-dex-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y;min-width:0}.pet-dex-track::-webkit-scrollbar{display:none}.pet-dex-slide{flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:always;display:flex;justify-content:center}.pet-dex-slide .pet-portrait{width:auto;height:clamp(220px,36dvh,330px);max-width:100%}.pet-dex-profile{display:block}.pet-dex-profile>.pet-portrait{display:none}.pet-dex-profile .pet-details{padding:8px 10px;background:#193b31;border-radius:8px}.pet-dex-nav{display:flex;justify-content:center;gap:8px;margin-top:8px}.pet-dex-nav button{min-width:44px;border:1px solid #748d70;border-radius:22px;background:#193b31;color:#d4dec6}.pet-dex-nav button[aria-pressed="true"]{background:#536346;color:#ffebad;border-color:#dcc17d}.pet-dex>.pet-hint{text-align:center}

.pet-training-result{margin:10px 0;padding:10px;background:#204d3b;border:1px solid #b3b579;border-radius:8px;color:#e3edb6;font-size:.9em}.pet-training-preview{font-size:.88em;color:#cfe8be}.pet-effective-bonus{line-height:1.65}

.pet-training-box{margin:12px 0;padding:10px;background:#15372d;border:1px solid #718268;border-radius:9px}.pet-training-heading{display:flex;justify-content:space-between;gap:6px;align-items:center;color:#f3dfab}.pet-training-heading strong{font-size:1.3em}.pet-training-heading small{font-size:11px;font-weight:normal}.pet-training-rate,.pet-training-pity{font-size:12px!important;color:#d3dec2}.pet-training-materials{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.pet-training-materials th,.pet-training-materials td{padding:5px 3px;border-bottom:1px solid #809c782d;text-align:left;overflow-wrap:anywhere;font-weight:normal}.pet-training-materials th:last-child,.pet-training-materials td{text-align:right;font-variant-numeric:tabular-nums}.pet-training-materials thead{font-size:11px;color:#b5c8b6}.pet-training-materials img{width:25px;height:25px;vertical-align:middle;object-fit:contain;margin-right:3px;image-rendering:auto}.pet-training-materials small{display:block;font-size:10px;color:#b6c5a1}.pet-material-short,.pet-material-warning{color:#ffbcab!important}.pet-material-warning{font-size:12px!important}.pet-training-blessing{display:flex;gap:6px;align-items:center;margin:10px 0;min-height:42px;font-size:13px}.pet-training-blessing input{width:19px;height:19px;flex:0 0 auto;accent-color:#d5ba79}.pet-training-blessing img{width:32px;height:32px;object-fit:contain;image-rendering:auto}.pet-training-blessing small{display:block;font-size:11px;color:#bbccb6}.pet-training-safety{font-size:11px!important;color:#b6c5b0;line-height:1.45}.pet-training-submit{width:100%;background:#456047!important;color:#f5e8bb!important;border:1px solid #a6b077!important;border-radius:7px}.pet-training-failed{background:#3b3529;border-color:#98815e;color:#efd5aa}

/* 110: keep progression beside the portrait; give long combat values full-width cards. */
.pet-profile:not(.pet-dex-profile){grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:12px}
.pet-profile:not(.pet-dex-profile) .pet-details h3{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.pet-profile:not(.pet-dex-profile) .pet-details dl{font-size:12px;margin:12px 0}
.pet-profile:not(.pet-dex-profile) .pet-details dl div{align-items:baseline;padding:7px 0;gap:8px;flex-wrap:wrap}
.pet-profile:not(.pet-dex-profile) .pet-details dd{margin-left:auto;white-space:nowrap;overflow-wrap:normal;font-size:13px;font-weight:600}
.pet-effective-bonus{margin-top:12px;padding:10px;border:1px solid #708d6955;border-radius:9px;background:#18382e;line-height:1.4}
.pet-effective-bonus>header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:12px;color:#e7dab0}
.pet-effective-bonus>header small{font-size:10px;font-weight:normal;white-space:nowrap;color:#b9caae}
.pet-attribute-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0}
.pet-attribute-grid>div{min-width:0;padding:7px 9px;background:#102a22;border-radius:5px}
.pet-attribute-grid dt{font-size:11px;line-height:1.4;color:#b4c8b8;margin:0 0 3px}
.pet-attribute-grid dd{font-size:15px;line-height:1.35;font-weight:600;font-variant-numeric:tabular-nums;color:#f5e5b5;margin:0;overflow-wrap:anywhere}
.pet-training-preview,.pet-training-result p{overflow-wrap:anywhere;line-height:1.6}
@media(max-width:350px){.pet-profile:not(.pet-dex-profile){gap:9px}.pet-profile:not(.pet-dex-profile) .pet-details h3{font-size:14px}.pet-effective-bonus{padding:8px}.pet-attribute-grid>div{padding:6px 8px}.pet-attribute-grid dd{font-size:14px}}

.pet-eggs>div{display:grid;grid-template-columns:32px minmax(0,1fr) 58px;gap:.5rem;align-items:center;padding:.7rem .1rem}.pet-eggs>div>.pet-item-icon{grid-column:1;grid-row:1/3;width:30px;height:30px}.pet-eggs>div>span{grid-column:2;grid-row:1;min-width:0;line-height:1.5}.pet-eggs [data-pet-command="pet-hatch"]{grid-column:3;grid-row:1}.pet-eggs [data-pet-command="pet-egg-break"]{grid-column:3;grid-row:2}.pet-eggs label{grid-column:2;grid-row:2;display:flex;align-items:center;gap:.35rem;font-size:.78em;margin:0}.pet-eggs input{width:3.8em;min-width:0;padding:.3em}.pet-eggs button{padding:.45rem .25rem;min-width:0}

/* Keep release distinct from deployment without widening the action row. */
.pet-panel .pet-actions .pet-release{background:#3c302e;color:#efc1af;border:1px solid #986e60}

/* 115: APK-compatible confirmation and visible experience-pill feedback. */
dialog.pet-confirm{position:fixed;inset:0;margin:auto;width:min(88vw,380px);max-width:88vw;height:fit-content;min-height:0;max-height:80dvh;padding:20px;border:1px solid #a7ad80;border-radius:14px;background:#17382f;color:#e4ead7;font:15px/1.6 system-ui,sans-serif;box-sizing:border-box;overflow:auto;transform:none;box-shadow:0 12px 48px #0008}
dialog.pet-confirm::backdrop{background:#031510b8}dialog.pet-confirm h3{margin:0 0 12px;font-size:20px;color:#f3d99e}dialog.pet-confirm p{white-space:pre-line;overflow-wrap:anywhere;margin:0 0 18px}.pet-confirm-actions{display:flex;gap:12px}.pet-confirm-actions button{flex:1;min-width:0;min-height:46px;border:1px solid #738b74;border-radius:8px;background:#284d3e;color:#e6ebd7;font:inherit;touch-action:manipulation}.pet-confirm-actions .pet-confirm-danger{background:#664036;border-color:#bf9278;color:#ffe8d5}.pet-confirm-actions button:focus-visible{outline:2px solid #ebd69e;outline-offset:3px}.pet-panel .pet-feed-status{font-size:12px;line-height:1.5;min-height:36px;margin:6px 0;color:#cbd9bb;overflow-wrap:anywhere}.pet-panel .pet-feed-status.is-error{color:#ffbcab}
