@font-face{font-family:CompuSans;src:local('Avenir Next'),local('Segoe UI')}*{box-sizing:border-box}html{font-size:16px;color-scheme:light}body{margin:0;background:#faf9fe;color:#302b42;font-family:CompuSans,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:1rem;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.52;cursor:not-allowed}a{color:#644cb0;text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3b77d8;outline-offset:3px}button{line-height:1.35}img{max-width:100%}[hidden]{display:none!important}.topbar{height:90px;max-width:1240px;padding:0 40px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e9e5f0;gap:24px}.brand{text-decoration:none;color:#54418a;font-size:1.9rem;font-weight:800;letter-spacing:-1.5px;line-height:1.1}.brand span{display:block;color:#81758f;font-size:.625rem;letter-spacing:2px;margin-top:7px;font-weight:700}.topbar nav{display:flex;gap:20px;align-items:center;font-size:.875rem}.topbar form{margin:0}.link-button,.text-button{border:0;background:none;padding:0;color:#644cb0;font-weight:650}.link-button{font-size:.875rem}.shell{max-width:1240px;margin:auto;padding:40px}.footer{max-width:1160px;margin:18px auto 0;border-top:1px solid #e9e5f0;padding:25px 0 36px;display:flex;gap:24px;font-size:.8rem;color:#736981}.footer span{margin-right:auto}h1,h2,h3,p{margin-top:0}h1{font-size:2.3rem;letter-spacing:-1.5px;line-height:1.2;margin-bottom:12px}h2{font-size:1.75rem;letter-spacing:-.7px;line-height:1.3;margin-bottom:14px}h3{font-size:1.125rem;line-height:1.35;margin-bottom:10px}p{margin-bottom:18px}.eyebrow{font-size:.75rem;letter-spacing:1.7px;font-weight:750;color:#827196;margin-bottom:12px}.muted,small{color:#70677e;font-size:.875rem}.panel{background:white;border:1px solid #e7e2ef;border-radius:22px;padding:28px;box-shadow:0 4px 18px #41325304}.button,.secondary,.danger{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid transparent;border-radius:11px;padding:12px 19px;font-weight:650;font-size:.9375rem;min-height:45px}.button{background:#7157b9;color:white;box-shadow:0 4px 10px #7157b920}.button:hover:not(:disabled){background:#6045a8}.secondary{color:#604b91;background:#f5f1fd;border-color:#e5dcf5}.danger{color:#9c364b;background:#fff0f2;border-color:#efcbd3}.text-button{font-size:.9375rem}hr{border:0;border-top:1px solid #eae5f1;margin:24px 0}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spread{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:17px}.stack h2,.stack p{margin-bottom:0}.stack button{align-self:flex-start}label{display:flex;flex-direction:column;font-weight:600;font-size:.875rem;gap:7px}input,select,textarea{border:1px solid #d8d0e7;border-radius:9px;background:white;color:#302b42;padding:11px 13px;width:100%;min-width:0;font-size:1rem}textarea{min-height:90px;resize:vertical}.check{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-weight:500}.check input{width:18px;height:18px;margin:3px 0 0;accent-color:#7157b9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.notice,.error{border-radius:13px;padding:15px 20px;margin-bottom:24px;background:#eeebf9;border:1px solid #ddd5f0;font-size:.9375rem}.error{background:#fff0f2;border-color:#efcbd3;color:#9c364b}.warning{background:#fff8e6;border-color:#eee0b6}.welcome,.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.welcome p:last-child{margin-bottom:0;color:#7b708b}.balance{padding:12px 18px;border-radius:12px;background:#fff3d9;color:#7d6436;font-size:.9375rem}.gift{display:flex;flex-direction:column;text-align:left;border:1px solid #e4dbf3;background:#f4effc;padding:11px 18px;border-radius:13px;color:#604889;gap:4px}.gift small{font-size:.8rem}.game-tabs{display:flex;border-bottom:1px solid #e6e0ef;gap:6px;margin-bottom:28px}.game-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:15px 25px;color:#797087;font-weight:650;font-size:.9375rem}.game-tabs button[aria-selected=true]{color:#674eaa;border-bottom-color:#7157b9}.game-tabs span:not(:empty){background:#e2f2e9;color:#42745e;border-radius:10px;padding:2px 7px;margin-left:5px;font-size:.8rem}.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px}.pet-room{padding:0;overflow:hidden;align-self:start}.room-top{display:flex;justify-content:space-between;padding:19px 24px;font-size:.875rem;font-weight:650}.room-top span:last-child{color:#8c8198;font-size:.8rem;font-weight:400}.scene{height:400px;position:relative;overflow:hidden;background:#e8ded0;isolation:isolate}.room-background{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:-3}.pet-character{position:absolute;left:50%;bottom:31px;transform:translateX(-50%);width:245px;padding:0;background:none;border:0;z-index:3;transition:transform .2s}.pet-character:hover{transform:translateX(-50%) translateY(-3px)}.pet-character>img:first-child{width:100%;display:block}.pet-character #bandana{position:absolute;width:68px;left:48%;top:53%;transform:translateX(-50%)}.pet-speech{position:absolute;left:50%;top:24px;transform:translateX(-50%);max-width:85%;width:max-content;background:#fffffff2;border-radius:15px;padding:10px 17px;font-size:.875rem;text-align:center;color:#786885;box-shadow:0 3px 10px #74554809;z-index:7}.room-ball{position:absolute;bottom:34px;right:17%;width:65px;border:0;background:none;z-index:4;padding:0}.scene-tip{position:absolute;bottom:9px;left:0;width:100%;text-align:center;color:#665b64;font-size:.75rem;z-index:7}.room-item{position:absolute;z-index:1;object-fit:contain;pointer-events:none}.room-item-plant{width:115px;bottom:120px;right:5%}.room-item-bed{width:190px;left:6%;bottom:35px}.room-item-cushion{width:105px;left:7%;bottom:70px}.room-item-duck{width:66px;right:4%;bottom:40px}.away-card{position:absolute;inset:65px 16% 60px;background:#fffffff0;border:1px solid #e5def0;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:10px;z-index:8}.away-card p{margin:0}.care-actions{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 10px;gap:7px}.care-actions button{border:0;background:none;padding:8px;border-radius:12px;color:#54475f;text-align:center}.care-actions button:hover:not(:disabled){background:#f6f2fb}.care-actions strong,.care-actions small{display:block}.care-actions small{font-size:.75rem;margin-top:6px}.pet-sidebar{display:flex;flex-direction:column;gap:20px}.pet-summary h2{font-size:2.1rem;margin:0 0 4px}.pet-summary>p:not(.eyebrow){font-size:.875rem;color:#7f758d;margin-bottom:22px}.need{margin:18px 0}.need label{display:flex;flex-direction:row;justify-content:space-between;font-weight:500;color:#72667f;font-size:.875rem;margin-bottom:7px}.need strong{font-weight:650}progress{width:100%;height:8px;display:block;border:0;border-radius:8px;overflow:hidden;background:#eee9f5;accent-color:#a18acc}progress::-webkit-progress-bar{background:#eee9f5;border-radius:8px}progress::-webkit-progress-value{background:#a18acc;border-radius:8px}progress::-moz-progress-bar{background:#a18acc;border-radius:8px}.fullness progress::-webkit-progress-value{background:#e9b47c}.happiness progress::-webkit-progress-value{background:#d59bae}.cleanliness progress::-webkit-progress-value{background:#9aafdf}.energy progress::-webkit-progress-value{background:#94b9a8}.garden-peek{background:#f0f8f3;border-color:#dcece1}.garden-peek p{font-size:.875rem}.garden-peek .eyebrow{font-size:.6875rem;color:#6c8b7d}.bottom-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:24px}.training{display:flex;align-items:center;justify-content:space-between;gap:18px}.training p:last-child{margin:0;font-size:.875rem}.training .eyebrow{font-size:.6875rem}.section-heading{margin:36px 0 28px}.section-heading h2{font-size:2rem}.section-heading>p:last-child{color:#7b708b}.garden-grid{display:grid;grid-template-columns:minmax(0,1.6fr) 1fr;gap:24px}.garden-grid aside{align-self:start}.garden-main{text-align:center;padding:30px 35px}.garden-main>img{width:170px;height:170px;object-fit:contain;margin:10px 0 25px}.garden-main .button{margin:22px 0 12px}.batch-slots{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:440px;margin:25px auto 0}.batch-slots span{width:38px;height:38px;background:#f0f1f6;border:1px solid #e0e0ec;border-radius:10px}.batch-slots span.ripe{background:#b5d7bf;border:1px solid #8fbea0}.adventure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.adventure img{width:120px;height:100px;object-fit:contain;display:block;margin-bottom:25px}.adventure p{font-size:.875rem;color:#7b708b}.adventure:nth-child(1){background:#f4f9f1}.adventure:nth-child(2){background:#faf5ed}.adventure:nth-child(3){background:#eff6fb}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product{padding:18px 20px 23px}.product-art{height:180px;border-radius:15px;background:#f5f2fa;position:relative;display:flex;justify-content:center;align-items:center;margin-bottom:20px}.product-art img{width:145px;height:145px;object-fit:contain}.product:nth-child(2n) .product-art{background:#f9f2e9}.product:nth-child(3n) .product-art{background:#eff7f2}.owned{position:absolute;right:10px;top:10px;border-radius:8px;padding:2px 8px;color:#477363;background:#e1f2e7;font-size:.75rem}.product h3{margin-bottom:19px}.product .eyebrow{font-size:.6875rem;margin-bottom:8px}.product button{width:100%}.pack-section{margin-top:32px;padding:30px;background:#f1edfa}.pack-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}.pack{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #e3daf3;border-radius:15px;padding:21px;background:white;text-align:left;color:#594872}.pack strong,.pack small{display:block}.pack small{margin-top:7px;font-size:.875rem}.pack b{font-size:1.4rem}dialog{border:1px solid #e7e0f0;border-radius:22px;padding:30px;max-width:520px;width:calc(100% - 32px);color:#302b42;box-shadow:0 20px 100px #35264b40}dialog::backdrop{background:#30264475;backdrop-filter:blur(4px)}dialog .row h2{margin:0}dialog p{font-size:.9375rem}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:16px 22px;max-width:90vw;width:max-content;border-radius:14px;background:#383145;color:white;box-shadow:0 10px 40px #30264430;font-size:.9375rem;z-index:100}.toast-error{background:#914458!important}.fetch-arena{height:280px;border-radius:18px;background:#edf5ed;position:relative;margin:20px 0;overflow:hidden}.fetch-arena button{width:64px;height:64px;border:0;background:none;padding:0;position:absolute;transition:top .13s,left .13s}.fetch-arena img{width:100%;height:100%;object-fit:contain}.auth-card{max-width:510px;margin:10px auto 30px;padding:35px}.auth-pet{width:140px;height:130px;object-fit:contain;display:block;margin:0 auto 20px}.auth-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px;font-size:.875rem}.auth-card h1{font-size:2rem}.auth-card .button{width:100%}.prose{max-width:820px;margin:auto;padding:42px}.prose h2{font-size:1.4rem;margin-top:30px}.prose p{color:#665b75}.admin-body{background:#f5f6fa;color:#263044}.admin-body .topbar{max-width:1440px}.admin-body .shell{max-width:1440px}.admin-body .panel{border-color:#e1e5ed;box-shadow:none;border-radius:17px}.admin-body .page-heading h1{font-size:2rem}.admin-body .eyebrow{color:#717d97}.admin-nav{display:flex;gap:5px;overflow:auto;padding:7px;border:1px solid #e0e3ec;border-radius:13px;background:white;margin-bottom:28px}.admin-nav a{flex-shrink:0;padding:10px 18px;text-decoration:none;font-weight:650;font-size:.875rem;border-radius:8px;color:#68758c}.admin-nav a.selected{background:#3f3b70;color:white}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.metric{text-decoration:none;display:flex;flex-direction:column;color:#657089;font-size:.875rem;gap:8px}.metric strong{font-size:2rem;color:#343955;font-weight:750;letter-spacing:-1px}.metric small{font-size:.75rem}.checklist{list-style:none;padding:0;margin:20px 0}.checklist li{border-bottom:1px solid #e8eaf0;padding:10px 0;font-size:.9375rem}.activity{padding:15px 0;border-bottom:1px solid #e9e6ee}.activity p{margin:4px 0 6px;font-size:.875rem;overflow-wrap:anywhere}.activity small{font-size:.75rem}.activity strong{font-size:.875rem;text-transform:capitalize}.activity:last-of-type{margin-bottom:20px}.filters{display:flex;align-items:flex-end;gap:16px;margin:20px 0;flex-wrap:wrap}.filters label:first-child{min-width:240px}.filters .secondary{margin-bottom:1px}.table-wrap{overflow-x:auto;padding:0!important}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.7px;color:#6e7b92;background:#f9fafc;white-space:nowrap}td,th{padding:16px 20px;border-bottom:1px solid #e9ecf2;vertical-align:top}td{overflow-wrap:anywhere;min-width:110px}td:first-child{min-width:180px}td small{display:block;font-size:.75rem;margin-top:6px}td .stack{margin-top:12px;min-width:190px}.pagination{display:flex;justify-content:flex-end;gap:25px;font-size:.875rem;margin:20px 0}.pagination span{margin-right:auto}.small-metrics{display:flex;gap:18px;flex-wrap:wrap;margin:25px 0}.small-metrics strong{display:block;font-size:1.7rem}.catalog-admin{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px}.catalog-admin img{height:110px;object-fit:contain;align-self:center}.health{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;font-size:.875rem}.health dt{color:#718099}.health dd{margin:0;overflow-wrap:anywhere}.secret{overflow-wrap:anywhere;font-size:1.1rem;background:#f1edf9;border-radius:10px;padding:15px}.save-button{align-self:flex-start}.admin-body h2{font-size:1.4rem}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:1000px){.shell{padding:30px 24px}.topbar{padding:0 24px}.home-grid{grid-template-columns:minmax(0,1fr) 265px;gap:18px}.scene{height:355px}.pet-character{width:215px}.panel{padding:23px}.welcome h1{font-size:2rem}.welcome{align-items:flex-start}.welcome>.row{flex-direction:column;align-items:flex-end}.metrics{grid-template-columns:repeat(2,1fr)}.footer{margin-left:24px;margin-right:24px}.room-top{padding:16px}.care-actions{padding:15px 5px}.care-actions small{font-size:.7rem}.shop-grid{gap:16px}.catalog-admin{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{height:78px;padding:0 20px}.topbar nav{gap:12px;font-size:.8rem}.topbar .link-button{font-size:.8rem}.brand{font-size:1.6rem}.brand span{font-size:.5rem;letter-spacing:1px}.shell{padding:25px 18px}.welcome{flex-direction:column;gap:17px;margin-bottom:18px}.welcome>.row{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.welcome .eyebrow{font-size:.6875rem}.welcome h1{font-size:1.95rem}.welcome p{font-size:.9375rem}.gift{padding:9px 14px}.gift strong{font-size:.8rem}.gift small{font-size:.75rem}.balance{font-size:.875rem}.game-tabs{gap:0;margin-bottom:20px}.game-tabs button{padding:13px 8px;font-size:.875rem;flex:1}.game-tabs span:not(:empty){font-size:.7rem;padding:1px 4px;margin-left:2px}.home-grid,.bottom-grid,.garden-grid,.admin-grid{grid-template-columns:1fr;gap:18px}.scene{height:350px}.pet-character{width:230px}.care-actions small{font-size:.75rem}.pet-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pet-summary h2{font-size:1.7rem}.pet-summary{grid-column:1 / -1}.pet-summary .need{display:inline-block;width:47%;margin:9px 0}.pet-summary .need:nth-of-type(2n){margin-right:5%}.pet-summary .need:first-of-type{width:100%;margin-right:0}.pet-summary hr{margin:12px 0}.garden-peek{grid-column:1 / -1}.garden-peek p{margin-bottom:12px}.training{gap:14px}.training .eyebrow{font-size:.625rem}.training h3{font-size:1rem}.training button{padding:11px 14px}.shop-grid{grid-template-columns:repeat(2,1fr);gap:13px}.product{padding:12px}.product-art{height:130px;margin-bottom:15px}.product-art img{height:110px;width:110px}.product h3{font-size:1rem;min-height:43px}.product button{font-size:.8rem;padding:10px}.pack-grid,.adventure-grid{grid-template-columns:1fr}.pack-section{padding:23px}.adventure{display:grid;grid-template-columns:100px 1fr;column-gap:20px}.adventure img{grid-row:1 / 5;width:100%;align-self:center;margin:0}.adventure p{margin-bottom:10px}.adventure .button{justify-self:start}.section-heading{margin:28px 0 20px}.section-heading h2{font-size:1.75rem}.auth-card{padding:26px 22px;margin:0 auto}.auth-card h1{font-size:1.75rem}.footer{font-size:.75rem;gap:12px;flex-wrap:wrap;margin:15px 18px 0}.footer span{width:100%}.prose{padding:25px}.prose h1{font-size:2rem}.page-heading{align-items:flex-start}.page-heading .secondary{font-size:.75rem;padding:9px 12px;white-space:nowrap}.admin-nav{margin-bottom:20px}.admin-nav a{padding:9px 14px}.admin-body .eyebrow{font-size:.625rem}.admin-body .page-heading h1{font-size:1.7rem}.metric{padding:18px!important;gap:7px}.metric strong{font-size:1.8rem}.metric small{font-size:.75rem}.metrics{gap:12px}.catalog-admin{grid-template-columns:1fr}.health{grid-template-columns:1fr 1.1fr}.form-grid{grid-template-columns:1fr 1fr;gap:13px}.form-grid label{font-size:.8rem}.filters{gap:12px}.filters label:first-child{min-width:0;flex:1}.filters select{width:140px}.admin-grid h2{font-size:1.35rem}.room-item-plant{width:90px}.room-item-bed{width:140px;left:1%}.room-item-cushion{width:85px;left:3%}.room-item-duck{width:50px;right:2%}.room-ball{right:13%;width:55px}.away-card{inset:50px 12% 40px}.pet-speech{font-size:.8rem}.room-top{font-size:.8rem}.scene-tip{font-size:.6875rem}}
@media(max-width:380px){.topbar nav{gap:8px}.brand span{display:none}.game-tabs button{font-size:.8rem}.scene{height:310px}.pet-character{width:200px}.care-actions small{font-size:.6875rem}.form-grid{grid-template-columns:1fr}.gift{padding:8px 10px}.balance{padding:10px 12px}}
.pet-room.panel{padding:0}.scene-tip{background:#ffffffe0;padding:4px 8px;bottom:0;color:#5e5467}.form-grid label{font-size:.875rem}
