@charset "UTF-8";
:root{--paper:#f7f5ef;--ink:#383d31;--muted:#85877c;--line:#e5e5db;--olive:#737e5b;--pale:#eceee4;--accent:#a57553;--white:#fdfcf8;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button{border:0;background:none}button:focus-visible,a:focus-visible{outline:2px solid var(--olive);outline-offset:5px}button:disabled{cursor:default}a{color:inherit;text-decoration:none}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sprite{display:none}.hidden{display:none!important}.app-shell{display:flex;min-height:100dvh}.sidebar{width:244px;flex-shrink:0;border-right:1px solid var(--line);padding:43px 25px 25px;background:#f0f0e8;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:14px;font-size:19px;letter-spacing:2px;font-weight:600}.brand small{display:block;font-size:8px;font-weight:400;letter-spacing:2px;margin-top:9px;color:#828575}.bunny-mark{position:relative;width:34px;height:32px;border:1.4px solid #7a846a;border-radius:45%;display:block;margin-top:8px}.bunny-mark i{position:absolute;width:9px;height:23px;border:1.4px solid #7a846a;top:-17px;border-radius:70%;background:#f0f0e8;transform:rotate(-14deg);left:6px}.bunny-mark i+i{left:20px;transform:rotate(13deg)}.bunny-mark b{position:absolute;top:2px;left:10px;letter-spacing:4px;font-weight:400}.side-caption{font-size:10px;color:#858777;letter-spacing:1px;margin:34px 0 29px 3px}.sidebar nav{display:flex;flex-direction:column;gap:9px}.nav-item{display:flex;align-items:center;gap:13px;padding:14px 13px;text-align:left;border-radius:9px;font-size:13px;color:#72786a;transition:background .2s}.nav-item:hover{background:#e7e9dc}.nav-item.active{background:#e2e6d6;color:#4c5b3c}.nav-dot{width:5px;height:5px;border-radius:50%;background:#899b6a;margin-left:auto}.nav-item:not(.active) .nav-dot{display:none}.side-note{margin:63px 15px 28px;color:#8b8e7e;font-size:12px;line-height:2.2;letter-spacing:1px}.tiny-leaf{font-size:38px;color:#a6ad97;font-family:serif}.side-note p{margin-top:8px}.note-line{display:block;width:22px;border-bottom:1px solid #b6bda6;margin-top:23px}.side-bottom{margin-top:auto;display:flex;flex-direction:column;gap:20px}.side-bottom button{display:flex;align-items:center;gap:12px;color:#747a6b;font-size:12px;text-align:left;padding:0 12px}.side-bottom button span{margin-left:auto}.version{font-size:9px;letter-spacing:1px;color:#939787;padding-left:13px;margin-top:8px}main{flex:1;min-width:0}.topbar{height:91px;margin:0 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1px;color:#747c69}.topbar>div{display:flex;align-items:center;gap:9px}.status-dot{width:6px;height:6px;border-radius:50%;background:#8e9c72;box-shadow:0 0 0 4px #e9ecdf}.settings-trigger{display:flex;gap:8px;align-items:center;color:#8b8c7e;font-size:11px}.settings-trigger svg{width:16px}.mobile-brand{display:none}.main-grid{display:grid;grid-template-columns:minmax(0,1fr) 226px;gap:40px;max-width:1280px;margin:auto;padding:0 42px}.content{min-width:0}.view{position:relative}.welcome{text-align:center;padding-top:45px}.eyebrow{font-size:8px;letter-spacing:3px;color:#929783;font-weight:500}h1{font-family:"Noto Serif SC","Songti SC","STSong","SimSun",serif;font-size:39px;font-weight:400;line-height:1.45;letter-spacing:4px;margin:20px 0 14px}.intro{font-size:12px;line-height:1.9;color:#85877a;letter-spacing:.6px;margin:0}.rabbit-scene{height:282px;position:relative;display:flex;align-items:flex-end;justify-content:center;margin-top:17px}.halo{position:absolute;width:243px;height:243px;border-radius:50%;background:radial-gradient(circle,#e8e8db 0,#eeeee3 48%,#f1f0e7 67%,transparent 72%);bottom:9px}.rabbit-button{position:relative;height:265px;z-index:2;padding:0;transform-origin:center bottom}.rabbit-button img{height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(1px 7px 4px #afa58f22);transition:transform .25s}.rabbit-button:hover img{transform:rotate(-2deg)}.rabbit-button.petted{animation:pet .65s ease}.pet-hint{position:absolute;bottom:0;left:50%;transform:translate(-50%,8px);white-space:nowrap;font-size:10px;color:#929780;opacity:0;transition:.2s}.rabbit-button:hover .pet-hint,.rabbit-button:focus-visible .pet-hint{opacity:1}.ground{position:absolute;bottom:4px;width:200px;height:15px;border-radius:50%;background:#b8b09c20;filter:blur(6px)}.scene-caption{position:absolute;left:calc(50% - 190px);top:132px;font-size:10px;writing-mode:vertical-rl;letter-spacing:3px;color:#9a9d8b}.scene-sprig{position:absolute;right:calc(50% - 180px);bottom:23px;transform:rotate(20deg);color:#a8b093;font-size:57px;font-family:serif}.pet-response{position:absolute;right:calc(50% - 190px);top:64px;padding:10px 14px;background:#ebeede;border-radius:13px 13px 13px 0;font-size:11px;opacity:0;transition:.25s;z-index:3;max-width:145px}.pet-response.show{opacity:1;transform:translateY(-4px)}.starter-row{display:flex;justify-content:center;gap:8px;margin:27px 0 34px;flex-wrap:wrap}.starter-row button{display:flex;align-items:center;gap:14px;font-size:10px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;color:#7d826f;background:#faf9f4;transition:.2s}.starter-row button:hover{border-color:#a5ad93;background:#eff0e7}.starter-row svg{width:13px;height:13px}.composer-wrap{position:sticky;bottom:0;background:linear-gradient(transparent,var(--paper) 14%);padding:6px 0 20px;z-index:4}.composer{display:flex;align-items:center;gap:12px;padding:12px 13px;border:1px solid #d9ddce;background:#fdfcf8;border-radius:13px;box-shadow:0 4px 15px #444b3010}.composer:focus-within{border-color:#9aa785}.composer>button:first-child{color:#929982;display:flex;padding:7px}.composer textarea{resize:none;min-width:0;flex:1;border:none;outline:none;background:none;font-size:12px;color:var(--ink);line-height:1.8;max-height:120px;padding:5px 0}.composer textarea::placeholder{color:#a0a294}.send{background:#73835a;color:#fff;width:34px;height:34px;border-radius:9px;display:grid;place-items:center}.send:disabled{background:#e4e9da;color:#9ca98b}.composer-foot{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#929586;padding:12px 3px 0}.composer-foot button{font-size:9px;color:#929586;padding:0}.right-rail{border-left:1px solid var(--line);padding-left:27px;margin:30px 0 25px;display:flex;flex-direction:column}.date-tag{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1px;color:#919580;margin-bottom:41px}.date-tag>span:first-child{font-family:Georgia,serif;font-size:13px;letter-spacing:2px}.date-rule{width:17px;height:1px;background:#c6cbb9}.small-card{padding-bottom:28px;border-bottom:1px solid var(--line)}.card-label{display:flex;align-items:center;gap:8px;font-size:10px;color:#828b72;letter-spacing:.5px}.card-label svg{width:16px;height:16px}h2{font-family:"Songti SC","SimSun",serif;font-size:23px;font-weight:400;letter-spacing:1px}.small-card h2{margin:22px 0 13px}.small-card p,.memory-peek p{font-size:11px;color:#8e9283;line-height:2.1}.text-link{font-size:10px;padding:0;color:#747f63;display:flex;justify-content:space-between;gap:15px;width:100%;text-align:left;margin-top:24px}.memory-peek{margin-top:29px}.memory-peek p{font-size:10px}.rail-bottom{margin-top:auto;padding-top:75px;color:#969d86}.little-flower{font-size:33px;font-weight:200;color:#9ba88a}.rail-bottom p{font-size:11px;line-height:2;letter-spacing:1px;margin:15px 0 24px}.rail-bottom>span:last-child{font-size:8px;letter-spacing:2px}.conversation{min-height:calc(100dvh - 211px);padding:28px 2px 32px;display:flex;flex-direction:column;gap:21px}.chat-date{text-align:center;font-size:10px;color:#969c89;margin-bottom:6px}.message-row{display:flex;gap:10px;max-width:90%;align-items:flex-start}.message-row.user{align-self:flex-end;flex-direction:row-reverse}.avatar{width:32px;height:32px;background:#e9eadd;border-radius:50%;object-fit:cover;object-position:top;flex-shrink:0}.bubble{background:#eeeee6;padding:13px 16px;border-radius:0 14px 14px;font-size:13px;line-height:1.9;overflow-wrap:anywhere;white-space:pre-wrap}.user .bubble{background:#e0e7d5;border-radius:14px 0 14px 14px}.message-image{max-width:230px;max-height:220px;width:100%;object-fit:contain;border-radius:8px;display:block;margin-bottom:8px}.message-tools{display:flex;gap:12px;margin-top:6px}.message-tools button{color:#8b927d;font-size:9px;padding:2px 0;display:flex;align-items:center;gap:4px}.message-tools svg{width:11px;height:11px}.typing{font-size:13px;letter-spacing:4px;color:#929b80}.quiet-view{text-align:center;min-height:calc(100dvh - 92px);padding-top:64px}.quiet-view h1{font-size:33px}.quiet-rabbit{position:relative;margin:55px auto 20px;width:310px;height:330px;display:grid;place-items:center}.quiet-rabbit img{height:300px;max-width:95%;position:relative;animation:breathe 7s ease-in-out infinite}.quiet-orbit{position:absolute;width:300px;height:300px;border-radius:50%;border:1px solid #dce1cf;box-shadow:0 0 0 24px #eceee344,0 0 0 48px #eceee330}.quiet-line{font-size:11px;letter-spacing:2px;color:#929780;margin:35px 0 24px}.soft-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#e9ecdf;border:1px solid #dce1d0;padding:12px 19px;border-radius:8px;font-size:12px;color:#687755}.quiet-bottom{font-size:9px;color:#a0a58f;margin:30px 0}.library-view{padding:52px 0}.library-view h1{font-size:31px;letter-spacing:2px}.library-view .intro{margin-bottom:27px}.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:27px}.empty-state{grid-column:1/-1;border:1px dashed #d6dac9;border-radius:12px;padding:45px 22px;text-align:center;font-size:12px;line-height:2;color:#8c957c}.empty-state svg{width:28px;height:28px;margin-bottom:10px}.object-card{background:#fdfcf8;padding:10px;border-radius:10px;border:1px solid var(--line)}.object-card img{width:100%;height:170px;object-fit:cover;border-radius:6px}.object-card h3{font-size:12px;font-weight:400;margin:12px 4px}.object-card p{font-size:10px;color:#8d9580;margin:9px 4px}.object-card button{font-size:10px;color:#9b806d;padding:5px}.memory-form{display:flex;gap:8px;margin:25px 0}.memory-form input,.field{border:1px solid #d9decc;border-radius:8px;background:#fffefa;padding:12px;font-size:12px;min-width:0;color:var(--ink);outline:none}.memory-form input{flex:1}.memory-form input:focus,.field:focus{border-color:#87966f}.memory-item{border-bottom:1px solid var(--line);padding:18px 0;display:flex;gap:12px;justify-content:space-between;align-items:center}.memory-item p{font-size:12px;line-height:1.9;margin:0;overflow-wrap:anywhere}.memory-item button{font-size:10px;color:#8a927b;white-space:nowrap}.local-note{font-size:10px;line-height:1.9;color:#919784;margin-top:24px}.photo-preview{padding:8px 0;display:flex;gap:12px;align-items:center;font-size:10px;color:#7d866d}.photo-preview img{width:55px;height:55px;border-radius:6px;object-fit:cover}.photo-preview button{font-size:11px}dialog{border:1px solid #dce0cf;border-radius:18px;background:#f9f8f2;padding:26px;width:min(460px,calc(100% - 32px));color:var(--ink);box-shadow:0 24px 80px #28311d22;max-height:85dvh;overflow:auto}dialog::backdrop{background:#3038274a;backdrop-filter:blur(4px)}.modal-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.modal-heading h2{margin:0;font-size:24px}.modal-heading button{display:grid;place-items:center;padding:6px;color:#8b927d}.modal-copy{font-size:12px;line-height:2.1;color:#7f8772}.setting-label{font-size:12px;margin:25px 0 13px}.segments{display:flex;gap:7px}.segments button{flex:1;padding:11px 3px;font-size:11px;background:#eeeee5;border:1px solid transparent;border-radius:7px}.segments button.selected{border-color:#98a581;background:#e4e9d9;color:#536342}.setting-row{display:flex;gap:15px;align-items:center;justify-content:space-between;margin:24px 0;font-size:12px}.setting-row input{accent-color:#78875e;width:17px;height:17px}.danger{color:#967a69;font-size:11px;border:1px solid #e3dace;border-radius:7px;padding:10px 14px;margin-right:8px;margin-top:10px}.modal-stack{display:flex;flex-direction:column;gap:12px}.modal-stack label{font-size:11px;color:#7e896e}.modal-stack .field{width:100%}.modal-stack img{max-width:100%;max-height:220px;object-fit:contain;border-radius:8px}.toast{position:fixed;left:50%;bottom:35px;transform:translate(-50%,15px);background:#424d37;color:#f7f6ef;border-radius:10px;padding:12px 20px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:20;max-width:90%;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}.mobile-nav{display:none}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0}.stat{padding:16px 8px;background:#ecefe2;border-radius:8px;text-align:center}.stat b{display:block;font-size:23px;font-weight:400;margin-bottom:8px}.stat span{font-size:10px;color:#7b866a}.observation-list{font-size:12px;line-height:2;color:#7f8870}.observation-list li{margin:8px 0}.full-button{width:100%;margin-top:15px}@keyframes breathe{50%{transform:translateY(-4px) rotate(.5deg)}}@keyframes pet{25%{transform:rotate(-4deg) scale(1.025)}65%{transform:rotate(3deg)}}
@media(min-width:1500px){.welcome{padding-top:65px}.rabbit-scene{height:340px}.rabbit-button{height:320px}.halo{width:300px;height:300px}.starter-row{margin-top:36px;margin-bottom:44px}.content{max-width:810px}.main-grid{gap:55px}.sidebar{width:270px;padding-left:34px;padding-right:34px}}
@media(max-width:1150px){.sidebar{width:206px;padding-left:18px;padding-right:18px}.brand{font-size:16px;gap:10px}.main-grid{grid-template-columns:minmax(0,1fr) 180px;padding:0 26px;gap:25px}.topbar{margin:0 26px}.right-rail{padding-left:20px}.starter-row{gap:6px}.starter-row button{font-size:9px;padding:9px;gap:8px}}
@media(max-width:950px){.right-rail{display:none}.main-grid{display:block;max-width:800px}.welcome{padding-top:45px}.starter-row button{font-size:11px}.composer-wrap{padding-bottom:20px}.sidebar{width:218px}.conversation{min-height:calc(100dvh - 209px)}}
@media(max-width:650px){.sidebar{display:none}.app-shell{display:block}.topbar{height:65px;margin:0 22px;font-size:9px;letter-spacing:0}.topbar>div{gap:7px}.mobile-brand{display:block;font-family:"Songti SC","SimSun",serif;font-size:18px;letter-spacing:2px}.settings-trigger span{display:none}.settings-trigger svg{width:19px}.main-grid{padding:0 22px}.welcome{padding-top:32px}.eyebrow{font-size:7px;letter-spacing:2.1px}h1{font-size:32px;letter-spacing:3px;margin-top:20px;line-height:1.5}.intro{font-size:10px;letter-spacing:.3px}.rabbit-scene{height:250px;margin-top:12px}.rabbit-button{height:237px}.halo{width:225px;height:225px}.scene-caption{left:calc(50% - 143px);top:106px;font-size:9px;letter-spacing:2px}.scene-sprig{right:calc(50% - 141px);font-size:43px}.pet-response{right:0;top:20px;max-width:110px;font-size:10px}.starter-row{gap:7px;margin:23px -7px 23px}.starter-row button{font-size:9px;padding:9px 8px;gap:6px}.starter-row button:last-child{display:none}.composer-wrap{bottom:69px;padding-bottom:12px}.composer{padding:9px;gap:7px;border-radius:12px}.composer textarea{font-size:11px}.composer-foot{font-size:8px;padding-top:10px}.composer-foot button{font-size:8px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:space-around;background:#f5f5edee;backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:10px 15px calc(10px + env(safe-area-inset-bottom));z-index:7}.mobile-nav button{display:flex;align-items:center;flex-direction:column;gap:5px;color:#929982;font-size:9px;min-width:56px;padding:3px 10px}.mobile-nav svg{width:19px;height:19px}.mobile-nav .active{color:#52683d}.content{padding-bottom:80px}.conversation{min-height:calc(100dvh - 240px);padding-top:23px}.message-row{max-width:95%}.bubble{font-size:12px;padding:11px 13px}.quiet-view{padding-top:48px;min-height:calc(100dvh - 150px)}.quiet-view h1{font-size:27px;letter-spacing:1px}.quiet-rabbit{width:250px;height:290px;margin-top:45px}.quiet-rabbit img{height:270px}.quiet-orbit{width:245px;height:245px;box-shadow:0 0 0 19px #eceee344,0 0 0 38px #eceee330}.quiet-line{font-size:10px;letter-spacing:1px}.library-view{padding-top:36px}.library-view h1{font-size:27px}.memory-form{flex-wrap:wrap}.memory-form input{flex-basis:70%}.memory-form button{padding:10px 14px}.collection-grid{gap:12px}.object-card img{height:140px}.toast{bottom:100px}.local-note{font-size:9px}.pet-hint{display:none}}
@media(max-height:760px) and (min-width:651px){.welcome{padding-top:26px}.rabbit-scene{height:238px}.rabbit-button{height:224px}h1{font-size:34px;margin-top:16px}.starter-row{margin-top:20px;margin-bottom:20px}.halo{width:220px;height:220px}.side-note{margin-top:35px}}
/* A tactile companion: the image stays quiet; the touch map appears on request. */
.companion{text-align:center;position:relative}.rabbit-touch{position:relative;height:265px;aspect-ratio:1;z-index:2;flex-shrink:0;touch-action:manipulation}.rabbit-figure{position:absolute;inset:0;transform-origin:50% 86%;pointer-events:none}.rabbit-figure img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(1px 7px 4px #afa58f22);user-select:none;animation:rabbit-rest 7s ease-in-out infinite;transform-origin:50% 88%}.touch-zone{position:absolute;min-width:44px;min-height:44px;z-index:3;border-radius:50%;padding:0;cursor:pointer;outline-offset:0!important;isolation:isolate}.touch-zone::after{content:"";position:absolute;left:50%;top:50%;width:36px;height:36px;border:1px solid #a4ad8c;border-radius:50%;transform:translate(-50%,-50%) scale(.7);opacity:0;pointer-events:none}.touch-zone:hover::after,.touch-zone:focus-visible::after{opacity:.65;transform:translate(-50%,-50%) scale(1);transition:transform .25s,opacity .25s}.touch-zone:focus-visible{outline:1px dashed #7a8963;background:#e4e9d92b}.touch-dot{width:5px;height:5px;border:1px solid #f8f8ef;background:#8e9c72;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);opacity:0;box-shadow:0 0 0 4px #eef0e180;transition:opacity .25s;pointer-events:none}.touch-label{position:absolute;font-size:9px;letter-spacing:.7px;line-height:1.6;white-space:nowrap;color:#747f63;background:#f7f5efe8;border:1px solid #e5e5db;border-radius:5px;padding:3px 7px;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;box-shadow:0 2px 5px #414b3005}.touch-label::after{content:"";position:absolute;width:19px;height:1px;background:#b6bea6;top:50%;left:100%;opacity:.75}.touch-zone:hover .touch-label,.touch-zone:focus-visible .touch-label,.show-guide .touch-label{opacity:1}.touch-zone:hover .touch-dot,.touch-zone:focus-visible .touch-dot,.show-guide .touch-dot{opacity:1}.zone-forehead{left:41%;top:4%;width:22%;height:17%}.zone-forehead .touch-label{left:50%;bottom:100%;transform:translateX(-50%)}.zone-forehead .touch-label::after{top:100%;left:50%;width:1px;height:12px}.zone-ear-left{left:9%;top:29%;width:22%;height:35%}.zone-ear-left .touch-label{right:calc(100% + 7px);top:54%}.zone-ear-right{left:72%;top:29%;width:22%;height:35%}.zone-ear-right .touch-label{left:calc(100% + 7px);top:54%}.zone-ear-right .touch-label::after,.zone-cheek-right .touch-label::after,.zone-tummy .touch-label::after,.zone-paw-right .touch-label::after{left:auto;right:100%}.zone-cheek-left{left:33%;top:23%;width:17%;height:18%}.zone-cheek-left .touch-label{right:calc(100% + 48px);top:-4px}.zone-cheek-right{left:53%;top:23%;width:17%;height:18%}.zone-cheek-right .touch-label{left:calc(100% + 45px);top:-4px}.zone-cheek-left .touch-label::after,.zone-cheek-right .touch-label::after{width:40px}.zone-tummy{left:35%;top:47%;width:33%;height:29%}.zone-tummy .touch-label{left:calc(100% + 42px);top:70%}.zone-tummy .touch-label::after{width:34px}.zone-paw-left{left:24%;top:79%;width:25%;height:20%}.zone-paw-left .touch-label{right:calc(100% + 20px);bottom:0}.zone-paw-left .touch-label::after,.zone-paw-right .touch-label::after{width:28px}.zone-paw-right{left:54%;top:79%;width:25%;height:20%}.zone-paw-right .touch-label{left:calc(100% + 20px);bottom:0}.touch-zone.touched::after{animation:touch-ripple 1s ease-out}.touch-zone.touched .touch-dot{opacity:1}.touch-discovery{display:flex;justify-content:center;align-items:center;gap:12px;padding:20px 0 0;font-size:9px;letter-spacing:.4px;color:#8a927b;flex-wrap:wrap}.touch-discovery button{font-size:9px;color:#747f63;border-bottom:1px dotted #bbc3aa;padding:3px 0;min-height:32px}.touch-discovery button span{margin-left:4px}.touch-response{right:calc(50% - 225px);top:50px;max-width:165px;min-width:115px;text-align:left;display:flex;flex-direction:column;gap:5px;pointer-events:none;line-height:1.7;padding:11px 13px;box-shadow:0 5px 15px #5a654208}.touch-action{font-size:9px;letter-spacing:.5px;color:#7c886a}.touch-action::before{content:"⌁ ";color:#9aa986}#touch-words{font-size:11px;color:#526342}.companion:has(.show-guide) .touch-response{opacity:0}.companion:has(.show-guide) .touch-response.show{top:12px;right:0;opacity:1}.has-chat .companion{position:sticky;top:0;background:linear-gradient(var(--paper) 92%,#f7f5ef00);z-index:3;padding-top:8px;border-bottom:1px solid var(--line)}.has-chat .rabbit-scene{height:205px;margin-top:0}.has-chat .rabbit-touch{height:193px}.has-chat .halo{width:185px;height:185px}.has-chat .scene-caption{top:65px;left:calc(50% - 150px)}.has-chat .scene-sprig{right:calc(50% - 142px);font-size:37px}.has-chat .touch-discovery{padding:5px 0 9px;font-size:9px}.has-chat .conversation{min-height:200px;padding-top:20px}.has-chat .touch-response{top:20px;right:calc(50% - 230px)}
[data-reaction="nod"] .rabbit-figure{animation:rabbit-nod 1s ease-in-out}[data-reaction="ear-left"] .rabbit-figure{animation:rabbit-left 1s ease-in-out;transform-origin:48% 85%}[data-reaction="ear-right"] .rabbit-figure{animation:rabbit-right 1s ease-in-out;transform-origin:52% 85%}[data-reaction="cheek-left"] .rabbit-figure{animation:rabbit-nuzzle-left 1s ease-in-out}[data-reaction="cheek-right"] .rabbit-figure{animation:rabbit-nuzzle-right 1s ease-in-out}[data-reaction="tummy"] .rabbit-figure{animation:rabbit-tickle 1s ease-in-out}[data-reaction="paw-left"] .rabbit-figure{animation:rabbit-paw-left 1s ease-in-out}[data-reaction="paw-right"] .rabbit-figure{animation:rabbit-paw-right 1s ease-in-out}
@keyframes rabbit-rest{50%{transform:translateY(-2px) scaleY(1.008)}}@keyframes touch-ripple{0%{opacity:.7;transform:translate(-50%,-50%) scale(.6)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.8)}}@keyframes rabbit-nod{35%{transform:translateY(5px) scaleY(.965) scaleX(1.015)}65%{transform:translateY(1px) scaleY(.99)}}@keyframes rabbit-left{25%{transform:rotate(-3deg)}55%{transform:rotate(1.3deg)}80%{transform:rotate(-.8deg)}}@keyframes rabbit-right{25%{transform:rotate(3deg)}55%{transform:rotate(-1.3deg)}80%{transform:rotate(.8deg)}}@keyframes rabbit-nuzzle-left{40%{transform:translateX(-5px) rotate(-3deg)}70%{transform:translateX(-2px) rotate(-1deg)}}@keyframes rabbit-nuzzle-right{40%{transform:translateX(5px) rotate(3deg)}70%{transform:translateX(2px) rotate(1deg)}}@keyframes rabbit-tickle{20%{transform:scaleX(1.035) scaleY(.96)}40%{transform:rotate(-1.4deg) scaleX(.99)}60%{transform:rotate(1.4deg) scaleY(.98)}80%{transform:rotate(-.6deg)}}@keyframes rabbit-paw-left{25%{transform:translateY(-5px) rotate(-1.8deg)}55%{transform:translateY(1px) scaleY(.985)}75%{transform:translateY(-2px)}}@keyframes rabbit-paw-right{25%{transform:translateY(-6px) rotate(1.8deg)}55%{transform:translateY(1px) scaleY(.985)}75%{transform:translateY(-2px)}}
@media(min-width:1500px){.rabbit-touch{height:320px}}
@media(max-height:760px) and (min-width:651px){.rabbit-touch{height:224px}.touch-discovery{padding-top:10px}}
@media(max-width:650px){.rabbit-touch{height:237px}.touch-discovery{font-size:8px;gap:6px;padding-top:13px}.touch-discovery button{font-size:8px}.touch-response{right:-4px;top:2px;max-width:130px;min-width:100px;padding:9px 10px}.touch-action{font-size:8px}#touch-words{font-size:10px}.has-chat .rabbit-touch{height:195px}.has-chat .rabbit-scene{height:207px}.has-chat .touch-response{top:7px;right:-5px;max-width:115px}.has-chat .scene-caption{left:calc(50% - 134px);font-size:8px}.has-chat .scene-sprig{right:calc(50% - 130px)}.touch-label{font-size:8px;padding:3px 5px;letter-spacing:0}.zone-cheek-left .touch-label{right:calc(100% + 31px)}.zone-cheek-right .touch-label{left:calc(100% + 31px)}.zone-cheek-left .touch-label::after,.zone-cheek-right .touch-label::after{width:24px}.zone-tummy .touch-label{left:calc(100% + 26px)}.zone-tummy .touch-label::after{width:20px}.zone-ear-left .touch-label{right:calc(100% + 1px)}.zone-ear-right .touch-label{left:calc(100% + 1px)}.zone-paw-left .touch-label{right:calc(100% + 6px)}.zone-paw-right .touch-label{left:calc(100% + 6px)}.touch-response.show~.scene-sprig{opacity:0}}
@media(max-width:360px){.zone-cheek-left .touch-label{right:calc(100% + 20px)}.zone-cheek-right .touch-label{left:calc(100% + 20px)}.zone-tummy .touch-label{left:calc(100% + 17px)}.touch-discovery>span{font-size:7px}.touch-label::after{width:14px!important}}
.chat-toolbar{display:flex;align-items:center;justify-content:space-between;padding:4px 0 9px;color:#8b927d;font-size:9px}.chat-toolbar button{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:4px 7px 4px 0;color:#687755;font-size:11px}.chat-toolbar svg{width:16px;height:16px;transform:rotate(-90deg)}.resume-chat{display:flex;align-items:center;gap:14px;justify-content:center;margin:-15px auto 17px;padding:8px 14px;color:#747f63;font-size:10px;border-bottom:1px dotted #bbc3aa}.has-chat .companion{padding-top:0}
.companion:has(.show-guide) .scene-caption,.companion:has(.show-guide) .scene-sprig,.companion:has(.touch-zone:hover) .scene-caption{visibility:hidden}
.rabbit-figure .rabbit-pose{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .28s ease;animation:none;object-fit:contain}.rabbit-figure .rabbit-base{transition:opacity .28s ease}.rabbit-touch[data-cute="sleep"] .pose-sleep,.rabbit-touch[data-cute="paw"] .pose-paw{opacity:1}.rabbit-touch[data-cute="sleep"] .rabbit-base,.rabbit-touch[data-cute="paw"] .rabbit-base{opacity:0}.rabbit-touch[data-cute] .rabbit-base{animation-play-state:paused}.rabbit-touch[data-cute="paw"] .rabbit-figure{animation:cute-paw-settle 4.2s ease-in-out}.rabbit-touch[data-cute="sleep"] .rabbit-figure{animation:cute-sleep-settle 2.8s ease-in-out}.rabbit-touch[data-cute="tilt"] .rabbit-figure{animation:cute-head-tilt 2.1s ease-in-out}.rabbit-touch[data-cute="wiggle"] .rabbit-figure{animation:cute-wiggle 1.7s ease-in-out}.rabbit-mood{position:absolute;left:50%;bottom:36px;transform:translate(-50%,5px);padding:5px 11px;background:#f7f5eff2;border:1px solid #e5e5db;border-radius:20px;color:#7c886a;font-size:9px;letter-spacing:.5px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:3;white-space:nowrap}.rabbit-mood.visible{opacity:1;transform:translate(-50%,0)}.has-chat .rabbit-mood{bottom:40px}#tease-rabbit{display:inline-flex;align-items:center;gap:4px}#tease-rabbit svg{width:11px;height:11px}@keyframes cute-paw-settle{0%,100%{transform:none}18%{transform:rotate(-1deg) translateY(-2px)}50%{transform:rotate(1deg)}80%{transform:rotate(-.5deg)}}@keyframes cute-sleep-settle{0%,100%{transform:none}45%{transform:translateY(2px) scaleY(.99)}}@keyframes cute-head-tilt{0%,100%{transform:none}25%,62%{transform:rotate(-5deg) translateX(-2px)}80%{transform:rotate(1deg)}}@keyframes cute-wiggle{0%,100%{transform:none}20%{transform:translateY(-5px) rotate(-2deg)}40%{transform:translateY(1px) scaleY(.98)}62%{transform:rotate(2deg)}80%{transform:rotate(-1deg)}}
@media(max-width:650px){.touch-discovery{gap:8px}.touch-discovery>span{font-size:8px}.rabbit-mood{bottom:35px;font-size:8px}.has-chat .rabbit-mood{bottom:37px}}@media(max-width:360px){.touch-discovery{gap:5px}.touch-discovery>span{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
