.visible{visibility:visible}.mx-auto{margin-left:auto;margin-right:auto}.grid{display:grid}.hidden{display:none}.w-full{width:100%}.max-w-none{max-width:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.px-4{padding-left:1rem;padding-right:1rem}.pb-12{padding-bottom:3rem}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--brand-teal:#2eb6c4;--brand-blue:#2e63a5;--brand-purple:#6e7ec4;--bg-start:#f7fafc;--bg-end:#eef8f6;--card:#fff;--ink:#1f2a44;--muted:#5b6478;--line:#e3eaf0;--font-sans:var(--font-noto-tc),var(--font-poppins),"Noto Sans TC","Segoe UI",sans-serif}html[lang=zh-CN]{--font-sans:var(--font-noto-sc),var(--font-poppins),"Noto Sans SC","Segoe UI",sans-serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{font-family:var(--font-sans);font-weight:400;font-size:16px;line-height:1.65;color:var(--ink);background:linear-gradient(180deg,var(--bg-start) 0,var(--bg-end) 100%)}h1,h2,h3{font-weight:700;line-height:1.3;letter-spacing:-.02em}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.shell{min-height:100dvh}.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0 8px;position:sticky;top:0;z-index:20;background:transparent}.brand-logo{display:block;height:36px;width:auto}@media (min-width:1024px){.brand-logo{height:44px}}.lang{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--card)}.lang button{border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:500;padding:6px 10px;border-radius:999px}.lang button.active{background:var(--brand-blue);color:#fff}.hero{padding:18px 0 8px}.hero h1{font-size:28px;margin:0 0 10px}.hero p{margin:0;color:var(--muted);font-size:15px}.section{margin-top:28px}.section h2{font-size:18px;color:var(--ink);margin:0 0 6px}.hint,.section .hint{margin:0 0 14px;color:var(--muted);font-size:14px}.mood-need{font-weight:500;color:var(--ink);margin:0 0 10px}.mood-grid{gap:10px}.mood{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:16px;padding:16px 12px;min-height:64px;font-size:16px;font-weight:500}.mood:active{transform:scale(.98)}.breath-list{display:flex;flex-direction:column;gap:12px}.breath-card{border-radius:18px;padding:16px;border:1px solid var(--line);background:var(--card)}.breath-card h3{margin:0 0 6px;font-size:18px}.breath-card p{margin:0 0 12px;color:var(--muted);font-size:14px}.pills{display:flex;gap:8px;flex-wrap:wrap}.btn-primary,.ghost,.gold,.pill{border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 14px;font-size:13px;font-weight:500}.gold{background:var(--brand-blue);color:#fff;border-color:transparent}.pill.active{background:color-mix(in srgb,var(--brand-blue) 12%,#fff);color:var(--brand-blue);border-color:color-mix(in srgb,var(--brand-blue) 55%,transparent);font-weight:600}.btn-primary{background:linear-gradient(135deg,var(--brand-teal),var(--brand-blue));color:#fff;border-color:transparent;padding:9px 20px;font-weight:600;box-shadow:0 4px 12px rgba(46,99,165,.28)}.banner-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#d9e1e8;margin-bottom:16px}.banner-video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.stage{margin-top:0;min-height:100dvh;display:flex;flex-direction:column}.player{position:relative;overflow:hidden;border-radius:16px;height:320px;border:1px solid var(--line);background:#f0f5f8;touch-action:pan-y}.clip{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.figure{width:160px;height:240px;position:relative}.arm-l,.arm-r,.figure .head,.figure .torso,.leg-l,.leg-r{position:absolute;background:linear-gradient(180deg,var(--brand-teal),var(--brand-blue));border-radius:8px}.figure .head{width:28px;height:28px;left:66px;top:12px;border-radius:50%}.figure .torso{width:12px;height:88px;left:74px;top:42px}.anim-neck .head{animation:nod 10s ease-in-out infinite}.anim-shoulders .arm-l,.anim-shoulders .arm-r{animation:roll 10s ease-in-out infinite}.anim-side{animation:lean 10s ease-in-out infinite}.anim-chest .arm-l,.anim-chest .arm-r{animation:open 10s ease-in-out infinite}.anim-spine .torso{animation:cow 10s ease-in-out infinite;transform-origin:top center}.anim-fold{animation:fold 10s ease-in-out infinite;transform-origin:80px 140px}.anim-hips{animation:sway 10s ease-in-out infinite}.anim-twist{animation:twist 10s ease-in-out infinite}.anim-ankles .leg-l{animation:circle 10s linear infinite;transform-origin:80px 168px}.anim-reach{animation:reach 10s ease-in-out infinite;transform-origin:center bottom}.arm-l{left:48px;transform:rotate(18deg)}.arm-l,.arm-r{width:10px;height:70px;top:48px}.arm-r{left:102px;transform:rotate(-18deg)}.leg-l{left:62px;transform:rotate(8deg)}.leg-l,.leg-r{width:10px;height:84px;top:126px}.leg-r{left:88px;transform:rotate(-8deg)}@keyframes nod{0%,to{transform:translateX(0) rotate(0)}25%{transform:translateX(10px) rotate(16deg)}75%{transform:translateX(-10px) rotate(-16deg)}}@keyframes roll{0%,to{transform:rotate(18deg) translateY(0)}50%{transform:rotate(-22deg) translateY(-8px)}}@keyframes lean{0%,to{transform:rotate(0)}40%{transform:rotate(-12deg)}80%{transform:rotate(12deg)}}@keyframes open{0%,to{transform:rotate(20deg)}50%{transform:rotate(-50deg)}}@keyframes cow{0%,to{transform:scaleY(1) rotate(0)}50%{transform:scaleY(.92) rotate(-8deg)}}@keyframes fold{0%,to{transform:rotate(0)}50%{transform:rotate(48deg)}}@keyframes sway{0%,to{transform:translateX(0)}50%{transform:translateX(8px)}}@keyframes twist{0%,to{transform:rotateY(0)}50%{transform:rotateY(35deg)}}@keyframes circle{0%{transform:rotate(8deg)}50%{transform:rotate(-18deg) translateX(6px)}to{transform:rotate(8deg)}}@keyframes reach{0%,to{transform:scale(1)}50%{transform:scale(1.08) translateY(-8px)}}.meta{margin-top:16px}.meta h3{font-size:22px;margin:0 0 8px}.meta p{margin:0 0 10px;color:var(--muted);font-size:14px}.label{color:var(--brand-blue);font-size:12px;font-weight:500;letter-spacing:.08em}.timer{margin-top:18px;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.breathe-screen{position:relative;height:100dvh;max-width:560px;margin:0 auto;overflow:hidden;padding:env(safe-area-inset-top,0) max(16px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0) max(16px,env(safe-area-inset-left,0px));background:linear-gradient(180deg,#f7fafc,#eef8f6);transition:background 1.1s ease}.breathe-screen[data-phase=inhale]{background:linear-gradient(180deg,#fbfdfe,#f3fbf8)}.breathe-screen[data-phase=holdOut],.breathe-screen[data-phase=hold],.breathe-screen[data-phase=prepare]{background:linear-gradient(180deg,#f7fafc,#eef8f6)}.breathe-screen[data-phase=exhale]{background:linear-gradient(180deg,#eef2f6,#e4eeea)}.flow-chrome{width:100%;margin:8px 0 12px}.breathe-chrome,.flow-chrome{display:flex;align-items:center;justify-content:space-between}.breathe-chrome{position:absolute;top:env(safe-area-inset-top,0);left:0;right:0;z-index:2;padding:10px 16px 0}.breathe-chrome-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:0;border:0;background:transparent;color:color-mix(in srgb,var(--muted) 62%,transparent);font-size:12px;font-weight:500;letter-spacing:.02em}.orb-anchor{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;width:min(100%,420px);padding:0 12px}.orb-stack{position:relative;width:min(78vw,340px);height:min(78vw,340px);display:grid;place-items:center}.orb-ripple{position:absolute;inset:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--orb-color) 28%,transparent);animation:ripple 3.6s ease-out infinite;pointer-events:none}.orb-ripple:nth-child(2){animation-delay:1.2s;transform:scale(.88)}.orb-ripple:nth-child(3){animation-delay:2.4s;transform:scale(.76)}.orb{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--orb-color) 58%,#fff) 0,var(--orb-color) 78%);box-shadow:0 0 42px color-mix(in srgb,var(--orb-color) 42%,transparent);display:grid;place-items:center;transform-origin:center}.orb.pulse{animation:glowpulse 1.6s ease-in-out infinite}.orb-count{font-family:var(--font-poppins),sans-serif;font-size:42px;font-weight:600;color:#fff;text-shadow:0 1px 8px rgba(31,42,68,.22)}.orb-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none}.orb-ring circle{fill:none;stroke-width:2.4}.phase-label{margin-top:20px;text-align:center;font-size:32px;font-weight:600;line-height:1.3;color:var(--ink);max-width:90vw}.session-time{position:absolute;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom, 0px));text-align:center;color:color-mix(in srgb,var(--muted) 78%,transparent);font-size:12px;font-weight:400}.breathe-done{height:100%;display:grid;place-items:center;text-align:center}.breathe-done h2{font-size:32px;font-weight:600}@keyframes ripple{0%{opacity:.45;transform:scale(.72)}to{opacity:0;transform:scale(1.12)}}@keyframes glowpulse{0%,to{box-shadow:0 0 28px color-mix(in srgb,var(--orb-color) 35%,transparent)}50%{box-shadow:0 0 48px color-mix(in srgb,var(--orb-color) 60%,transparent)}}@media (prefers-reduced-motion:reduce){.orb-ripple{opacity:.22}.orb-ripple,.orb.pulse{animation:none}.breathe-screen{transition:background .4s ease}}.done{text-align:center;padding:64px 12px}.done h2{font-size:32px}.admin-card{margin-top:40px;padding:24px;border-radius:20px;border:1px solid var(--line);background:var(--card)}.admin-card input{width:100%;margin:12px 0 16px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.stat{padding:14px;border-radius:14px;background:var(--card);border:1px solid var(--line)}.stat b{display:block;font-size:22px;color:var(--brand-blue)}.stat span{font-size:12px;color:var(--muted)}.bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin:6px 0 12px}.bar>i{display:block;height:100%;background:var(--brand-blue)}.row{display:flex;justify-content:space-between}.err,.row{font-size:13px}.err{color:#c04545}@media (min-width:1024px){.hero h1{font-size:40px}}.player-portrait{height:auto;aspect-ratio:9/16;width:min(100%,calc(min(62dvh, 640px) * 9 / 16));margin:0 auto}.stretch-video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;background:#f0f5f8}.stretch-preload{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.stretch-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#1b2b3a;background:hsla(0,0%,100%,.72);border:1px solid var(--line);backdrop-filter:blur(4px);cursor:pointer}.stretch-nav:hover{background:hsla(0,0%,100%,.92)}.stretch-nav.prev{left:8px}.stretch-nav.next{right:8px}@property --orb-c{syntax:"<color>";inherits:true;initial-value:#ffd37c}.breathe-screen,.breathe-screen[data-phase=done],.breathe-screen[data-phase=exhale],.breathe-screen[data-phase=holdOut],.breathe-screen[data-phase=hold],.breathe-screen[data-phase=inhale],.breathe-screen[data-phase=prepare]{max-width:none;color:var(--ink);background:linear-gradient(180deg,#82c8ef,#b9e4f7 52%,#eaf8f6)}.breathe-screen[data-scene=ocean]{background:linear-gradient(180deg,#d6f2f5,#93dbe3 48%,#55bacd)}.breathe-screen[data-scene=meadow]{background:linear-gradient(180deg,#cdeaf6,#ecf7e4 52%,#c6e8b8)}.breathe-screen:after,.breathe-screen:before{content:"";position:absolute;inset:0;pointer-events:none}.breathe-screen:before{background-image:radial-gradient(ellipse 120px 34px at 12% 16%,hsla(0,0%,100%,.9),transparent 72%),radial-gradient(ellipse 160px 40px at 46% 9%,hsla(0,0%,100%,.8),transparent 72%),radial-gradient(ellipse 130px 34px at 80% 22%,hsla(0,0%,100%,.85),transparent 72%),radial-gradient(ellipse 150px 38px at 28% 64%,hsla(0,0%,100%,.55),transparent 72%),radial-gradient(ellipse 120px 30px at 72% 72%,hsla(0,0%,100%,.5),transparent 72%);background-size:820px 100%;background-repeat:repeat-x;animation:cloud-drift 120s linear infinite}.breathe-screen:after{background:radial-gradient(38% 26% at 82% 4%,rgba(255,238,190,.85) 0,transparent 70%),radial-gradient(70% 16% at 25% 102%,hsla(0,0%,100%,.7) 0,transparent 70%),radial-gradient(70% 18% at 80% 104%,hsla(0,0%,100%,.55) 0,transparent 70%)}.breathe-screen[data-scene=ocean]:before{background-image:radial-gradient(ellipse 130px 34px at 14% 14%,hsla(0,0%,100%,.75),transparent 72%),radial-gradient(ellipse 150px 36px at 62% 10%,hsla(0,0%,100%,.65),transparent 72%)}.breathe-screen[data-scene=ocean]:after{background:radial-gradient(38% 22% at 82% 4%,rgba(255,240,200,.8) 0,transparent 70%),radial-gradient(60% 14% at 20% 100%,hsla(0,0%,100%,.55) 0,transparent 70%),radial-gradient(70% 16% at 78% 102%,hsla(0,0%,100%,.45) 0,transparent 70%),radial-gradient(90% 12% at 50% 80%,hsla(0,0%,100%,.22) 0,transparent 70%);inset:0 -5%;animation:wave-sway 9s ease-in-out infinite alternate}.breathe-screen[data-scene=meadow]:after{background:radial-gradient(38% 24% at 20% 4%,rgba(255,240,190,.9) 0,transparent 70%),radial-gradient(80% 20% at 15% 104%,#a9d98f 0,transparent 72%),radial-gradient(85% 22% at 85% 108%,#8fcf7e 0,transparent 72%),radial-gradient(60% 12% at 50% 100%,hsla(0,0%,100%,.4) 0,transparent 70%)}.breathe-chrome{z-index:3}.breathe-chrome-btn{color:rgba(31,42,68,.72)}.breathe-screen .session-time{color:rgba(31,42,68,.6);z-index:2}.breathe-screen .orb-anchor{z-index:2;top:46%}.breathe-screen .phase-label{margin:clamp(20px,4dvh,36px) 0 0;color:var(--ink);font-size:28px;letter-spacing:.06em;text-shadow:0 1px 12px hsla(0,0%,100%,.6)}.breathe-screen .phase-seconds{margin-top:clamp(18px,3.5dvh,32px);min-height:1.2em;color:rgba(31,42,68,.82);font-family:var(--font-poppins),sans-serif;font-size:40px;font-weight:500;line-height:1.2;text-shadow:0 1px 12px hsla(0,0%,100%,.6);font-variant-numeric:tabular-nums}.orb-word{position:absolute;inset:0;display:grid;place-items:center;color:#5a3326;font-size:32px;font-weight:600;letter-spacing:.08em;text-shadow:0 1px 10px hsla(0,0%,100%,.45);pointer-events:none}.breathe-done h2{color:var(--ink)}.orb-scene{position:relative;width:min(70vw,300px,40dvh);aspect-ratio:1;transition:--orb-c .9s ease}.orb-halo{inset:-16%;background:radial-gradient(circle,color-mix(in srgb,var(--orb-c) 60%,transparent) 0,transparent 68%);filter:blur(6px)}.orb-core,.orb-halo{position:absolute;border-radius:50%;will-change:transform}.orb-core{inset:3.5%;background:radial-gradient(circle at 34% 28%,hsla(0,0%,100%,.85) 0,transparent 40%),radial-gradient(circle at 50% 50%,var(--orb-c) 0,color-mix(in srgb,var(--orb-c) 82%,#e0824f) 100%);box-shadow:0 10px 40px color-mix(in srgb,var(--orb-c) 55%,transparent),inset 0 -10px 24px rgba(200,110,60,.16),inset 0 0 20px hsla(0,0%,100%,.35)}@keyframes cloud-drift{0%{background-position-x:0}to{background-position-x:-820px}}@keyframes wave-sway{0%{transform:translateX(-2%)}to{transform:translateX(2%)}}@media (prefers-reduced-motion:reduce){.breathe-screen:before,.breathe-screen[data-scene=ocean]:after{animation:none}}@media (min-width:1024px){.lg\:max-w-6xl{max-width:72rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:items-start{align-items:flex-start}.lg\:gap-10{gap:2.5rem}.lg\:gap-12{gap:3rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/034d78ad42e9620c-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf4,u+1cf7-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b0a}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fe0777f1195381cb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/eafabf029ad39a43-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/db911767852bc875-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf4,u+1cf7-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b0a}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f10b8e9d91f3edcb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8888a3826f4a3af4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/29e7bbdce9332268-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf4,u+1cf7-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b0a}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c3bc380753a8436c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Poppins_618a02;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/0484562807a97172-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Poppins_Fallback_618a02;src:local("Arial");ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.__className_618a02{font-family:__Poppins_618a02,__Poppins_Fallback_618a02;font-style:normal}.__variable_618a02{--font-poppins:"__Poppins_618a02","__Poppins_Fallback_618a02"}