:root{font-family:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;color:#452e34;background:#f8f7f2;font-synthesis:none;--ink:#452e34;--muted:#9c7780;--green:#763948;--mint:#eee2e5;--line:#e8dfe1;--coral:#e98667;--paper:#fffefa}
*{box-sizing:border-box}body{margin:0}button,a,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{cursor:pointer}button{color:inherit}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #e0a780;outline-offset:4px}button svg,a svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin:0}button,a,select{touch-action:manipulation}img{display:block;max-width:100%;height:auto}::selection{background:#ecd6db}button:not(:disabled),a{transition:background .18s,color .18s,box-shadow .18s,transform .18s}.skip-link{position:fixed;left:16px;top:-60px;z-index:100;background:white;padding:12px;border-radius:10px}.skip-link:focus{top:12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:216px;background:#f3e9ec;border-right:1px solid #e7dbde;display:flex;flex-direction:column;padding:36px 20px 20px;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:0 2px;font-size:22px;letter-spacing:-1px;font-weight:750}.brand-mark{display:grid;place-items:center;width:42px;height:46px;border:1.5px solid #b48792;border-radius:14px;color:#76414e;background:#eddce0;transform:rotate(-5deg)}.brand-mark svg{transform:rotate(5deg)}.brand-light{font-weight:400}.brand small{display:block;font-size:7px;letter-spacing:1.6px;font-weight:600;margin-top:5px;color:#9a737d}.nav-label{font-size:9px;letter-spacing:1.7px;color:#a8878f;margin:53px 14px 17px}.sidebar nav{display:grid;gap:9px}.nav-item{display:flex;align-items:center;gap:12px;padding:13px 15px;font-size:12px;font-weight:600;color:#966e78;border-radius:10px;min-height:47px}.nav-item:hover{background:#eee0e3;color:#6b3c48}.nav-item.active{background:#e8d5da;color:#613742}.nav-item.active:before{content:"";width:3px;height:18px;background:#98717b;border-radius:3px;position:absolute;left:20px}.nav-count{margin-left:auto;display:grid;place-items:center;min-width:21px;height:21px;background:#fffefa99;border-radius:6px;font-size:10px}.sidebar-note{margin-top:auto;text-align:center;padding:38px 11px 35px}.note-doodle{position:relative;display:inline-block;color:#ad8a93;transform:rotate(-12deg);margin-bottom:12px}.note-doodle i{position:absolute;right:-13px;top:-8px;font-style:normal;font-size:20px;color:#cea078}.sidebar-note p{font-family:Georgia,serif;font-size:16px;line-height:1.5;color:#98717b;font-style:italic}.sidebar-note>span:last-child{font-size:7px;letter-spacing:2px;color:#b0939a;display:block;margin-top:17px}.guest{display:flex;align-items:center;gap:10px;padding:17px 7px 0;border-top:1px solid #e4d6da}.guest-avatar,.avatar-button{background:#e7d9dc;border:1px solid #decdd1;display:grid;place-items:center;border-radius:50%;width:36px;height:36px;color:#88636c}.guest strong{display:block;font-size:11px;font-weight:600}.guest small{display:block;font-size:9px;color:#a6858d;margin-top:4px}.online-dot{width:5px;height:5px;background:#b18993;border-radius:50%;margin-left:auto}.workspace{margin-left:216px}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{display:flex;gap:15px;font-size:11px;align-items:center}.breadcrumb>span:first-child{color:#a98991}.breadcrumb strong{font-weight:500}.slash{color:#cbb6bb}.top-actions{display:flex;gap:19px;align-items:center}.save-status{display:flex;gap:7px;align-items:center;font-size:10px;color:#a27e87}.save-status svg{stroke:#a57e88}.language-button{background:transparent;font-size:11px;padding:8px;color:#805d66}.avatar-button{width:32px;height:32px}main{max-width:1400px;margin:auto;padding:36px 42px 0}.hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:1px 0 30px}.eyebrow{font-size:9px;font-weight:650;letter-spacing:1.65px;color:#9c7680;line-height:1.6}.hero>.eyebrow,.hero .eyebrow{margin-bottom:11px}.tiny-spark{color:#c89a68;font-size:14px}.hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(31px,3.2vw,46px);line-height:1.14;letter-spacing:-1.8px;white-space:normal}.hero h1 em{color:#956d77;font-weight:400}.hero-sub{font-size:12px;color:#a07b84;line-height:1.7;margin-top:13px}.free-badge{flex-shrink:0;display:flex;gap:7px;align-items:center;background:#f2e6e9;padding:9px 12px;border-radius:7px;color:#86606a;font-size:10px;border:1px solid #e9dcdf}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:23px;align-items:start}.game-card{background:var(--paper);border:1px solid #e6dcde;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px #543d4304}.machine-heading{display:flex;align-items:center;justify-content:space-between;padding:19px 23px 18px}.machine-heading .eyebrow{font-size:8px;letter-spacing:1.45px;color:#aa8991}.machine-heading h2{font-family:Georgia,serif;font-size:22px;font-weight:400;letter-spacing:-.5px;margin-top:3px}.little-star{color:#bd8b97;font-family:serif;font-size:22px;margin-left:7px;vertical-align:middle}.machine-tools{display:flex;gap:6px}.icon-button{display:grid;place-items:center;width:31px;height:31px;background:transparent;border:1px solid #e9dfe2;border-radius:8px;color:#a88890}.icon-button:hover{background:#f3e9ec;color:#6f5158}.canvas-wrap{position:relative;background:#ecd9de;border-block:1px solid #e2d3d7;overflow:hidden;display:grid;place-items:center}.canvas-wrap canvas{display:block;width:min(100%,600px);aspect-ratio:670/540;height:auto;user-select:none}.stage-status{position:absolute;top:18px;left:21px;display:flex;align-items:center;gap:6px;font-size:9px;background:#fffef099;padding:7px 9px;border-radius:20px;color:#87616b;z-index:1}.stage-status i{width:5px;height:5px;border-radius:50%;background:#a37883}.is-busy .stage-status i{background:#d39266}.stage-number{position:absolute;right:22px;top:23px;font-size:8px;letter-spacing:2px;color:#a9858e}.stage-bottom{position:absolute;bottom:12px;left:23px;right:23px;display:flex;justify-content:space-between;align-items:center;color:#a6838c;font-size:8px}.stage-bottom>span:first-child{display:flex;align-items:center;gap:7px}.stage-bottom>span:last-child{font-size:20px}.control-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 23px 14px}.grab-controls{display:flex;flex-direction:column;align-items:center;gap:9px}.grab-button{min-width:184px;display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 19px;border-radius:11px;color:#fff9ec;background:#e88b6d;box-shadow:0 4px 0 #cf755c;font-size:12px;font-weight:600;white-space:nowrap}.grab-button:hover:not(:disabled){background:#e07f60;transform:translateY(-1px);box-shadow:0 5px 0 #cf755c}.grab-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #cf755c}.grab-button:disabled{opacity:.68}.key-hint{display:flex;gap:6px;align-items:center;color:#b4989f;font-size:8px}kbd{font-family:inherit;border:1px solid #e7dcdf;background:#f9f2f4;border-radius:3px;padding:0px 8px;line-height:13px;color:#b09199}.game-footnote{display:flex;justify-content:center;align-items:center;gap:6px;color:#ad8d95;font-size:8px;letter-spacing:.3px;padding:0 16px 14px}.play-aside{display:grid;gap:18px}.collection-preview{background:#fffefa;border:1px solid #e7dcdf;border-radius:14px;padding:23px 21px 21px}.card-eyebrow{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:550;color:#89636d}.card-eyebrow svg{color:#b0939a}.progress-heading{display:flex;align-items:baseline;justify-content:space-between;margin-top:19px}.progress-heading>span:first-child strong{font-family:Georgia,serif;font-size:35px;font-weight:400;color:#704d56}.progress-heading>span:first-child>span{font-size:16px;color:#bda5ab;font-weight:300}.progress-heading>span:last-child{font-size:9px;color:#a88890}.progress-track{height:4px;background:#f0e5e8;border-radius:10px;overflow:hidden;margin-top:11px}.progress-track span{display:block;height:100%;background:#b38b95;border-radius:10px;transition:width .4s}.mini-friends{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:19px 0}.mini-friend{height:64px;background:#f5edef;border-radius:10px;position:relative;display:flex;justify-content:center;padding:3px 5px}.mini-friend img{width:48px;height:55px;opacity:.42;filter:grayscale(.75)}.mini-friend.owned{background:#f3e5e9}.mini-friend.owned img{opacity:1;filter:none}.mini-friend>span{position:absolute;right:4px;bottom:4px;color:#c5b0b5;display:grid;place-items:center}.mini-friend.owned>span{background:#a47682;color:white;border-radius:50%;width:14px;height:14px}.mini-friend:hover{background:#eddfe2}.text-link{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:#87616a;font-weight:500;background:none;padding:0}.text-link:hover{color:#5e343e}.collection-preview>.text-link{border-top:1px solid #f0e6e9;padding-top:16px}.tip-card{background:#f1eee0;border:1px solid #eae5d4;border-radius:14px;padding:22px;position:relative;overflow:hidden}.tip-icon{color:#b49b69;display:block;margin-bottom:13px}.tip-card h3{font-family:Georgia,serif;font-size:20px;line-height:1.3;font-weight:400;color:#827451;margin-bottom:10px}.tip-card p{font-size:10px;line-height:1.9;color:#a09476;max-width:180px}.tip-card .text-link{justify-content:flex-start;color:#9c8b67;margin-top:17px;font-size:9px}.tip-doodle{position:absolute;right:18px;top:30px;color:#d5c6a2;font-size:39px;transform:rotate(15deg)}.quiet-note{display:flex;gap:10px;padding:3px 9px;color:#b89ca3}.quiet-note>svg{flex-shrink:0;margin-top:3px}.quiet-note p{font-size:9px;line-height:1.8;color:#b09299}.friends-section{margin-top:33px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px;gap:15px}.section-heading .eyebrow{font-size:8px;margin-bottom:6px}.section-heading h2{font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:-.5px}.section-heading>span{font-size:11px;color:#b09299}.series-label{font-size:9px!important;letter-spacing:2px}.friend-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.friend-card{padding:12px 10px 17px;background:#fffefa;border:1px solid #e8dee0;border-radius:12px;position:relative;text-align:center;overflow:hidden}.friend-card:before{content:"";position:absolute;top:34px;left:50%;transform:translateX(-50%);width:76px;height:76px;border-radius:50%;background:var(--toy-bg);opacity:.7}.friend-card:hover{transform:translateY(-4px);box-shadow:0 8px 19px #7f5c650c;border-color:#d8c1c7}.friend-number{position:absolute;top:11px;left:12px;font-family:Georgia,serif;font-size:9px;color:#c8b4b9}.friend-art{height:110px;width:98px;object-fit:contain;margin:0 auto 7px;position:relative}.friend-card strong{display:block;font-size:12px;letter-spacing:.1px;font-weight:550}.friend-card small{display:block;font-size:8px;color:#aa8991;margin-top:5px}.owned-check{position:absolute;right:10px;top:10px;display:grid;place-items:center;background:#eddde1;border-radius:50%;height:17px;width:17px;color:#a07983}.page-footer{max-width:1400px;margin:30px auto 0;padding:21px 42px 25px;display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#b3979e;gap:20px;border-top:1px solid #ebe2e4}.page-footer>span:first-child{display:flex;align-items:center;gap:7px}.mobile-nav{display:none}.save-notice{padding:12px 16px;margin-bottom:20px;border-radius:9px;background:#fff0d9;color:#97653f;font-size:12px;line-height:1.6}
/* A small room for all the friends you find. */
.shelf-room{max-width:950px;margin:0 auto;background:#eeeadd;border:1px solid #e0decf;border-radius:18px;position:relative;overflow:hidden;padding:27px 60px 22px;background-image:repeating-linear-gradient(90deg,transparent,transparent 59px,#a7a98c0b 60px)}.room-header{text-align:center;margin-bottom:17px;position:relative}.room-header .eyebrow{font-size:8px;color:#a5a080}.room-header h2{font-family:Georgia,serif;font-weight:400;font-size:24px;color:#786e50;margin-top:7px}.room-flower{position:absolute;right:30px;top:10px;color:#bcb68a;font-size:42px}.shelf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px 0}.shelf-cell{position:relative;border-bottom:11px solid #d0b795;box-shadow:0 7px 9px -6px #96826050}.shelf-cell:after{content:"";position:absolute;bottom:-12px;height:3px;left:0;right:0;background:#b99b79}.shelf-spot{height:177px;width:100%;background:transparent;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:12px}.shelf-spot:hover{background:#fffdf033}.shelf-spot.awaiting:hover{background:#ffffff55}.shelf-spot.awaiting .empty-outline{border-color:#9c707b;color:#9c707b}.shelf-toy{height:145px;width:129px;object-fit:contain;margin-bottom:-8px;filter:drop-shadow(0 6px 5px #69532f16)}.shelf-name{font-size:10px;color:#a49775;display:block;margin-top:5px}.filled .shelf-name{color:#796b4e}.empty-outline{display:grid;place-items:center;border:1px dashed #c7c3ae;border-radius:45% 45% 40% 40%;width:70px;height:75px;color:#c7c3ae;margin-bottom:23px}.remove-toy{position:absolute;top:10px;right:18px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fffcef9c;color:#a59275;opacity:0}.shelf-cell:hover .remove-toy,.remove-toy:focus-visible{opacity:1}.room-caption{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;color:#a29c82;padding-top:29px}.garden-room{background-color:#dce9d4;background-image:radial-gradient(circle at 10% 20%,#eff4b8 0 6px,transparent 7px),radial-gradient(circle at 90% 35%,#f6e8ab 0 7px,transparent 8px),repeating-linear-gradient(90deg,transparent,transparent 59px,#81a97e12 60px)}.garden-room .room-flower{color:#91af76}.shelf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0}.shelf-toolbar>p{display:flex;align-items:center;gap:6px;font-size:11px;color:#9e7882}.shelf-toolbar>div{display:flex;gap:7px;flex-wrap:wrap}.small-button{display:flex;gap:6px;align-items:center;border:1px solid #e6d8db;background:#fffefa;padding:9px 11px;border-radius:7px;font-size:10px;color:#8f6872}.small-button:hover:not(:disabled),.small-button.chosen{background:#eddbdf}.collection-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.collection-card{padding:0;background:#fffefa;border:1px solid #e8dee0;border-radius:12px;overflow:hidden;text-align:left}.collection-card.selected{border-color:#a3737f;box-shadow:0 0 0 2px #b18b9433}.collection-card:hover{transform:translateY(-3px)}.collection-art{height:150px;position:relative;background:var(--toy-bg);display:flex;justify-content:center;align-items:center}.collection-art img{height:134px;width:120px;object-fit:contain}.unowned .collection-art img{opacity:.55;filter:saturate(.6)}.collection-quantity{position:absolute;right:8px;top:8px;font-size:10px;background:#ffffffaa;color:#9b747e;padding:4px 6px;border-radius:5px}.collection-card-text{padding:15px}.collection-card h3{font-size:14px;font-weight:500}.collection-card p{font-size:9px;color:#aa8991;margin-top:6px;line-height:1.5;min-height:27px}.collection-card-text>span{display:flex;align-items:center;gap:4px;color:#966f79;font-size:10px;border-top:1px solid #f0e8ea;padding-top:10px;margin-top:10px}.unowned .collection-card-text>span{color:#b89ea4}.empty-callout{text-align:center;padding:8px 0 16px}.empty-callout p{font-size:13px;color:#a17d86;margin-bottom:15px}.empty-callout .primary-button{display:inline-flex}
/* Preferences are deliberately quiet, and local. */
.settings-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:start}.settings-card,.data-card{border:1px solid #e8dde0;border-radius:14px;background:#fffefa}.settings-card{padding:7px 25px}.setting-row{padding:26px 0;display:flex;justify-content:space-between;gap:22px;align-items:center;border-bottom:1px solid #f0e6e9}.setting-row:last-child{border-bottom:0}.setting-row h3{font-size:13px;font-weight:550}.setting-row p{font-size:11px;line-height:1.8;color:#a4828a;margin-top:7px}.setting-row select{padding:10px 12px;border:1px solid #e4d3d7;border-radius:7px;color:#815e67;background:#f8f1f3;font-size:11px}.toggle{width:42px;height:25px;border-radius:20px;background:#e7dbde;padding:3px;flex-shrink:0}.toggle>span{display:block;width:19px;height:19px;background:#fffefa;border-radius:50%;box-shadow:0 1px 4px #74545c22;transition:transform .2s}.toggle.on{background:#ad848e}.toggle.on>span{transform:translateX(17px)}.data-card{padding:27px}.data-icon{display:block;color:#af8c95;margin-bottom:19px}.data-card h2{font:400 24px/1.3 Georgia,serif;letter-spacing:-.4px}.data-card>p{font-size:12px;color:#a5828b;line-height:1.9;margin:13px 0 18px}.privacy-note{display:flex;align-items:center;gap:8px;font-size:10px;color:#a07b84;line-height:1.8}.privacy-note svg{flex-shrink:0}.data-card hr{border:0;border-top:1px solid #ecdfe2;margin:25px 0}.data-card h3{font-weight:500;font-size:13px}.danger-button{display:inline-flex;gap:8px;align-items:center;justify-content:center;background:#faf0e9;color:#b87864;border:1px solid #f0dfd3;border-radius:8px;padding:11px 15px;font-size:11px}.danger-button:hover{background:#f6e4db}
/* Dialogs and lightweight feedback. */
dialog{padding:35px;border:1px solid #e9dde0;border-radius:21px;background:#fffef9;color:var(--ink);width:min(430px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 20px 90px #422d3229;text-align:center}dialog::backdrop{background:#3f262c55;backdrop-filter:blur(5px)}.modal-close{position:absolute;right:15px;top:15px;z-index:1}.modal-symbol{color:#a77e88;display:grid;place-items:center;width:66px;height:66px;border-radius:20px;background:#f3e6e9;margin:5px auto 22px}dialog h2{font:400 30px/1.25 Georgia,serif;letter-spacing:-.7px;margin:9px 0 14px}.modal-description{font-size:12px;line-height:1.9;color:#a17e87;margin:0 auto 25px;max-width:325px}.modal-description strong{font-weight:550;color:#875e68}.primary-button{display:flex;align-items:center;justify-content:center;gap:10px;background:#9d747e;color:#fffdf1;border:1px solid #966b76;border-radius:9px;padding:13px 18px;font-size:12px;font-weight:550}.primary-button:hover{background:#8e616c}.secondary-button{display:flex;align-items:center;justify-content:center;background:#f4ecee;color:#9f7a83;border-radius:9px;padding:13px 17px;font-size:12px;margin-top:10px}.secondary-button:hover{background:#efdfe3}.full{width:100%}.help-steps{display:grid;gap:20px;text-align:left;margin:29px 0}.help-steps>div{display:flex;gap:14px}.help-steps>div>span{font-size:10px;color:#b5969e;border:1px solid #e8d8dc;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;flex-shrink:0}.help-steps h3{font-size:13px;font-weight:550;margin-bottom:6px}.help-steps p{font-size:11px;line-height:1.8;color:#a4828a}.celebration-art,.profile-art{position:relative;width:190px;height:190px;display:grid;place-items:center;margin:5px auto 26px;border-radius:50%;background:var(--toy-bg)}.celebration-art>img,.profile-art>img{width:162px;height:182px;object-fit:contain}.celebration-art>img{animation:welcome .6s ease both}.confetti{position:absolute;color:#c7a776;font-size:30px;animation:welcome .7s ease both}.confetti.one{left:-20px;top:14px;transform:rotate(-10deg)}.confetti.two{right:-16px;top:64px;font-size:22px}.confetti.three{bottom:4px;left:7px;font-size:20px;color:#b18a94}.miss-art{display:flex;align-items:center;justify-content:center;position:relative;width:130px;height:130px;border-radius:50%;background:#f2e5e8;color:#ad8a93;margin:5px auto 25px}.miss-art>span{font-size:35px;position:absolute;right:-3px;bottom:13px;color:#d0b18b}.reset-modal .danger-button{margin-top:10px}.complete-banner{font-size:11px;padding:11px;border:1px solid #e7c8d0;background:#f3e3e7;color:#936a74;border-radius:7px;margin-bottom:18px}.modal-save-error{font-size:11px;line-height:1.7;color:#aa7354;margin-bottom:18px}#toast{position:fixed;bottom:27px;left:calc(50% + 108px);transform:translate(-50%,15px);background:#5b3841ed;color:#fffcef;border:1px solid #704d56;border-radius:10px;padding:12px 19px;font-size:12px;max-width:calc(100% - 30px);z-index:100;box-shadow:0 8px 30px #47323720;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}@keyframes welcome{from{opacity:0;scale:.84;translate:0 9px}to{opacity:1;scale:1;translate:0 0}}[data-motion="reduced"] *,[data-motion="reduced"] *:before,[data-motion="reduced"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

/* Strawberry cream: the approved design, with live game controls. */
:root{--ink:#542537;--muted:#906f7b;--green:#a34364;--mint:#ffe0e7;--line:#f4e2e5;--coral:#f87997;--paper:#fffcf8;color:var(--ink);background:#fff9f6;font-family:"Avenir Next","PingFang SC","Microsoft YaHei",sans-serif}
body{background:radial-gradient(ellipse at 83% 40%,#fff2ef88,transparent 60%)}
.sidebar{width:210px;padding:28px 16px 18px;background:linear-gradient(165deg,#fff5f2,#fffaf5 70%);border-color:#f5e3e6}
.brand{flex-direction:column;gap:1px;text-align:center;font-size:27px;letter-spacing:-1.5px}.brand-mark{background:none;border:0;transform:none;height:48px;color:#cf5479;width:60px}.brand-mark svg{transform:none}.brand-light{font-weight:750}.brand small{font-size:11px;font-weight:400;letter-spacing:1px;line-height:1.7;color:#8e737a;max-width:144px;margin:7px auto 0}.nav-label{margin:35px 15px 12px;color:#a17989;font-size:9px}.sidebar nav{gap:12px}.nav-item{font-size:15px;color:#694653;padding:18px 17px;gap:15px}.nav-item svg{width:25px;height:25px}.nav-item.active{background:#ffdae3;color:#793447}.nav-item.active:before{display:none}.nav-item:hover{background:#ffeaf0;color:#913d5b}.sidebar-note p{color:#b1808e;font-size:17px}.guest{border:1px solid #f5e5e6;border-radius:14px;background:#fffefb;padding:15px 10px}.guest-avatar,.avatar-button{background:#f5e0e6;border-color:#f2d5e0;color:#a55374}.guest small{color:#907c81}.online-dot{background:#bc87ca}.workspace{margin-left:210px}.topbar{height:47px;border:0;padding:0 30px}.breadcrumb{font-size:10px;color:#ad8794}.top-actions{gap:13px}.save-status{background:#fce8ed;border-radius:24px;padding:7px 12px;color:#805466;font-size:11px}.save-status svg{color:#b888c8;stroke:currentColor}.language-button{color:#78394f;font-size:12px}.avatar-button{display:none}main{padding:4px 26px 0;max-width:1600px}.hero{margin-bottom:24px;gap:20px}.hero .eyebrow{display:none}.hero h1{font-family:"Arial Rounded MT Bold","Avenir Next","PingFang SC",sans-serif;font-weight:800;font-size:clamp(34px,3.3vw,54px);letter-spacing:-1.8px;line-height:1.25}.hero h1 em{font-style:normal;font-weight:800;color:#713148;display:inline}.hero-sub{font-size:17px;color:#886f77;margin-top:8px}.free-badge{background:transparent;border:0;color:#b37689;font-size:12px;font-style:italic}.play-layout{grid-template-columns:minmax(0,1fr) clamp(240px,23vw,320px);gap:16px}.game-card{border:1px solid #f3dfdf;border-radius:20px;padding:0 16px 12px;box-shadow:0 12px 35px #cb8e9b08;background:#fffcf8}.machine-heading{padding:17px 2px 15px;gap:10px}.machine-title{display:flex;align-items:center;gap:12px;min-width:0}.club-mascot{display:block;width:43px;height:49px;flex-shrink:0}.club-mascot img{width:100%;height:100%;object-fit:contain}.machine-heading .eyebrow{display:none}.machine-heading h2{font-family:inherit;font-weight:750;font-size:25px;letter-spacing:-.5px;margin:0}.little-star{color:#d1a8c9;font-size:18px}.machine-subtitle{font-size:12px;color:#977683;line-height:1.6;margin-top:3px}.machine-tools{gap:7px}.icon-button{width:35px;height:35px;border-radius:50%;color:#ac78bd;border-color:#f1dbe4;background:#fffdf9}.icon-button:hover{background:#fbe6ef;color:#8c4b9f}.canvas-wrap{background:#ffe1e3;border:1px solid #f2bec9;border-radius:13px 13px 0 0;overflow:hidden}.canvas-wrap canvas{width:100%;aspect-ratio:670/430;display:block;height:auto}.stage-status{top:13px;left:13px;color:#956579;background:#fff9f3dc;font-size:9px;padding:6px 9px}.stage-status i{background:#b28bc6}.stage-number{color:#b27987;font-size:9px;right:14px;top:20px}.stage-bottom{display:none}.control-panel{position:relative;border:1px solid #edb7c2;border-top:3px solid #ffeef1;border-radius:0 0 13px 13px;background:linear-gradient(140deg,#ffe3e4 0%,#f8b7c5 75%,#f8c7ce);padding:23px 26px 19px;box-shadow:inset 0 3px 2px #fff8,0 5px 0 #dca2ae;gap:20px;min-height:135px}.grab-controls{min-width:42%}.grab-button{width:100%;min-width:170px;padding:19px 20px;border:1px solid #e47392;border-radius:23px;background:linear-gradient(#ff9fb6,#fa7999);box-shadow:inset 0 3px 2px #ffe1eaaa,inset 2px 0 3px #ffe9f1,0 5px 0 #cb6684,0 9px 15px #b8647b22;color:white;font-size:21px;font-weight:750;gap:12px}.grab-button:hover:not(:disabled){background:linear-gradient(#ffabc4,#f46b91);box-shadow:inset 0 2px 2px #ffe1eaaa,0 6px 0 #c36182}.grab-button:active:not(:disabled){box-shadow:inset 0 2px 2px #ffe1eaaa,0 1px 0 #c36182}.grab-button>svg:last-child{display:none}.key-hint{color:#955b6f;font-size:10px}kbd{background:#ffe8ed;border-color:#efc7d2;color:#94536a}.game-footnote{padding:16px 4px 0;font-size:10px;color:#aa7989}.play-aside{gap:14px}.collection-preview{padding:20px 17px;background:#fffcf8;border-color:#f2e0e2;border-radius:18px;position:relative}.card-eyebrow{font-size:19px;font-weight:750;color:#633448;padding-right:62px;gap:8px}.card-eyebrow svg{color:#eb95ad;width:24px;height:24px}.progress-heading{position:absolute;right:18px;top:19px;margin:0}.progress-heading>span:first-child strong{font-family:inherit;font-weight:600;font-size:20px;line-height:1.3;color:#633448}.progress-heading>span:first-child>span{font-size:14px;color:#a78998}.progress-heading>span:last-child{display:none}.progress-track{height:3px;margin-top:17px;background:#f7e8eb}.progress-track span{background:#e5a2bb}.mini-friends{margin:17px 0 20px;gap:23px 8px}.mini-friend{height:auto;aspect-ratio:4/5;padding:4px 3px 0;background:linear-gradient(#f7efed,#fff7f2);border:1px solid #f3e6e5;border-radius:12px;margin-bottom:17px}.mini-friend img{width:100%;height:100%;object-fit:contain;opacity:.65;filter:grayscale(.8)}.mini-friend.owned{background:linear-gradient(#ffe9e4,#fff6ec)}.mini-friend.owned img{opacity:1;filter:none}.mini-friend strong{position:absolute;top:calc(100% + 5px);left:-5px;right:-5px;font-size:11px;font-weight:500;white-space:nowrap;color:#825e70}.mini-friend.owned>span{background:#c891b4}.mini-friend:hover{background:#fce7ee}.collection-preview>.text-link{border-color:#f5e4e7;padding-top:17px;font-size:12px;color:#6c3f56}.tip-card{padding:22px 20px 0;background:#fffbf5;border-color:#f2e0e2;border-radius:18px}.tip-icon{color:#e891ac;margin-bottom:10px}.tip-card h3{font-family:inherit;font-size:20px;font-weight:750;color:#67354a}.tip-card p{font-size:12px;line-height:1.8;color:#93727f;max-width:none}.tip-card .text-link{color:#a36584;font-size:11px;margin-top:12px}.tip-illustration{position:relative;height:150px;margin-top:7px;overflow:hidden}.tip-illustration img{position:absolute;left:50%;transform:translateX(-50%);width:130px;height:147px;top:62px}.tip-claw{position:absolute;left:50%;top:0;transform:translateX(-50%);color:#9c7e91}.tip-ring{position:absolute;left:50%;top:57px;width:43px;height:10px;border:2px solid #c190de;border-radius:50%;transform:translateX(-50%);box-shadow:0 0 6px #dbb5ee}.quiet-note{color:#b68dbe}.quiet-note p{color:#a68593}.friends-section{margin-top:30px}.section-heading h2{font-family:inherit;font-weight:700}.friend-card{border-color:#f1dfe5;background:#fffdfa}.friend-card small{color:#937784}.friend-card:hover{border-color:#e3adbf}.page-footer{border-color:#f3e3e7;color:#a88192}.settings-card,.data-card{border-color:#f1dfe5}.data-card h2,dialog h2,.room-header h2{font-family:inherit;font-weight:650}.setting-row h3{font-size:14px}.setting-row p,.data-card>p,.modal-description,.help-steps p{color:#896a78}.primary-button{background:#be6489;border-color:#b75b80}.primary-button:hover{background:#a74f74}.toggle.on{background:#c27d9d}.shelf-room:not(.garden-room){background-color:#fae9e5;border-color:#eed7de}.shelf-room:not(.garden-room) .room-header h2{color:#915972}.remove-toy{opacity:1}.mobile-nav{background:#fff8f7f5;border-color:#f3dce5}.mobile-nav .nav-item.active{color:#a34d76}.mobile-nav .nav-item.active>svg{background:#ffe0ec;box-shadow:0 0 0 5px #ffe0ec}.mobile-nav .nav-count{background:#f4d7e6}
@media(min-width:1550px){main{padding-inline:28px}.topbar{padding-inline:30px}.hero{margin-bottom:26px}.machine-heading{padding-block:20px}.machine-heading h2{font-size:28px}.collection-preview{padding:23px 20px}.mini-friends{gap:27px 9px;margin-bottom:25px}.mini-friend strong{font-size:13px}.tip-illustration{height:177px}.tip-illustration img{width:150px;height:169px}.control-panel{padding:25px 40px}.grab-button{font-size:24px}.grab-controls{min-width:44%}}
@media(min-width:761px) and (max-width:1190px){.sidebar{width:170px;padding-inline:12px}.brand{font-size:24px}.nav-item{font-size:13px;padding-inline:10px;gap:10px}.nav-item>span:not(.nav-count){white-space:nowrap}.workspace{margin-left:170px}main{padding-inline:20px}.topbar{padding-inline:20px}.hero h1{font-size:37px}.hero-sub{font-size:13px}.free-badge{display:none}.play-layout{grid-template-columns:minmax(0,1fr) 220px;gap:13px}.game-card{padding-inline:10px}.machine-heading h2{font-size:20px}.club-mascot{width:31px;height:37px}.machine-title{gap:7px}.machine-subtitle{font-size:10px}.machine-tools{gap:4px}.machine-tools .icon-button{width:29px;height:29px}.machine-heading .little-star{display:none}.control-panel{padding:17px 12px;gap:10px;min-height:120px}.grab-button{min-width:135px;font-size:16px;padding:16px 10px}.grab-button>svg{display:none}.key-hint{font-size:9px}.collection-preview{padding:18px 13px}.card-eyebrow{font-size:16px}.card-eyebrow svg{width:19px}.progress-heading{right:13px;top:18px}.mini-friend strong{font-size:10px}.tip-card{padding:17px 15px 0}.tip-card h3{font-size:17px}.tip-card p{font-size:11px}.tip-illustration{height:123px}.friend-strip{gap:8px}.friend-card{padding-inline:4px}.friend-art{width:85px;height:100px}.friend-card small{font-size:8px}.collection-grid{grid-template-columns:repeat(3,1fr)}.shelf-toolbar{flex-direction:column;align-items:flex-start}#toast{left:calc(50% + 85px)}}
@media(min-width:761px) and (max-width:970px){.play-layout{grid-template-columns:minmax(0,1fr)}.play-aside{grid-template-columns:1fr 1fr}.quiet-note{grid-column:1/-1}.tip-illustration{height:134px}.friend-strip{grid-template-columns:repeat(3,1fr)}.settings-layout{grid-template-columns:1fr}.hero h1{font-size:34px}.collection-preview{padding:20px}.mini-friend{max-height:90px}.mini-friends{gap:21px 10px}.shelf-room{padding-inline:25px}}
@media(max-width:760px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:51px;padding:0 16px}.breadcrumb{font-size:10px;gap:8px}.breadcrumb>span:first-child{color:#8f4868;font-weight:700;font-size:13px}.breadcrumb .slash,.breadcrumb strong{display:none}.top-actions{gap:5px}.save-status{font-size:9px;padding:6px 8px;gap:4px}.language-button{font-size:11px;padding:8px}.hero{margin-bottom:19px}.hero h1{font-size:34px;letter-spacing:-1.2px}.hero-sub{font-size:12px;margin-top:7px}.hero>.free-badge{display:none}main{padding:10px 14px 0;max-width:620px}.play-layout{display:flex;flex-direction:column;gap:18px}.game-card{width:100%;padding:0 9px 9px;border-radius:16px}.machine-heading{padding:13px 2px;gap:5px}.machine-title{gap:6px}.machine-heading h2{font-size:20px}.machine-subtitle{font-size:9px}.club-mascot{width:29px;height:36px}.little-star{display:none}.machine-tools{gap:4px}.machine-tools .icon-button{width:29px;height:29px}.machine-tools .icon-button svg{width:16px}.stage-status{font-size:7px;left:8px;top:8px;padding:4px 7px}.stage-number{font-size:7px;right:9px;top:14px}.canvas-wrap{border-radius:9px 9px 0 0}.control-panel{padding:16px 10px 12px;gap:9px;min-height:109px;border-radius:0 0 9px 9px}.grab-controls{min-width:46%;gap:8px}.grab-button{min-width:132px;font-size:18px;padding:15px 11px;border-radius:18px}.grab-button svg{display:none}.key-hint{font-size:8px}.game-footnote{font-size:8px;padding-top:13px}.play-aside{width:100%;grid-template-columns:1fr 1fr;gap:11px}.collection-preview{padding:15px 11px}.card-eyebrow{font-size:13px;gap:5px;padding-right:40px}.card-eyebrow svg{width:16px;height:16px}.progress-heading{right:11px;top:15px}.progress-heading>span:first-child strong{font-size:14px}.progress-heading>span:first-child>span{font-size:10px}.progress-track{margin-top:12px}.mini-friends{gap:21px 4px;margin:14px 0 18px}.mini-friend{padding:2px 0;border-radius:7px;margin-bottom:9px}.mini-friend strong{font-size:8px}.mini-friend>span{right:1px;bottom:1px}.mini-friend.owned>span{width:11px;height:11px}.collection-preview>.text-link{font-size:10px;padding-top:13px}.tip-card{padding:15px 13px 0}.tip-icon{margin-bottom:7px}.tip-icon svg{width:20px}.tip-card h3{font-size:15px;line-height:1.5}.tip-card p{font-size:10px;line-height:1.6}.tip-card .text-link{font-size:9px;margin-top:9px}.tip-illustration{height:87px}.tip-claw svg{width:37px;height:37px}.tip-ring{top:38px;width:30px;height:7px}.tip-illustration img{top:45px;width:88px;height:99px}.quiet-note{display:none}.friend-strip{grid-template-columns:repeat(3,1fr);gap:9px}.friend-card{padding:10px 5px 14px}.friend-art{width:90px;height:105px}.friend-card small{font-size:8px}.section-heading h2{font-size:21px}.page-footer{padding:20px 16px 100px;max-width:620px;font-size:8px}.page-footer>span:last-child{max-width:100px;text-align:right;line-height:1.6}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:space-around;padding:8px 10px calc(9px + env(safe-area-inset-bottom));backdrop-filter:blur(14px);border-top:1px solid #f2dbe3}.mobile-nav .nav-item{flex-direction:column;gap:4px;font-size:10px;min-width:86px;padding:6px 15px;background:none;position:relative}.mobile-nav .nav-item svg{width:21px;height:21px}.mobile-nav .nav-item>span:not(.nav-count){margin-top:3px}.mobile-nav .nav-count{position:absolute;right:18px;top:1px;font-size:8px;width:16px;min-width:16px;height:16px;border-radius:50%}.shelf-room{padding:22px 12px 19px}.room-header h2{font-size:21px}.room-header .eyebrow{font-size:7px}.room-flower{right:4px;font-size:27px}.shelf-spot{height:140px}.shelf-toy{width:101px;height:114px}.remove-toy{right:3px;top:3px;width:23px;height:23px}.room-caption{font-size:9px;line-height:1.6}.shelf-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.shelf-toolbar>p{font-size:10px;line-height:1.7}.shelf-toolbar>div{gap:5px}.small-button{font-size:9px;padding:8px}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.collection-art{height:120px}.collection-art img{width:100px;height:113px}.collection-card-text{padding:12px 9px}.collection-card h3{font-size:13px}.collection-card p{font-size:8px}.settings-layout{grid-template-columns:1fr}.settings-card{padding:0 18px}.setting-row{padding-block:23px}.setting-row p{font-size:11px}.data-card{padding:23px}#toast{left:50%;bottom:96px;font-size:11px}dialog{padding:30px 24px}.save-notice{font-size:11px}}
@media(max-width:360px){.hero h1{font-size:30px}.topbar{padding-inline:12px}.save-status{font-size:8px}main{padding-inline:10px}.club-mascot{display:none}.machine-heading h2{font-size:19px}.machine-tools{gap:3px}.machine-tools .icon-button{width:27px;height:27px}.grab-button{min-width:119px;font-size:16px}.control-panel{padding-inline:8px}.play-aside{grid-template-columns:1fr}.tip-illustration{height:110px}.collection-preview{padding:18px}.mini-friend{max-height:100px}.card-eyebrow{font-size:17px}.mini-friend strong{font-size:11px}.progress-heading{top:20px;right:18px}.mini-friends{gap:23px 9px}.friend-art{width:80px;height:94px}.friend-card strong{font-size:11px}.friend-card small{font-size:7px}}
/* Approved candy-console design. Size from the machine, not the viewport. */
.game-card{container-type:inline-size}
.machine-console{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid #e8a8b2;border-top:3px solid #fff2ef;border-radius:0 0 14px 14px;background:linear-gradient(125deg,#ffe1db,#f6b6bd);box-shadow:inset 0 3px 2px #fff9,0 5px 0 #d99ba9;overflow:hidden}
.machine-console .control-panel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 20px;align-items:center;min-width:0;min-height:0;padding:17px 20px 12px;border:1px solid #edbac0;border-top:0;border-radius:0 0 28px 12px;background:linear-gradient(130deg,#ffebe5,#ffddd9 58%,#ffd7d5);box-shadow:inset 2px 2px 3px #fffdf4,inset -2px -3px 3px #e8a8ae55,0 3px 0 #f0b5b8}
.direction-controls{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0}
.direction-caption{text-align:center}
.direction-caption strong{display:block;font-size:13px;font-weight:750;letter-spacing:.2px}
.direction-caption small{display:none;color:#995d69;margin-top:4px;line-height:1.6;font-size:10px}
.candy-pad{--key-size:48px;display:grid;grid-template-columns:repeat(3,var(--key-size));grid-template-rows:repeat(3,calc(var(--key-size) * .86));gap:7px 5px;align-items:center;justify-items:center;isolation:isolate}
.direction-button{--key-top:#fff0f1;--key-bottom:#ffb5bf;--key-edge:#ce8596;--key-ink:#8e4b5c;position:relative;width:var(--key-size);height:calc(var(--key-size) * .86);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:3px;border:1px solid var(--key-edge);border-radius:29% / 34%;background:linear-gradient(145deg,var(--key-top),var(--key-bottom));box-shadow:inset 2px 3px 2px #fffdfacc,inset -2px -3px 3px #a563742b,0 5px 0 var(--key-edge),0 8px 8px #a9637836;color:var(--key-ink);touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .12s,box-shadow .12s,filter .12s}
.direction-button:before{content:"";position:absolute;inset:3px;border:1px solid #fff8;border-bottom-color:#fff2;border-radius:inherit;pointer-events:none}
.direction-button:after{content:"";position:absolute;top:7px;left:6px;width:4px;height:40%;border-radius:50%;background:linear-gradient(#fff,#fff0);pointer-events:none}
.direction-button svg{width:22px;height:22px;stroke-width:3;filter:drop-shadow(0 1px 0 #fff9)}
.direction-button span{font-size:10px;font-weight:750;line-height:1.1}
.direction-up{grid-area:1/2;--key-top:#ffe8e9;--key-bottom:#ffb3bd;--key-edge:#d58798;--key-ink:#984855}
.direction-left{grid-area:2/1;--key-top:#fff6c9;--key-bottom:#ffdc88;--key-edge:#d7a064;--key-ink:#785337}
.direction-right{grid-area:2/3;--key-top:#e7f8e8;--key-bottom:#b7dfc2;--key-edge:#90b29c;--key-ink:#466657}
.direction-down{grid-area:3/2;--key-top:#f4e8ff;--key-bottom:#d8b6ee;--key-edge:#b192c7;--key-ink:#795787}
.direction-button:hover:not(:disabled){filter:brightness(1.045);transform:translateY(-1px)}
.direction-button:active:not(:disabled),.direction-button.is-held:not(:disabled){transform:translateY(4px);box-shadow:inset 0 2px 4px #b66c8524,0 1px 0 var(--key-edge),0 2px 4px #a9637825;filter:saturate(1.12)}
.direction-button:focus-visible{outline:3px solid #b27bc7;outline-offset:5px}
.direction-button:disabled{opacity:.5;box-shadow:inset 0 1px 1px #fff9,0 3px 0 var(--key-edge)}
.pad-heart{grid-area:2/2;display:grid;place-items:center;width:34px;height:34px;pointer-events:none;background:none;color:#e989a0;filter:drop-shadow(0 3px 1px #bc75855c)}
.pad-heart svg{width:28px;height:28px;fill:#ff9ead;stroke:#e3859a;stroke-width:1.4;filter:drop-shadow(0 -1px 0 #fff)}
.machine-console .grab-controls{min-width:0;max-width:none;width:100%;gap:15px}
.machine-console .grab-button{width:100%;min-width:0;min-height:75px;padding:19px 8px;border:1px solid #e26680;border-radius:29px;color:#fffdf6;background:linear-gradient(160deg,#ff9bad,#ff728b 65%,#fa6884);box-shadow:inset 2px 3px 3px #fff1eebf,inset -2px -4px 3px #dd526466,0 6px 0 #cf607a,0 10px 12px #c36e8033;font-size:clamp(17px,2.2cqi,29px);font-weight:800;white-space:normal;line-height:1.4;text-shadow:0 1px 1px #de6f82}
.machine-console .grab-button:hover:not(:disabled){background:linear-gradient(160deg,#ffb0bd,#ff8199 65%,#fb6e88);transform:translateY(-1px);box-shadow:inset 2px 3px 3px #fff1eebf,0 7px 0 #cf607a,0 11px 12px #c36e8033}
.machine-console .grab-button:active:not(:disabled){transform:translateY(4px);box-shadow:inset 1px 2px 4px #bf48663d,0 2px 0 #cf607a}
.machine-console .key-hint{font-size:10px;color:#925763;gap:4px;text-align:center}
.machine-console kbd{background:#fff0eb;border-color:#edbbc1;color:#965b6f}
.console-signature{grid-column:1/-1;display:flex;align-items:center;gap:6px;color:#ac6077;font-size:18px;font-weight:750;letter-spacing:-.7px;margin-top:4px}
.console-signature svg{fill:#c17b9066}
.console-outlet{display:none}
@container(min-width:610px){
  .machine-console{grid-template-columns:minmax(0,1fr) 24%}
  .machine-console .control-panel{padding:15px 17px 12px;gap:12px 17px}
  .candy-pad{--key-size:54px}
  .console-outlet{display:flex;flex-direction:column;justify-content:center;gap:13px;padding:13px 12px 9px;border-left:2px solid #edb0b7;box-shadow:inset 2px 0 2px #fff7}
  .console-outlet p{text-align:center;margin:0 auto;max-width:115px;font-size:13px;line-height:1.7;color:#975866;letter-spacing:2px}
  .outlet-opening{height:79px;padding:8px;border:1px solid #cb8996;border-radius:18px;background:linear-gradient(145deg,#d99aa4,#ffcfce);box-shadow:inset 2px 2px 3px #af697c88,0 2px 1px #fff9}
  .outlet-opening span{display:block;position:relative;height:100%;border-radius:10px;background:linear-gradient(165deg,#623341,#a96874);box-shadow:inset 3px 5px 7px #582838,inset -3px -2px 4px #ca8d97;overflow:hidden}
  .outlet-opening span:after{content:"";position:absolute;inset:auto -10px -10px;height:23px;transform:perspective(60px) rotateX(28deg);background:linear-gradient(#935663,#c18b94);border-top:1px solid #613343}
  .outlet-signature{display:flex;align-items:center;justify-content:center;gap:6px;color:#aa6072}
  .outlet-signature small{font-size:7px;letter-spacing:.5px;line-height:1.5}
}
@container(min-width:830px){
  .direction-controls{flex-direction:row;gap:15px}
  .direction-caption{text-align:left;max-width:115px}
  .direction-caption strong{font-size:20px}
  .direction-caption small{display:block;font-size:11px}
  .candy-pad{--key-size:66px;gap:8px 6px}
  .direction-button svg{width:25px;height:25px}
  .direction-button span{font-size:13px}
  .machine-console .grab-button{min-height:87px;font-size:28px}
  .machine-console .key-hint{font-size:12px}
  .console-signature{font-size:22px}
  .outlet-opening{height:93px}
  .console-outlet p{font-size:15px}
}
@container(max-width:609px){
  .candy-pad{--key-size:52px}
  .machine-console .control-panel{gap:12px 18px;padding:16px 15px 10px}
  .console-signature{font-size:15px;margin-top:2px}
  .console-signature svg{width:19px;height:19px}
}
@container(max-width:340px){
  .candy-pad{--key-size:46px;grid-template-rows:repeat(3,44px);gap:6px 4px}
  .direction-button{height:44px}
  .machine-console .control-panel{padding:15px 10px 10px;gap:10px}
  .machine-console .grab-button{font-size:16px;min-height:70px;border-radius:23px}
  .machine-console .key-hint{font-size:8px;gap:2px}
  .machine-console kbd{padding-inline:4px}
  .direction-caption strong{font-size:12px}
}
.language-switch{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid #efd3dc;border-radius:20px;background:#fffaf7;flex-shrink:0}
.language-switch>span{color:#d7a7b8;font-size:11px}
.language-switch .language-button{min-width:38px;min-height:32px;padding:6px 9px;border-radius:16px;color:#9b6e80;font-size:12px;line-height:1.4}
.language-switch .language-button[aria-pressed="true"]{background:#fbdbe6;color:#733047;font-weight:750;box-shadow:inset 0 1px 1px #fff9}
.language-switch .language-button:hover{background:#ffe9ef}
@media(max-width:400px){.top-actions{gap:5px}.language-switch .language-button{min-width:33px;min-height:32px;padding:5px 7px;font-size:11px}.topbar .save-status{max-width:130px;font-size:8px;line-height:1.4}}
/* Reference fidelity: photograph layers and the approved desktop proportions. */
:root{--ink:#51172c;background:#fffaf6;color:var(--ink)}
.sidebar{width:216px;padding:12px 12px 14px;background:linear-gradient(120deg,#fff3f0,#fffcf7 75%);overflow:hidden}
.brand{font-size:28px;letter-spacing:-1px;color:#591d32;font-weight:650;gap:0;position:relative;z-index:1}
.brand-light{font-weight:650}.brand-mark{height:49px;color:#cd426a}.brand-mark svg{width:48px;height:48px;stroke-width:2.1}
.brand small{font-size:15px;line-height:1.3;max-width:110px;margin-top:5px;letter-spacing:0;color:#875467}
.nav-label{display:none}.sidebar nav{margin-top:34px;gap:15px;z-index:1}
.sidebar .nav-item{font-size:20px;min-height:66px;padding:16px 21px;gap:22px;color:#51172c;font-weight:600;border-radius:16px}
.sidebar .nav-item svg{width:30px;height:30px;stroke-width:1.8}
.sidebar .nav-item.active{background:#ffd9db}.sidebar .nav-count{display:none}
.sidebar-plant{position:absolute;left:-108px;bottom:56px;width:228px;max-width:none;height:355px;object-fit:contain;pointer-events:none;opacity:.88}
.sidebar-note{position:absolute;bottom:186px;right:12px;width:118px;padding:0;transform:rotate(-13deg)}
.sidebar-note .note-doodle,.sidebar-note>span:last-child{display:none}
.sidebar-note p{font:21px/1.65 "Kaiti SC","STKaiti",cursive;color:#e57892;letter-spacing:2px}
.guest{margin-top:auto;background:#fffdf9ee;border-color:#f8e5e3;border-radius:16px;padding:17px 14px;z-index:1;min-height:100px}
.guest-avatar{width:45px;height:45px;flex-shrink:0}.guest-avatar svg{fill:#a2536c;stroke-width:1}.guest strong{font-size:13px}.guest small{font-size:13px;line-height:1.5;max-width:120px}.online-dot{display:none}
.workspace{margin-left:216px}.topbar{position:absolute;top:12px;right:24px;padding:0;height:38px;z-index:2}.breadcrumb{display:none}
.save-status{font-size:14px;padding:9px 13px;background:#fce8e8}.save-status svg{background:#bd7bd0;color:white;border-radius:50%;padding:2px;width:19px;height:19px}
.language-switch{border:0;background:none}.language-switch .language-button{font-size:15px;background:none!important;box-shadow:none!important;min-width:40px}.language-switch>span{font-size:17px}.language-switch .language-button[aria-pressed="true"]{color:#51172c}
main{padding:18px 12px 0 18px;max-width:1700px}
.hero{min-height:108px;margin:0 0 24px;align-items:flex-end;padding-left:34px;padding-right:20px}
.hero h1{font-family:"Kaiti SC","STKaiti","PingFang SC",sans-serif;font-size:60px;font-weight:900;letter-spacing:2px;line-height:1.1;display:flex;align-items:center;flex-wrap:wrap;gap:0 8px;color:#51172c}
.hero h1 em{color:inherit}.hero-sprout{color:#d8ba59;display:inline-flex;margin-left:8px}.hero-sprout svg{fill:#d8ba59;stroke-width:1}
.hero-sub{font-size:24px;line-height:1.45;margin-top:10px;color:#915665}
.hero-doodle{font:21px/1.3 "Kaiti SC","STKaiti",cursive;color:#eb7491;transform:translateY(5px) rotate(-11deg);max-width:185px;text-align:right;letter-spacing:2px;padding-bottom:3px}
.play-layout{grid-template-columns:minmax(0,1fr) 336px;gap:14px}
.game-card{padding:0 17px 16px;border-radius:19px;border-color:#fae2df;background:#fffcf8;box-shadow:0 8px 24px #d4919410}
.machine-heading{height:82px;padding:12px 3px;gap:12px}.machine-heading h2{font-size:30px;line-height:1.2;font-weight:750}.machine-subtitle{font-size:16px;line-height:1.3;margin-top:1px;color:#8e788c}
.club-mascot{width:52px;height:51px;display:grid;place-items:center;color:#bd8080}.club-mascot svg{width:43px;height:43px;fill:#cf9992;stroke:#fff6eb;stroke-width:1.3}
.machine-tools{gap:12px}.machine-tools .icon-button{width:43px;height:43px;border-color:#ffcdd6;color:#c17cd1}.machine-tools .icon-button svg{width:27px;height:27px}.machine-tools [data-action="shuffle"]{width:28px;height:28px;align-self:center;opacity:.65}.machine-tools [data-action="shuffle"] svg{width:17px;height:17px}
.canvas-wrap{border:0;border-radius:14px 14px 0 0;background:#f3c2ba}.canvas-wrap canvas{aspect-ratio:2/1;max-width:none;width:100%}
.stage-status{top:8px;left:50%;transform:translateX(-50%);opacity:0;font-size:10px;white-space:nowrap;background:#fff7edeb;transition:opacity .2s}
.canvas-wrap.is-busy .stage-status{opacity:1}.stage-number{display:none}
.game-footnote{display:none}.machine-console{border-radius:0 0 5px 5px;border-top-width:1px;background:linear-gradient(120deg,#ffceca,#f5b2b5);box-shadow:inset 2px 2px 2px #fff9}
.machine-console .control-panel{border-radius:18px 23px 55px 8px;border-top:2px solid #fff4ec;background:linear-gradient(135deg,#ffe8e1,#ffdcda 60%,#ffd6d2)}
.machine-console .grab-button{background:linear-gradient(155deg,#ff9ead,#ff7088 65%,#f9627d);border-radius:38px}
.console-signature{font-family:"Avenir Next",sans-serif;letter-spacing:-1px}.console-signature svg{width:31px;height:31px}
.play-aside{gap:14px}.collection-preview{padding:21px 18px 24px;border-color:#fae4df;border-radius:18px;background:#fffdf9}
.card-eyebrow{font-size:24px;font-weight:750;padding-right:65px;gap:12px}.card-eyebrow svg{fill:#ff90a8;stroke:#ff90a8;width:30px;height:30px}
.progress-heading{top:23px;right:26px}.progress-heading>span:first-child strong{font-size:24px}.progress-heading>span:first-child>span{font-size:21px}.progress-track{display:none}
.mini-friends{gap:24px 10px;margin:18px 0 22px}.mini-friend{aspect-ratio:4/5;border-radius:12px;background:#f7f1ee;border-color:#f6ede8;margin-bottom:15px;padding:0}.mini-friend img{opacity:.85;filter:grayscale(.9)}.mini-friend strong{font-size:15px;color:#624052;top:calc(100% + 7px)}
.mini-friend.owned{background:#fff1e7}.mini-friend.owned>span{opacity:.6}
.collection-preview>.text-link{border:0;padding:6px 0 0;justify-content:center;font-size:20px;font-weight:650;text-decoration:underline;text-underline-offset:4px}
.tip-card{background:#fffdf9;border-color:#fae4df;border-radius:18px;padding:22px 24px 0;min-height:290px}
.tip-icon{display:inline-flex;vertical-align:middle;color:#ff8eaa;margin:0 12px 0 0}.tip-icon svg{fill:#ff9db4;stroke:#fff5f4;stroke-width:1.3;width:30px;height:30px}
.tip-card h3{display:inline;font-family:inherit;font-weight:700;font-size:23px;line-height:1.5;color:#562036}
.tip-card p{max-width:none;font-size:16px;line-height:1.55;margin-top:9px;color:#887388}
.tip-card>.text-link{position:absolute;right:14px;bottom:12px;z-index:2;font-size:10px;opacity:.8}
.tip-illustration{height:179px;position:relative;margin-top:0}
.tip-claw{position:absolute;top:0;left:50%;transform:translateX(-50%);width:66px;height:84px}
.tip-claw img{position:static!important;width:66px!important;height:84px!important;object-fit:contain;transform:none!important}
.tip-ring{top:91px;left:50%;width:51px;height:13px;border-color:#c58aea}
.tip-illustration>img{position:absolute;top:104px;left:50%;transform:translateX(-50%);width:163px;height:184px;object-fit:contain}
.tip-handwriting{position:absolute;right:-2px;top:69px;width:65px;transform:rotate(-20deg);font:19px/1.5 "Kaiti SC","STKaiti",cursive;color:#ed809d}
.quiet-note{padding:22px 10px 0;justify-content:center;align-items:center;gap:10px}.quiet-note svg{color:#b783cc;fill:#c099d8;flex-shrink:0}.quiet-note p{font-size:14px;color:#91667c}
@container(min-width:830px){
  .machine-console{grid-template-columns:minmax(0,1fr) 26%;min-height:250px}
  .machine-console .control-panel{padding:10px 18px 10px 28px;gap:0 22px;grid-template-columns:minmax(0,1fr) 34%}
  .direction-controls{gap:20px}.direction-caption{width:120px;flex-shrink:0}.direction-caption strong{font-size:22px}.direction-caption small{font-size:12px;white-space:nowrap}
  .candy-pad{--key-size:80px;grid-template-rows:repeat(3,60px);gap:5px 0}.direction-button{height:60px;border-radius:24px;width:78px}.direction-button span{font-size:16px}.direction-button svg{width:23px;height:23px}
  .machine-console .grab-button{font-size:30px;min-height:91px;padding:16px 8px}.machine-console .grab-controls{gap:17px}.machine-console .key-hint{font-size:14px}
  .console-signature{font-size:24px;line-height:30px;margin-top:6px}.console-outlet{padding:10px 12px;gap:12px}.console-outlet p{max-width:120px;font-size:16px;line-height:1.4}.outlet-opening{height:106px}.outlet-signature small{font-size:10px}
}
@media(min-width:761px) and (max-width:1399px){
  .sidebar{width:180px}.workspace{margin-left:180px}.sidebar .nav-item{font-size:17px;gap:15px;padding-inline:17px}.sidebar nav{margin-top:36px}.brand{font-size:26px}.brand small{font-size:13px}
  .play-layout{grid-template-columns:minmax(0,1fr) 260px}.hero{padding-left:15px;min-height:106px}.hero h1{font-size:45px;letter-spacing:0}.hero-sub{font-size:18px}.hero-doodle{font-size:18px;max-width:120px}.hero-sprout svg{width:32px}
  .machine-heading{height:75px}.machine-heading h2{font-size:24px}.machine-subtitle{font-size:12px}.club-mascot{width:38px}.club-mascot svg{width:34px}.machine-tools{gap:6px}.machine-tools .icon-button{width:32px;height:32px}.machine-tools .icon-button svg{width:20px}
  .collection-preview{padding:19px 14px}.card-eyebrow{font-size:19px;gap:8px}.card-eyebrow svg{width:25px;height:25px}.progress-heading{right:17px;top:19px}.progress-heading>span:first-child strong{font-size:19px}.progress-heading>span:first-child>span{font-size:15px}.mini-friends{gap:25px 7px;margin-top:20px}.mini-friend strong{font-size:12px}.collection-preview>.text-link{font-size:16px}
  .tip-card{padding:18px 17px 0;min-height:250px}.tip-card h3{font-size:18px}.tip-icon{margin-right:5px}.tip-icon svg{width:24px}.tip-card p{font-size:13px}.tip-illustration{height:156px}.quiet-note{padding-top:10px}.quiet-note p{font-size:11px}
}
@media(min-width:761px) and (max-width:1050px){.sidebar{width:160px}.workspace{margin-left:160px}.sidebar .nav-item{font-size:15px}.play-layout{grid-template-columns:minmax(0,1fr)}.play-aside{grid-template-columns:1fr 1fr}.quiet-note{grid-column:1/-1}.hero-doodle{display:none}.hero h1{font-size:39px}.hero-sprout{display:none}}
@media(max-width:760px){
  .workspace{margin-left:0}.sidebar{display:none}.topbar{position:static;height:55px;padding:0 14px;justify-content:space-between}.breadcrumb{display:flex}.breadcrumb>span:first-child{font-size:13px}.save-status{font-size:9px;padding:6px 8px}.save-status svg{width:15px;height:15px}.language-switch .language-button{font-size:12px}.top-actions{gap:4px}
  main{padding:8px 12px 0;max-width:620px}.hero{min-height:0;padding:0;margin:0 0 19px}.hero h1{font-size:36px;line-height:1.25;letter-spacing:0;display:block}.hero h1 em{display:inline}.hero-sprout{display:none}.hero-sub{font-size:13px;line-height:1.6;margin-top:5px}.hero-doodle{display:none}
  .play-layout{display:flex;gap:16px}.game-card{padding:0 8px 8px;border-radius:15px}.machine-heading{height:66px;padding:9px 2px;gap:4px}.machine-heading h2{font-size:20px;line-height:1.3}.machine-subtitle{font-size:9px}.club-mascot{width:29px;height:33px}.club-mascot svg{width:27px;height:27px}.machine-title{gap:6px}.machine-tools{gap:4px}.machine-tools .icon-button{width:28px;height:28px}.machine-tools .icon-button svg{width:17px;height:17px}.machine-tools [data-action="shuffle"]{width:22px;height:22px}.machine-tools [data-action="shuffle"] svg{width:14px;height:14px}
  .canvas-wrap{border-radius:8px 8px 0 0}.machine-console{border-radius:0 0 6px 6px}.machine-console .grab-button{border-radius:25px}.console-signature svg{width:21px;height:21px}
  .play-aside{width:100%;grid-template-columns:1fr 1fr;gap:10px}.collection-preview{padding:15px 11px;border-radius:14px}.card-eyebrow{font-size:14px;gap:5px;padding-right:35px}.card-eyebrow svg{width:18px;height:18px}.progress-heading{right:11px;top:15px}.progress-heading>span:first-child strong{font-size:15px}.progress-heading>span:first-child>span{font-size:11px}.mini-friends{gap:22px 5px;margin:16px 0 22px}.mini-friend strong{font-size:9px;top:calc(100% + 5px)}.collection-preview>.text-link{font-size:12px;padding-top:0}
  .tip-card{padding:15px 12px 0;min-height:0;border-radius:14px}.tip-card h3{font-size:14px;line-height:1.5}.tip-icon{margin-right:3px}.tip-icon svg{width:18px;height:18px}.tip-card p{font-size:11px;line-height:1.5;margin-top:7px}.tip-illustration{height:115px}.tip-claw{width:43px;height:55px}.tip-claw img{width:43px!important;height:55px!important}.tip-ring{top:57px;width:33px;height:8px}.tip-illustration>img{top:69px;width:110px;height:124px}.tip-handwriting{right:-4px;top:48px;width:43px;font-size:11px}.tip-card>.text-link{font-size:8px;right:6px;bottom:5px}.quiet-note{display:none}
  .mobile-nav .nav-item{font-size:10px}.page-footer{padding-bottom:100px}
}
@media(max-width:360px){.topbar{padding-inline:10px}.hero h1{font-size:31px}.club-mascot{display:none}.machine-heading h2{font-size:18px}.machine-subtitle{font-size:8px}.play-aside{grid-template-columns:1fr}.mini-friends{gap:25px 9px}.mini-friend{max-height:100px}.mini-friend strong{font-size:12px}.card-eyebrow{font-size:18px}.tip-card h3{font-size:18px}.tip-card p{font-size:13px}}
html[lang="en"] .sidebar .nav-item{font-size:16px;gap:12px;padding-inline:12px}
html[lang="en"] .sidebar .nav-item svg{width:26px;height:26px}
html[lang="en"] .direction-caption small{white-space:normal}
@media(min-width:761px){
  html:not([data-page="play"]) main{padding-top:64px}
  html:not([data-page="play"]) .hero{padding-left:0;min-height:0}
  html:not([data-page="play"]) .hero h1{font-size:42px;letter-spacing:0}
  html:not([data-page="play"]) .hero-sub{font-size:17px}
}
@media(min-width:1051px) and (max-width:1399px){html[lang="en"] .sidebar .nav-item{font-size:14px;gap:10px}}
@media(min-width:761px) and (max-width:1050px){html[lang="en"] .sidebar .nav-item{font-size:12px;gap:10px}html[lang="en"] .sidebar .nav-item svg{width:24px;height:24px}}
.shelf-spot.is-selected{background:#ffe4ed99;box-shadow:inset 0 0 0 2px #d87fa1;border-radius:18px 18px 4px 4px}.shelf-spot.is-selected .shelf-name{color:#873c5a;font-weight:700}.collection-stock{display:flex;flex-wrap:wrap;column-gap:9px;font-size:10px;line-height:1.7;color:#946979;margin-top:8px}.collection-stock>span{white-space:nowrap}.shelf-toolbar p{min-height:32px;flex-wrap:wrap}.shelf-spot:focus-visible{outline:3px solid #ba82bd;outline-offset:-3px}.shelf-cell:focus-within .remove-toy{opacity:1}@media(hover:none){.remove-toy{opacity:1}}

/* Collection page: cloud cabinet mockup, with live shelf slots. */
html[data-page="collection"] main{padding-top:22px}
html[data-page="collection"] .collection-hero{min-height:104px;padding-left:22px;margin-bottom:0}
html[data-page="collection"] .collection-hero h1{font-size:54px;letter-spacing:1px}
html[data-page="collection"] .collection-hero .hero-sub{font-size:21px;margin-top:6px}
.collection-layout{display:grid;grid-template-columns:minmax(0,1fr) 336px;gap:18px;align-items:start}
.collection-cabinet{min-width:0}
.cloud-room.shelf-room{position:relative;padding:0;max-width:none;margin:0;border:0;border-radius:0;background:none;aspect-ratio:3/2;overflow:visible;isolation:isolate}
.cabinet-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:-1}
.cloud-room .shelf-grid{position:absolute;left:5%;right:5%;top:17.5%;bottom:10%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:48% 52%;gap:0}
.cloud-room .shelf-cell{border:0;box-shadow:none;min-height:0;min-width:0}
.cloud-room .shelf-cell:after{display:none}
.cloud-room .shelf-spot{height:100%;width:100%;padding:2% 5% 6%;border-radius:18px;gap:0;overflow:visible;justify-content:flex-end;isolation:isolate}
.cloud-room .shelf-toy{height:88%;width:90%;max-height:none;object-fit:contain;margin:0;filter:drop-shadow(0 9px 5px #8b513b28);pointer-events:none}
.cloud-room .shelf-name{position:absolute;bottom:0;left:50%;transform:translateX(-50%);white-space:nowrap;min-width:43%;padding:3px 12px;border:1px solid #e4b688;border-radius:14px;background:linear-gradient(#fffdf3,#ffe9d6);box-shadow:inset 0 0 0 2px #fff6,0 2px 3px #ac785b26;color:#763f49;font-size:14px;line-height:1.5;margin:0;z-index:2}
.cloud-room .empty-outline{width:36%;height:44%;max-width:96px;border:1.5px dashed #c9949690;background:#fff7ed44;color:#bd8e99;border-radius:45%;margin:auto;align-self:center}
.cloud-room .shelf-spot:hover{background:#fff5ed22}
.cloud-room .shelf-spot.is-selected{background:#edd7ff25;box-shadow:inset 0 0 0 3px #c48ae7,inset 0 0 16px #cd91f588,0 0 9px #cb9bec99}
.cloud-room .shelf-spot:focus-visible{outline:3px solid #ad68d0;outline-offset:-4px}
.shelf-heart{position:absolute;top:7%;right:8%;color:#bf80de;filter:drop-shadow(0 0 4px #fff)}
.cloud-room .remove-toy{top:6px;right:6px;width:30px;height:30px;background:#fffaf0cc;color:#bd9097;z-index:3}
.collection-cabinet .shelf-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:0;padding:16px 22px 12px;background:linear-gradient(130deg,#ffe8e6,#ffcfd7 70%,#ffe9e3);border:1px solid #f5b7c2;box-shadow:inset 0 0 0 5px #fff4,0 4px 0 #f3c0c6,0 10px 18px #df9dad1c;border-radius:28px}
.collection-cabinet .shelf-actions{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:10px;align-items:center}
.collection-cabinet .small-button{justify-content:center;min-height:56px;font-size:17px;font-weight:700;border-radius:24px;border:1px solid #efadba;box-shadow:inset 0 2px 2px #fff9,0 3px 0 #e7abb5;background:linear-gradient(#fffaf4,#ffede8);padding:10px;line-height:1.3}
.collection-cabinet .arrange-button{color:white;background:linear-gradient(#ff9bb2,#fa7798);border-color:#ef718f;box-shadow:inset 0 2px 2px #ffefdccc,0 3px 0 #d9708c}
.collection-cabinet .garden-button{color:#466c4c;background:linear-gradient(#d8eed0,#b6ddb8);border-color:#9cc4a0;box-shadow:inset 0 2px 2px #fafff1,0 3px 0 #98bb99}
.collection-cabinet .garden-button.chosen{box-shadow:inset 0 0 0 2px #709e74,0 3px 0 #98bb99}
.collection-cabinet .clear-button{background:transparent;border:0;box-shadow:none;font-weight:400;font-size:13px;color:#a8667a;padding:7px}
.collection-cabinet .small-button:disabled{opacity:.55;cursor:not-allowed}
.collection-cabinet .small-button:hover:not(:disabled){filter:brightness(1.035);transform:translateY(-1px)}
.collection-cabinet .shelf-toolbar p{margin:0;min-height:22px;color:#a26076;font-size:12px;line-height:1.6;gap:7px}
.collection-aside{padding-top:32px;display:grid;gap:15px;min-width:0}
.collection-aside .collection-preview{padding:21px 17px 28px;min-height:0}
.collection-aside-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.collection-aside-heading h2{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:750;margin:0;min-width:0}
.collection-aside-heading h2 svg{color:#f18da9;flex-shrink:0}
.collection-aside-heading>span{white-space:nowrap;font-size:20px;color:#ae8fa9}
.collection-aside-heading>span strong{color:#774159}
.collection-aside .mini-friends{margin:22px 0 17px;gap:32px 9px}
.collection-aside .mini-friend strong{font-size:13px}
.garden-preview{position:relative;display:flex;flex-direction:column;align-items:stretch;width:100%;padding:0;background:#fffdf9;border:1px solid #f2dfe1;border-radius:20px;text-align:left;overflow:hidden;color:#6f344b}
.garden-preview:disabled{opacity:1;cursor:default}
.garden-preview-copy{display:block;padding:18px 17px 4px;background:#fffdf9}
.garden-preview-copy>strong{display:flex;gap:9px;align-items:center;font-size:20px;line-height:1.4}
.garden-preview-copy svg{color:#9eba89;flex-shrink:0}
.garden-preview-copy>span{display:block;font-size:13px;line-height:1.65;color:#a1808f;margin:8px 0 0 37px}
.garden-preview>img{display:block;flex:1;min-height:0;width:100%;height:172px;object-fit:cover;object-position:50% 65%;mask-image:linear-gradient(transparent,#000 23%)}
.garden-progress{position:absolute;bottom:13px;right:14px;border:1px solid #e2eace;background:#fffcf0ed;color:#748661;border-radius:16px;padding:6px 12px;font-size:11px}
.cloud-room.garden-room .shelf-cell{background:linear-gradient(#edf7d9bb,#e4edd233),url('/public/collection-garden.png') center/cover;border-radius:16px;box-shadow:inset 0 0 14px #c0c49166}
.collection-backpack{margin-top:21px;padding:15px 17px 17px;border:1px solid #f3e0df;border-radius:20px;background:#fffdf9}
.collection-backpack .section-heading{margin-bottom:13px}
.collection-backpack .section-heading h2{display:flex;gap:10px;align-items:center;font-size:20px}
.collection-backpack .section-heading>span{font-size:12px;color:#b294a0}
.collection-backpack .collection-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.collection-backpack .collection-card{display:flex;align-items:center;padding:6px;border-radius:15px;gap:5px;min-width:0;border-color:#f3e3df;overflow:visible}
.collection-backpack .collection-card.selected{border-color:#ce92b3;box-shadow:0 0 0 2px #e8bfda66}
.collection-backpack .collection-art{width:44%;height:90px;flex-shrink:0;border-radius:11px;background:linear-gradient(#faf1ed,#fff9f3)}
.collection-backpack .collection-art img{width:100%;height:100%;object-fit:contain}
.collection-backpack .collection-quantity{font-size:8px;top:2px;right:2px;padding:2px 3px}
.collection-backpack .collection-card-text{padding:0;min-width:0;flex:1}
.collection-backpack h3{font-size:12px;font-weight:650;line-height:1.4}
.collection-backpack .collection-stock{display:flex;flex-direction:column;font-size:10px;gap:4px;margin-top:7px;line-height:1.4}
.collection-backpack .collection-stock>span{display:flex;justify-content:space-between;gap:5px}
.collection-backpack .collection-stock b{font-weight:500;color:#744254}
.collection-backpack .inventory-selected{font-size:9px;margin-top:5px;padding-top:4px}
@media(min-width:761px) and (max-width:1399px){
  html[data-page="collection"] main{padding-top:45px}
  html[data-page="collection"] .collection-hero{padding-left:10px;min-height:100px}
  html[data-page="collection"] .collection-hero h1{font-size:42px}
  html[data-page="collection"] .collection-hero .hero-sub{font-size:17px}
  .collection-layout{grid-template-columns:minmax(0,1fr) 260px;gap:12px}
  .collection-aside{padding-top:20px}.collection-aside-heading h2,.garden-preview-copy>strong{font-size:16px}
  .collection-aside .collection-preview{padding:17px 12px 25px}.collection-aside .mini-friends{gap:28px 7px}.collection-aside .mini-friend strong{font-size:11px}
  .garden-preview>img{height:135px}.garden-preview-copy{padding:15px 12px 0}.garden-preview-copy>span{font-size:11px;margin-left:0}
  .collection-cabinet .shelf-toolbar{padding:13px}.collection-cabinet .shelf-actions{gap:6px;grid-template-columns:1fr 1fr 1fr}
  .collection-cabinet .small-button{font-size:13px;min-height:46px}.collection-cabinet .clear-button{grid-column:3;min-height:20px;padding:0;font-size:11px}
  .cloud-room .shelf-name{font-size:11px;padding:2px 8px}.collection-backpack .collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1100px){
  .collection-layout{grid-template-columns:minmax(0,1fr)}
  .collection-aside{padding-top:5px;grid-template-columns:1fr 1fr;align-items:stretch}
  .collection-aside .mini-friend{max-height:110px}.collection-aside .mini-friends{margin-top:15px}
  .garden-preview>img{height:175px}.garden-preview-copy>strong{font-size:18px}
}
@media(max-width:760px){
  html[data-page="collection"] main{padding-top:8px}
  html[data-page="collection"] .collection-hero{padding:0;min-height:0;margin-bottom:6px}
  html[data-page="collection"] .collection-hero h1{font-size:31px;letter-spacing:0}
  html[data-page="collection"] .collection-hero .hero-sub{font-size:12px}
  .collection-layout{gap:14px}.cloud-room .shelf-spot{border-radius:9px;padding-bottom:8%}
  .cloud-room .shelf-name{font-size:9px;padding:1px 5px;min-width:50%;border-radius:8px}
  .cloud-room .remove-toy{width:25px;height:25px;top:0;right:0}.shelf-heart{top:4px;right:5px}.shelf-heart svg{width:19px;height:19px}
  .cloud-room .empty-outline{margin-bottom:20%;height:45%}.cloud-room .empty-outline svg{width:17px}
  .collection-cabinet .shelf-toolbar{padding:13px 11px 10px;border-radius:20px;gap:8px}
  .collection-cabinet .shelf-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .collection-cabinet .small-button{font-size:11px;min-height:44px;gap:4px;padding:7px 3px;border-radius:18px}
  .collection-cabinet .small-button svg{width:17px;height:17px;flex-shrink:0}
  .collection-cabinet .clear-button{grid-column:3;min-height:22px;font-size:10px;padding:0}
  .collection-cabinet .shelf-toolbar p{font-size:10px;gap:5px}
  .collection-aside{gap:10px;padding-top:0}.collection-aside .collection-preview{padding:13px 10px 24px}
  .collection-aside-heading{gap:4px}.collection-aside-heading h2{font-size:12px;gap:4px}.collection-aside-heading h2 svg{width:16px;height:16px}
  .collection-aside-heading>span{font-size:12px}.collection-aside .mini-friends{gap:24px 5px;margin-bottom:4px}.collection-aside .mini-friend strong{font-size:9px}
  .garden-preview{border-radius:14px}.garden-preview-copy{padding:12px 10px 0}.garden-preview-copy>strong{font-size:13px;gap:4px}.garden-preview-copy svg{width:19px;height:19px}.garden-preview-copy>span{font-size:10px;margin:6px 0 0}
  .garden-preview>img{height:120px}.garden-progress{font-size:9px;bottom:9px;right:9px;padding:4px 8px}
  .collection-backpack{margin-top:16px;padding:13px 10px;border-radius:15px}.collection-backpack .section-heading h2{font-size:17px}
  .collection-backpack .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.collection-backpack .collection-art{height:82px;width:43%}
  .collection-backpack h3{font-size:11px}.collection-backpack .collection-stock{font-size:9px}
}
/* Gift batches: a quiet, native-looking switcher beside the existing machine. */
.batch-bar{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:18px 22px;margin-bottom:24px;border:1px solid #f0bed3;border-radius:22px;background:#fff4f9}.batch-bar>div{display:flex;align-items:center;gap:14px;flex:1;flex-wrap:wrap}.batch-bar small{font-size:10px;letter-spacing:1.5px;color:#ad7793}.batch-bar strong{font-size:18px;color:#71364f}.batch-bar span,.batch-bar p{font-size:13px;color:#9b6781}.batch-bar p{width:100%;margin:0}.pool-modal{width:min(720px,94vw)}.pool-options{display:grid;gap:14px;margin-top:22px}.pool-option{width:100%;border:1px solid #ebc3d7;border-radius:22px;background:#fff6fa;padding:18px;text-align:left;cursor:pointer;color:#71364f}.pool-option:hover{border-color:#b68ed2;background:#f8efff}.pool-option strong{font-size:20px}.pool-toys{display:flex;justify-content:center;margin:10px 0}.pool-toys img{width:16%;height:auto;object-fit:contain;max-height:95px}.pool-option small,.pool-status{font-size:12px;color:#996a85}.friend-strip{flex-wrap:wrap}.batch-bar button:disabled{opacity:.5}

/* Playroom · approved October design. Scoped to preserve collection/settings. */
html[data-page="play"] .sidebar{width:230px;padding:20px 26px 40px;background:linear-gradient(115deg,#fff8f4,#fffcf8);border-color:#f1e0de}
html[data-page="play"] .brand{font-size:28px}
html[data-page="play"] .brand-mark{height:58px}
html[data-page="play"] .brand small{font-size:14px;max-width:135px;margin:8px auto 0;line-height:1.5}
html[data-page="play"] .sidebar nav{margin-top:30px;gap:16px}
html[data-page="play"] .sidebar .nav-item{font-size:18px;padding:18px 17px;gap:18px;min-height:68px}
html[data-page="play"] .sidebar-note{display:none}
html[data-page="play"] .sidebar-plant{left:-75px;bottom:146px;width:205px;height:315px}
html[data-page="play"] .guest{padding:22px 13px;gap:10px;min-height:124px}
html[data-page="play"] .guest small{font-size:12px}
html[data-page="play"] .workspace{margin-left:230px}
html[data-page="play"] .topbar{position:static;height:46px;max-width:1480px;margin:auto;padding:0 28px 0 46px;border:0;display:flex}
html[data-page="play"] .breadcrumb{display:flex;font-size:14px;gap:10px;color:#956373}
html[data-page="play"] .breadcrumb strong{display:inline}
html[data-page="play"] .breadcrumb>svg{color:#ac5a77}
html[data-page="play"] .top-actions{gap:20px}
html[data-page="play"] .avatar-button{display:none}
html[data-page="play"] .save-status{font-size:13px;padding:5px 12px;border-radius:22px}
html[data-page="play"] .language-switch>span{display:none}
html[data-page="play"] .language-switch .language-button{min-height:30px;padding:3px 15px}
html[data-page="play"] .language-switch .language-button[aria-pressed="true"]{border:1px solid #f4d5df}
html[data-page="play"] main{max-width:1480px;padding:0 28px}
.room-hero{padding:0 20px;margin-bottom:12px}
.room-hero h1{font-family:"Avenir Next","PingFang SC",sans-serif;font-size:36px;font-weight:800;line-height:1.25;letter-spacing:.5px}
.room-hero h1 em{font-style:normal}
.room-hero p{font-size:18px;line-height:1.5;color:#926978;margin-top:4px}
.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 322px;gap:16px;align-items:start}
.room-machine.game-card{min-width:0;padding:0 14px 12px;border:1px solid #f5dfdf;border-radius:18px;background:#fffcf9;box-shadow:none}
.room-machine .machine-heading{height:74px;padding:9px 6px;gap:10px}
.room-machine .machine-title{display:flex;align-items:center;gap:12px;min-width:0}
.room-machine .machine-heading h2{font-family:inherit;font-size:27px;margin:0;font-weight:750;line-height:1.25}
.room-machine .machine-subtitle{font-size:15px;color:#947981;margin-top:2px}
.room-machine .club-mascot{width:42px;flex-shrink:0}
.room-machine .machine-tools{gap:7px;flex-shrink:0}
.room-machine .machine-tools .icon-button{width:37px;height:37px;border-radius:50%;background:#fffdfa;box-shadow:0 2px 3px #bb747b0d}
.room-machine .machine-tools .icon-button svg{width:23px;height:23px}
.room-machine .machine-tools [data-action="shuffle"]{width:27px;height:32px;box-shadow:none;border:0}
.room-machine .machine-tools [data-action="shuffle"] svg{width:17px}
.room-pools{display:flex;gap:14px;overflow-x:auto;padding:0 6px 10px;scrollbar-width:thin}
.room-pool{flex:1 0 0;min-width:130px;display:flex;align-items:center;justify-content:center;position:relative;height:56px;gap:12px;padding:0 20px 0 9px;border:1px solid #f7dfe0;border-radius:14px;background:#fff8f5;overflow:hidden}
.room-pool img{width:64px;height:70px;object-fit:contain;align-self:flex-start}
.room-pool strong{font-size:17px;white-space:nowrap}
.pool-selected{display:none;position:absolute;right:7px;top:7px;background:#ff6897;color:#fff;border-radius:50%;width:20px;height:20px;place-items:center}
.room-pool[aria-pressed="true"]{border:2px solid #ff6c9a;background:linear-gradient(130deg,#fff8f7,#ffe3eb);box-shadow:inset 0 0 0 3px #fff9}
.room-pool[aria-pressed="true"] .pool-selected{display:grid}
.room-pool:hover:not(:disabled){background:#ffe9ee}
.room-batch{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:5px 6px 6px 26px;border:1px solid #f4dddd;border-bottom:0;border-radius:18px 18px 0 0;min-height:46px;color:#936675;font-size:14px}
.room-batch>span{display:flex;align-items:baseline;gap:6px}
.room-batch strong{font-size:24px;color:#ff638c;margin-left:5px}
.room-batch button{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 20px;border-radius:22px;background:#f2e2ff;color:#9253b4;font-size:14px;font-weight:650;min-height:36px}
.room-empty{padding:12px;background:#fff1df;font-size:14px;line-height:1.5;text-align:center}
.room-machine .canvas-wrap{border:0;border-radius:14px 14px 0 0;aspect-ratio:2.28}
.room-machine .canvas-wrap canvas{position:absolute;bottom:0;width:100%;max-width:none;aspect-ratio:2/1}
.room-console{display:grid;grid-template-columns:40% minmax(0,1fr);align-items:center;gap:10px;padding:4px 22px 4px 18px;background:linear-gradient(130deg,#ffe5e1,#fbd6d6);border:7px solid #f9b7c0;border-top-width:5px;border-radius:0 0 15px 15px;box-shadow:inset 0 0 0 2px #fff5f0,inset 0 3px 5px #fff9;min-height:160px}
.room-pad{position:relative;display:grid;place-items:center;padding-left:5px}
.room-pad>strong{position:absolute;top:8px;left:0;font-size:13px;max-width:75px;line-height:1.4}
.room-pad .candy-pad{--key-size:74px;display:grid;grid-template-columns:repeat(3,74px);grid-template-rows:repeat(3,44px);gap:1px 4px;margin:0}
.room-pad .direction-button{width:74px;height:44px;min-width:0;border-radius:20px;padding:0;display:grid;place-items:center;box-shadow:inset 2px 3px 2px #fff9,inset -2px -3px 3px #9b536330,0 5px 0 var(--key-edge),0 7px 8px #99556530}
.room-pad .direction-up{--key-top:#ffadc6;--key-bottom:#ff7199;--key-edge:#d56c8f;--key-ink:#fff9f7}
.room-pad .direction-button svg{width:29px;height:29px;stroke-width:3}
.room-pad .direction-button:active:not(:disabled),.room-pad .direction-button.is-held{transform:translateY(4px);box-shadow:inset 2px 3px 2px #fff8,0 1px 0 var(--key-edge)}
.room-pad .pad-heart{width:auto;height:auto;display:grid;place-items:center;color:#f5749c}
.room-pad .pad-heart svg{fill:#ff98b1;filter:drop-shadow(0 2px 1px #bf618b44)}
.room-grab{display:flex;flex-direction:column;align-items:center;gap:9px;padding-top:6px;min-width:0}
.room-grab .grab-button{width:100%;max-width:380px;min-width:0;min-height:74px;padding:14px 10px;background:linear-gradient(155deg,#ff97b1,#ff729a 65%,#fa628d);border:2px solid #f47c9c;border-radius:45px;box-shadow:inset 3px 4px 2px #ffdfeb,inset -2px -4px 3px #e853803b,0 6px 0 #d85f83,0 9px 10px #b55d692d;font-size:28px;line-height:1.2;font-weight:750;color:#fffaf7}
.room-grab .grab-button:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}
.room-grab .grab-button:active:not(:disabled){transform:translateY(4px);box-shadow:inset 2px 3px 2px #ffdfeb,0 2px 0 #d85f83}
.room-key-hint{font-size:13px;line-height:1.4;color:#a57683;margin-top:4px;text-align:center}
.room-grab>small{display:flex;align-items:center;justify-content:flex-end;gap:7px;align-self:stretch;font-size:11px;color:#ac808b;line-height:1.4}
.room-grab>small svg{color:#f887a5;fill:#f887a5}
.room-aside{display:grid;gap:16px;min-width:0}
.room-collection,.room-tips{border:1px solid #f3dfdf;border-radius:18px;background:#fffcf9;padding:22px 20px}
.room-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}
.room-card-heading h2,.room-tips h2{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:750;line-height:1.4}
.room-card-heading>span{font-size:18px;white-space:nowrap;color:#9d7a89}
.room-card-heading>span strong{font-weight:600;color:#ff6593}
.room-progress{height:17px;border-radius:14px;background:#f8ece9;border:1px solid #f0d9dd;overflow:hidden;margin:18px 3px 22px}
.room-progress>span{display:block;height:100%;border:1px solid #e77b98;border-radius:14px;background:linear-gradient(#ffb0c3,#ff729b);box-shadow:inset 0 2px 2px #fff9;min-width:0}
.room-progress>span[style="width:0%"]{border:0}
.room-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.room-preview{position:relative;padding:0;border-radius:14px;background:#f8efec;aspect-ratio:4/5;overflow:hidden}
.room-preview img{width:100%;height:100%;object-fit:contain;filter:grayscale(.65);opacity:.36}
.room-preview.owned{background:linear-gradient(#fce6e8,#fbefeb)}
.room-preview.owned img{filter:none;opacity:1}
.room-preview>span{display:grid;place-items:center;position:absolute;right:3px;bottom:4px;width:23px;height:23px;border:2px solid #fff6f5;border-radius:50%;background:#ff759d;color:white}
.room-collection-link{display:flex;justify-content:center;align-items:center;gap:16px;border:1px solid #f3d7dd;background:linear-gradient(#fff3f2,#fce6e7);border-radius:25px;min-height:48px;margin-top:18px;box-shadow:inset 0 2px 0 #fff9,0 3px 5px #aa6b6812;font-size:16px;font-weight:700}
.room-tips{padding-bottom:20px}
.room-tips h2>svg{color:#eeab46;fill:#ffe0a4}
.room-tips-body{display:grid;grid-template-columns:46% minmax(0,1fr);width:100%;text-align:left;padding:0;background:#fdf4ef;border:1px solid #f5e0dc;border-radius:16px;overflow:hidden;margin-top:18px;min-height:184px}
.room-tip-art{position:relative;display:block;min-height:184px;background:linear-gradient(120deg,#fae2de,#fff5f0)}
.room-tip-art>img:first-child{position:absolute;left:23%;top:-12px;width:58%;height:105px;object-fit:contain}
.room-tip-art>img:last-child{position:absolute;left:3%;bottom:0;width:94%;height:125px;object-fit:contain;transform:rotate(-12deg)}
.room-tip-copy{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:10px;font-size:13px;line-height:1.5;color:#987482}
.room-tip-copy>span{display:flex;align-items:flex-start;gap:7px}
.room-tip-copy svg{background:#fa7397;color:white;border-radius:50%;padding:2px;flex-shrink:0;margin-top:2px}
.room-friends{margin-top:14px;padding:10px 16px 8px;border:1px solid #f4dfdf;border-radius:18px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:14px;background:#fffcf9;align-items:start}
.room-friends h2{display:flex;align-items:center;gap:8px;font-size:17px;padding-top:2px;line-height:1.4}
.room-friends h2 svg{color:#f26693;flex-shrink:0}
.room-friend-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.room-friend-strip button{padding:0;background:transparent;min-width:0}
.room-friend-strip img{width:100%;height:88px;object-fit:contain;background:#fcf2ee;border-radius:13px}
.room-friend-strip strong{display:block;font-size:13px;line-height:1.4;color:#936778;margin-top:3px;font-weight:600}
html[data-page="play"] .page-footer{border:0;margin:0 auto;padding:8px 30px 16px;justify-content:flex-end;font-size:11px;max-width:1480px}
html[data-page="play"] .page-footer>span:first-child{display:none}
html[lang="en"] .room-hero h1 em:before{content:" "}
html[lang="en"] .room-hero h1{font-size:32px}
html[lang="en"] .room-hero p{font-size:16px}
html[lang="en"][data-page="play"] .sidebar .nav-item{font-size:15px;gap:12px;padding-inline:12px}
html[lang="en"] .room-pool strong{font-size:14px;white-space:normal}
html[lang="en"] .room-card-heading h2{font-size:18px;gap:7px}
html[lang="en"] .room-grab .grab-button{font-size:24px}
@media(min-width:1101px) and (max-width:1399px){
  html[data-page="play"] .sidebar{width:196px;padding-inline:17px}html[data-page="play"] .workspace{margin-left:196px}
  html[data-page="play"] main{padding-inline:22px}.room-layout{grid-template-columns:minmax(0,1fr) 270px;gap:14px}
  .room-machine .machine-heading h2{font-size:23px}.room-machine .machine-subtitle{font-size:12px}.room-pool{min-width:115px;padding-right:12px;gap:4px}.room-pool img{width:47px}.room-pool strong{font-size:14px}
  .room-console{padding-inline:8px;grid-template-columns:44% minmax(0,1fr)}.room-pad .candy-pad{grid-template-columns:repeat(3,57px)}.room-pad .direction-button{width:57px}.room-pad>strong{font-size:10px;max-width:57px}
  .room-grab .grab-button{font-size:23px;min-height:66px}.room-key-hint{font-size:10px}.room-grab>small{font-size:9px}
  .room-collection,.room-tips{padding:18px 15px}.room-card-heading h2{font-size:19px;gap:8px}.room-card-heading>span{font-size:15px}.room-tips h2{font-size:20px}.room-tip-copy{font-size:11px;padding:7px}.room-friends{grid-template-columns:160px 1fr}.room-friends h2{font-size:15px}
}
@media(max-width:1100px){
  html[data-page="play"] .sidebar{width:180px;padding:20px 14px}html[data-page="play"] .workspace{margin-left:180px}
  html[data-page="play"] main{padding-inline:20px}html[data-page="play"] .topbar{padding-inline:30px 20px}.room-hero{padding-left:10px}
  .room-layout{grid-template-columns:minmax(0,1fr)}.room-aside{grid-template-columns:1fr 1fr}.room-previews{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.room-card-heading h2{font-size:20px}.room-tips-body{min-height:140px;margin-top:12px}.room-tip-art{min-height:140px}.room-tip-art>img:first-child{height:85px}.room-tip-art>img:last-child{height:100px}
  .room-friends{grid-template-columns:1fr;gap:8px}.room-friends h2{font-size:16px}
}
@media(max-width:760px){
  html[data-page="play"] .sidebar{display:none}html[data-page="play"] .workspace{margin-left:0}html[data-page="play"] main{padding:0 12px;max-width:650px}html[data-page="play"] .topbar{padding:0 14px;height:52px;max-width:650px}
  html[data-page="play"] .breadcrumb{font-size:11px;gap:5px}html[data-page="play"] .breadcrumb>svg{width:16px}html[data-page="play"] .save-status{font-size:9px;padding:5px 7px}html[data-page="play"] .top-actions{gap:4px}html[data-page="play"] .language-switch .language-button{font-size:11px;padding:4px 9px;min-width:32px;min-height:36px}
  .room-hero{padding:0 5px;margin-bottom:14px}.room-hero h1{font-size:29px}.room-hero p{font-size:13px}html[lang="en"] .room-hero h1{font-size:26px}html[lang="en"] .room-hero p{font-size:12px}
  .room-machine.game-card{padding:0 7px 7px;border-radius:16px}.room-machine .machine-heading{height:66px;padding-inline:2px;gap:4px}.room-machine .machine-title{gap:6px}.room-machine .machine-heading h2{font-size:20px}.room-machine .machine-subtitle{font-size:10px}.room-machine .club-mascot{width:27px}.room-machine .club-mascot svg{width:27px}.room-machine .machine-tools{gap:2px}.room-machine .machine-tools .icon-button{width:30px;height:38px;border-radius:16px}.room-machine .machine-tools .icon-button svg{width:18px}
  .room-pools{gap:7px;padding:0 2px 8px}.room-pool{min-width:105px;height:52px;padding:0 8px 0 0;gap:2px;border-radius:12px}.room-pool img{width:38px;height:59px}.room-pool strong{font-size:12px}.pool-selected{width:14px;height:14px;top:3px;right:3px}.pool-selected svg{width:11px}
  .room-batch{padding:3px 3px 4px 12px;font-size:12px}.room-batch strong{font-size:21px}.room-batch button{font-size:12px;padding:8px 12px;min-height:42px}.room-batch button svg{width:16px}
  /* Zoom the whole scene together: toys, claw and landing ring stay aligned.
     The visible stage spans x=100..900, retaining every reachable landing point. */
  .room-machine .canvas-wrap{aspect-ratio:8/5}
  .room-machine .canvas-wrap canvas{width:125%;left:50%;transform:translateX(-50%)}
  .room-console{grid-template-columns:47% minmax(0,1fr);padding:8px 7px 9px;gap:7px;border-width:4px;min-height:174px}.room-pad{padding:0}.room-pad>strong{position:static;font-size:11px;max-width:none;text-align:center;margin-bottom:5px}.room-pad .candy-pad{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);gap:2px}.room-pad .direction-button{width:44px;height:44px;border-radius:16px}.room-pad .direction-button svg{width:24px;height:24px}.room-pad .pad-heart svg{width:18px}
  .room-grab{padding-top:22px;gap:7px}.room-grab .grab-button{min-height:62px;font-size:21px;border-radius:28px;padding:10px 5px}.room-key-hint{font-size:10px;max-width:130px;line-height:1.5}.room-grab>small{font-size:9px;justify-content:center;text-align:center;gap:3px}.room-grab>small svg{width:11px;flex-shrink:0}
  .room-aside{grid-template-columns:1fr 1fr;gap:10px}.room-collection,.room-tips{padding:13px 10px;border-radius:15px}.room-card-heading{gap:5px}.room-card-heading h2,.room-tips h2{font-size:14px;gap:5px}.room-card-heading h2 svg,.room-tips h2 svg{width:20px;height:20px}.room-card-heading>span{font-size:12px}.room-progress{height:9px;margin:11px 0 13px}.room-previews{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.room-preview>span{width:17px;height:17px;right:0;bottom:2px}.room-preview>span svg{width:10px}.room-collection-link{min-height:40px;font-size:12px;gap:5px;margin-top:12px}
  .room-tips-body{grid-template-columns:1fr;margin-top:10px;min-height:0}.room-tip-art{min-height:100px}.room-tip-art>img:first-child{left:34%;width:32%;height:58px}.room-tip-art>img:last-child{left:22%;width:56%;height:70px}.room-tip-copy{font-size:10px;gap:7px;padding:8px}.room-tip-copy svg{width:14px;height:14px}
  .room-friends{padding:12px;gap:10px}.room-friend-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.room-friend-strip img{height:80px}.room-friend-strip strong{font-size:12px}
  html[data-page="play"] .page-footer{padding:12px 14px 90px;font-size:10px;justify-content:center}
  html[lang="en"] .room-pool strong{font-size:10px}html[lang="en"] .room-card-heading h2{font-size:12px;gap:4px}html[lang="en"] .room-card-heading h2 svg{display:none}html[lang="en"] .room-grab .grab-button{font-size:17px}
}
@media(max-width:360px){html[data-page="play"] .save-status{display:none}.room-machine .club-mascot{display:none}.room-machine .machine-heading h2{font-size:18px}.room-aside{grid-template-columns:1fr}.room-previews{grid-template-columns:repeat(6,minmax(0,1fr))}.room-tips-body{grid-template-columns:40% 1fr}.room-tip-copy{font-size:12px}.room-console{padding-inline:3px;gap:4px}.room-pad .candy-pad{grid-template-columns:repeat(3,42px);gap:0}.room-grab .grab-button{font-size:18px}}

/* Fixed merchant offers: a separate, optional part of the free playroom. */
.offers-hero{align-items:center;gap:24px}.offers-hero h1{font-size:clamp(27px,3.5vw,44px)}.offers-hero-icon{display:grid;place-items:center;flex:none;width:90px;height:90px;border-radius:28px;background:#f6e3ed;color:#bd688b;transform:rotate(7deg)}
.offers-promise{display:flex;align-items:center;gap:12px;border:1px solid #e7dfc6;background:#faf7e9;border-radius:16px;padding:16px 20px;color:#706640;font-size:14px;line-height:1.6}.offers-promise svg{flex:none}
.offers-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:26px 0}.offers-tabs{display:flex;gap:5px;padding:5px;background:#f5e8ec;border-radius:16px}.offers-tabs button{border:0;border-radius:12px;padding:12px 18px;color:#81536a;background:transparent;font:inherit;font-weight:700;cursor:pointer}.offers-tabs button[aria-pressed=true]{background:white;box-shadow:0 2px 8px #6834450d}.offers-tabs span{font-size:12px;margin-left:5px}.offers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.offer-card{min-width:0;border:1px solid #eed6df;border-radius:25px;background:#fffcfa;padding:26px;box-shadow:0 5px 22px #89536b08}.offer-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#bd7892}.offer-label{display:inline-block;color:#805474;background:#efe5f3;border-radius:7px;padding:5px 8px;font-size:10px;letter-spacing:.05em;line-height:1.6}.offer-merchant{color:#856673;margin:22px 0 7px;font-size:13px}.offer-card h2{color:#663b50;font-size:23px;line-height:1.35;margin:0;overflow-wrap:anywhere}.offer-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:38px;line-height:1.5;font-weight:800;color:#c86489;margin:15px 0}.offer-value span{font-size:15px;font-weight:600}.offer-details{display:grid;gap:12px;border-top:1px dashed #e9cbd7;padding-top:19px;margin:0}.offer-details div{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.offer-details dt{font-size:12px;color:#947682;flex-shrink:0}.offer-details dd{font-size:13px;text-align:right;margin:0;color:#674452;overflow-wrap:anywhere}.offer-terms{white-space:pre-wrap;overflow-wrap:anywhere;color:#826a76;font-size:13px;line-height:1.7;margin:18px 0}.offer-website{display:inline-block;font-size:13px;color:#966086;margin-bottom:16px}.offer-availability{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:#8e6c7e;margin:16px 0}.offer-card .primary-button{min-height:46px;font-size:14px}.offers-empty{border:1px dashed #decbd6;border-radius:23px;padding:42px 24px;text-align:center;background:#ffffff60;color:#896678}.offers-empty h2{font-size:22px}.offers-empty p{line-height:1.7;font-size:14px}.offers-privacy{font-size:12px;color:#8a7480;line-height:1.8;max-width:820px;margin:28px 0}.voucher-code{border:1px dashed #cdaebf;background:#faf0f4;padding:15px;border-radius:14px;margin-top:20px}.voucher-code span{display:block;font-size:12px;color:#90667c;margin-bottom:7px}.voucher-code code{font-family:ui-monospace,monospace;font-size:17px;color:#673c54;letter-spacing:.04em;overflow-wrap:anywhere;user-select:all}.voucher-status{font-size:13px;color:#57816b;margin:15px 0 0}.voucher-status.expired,.voucher-status.redeemed{color:#8c7780}.sponsor-banner{padding:24px;border:1px solid #e7d4df;border-radius:24px;background:linear-gradient(130deg,#fff9f2,#f5eafb);box-shadow:0 4px 12px #7a405b08}.sponsor-banner h2{margin:14px 0 9px;font-size:20px;color:#74435d;overflow-wrap:anywhere}.sponsor-banner p{font-weight:700;color:#a2607e;font-size:14px;line-height:1.7}.sponsor-banner small{display:block;color:#8a7580;font-size:12px;line-height:1.6}.sponsor-banner a,.sponsor-empty{display:block;margin-top:17px;color:#a2587a;font-size:13px;font-weight:700;text-decoration:none}.sponsor-empty{padding:20px;border:1px dashed #e2cbd9;border-radius:18px}.result-offer-link{display:block;margin-top:18px;color:#92617b;text-align:center;font-size:12px;text-decoration:underline;text-underline-offset:4px}.offers-tabs button:focus-visible,.offer-card button:focus-visible{outline:3px solid #ae80b3;outline-offset:3px}
@media(max-width:800px){.offers-grid{grid-template-columns:1fr}.offers-hero-icon{display:none}.offers-toolbar{align-items:stretch;gap:8px}.offers-tabs{flex:1}.offers-tabs button{padding:11px 10px;font-size:13px;flex:1}.offers-toolbar>.small-button{padding:10px;font-size:12px}.offer-card{padding:21px}.offer-value{font-size:32px}.mobile-nav{grid-template-columns:repeat(4,1fr)}.mobile-nav .nav-item{min-width:0}.mobile-nav .nav-item span{font-size:11px}}
@media(max-width:800px){#sponsor-slot{grid-column:1/-1}}

/* Approved Pocket Claw logo: preserve the original artwork and lettering. */
.sidebar .brand { gap:0; flex-shrink:0; }
.sidebar .brand-logo { display:block; width:140px; height:140px; max-width:100%; object-fit:contain; }
.sidebar .brand small, html[data-page="play"] .sidebar .brand small { margin:0 auto; font-size:12px; line-height:1.5; max-width:145px; }
.mobile-brand { display:none; }
@media(max-width:760px) {
  .mobile-brand { display:flex; align-items:center; flex-shrink:0; }
  .mobile-brand img { display:block; width:130px; height:auto; }
  .topbar .breadcrumb { display:none!important; }
  .topbar, html[data-page="play"] .topbar { display:flex; min-height:48px; gap:12px; }
}

/* Free daily play and a closed virtual decoration wallet. */
.quota-strip {display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:10px 20px;background:#fff6f8;color:#87556a}
.quota-strip button {border:1px solid #f0c5d4;border-radius:20px;background:white;padding:8px 13px;color:inherit;font:inherit;font-weight:700}
.quota-strip small {font-size:11px}
.economy-card {margin:0 0 24px;padding:24px;border:1px solid #f0d9df;border-radius:24px;background:#fffbfc;color:#765466}
.economy-heading {display:flex;justify-content:space-between;align-items:center;gap:12px}.economy-heading h2 {margin:0;font-size:22px}.economy-heading>strong {background:#fff0ce;padding:10px 16px;border-radius:18px;white-space:nowrap}
.economy-card p,.economy-card details {font-size:13px;line-height:1.7}.economy-card h3 {margin:22px 0 12px}.economy-card summary {cursor:pointer;padding:12px 0}
.recycle-row {display:flex;align-items:center;flex-wrap:wrap;gap:10px}.recycle-row label {font-size:13px}.recycle-row select {padding:10px;border:1px solid #edd6e0;border-radius:10px;background:#fff;color:inherit;max-width:100%}
.decoration-shop {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.decoration-option {display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 8px;background:#fff;border:1px solid #e9d5df;border-radius:16px;color:inherit;font:inherit}.decoration-option.selected {border:2px solid #b384a9}.decoration-option:disabled {opacity:.7}.decoration-option.selected:disabled {opacity:1}.decoration-option strong {font-size:13px}.decoration-option small {font-size:12px}.decoration-swatch {border:6px solid var(--frame-color);border-radius:12px;width:58px;height:43px;display:grid;place-items:center;background:#fff6ec;color:var(--frame-color)}
.shelf-room.trim-rose {outline:7px solid #d66c8c;outline-offset:-7px;border-radius:22px}.shelf-room.trim-mint {outline:7px solid #69af98;outline-offset:-7px;border-radius:22px}.shelf-room.trim-lavender {outline:7px solid #aa87cb;outline-offset:-7px;border-radius:22px}
@media(max-width:600px){.economy-card{padding:16px;margin-top:12px}.economy-heading h2{font-size:19px}.decoration-shop{grid-template-columns:repeat(2,minmax(0,1fr))}.quota-strip{padding:8px 12px}.quota-strip small{font-size:10px}.recycle-row select{flex:1}}

/* Fixed-benefit membership preview. No paid play or random rewards. */
.member-teaser{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 20px;padding:20px 24px;background:linear-gradient(120deg,#fff4dc,#fae8f3);border:1px solid #e7cdad;border-radius:22px;color:#704755;text-decoration:none}.member-teaser small{display:block;font-size:12px;margin-top:5px}.member-teaser>span:last-child{font-size:13px;white-space:nowrap}
.membership-page{max-width:1120px;margin:auto;padding-bottom:30px}.member-back{font-size:13px;color:#946576}.membership-hero{padding:36px 0 28px;text-align:center}.member-badge{display:inline-block;background:#fff1d9;color:#856336;border:1px solid #e6cd9f;padding:7px 15px;border-radius:30px;font-size:11px;letter-spacing:1.5px;font-weight:700}.membership-hero h1{font-size:clamp(27px,4vw,44px);margin:20px 0 12px;line-height:1.25;color:#69304c}.membership-hero p{font-size:14px;line-height:1.7;color:#997888}.member-status{font-size:12px;color:#a17948;margin-top:14px}.member-theme-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.member-theme-card{border:1px solid #e9d8dc;background:#fffcf9;border-radius:25px;overflow:hidden}.member-theme-scene{position:relative;overflow:hidden;padding:32px 30px 12px;aspect-ratio:1.55}.theme-pearl{background:radial-gradient(at top,#fffdf6,#f4e4bd)}.theme-midnight{background:radial-gradient(at top,#556681,#1b2c48)}.theme-star{position:absolute;right:25px;top:12px;color:#d8b675;font-size:32px}.member-cabinet-art{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 7px #51321c22)}.member-preview-toys{position:absolute;display:flex;justify-content:space-around;align-items:flex-end;left:13%;right:13%;top:34%;height:35%}.member-preview-toys img{width:27%;height:100%;object-fit:contain}.member-theme-copy{padding:20px 24px 24px}.member-theme-copy h2{font-size:22px;color:#6d3d52;margin:0 0 8px}.member-theme-copy p{font-size:13px;line-height:1.65;color:#8e7481;min-height:42px}.member-theme-copy button{width:100%}.member-benefits{padding:28px 0}.member-benefits>h2{font-size:20px;text-align:center;color:#74435a}.member-benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.member-benefit-grid>div{padding:24px;background:#fff;border:1px solid #efdee3;border-radius:20px}.member-benefit-grid strong{font-size:27px;font-weight:500;color:#b18c57}.member-benefit-grid h3{font-size:16px;color:#734959}.member-benefit-grid p{font-size:13px;color:#977985;line-height:1.7}.member-activation{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px;background:#fff2e7;border:1px solid #eed3c1;border-radius:24px}.member-activation h2{font-size:21px;color:#704355;margin:0}.member-activation p{font-size:13px;line-height:1.7;color:#96725f}.member-activation button{flex-shrink:0}.member-terms{font-size:12px;color:#927b86;line-height:1.9;margin:18px 6px}.member-extra-cabinet{margin-top:24px}.member-extra-cabinet h2{font-size:19px}.member-extra-cabinet p,.member-extra-cabinet a{font-size:12px;color:#93737f}.member-extra-cabinet .shelf-spot:disabled{opacity:1}.shelf-room.trim-member-pearl{border-radius:22px;outline:8px solid #d4b47c;outline-offset:-8px;background:#fff8e6;box-shadow:0 0 0 5px #fff2ce}.shelf-room.trim-member-midnight{border-radius:22px;outline:8px solid #293b58;outline-offset:-8px;background:#293b58;box-shadow:0 0 0 5px #c9ac70}
@media(max-width:650px){.member-teaser{padding:17px;align-items:flex-start;flex-direction:column;gap:10px}.member-theme-grid{grid-template-columns:1fr;gap:16px}.member-theme-scene{aspect-ratio:1.7}.membership-hero{padding-top:25px}.member-benefit-grid{grid-template-columns:1fr;gap:10px}.member-benefit-grid>div{padding:16px 20px}.member-benefit-grid strong{float:right}.member-benefit-grid h3{margin-top:0}.member-benefit-grid p{margin-bottom:0}.member-activation{align-items:stretch;flex-direction:column;padding:20px}.member-theme-copy{padding:18px}.member-extra-cabinet .section-heading{flex-wrap:wrap;gap:8px}}
