@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+TC:wght@400;500;600;700&display=swap";:root{color:#234e42;font-synthesis:none;background:#eef3e9;font-family:DM Sans,Noto Sans TC,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #bd8745}button{color:inherit}#app{background:radial-gradient(at 48% 42%,#fafcf5 0%,#eef3e9 70%);height:100svh;min-height:700px;position:relative;overflow:hidden}#scene{position:absolute;inset:0}#scene canvas{touch-action:none;width:100%;height:100%;display:block}header{z-index:3;justify-content:space-between;align-items:center;display:flex;position:absolute;top:31px;left:42px;right:42px}.brand{color:inherit;letter-spacing:-.6px;align-items:center;gap:12px;font-size:26px;font-weight:700;text-decoration:none;display:flex}.brand small{letter-spacing:2.3px;margin-top:4px;font-size:10.5px;font-weight:500;display:block}.brand-mark{letter-spacing:-5px;border:1px solid #92b4a0;border-radius:13px;width:41px;height:42px;padding-left:6px;font-size:31px;line-height:40px;position:relative}.brand-mark span{letter-spacing:0;font-size:19px;position:absolute;top:-8px;right:3px}.mode-switch{background:#fff9;border:1px solid #d5e0d2;border-radius:30px;gap:3px;padding:4px;display:flex}.mode-switch button{background:0 0;border:0;border-radius:24px;padding:12px 23px;font-size:15.5px}.mode-switch .active{color:#fff;background:#285947;box-shadow:0 3px 8px #244d4220}.intro{pointer-events:none;position:absolute;top:155px;left:44px}.eyebrow{letter-spacing:2px;align-items:center;gap:8px;font-size:13px;display:flex}.eyebrow>span{background:#679b76;border-radius:100%;width:8px;height:8px}h1{letter-spacing:3px;margin:23px 0 16px;font-size:54px;font-weight:600;line-height:1.35}h1>span{letter-spacing:2px;margin-top:14px;font-size:30px;font-weight:500;line-height:1.65;display:block}.intro p{color:#829084;letter-spacing:1px;font-size:15.5px;line-height:1.9}.scene-hint{color:#839385;align-items:center;gap:8px;margin-top:26px;font-size:13px;display:flex}.scene-hint>span{border:1px solid #bbcdbb;border-radius:20px;padding:2px 8px;font-size:21px}.world-label{white-space:nowrap;pointer-events:none;background:#fff9;border:1px solid #dbe5d7;border-radius:30px;align-items:center;gap:11px;padding:13px 21px;font-size:13px;display:flex;position:absolute;top:112px;left:49%;transform:translate(-50%);box-shadow:0 3px 15px #326b3b04}.live-dot{background:#71a477;border-radius:100%;width:8px;height:8px;box-shadow:0 0 0 4px #71a47719}.label-divider{background:#d6dfcf;width:1px;height:14px}.performance-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #fff;border-radius:22px;width:340px;padding:26px;position:absolute;top:154px;right:36px;box-shadow:0 15px 60px #24472c0b}.card-top{justify-content:space-between;align-items:center;display:flex}.tag{color:#5d855c;background:#eaf3e7;border-radius:8px;padding:6px 10px;font-size:13px}.program-number{letter-spacing:2px;color:#97a498;font-size:13px}.performer{align-items:center;gap:14px;margin-top:23px;display:flex}.avatar{color:#967849;background:#f4ead8;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:21px;display:flex}.performer h2{margin:0 0 5px;font-size:25px;font-weight:500}.performer div>span{color:#8c9b8d;font-size:12px}.leaf-icon{color:#9bb68b;margin-left:auto;font-size:35px}.piece{border-top:1px solid #edf0e9;margin-top:22px;padding-top:20px}.piece>span{letter-spacing:2px;color:#94a08e;font-size:12px}.piece h3{letter-spacing:1px;margin:9px 0 4px;font-size:23px;font-weight:500}.piece p{color:#9ca495;margin:0;font-size:13px}.student-note{color:#7c8d7d;background:#f6f7f0;border-radius:10px;margin:18px 0 24px;padding:16px 14px;font-size:13px;line-height:1.9}.action-heading{justify-content:space-between;align-items:center;font-size:13px;display:flex}.action-heading>span:last-child{color:#8a9c80;font-size:12px}.gift-options{gap:9px;margin-top:14px;display:flex}.gift-options button{background:#fff;border:1px solid #e2e9dc;border-radius:13px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:13px 5px;font-size:12px;transition:transform .2s,background .2s;display:flex}.gift-options button:hover{background:#eff5e9;transform:translateY(-3px)}.gift-options button>span{color:#d19a64;font-size:35px;line-height:1.2}.gift-options button:nth-child(2)>span{color:#d6b554}.gift-options button:nth-child(3)>span{color:#5a9471}.gift-options button:disabled{opacity:.5;cursor:wait}.feedback{color:#95a18e;text-align:center;min-height:36px;margin-top:16px;font-size:12px;line-height:1.7}.feedback.success{color:#42734d}.view-tools{gap:10px;display:flex;position:absolute;bottom:140px;left:44px}.view-tools button{background:#fff9;border:1px solid #d6dfce;border-radius:50%;width:47px;height:47px;font-family:Arial;font-size:25px}.view-tools button:last-child{font-size:16px}footer{color:#91a08c;letter-spacing:.6px;justify-content:space-between;font-size:12px;display:flex;position:absolute;bottom:24px;left:44px;right:38px}.host-caption{color:#87967d;font-size:13px}.host-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.host-buttons button{background:#edf4e7;border:1px solid #d8e1d2;border-radius:10px;padding:13px 6px;font-size:14.5px}.host-buttons button:last-child{color:#fff;background:#2f604b;grid-column:1/-1}.host-buttons button:disabled{opacity:.4;cursor:default}#loading{letter-spacing:3px;z-index:10;background:#eef3e9;place-items:center;font-size:17px;transition:opacity .5s;display:grid;position:absolute;inset:0}#loading.loaded{opacity:0;pointer-events:none}[hidden]{display:none!important}@media (width>=1500px){.intro{top:20%;left:5%}.performance-card{width:360px;top:21%;right:5%}header{left:5%;right:5%}}@media (width<=1000px){h1{font-size:42px}h1>span{font-size:23px}.intro p{font-size:14.5px}.performance-card{width:300px;padding:22px;top:130px;right:20px}.world-label{top:98px;left:48%}.scene-hint{max-width:210px;font-size:12px}header{left:27px;right:23px}#app{height:100svh;min-height:640px}header{top:20px;left:20px;right:16px}.brand{gap:8px;font-size:19.5px}.brand-mark{transform-origin:0;width:36px;transform:scale(.85)}.brand small{letter-spacing:1.2px;font-size:8px}.mode-switch button{padding:10px 13px;font-size:13px}.intro{top:92px;left:23px}.eyebrow{letter-spacing:1.1px;font-size:10.5px}h1{letter-spacing:2px;margin-top:12px;font-size:36px}h1>span{letter-spacing:1px;margin-top:8px;font-size:15.5px;line-height:1.65}.intro p,.scene-hint{display:none}.world-label{padding:10px 16px;font-size:12px;top:255px;left:50%}.performance-card{border-radius:18px;width:auto;padding:18px 20px;inset:auto 16px 120px}.card-top{gap:10px;position:absolute;top:20px;right:18px}.performer{gap:11px;margin:0}.avatar{width:44px;height:44px;font-size:17px}.performer h2{font-size:21px}.performer div>span{font-size:10.5px}.leaf-icon{display:none}.piece{flex-wrap:wrap;align-items:center;gap:10px;margin-top:13px;padding-top:12px;display:flex}.piece>span{letter-spacing:1px;font-size:10.5px}.piece h3{margin:0;font-size:19.5px}.piece p{font-size:12px}.student-note{margin:10px 0 12px;padding:10px 12px;font-size:12px}.gift-options{gap:9px;margin-top:11px}.gift-options button{flex-direction:row;justify-content:center;gap:9px;padding:10px 4px;font-size:12px}.gift-options button>span{font-size:30px}.feedback{min-height:18px;margin-top:9px;font-size:10.5px}.view-tools{flex-direction:column;bottom:410px;left:auto;right:18px}.view-tools button{width:40px;height:40px;font-size:22px}.view-tools button:last-child{font-size:14.5px}footer{font-size:9px;bottom:15px;left:20px;right:20px}footer>span:first-child{display:none}footer>span:last-child{margin-left:auto}.host-caption{margin:8px 0}.host-buttons{display:flex}.host-buttons button{flex:1;padding:12px 6px;font-size:13px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important}}h1>strong{font-weight:600;font-size:inherit;letter-spacing:inherit;display:block}#app[data-theme=space] .intro,#app[data-theme=space] .brand{color:#e6e6f5}#app[data-theme=space] .intro p,#app[data-theme=space] .eyebrow,#app[data-theme=space] .scene-hint,#app[data-theme=space] footer{color:#a6b3d0}#app[data-theme=space] .brand-mark{border-color:#657596}#app[data-theme=space] .world-label{color:#e3e6f5;background:#28324be8;border-color:#45506d}#app[data-theme=space] .view-tools button{color:#d8def5;background:#29354c;border-color:#566480}#app[data-theme=space] .mode-switch{color:#d5deed;background:#273148;border-color:#52617a}#app[data-theme=space] .mode-switch .active{background:#666495}#app[data-theme=space] .live-dot{background:#c2a3ed}#app[data-theme=ocean] .mode-switch .active{background:#386d7c}#app[data-theme=ocean] .intro,#app[data-theme=ocean] .brand{color:#305f6c}@media (width<=600px){h1>strong{font-size:34px}}@media (width<=1000px) and (height<=550px) and (orientation:landscape){#app{height:100svh;min-height:360px}.intro{display:none}.performance-card{width:310px;padding:14px 18px;inset:85px 16px auto auto}.performance-card .student-note{display:none}.performance-card .card-top{top:15px;right:16px}.world-label{top:86px;left:calc(50% - 170px)}.view-tools{bottom:80px;right:340px}footer{display:none}}@media (width<=600px) and (height<=740px) and (orientation:portrait){.intro{top:78px}h1>strong{font-size:31px}h1>span{display:none}.performance-card{padding:14px 16px;bottom:96px}.performance-card .student-note{display:none}.performance-card .card-top{top:15px;right:16px}.world-label{top:148px}.view-tools{bottom:300px}footer{bottom:7px}}#performance-page{position:absolute;inset:0}.bottom-nav{z-index:5;bottom:max(20px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #dbe5d6;border-radius:30px;width:360px;padding:6px;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #24472c15}.bottom-nav button{color:#738670;background:0 0;border:0;border-radius:24px;flex:1;justify-content:center;align-items:center;gap:11px;min-height:64px;font-size:17px;font-weight:500;display:flex}.bottom-nav button>span{font-size:27px}.bottom-nav button.active{color:#fff;background:#2f604b}#app[data-theme=space] .bottom-nav{background:#273148f5;border-color:#52617a}#app[data-theme=space] .bottom-nav button{color:#c6cee1}#app[data-theme=space] .bottom-nav button.active{color:#fff;background:#666495}#app[data-theme=ocean] .bottom-nav button.active{background:#386d7c}.return-live{background:#f3f6ef;border:1px solid #dbe5d6;border-radius:10px;width:100%;margin-top:6px;padding:10px;font-size:13px}#program-page{color:#234e42;padding:5px 6px 20px;position:absolute;inset:120px max(36px,5%) 118px;overflow:auto}.program-heading h1{letter-spacing:2px;margin:12px 0;font-size:39px}.program-heading p{color:#72856e;margin:0 0 22px;font-size:17px}.live-banner{text-align:left;color:#355e45;background:#e0ecdc;border:1px solid #d1e0cd;border-radius:15px;width:100%;margin-bottom:24px;padding:19px 22px;font-size:15.5px;display:block}.program-layout{grid-template-columns:1.2fr 1fr;align-items:start;gap:25px;display:grid}#program-list{gap:14px;display:grid}.program-item{text-align:left;background:#ffffffc9;border:1px solid #dbe5d6;border-radius:18px;align-items:center;gap:18px;width:100%;padding:25px 22px;display:flex}.program-item.active{background:#edf4e7;border-color:#648d68}.program-order{color:#85977e;letter-spacing:1px;font-size:15.5px}.program-item-copy{flex:1;gap:8px;display:grid}.program-item-copy strong{font-size:21px;font-weight:500}.program-item-copy>span{color:#7b8d76;font-size:14.5px}.program-item-status{color:#68805f;white-space:nowrap;font-size:13px}.program-detail{background:#ffffffdf;border:1px solid #e0e8da;border-radius:20px;padding:28px}.program-detail h2{margin:14px 0;font-size:31px;font-weight:500}.program-detail p{color:#7a8973;font-size:15.5px;line-height:1.8}.program-detail blockquote{color:#4b6850;margin:20px 0;font-size:17px;line-height:1.9}.detail-theme{color:#7d8c72;border-top:1px solid #e2e9dc;padding:18px 0;font-size:15.5px}#preview-performance{color:#fff;background:#2f604b;border:0;border-radius:13px;width:100%;min-height:56px;padding:17px 22px;font-size:16px;font-weight:500}.program-detail .program-disclaimer{text-align:center;margin:14px 0 0;font-size:13px}@media (width<=1000px){.bottom-nav{bottom:max(16px,env(safe-area-inset-bottom));border-radius:28px;width:calc(100% - 32px);max-width:420px}#program-page{padding:4px 0 12px;inset:94px 16px 108px}.program-heading{padding:0 7px}.program-heading h1{margin:10px 0;font-size:32px}.program-heading p{margin-bottom:18px;font-size:14.5px}.program-heading .eyebrow{font-size:12px}.program-layout{grid-template-columns:1fr;gap:18px}.program-item{gap:14px;padding:20px 16px}.program-item-copy strong{font-size:18px}.program-detail{padding:22px}.program-detail h2{font-size:26px}.live-banner{margin-bottom:16px;padding:15px;font-size:13px;line-height:1.8}footer{font-size:8px;bottom:3px}.return-live{margin-top:5px;padding:7px;font-size:12px}}@media (width<=600px) and (height<=740px) and (orientation:portrait){.bottom-nav{bottom:12px}.bottom-nav button{min-height:56px}}@media (width<=1000px) and (height<=550px) and (orientation:landscape){.bottom-nav{width:calc(100% - 360px);max-width:340px;bottom:8px;left:calc(50% - 170px)}.bottom-nav button{min-height:50px}#program-page{top:85px;bottom:84px}.program-layout{grid-template-columns:1.1fr 1fr}#app[data-page=program] .bottom-nav{width:340px;left:50%}}#waiting-content{margin:0;padding:0}#waiting-program{color:#fff;background:#2f604b;border:0;border-radius:14px;width:100%;min-height:54px;padding:14px 16px;font-size:17px;font-weight:500}.host-reset{background:0 0;border:1px solid #dbe5d6;border-radius:10px;width:100%;margin-top:8px;padding:10px;font-size:13px}.host-reset:disabled{opacity:.4;cursor:default}.program-layout{max-width:820px;margin-inline:auto;display:block}.program-heading,.live-banner{max-width:820px;margin-left:auto;margin-right:auto}.program-modal{color:#234e42;background:#fcfdf9;border:1px solid #e0e8da;border-radius:24px;width:calc(100% - 32px);max-width:520px;max-height:calc(100svh - 48px);margin:auto;padding:28px;overflow:auto;box-shadow:0 22px 80px #172c3940}.program-modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#172c3960}.program-modal[open]{animation:.23s ease-out program-modal-in}.program-modal[open]::backdrop{animation:.23s ease-out program-backdrop-in}.modal-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}#close-program-modal{color:#62795d;background:#edf2e7;border:0;border-radius:12px;min-height:52px;padding:10px 16px;font-size:15.5px}.program-modal .program-detail{background:0 0;border:0;border-radius:0;padding:0}#app:has(#program-modal[open]) #program-page{overflow:hidden}@keyframes program-modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes program-backdrop-in{0%{opacity:0}to{opacity:1}}@media (width<=1000px){#waiting-program{min-height:50px;padding:12px 14px;font-size:16px}.program-modal{padding:22px}.program-modal .program-detail h2{font-size:28px}}@media (width<=600px) and (height<=740px) and (orientation:portrait){.host-reset{margin-top:5px;padding:7px}}@media (prefers-reduced-motion:reduce){.program-modal[open],.program-modal[open]::backdrop{animation:none}}.intro{top:70px}.world-label{top:40px}.performance-card{top:100px}#program-page,#profile-page{top:40px}#profile-page{color:#234e42;padding:5px 6px 20px;position:absolute;bottom:118px;left:max(36px,5%);right:max(36px,5%);overflow:auto}.bottom-nav{width:420px}footer a{color:inherit;pointer-events:auto;font-size:13px;text-decoration:underline}.blessings-content{max-width:820px;margin:auto}.blessings-summary{color:#82927a;margin:0 0 18px;padding:0 6px;font-size:15.5px}#blessing-list{gap:20px;display:grid}.blessing-section{background:#ffffffcf;border:1px solid #dbe5d6;border-radius:22px;gap:14px;padding:22px;display:grid}.blessing-section-head{border-bottom:1px solid #e6eee0;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;display:flex}.blessing-section-title{gap:6px;display:grid}.blessing-session{color:#788b72;letter-spacing:.8px;font-size:13.5px}.blessing-section-title h2{color:#234e42;margin:0;font-size:22px;font-weight:600;line-height:1.4}.blessing-count-tag{white-space:nowrap;border-radius:10px;padding:6px 12px;font-size:14px;font-weight:500}.blessing-section-rows{gap:12px;display:grid}.blessing-row{background:#f8fbf5;border:1px solid #e1eadb;border-radius:16px;align-items:center;gap:18px;padding:18px 20px;display:flex}.blessing-icon{color:#b79845;background:#f6efd9;border-radius:15px;flex-shrink:0;place-items:center;width:52px;height:52px;font-size:34px;display:grid}.blessing-icon.flower{color:#be8c65;background:#f8eade}.blessing-icon.tree{color:#719b73;background:#e8f0e3}.blessing-row p{margin:0;font-size:18.5px;line-height:1.7}.blessing-row strong{font-weight:600}.blessing-quantity{color:#587a48;font-variant-numeric:tabular-nums}.blessing-empty{color:#8b9a81;text-align:center;margin:0;padding:14px 4px;font-size:16px}.entry-screen{flex-direction:column;justify-content:center;width:min(500px,100% - 40px);min-height:100svh;margin:0 auto;padding:48px 0 64px;display:flex}.entry-screen h1{letter-spacing:2px;margin:18px 0 10px;font-size:48px}.entry-lead{color:#72856e;margin:0 0 28px;font-size:18px;line-height:1.8}.entry-card,.entry-child{background:#ffffffeb;border:1px solid #e0e8da;border-radius:24px;padding:26px}.entry-card{gap:14px;display:grid}.entry-card label{color:#68805f;font-size:15.5px}.entry-card input{color:#234e42;letter-spacing:8px;text-transform:uppercase;background:#fff;border:1px solid #d6e2d0;border-radius:14px;width:100%;padding:20px 16px;font:600 36px/1 DM Sans,Noto Sans TC,sans-serif}.entry-card button,.entry-actions button{color:#fff;background:#2f604b;border:0;border-radius:15px;min-height:62px;font-size:18px;font-weight:500}.entry-error{color:#8d5a42;min-height:26px;margin:0;font-size:17px}.entry-children{gap:14px;display:grid}.entry-child h2{margin:0 0 12px;font-size:28px;font-weight:600}.entry-piece{border-top:1px solid #edf0e9;gap:6px;margin:14px 0 0;padding-top:14px;display:grid}.entry-piece span{color:#7b8d76;font-size:15.5px}.entry-piece strong{font-size:21px;font-weight:600}.entry-actions{gap:12px;margin-top:20px;display:grid}.entry-secondary{color:#2f604b!important;background:#edf4e7!important}@media (width<=600px){.entry-screen h1{font-size:38px}.entry-card input{letter-spacing:6px;font-size:31px}}@media (width>=1500px){.intro{top:10%}.performance-card{top:13%}}@media (width<=1000px){.intro{top:28px}.world-label{top:190px}.performance-card{top:auto}#program-page,#profile-page{top:max(24px,env(safe-area-inset-top));padding:4px 0 12px;bottom:108px;left:16px;right:16px}.bottom-nav{width:calc(100% - 32px)}.bottom-nav button{gap:9px;font-size:15.5px}.bottom-nav button>span{font-size:23px}.blessing-section{border-radius:18px;padding:18px 16px}.blessing-section-title h2{font-size:19.5px}.blessing-row{gap:14px;padding:15px 16px}.blessing-row p{font-size:17.5px}footer{bottom:1px}footer a{font-size:12px}}@media (width<=600px) and (height<=740px) and (orientation:portrait){.intro{top:24px}.world-label{top:100px}}@media (width<=1000px) and (height<=550px) and (orientation:landscape){.performance-card,.world-label{top:24px}#app[data-page=program] .bottom-nav,#app[data-page=profile] .bottom-nav{width:360px;left:50%}}.performance-card .student-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.performance-card .piece h3{overflow-wrap:anywhere;font-size:21px}.performance-card .piece p{overflow-wrap:anywhere}.family-summary{color:#64836c;font-size:17px;line-height:1.7}.session-heading{letter-spacing:2px;margin:24px 0 12px;font-size:23px}.entry-piece span:last-child{line-height:1.8}.entry-screen .entry-lead{overflow-wrap:anywhere}@media (width<=1000px){.performance-card .piece p{display:none}.performance-card .piece h3{font-size:18px}.performance-card .card-top{margin-bottom:9px;position:static}}@media (width<=600px) and (height<=740px) and (orientation:portrait){.performance-card .student-note{display:none}}@media (height<=540px) and (orientation:landscape){.performance-card .student-note{display:none}}.entry-student-heading{align-items:center;gap:16px;display:flex}.entry-student-heading h2{margin:0}.entry-portrait{color:#638367;background:radial-gradient(circle at 40% 25%,#fff9e8,#dfead8);border:1px solid #dce6d5;border-radius:24px;flex:0 0 100px;place-items:center;width:100px;height:100px;font-size:32px;display:grid;overflow:hidden}.entry-portrait img{object-fit:contain;width:100%;height:100%;display:block}@media (width<=420px){.entry-portrait{flex-basis:84px;width:84px;height:84px}.entry-student-heading h2{font-size:25px}}.connection-status{top:max(8px,env(safe-area-inset-top));color:#456b53;z-index:5;text-align:center;pointer-events:none;background:#ffffffdf;border:1px solid #dce6d5;border-radius:16px;max-width:90%;margin:0;padding:4px 11px;font-size:12px;position:absolute;right:16px}#app[data-theme=space] .connection-status{color:#e0e7fa;background:#28324bcc;border-color:#657596}.intro{max-width:calc(100% - 46px)}#world-description{max-width:24em}@media (width>=1001px){#world-description{max-width:12em}}.stage-intro{top:max(28px,env(safe-area-inset-top));z-index:2;pointer-events:none;color:#234e42;position:absolute;left:24px;right:24px}#app:has(#connection-status:not([hidden])) .stage-intro{top:max(44px,calc(env(safe-area-inset-top) + 36px))}#app[data-waiting=true] .stage-intro{flex-direction:column;display:flex}#app[data-waiting=true] .stage-intro h1{order:-1;margin:0 0 8px}#app[data-waiting=true] .stage-kicker{margin-bottom:6px}#app[data-waiting=false] .stage-kicker>span:first-child,#compact-number:empty{display:none}.stage-kicker{letter-spacing:.8px;color:#76836b;justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.stage-kicker>span:last-child{white-space:nowrap;align-items:center;gap:10px;display:flex}#compact-state{color:#607852;letter-spacing:0;background:#f9fbf080;border:1px solid #cbd4bd;border-radius:8px;padding:5px 9px;font-size:12px}#compact-number{font-variant-numeric:tabular-nums;letter-spacing:1px;font-size:12px}.stage-intro h1{letter-spacing:1px;margin:11px 0 9px;font-size:36px;font-weight:600;line-height:1.35}.stage-performer{flex-wrap:wrap;align-items:center;gap:12px;line-height:1.6;display:flex}.stage-performer strong{font-size:21px;font-weight:600}.stage-performer strong:empty{display:none}.stage-performer>span{color:#75816c;font-size:14.5px}#app[data-stage-layout=compact] .intro,#app[data-stage-layout=compact] .world-label{display:none}#app[data-stage-layout=compact] .performance-card{border-radius:20px;width:min(520px,100% - 32px);padding:14px 16px;inset:auto auto 110px 50%;transform:translate(-50%)}#app[data-stage-layout=compact] .performance-card .card-top,#app[data-stage-layout=compact] .performer,#app[data-stage-layout=compact] .piece,#app[data-stage-layout=compact] .student-note,#app[data-stage-layout=compact] .action-heading,#app[data-stage-layout=compact] #feedback{display:none}#app[data-stage-layout=compact] .return-live{color:#71836b;background:0 0;border:0;min-height:32px;margin:10px 0 0;padding:5px;font-size:13px;font-weight:500}#app[data-stage-layout=compact] .gift-options{margin-top:0}@media (width>=1001px){.stage-intro{top:34px;left:44px;right:44px}#app:has(#connection-status:not([hidden])) .stage-intro{top:46px}.stage-intro h1{font-size:44px}.stage-kicker{max-width:560px}.stage-performer strong{font-size:22px}}@media (width<=600px) and (height<=740px) and (orientation:portrait){.stage-intro{top:max(18px,env(safe-area-inset-top));left:20px;right:20px}#app:has(#connection-status:not([hidden])) .stage-intro{top:max(40px,calc(env(safe-area-inset-top) + 34px))}.stage-intro h1{margin:8px 0 6px;font-size:31px}#app[data-stage-layout=compact] .performance-card{padding:12px 14px;bottom:92px}}@media (width<=1000px) and (height<=550px) and (orientation:landscape){.stage-intro{max-width:480px;top:16px;left:22px;right:22px}#app:has(#connection-status:not([hidden])) .stage-intro{top:40px}.stage-intro h1{margin:7px 0 4px;font-size:30px}.stage-kicker{max-width:450px}#app[data-stage-layout=compact] .performance-card{width:380px;bottom:78px}#app[data-stage-layout=compact] .bottom-nav{width:380px;max-width:calc(100% - 32px);left:50%}}.stage-intro h1{overflow-wrap:anywhere;max-width:780px}#app[data-theme=space] .stage-intro{color:#eeeefa}#app[data-theme=space] .stage-kicker,#app[data-theme=space] .stage-performer>span{color:#bac5e0}#app[data-theme=space] #compact-state{color:#e0e7fa;background:#28324bcc;border-color:#657596}#app[data-stage-layout=compact] #parent-actions{margin-bottom:0}#app[data-stage-layout=compact] .gift-options button{flex-direction:row;justify-content:center;gap:10px;min-height:60px;padding:10px 6px;font-size:14.5px;font-weight:500}#app[data-stage-layout=compact] .performance-card:has(#waiting-content[hidden]):has(#parent-actions[hidden]):has(#return-live[hidden]):has(#preview-upgrade[hidden]){display:none}@media (width<=600px){.stage-intro h1{font-size:clamp(26px,7.8vw,36px)}}.scene-upgrade-status{color:#79835e;letter-spacing:.3px;margin:8px 0 0;font-size:13px;line-height:1.6;transition:opacity .45s}.scene-upgrade-status.fade-out{opacity:0}#app[data-waiting=true] .scene-upgrade-status{color:#365d45;background:#fffffff0;border:1px solid #dce6d5;border-radius:12px;margin-top:6px;padding:6px 12px;font-size:13.5px;font-weight:500;position:absolute;top:100%;left:0;box-shadow:0 4px 14px #24472c12}#app[data-theme=space] .scene-upgrade-status{color:#f0d79c}.preview-upgrade{color:#775921;background:#fff5da;border:1px solid #dbc58b;border-radius:13px;width:100%;min-height:55px;margin-top:10px;padding:12px;font-size:15.5px;font-weight:500}#app[data-stage-layout=compact] .performance-card:has(#parent-actions[hidden]) .preview-upgrade{margin-top:0}html,body{touch-action:pan-y}@media (width<=1000px),(pointer:coarse){input,select,textarea,.blessing-picker select{font-size:18px}}.discovery-glint{z-index:3;touch-action:manipulation;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.discovery-glint>span{color:#fffbed;text-shadow:0 0 3px #c58f35,0 0 9px #e6b453;filter:drop-shadow(0 0 5px #ffdc86);pointer-events:none;place-items:center;width:16px;height:16px;font-size:16px;line-height:1;display:grid}.discovery-glint:before{content:"";pointer-events:none;background:radial-gradient(circle,#fff9cfbb,#f8d57833 55%,#0000 72%);border-radius:50%;width:22px;height:22px;position:absolute;box-shadow:0 0 14px #efc86b66}.discovery-glint:hover:before,.discovery-glint:focus-visible:before{background:#ffe7a766;width:32px;height:32px}.discovery-glint:focus-visible{outline-offset:0;outline:2px solid #c39648}.discovery-glint[hidden]{display:none}@media (prefers-reduced-motion:no-preference){.discovery-glint>span{animation:2.4s ease-in-out infinite discovery-glow}.discovery-glint[data-discovery="1"]>span{animation-delay:.6s}.discovery-glint[data-discovery="2"]>span{animation-delay:1.2s}@keyframes discovery-glow{0%,to{opacity:.65;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}}.discovery-glint.is-active>span{opacity:.18;filter:none;text-shadow:none;animation:none}.discovery-glint.is-active:before{opacity:.1}.discovery-hint{color:#66795d;letter-spacing:.2px;pointer-events:none;margin:6px 0 0;font-size:12px;font-weight:400;line-height:1.6}.discovery-hint>span{color:#aa8545;margin-right:3px}#app[data-theme=space] .discovery-hint{color:#c6cee0}#app[data-theme=space] .discovery-hint>span{color:#e6c98b}.profile-content{max-width:820px;margin:0 auto}.profile-lead{color:#667b60;margin:0 0 12px;font-size:15px;line-height:1.7}#profile-students{gap:24px;display:grid}.profile-student{background:#ffffffdf;border:1px solid #dbe5d6;border-radius:24px;padding:24px}.profile-student-heading{align-items:center;gap:18px;margin-bottom:20px;display:flex}.profile-student-title h2{margin:0 0 6px;font-size:25px;line-height:1.4}.profile-student-title p{color:#7b8972;margin:0 0 6px;font-size:14px}.profile-student-total{color:#648259;font-size:13px}.profile-songs{gap:12px;display:grid}.profile-song{text-align:left;color:#284f40;background:#f9fbf5;border:1px solid #dce6d5;border-radius:16px;gap:8px;width:100%;padding:18px;display:grid}.profile-song:hover{background:#f0f6e9;border-color:#95b197}.profile-song-title{overflow-wrap:anywhere;font-size:20px;font-weight:600;line-height:1.5}.profile-song-composer{color:#809077;font-size:13px;line-height:1.6}.profile-song-note{color:#71816b;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.8;display:-webkit-box;overflow:hidden}.profile-song-footer{border-top:1px solid #e3eadc;justify-content:space-between;align-items:center;gap:12px;padding-top:9px;font-size:13px;display:flex}.profile-song-count{color:#7e8d70}.profile-song-link{color:#35694e;font-weight:600}.profile-back{background:#ffffffcf;border:1px solid #d7e2d0;border-radius:12px;margin-bottom:22px;padding:12px 16px;font-size:15px}.profile-detail-student{align-items:center;gap:16px;display:flex}.profile-detail-student h2{margin:0 0 8px;font-size:25px}.profile-detail-meta{line-height:1.7}.profile-performance{background:#ffffffdf;border:1px solid #dbe5d6;border-radius:22px;padding:24px}.profile-performance>h1{letter-spacing:.4px;overflow-wrap:anywhere;margin:25px 0 8px;font-size:29px;line-height:1.5}.profile-composer{color:#7b8b72;font-size:14px;line-height:1.7}.profile-note{color:#6c7d63;background:#f5f7ed;border-radius:12px;padding:16px;font-size:16px;line-height:1.9}.profile-gifts-heading{border-top:1px solid #e0e8d8;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 16px;padding-top:18px;display:flex}.profile-gifts-heading h2{margin:0;font-size:20px}.profile-status{color:#967244;max-width:820px;margin:0 auto 16px;font-size:14px}.profile-nav-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:27px;height:27px}@media (width<=600px){.profile-student{padding:18px 16px}.profile-student-heading{gap:14px}.profile-student-title h2{font-size:23px}.profile-song{padding:15px 13px}.profile-song-title{font-size:19px}.profile-performance{padding:20px 16px}.profile-performance>h1{font-size:25px}.profile-detail-student h2{font-size:23px}.profile-note{font-size:15px}.profile-gifts-heading{flex-wrap:wrap}.bottom-nav button:has(.profile-nav-icon){gap:8px}}#profile-detail,#profile-home>.program-heading{max-width:820px;margin-left:auto;margin-right:auto}
