
/* App interaction layer */
button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b58a27;outline-offset:3px}[hidden]{display:none!important}.button{border-radius:16px;box-shadow:0 4px 0 #d7b052;position:relative;overflow:hidden}.button:active{transform:translateY(3px) scale(.98);box-shadow:0 1px 0 #d7b052}.nav{gap:14px}.nav .brand>span{box-shadow:0 4px 12px #c2a25833}.app-tools{display:flex;gap:8px;margin-left:auto}.icon-button{border:1px solid #e5d5a6;background:#fff9e9;color:#81642b;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:#b78a25;width:100%;transform:scaleX(0);transform-origin:left;z-index:60}.app-badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;padding:7px 13px;border:1px solid #e4d3a5;border-radius:30px;background:#fff6d8;margin-bottom:20px}.app-badge i{width:7px;height:7px;background:#a17b23;border-radius:50%;box-shadow:0 0 0 5px #e7cd803b}.hero-art{animation:float-in 1s ease both}.art-note{animation:note-float 5s ease-in-out infinite}.hero-copy h1{animation:float-in .8s ease both}.hero-copy .hero-lead{animation:float-in 1s .1s both}.facts{border:0;gap:12px}.facts>div{border:1px solid #e7d8af!important;background:#fff6dc;border-radius:20px;box-shadow:0 7px 20px #5b431608}.app-tabs{display:flex;gap:6px;padding:6px;background:#eee5cc;border-radius:18px;margin:25px 0}.app-tabs button{flex:1;padding:13px 10px;border:0;border-radius:13px;background:none;color:#8a754b;font-size:14px;transition:background .25s,box-shadow .25s,transform .25s}.app-tabs button[aria-selected=true]{background:#fffdf4;color:#59421a;box-shadow:0 3px 10px #6e55201a;font-weight:700}.app-tabs button:active{transform:scale(.97)}.curriculum .lesson{padding:30px;border:1px solid #e3cfa0;border-radius:24px;background:linear-gradient(150deg,#fffdf6,#fff4d4);box-shadow:0 12px 30px #69501c0b}.curriculum .lesson.tab-enter{animation:card-in .4s ease both}.lesson details{background:#fffdf5;border-radius:14px;padding:0 18px}.lesson-index{color:#c09b44}.lesson-body p{padding-bottom:9px}.lesson-body p:nth-child(5n){color:#9b7424;font-weight:600}.lesson-pager{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font-size:12px;color:#8b7446}.lesson-pager button{border:1px solid #ddca9c;background:#fff5da;border-radius:12px;padding:10px 16px;color:#6c501f}.mix-controls{display:flex;gap:8px;margin-top:18px}.mix-controls button{flex:1;border:1px solid #dec991;border-radius:12px;background:#fff9e9;padding:9px 5px;color:#856329;font-size:12px}.mix-controls button[aria-pressed=true]{background:#e9c56a;box-shadow:0 3px 0 #c6a146}.mix-explainer{font-size:13px;line-height:1.8;margin-top:15px;color:#7a6340}.app-checklist{margin-top:30px;background:#fff7df;padding:24px;border:1px solid #e6d19b;border-radius:24px}.check-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.check-title h3{font-size:17px}.check-title span{font-size:12px;color:#98752a}.app-checklist label{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #eadcb9;font-size:14px}.app-checklist input{accent-color:#b18729;width:19px;height:19px}.check-meter{height:6px;background:#ecdfbd;border-radius:20px;margin:18px 0 10px;overflow:hidden}.check-meter span{display:block;height:100%;background:#c5a048;transition:width .35s}.app-checklist .micro{margin-top:13px}.faq details{border:1px solid #e4d5b1;border-radius:16px;background:#fffdf5;margin-bottom:10px;padding:0 20px;transition:box-shadow .2s}.faq details[open]{box-shadow:0 8px 20px #7860260b}.faq details[open]>p{animation:card-in .3s}.plan-items article,.cases article{border:1px solid #e0cfa7;padding:25px;border-radius:22px;background:#fffcf3}.plan-items article+article{margin-top:12px}.price-card{border-radius:26px;position:sticky;top:110px}.steps article{transition:transform .25s}.steps article:hover{transform:translateY(-5px)}.reveal-item{opacity:1}.motion-on .reveal-item{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.motion-on .reveal-item.is-visible{opacity:1;transform:none}.app-tabbar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;background:#fffaf0ed;backdrop-filter:blur(20px);padding:7px;border:1px solid #e0cc99;border-radius:26px;box-shadow:0 9px 35px #5b451329;z-index:35;width:min(560px,calc(100% - 24px))}.app-tabbar a,.app-tabbar button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:none;padding:8px 5px;border-radius:19px;color:#927849;font-size:10px;line-height:1.4;transition:background .2s,color .2s}.app-tabbar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65}.app-tabbar a[aria-current=location]{background:#f2e5bd;color:#735317}.app-tabbar button{background:#edc86b;color:#5d4216}.mobile-dock{display:none!important}footer{padding-bottom:120px!important}.payment-sheet{border:1px solid #e1c98b;border-radius:28px;padding:0;background:#fffbf0;color:#493817;max-width:560px;width:calc(100% - 24px);max-height:88dvh;box-shadow:0 25px 100px #33220044}.payment-sheet::backdrop{background:#302a1a77;backdrop-filter:blur(5px)}.payment-sheet[open]{animation:sheet-in .35s cubic-bezier(.2,.8,.2,1)}.sheet-head{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;padding:20px 24px;background:#fffbf4f5;border-bottom:1px solid #ebdcb7;z-index:1}.sheet-head h2{font:600 21px 'Noto Sans TC'}.sheet-body{padding:23px}.sheet-offer{background:#f3e5bf;border-radius:20px;padding:20px;margin-bottom:20px}.sheet-offer strong{display:block;font:40px Georgia;margin-top:8px}.sheet-offer small{font-size:11px}.sheet-body>p{font-size:13px;color:#88704a}.checkout-form{margin-top:20px}.checkout-form label{display:block;font-size:12px;margin:12px 0}.checkout-form input,.checkout-form select{display:block;width:100%;padding:12px;border:1px solid #dfcea7;border-radius:10px;background:#fffef8;color:#493817;font-size:16px;margin-top:6px}.checkout-form .field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkout-form .consent{display:flex;gap:10px;align-items:start}.checkout-form .consent input{width:18px;height:18px;margin:4px 0;flex:none}.checkout-form .button{width:100%;margin:14px 0}.checkout-form .button:disabled{opacity:.45;cursor:wait}.sheet-line{display:flex;margin-top:18px;justify-content:center;font-size:13px;color:#866222;text-decoration:underline}.status-message{font-size:13px;line-height:1.8;padding:14px;border-radius:12px;background:#f6edce;margin:15px 0}.status-message:empty{display:none}.app-toast{position:fixed;bottom:110px;left:50%;transform:translateX(-50%);background:#4f4027;color:#fff6de;padding:12px 22px;border-radius:30px;box-shadow:0 5px 20px #0002;z-index:70;font-size:12px;max-width:85%;text-align:center}.motion-off .art-note,.motion-off .hero-art,.motion-off .hero-copy *,.motion-off .tab-enter,.motion-off .payment-sheet[open],.motion-off .faq details[open]>p{animation:none!important}.motion-off *{scroll-behavior:auto!important}.motion-off .reveal-item{opacity:1;transform:none}.motion-off .check-meter span{transition:none}@keyframes float-in{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes note-float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-8px) rotate(-3deg)}}@keyframes card-in{from{opacity:.3;transform:translateX(15px)}to{opacity:1;transform:none}}@keyframes sheet-in{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:none}}@media(max-width:767px){.nav>.button{display:none}.nav{height:65px}.app-tools{margin-left:auto}.hero{padding-top:25px}.hero .eyebrow{display:none}.hero .course-tag{font-size:12px}.hero h1{font-size:30px}.hero-art{margin-top:30px}.facts{display:grid;grid-template-columns:repeat(3,1fr);padding-top:8px;padding-bottom:15px;gap:8px}.facts>div{display:block;padding:15px 9px;text-align:center;border-radius:17px}.facts b{font-size:31px;width:auto;display:block}.facts span{font-size:10px;display:block}.facts small{display:none}.section{padding-top:48px;padding-bottom:48px}.app-tabs button{font-size:12px;padding:12px 4px}.curriculum .lesson{display:block;padding:22px 18px}.lesson h3{font-size:19px}.lesson details{padding:0 12px}.lesson summary{font-size:12px}.lesson-pager button{padding:9px 13px}.mix{padding:20px;border-radius:22px}.app-checklist{padding:20px}.cases{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 18px}.cases article{flex:0 0 87%;scroll-snap-align:center;padding:23px}.cases strong{font-size:53px}.app-tabbar{bottom:max(10px,env(safe-area-inset-bottom));border-radius:25px;padding:6px;width:calc(100% - 20px)}.app-tabbar a,.app-tabbar button{padding:8px 3px;font-size:9px}.payment-sheet{margin:auto 0 0;width:100%;max-width:none;max-height:92dvh;border-radius:26px 26px 0 0;padding-bottom:env(safe-area-inset-bottom)}.checkout-form .field-pair{grid-template-columns:1fr;gap:0}.price-card{position:static}.section-heading{margin-bottom:23px}.plan-items article{padding:23px 18px}.facts.wrap{padding-left:20px;padding-right:20px}.hero .app-badge{font-size:10px}.app-tabbar svg{width:20px;height:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-on .reveal-item{opacity:1;transform:none}}
/* Animated presentation behind the stationary instructor and audience. */
.mentor-live-photo{position:relative;overflow:hidden;border-radius:8px;isolation:isolate}.mentor-live-photo>img{display:block;width:100%;height:auto}.mentor-screen-motion{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.mentor-running-text{animation:mentor-screen-scroll 26s linear infinite;animation-play-state:paused}.motion-on .mentor-running-text{animation-play-state:running}.motion-off .mentor-running-text{animation-play-state:paused}@keyframes mentor-screen-scroll{from{transform:translateY(0)}to{transform:translateY(-704px)}}@media(prefers-reduced-motion:reduce){.mentor-running-text{animation:none!important}}
