:root{color:#5e514b;--cream:#fff8ef;--paper:#fffdf7e6;--pink:#f2cbd1;--pink-strong:#d9939f;--sage:#cdddc8;--sage-strong:#759985;--blue:#cfe3ec;--yellow:#f5e3a8;--ink:#5e514b;--muted:#93837b;--line:#70584d1f;--shadow:0 22px 60px #6f57481f;background:#fff8ef;font-family:ui-rounded,SF Pro Rounded,PingFang SC,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 5%, #f2cbd17a, transparent 28rem), radial-gradient(circle at 92% 28%, #cdddc88c, transparent 30rem), var(--cream);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit}.adoption-page{width:min(1180px,100% - 32px);min-height:100vh;margin:0 auto;padding:58px 0 30px}.brand-heading{text-align:center;margin-bottom:34px}.brand-kicker{color:var(--sage-strong);letter-spacing:.19em;text-transform:uppercase;font-size:.78rem;font-weight:800}.brand-heading h1{letter-spacing:-.04em;margin:7px 0 8px;font-size:clamp(2.1rem,4vw,3.8rem);line-height:1.05}.brand-heading p{color:var(--muted);margin:0;font-size:1rem}.adoption-card{background:var(--paper);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid #ffffffb8;border-radius:42px;grid-template-columns:minmax(340px,.92fr) minmax(430px,1.08fr);display:grid;overflow:hidden}.preview-panel{isolation:isolate;background:linear-gradient(145deg,#cfe3ecb8,#f5e3a861);flex-direction:column;justify-content:center;align-items:center;min-height:650px;padding:44px 42px;display:flex;position:relative}.preview-panel:before,.preview-panel:after{content:"";z-index:-1;background:#ffffff73;border-radius:999px;position:absolute}.preview-panel:before{width:110px;height:34px;top:16%;left:12%}.preview-panel:after{width:145px;height:45px;top:25%;right:7%}.preview-halo{filter:blur(2px);z-index:-1;background:#ffffff6b;border-radius:50%;width:310px;height:310px;position:absolute}.tiny-label{color:#748c8e;letter-spacing:.15em;align-self:flex-start;font-size:.8rem;font-weight:800}.adoption-form{padding:46px clamp(30px,5vw,64px)}.form-intro{align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.step-pill{background:var(--sage);color:#607b6b;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:.78rem;font-weight:900;display:grid}.form-intro h2{margin:0 0 4px;font-size:1.42rem}.form-intro p{color:var(--muted);margin:0;font-size:.9rem}.option-group{border:0;margin:0 0 20px;padding:0}.option-group legend{margin-bottom:9px;font-size:.9rem;font-weight:800}.option-row{flex-wrap:wrap;gap:8px;display:flex}.choice-chip{border:1px solid var(--line);cursor:pointer;background:#ffffffb8;border-radius:999px;min-height:42px;padding:9px 14px;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s}.choice-chip:hover{border-color:#75998566;transform:translateY(-2px)}.choice-chip[aria-pressed=true]{background:#e3eee0;border-color:#a9c1a5;box-shadow:0 5px 15px #75998524}.color-dot{vertical-align:-2px;border:1px solid #5e514b24;border-radius:50%;width:14px;height:14px;margin-right:7px;display:inline-block}.name-field{gap:8px;margin-top:26px;font-size:.92rem;font-weight:800;display:grid}.name-field small{float:right;color:var(--muted);font-weight:600}.name-field input{border:1px solid var(--line);width:100%;min-height:50px;color:var(--ink);background:#fff;border-radius:16px;outline:0;padding:0 16px;transition:box-shadow .18s,border-color .18s}.name-field input:focus{border-color:#9ab49f;box-shadow:0 0 0 4px #a9c1a540}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:16px;min-height:48px;font-weight:850;transition:transform .18s,box-shadow .18s,opacity .18s}.primary-button{color:#fff;background:#789c88;box-shadow:0 10px 24px #517a6338}.secondary-button{color:#667f7e;background:#ffffffba;padding:0 20px}.primary-button:hover:not(:disabled),.secondary-button:hover{transform:translateY(-2px)}.primary-button:active:not(:disabled),.secondary-button:active{transform:translateY(1px)scale(.98)}.primary-button:disabled{cursor:not-allowed;opacity:.42;box-shadow:none}.random-button{margin-top:4px}.adopt-button{width:100%;margin-top:16px}.gentle-note{color:var(--muted);text-align:center;margin:20px 0 0;font-size:.84rem}.temporary-room{place-items:center;min-height:100vh;display:grid}.room-page{--room-wall:#f5eadc;--room-floor:#e9d7c3;background:linear-gradient(#fdf8f0,#f5eee4);min-height:100vh;padding:22px clamp(14px,3vw,42px) 30px;transition:background .7s,color .7s}.room-page[data-theme=night]{--room-wall:#85879a;--room-floor:#696b7c;--ink:#f7eee6;--muted:#d7cdd1;color:#f8f1e9;background:linear-gradient(#5d6074,#747184)}.room-page--resting .room-stage:after{opacity:.24}.room-header{justify-content:space-between;align-items:center;gap:18px;width:min(1380px,100%);margin:0 auto 18px;display:flex}.room-brand{align-items:center;gap:12px;display:flex}.mini-logo{background:var(--pink);color:#986d74;border-radius:15px;place-items:center;width:42px;height:42px;font-size:1.3rem;display:grid;box-shadow:0 8px 20px #78505021}.room-brand span:last-child{display:grid}.room-brand small{color:var(--muted);letter-spacing:.1em;font-size:.68rem}.room-brand strong{font-size:1.14rem}.room-header-actions{align-items:center;gap:9px;display:flex}.time-pill,.icon-button{border:1px solid var(--line);background:#ffffffad;border-radius:999px;min-height:42px;box-shadow:0 7px 18px #4b413f12}.time-pill{align-items:center;gap:7px;padding:0 15px;font-size:.84rem;font-weight:800;display:inline-flex}.time-pill i{color:#d7a85c;font-style:normal}.icon-button{cursor:pointer;align-items:center;gap:7px;padding:0 13px;font-weight:750;display:inline-flex}.icon-button span{font-size:.78rem}.room-page[data-theme=night] .time-pill,.room-page[data-theme=night] .icon-button{color:#f7eee6;background:#ffffff21;border-color:#ffffff24}.room-layout{grid-template-columns:minmax(620px,1fr) minmax(280px,330px);gap:20px;width:min(1380px,100%);margin:0 auto;display:grid}.room-stage{background:linear-gradient(180deg, var(--room-wall) 0 68%, var(--room-floor) 68% 100%);min-height:clamp(500px,64vh,680px);box-shadow:var(--shadow), inset 0 -16px 30px #53403412;border:10px solid #ffffffb3;border-radius:38px;transition:background .7s;position:relative;overflow:hidden}.room-stage:after{content:"";opacity:0;pointer-events:none;z-index:20;background:#293044;transition:opacity .6s;position:absolute;inset:0}.room-page[data-theme=night] .room-stage:after{opacity:.09}.wall-speckles{opacity:.22;background-image:radial-gradient(circle,#b9a99b 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0 0 32%}.floor-line{background:#7052441f;height:4px;position:absolute;bottom:31.7%;left:0;right:0}.window{background:linear-gradient(#bcdce9,#e8f0e5);border:10px solid #e8d5c1;border-radius:42px 42px 20px 20px;width:190px;height:160px;position:absolute;top:8%;left:8%;overflow:hidden;box-shadow:0 12px #76584b14}.room-page[data-theme=night] .window{background:linear-gradient(#4f5875,#737b98);border-color:#c6b7b1}.window-frame{background:#fff9edbf;position:absolute}.window-frame--v{width:6px;top:0;bottom:0;left:calc(50% - 3px)}.window-frame--h{height:6px;top:calc(50% - 3px);left:0;right:0}.sky-object{color:#f3ca73;text-shadow:0 0 18px #ffe29473;font-size:40px;position:absolute;top:16px;right:20px}.room-page[data-theme=night] .sky-object{color:#f1e6bd}.cloud{background:#ffffffb8;border-radius:20px;width:58px;height:20px;position:absolute}.cloud:before,.cloud:after{content:"";background:inherit;border-radius:50%;position:absolute;bottom:0}.cloud:before{width:26px;height:28px;left:9px}.cloud:after{width:21px;height:22px;right:8px}.cloud--one{top:48px;left:14px}.cloud--two{bottom:25px;right:18px;transform:scale(.75)}.stars{color:#f4e9c4;font-size:21px;line-height:2.3;position:absolute;inset:16px}.bookshelf{background:#d9b99c;border:9px solid #b89276;border-bottom-width:15px;border-radius:14px 14px 8px 8px;width:125px;height:178px;position:absolute;top:9%;right:7%;box-shadow:inset 0 -54px #97715926,0 10px #5c453b14}.bookshelf:before{content:"";background:#b89276;height:8px;position:absolute;top:78px;left:0;right:0}.bookshelf span{background:#9eb9ad;border-radius:4px 4px 0 0;width:18px;position:absolute;bottom:0}.bookshelf span:first-child{height:53px;left:12px}.bookshelf span:nth-child(2){background:#e3a9ae;height:45px;left:34px}.bookshelf span:nth-child(3){background:#dfc37e;height:58px;left:56px}.bookshelf i{background:#f4eee2;border-radius:50% 50% 40% 40%;width:52px;height:34px;position:absolute;top:33px;left:29px}.plant{width:100px;height:150px;position:absolute;bottom:23%;right:6%}.plant i{background:#c78e78;border-radius:8px 8px 23px 23px;width:58px;height:58px;position:absolute;bottom:0;left:23px;box-shadow:inset 0 9px #ffffff2b}.leaf{transform-origin:bottom;background:#86a57e;border-radius:100% 0;width:30px;height:70px;position:absolute;bottom:48px;left:46px}.leaf--one{transform:rotate(-42deg)}.leaf--two{background:#9ab68d;transform:rotate(-5deg)scale(.9)}.leaf--three{background:#759c7a;transform:rotate(42deg)scale(.86)}.bed{background:#d7aeb6;border-radius:33px 26px 15px 15px;width:238px;height:114px;position:absolute;bottom:20%;left:5%;box-shadow:0 13px #aa827b,0 20px 22px #53403426}.bed:before{content:"";background:#9e776b;border-radius:8px;width:12px;height:115px;position:absolute;bottom:-11px;left:-8px}.pillow{background:#fff1df;border-radius:25px;width:77px;height:52px;position:absolute;top:14px;left:18px;transform:rotate(-4deg)}.blanket{background:#b9d0c1;border-radius:34px 24px 12px 10px;width:142px;height:91px;position:absolute;bottom:0;right:0;box-shadow:inset 0 14px #ffffff2e}.rug{background:#e6c5ad;border-radius:50%;height:128px;position:absolute;bottom:8%;left:26%;right:22%;box-shadow:inset 0 0 0 13px #ffffff2e}.food-bowl{color:#fff;background:#aac6cc;border-radius:8px 8px 28px 28px;place-items:center;width:74px;height:32px;font-size:13px;display:grid;position:absolute;bottom:10%;left:26%;box-shadow:0 7px #88a7ad}.toy-ball{background:conic-gradient(#e5aeb5 0 25%, #f2d789 0 50%, #aac8cf 0 75%, #e5aeb5 0);z-index:3;border-radius:50%;width:43px;height:43px;position:absolute;bottom:13%;right:24%;box-shadow:0 7px 12px #4b37321f}.toy-ball--active{animation:1.05s ease-in-out infinite alternate room-ball-chase}.room-pet{z-index:5;width:min(39%,350px);transition:left .7s,transform .7s;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.room-pet--rest{width:min(29%,270px);bottom:16%;left:19%}.room-sidebar{align-content:start;gap:15px;display:grid}.status-panel,.dialogue-card,.care-note{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf8c7;border:1px solid #ffffffb3;box-shadow:0 14px 38px #624d4214}.status-panel{border-radius:28px;gap:19px;padding:23px;display:grid}.status-item{gap:8px;display:grid}.status-copy{align-items:center;gap:9px;display:flex}.status-copy span:nth-child(2){line-height:1.1;display:grid}.status-copy strong{font-size:.84rem}.status-copy small{color:var(--muted);font-size:.62rem}.status-copy b{margin-left:auto;font-size:.88rem}.status-icon{color:#ac7882;background:#f3ddd8;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.status-item--energy .status-icon{color:#af9548;background:#f4e8bb}.status-item--mood .status-icon{color:#729076;background:#dfeadc}.status-track{background:#5e514b14;border-radius:999px;height:7px;overflow:hidden}.status-track span{border-radius:inherit;background:#dda5af;height:100%;transition:width .45s;display:block}.status-item--energy .status-track span{background:#dcc76f}.status-item--mood .status-track span{background:#8eaf92}.dialogue-card{border-radius:28px;min-height:178px;padding:31px 27px 24px;position:relative}.dialogue-mark{color:var(--pink);font:700 3.3rem Georgia,serif;position:absolute;top:9px;left:16px}.dialogue-card p{margin:16px 0 20px;font-size:1rem;font-weight:750;line-height:1.8;position:relative}.dialogue-card small{color:var(--muted)}.care-note{color:var(--muted);border-radius:19px;margin:0;padding:15px 18px;font-size:.76rem;line-height:1.6}.care-note span{color:var(--sage-strong);font-size:1.2rem}.room-page[data-theme=night] .status-panel,.room-page[data-theme=night] .dialogue-card,.room-page[data-theme=night] .care-note{color:#5e514b;background:#fffaf2e0}.interaction-bar{grid-template-columns:repeat(4,1fr);gap:11px;width:min(880px,100%);margin:19px auto 0;display:grid}.interaction-button{color:#5e514b;cursor:pointer;background:#fffdf8cc;border:1px solid #ffffffb8;border-radius:22px;justify-content:center;align-items:center;gap:11px;min-height:72px;padding:10px 18px;transition:transform .18s,box-shadow .18s,background .18s;display:flex;box-shadow:0 10px 26px #5e473e17}.interaction-button:hover{transform:translateY(-3px);box-shadow:0 14px 30px #5e473e21}.interaction-button:active{transform:translateY(1px)scale(.98)}.interaction-button[aria-pressed=true]{background:#fff;box-shadow:0 0 0 3px #75998533,0 14px 30px #5e473e21}.action-icon{color:#a96d78;background:#f1d5d8;border-radius:14px;place-items:center;width:38px;height:38px;font-size:1.22rem;display:grid}.interaction-button--play .action-icon{color:#789da8;background:#d9e7eb}.interaction-button--pet .action-icon{color:#789178;background:#e1eadc}.interaction-button--rest .action-icon{color:#827eaa;background:#e2dff0}.interaction-button span:last-child{text-align:left;display:grid}.interaction-button strong{font-size:.86rem}.interaction-button small{color:var(--muted);font-size:.62rem}@keyframes room-ball-chase{0%{transform:translate(0)rotate(0)}to{transform:translate(-170px)rotate(-360deg)}}.modal-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;background:#433a3e47;place-items:center;padding:18px;animation:.2s ease-out modal-fade;display:grid;position:fixed;inset:0}.modal-card{color:#5e514b;background:#fffaf2;border:1px solid #ffffffd1;border-radius:34px;width:min(680px,100%);max-height:min(780px,100vh - 36px);padding:38px;animation:.24s ease-out modal-rise;position:relative;overflow:auto;box-shadow:0 30px 100px #392b3042}.modal-close{cursor:pointer;background:#75645d14;border:0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.5rem;display:grid;position:absolute;top:18px;right:18px}.modal-kicker{color:var(--sage-strong);letter-spacing:.2em;font-size:.7rem;font-weight:900}.modal-card h2{margin:5px 0 7px;font-size:2rem}.modal-intro{color:var(--muted);margin:0 0 26px}.memory-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.memory-item{opacity:.7;background:#e1dbd33b;border:1px dashed #5e514b2e;border-radius:21px;align-items:flex-start;gap:14px;min-height:126px;padding:18px;display:flex}.memory-item--unlocked{opacity:1;background:#eef4e9;border-style:solid;border-color:#79998440}.memory-icon{color:#789985;background:#fffc;border-radius:14px;flex:none;place-items:center;width:38px;height:38px;display:grid}.memory-item h3{margin:0 0 5px;font-size:.9rem}.memory-item p{color:var(--muted);margin:0 0 7px;font-size:.76rem;line-height:1.5}.memory-item small{color:#8da08c;font-size:.65rem}.settings-modal{width:min(560px,100%)}.settings-block{background:#f3ede4;border-radius:22px;gap:14px;margin:22px 0 0;padding:20px;display:flex}.settings-block--gentle{background:#edf3e8}.settings-icon{width:40px;height:40px;color:var(--sage-strong);background:#fff;border-radius:14px;flex:none;place-items:center;display:grid}.settings-block h3{margin:0 0 5px;font-size:.92rem}.settings-block p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.7}.settings-block code{background:#fffc;border-radius:5px;padding:2px 5px}.storage-warning{color:#9b5f5b;background:#fae2df;border-radius:15px;padding:13px 15px;font-size:.78rem;line-height:1.55}.danger-soft-button{color:#a15e5e;cursor:pointer;background:#fff0ed;border:1px solid #e7bbb8;border-radius:16px;width:100%;min-height:48px;margin-top:24px;font-weight:850}.danger-soft-button:hover{background:#fde4e0}@keyframes modal-fade{0%{opacity:0}}.modal-rise{transform:translateY(0)}@keyframes modal-rise{0%{opacity:0;transform:translateY(18px)scale(.98)}}@media (width<=980px){.room-layout{grid-template-columns:1fr}.room-stage{min-height:590px}.room-sidebar{grid-template-columns:1fr 1fr}.care-note{grid-column:1/-1}}@media (width<=650px){.room-page{padding-inline:10px}.room-header{align-items:flex-start}.room-brand small{display:none}.room-brand strong{font-size:.96rem}.room-header-actions{gap:5px}.icon-button span{display:none}.time-pill,.icon-button{min-height:44px;padding-inline:12px}.room-stage{border-width:6px;border-radius:28px;min-height:510px}.window{border-width:7px;width:135px;height:122px}.bookshelf{border-width:7px;width:88px;height:132px;right:4%}.bookshelf:before{top:57px}.bookshelf i{top:20px;left:18px;transform:scale(.75)}.bookshelf span{transform-origin:bottom;transform:scale(.75)}.bed{width:170px;height:88px;left:2%}.pillow{width:58px;height:39px}.blanket{width:105px;height:69px}.plant{transform-origin:bottom;right:1%;transform:scale(.72)}.food-bowl{left:18%;transform:scale(.8)}.toy-ball{right:15%}.room-pet{width:min(58%,290px);bottom:9%}.room-pet--rest{width:42%;bottom:16%;left:23%}.room-sidebar{grid-template-columns:1fr}.care-note{grid-column:auto}.status-panel{grid-template-columns:repeat(3,1fr);gap:10px;padding:17px 12px}.status-copy{flex-wrap:wrap;gap:5px}.status-copy b{text-align:center;width:100%;margin:0}.status-copy span:nth-child(2){display:none}.status-icon{margin:0 auto}.dialogue-card{min-height:130px;padding:22px 23px 17px}.dialogue-card p{margin:10px 0}.interaction-bar{grid-template-columns:repeat(2,1fr);gap:8px}.interaction-button{min-height:62px;padding:8px 12px}.modal-card{border-radius:28px;padding:32px 20px 22px}.memory-grid{grid-template-columns:1fr}.memory-item{min-height:108px}}button:focus-visible{outline-offset:3px;outline:3px solid #75998573}@media (width<=820px){.adoption-page{width:min(100% - 20px,640px);padding-top:32px}.adoption-card{border-radius:30px;grid-template-columns:1fr}.preview-panel{min-height:430px;padding:30px 24px}.preview-panel .pet-avatar-button{width:min(100%,320px)}.adoption-form{padding:34px 22px 38px}}@media (width<=460px){.brand-heading{margin-bottom:22px}.brand-heading p{padding:0 22px}.preview-panel{min-height:370px}.choice-chip{min-height:44px;padding-inline:12px;font-size:.88rem}}.pet-avatar-button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:45%;width:min(100%,430px);padding:0;display:block}.pet-avatar-button:focus-visible{outline-offset:4px;outline:4px solid #799d977a}.pet-avatar-button--compact{width:min(100%,340px)}.pet-svg{width:100%;display:block;overflow:visible}.pet-breath{transform-origin:130px 215px;animation:3.4s ease-in-out infinite pet-breathe}.pet-decoration{transform-origin:50%}.pet-avatar-button:active .pet-breath{animation:.42s pet-bounce}.pet-svg--feed .pet-breath,.pet-svg--play .pet-breath{animation:.55s ease-in-out infinite alternate pet-happy-bounce}.pet-svg--pet .pet-breath{animation:.7s ease-in-out infinite alternate pet-sway}.pet-svg--rest .pet-breath{animation:2.4s ease-in-out infinite pet-sleep}.pet-treat{transform-origin:196px 155px;animation:1.15s ease-in-out infinite treat-nibble}.pet-play-ball{animation:1.2s ease-in-out infinite alternate ball-roll}.pet-hearts text{font-size:28px;animation:1.25s ease-out infinite heart-float}.pet-hearts text:nth-child(2){animation-delay:.35s}.pet-sleep-z{font-size:22px;font-weight:800;animation:1.8s ease-out infinite heart-float}@keyframes pet-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.018,.985)translateY(2px)}}@keyframes pet-bounce{0%,to{transform:translateY(0)scale(1)}45%{transform:translateY(-15px)scale(1.04,.97)}}@keyframes pet-happy-bounce{0%{transform:translateY(0)rotate(-1deg)}to{transform:translateY(-8px)rotate(1deg)}}@keyframes pet-sway{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}@keyframes pet-sleep{0%,to{transform:scaleY(.99)}50%{transform:scale(1.01,.965)translateY(5px)}}@keyframes treat-nibble{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-26px,8px)rotate(-14deg)}}@keyframes ball-roll{0%{transform:translate(0)rotate(0)}to{transform:translate(165px)rotate(360deg)}}@keyframes heart-float{0%{opacity:0;transform:translateY(12px)scale(.8)}35%{opacity:1}to{opacity:0;transform:translateY(-32px)scale(1.1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
