@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Nunito:wght@400;600;700;800;900&family=Patrick+Hand&display=swap');
/* Shared links and canvas sizes stay explicit for the buildless version. */
.piece-thumb{display:block;width:100%;height:68px;border-radius:8px;overflow:hidden}.piece-thumb>svg{width:100%;height:100%;display:block}.option-grid .option{min-height:104px}
.hidden-tio:active:not(:disabled){transform:translate(-50%,-90%)}
[hidden]{display:none!important}
#navigation>a{display:flex;align-items:center;gap:11px;width:100%;padding:11px 12px;border-radius:13px;font-weight:800;color:#647057;font-size:13px;text-decoration:none}
#navigation>a:hover{background:#f9f7ea88}
#navigation>a.active{background:#fffcf3;box-shadow:0 3px 6px #82926b22;color:#9b634d}
#navigation>a .icon{color:#80916d}
.feature,.game-tile,.letter-strip,.back-button{text-decoration:none}
.feature h2{font-weight:900;font-size:27px;line-height:1.1;margin:14px 0 10px;letter-spacing:-.8px}
.profile-button[aria-pressed=true]{background:#f5dedf;color:#a94e68}
.profile-button[data-who=manu][aria-pressed=true]{background:#e5ecda;color:#6a8667}
.sidebar.is-open{transform:translateX(0)}
.page-heading{justify-content:flex-start!important}
.pane-title{display:flex;align-items:center;justify-content:space-between}
.pane-title h2{font-size:20px;margin:0}
.draw-board canvas{display:block;width:100%;height:100%;touch-action:none}
.progress-track>span{display:block;height:100%;background:#96b08a}
.pet-device-name{font-size:12px;font-weight:900;letter-spacing:2px;color:#965c6c;margin:5px 0 24px}
.pet-buttons>span{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;border:3px solid #f9d5da;background:#e58ca3;color:#fff7e5;box-shadow:inset -2px -3px #c76c8833,0 3px 5px #b7778233}
.letter-paper>h1{font:39px 'Patrick Hand',cursive;color:#bd6a77;margin:20px 0 26px}
.sound-button{position:relative}.sound-button>span{position:absolute;right:3px;bottom:1px;line-height:1;background:#fffaf0;border-radius:50%}
@media(max-width:520px){.feature h2{font-size:21px;max-width:135px}.tag.mint{display:none}.top-title .crumb{font-size:8px}.greeting{max-width:165px}}
:root{--cream:#fffaf0;--paper:#fffdf8;--ink:#4e473c;--muted:#8b8073;--pink:#d75b78;--pink-soft:#f9dfe2;--mint:#8aaa8b;--mint-soft:#e7efdf;--gold:#ebc866;--blue:#78a8bc;--line:#e9ddca;--shadow:0 7px 18px #8a6f4920,0 1px 2px #8a6f4920;--round:25px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:#f4ecdf;background-image:radial-gradient(#d7bfa630 1px,transparent 1px);background-size:9px 9px;font:15px/1.5 'Nunito',system-ui,sans-serif;color:var(--ink)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.5}button{touch-action:manipulation}a{color:var(--pink)}svg{max-width:100%}.icon{width:23px;height:23px;flex-shrink:0;vertical-align:middle}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:4px}button:active:not(:disabled){transform:translateY(1px)}.shell{max-width:1460px;margin:auto;display:grid;grid-template-columns:224px minmax(0,1fr);gap:26px;padding:22px 30px 60px}
.sidebar{position:sticky;top:22px;align-self:start;padding:22px 12px 17px;background:#e5eddb;border:1px solid #fff;border-radius:30px;box-shadow:var(--shadow);max-height:calc(100dvh - 44px);overflow:auto;scrollbar-width:thin}.brand{text-align:center;margin:0 0 9px;line-height:1.1}.brand-mark{font:800 37px 'Nunito',sans-serif;letter-spacing:-4px;color:#a56b53;display:block}.brand-mark i{font:italic 28px Georgia,serif;color:var(--pink);padding:0 4px}.brand small{font-size:12px;font-weight:800;letter-spacing:1px;color:#7d876a}.sidebar .ribbon{height:9px;margin:15px -12px 18px;background:repeating-linear-gradient(90deg,#8ba78655 0 9px,#fff8 9px 18px);border-block:1px dashed #8ba78677}.nav-label{font-size:10px;letter-spacing:1.8px;font-weight:900;color:#82876c;margin:18px 13px 6px;text-transform:uppercase}.nav-button{display:flex;align-items:center;gap:11px;width:100%;border:0;background:transparent;text-align:left;padding:11px 12px;border-radius:13px;font-weight:800;color:#647057;font-size:13px;transition:background .16s}.nav-button .icon{stroke-width:1.7;filter:drop-shadow(0 2px 1px #fff);color:#80916d}.nav-button:hover{background:#f9f7ea88}.nav-button.active{background:#fffcf3;box-shadow:0 3px 6px #82926b22;color:#9b634d}.nav-button.active .icon{color:#c47b68}.sidebar-note{margin:22px 8px 4px;padding:14px 9px;background:#fff7de;border:1px dashed #d7bb7d;border-radius:12px;text-align:center;font:18px/1.2 'Patrick Hand',cursive;color:#8b7352;transform:rotate(-2deg)}.sidebar-note .icon{display:block;margin:0 auto 6px;color:var(--pink)}
main{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;margin-bottom:16px}.crumb{font-size:11px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;color:#9c8e7e}.greeting{font:25px 'Patrick Hand',cursive;margin-top:2px;color:#9b795a}.top-actions{display:flex;align-items:center;gap:12px}.profile-switch{display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:30px;background:#fffcf2;padding:4px;box-shadow:0 2px 5px #98753f10}.profile-button{display:flex;gap:6px;align-items:center;padding:4px 11px 4px 4px;background:none;border:0;border-radius:25px;font-size:13px;font-weight:800}.profile-button img{width:30px;height:30px;object-fit:cover;border-radius:50%;background:#f4dbd8}.profile-button.active{background:#f5dedf;color:#a94e68}.profile-button[data-who=manu].active{background:#e5ecda;color:#6a8667}.sound-button,.menu-button{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--paper);width:39px;height:39px}.menu-button{display:none}
.hero{min-height:340px;position:relative;overflow:hidden;border:1px solid #fff1d5;background:#fff2db;border-radius:28px;box-shadow:var(--shadow);padding:44px 32px}.hero img{position:absolute;right:0;top:0;width:100%;height:100%;object-fit:contain;object-position:right center}.hero-copy{position:relative;z-index:1;max-width:36%;padding:14px 0}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:900;text-transform:uppercase;color:#a87861;margin:0 0 12px}.hero h1{font-size:clamp(27px,3.2vw,47px);font-weight:900;line-height:1.05;letter-spacing:-1.8px;margin:0 0 15px;color:#675342}.hero h1 span{color:#cf6079}.hero h1 em{font-family:'Patrick Hand',cursive;color:#8da079;font-style:normal;font-size:.8em}.hero p{font-size:14px;line-height:1.5;color:#9c8064;max-width:240px}.hero .hand{font:23px/1.1 'Patrick Hand',cursive;color:#ac7955;margin:15px 0 21px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 19px;border-radius:13px;border:1px solid #fff8;background:#d3657a;color:#fffaf1;box-shadow:inset 0 2px #ffffff35,inset 0 -3px #af435e33,0 4px 8px #ac6d5422;font-weight:900;font-size:13px;min-height:44px;text-decoration:none}.button.secondary{background:#8ea988;color:white}.button.cream{background:#fff8e8;color:#9c7955;border-color:#e7d7be;box-shadow:inset 0 2px #fff,0 3px 5px #92764b12}.button.blue{background:#82a8bb}.button.small{min-height:34px;padding:7px 12px;font-size:12px}.button.ghost{box-shadow:none;background:transparent;color:#a47260;border:1px dashed #cfa990}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:28px 0 13px}.section-heading h2{font-size:22px;letter-spacing:-.5px;margin:0;font-weight:900}.section-heading p{font:19px 'Patrick Hand',cursive;color:#a0886d;margin:0}.section-heading .icon{color:#d1868e;margin-right:7px}.hand{font-family:'Patrick Hand',cursive}.tag{display:inline-block;border:1px solid #e9d7bb;border-radius:20px;background:#fff5da;padding:4px 10px;color:#a17d48;font-size:10px;font-weight:900;letter-spacing:.3px}.tag.mint{background:#eaf0e1;border-color:#cbd9ba;color:#78916f}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature{position:relative;overflow:hidden;min-height:215px;border-radius:23px;border:1px solid #fff8;background:#f5dedc;box-shadow:var(--shadow);padding:26px 23px;text-align:left;color:var(--ink)}.feature.makeup{background:#e4ebdc}.feature .copy{position:relative;z-index:1;max-width:60%}.feature h3{font-weight:900;font-size:28px;line-height:1.05;margin:14px 0 10px;letter-spacing:-.8px}.feature p{font-size:12px;max-width:190px;color:#9b776c;line-height:1.5}.feature .feature-art{position:absolute;right:-3%;bottom:-50px;width:46%;height:250px;filter:drop-shadow(0 8px 5px #9c765328)}.feature .feature-art img{width:100%;height:100%;object-fit:contain}.feature .icon-bubble{position:absolute;right:8px;top:16px;transform:rotate(9deg);background:#fff7e6;border:1px solid white;border-radius:15px;padding:10px;color:#c8876e;box-shadow:var(--shadow)}.feature .arrow-circle{position:absolute;left:23px;bottom:16px;border-radius:50%;background:#fffbeb99;padding:6px}.feature .tape{position:absolute;right:26%;top:-4px;width:65px;height:21px;background:#fff8d9aa;transform:rotate(-12deg)}
.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.game-tile{padding:18px;border:1px solid #fff;border-radius:20px;background:var(--paper);box-shadow:var(--shadow);color:var(--ink);text-align:left;position:relative;overflow:hidden;min-height:178px}.game-tile:nth-child(3n+2){background:#f5edda}.game-tile:nth-child(3n){background:#eaf0e8}.game-tile h3{font-size:16px;line-height:1.2;margin:12px 0 6px;font-weight:900}.game-tile p{font-size:11px;line-height:1.4;color:var(--muted);margin:0;max-width:180px}.tile-art{color:#b98269;background:#f2decb;border:1px solid #fff;border-radius:15px;display:grid;place-items:center;width:47px;height:47px;box-shadow:inset 0 2px 2px #fff8,0 3px 5px #8e765421;transform:rotate(-5deg)}.tile-art .icon{width:27px;height:27px}.game-tile.search-tile{grid-column:span 2;min-height:190px;background:#f4e8d2}.search-tile .tile-image{position:absolute;right:0;top:0;height:100%;width:52%;object-fit:cover;mask-image:linear-gradient(90deg,transparent,#000 25%)}.search-tile h3,.search-tile p,.search-tile .tile-art{position:relative;max-width:49%}.game-tile .done{position:absolute;right:12px;top:12px;background:#e9f2db;color:#78965f;border-radius:50%;width:25px;height:25px;text-align:center;font-weight:900}
.letter-strip{margin-top:24px;border:1px dashed #cfaa89;border-radius:18px;background:#fff7e7;display:flex;gap:18px;align-items:center;padding:20px 23px;position:relative}.letter-strip .icon{color:#ce6c7d;width:39px;height:39px}.letter-strip h3{font-size:16px;margin:0 0 4px}.letter-strip p{font:19px 'Patrick Hand',cursive;color:#9d7d5c;margin:0}.letter-strip button{margin-left:auto;flex-shrink:0}.bottom-note{font:16px 'Patrick Hand',cursive;text-align:center;color:#a78e76;margin:28px 0 0}
.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:8px 0 23px}.page-heading h1{font-weight:900;letter-spacing:-1px;line-height:1.1;font-size:34px;margin:8px 0 10px}.page-heading p{font-size:13px;color:var(--muted);margin:0;max-width:650px}.page-heading .subtitle{font:21px 'Patrick Hand',cursive;color:#aa7963;margin-top:8px}.back-button{background:#fff9ec;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;margin-top:5px}.pane{background:var(--paper);border:1px solid #fff;border-radius:23px;box-shadow:var(--shadow);padding:22px}.pane-title{font-size:17px;font-weight:900;margin:0 0 16px}.studio-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(290px,.92fr);gap:20px;align-items:start}.mirror-wrap{position:sticky;top:20px}.doll-stage{border:11px solid #fffbef;outline:1px solid #decaaf;border-radius:90px 90px 28px 28px;overflow:hidden;box-shadow:0 6px 16px #806d4220,inset 0 0 0 2px #e4c99f;max-width:420px;margin:auto;background:#f5ebdb}.doll-stage>svg{width:100%;height:auto;display:block;max-height:60dvh}.stage-label{display:flex;align-items:center;justify-content:space-between;margin:16px 0 10px;font:24px 'Patrick Hand',cursive;color:#9b795c}.stage-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:17px 0 8px}.caption-input{width:100%;padding:11px 14px;border:1px solid #e4d5bd;border-radius:11px;background:#fffdf7;min-height:43px;color:var(--ink);font-size:13px}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.tab{padding:8px 11px;background:#f5eedf;border:1px solid #ecdfca;border-radius:10px;font-size:11px;font-weight:900;min-height:37px}.tab.active{background:#e4edda;color:#698466;border-color:#b9c9aa}.option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.option{min-height:82px;border:1px solid #eee3d3;border-radius:13px;background:#faf7ef;padding:8px 5px;font-size:11px;font-weight:800;color:#8d7962;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px}.option .icon{width:29px;height:29px;color:#bd8c7a}.option.selected{outline:2px solid #98b18c;background:#eef2e7;color:#6f8665}.swatches{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.swatch{width:30px;height:30px;border-radius:50%;border:3px solid #fff;outline:1px solid #dacdb7;box-shadow:0 2px 3px #66502a12}.swatch.active{outline:3px solid #8b9e78}.control-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:900;color:#9b8064;letter-spacing:.5px;margin:25px 0 7px}.hint{font-size:11px;color:#aa917a;line-height:1.5;margin:14px 0 0}.studio-tip{margin-top:18px;background:#fff1cb;border:1px dashed #dfbd77;padding:14px;border-radius:14px;font:19px/1.3 'Patrick Hand',cursive;color:#a38a58}.counter-note{font-size:10px;color:#a08d76;margin-top:14px}
.makeup-stage{position:relative;border:12px solid #e8c7bf;border-radius:130px 130px 36px 36px;box-shadow:0 0 0 4px #fff6eb,0 0 0 5px #d9b7aa,0 12px 25px #a87c4720;background:radial-gradient(ellipse,#fff9f1,#f4dddc);aspect-ratio:1/1;max-width:450px;margin:10px auto}.makeup-stage .portrait{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.makeup-stage canvas{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none;border-radius:inherit}.tool-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.range{width:100%;accent-color:#d97b91;min-height:35px}.sticker-row{display:flex;gap:8px;flex-wrap:wrap}.sticker-button{font-size:22px;width:43px;height:43px;border:1px solid var(--line);background:#fffbf2;border-radius:10px}.sticker-button.active{outline:2px solid var(--mint)}
.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.photo{background:#fffdf7;border:1px solid #e7dbc5;box-shadow:var(--shadow);padding:10px 10px 15px;transform:rotate(-1deg);border-radius:4px}.photo:nth-child(even){transform:rotate(1deg)}.photo img{width:100%;height:auto;display:block}.photo button{margin-top:9px;width:100%}.empty-state{text-align:center;padding:50px 20px;border:2px dashed #deccb2;border-radius:22px;background:#fffbf2}.empty-state .icon{width:55px;height:55px;color:#bda17c}.empty-state h2{font-size:20px;margin:13px 0 5px}.empty-state p{font-size:13px;color:var(--muted)}
.search-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 15px}.target-card{display:flex;gap:9px;align-items:center;background:#fff9e8;border:1px solid #e7d3a9;border-radius:13px;padding:6px 14px;font-size:12px;font-weight:900}.target-card svg{height:50px;width:32px}.search-viewport{height:min(70dvh,700px);overflow:auto;background:#f0e5cf;border-radius:20px;border:7px solid #fff7e5;box-shadow:var(--shadow);touch-action:pan-x pan-y;overscroll-behavior:contain;position:relative}.search-world{position:relative;width:1400px;max-width:none;line-height:0;isolation:isolate}.search-world>img{display:block;width:100%;height:auto;pointer-events:none}.hidden-tio{position:absolute;width:2.5%;aspect-ratio:.55;transform:translate(-50%,-90%);border:0;padding:0;background:transparent;line-height:0;border-radius:5px}.hidden-tio svg{width:100%;height:100%}.hidden-tio.hinted{outline:4px dashed #e0bd40;outline-offset:9px;animation:pulse 1s infinite}.search-message{margin:13px 0;font:23px 'Patrick Hand',cursive;color:#a47f52}
.pet-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(240px,.7fr);gap:24px}.pet-device{max-width:420px;margin:auto;background:linear-gradient(135deg,#f5c0ca,#e998ad);padding:35px 25px 30px;border:6px solid #fbd9de;border-radius:48% 48% 40% 40% / 28% 28% 39% 39%;box-shadow:inset -9px -12px 13px #d9829e66,inset 5px 6px 5px #fff8,0 15px 23px #a7776729;text-align:center}.pet-device h2{font:28px 'Patrick Hand',cursive;color:#b36a75;margin:0 0 20px}.lcd{background:#c9dbab;border:10px solid #b9c992;outline:2px solid #9b9f7c;border-radius:23px;position:relative;height:235px;overflow:hidden;display:flex;justify-content:center;align-items:end;image-rendering:pixelated}.lcd:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,#0000 0 3px,#65755208 3px 4px);pointer-events:none}.pet-sprite{width:150px;height:175px;image-rendering:pixelated;transition:transform .3s}.pet-sprite.playing{animation:hop .35s 4}.pet-state{position:absolute;top:10px;left:0;right:0;text-align:center;font:15px 'DM Sans',sans-serif;color:#526c3e}.pet-buttons{display:flex;gap:13px;justify-content:center;margin:24px 0 0}.pet-buttons button{width:43px;height:43px;border-radius:50%;border:3px solid #f9d5da;background:#e58ca3;box-shadow:inset -2px -3px #c76c8833,0 3px 5px #b7778233}.pet-buttons .icon{color:#fff5e1;width:21px;height:21px}.pet-meter{margin:16px 0}.meter-label{display:flex;justify-content:space-between;font-size:12px;font-weight:900;margin-bottom:6px}.meter-track{height:9px;background:#efe6d4;border-radius:10px;overflow:hidden}.meter-fill{height:100%;border-radius:10px;background:#9db285;transition:width .3s}.pet-care{display:grid;grid-template-columns:1fr 1fr;gap:9px}.pet-care button{font-size:12px}
.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:620px;margin:20px auto}.memory-card{aspect-ratio:1;border:3px solid #fff8;border-radius:17px;background:repeating-linear-gradient(45deg,#e6b2bb 0 12px,#edc4ca 12px 24px);box-shadow:0 3px 6px #8e705320;font-size:30px;font-weight:900;color:#fff}.memory-card.open,.memory-card.matched{background:#fff8e8;color:#bd8d68;border-color:#e1cda8}.memory-card.matched{background:#e7efdc;color:#8aab75}.memory-card .icon{width:48%;height:48%}.stats-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:10px 0}.stat-chip{padding:8px 14px;background:#fff4d9;border:1px solid #e9d6af;border-radius:10px;font-size:12px;font-weight:900}
.quiz-stage{max-width:760px;margin:0 auto;background:#fffdf5;border:1px solid white;border-radius:25px;box-shadow:var(--shadow);padding:32px}.quiz-stage h2{font-weight:900;font-size:27px;text-align:center;line-height:1.3;max-width:620px;margin:22px auto}.quiz-visual{font-size:44px;text-align:center;letter-spacing:13px;margin:24px 0;line-height:1.7}.answers{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:25px 0}.answer{min-height:65px;padding:15px;border:2px solid #e9decb;border-radius:15px;background:#faf5e9;text-align:left;font-weight:800;font-size:15px}.answer.correct{background:#e2edda;border-color:#9fb88c}.answer.incorrect{background:#f4e2dc;border-color:#dcb6a3}.quiz-feedback{font-size:14px;text-align:center;min-height:60px;line-height:1.5;color:#8c795f}.quiz-footer{display:flex;justify-content:space-between;gap:15px;align-items:center}.progress-track{height:8px;border-radius:12px;background:#f0e6d4;overflow:hidden;flex:1}.progress-track i{display:block;height:100%;background:#96b08a}.category-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:15px}.category-row button{min-height:39px}
.puzzle-board{display:grid;grid-template-columns:repeat(3,1fr);max-width:600px;aspect-ratio:1.5;margin:20px auto;border:8px solid #fff5e2;border-radius:14px;background:#e6d7bc;box-shadow:var(--shadow);gap:2px;overflow:hidden}.puzzle-tile{border:0;background-size:300% 300%;min-width:0;min-height:0;box-shadow:inset 0 0 0 1px #fff9}.puzzle-tile.selected{outline:4px solid #e7b83b;outline-offset:-4px;filter:brightness(1.07)}.puzzle-preview{width:170px;border:5px solid #fff7e5;border-radius:10px;box-shadow:var(--shadow);display:block;margin:15px auto}.draw-layout{display:grid;grid-template-columns:minmax(250px,1fr) 220px;gap:20px}.draw-board{width:100%;aspect-ratio:1;background:#fffdf6;border:12px solid #ecdbb7;outline:1px solid #d5bd95;border-radius:10px;box-shadow:var(--shadow);touch-action:none}
.letter-paper{max-width:820px;margin:15px auto;padding:50px clamp(22px,5vw,65px);background:#fff9e7;box-shadow:0 8px 30px #89714220;border:1px solid #e8d8b4;border-radius:6px;position:relative;overflow:hidden}.letter-paper:before{content:"";position:absolute;inset:0 auto 0 18px;width:5px;background:repeating-linear-gradient(#c9d5b1 0 6px,#0000 6px 15px)}.letter-paper h2{font:39px 'Patrick Hand',cursive;color:#bd6a77;margin:12px 0 26px}.letter-paper p{font:24px/1.65 'Patrick Hand',cursive;color:#896c51;margin:0 0 18px}.letter-paper .signature{font-size:32px;color:#c56b7b;margin-top:30px}.letter-flowers{position:absolute;right:25px;top:25px;font-size:38px;color:#c8a66e}.letter-meta{font:17px 'Nunito',sans-serif!important;color:#b29373!important;border-bottom:1px dashed #ddc7a2;padding-bottom:17px}.letter-photo{max-width:230px;float:right;margin:0 0 20px 25px;border:8px solid #fffef8;box-shadow:var(--shadow);transform:rotate(5deg)}
dialog{border:1px solid #e2c9ab;border-radius:24px;background:#fffaf0;color:var(--ink);box-shadow:0 20px 100px #4a352950;padding:26px;max-width:min(94vw,520px);width:100%}dialog::backdrop{background:#4d433d66;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.dialog-head h2{margin:0;font-size:23px}.close-button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:white;font-size:22px}.photo-preview{display:block;max-height:60dvh;max-width:100%;margin:18px auto;box-shadow:var(--shadow);transform:rotate(-2deg)}.dialog-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;z-index:100;background:#655745;color:#fff7e8;border:1px solid #a99273;border-radius:15px;padding:13px 22px;font-size:13px;font-weight:800;box-shadow:var(--shadow);transition:opacity .2s,transform .2s;max-width:90vw;text-align:center}#toast.visible{opacity:1;transform:translate(-50%,0)}
@keyframes pulse{50%{outline-offset:15px;outline-color:#cf6380}}@keyframes hop{50%{transform:translateY(-18px) rotate(4deg)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(min-width:1250px){.hero{min-height:380px}.hero-copy{max-width:35%}.feature{min-height:230px}.feature .feature-art{height:280px;width:43%}}
@media(max-width:1050px){.shell{grid-template-columns:190px minmax(0,1fr);gap:18px;padding:17px}.sidebar{padding:18px 8px}.nav-button{font-size:12px;gap:8px;padding:10px 8px}.hero{min-height:315px;padding:30px 22px}.hero-copy{max-width:40%}.hero h1{font-size:34px}.hero img{object-fit:cover;object-position:45% center;opacity:.6}.hero-copy{max-width:47%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff4dd 0%,#fff4ddbb 24%,#fff4dd00 60%)}.hero-copy{z-index:2}.game-grid{grid-template-columns:1fr 1fr}.studio-grid{grid-template-columns:minmax(230px,1fr) minmax(260px,1fr)}.option-grid{grid-template-columns:repeat(3,1fr)}.pane{padding:16px}}
@media(max-width:780px){.shell{display:block;padding:15px 14px 45px}.sidebar{position:fixed;inset:0 auto 0 0;top:0;width:250px;z-index:25;max-height:100dvh;border-radius:0 25px 25px 0;transform:translateX(-110%);transition:transform .2s;box-shadow:20px 0 60px #4c382a33}.sidebar.open{transform:translateX(0)}.menu-button{display:grid}.topbar{margin-bottom:14px}.greeting{font-size:20px}.crumb{font-size:9px}.top-actions{gap:7px}.profile-button{padding-right:9px;font-size:12px}.profile-button img{width:26px;height:26px}.sound-button{display:none}.hero{min-height:320px;padding:25px 20px}.hero img{opacity:1;object-fit:contain;object-position:right bottom;width:108%;height:100%;left:0;right:auto}.hero:after{background:linear-gradient(90deg,#fff2db 0%,#fff2dbde 15%,#fff2db00 55%)}.hero-copy{max-width:43%;padding:0}.hero h1{font-size:32px}.hero .hand{font-size:20px}.hero p{font-size:12px}.hero .button{padding:10px 12px;font-size:11px}.hero .eyebrow{font-size:8px;letter-spacing:1px}.feature-grid{gap:12px}.feature{padding:19px 15px;min-height:210px}.feature h3{font-size:23px}.feature p{font-size:11px}.feature .feature-art{right:-10%;bottom:-26px;width:49%;height:210px}.section-heading h2{font-size:21px}.section-heading p{font-size:17px}.studio-grid{grid-template-columns:1fr 1fr;gap:13px}.option-grid{grid-template-columns:1fr 1fr}.tabs{gap:5px}.tab{font-size:10px;padding:7px 8px}.doll-stage{border-width:7px}.makeup-stage{border-width:8px}.tool-options{grid-template-columns:1fr 1fr}.page-heading h1{font-size:28px}.pet-layout{grid-template-columns:1fr 1fr}.pet-device{padding:25px 16px}.lcd{height:200px}.draw-layout{grid-template-columns:1fr}.album-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.topbar{gap:7px}.topbar>.top-title{flex:1}.greeting{font-size:19px}.profile-switch{gap:0}.profile-button{font-size:11px;padding:3px 7px 3px 3px}.profile-button img{width:23px;height:23px}.menu-button{width:34px;height:34px}.hero{min-height:370px;padding:21px 18px}.hero img{width:126%;height:90%;left:3%;top:10%;object-position:center bottom;opacity:.88}.hero:after{background:linear-gradient(90deg,#fff2db 0%,#fff2dbbb 10%,#fff2db00 65%)}.hero-copy{max-width:49%}.hero h1{font-size:31px}.hero .hand{font-size:19px;max-width:145px}.hero p{max-width:140px;font-size:11px}.hero .eyebrow{max-width:120px}.feature-grid{grid-template-columns:1fr 1fr}.feature{min-height:220px;padding:17px 13px}.feature .copy{max-width:90%}.feature h3{font-size:22px;max-width:135px}.feature p{max-width:115px;font-size:10px}.feature .feature-art{height:137px;width:70%;right:-9%;bottom:-27px;opacity:.9}.feature .tag{font-size:8px;padding:3px 6px}.feature .arrow-circle{left:14px;bottom:16px}.feature .icon-bubble{display:none}.feature .tape{width:35px;height:14px}.section-heading p{max-width:110px;text-align:right;font-size:15px}.game-grid{gap:10px}.game-tile{padding:14px 12px;min-height:175px}.game-tile h3{font-size:15px}.game-tile p{font-size:10px}.game-tile.search-tile{grid-column:span 2;min-height:170px}.letter-strip{padding:17px 14px;gap:12px;flex-wrap:wrap}.letter-strip button{margin-left:50px}.letter-strip .icon{width:30px;height:30px}.letter-strip p{font-size:18px}.studio-grid{grid-template-columns:1fr}.mirror-wrap{position:relative;top:auto}.doll-stage{max-width:280px}.doll-stage>svg{max-height:55dvh}.studio-grid .pane{padding:17px}.tabs{justify-content:center}.option-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.option{font-size:9px;min-height:73px}.option .icon{width:25px;height:25px}.control-label{margin-top:18px}.studio-tip{font-size:17px}.makeup-stage{max-width:320px}.tool-options{grid-template-columns:repeat(4,1fr)}.page-heading h1{font-size:27px}.page-heading .subtitle{font-size:19px}.pet-layout{grid-template-columns:1fr}.pet-device{width:310px;max-width:100%;padding:30px 22px}.quiz-stage{padding:20px 16px}.quiz-stage h2{font-size:23px}.quiz-visual{font-size:34px;letter-spacing:7px}.answer{font-size:13px;min-height:58px}.answers{gap:8px}.quiz-footer{flex-wrap:wrap}.memory-board{gap:8px}.memory-card{border-radius:12px}.letter-paper{padding:35px 25px}.letter-paper h2{font-size:32px}.letter-paper p{font-size:22px}.letter-photo{float:none;display:block;margin:0 auto 22px;width:150px}.search-viewport{height:60dvh}.search-toolbar .button{font-size:11px;padding:9px 12px}.album-grid{gap:12px}}

@media(max-width:520px){.hero{min-height:480px}.hero img{width:100%;height:240px;left:0;top:auto;bottom:0;object-fit:cover;object-position:right bottom;opacity:1}.hero:after{display:none}.hero-copy{max-width:100%}.hero h1{font-size:34px;max-width:260px}.hero h1 br,.hero .hand br{display:none}.hero .hand{max-width:260px;font-size:20px}.feature p{max-width:130px}.piece-thumb{height:53px}.option-grid .option{min-height:90px}.topbar{align-items:center}.greeting{font-size:17px}.sidebar:not(.is-open){visibility:hidden}.sidebar.is-open{visibility:visible}}
@media(max-width:520px){.studio-grid:has(.makeup-stage) .mirror-wrap{position:sticky;top:0;z-index:4;background:#f4ecdf;border-radius:20px;padding:9px 5px 12px;box-shadow:0 5px 12px #8a6f4915}.studio-grid:has(.makeup-stage) .makeup-stage{max-width:220px;margin:4px auto}.studio-grid:has(.makeup-stage) .hint{display:none}.studio-grid:has(.makeup-stage) .stage-actions{margin-top:12px}}
@media(max-width:520px){.hero img{object-fit:contain}}
.quiz-flag{display:block;width:190px;height:125px;max-width:100%;object-fit:contain;margin:0 auto;filter:drop-shadow(0 3px 4px #66502a25)}
