:root{color-scheme:light;font-family:ui-rounded,system-ui,-apple-system,'Segoe UI',sans-serif;color:#203356}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f4f8ff}.child-app{position:relative;isolation:isolate;height:100dvh;min-height:100dvh;display:flex;flex-direction:column;background:linear-gradient(#a9dfff 0%,#dff4ff 52%,#fff3cc 100%);overflow:hidden}.child-app:before{content:"";position:fixed;z-index:-1;inset:auto -10vw -20vh;height:34vh;background:radial-gradient(ellipse 60% 120% at 10% 100%,#7ccd70 60%,transparent 61%),radial-gradient(ellipse 55% 130% at 88% 100%,#8edb73 58%,transparent 59%),linear-gradient(transparent 50%,#b5e78c 50%);pointer-events:none}.child-header{height:102px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:13px clamp(14px,3vw,50px);border-bottom:1px solid #ffffff91;background:#ffffff4d;backdrop-filter:blur(13px);z-index:2}.child-back,.child-clear{background:#fff9;border:2px solid #ffffff;border-radius:23px;box-shadow:0 8px 18px #4886ab16;text-decoration:none;color:#234574;padding:12px 18px;white-space:nowrap;font-size:16px;font-weight:760}.child-back:hover,.child-clear:hover{background:white}.child-clear{cursor:pointer}.child-header-title{display:flex;align-items:center;gap:14px;text-align:center}.child-header-title h1{font-size:clamp(23px,3.4vw,40px);margin:0;color:#15386c;letter-spacing:-.04em;line-height:1.05;text-shadow:0 2px white}.child-header-title p{font-size:clamp(12px,1.3vw,17px);margin:7px 0 0;color:#285b8d;font-weight:560}.star{font-size:46px;color:#ffc62b;text-shadow:0 2px #ed893d,0 5px 15px #ea934e}.child-decor{position:absolute;inset:100px 0 0;z-index:-1;pointer-events:none}.dcloud{position:absolute;width:140px;height:45px;background:#ffffffc5;border-radius:40px;filter:drop-shadow(0 6px 1px #ffffff40)}.dcloud:before,.dcloud:after{content:"";position:absolute;background:inherit;border-radius:50%;bottom:12px}.dcloud:before{left:24px;width:70px;height:70px}.dcloud:after{left:70px;width:55px;height:55px}.dcloud.one{top:17%;left:8%}.dcloud.two{top:5%;right:7%;transform:scale(.75)}.dsun{position:absolute;right:6%;top:7%;font-size:85px;color:#ffd35b;opacity:.7}.dstar{position:absolute;color:#ffd35f;font-size:35px}.dstar.one{top:35%;right:17%}.dstar.two{top:20%;left:32%;color:#fff}.dstar.three{bottom:11%;left:16%;color:#ffb2a1}.chat-scene{flex:1;min-height:0;display:flex;justify-content:center;overflow:hidden;padding:25px 14px 10px}.child-messages{width:min(100%,1050px);height:100%;min-height:240px;overflow-y:auto;scroll-behavior:smooth;padding:6px clamp(2px,2vw,25px) 22px;overscroll-behavior:contain;scrollbar-color:#6cb3e699 transparent}.chat-turn{display:flex;gap:15px;align-items:flex-end;margin:12px 0 27px;animation:appear .2s ease}.chat-turn.scratch{margin-right:12%}.chat-turn.you{flex-direction:row-reverse;margin-left:12%}.chat-avatar{flex:0 0 90px;width:90px;max-height:100px;object-fit:contain;filter:drop-shadow(0 4px 5px #29446d22)}.user-avatar{display:grid;place-items:center;width:74px;height:74px;flex-basis:74px;border-radius:50%;background:linear-gradient(130deg,#ffc8d8,#f887b6);border:4px solid white;font-size:39px;box-shadow:0 8px 20px #e06e9e30}.turn-copy{display:flex;flex-direction:column;gap:5px;min-width:0;max-width:min(78%,710px)}.chat-turn.you .turn-copy{align-items:flex-end}.speaker{font-size:13px;font-weight:800;letter-spacing:.05em;color:#20588d;padding:0 14px}.you .speaker{color:#c63d82}.chat-bubble{padding:20px 24px;background:#ffffffed;border:2px solid #73beef;border-radius:35px 35px 35px 9px;box-shadow:0 8px 17px #3674a01d;color:#173c67;font-size:clamp(16px,1.5vw,20px);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.you .chat-bubble{background:#ffe0eb;border-color:#f78cb0;border-radius:35px 35px 9px 35px}.scratch.loading .chat-bubble{min-width:85px;color:#4c90be}.child-compose{position:relative;z-index:3;display:flex;align-items:center;gap:12px;width:min(96%,1170px);margin:0 auto 8px;padding:13px 15px;background:#ffffffc4;border:3px solid #fff;border-radius:34px;box-shadow:0 8px 25px #567bb63b;backdrop-filter:blur(15px)}.child-compose-cat{width:60px;height:60px;object-fit:contain}.child-compose textarea{flex:1;min-width:0;max-height:125px;resize:vertical;border:2px solid #d9e8fa;border-radius:22px;background:white;outline:0;color:#183c66;font-weight:600;font-size:18px;line-height:1.4;font-family:inherit;padding:15px 18px}.child-compose textarea:focus{border-color:#7fbffa;box-shadow:0 0 0 3px #66b8ff40}.child-compose button{padding:16px 25px;border:0;border-radius:22px;background:linear-gradient(145deg,#ff73ae,#ed4d93);color:white;font-weight:800;font-size:18px;line-height:1.2;font-family:inherit;box-shadow:0 6px 12px #d55c9955;cursor:pointer}.child-compose button:disabled{cursor:wait;opacity:.7}.child-notice{position:relative;z-index:2;text-align:center;font-size:12px;color:#315983;margin:3px 9px 12px}.visually-hidden{position:absolute!important;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.child-back:focus-visible,.child-clear:focus-visible,.child-compose button:focus-visible{outline:3px solid #1965bc;outline-offset:3px}@keyframes appear{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@media(max-width:710px){.child-header{height:auto;min-height:80px;padding:12px;gap:8px}.child-header-title{gap:5px}.child-header-title .star{font-size:25px}.child-header-title p{display:none}.child-back,.child-clear{font-size:13px;border-radius:15px;padding:9px}.child-clear span,.child-back span{display:none}.chat-scene{padding:10px 8px}.chat-turn{gap:8px}.chat-turn.scratch{margin-right:3%}.chat-turn.you{margin-left:3%}.chat-avatar{width:56px;height:65px;flex-basis:56px}.user-avatar{width:50px;height:50px;flex-basis:50px;font-size:27px}.chat-bubble{padding:14px;border-radius:22px;font-size:15px}.turn-copy{max-width:82%}.child-compose{width:calc(100% - 15px);border-radius:20px;padding:7px;gap:6px}.child-compose-cat{display:none}.child-compose textarea{padding:12px;font-size:16px;border-radius:13px}.child-compose button{padding:13px;font-size:14px;border-radius:14px}.child-notice{font-size:10px;padding-bottom:4px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important}}