@font-face{font-family:ZCOOL XiaoWei;src:url(https://qingheju.site/fonts/ZCOOLXiaoWei-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Ma Shan Zheng;src:url(https://qingheju.site/fonts/MaShanZheng-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--paper:#f7f1e8;--paper-deep:#efe4d5;--ink:#171513;--soft-ink:#5e554c;--gold:#b88a3a;--gold-soft:#b88a3a29;--gold-line:#b88a3a70;--gold-line-dim:#b88a3a3d;--gold-border:#b88a3a8c;--line:#17151324;--mist:#ffffff6b;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}*{box-sizing:border-box}html{width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}body{-webkit-overflow-scrolling:touch;background:var(--paper);width:100%;height:100%;margin:0;font-family:ZCOOL XiaoWei,STSong,SimSun,serif;overflow:hidden auto}#app{touch-action:pan-y;max-width:100vw;height:100%;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.page-shell{height:100%;position:relative;overflow-x:hidden}.top-nav{z-index:20;height:calc(40px + env(safe-area-inset-top,0px));padding:0 clamp(.6rem,2vw,1rem);padding-top:env(safe-area-inset-top,0px);-webkit-backdrop-filter:blur(12px);box-sizing:border-box;background:#f7f1e8e6;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.top-nav:after{content:"";background:var(--gold-line-dim);height:1px;position:absolute;bottom:0;left:0;right:0}.nav-logo-btn{-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;display:grid}.nav-logo{object-fit:cover;border-radius:50%;width:28px;height:28px;display:block}.gate-screen{min-height:100%;padding:clamp(4rem,12vh,8rem) clamp(1rem,5vw,2rem) clamp(3rem,8vh,5rem);padding-top:calc(max(clamp(7rem, 16vh, 10rem), env(safe-area-inset-top,0px)) + 30px);background-color:var(--paper);background-image:linear-gradient(#f7f1e814,#f7f1e814),url(/assets/backgrounds/bg-hero.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;place-items:start center;display:grid;position:relative}.gate-screen--dim{min-height:70%}.chat-screen{top:calc(40px + env(safe-area-inset-top,0px));background-color:var(--paper);background-image:linear-gradient(#f7f1e80a,#f7f1e80a),url(/assets/backgrounds/bg-chat.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.chat-screen--empty{height:auto;min-height:0;padding:0;position:relative}.depth-screen{top:calc(40px + env(safe-area-inset-top,0px));z-index:10;background-color:var(--paper);background-image:linear-gradient(#f7f1e80d,#f7f1e80d),url(/assets/backgrounds/bg-deep.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;align-content:center;gap:clamp(1rem,3vh,2rem);padding:clamp(4rem,10vh,7rem) clamp(1rem,5vw,2rem);display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.seal{background:var(--gold);opacity:.85;width:clamp(4rem,14vw,6rem);height:clamp(4rem,14vw,6rem);position:absolute;top:clamp(3rem,8vh,5rem);left:50%;transform:translate(-50%);-webkit-mask:url(/logo.png) 50%/contain no-repeat;mask:url(/logo.png) 50%/contain no-repeat}.gate-copy{width:min(88vw,38rem);margin-top:-3rem}.gate-line{margin:0 auto clamp(1.8rem,5vh,3.5rem);display:block}.gate-line span{color:var(--ink);letter-spacing:.06em;text-align:center;margin-bottom:clamp(.8rem,2vh,1.4rem);margin-right:-.06em;font-family:Ma Shan Zheng,serif;font-size:clamp(1.8rem,6vw,4rem);font-weight:400;line-height:1.5;display:block}.gate-line input,.gate-line textarea{border:0;border-bottom:1px solid var(--gold-line);width:min(76vw,30rem);color:var(--ink);text-align:center;-webkit-appearance:none;background:0 0;border-radius:0;outline:0;min-height:clamp(2.4rem,6vh,2.8rem);margin:0 auto;padding:clamp(.3rem,1vh,.5rem) 0;font-size:clamp(1rem,3.2vw,1.35rem);line-height:1.8;transition:border-color .3s;display:block}.gate-line input:focus,.gate-line textarea:focus{border-bottom-color:var(--gold)}.gate-line textarea{resize:none;min-height:clamp(3.5rem,10vh,5rem)}.primary-action{border:1px solid var(--gold-border);min-width:clamp(9rem,32vw,13rem);min-height:clamp(2.8rem,7vh,3.4rem);color:var(--ink);letter-spacing:.04em;-webkit-tap-highlight-color:transparent;background:#b88a3a14;border-radius:999px;margin:clamp(1rem,3vh,2rem) auto 0;padding:0 clamp(1.4rem,5vw,2.2rem);font-size:clamp(.9rem,2.8vw,1.1rem);transition:background .25s,border-color .25s;display:block}.primary-action:hover:not(:disabled){border-color:var(--gold);background:#b88a3a29}.gate-hint{color:var(--soft-ink);opacity:.7;text-align:center;letter-spacing:.02em;margin:clamp(.8rem,2vh,1.2rem) 0 0;font-size:clamp(.75rem,2.2vw,.85rem)}.first-visit{color:var(--soft-ink);text-align:center;opacity:.8;margin:0 0 clamp(.6rem,1.5vh,.8rem);font-size:clamp(.8rem,2.3vw,.9rem);line-height:1.5}.terms-check{color:var(--soft-ink);justify-content:center;align-items:center;gap:clamp(.3rem,1vw,.5rem);margin:clamp(.2rem,.5vh,.4rem) 0;font-size:clamp(.7rem,2vw,.8rem);display:flex}.terms-check a{color:var(--gold);text-decoration:underline}.home-tagline{text-align:center;color:var(--soft-ink);letter-spacing:.06em;opacity:.7;margin:0 0 clamp(.3rem,.8vh,.5rem);font-size:clamp(.8rem,2.4vw,.95rem);font-style:italic;line-height:1.3}.chat-thread-container{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;flex:1;padding:clamp(.5rem,2vh,1.5rem) clamp(.8rem,3vw,1.5rem) clamp(.5rem,2vh,1rem);overflow:hidden auto}.thread{width:min(90vw,42rem);margin:0 auto}.trial-hint{border:1px solid var(--gold-line-dim);width:fit-content;color:var(--gold);-webkit-backdrop-filter:blur(12px);background:#f7f1e8b8;border-radius:999px;margin:0 auto clamp(1.5rem,4vh,2.5rem);padding:clamp(.3rem,1vh,.5rem) clamp(.6rem,2vw,1rem);font-size:clamp(.78rem,2.2vw,.95rem);line-height:1.4}.message-row{margin:clamp(.6rem,2vh,1.2rem) 0;display:flex}.message-row--user{justify-content:flex-end}.message-row--assistant{justify-content:flex-start}.message-bubble{white-space:pre-wrap;width:fit-content;max-width:min(84vw,33rem);color:var(--ink);margin:0;font-size:clamp(.92rem,2.8vw,1.05rem);line-height:1.9}.message-row--user .message-bubble{overflow-wrap:break-word;background:#1715130d;border-radius:clamp(.4rem,1vw,.5rem);max-width:72%;padding:clamp(.5rem,1.8vh,.9rem) clamp(.7rem,2.5vw,1.1rem)}.message-row--assistant .message-bubble{border:1px solid var(--gold-line);background:#f7f1e8b3;border-radius:clamp(.4rem,1vw,.5rem);padding:clamp(.7rem,2.2vh,1.1rem) clamp(.8rem,2.8vw,1.2rem);box-shadow:0 clamp(.3rem,1vh,.6rem) clamp(1rem,3vh,2rem) #1715130a}.message-bubble--deep{background:#fff9efd6;border-color:#b88a3ab8}.message-bubble--thinking{color:var(--soft-ink)}.soft-error{color:#8a4b2c;text-align:center;width:min(86vw,35rem);margin:clamp(.8rem,2vh,1.5rem) auto;font-size:clamp(.85rem,2.5vw,1rem);line-height:1.7}.composer{width:min(92vw,46rem);padding:clamp(.3rem,.8vh,.45rem);padding-bottom:max(clamp(.3rem, .8vh, .45rem), env(safe-area-inset-bottom,.5rem));border:1px solid var(--gold-line-dim);-webkit-backdrop-filter:blur(16px);box-sizing:border-box;background:#f7f1e8b3;border-radius:999px;align-items:center;gap:clamp(.4rem,1.5vw,.7rem);margin:clamp(.4rem,1.2vh,.8rem) auto;transition:border-color .3s;display:flex}.composer:focus-within{border-color:var(--gold-line)}.composer input{min-width:0;min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);-webkit-appearance:none;background:0 0;border:0;outline:0;flex:1;padding:0 clamp(.6rem,2vw,1rem);font-size:clamp(1rem,3vw,1.1rem)}.composer button{background:var(--gold-soft);min-width:clamp(3.8rem,15vw,5rem);min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);white-space:nowrap;-webkit-tap-highlight-color:transparent;border:1px solid #b88a3a7a;border-radius:999px;flex-shrink:0;padding:0 clamp(.7rem,2vw,1.2rem);font-size:clamp(.85rem,2.5vw,1rem);transition:background .2s}.composer button:hover:not(:disabled){background:#b88a3a3d}.disclaimer-home{color:#5e554c73;text-align:center;width:min(80vw,32rem);margin:clamp(1.2rem,4vh,2rem) auto 0;font-size:clamp(.7rem,2vw,.75rem);line-height:1.7}.disclaimer-chat{color:#5e554c80;text-align:center;width:min(90vw,42rem);margin:clamp(.3rem,1vh,.6rem) auto 0;font-size:11px;line-height:1.4}.gate-line input::placeholder,.gate-line textarea::placeholder,.composer input::placeholder,.login-controls input::placeholder,.birth-form input::placeholder{color:#5e554c7a}.login-strip{border:1px solid var(--gold-line-dim);width:min(92vw,46rem);color:var(--soft-ink);-webkit-backdrop-filter:blur(14px);background:#f7f1e8bd;border-radius:clamp(.4rem,1vw,.5rem);margin:clamp(1rem,3vh,2rem) auto 0;padding:clamp(.8rem,2.5vh,1.2rem) clamp(.9rem,3vw,1.3rem);font-size:clamp(.85rem,2.5vw,.95rem);line-height:1.7;position:relative;box-shadow:0 clamp(.5rem,2vh,1rem) clamp(1.5rem,5vh,3rem) #1715130a}.login-strip p{margin:0 0 clamp(.6rem,2vh,1rem);padding-right:clamp(1.6rem,6vw,2.5rem)}.login-close{min-width:clamp(2.2rem,7vw,2.6rem);min-height:clamp(2.2rem,7vw,2.6rem);color:var(--gold);-webkit-tap-highlight-color:transparent;background:#ffffff2e;border:1px solid #b88a3a33;border-radius:999px;place-items:center;padding:0;font-size:clamp(.9rem,3vw,1.1rem);line-height:1;display:grid;position:absolute;top:clamp(.4rem,1.5vh,.7rem);right:clamp(.4rem,1.5vw,.7rem)}.login-close:hover{background:#b88a3a1a}.login-controls{flex-wrap:wrap;gap:clamp(.4rem,1.5vw,.7rem);margin:clamp(.4rem,1.5vh,.7rem) 0;display:flex}.login-controls input,.birth-form input{border:1px solid var(--line);min-width:0;min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);-webkit-appearance:none;background:#ffffff38;border-radius:999px;outline:0;padding:0 clamp(.7rem,2vw,1rem);font-size:clamp(1rem,2.8vw,1rem)}.login-controls input{flex:1}.login-controls button,.birth-form button{background:var(--gold-soft);min-width:clamp(4rem,16vw,6rem);min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);white-space:nowrap;-webkit-tap-highlight-color:transparent;border:1px solid #b88a3a7a;border-radius:999px;padding:0 clamp(.7rem,2vw,1.2rem);font-size:clamp(.85rem,2.5vw,1rem)}.login-notice{color:var(--gold);font-size:clamp(.8rem,2.2vw,.9rem)}.login-tabs{border-bottom:1px solid var(--gold-line-dim);gap:0;margin-bottom:clamp(1rem,2.5vh,1.5rem);display:flex}.login-tabs button{color:var(--soft-ink);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:.6rem 0;font-size:clamp(.85rem,2.5vw,.95rem);transition:color .2s,border-color .2s}.login-tabs button.active{color:var(--gold);border-bottom-color:var(--gold)}.depth-line{width:min(90vw,46rem);color:var(--gold);text-align:center;margin:0 auto;font-size:clamp(1.2rem,5vw,2.8rem);line-height:1.5}.birth-form{flex-wrap:wrap;justify-content:center;align-items:end;gap:clamp(.5rem,1.5vh,.8rem);width:min(90vw,38rem);margin:0 auto;display:flex}.birth-field{flex:1;gap:clamp(.25rem,.8vh,.5rem);min-width:clamp(8rem,25vw,12rem);display:grid}.birth-field span{color:#5e554cbd;text-align:center;font-size:clamp(.8rem,2.2vw,.95rem);line-height:1.3}.birth-field select{border:1px solid var(--line);min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);appearance:none;text-align:center;cursor:pointer;background:#ffffff38;border-radius:999px;outline:0;padding:0 clamp(.7rem,2vw,1rem);font-size:clamp(1rem,2.8vw,1rem)}.profile-sheet{z-index:101;background:var(--paper);max-height:88%;padding:clamp(1.5rem, 4vh, 2.5rem) clamp(1rem, 4vw, 1.8rem) max(clamp(2rem, 5vh, 3rem), env(safe-area-inset-bottom,1rem));border-radius:clamp(.75rem,2vw,1rem) clamp(.75rem,2vw,1rem) 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -4px 24px #17151314}.profile-sheet .modal-close{position:absolute;top:clamp(.5rem,1.5vh,.8rem);right:clamp(.6rem,2vw,1rem)}.profile-balance-label{color:var(--soft-ink);text-align:center;margin:0;font-size:clamp(.85rem,2.4vw,.95rem)}.profile-balance{color:var(--ink);text-align:center;letter-spacing:.04em;margin:clamp(.15rem,.5vh,.3rem) 0 clamp(1rem,2.5vh,1.5rem);font-size:clamp(2rem,7vw,3.2rem);font-weight:600}.profile-checkin-btn{border:1px solid var(--gold-border);background:var(--gold-soft);min-width:clamp(10rem,40vw,14rem);min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);-webkit-tap-highlight-color:transparent;border-radius:999px;margin:0 auto clamp(1.2rem,3vh,2rem);padding:0 clamp(1rem,3vw,1.5rem);font-size:clamp(.9rem,2.6vw,1rem);transition:background .2s;display:block}.profile-checkin-btn:hover{background:#b88a3a3d}.profile-birth-section{border-top:1px solid var(--gold-line-dim);margin-top:clamp(.5rem,1.2vh,.7rem);padding-top:clamp(.5rem,1.2vh,.7rem)}.profile-birth-label{color:var(--gold-dim);margin-bottom:.3rem;font-size:.75rem}.profile-birth-text{color:var(--ink);margin-bottom:.4rem;font-size:.85rem}.profile-birth-text--empty{color:var(--ink-dim);font-style:italic}.profile-birth-edit-btn{color:var(--gold);border:1px solid var(--gold-line-dim);cursor:pointer;background:0 0;border-radius:6px;padding:.25rem .7rem;font-size:.75rem;transition:background .2s}.profile-birth-edit-btn:hover{background:#b88a3a1f}.profile-cards{flex-direction:column;gap:clamp(.5rem,1.2vh,.7rem);display:flex}.profile-card{border:1px solid var(--gold-line-dim);background:#f7f1e880;border-radius:clamp(.4rem,1vw,.55rem);align-items:center;gap:clamp(.5rem,2vw,.8rem);padding:clamp(.7rem,2vh,.9rem) clamp(.7rem,2.5vw,1rem);display:flex}.profile-card--owned{border-color:var(--gold-line);background:var(--gold-soft)}.profile-card__body{flex-direction:column;flex:1;gap:clamp(.1rem,.3vh,.2rem);min-width:0;display:flex}.profile-card__name{color:var(--ink);font-size:clamp(.9rem,2.6vw,1rem);line-height:1.3}.profile-card__desc{color:var(--soft-ink);font-size:clamp(.75rem,2.1vw,.85rem);line-height:1.35}.profile-card__price{color:var(--gold);margin-top:clamp(.1rem,.3vh,.2rem);font-size:clamp(.7rem,2vw,.8rem);line-height:1.3}.profile-card__btn{border:1px solid var(--gold-border);background:var(--gold-soft);min-width:clamp(3rem,12vw,4rem);min-height:clamp(2rem,5vh,2.5rem);color:var(--ink);-webkit-tap-highlight-color:transparent;border-radius:999px;flex-shrink:0;padding:0 clamp(.6rem,2vw,.9rem);font-size:clamp(.8rem,2.2vw,.9rem);transition:background .2s}.profile-card__btn:hover{background:#b88a3a3d}.profile-card__badge{color:var(--gold);border:1px solid var(--gold-line-dim);border-radius:999px;flex-shrink:0;padding:clamp(.2rem,.5vh,.3rem) clamp(.4rem,1.5vw,.6rem);font-size:clamp(.75rem,2.1vw,.85rem)}.purchase-modal-body{text-align:center}.purchase-modal-body .pkg-name{color:var(--ink);margin:0 0 clamp(.3rem,1vh,.5rem);font-size:clamp(1.1rem,3.2vw,1.3rem);font-weight:600}.purchase-modal-body .pkg-price{color:var(--gold);margin:0 0 clamp(.3rem,1vh,.5rem);font-size:clamp(.95rem,2.8vw,1.1rem)}.purchase-modal-body .pkg-desc{color:var(--soft-ink);margin:0 0 clamp(1rem,2.5vh,1.5rem);font-size:clamp(.85rem,2.4vw,.95rem)}.modal-actions{flex-wrap:wrap;justify-content:center;gap:clamp(.4rem,1.5vw,.7rem);display:flex}.modal-actions button{background:var(--gold-soft);min-width:clamp(4rem,16vw,6rem);min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);white-space:nowrap;-webkit-tap-highlight-color:transparent;border:1px solid #b88a3a7a;border-radius:999px;padding:0 clamp(.7rem,2vw,1.2rem);font-size:clamp(.85rem,2.5vw,1rem);transition:background .2s}.modal-actions button:hover{background:#b88a3a3d}.modal-actions .btn-cancel{border-color:var(--line);color:var(--soft-ink);background:0 0}.modal-actions .btn-cancel:hover{background:#1715130a}.fade-slide-enter-active,.fade-slide-leave-active{transition:opacity .26s,transform .26s}.fade-slide-enter-from,.fade-slide-leave-to{opacity:0;transform:translateY(clamp(.4rem,1.5vh,.8rem))}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .5s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(6px);background:#17151370;place-items:center;padding:clamp(1rem,4vw,2rem);display:grid;position:fixed;inset:0}.modal-card{background:var(--paper);border:1px solid var(--gold-line);width:min(90vw,28rem);max-height:90%;color:var(--soft-ink);border-radius:clamp(.5rem,1.5vw,.75rem);padding:clamp(1.2rem,3vh,2rem) clamp(1rem,3vw,1.5rem);font-size:clamp(.9rem,2.5vw,1rem);line-height:1.8;position:relative;overflow-y:auto;box-shadow:0 clamp(1rem,3vh,2rem) clamp(2rem,6vh,4rem) #1715132e}.modal-desc{margin:0 0 clamp(1rem,2.5vh,1.5rem);padding-right:clamp(1.5rem,5vw,2.5rem);font-family:Ma Shan Zheng,serif}.modal-close{min-width:clamp(2.2rem,7vw,2.6rem);min-height:clamp(2.2rem,7vw,2.6rem);color:var(--gold);-webkit-tap-highlight-color:transparent;background:#ffffff2e;border:1px solid #b88a3a33;border-radius:999px;place-items:center;padding:0;font-size:clamp(.9rem,3vw,1.1rem);line-height:1;display:grid;position:absolute;top:clamp(.5rem,1.5vh,.8rem);right:clamp(.5rem,1.5vw,.8rem)}.modal-close:hover{background:#b88a3a1a}.modal-card .login-controls{flex-wrap:wrap;gap:clamp(.4rem,1.5vw,.7rem);margin:clamp(.4rem,1.5vh,.7rem) 0;display:flex}.modal-card .login-controls input{border:1px solid var(--line);min-width:0;min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);-webkit-appearance:none;background:#ffffff38;border-radius:999px;outline:0;flex:1;padding:0 clamp(.7rem,2vw,1rem);font-size:clamp(1rem,2.8vw,1rem)}.modal-card .login-controls button{background:var(--gold-soft);min-width:clamp(4rem,16vw,6rem);min-height:clamp(2.5rem,6.5vh,3rem);color:var(--ink);white-space:nowrap;-webkit-tap-highlight-color:transparent;border:1px solid #b88a3a7a;border-radius:999px;padding:0 clamp(.7rem,2vw,1.2rem);font-size:clamp(.85rem,2.5vw,1rem)}.modal-card .login-notice{color:var(--gold);margin-top:clamp(.4rem,1vh,.6rem);font-size:clamp(.8rem,2.2vw,.9rem)}
