@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-DQZyH_nt.woff)format("woff")}.shanyu-app{--ink:#192039;--muted:#626a80;--teal:#00aaa9;--teal-dark:#008b8b;--lavender:#ebe7ff;--mint:#e1f6f4;--blue:#e7f3ff;--peach:#fff0e6;--yellow:#fff2da;color:var(--ink);background:#f4f6fd;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;font-size:14px;line-height:1.5;position:absolute;inset:0}.shanyu-app button,.shanyu-app input,.shanyu-app textarea{font:inherit;color:inherit}.shanyu-app button{-webkit-tap-highlight-color:transparent;border:0}.shanyu-app button:disabled{opacity:.45}.shanyu-app button:focus-visible{outline-offset:3px;outline:2px solid var(--teal-dark)!important}.shanyu-app h1,.shanyu-app h2,.shanyu-app h3,.shanyu-app p{margin:0}.shanyu-app h1{letter-spacing:-.6px;font-size:26px;font-weight:800;line-height:1.28}.shanyu-app h2{letter-spacing:-.4px;font-size:20px;font-weight:750;line-height:1.4}.shanyu-app h3{font-size:16px;font-weight:700;line-height:1.5}.shanyu-app p{color:var(--muted);font-size:14px;line-height:1.7}.shanyu-app small{color:var(--muted);font-size:12px;font-weight:400}.shanyu-app svg{flex-shrink:0}.shanyu-app img{object-fit:contain;max-width:100%}.page{background:#f4f6fd}.page-content{flex-direction:column;gap:20px;min-height:100%;padding:16px 18px 54px;display:flex;position:relative}.root-content{padding-top:50px;padding-bottom:calc(var(--flow-footer-height) + var(--mobile-safe-area-height) + 18px)}.glass{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffad;border:1px solid #ffffffe6;border-radius:22px;box-shadow:0 8px 24px #7988af12}.lavender{background-color:var(--lavender)}.mint{background-color:var(--mint)}.blue{background-color:var(--blue)}.peach{background-color:var(--peach)}.yellow{background-color:var(--yellow)}.button{background:#00aaa9;border-radius:25px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:48px;padding:11px 18px;transition:transform .15s,background .15s;display:flex;box-shadow:0 7px 15px #00aaa921;color:#fff!important;font-size:15px!important;font-weight:650!important}.button:active{transform:scale(.975)}.button.secondary{box-shadow:none;background:#e4f4f4;color:var(--teal-dark)!important}.button.danger{background:#be5964}.button.danger-outline{background:#faedf0;color:#a74e5e!important}.icon-button{background:#fffc;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.icon-button.active{color:var(--teal-dark);background:#ddf3f2}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f7fdd9;justify-content:space-between;align-items:center;gap:10px;height:48px;padding:0 14px;display:flex}.topbar h1{letter-spacing:0;font-size:16px;font-weight:700}.topbar-spacer{width:40px}.flow-fixed-header{background:#f4f6fd}.text-button{background:0 0;justify-content:center;align-items:center;gap:4px;padding:4px 0;display:inline-flex;color:var(--teal-dark)!important;font-size:12px!important}.centered-link{align-self:center;min-height:34px}.button-pair{gap:10px;display:flex}.tabbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border-top:1px solid #fff;border-radius:25px 25px 0 0;justify-content:space-around;height:84px;padding:9px 10px 24px;display:flex;box-shadow:0 -6px 25px #657da60d}.tabbar button{color:#676d80;background:0 0;place-items:center;width:70px;padding:0;display:grid}.tabbar button>span{border-radius:18px;flex-direction:column;align-items:center;gap:1px;padding:4px 14px;display:flex}.tabbar b{font-size:11px;font-weight:500}.tabbar button[aria-current=page]{color:var(--teal-dark)}.tabbar button[aria-current=page]>span{background:#ddf3f3}.section{flex-direction:column;gap:11px;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.section-heading h2{font-size:19px}.page-intro{flex-direction:column;gap:8px;padding:4px 0;display:flex}.page-intro h2{font-size:24px;line-height:1.5}.eyebrow{color:#778097;letter-spacing:1.2px;font-size:11px;line-height:1.5;display:block}.root-header{justify-content:space-between;align-items:center;gap:10px;padding:8px 0 3px;display:flex}.root-header .eyebrow{margin-bottom:6px}.meta{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.meta span{align-items:center;gap:4px;display:inline-flex}.meta i{background:#cad4e2;width:1px;height:13px;margin:0 4px}.footnote{text-align:center;display:block;color:#788096!important;font-size:11px!important;line-height:1.75!important}.footnote svg{vertical-align:middle;margin-right:4px}.body-copy{font-size:14px!important}.gentle-note{color:#659499;background:#e8f3f5;border-radius:16px;align-items:flex-start;gap:10px;padding:15px;display:flex}.gentle-note p{font-size:12px;line-height:1.8}.pill{white-space:nowrap;background:#edf0f8;border-radius:18px;justify-content:center;align-items:center;gap:5px;padding:8px 14px;transition:all .15s;display:inline-flex;color:#626a80!important;font-size:13px!important}.pill.selected{background:#d4eeed;box-shadow:inset 0 0 0 1px #8ed7d4;color:#007f82!important}.tag-grid{flex-wrap:wrap;gap:8px;display:flex}.tag-grid.centered{justify-content:center}.tag{color:#5b7085;background:#e8f0f7;border-radius:10px;padding:4px 9px;font-size:11px;display:inline-flex}.segmented{background:#e8edf7;border-radius:18px;gap:4px;padding:4px;display:flex}.segmented button{color:#6a7386;background:0 0;border-radius:14px;flex:1;padding:7px 2px;font-size:12px}.segmented .selected{color:#078e90;background:#fff;box-shadow:0 2px 7px #bec7d533}.ip-sprite{background-image:url(/assets/shanyu/ip-states.png);background-repeat:no-repeat;background-size:200% 200%;flex-shrink:0;width:100px;height:100px;display:block}.pose-0{background-position:0 0}.pose-1{background-position:100% 0}.pose-2{background-position:0 100%}.pose-3{background-position:100% 100%}.mascot{flex-shrink:0;width:260px;height:260px;display:block;position:relative}.mascot img{pointer-events:none;filter:drop-shadow(0 10px 12px #7372b817);width:100%;height:100%;display:block}.mascot.interactive{touch-action:none;background:0 0;padding:0}.mascot.interactive img{animation:5s ease-in-out infinite ip-idle}.mascot.interactive:active img{animation:none}@keyframes ip-idle{0%,to{translate:0}50%{translate:0 -4px}}.home-page .page-content{gap:15px;padding-left:16px;padding-right:16px}.home-landscape{pointer-events:none;opacity:.85;background:url(/assets/shanyu/landscape.png) 100%/cover no-repeat;height:170px;position:absolute;top:47px;left:0;right:0}.brandbar,.greeting,.home-practice,.home-page .section,.resume-card{position:relative}.brandbar{justify-content:space-between;align-items:center;height:34px;margin-bottom:-6px;display:flex}.brand{background:0 0;align-items:center;gap:6px;padding:0;display:flex}.brand b{letter-spacing:1px;font-size:24px;font-weight:800}.brand-mountain{color:#91a2ef;place-items:center;width:43px;display:grid}.brandbar .icon-button{width:36px;height:36px;box-shadow:0 5px 14px #cad9f355}.greeting{height:82px}.greeting h1{letter-spacing:.5px;font-size:26px;line-height:1.18}.greeting h1 svg{color:#f4ba55;vertical-align:middle;margin-left:5px}.greeting p{margin-top:6px;font-size:13px}.home-practice{isolation:isolate;background:#ecf8fd78;border-radius:21px;min-height:158px;overflow:visible}.home-practice-copy{z-index:2;pointer-events:none;padding:14px 13px;position:relative}.home-practice-copy h2{letter-spacing:-.6px;white-space:nowrap;margin-bottom:5px;font-size:18px;line-height:1.4}.home-practice-copy p{max-width:183px;font-size:12px;line-height:1.5}.home-practice-copy .button{pointer-events:auto;width:118px;min-height:34px;margin-top:10px;padding:5px 14px;font-size:14px!important}.home-practice-copy .meta{margin-top:9px;font-size:11px}.home-mascot{z-index:1;width:200px;height:200px;bottom:2px;right:-5px;position:absolute!important}.home-page .section-heading h2{font-size:19px;line-height:1.4}.mood-grid{gap:9px;display:grid}.mood-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.mood-card{border-radius:20px;flex-direction:column;justify-content:center;align-items:center;padding:4px 0 8px;display:flex;position:relative;box-shadow:0 8px 20px #6d82a80f;border:1px solid #ffffffc9!important}.mood-card .ip-sprite{width:76px;height:70px}.mood-card strong{font-size:14px;font-weight:650}.mood-card.selected{box-shadow:inset 0 0 0 2px #72c7d1}.scene-list{border-radius:20px;padding:0 12px}.list-row{text-align:left;background:0 0;align-items:center;gap:12px;width:100%;min-width:0;padding:14px 12px;display:flex}.list-row+.list-row{border-top:1px solid #e5e9f3}.row-icon{color:#00a7aa;border-radius:14px;flex-shrink:0;place-items:center;width:41px;height:35px;display:grid}.row-icon.lavender{color:#9981ef}.row-icon.yellow{color:#efb246}.row-icon.peach{color:#d58b73}.row-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.row-copy strong{font-size:14px;font-weight:650}.row-copy small{font-size:11px;line-height:1.5}.scene-list .list-row{gap:10px;padding:9px 0}.scene-list .row-copy strong{letter-spacing:-.3px;font-size:14px}.scene-list .row-icon{border-radius:14px;width:48px;height:29px}.resume-card{text-align:left;flex-shrink:0;align-items:center;gap:11px;min-height:66px;padding:5px 12px 5px 4px;display:flex}.resume-card .ip-sprite{border-right:1px solid #dde5f2;width:91px;height:60px}.resume-card>span:nth-child(2){flex-direction:column;flex:1;gap:4px;display:flex}.resume-card strong{font-size:13px;line-height:1.5}.resume-card small{font-size:11px}.round-play{width:35px;height:35px;color:var(--teal);background:#dcf4f3;border-radius:50%;place-items:center;display:grid}.companion-page .page-content{text-align:center;align-items:center;gap:18px}.companion-label{color:#738095;align-items:center;gap:6px;font-size:12px;display:flex}.status-dot{background:#55b4b1;border-radius:50%;width:6px;height:6px}.speech{width:100%;padding:18px 20px;font-size:15px;line-height:1.8}.large-mascot{width:320px;height:320px;margin:-4px 0 -24px}.gesture-hint{align-items:center;gap:6px;display:flex;font-size:12px!important}.companion-actions{flex-direction:column;gap:10px;width:100%;display:flex}.chat-mode{color:#7e839a;align-items:center;gap:5px;font-size:11px;display:flex}.chat-avatar{color:#7e77a6;align-items:center;gap:7px;margin-bottom:-15px;font-size:12px;display:flex}.chat-avatar .ip-sprite{width:42px;height:42px}.messages{flex-direction:column;gap:14px;display:flex}.message{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:19px;max-width:88%;padding:13px 15px;font-size:14px;line-height:1.8}.message.guide{background:#fff;border-top-left-radius:5px;align-self:flex-start}.message.you{background:#ddf4f1;border-bottom-right-radius:5px;align-self:flex-end}.chat-choices{flex-wrap:wrap;gap:8px;display:flex}.chat-compose{align-items:flex-end;gap:7px;padding:12px;display:flex}.chat-compose textarea{resize:vertical;background:0 0;border:0;outline:none;flex:1;min-width:0;min-height:70px;max-height:160px;line-height:1.7}.send-button{background:var(--teal);border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid;color:#fff!important}.empty{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:20px 10px;display:flex}.empty .ip-sprite{width:140px;height:140px;margin-bottom:-9px}.empty h2{font-size:18px}.empty p{max-width:270px;font-size:13px}.empty .button{width:auto;min-width:170px;margin-top:8px}.progress-dots{justify-content:center;gap:6px;padding:4px 0;display:flex}.progress-dots span{background:#e0e7f1;border-radius:4px;width:28px;height:4px}.progress-dots .filled{background:#6dc9c6}.mood-grid.full{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.full .mood-card{padding:10px 0 13px}.full .mood-card .ip-sprite{width:85px;height:80px}.selection-check{color:#fff;background:var(--teal);border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:7px;right:7px}.intensity{padding:17px}.intensity strong{font-size:13px}.intensity-options{justify-content:space-between;gap:10px;margin:13px 0 6px;display:flex}.intensity-options button{color:#788094;background:#e9edf6;border-radius:50%;width:40px;height:40px}.intensity-options .selected{color:#087f80;background:#bfe9e5}.range-labels{color:#8b91a2;justify-content:space-between;font-size:11px;display:flex}.selected-mood{align-items:center;gap:12px;display:flex}.selected-mood .ip-sprite{width:80px;height:80px}.selected-mood h2{font-size:25px}.text-area{resize:vertical;border-radius:19px;outline:none;width:100%;min-height:150px;padding:17px;display:block;font-size:14px!important;line-height:1.8!important}.text-area.tall{min-height:210px}.text-input{border-radius:16px;outline:none;width:100%;min-height:49px;padding:13px 15px;display:block}.shanyu-app .field-label{color:#565f78;margin-bottom:-11px;font-size:13px;font-weight:600}.input-note{text-align:right;color:#9aa0b0;margin-top:-11px;display:block;font-size:11px!important}.centered-page .page-content{text-align:center;align-items:center;gap:17px;padding-top:24px}.centered-page .result-sprite{width:190px;height:190px;margin:-10px 0 -15px}.centered-page h2{font-size:23px}.centered-page .encouragement{color:#7f7ba1;width:100%;padding:22px;font-size:14px;line-height:1.8}.record-actions{gap:12px;display:flex}.record-actions button{color:#6f7c91;flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:5px;padding:15px 10px;display:flex}.record-actions strong{font-size:13px}.record-actions .ip-sprite{width:38px;height:38px}.record-actions button>svg:first-child{color:#7e73bb;margin:4px}.entry-list{flex-direction:column;gap:10px;display:flex}.entry-card{text-align:left;border-radius:18px;align-items:center;gap:11px;width:100%;margin-bottom:10px;padding:14px;display:flex}.entry-icon{color:#13a5a4;border-radius:14px;flex-shrink:0;place-items:center;width:45px;height:45px;display:grid}.entry-icon .ip-sprite{width:45px;height:45px}.entry-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.entry-copy strong{font-size:14px}.entry-copy small{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.entry-copy time{color:#9ba1af;font-size:10px}.calendar-header{justify-content:space-between;align-items:center;display:flex}.calendar-header h2{font-size:19px}.calendar{padding:17px 10px}.calendar-week,.calendar-days{text-align:center;grid-template-columns:repeat(7,1fr);gap:7px 2px;display:grid}.calendar-week{color:#8c93a6;margin-bottom:10px;font-size:11px}.calendar-days button{background:0 0;border-radius:13px;place-items:center;height:40px;font-size:13px;display:grid;position:relative}.calendar-days .today{color:#008f91;font-weight:800}.calendar-days .selected{color:#00878a;background:#cff0ec}.calendar-days i{background:#9182d6;border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.journal-prompt{flex-direction:column;gap:9px;display:flex}.journal-prompt h2{font-size:24px;line-height:1.6}.journal-prompt .text-button{align-self:flex-start}.journal-paper{background:#fffdfa;flex-direction:column;gap:12px;min-height:330px;padding:18px;display:flex}.journal-title{background:0 0;border:0;outline:0;padding:6px 0;font-size:15px!important;font-weight:600!important}.journal-text{resize:vertical;background:0 0;border:0;outline:0;min-height:230px;font-size:15px!important;line-height:1.9!important}.detail-date{text-align:center;color:#9298a9;font-size:12px}.record-detail{flex-direction:column;align-items:center;gap:14px;padding:24px;display:flex}.record-detail>.ip-sprite{width:100px;height:100px}.record-detail h2{font-size:22px}.record-detail p{overflow-wrap:anywhere;width:100%;line-height:1.9}.preserve-lines{white-space:pre-wrap}.stats{gap:12px;display:flex}.stats>div{text-align:center;flex-direction:column;flex:1;gap:4px;padding:18px 9px;display:flex}.stats strong{color:#6c6fa8;font-size:30px;font-weight:700}.stats span{color:#8790a3;font-size:11px}.mood-chart{flex-direction:column;gap:18px;padding:20px;display:flex}.mood-chart>div{color:#667187;align-items:center;gap:12px;font-size:12px;display:flex}.bar-track{background:#eef2f8;border-radius:8px;flex:1;height:9px;overflow:hidden}.bar-track i{border-radius:8px;height:100%;display:block}.mood-chart b{color:#8590a6;font-size:11px}.practice-feature{background:#e8e9fb;align-items:center;min-height:165px;padding:18px 20px;display:flex}.practice-feature>div{text-align:left;flex:1}.practice-feature h2{margin:7px 0 13px;font-size:23px}.practice-feature .ip-sprite{width:145px;height:145px;margin-right:-15px}.small-action{color:#707e9b;align-items:center;gap:5px;font-size:12px;display:flex}.shortcut-pair{gap:10px;display:flex}.shortcut-pair button{color:#7282a1;flex:1;justify-content:center;align-items:center;gap:8px;padding:15px 8px;font-size:13px;display:flex}.category-carousel{margin:1px 0 5px}.pill-track{gap:8px;padding:0 0 2px}.exercise-list{flex-direction:column;gap:10px;display:flex}.exercise-card{text-align:left;align-items:center;gap:8px;width:100%;min-height:114px;margin-bottom:10px;padding:12px 12px 12px 4px;display:flex}.exercise-card>.ip-sprite{width:90px;height:90px}.exercise-card>div{flex:1;min-width:0}.exercise-card .eyebrow{letter-spacing:.4px;font-size:10px}.exercise-card h3{margin:4px 0;font-size:15px}.exercise-card p{font-size:11px}.exercise-card .meta{margin-top:8px;font-size:10px}.search-field{color:#8d96ac;border-radius:18px;align-items:center;gap:8px;padding:13px 14px;display:flex}.search-field input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:13px}.search-field button{background:0 0;place-items:center;padding:0;display:grid}.exercise-detail-hero{text-align:center;border-radius:25px;flex-direction:column;align-items:center;gap:7px;padding:12px 10px 23px;display:flex}.exercise-detail-hero>.ip-sprite{width:180px;height:180px;margin-bottom:-18px}.exercise-detail-hero h2{font-size:24px}.exercise-detail-hero p{font-size:13px}.exercise-detail-hero .meta{margin-top:4px}.detail-actions{align-items:center;gap:12px;display:flex}.detail-actions .button{flex:1}.detail-actions .icon-button{width:46px;height:46px}.steps{flex-direction:column;gap:16px;display:flex}.steps>div{align-items:flex-start;gap:12px;display:flex}.steps>div>span{color:#64a4a8;background:#dfefef;border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;font-size:12px;display:grid}.steps p{font-size:13px;line-height:1.8}.player-page .page-content{text-align:center;align-items:center;gap:13px;padding-top:16px}.player-page h2{font-size:23px}.breathing-mascot{place-items:center;height:260px;margin:-5px 0 -15px;display:grid}.breathing-mascot>.mascot{width:270px;height:270px}.player-instruction{flex-direction:column;align-items:center;gap:9px;max-width:300px;min-height:110px;display:flex}.player-instruction h3{color:#6c6f9d;font-size:24px}.player-instruction p{font-size:13px}.player-time{flex-direction:column;gap:2px;display:flex}.player-time strong{letter-spacing:2px;font-variant-numeric:tabular-nums;font-size:32px;font-weight:500}.player-time span{color:#939bb0;font-size:10px}.shanyu-app progress{border:0;border-radius:8px;width:90%;height:4px;overflow:hidden}.shanyu-app progress::-webkit-progress-bar{background:#e0e6f1}.shanyu-app progress::-webkit-progress-value{background:#65c7c3}.player-controls{justify-content:center;align-items:center;gap:35px;margin:8px 0;display:flex}.main-play{background:#00aaa9;border-radius:50%;place-items:center;width:68px;height:68px;display:grid;box-shadow:0 8px 20px #79cbcc4d;color:#fff!important}.feedback-card{flex-direction:column;gap:14px;width:100%;padding:20px;display:flex}.feedback-card .tag-grid{justify-content:center}.feedback-card h3{font-size:15px}.feedback-card p{font-size:12px}.campus-cards{gap:14px;display:grid}.campus-card{text-align:left;flex-direction:column;gap:10px;padding:22px;display:flex}.campus-card>svg{color:#9391c8}.campus-card h3{font-size:19px}.campus-card p{font-size:13px}.campus-detail-hero{text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:12px;padding:25px 20px;display:flex}.campus-detail-hero>svg{color:#8f89c7}.campus-detail-hero h2{font-size:25px}.campus-detail-hero p{font-size:13px}.sleep-hero{text-align:center;flex-direction:column;align-items:center;gap:8px;padding-top:12px;display:flex}.sleep-hero>svg{color:#c8b5df}.sleep-hero h2{font-size:25px}.sleep-hero p{font-size:13px}.sleep-hero .ip-sprite{width:270px;height:220px;margin:-15px 0 -20px}.sleep-page{background:#eeeefd}.sound-art{border-radius:25px;height:180px;position:relative;overflow:hidden}.sound-art img{object-fit:cover;width:100%;height:100%}.sound-art>span{color:#7bb7c9;place-items:center;display:grid;position:absolute;inset:0}.sound-choices{gap:10px;display:flex}.sound-choices button{color:#8191a9;background:#e9eef8;border-radius:18px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:15px 8px;font-size:12px;display:flex}.sound-choices button.selected{color:#139d9b;background:#d9f1ef;box-shadow:inset 0 0 0 1px #9cdad8}.volume-control{color:#7e899f;align-items:center;gap:8px;padding:17px 12px;font-size:11px;display:flex}.volume-control input{accent-color:#18aaa6;flex:1;min-width:0}.volume-control span{text-align:right;width:28px}.support-hero{background:#e7f3f6;align-items:center;padding:23px 10px 23px 20px;display:flex}.support-hero>div{flex:1}.support-hero h2{font-size:21px;line-height:1.6}.support-hero p{margin-top:10px;font-size:12px}.support-hero>.ip-sprite{width:105px;height:125px}.support-plan-card{text-align:left;color:#589a9e;align-items:center;gap:12px;width:100%;padding:19px;display:flex}.support-plan-card>span{flex-direction:column;flex:1;gap:6px;display:flex}.support-plan-card strong{color:#4c637e;font-size:14px}.support-plan-card small{font-size:11px}.urgent-link{background:#faedf0;border-radius:15px;justify-content:center;align-items:center;gap:8px;padding:13px;display:flex;color:#a66b77!important;font-size:13px!important}.urgent-content{flex-direction:column;gap:15px;display:flex}.urgent-content p{font-size:13px}.professional-card{flex-direction:column;align-items:flex-start;gap:13px;padding:23px;display:flex}.professional-card>svg{color:#9991d1}.professional-card h2{font-size:21px}.professional-card p{font-size:13px}.checklist{padding:5px 15px}.checklist button{text-align:left;background:0 0;align-items:flex-start;gap:11px;width:100%;padding:15px 0;line-height:1.8;display:flex;font-size:13px!important}.checklist button+button{border-top:1px solid #e6ecf4}.checklist button>span{border:1px solid #cbd7e6;border-radius:6px;flex-shrink:0;place-items:center;width:21px;height:21px;margin-top:2px;display:grid}.checklist .checked{color:#fff;background:#24b2ac;border-color:#24b2ac}.profile-hero{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.profile-hero>.mascot{width:200px;height:180px;margin:-10px 0 -12px}.profile-hero h2{font-size:23px}.profile-hero p{font-size:13px}.name-field{gap:10px;padding:13px;display:flex}.name-field input{background:0 0;border:0;outline:0;flex:1;min-width:0}.name-field button{width:40px}.settings-list{padding:0 17px}.setting-toggle{text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:15px;width:100%;padding:19px 0;display:flex}.setting-toggle+.setting-toggle{border-top:1px solid #e3e9f2}.setting-toggle>span:first-child{flex-direction:column;gap:5px;display:flex}.setting-toggle strong{font-size:14px}.setting-toggle small{font-size:10px}.switch{background:#dce2ed;border-radius:20px;flex-shrink:0;align-items:center;width:42px;height:25px;padding:3px;transition:background .2s;display:flex}.switch>span{background:#fff;border-radius:50%;width:19px;height:19px;transition:translate .2s;box-shadow:0 2px 4px #a8b2c344}.switch.on{background:#40beba}.switch.on>span{translate:17px}.privacy-sections{flex-direction:column;gap:13px;display:flex}.privacy-sections>div{flex-direction:column;gap:10px;padding:21px;display:flex}.privacy-sections svg{color:#8f8ebf}.privacy-sections p{font-size:13px}.app-toast{color:#fff;z-index:25;text-align:center;pointer-events:none;background:#28364ce6;border-radius:15px;width:max-content;max-width:85%;padding:10px 16px;font-size:12px;position:absolute;bottom:110px;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #48587022}.storage-notice{color:#8e683a;z-index:26;background:#fff0d5;border-radius:12px;padding:10px;font-size:11px;position:absolute;top:54px;left:12px;right:12px}.shanyu-app .bottom-sheet{background:#f7f9fe}.shanyu-app .sheet-title{font-size:19px}.shanyu-app .sheet-description{font-size:12px}.shanyu-app .sheet-content{flex-direction:column;gap:12px;display:flex}.shanyu-app[data-reduced-motion=true] *{transition:none!important;animation:none!important}.shanyu-app[data-reduced-motion=true] .mascot img{transform:none!important}@media (prefers-reduced-motion:reduce){.shanyu-app *{transition:none!important;animation:none!important}.mascot img{transform:none!important}}.shanyu-app{font-synthesis:weight}.home-page .page-content{gap:12px}.brand-mountain{mix-blend-mode:multiply;background:url(/assets/shanyu/brand-reference.png) -166px -17px/370px no-repeat;width:43px;height:17px}.home-practice-copy{padding-top:12px;padding-bottom:12px}.compact .mood-card{padding-top:3px;padding-bottom:7px}.compact .mood-card .ip-sprite{width:70px;height:61px}.scene-list .list-row{padding:6px 0}.tabbar b{font-size:12px}.compact .ip-sprite{background-size:270% 270%}.compact .pose-0{background-position:10% 10%}.compact .pose-1{background-position:90% 10%}.compact .pose-2{background-position:10% 90%}.compact .pose-3{background-position:90% 90%}:root{color:#151515;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}.mobile-carousel{overscroll-behavior:contain;scrollbar-width:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;display:block;position:relative;overflow:auto}.mobile-carousel::-webkit-scrollbar{display:none}.mobile-carousel{touch-action:pan-y;overflow:auto hidden}.mobile-carousel[data-dragging=true]{cursor:none}.mobile-carousel-content{width:max-content;min-width:100%;transform:translateX(var(--mobile-carousel-overdrag));will-change:transform;display:flex}.mobile-carousel-scrollbar{z-index:4;opacity:0;pointer-events:none;transition:opacity .15s;position:absolute;inset:0}.mobile-carousel-scrollbar[data-visible=true]{opacity:1}.mobile-carousel-scrollbar-thumb{background:#00000059;border-radius:999px;height:3px;position:absolute;bottom:4px;right:4px}body{min-width:320px;overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}.phone-stage{place-items:center;width:100%;height:100%;padding:24px;display:grid;position:relative}.device-menu-bar{z-index:100;border-radius:12px;padding:3px;position:absolute;top:18px;right:18px}.device-picker-trigger{color:#151515;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;height:34px;padding:0 10px 0 12px;font:600 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-trigger:hover,.device-picker-trigger[data-state=open]{background:#0000000e}.device-picker-trigger:focus-visible{outline-offset:2px;outline:2px solid #000000b8}.device-picker-menu{z-index:200;min-width:168px;transform-origin:var(--radix-dropdown-menu-content-transform-origin);background:#fffffffa;border-radius:12px;padding:3px;animation:.12s ease-out device-menu-in;box-shadow:0 0 1px #0000000f,0 0 0 1px #00000014,0 4px 4px #0000000d}.device-picker-item{color:#181818;-webkit-user-select:none;user-select:none;border-radius:8px;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 9px 0 10px;font:500 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-item[data-highlighted]{background:#f0f0f0}.device-picker-item[data-state=checked]{font-weight:600}.device-picker-check{color:#181818;place-items:center;display:grid}@keyframes device-menu-in{0%{opacity:0;transform:scale(.98)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.phone-scale-box{position:relative}.phone-device{transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.phone-bezel{object-fit:contain;z-index:2;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.device-screen{cursor:none;z-index:1;-webkit-user-select:none;user-select:none;background:#fff;border-radius:42px;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.device-camera{z-index:75;pointer-events:none;background:#050505;border-radius:50%;display:block;position:absolute;box-shadow:inset 0 0 0 1px #ffffff14}.device-screen,.device-screen *{cursor:none!important}.device-screen img,.keyboard-asset{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.device-screen input,.device-screen textarea,.device-screen select,.device-screen option,.device-screen [contenteditable=true]{-webkit-user-select:auto;user-select:auto}.device-screen:active,.device-screen:active *,.device-screen input,.device-screen textarea,.device-screen button,.device-screen a,.device-screen [role=button]{cursor:none!important}.device-screen[data-cursor-debug=true],.device-screen[data-cursor-debug=true] *{cursor:default!important}.device-screen :focus,.device-screen :focus-visible{box-shadow:none!important;outline:0!important}.flow-stack,.flow-scenes,.flow-screen,.mobile-app-viewport{position:absolute;inset:0}.mobile-app-viewport[data-platform=android][data-keyboard-visible=false]{bottom:var(--device-safe-area-bottom,48px)}.flow-stack{--flow-header-height:0px;--flow-header-content-height:0px;--flow-header-safe-area:0px;--flow-footer-height:0px;--keyboard-height:0px;touch-action:pan-y;background:0 0;overflow:hidden}.flow-fixed-header{z-index:12;height:var(--flow-header-height);padding-top:var(--flow-header-safe-area);box-sizing:border-box;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;position:absolute;top:0;left:0;right:0}.flow-fixed-footer{z-index:12;right:0;bottom:var(--keyboard-height);height:var(--flow-footer-height);background:0 0;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0}.flow-scenes{top:var(--flow-header-height);bottom:0;overflow:hidden}.flow-screen{will-change:transform;background:0 0;overflow:hidden}.mobile-page{--mobile-safe-area-height:var(--device-safe-area-bottom,34px);--keyboard-height:0px;position:absolute;inset:0}.mobile-page[data-keyboard-visible=true],.mobile-app-viewport[data-platform=android] .mobile-page{--mobile-safe-area-height:0px}.mobile-scroll{top:0;right:0;bottom:var(--keyboard-height);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;touch-action:none;-webkit-user-select:none;user-select:none;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;overflow:hidden auto}.mobile-scroll::-webkit-scrollbar{display:none}.mobile-scroll[data-dragging=true]{cursor:none}.mobile-cursor{z-index:80;opacity:0;pointer-events:none;will-change:transform;background:radial-gradient(circle at 50% 44%,#ffffffb3 0 34%,#ffffff8a 58%,#eeeeee7a 100%);border:.5px solid #0000001f;border-radius:999px;width:48px;height:48px;transition:opacity 90ms,background 80ms,box-shadow 80ms;position:absolute;top:0;left:0;box-shadow:inset 0 1px 2px #fff9,inset 0 -5px 10px #0000000d,inset 0 0 0 1px #00000006}.mobile-cursor:before{content:"";pointer-events:none;background:linear-gradient(#ffffff61,#fff0);border-radius:999px;width:32px;height:17px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.mobile-cursor:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 1px 0 3px #ffffff47,inset -1px 0 3px #00000005}.mobile-cursor-hotspot{pointer-events:none;background:#ffffffd1;border:1px solid #007afff2;border-radius:999px;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffffbf,0 0 0 3px #007aff29}.mobile-cursor-hotspot:before,.mobile-cursor-hotspot:after{content:"";background:#007afff2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-cursor-hotspot:before{width:17px;height:1px}.mobile-cursor-hotspot:after{width:1px;height:17px}.mobile-cursor[data-visible=true]{opacity:1}.mobile-cursor[data-active=true]{background:radial-gradient(circle at 50% 55%,#e8e8e894 0 30%,#f8f8f880 62%,#ffffffad 100%);box-shadow:inset 0 3px 7px #00000014,inset 0 -4px 8px #ffffff57,inset 0 0 0 1px #00000008}.mobile-cursor[data-active=true]:before{background:linear-gradient(#0000000e,#0000)}.mobile-cursor[data-active=true]:after{box-shadow:inset 0 5px 9px #0000000b,inset 0 -3px 7px #ffffff47}.mobile-scroll-content{will-change:transform;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;padding:0;display:grid}.app-screen{background:#fff}.mobile-scrollbar{z-index:9;top:4px;right:5px;bottom:calc(var(--mobile-safe-area-height) + var(--keyboard-height) + 4px);opacity:0;pointer-events:none;width:4px;transition:bottom .26s cubic-bezier(.2,.8,.2,1),opacity .18s;position:absolute}.mobile-page[data-keyboard-dragging=true] .mobile-scroll,.mobile-page[data-keyboard-dragging=true] .mobile-scrollbar,.flow-stack[data-keyboard-dragging=true] .flow-fixed-footer{transition:none}.mobile-scrollbar[data-visible=true]{opacity:1}.mobile-scrollbar-thumb{background:#00000047;border-radius:999px;width:4px;min-height:36px;transition:background .12s;box-shadow:0 0 0 1px #ffffff2e}.status-bar{z-index:72;color:#050505;pointer-events:none;background:0 0;grid-template-columns:1fr auto;align-items:center;height:54px;padding:10px 34px 0 36px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;display:grid;position:absolute;top:0;left:0;right:0}.device-screen[data-device=pixel-10] .status-bar{align-items:start;height:auto;padding:32px 32px 0;font-family:Roboto,Arial,sans-serif}.status-time{text-align:center;letter-spacing:0;justify-self:start;min-width:58px;font-size:15px;font-weight:600;line-height:1}.status-indicators{justify-self:end;align-items:center;display:flex}.status-indicator-svg{display:block}.status-indicator-svg[data-platform=ios]{width:79px;height:13px}.status-indicator-svg[data-platform=android]{width:50px;height:14px}.device-screen[data-device=pixel-10] .status-time{font-weight:500;transform:translateY(2px)}.home-indicator-svg{z-index:70;width:100%;height:var(--device-safe-area-bottom,34px);pointer-events:none;display:block;position:absolute;bottom:0;left:0;right:0}.android-navigation-bar{z-index:70;width:428px;height:var(--device-safe-area-bottom,48px);pointer-events:none;-webkit-user-drag:none;display:block;position:absolute;bottom:-1px;left:-1px}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:26px;line-height:1.08}h2{font-size:15px}p{color:#555;font-size:14px;line-height:1.45}.field-label{color:#555;font-size:13px;font-weight:800}.mobile-field{gap:8px;display:grid}.mobile-field input{color:#151515;background:#fff;border:1px solid #0000001a;border-radius:8px;outline:0;width:100%;min-height:44px;padding:0 12px}.mobile-field input:focus{box-shadow:none;border-color:#00000029}.device-screen .mobile-field input:focus,.device-screen .mobile-field input:focus-visible{border-color:#0000001f;box-shadow:none!important;outline:0!important}.sheet-overlay{z-index:20;background:#00000057;position:absolute;inset:0}.bottom-sheet{z-index:21;touch-action:none;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;min-height:260px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 -16px 48px #0003}.sheet-handle-zone{touch-action:none;place-items:center;height:30px;display:grid}.sheet-handle{background:#c9c9c4;border-radius:999px;width:42px;height:5px}.sheet-header{gap:4px;padding:0 18px 14px;display:grid}.sheet-title{margin:0;font-size:18px;font-weight:900}.sheet-description{color:#737373;margin:0;font-size:13px;line-height:1.35}.sheet-content{padding:0 18px 24px;overflow:auto}.keyboard-dock{z-index:30;height:339px;box-shadow:none;pointer-events:none;will-change:transform;background:#d8d9de;border-radius:32px 32px 0 0;padding:0;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden}.keyboard-dock[data-platform=android]{background:#f3f2f6;border-radius:0;box-shadow:0 -1px 2px #00000014}.keyboard-dock[data-visible=true]{pointer-events:auto}.keyboard-asset{z-index:1;border-radius:inherit;object-fit:cover;object-position:center bottom;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:relative}.keyboard-dock[data-platform=android] .keyboard-asset{object-fit:fill;border-radius:0}
