/* Companion progression stays independent of the base game panels. */
/* Keep the companion and its new accessories visible in the center of the world. */
@media(min-width:1000px) and (min-height:600px){.active-pet{left:auto;right:22px;transform:none}.interaction-prompt{left:auto;right:22px;bottom:calc(284px + var(--safe-bottom));transform:none;max-width:350px}}
.pg-launcher{position:absolute;top:83px;right:22px;display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;border:1px solid #fff9;border-radius:14px;background:#fffaf2f5;color:#514161;font-family:inherit;font-size:11px;line-height:1.2;font-weight:800;box-shadow:0 5px 22px #30274920;pointer-events:auto}
.pg-launcher>svg{width:20px;height:20px;color:#825aa8}.pg-launch-badge{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;background:#d8efdc;color:#325d40;border-radius:8px;font-size:10px;font-weight:800}.pg-launcher:hover{background:#f5edf9;transform:translateY(-1px)}
.pg-backdrop{position:fixed;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;padding:24px;background:#26303875;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);overscroll-behavior:contain;color:#3e3749}
.pg-panel{display:flex;flex-direction:column;width:min(700px,100%);max-height:calc(100dvh - 48px);min-height:0;overflow:hidden;background:#fffaf1;border:1px solid #fff9;border-radius:25px;box-shadow:0 25px 100px #16112645;isolation:isolate;text-align:left;color:#3e3749}
.pg-panel *{box-sizing:border-box}.pg-panel button,.pg-launcher,.pg-hatch button{font-family:inherit;cursor:pointer}.pg-panel button:disabled{cursor:default;opacity:1}.pg-panel button:focus-visible,.pg-launcher:focus-visible,.pg-hatch button:focus-visible,.pg-content:focus-visible{outline:3px solid #8762b1;outline-offset:3px}.pg-panel:focus{outline:none}
.pg-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 25px 15px;flex:none}.pg-header h2{margin:5px 0 0;font-size:23px;line-height:1.2;letter-spacing:-.5px;color:#3e3749}.pg-eyebrow{display:block;font-size:8px;line-height:1.4;letter-spacing:1.2px;font-weight:800;color:#776285}.pg-close{display:grid;place-items:center;width:38px;height:38px;flex:none;border:0;border-radius:12px;background:#eee5f3;color:#665273}.pg-close:hover{background:#e3d5ee}.pg-close svg{width:19px;height:19px}
.pg-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0 25px 16px;padding:4px;border-radius:12px;background:#ede7f0;flex:none}.pg-tab{min-height:36px;padding:8px 3px;border:0;border-radius:9px;background:transparent;color:#65566f;font-size:11px;font-weight:800}.pg-tab[aria-selected=true]{background:#fffdf9;color:#694291;box-shadow:0 2px 7px #37274313}.pg-tab:hover{color:#563079;background:#fff9}
.pg-content{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c7b7d3 #fffaf1;padding:0 25px 27px;scroll-padding:18px}.pg-content> :first-child{margin-top:0}.pg-content p{line-height:1.65}.pg-pending{flex:none;margin:0 25px 12px;padding:9px 13px;border-radius:9px;background:#eee4f4;color:#654981;font-size:11px;font-weight:700}
.pg-hero{position:relative;min-height:155px;padding:24px;border-radius:17px;overflow:hidden;display:flex;align-items:flex-end;isolation:isolate;background-color:#65785c;background-size:cover;background-position:center 55%;color:white}.pg-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#24362ce8 0%,#24362cb5 42%,#24362c25 100%)}.pg-hero-journal{background-image:url('../images/companion-journal.png')}.pg-hero-nursery{background-image:url('../images/nursery-journey.png');background-position:65% 50%}.pg-hero-copy{max-width:320px}.pg-hero .pg-eyebrow{color:#fff0c9;font-size:7px;letter-spacing:1.4px}.pg-hero h3{margin:7px 0;font-size:24px;line-height:1.17;letter-spacing:-.5px;color:#fff}.pg-hero p{font-size:11px;margin:0;color:#fff9ec;text-shadow:0 1px 3px #24362c88}
.pg-friendship{display:flex;align-items:center;gap:17px;margin:18px 0;padding:16px;border:1px solid #e6dddf;border-radius:17px;background:#fffefa}.pg-portrait{display:block;flex:none;object-fit:contain;border-radius:18px;border:2px solid #fff;width:78px;height:78px;background:#f5ded0;padding:3px}.pg-tone-rose{background:#f5e1e3}.pg-tone-lilac{background:#e9e3f1}.pg-tone-mint{background:#e0eee0}.pg-friendship-copy{min-width:0;flex:1}.pg-friendship h3{margin:5px 0 10px;font-size:17px;color:#423749;overflow-wrap:anywhere}.pg-friendship p{margin:7px 0 0;font-size:10px;color:#756478}.pg-progress{width:100%;min-width:0}.pg-progress progress{display:block;appearance:none;-webkit-appearance:none;border:0;width:100%;height:7px;border-radius:8px;overflow:hidden;background:#e9e0ed;color:#9771b8}.pg-progress progress::-webkit-progress-bar{background:#e9e0ed;border-radius:8px}.pg-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#b897d1,#8862ad);border-radius:8px}.pg-progress progress::-moz-progress-bar{background:#9771b8;border-radius:8px}
.pg-section-heading{margin:23px 0 13px}.pg-section-heading h3{margin:0;font-size:16px;font-weight:800;letter-spacing:-.25px;color:#443949}.pg-section-heading p{margin:5px 0 0;font-size:11px;color:#756878}.pg-tasks{display:grid;gap:9px}.pg-task{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #e9e0de;border-radius:14px;background:#fffefa}.pg-task-icon{display:grid;place-items:center;flex:none;width:39px;height:39px;border-radius:12px;background:#f3e7d6;color:#a07a40}.pg-task-icon svg{width:22px;height:22px}.pg-task-copy{min-width:0;flex:1}.pg-task h4{margin:0 0 4px;font-size:12px;line-height:1.35;color:#473d4b}.pg-task p{font-size:10px;color:#756878;margin:0 0 8px}.pg-task .pg-progress progress{height:4px}.pg-task-reward{display:grid;gap:7px;justify-items:center;min-width:104px}.pg-task-reward>span{font-size:10px;font-weight:700;color:#756578}.pg-task-reward .pg-action{min-height:33px;font-size:10px;padding:7px 11px}.pg-task.is-claimed{background:#f3f7ee;border-color:#dce6d6}.pg-task.is-claimed .pg-task-icon{background:#dfecd9;color:#547d4b}
.pg-action{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:39px;padding:10px 13px;border:1px solid #d9cce2;border-radius:10px;background:#eee5f5;color:#69468a;font-size:11px;line-height:1.4;font-weight:800;white-space:normal;overflow-wrap:anywhere;text-align:center}.pg-action:hover:not(:disabled){background:#e4d5ef}.pg-action:disabled{color:#6b6471;background:#ece9e9;border-color:#ddd8df}.pg-action.is-primary{border-color:#8254a5;background:#8556aa;color:#fff}.pg-action.is-primary:hover:not(:disabled){background:#714392}.pg-action.is-primary:disabled{background:#e8e2ec;color:#6f6178;border-color:#dcd1e3}.pg-action.is-quiet{background:#fffaf1;color:#675175}.pg-action.is-quiet:hover:not(:disabled){background:#f1e8f5}.pg-action svg{width:18px;height:18px;flex:none}
.pg-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pg-mini-pet{display:flex;flex-direction:column;align-items:center;min-width:0;padding:14px 10px 10px;border:1px solid #e8e0df;border-radius:15px;background:#fffefb;text-align:center}.pg-mini-pet .pg-portrait{width:64px;height:64px;border-radius:17px}.pg-mini-pet>strong{width:100%;margin-top:9px;font-size:11px;line-height:1.45;overflow-wrap:anywhere;color:#4c3e52}.pg-mini-pet>span{font-size:9px;color:#796880;margin:4px 0 11px}.pg-mini-pet .pg-action{margin-top:auto;min-height:32px;padding:6px;font-size:9px}
.pg-note{font-size:10px;color:#766979;margin:13px 0 18px}.pg-egg-shop{display:flex;align-items:center;gap:18px;padding:20px;border-radius:17px;background:#f4ead8;border:1px solid #e6d7bc;margin-top:16px}.pg-egg-illustration{display:grid;place-items:center;flex:none;width:112px;height:126px;background:radial-gradient(ellipse,#fef8df 30%,#e7d6ae80 68%,transparent 70%);color:#b18447;filter:drop-shadow(0 8px 8px #ad81431a)}.pg-egg-illustration svg{width:77px;height:93px;fill:#fff7db;stroke-width:1.25}.pg-egg-shop>div{min-width:0;flex:1}.pg-egg-shop h3{font-size:17px;line-height:1.3;margin:7px 0;color:#625035}.pg-egg-shop p{font-size:11px;color:#746044;margin:0 0 13px}.pg-egg-shop .pg-eyebrow{color:#937036}.pg-egg-shop .pg-action{max-width:280px}.pg-eggs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pg-egg-card{display:flex;flex-direction:column;text-align:center;padding:17px 12px 12px;border:1px solid #e3d8e8;background:#fffdfc;border-radius:15px;min-width:0}.pg-egg-symbol{display:grid;place-items:center;height:76px;margin-bottom:8px;color:#aa804a}.pg-egg-symbol svg{width:53px;height:68px;fill:#fff5d6;filter:drop-shadow(0 5px 5px #bfa26322)}.pg-egg-card h4{font-size:12px;margin:0 0 6px;color:#514359}.pg-egg-label{font-size:7px;font-weight:800;letter-spacing:.65px;color:#756482;margin-bottom:12px}.pg-egg-card p{font-size:9px;color:#7c6e84;margin:7px 0 13px}.pg-egg-card .pg-action{margin-top:auto;font-size:10px;padding:8px 5px}.pg-egg-card.is-ready{border-color:#a7bba0;background:#f5f9ee}.pg-egg-card.is-ready .pg-egg-label{color:#557443}.pg-egg-card.is-ready .pg-egg-symbol{animation:pg-egg-rock 3.2s ease-in-out infinite}.pg-empty{grid-column:1/-1;padding:22px 18px;border:1px dashed #d7c9df;border-radius:15px;font-size:11px;line-height:1.6;color:#776580;text-align:center;background:#f5edf7}.pg-care-links,.pg-emotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.pg-wardrobe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pg-accessory{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:18px;border:1px solid #e5d9e8;border-radius:17px;background:#fffdfb}.pg-accessory-visual{display:grid;place-items:center;width:100%;height:90px;background:#f6e9e8;border-radius:12px;color:#af647a;margin-bottom:14px}.pg-accessory-visual svg{width:63px;height:63px;stroke-width:1.15}.pg-item-none{background:#f1eaf6;color:#8b68a4}.pg-item-glasses{background:#e9eff5;color:#586d8b}.pg-item-sunhat{background:#f8efd5;color:#ac8740}.pg-accessory .pg-eyebrow{font-size:7px;letter-spacing:.75px}.pg-accessory h3{font-size:15px;margin:6px 0 5px;color:#55415d}.pg-accessory p{font-size:10px;color:#796480;margin:0 0 16px}.pg-accessory .pg-action{margin-top:auto}.pg-accessory.is-equipped{border-color:#a4b797;background:#f5f8ef}.pg-accessory.is-equipped .pg-eyebrow{color:#567147}
.pg-tricks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pg-trick{display:flex;flex-direction:column;min-width:0;align-items:center;text-align:center;background:#fffdfb;border:1px solid #e6dceb;border-radius:16px;padding:18px 13px 13px}.pg-trick-icon{display:grid;place-items:center;width:61px;height:61px;border-radius:18px;background:#eee5f5;color:#8b63ad;margin-bottom:13px}.pg-trick-icon svg{width:31px;height:31px}.pg-trick h3{font-size:13px;line-height:1.3;color:#594264;margin:7px 0}.pg-trick p{font-size:10px;color:#7b6684;margin:0 0 15px}.pg-trick .pg-action{margin-top:auto;font-size:10px;padding:9px 6px}.pg-emotes .pg-action{flex-direction:column;min-height:63px;font-size:10px}
.pg-hatch{position:fixed;z-index:24;top:145px;right:24px;display:flex;align-items:center;gap:13px;width:330px;max-width:calc(100vw - 28px);padding:21px 24px 19px 16px;background:#fffaf2;border:1px solid #ead5f2;border-radius:21px;box-shadow:0 12px 55px #44345835;color:#53415c;animation:pg-hatch-in .45s ease-out;pointer-events:auto}.pg-hatch .pg-portrait{width:85px;height:85px;border-radius:20px}.pg-hatch-copy{min-width:0;flex:1}.pg-hatch-copy .pg-eyebrow{font-size:7px;letter-spacing:.8px;color:#9760a0}.pg-hatch-copy strong{display:block;font-size:17px;line-height:1.3;margin:6px 0;overflow-wrap:anywhere}.pg-hatch-copy p{font-size:10px;line-height:1.6;margin:0;color:#7a6583}.pg-hatch-close{position:absolute;top:7px;right:7px;width:25px;height:25px;display:grid;place-items:center;border:0;background:#f0e6f4;border-radius:8px;color:#81638e}.pg-hatch-close svg{width:14px;height:14px}.pg-hatch-meet{font-size:10px;font-weight:800;color:#75439a;border:0;background:#eee0f4;border-radius:8px;padding:8px 10px;margin-top:10px}.pg-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.pg-launcher[hidden],.pg-launch-badge[hidden],.pg-backdrop[hidden],.pg-pending[hidden],.pg-hatch[hidden]{display:none!important}
@keyframes pg-egg-rock{0%,75%,100%{transform:rotate(0)}80%{transform:rotate(-5deg)}87%{transform:rotate(5deg)}94%{transform:rotate(-3deg)}}
@keyframes pg-hatch-in{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px) and (orientation:portrait){.pg-launcher{top:var(--pg-mobile-top,64px);right:12px;min-height:38px;padding:8px 11px;font-size:10px;border-radius:12px}.pg-launcher>svg{width:17px;height:17px}.pg-hatch{top:auto;bottom:calc(345px + env(safe-area-inset-bottom,0px));right:14px}}
@media(max-width:520px){.pg-backdrop{padding:12px}.pg-panel{max-height:calc(100dvh - 24px);border-radius:22px}.pg-header{padding:19px 18px 14px}.pg-header h2{font-size:21px}.pg-header .pg-eyebrow{font-size:7px}.pg-tabs{margin:0 17px 14px}.pg-tab{font-size:10px;min-height:36px}.pg-content{padding:0 17px 22px}.pg-pending{margin:0 17px 12px}.pg-hero{min-height:142px;padding:19px}.pg-hero h3{font-size:22px;max-width:220px}.pg-hero p{font-size:10px;max-width:230px}.pg-hero:before{background:linear-gradient(90deg,#24362ce8,#24362c96)}.pg-friendship{padding:13px;gap:12px;margin:14px 0}.pg-friendship .pg-portrait{width:65px;height:65px;border-radius:15px}.pg-friendship h3{font-size:15px;margin-bottom:8px}.pg-friendship p{font-size:9px}.pg-friendship .pg-eyebrow{font-size:7px;letter-spacing:.7px}.pg-task{gap:9px;padding:11px;flex-wrap:wrap}.pg-task-icon{width:31px;height:31px;border-radius:10px}.pg-task-icon svg{width:18px;height:18px}.pg-task h4{font-size:11px}.pg-task p{font-size:9px}.pg-task-copy{flex-basis:calc(100% - 40px)}.pg-task-reward{display:flex;justify-content:space-between;gap:12px;width:100%;padding-left:40px}.pg-task-reward .pg-action{width:auto;min-width:100px;min-height:31px;font-size:9px}.pg-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-egg-shop{padding:15px;gap:12px;align-items:flex-start}.pg-egg-illustration{width:60px;height:87px}.pg-egg-illustration svg{width:47px;height:63px}.pg-egg-shop h3{font-size:15px}.pg-egg-shop p{font-size:10px}.pg-egg-shop .pg-action{font-size:10px}.pg-eggs{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-egg-card:last-child:nth-child(odd){grid-column:1/-1}.pg-egg-card:last-child:nth-child(odd) .pg-action{max-width:230px;margin-left:auto;margin-right:auto}.pg-egg-card:last-child:nth-child(odd) .pg-progress{max-width:230px;margin:auto}.pg-care-links{grid-template-columns:1fr}.pg-care-links .pg-action{min-height:37px}.pg-wardrobe{gap:10px}.pg-accessory{padding:13px;border-radius:14px}.pg-accessory-visual{height:76px}.pg-accessory-visual svg{width:53px;height:53px}.pg-accessory h3{font-size:13px}.pg-accessory p{font-size:9px}.pg-accessory .pg-action{font-size:9px;padding:8px}.pg-tricks{grid-template-columns:1fr}.pg-trick{display:grid;grid-template-columns:55px minmax(0,1fr);column-gap:14px;align-items:center;text-align:left;padding:15px}.pg-trick-icon{grid-row:1/4;width:55px;height:55px;margin:0}.pg-trick h3{margin:4px 0}.pg-trick p{margin:0;font-size:10px}.pg-trick .pg-action{grid-column:1/-1;margin-top:13px;min-height:36px}.pg-trick .pg-eyebrow{font-size:7px}.pg-emotes{gap:7px}.pg-emotes .pg-action{font-size:9px;padding:9px 5px}.pg-hatch-copy strong{font-size:15px}}
@media(max-width:370px){.pg-launcher{right:8px;font-size:9px;padding:8px 10px}.pg-backdrop{padding:8px}.pg-panel{max-height:calc(100dvh - 16px);border-radius:18px}.pg-header{padding:16px 13px 12px}.pg-header h2{font-size:19px}.pg-tabs{margin:0 12px 12px;gap:2px}.pg-tab{font-size:9px}.pg-content{padding:0 12px 18px}.pg-pending{margin:0 12px 10px}.pg-hero{padding:16px;min-height:140px}.pg-hero h3{font-size:21px}.pg-friendship{gap:9px;padding:11px}.pg-friendship .pg-portrait{width:52px;height:52px}.pg-friendship h3{font-size:13px}.pg-section-heading h3{font-size:15px}.pg-section-heading p{font-size:10px}.pg-accessory{padding:11px}.pg-egg-shop{gap:9px;padding:12px}.pg-egg-illustration{width:45px;height:68px}.pg-egg-illustration svg{width:38px;height:52px}.pg-egg-shop h3{font-size:14px}.pg-hatch{gap:10px;padding:20px 23px 17px 12px}.pg-hatch .pg-portrait{width:65px;height:65px}}
@media(max-height:570px) and (min-width:600px){.pg-launcher{top:10px;right:230px;min-height:35px;padding:8px 11px;font-size:10px;border-radius:11px}.pg-launcher>svg{width:17px;height:17px}.pg-backdrop{padding:12px}.pg-panel{max-height:calc(100dvh - 24px);width:min(660px,100%);border-radius:20px}.pg-header{padding:13px 20px 10px}.pg-header h2{font-size:20px}.pg-tabs{margin:0 20px 12px}.pg-tab{min-height:31px;padding:6px}.pg-content{padding:0 20px 21px}.pg-hero{min-height:117px;padding:18px}.pg-hero h3{font-size:22px}.pg-hero p{font-size:10px}.pg-hatch{top:63px;right:190px;width:310px}.pg-hatch .pg-portrait{width:69px;height:69px}}
@media(prefers-reduced-motion:reduce){.pg-egg-card.is-ready .pg-egg-symbol,.pg-hatch{animation:none}.pg-launcher:hover{transform:none}}
.game-toolbar.has-adventure{width:min(370px,calc(100vw - 32px))}.game-toolbar.has-adventure>button{flex:1;min-width:0;width:auto}.game-toolbar.has-adventure>.pg-launcher{position:relative;inset:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px 3px;min-height:54px;background:#f0e7f5;box-shadow:none;border:0;border-radius:12px;color:#74518d;font-size:9px;font-weight:800}.game-toolbar.has-adventure>.pg-launcher:hover{transform:none;background:#e8dbef}.game-toolbar.has-adventure>.pg-launcher>svg{width:22px;height:22px}.game-toolbar.has-adventure .pg-launch-badge{position:absolute;top:1px;right:3px;min-width:15px;height:15px;font-size:8px;padding:0 3px;background:#d7edda;border:1px solid #fff}.game-toolbar.has-adventure>.pg-launcher[aria-expanded=true]{background:#e3d3ee;color:#684187}
@media(max-width:760px){.game-toolbar.has-adventure{width:min(350px,calc(100vw - 32px))}.game-toolbar.has-adventure>.pg-launcher{min-height:45px;font-size:8px;gap:4px;padding:5px 2px;border-radius:11px}.game-toolbar.has-adventure>.pg-launcher>svg{width:19px;height:19px}}
@media(max-height:570px) and (min-width:600px){.game-toolbar.has-adventure{width:min(350px,calc(100vw - 32px))}.game-toolbar.has-adventure>.pg-launcher{min-height:43px;font-size:8px;gap:4px;padding:5px 2px;border-radius:11px}.game-toolbar.has-adventure>.pg-launcher>svg{width:18px;height:18px}}
