.fs-stage{--blue:var(--color-primary);--orange:var(--color-accent);--orange-ink:var(--color-accent-ink,#df6d0a);--green:#3dbe6b;--dark:#1b2b34;--gray:#6e7e82;--line:var(--color-line);--soft:#f4f9fb;--lblue:#e3f1f9;--lgreen:#e6f7eb;--violet:#7366cc;--red:#eb5454;--ease:cubic-bezier(.65, 0, .35, 1);--pop:cubic-bezier(.34, 1.56, .64, 1);transform-origin:0 0;width:1280px;height:592px;color:var(--dark);position:absolute;top:0;left:0}.fs-wrap{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y;--fade:transparent, #00000014 3%, #0000004d 7%, #0009 11%, #000000d9 15%, #000 18%, #000 82%, #000000d9 85%, #0009 89%, #0000004d 93%, #00000014 97%, transparent;width:100%;-webkit-mask-image:linear-gradient(90deg, var(--fade));-webkit-mask-image:linear-gradient(90deg, var(--fade));mask-image:linear-gradient(90deg, var(--fade));position:relative;overflow:hidden}.fs-wrap.fs-dragging,.fs-wrap.fs-dragging *{cursor:grabbing!important}.fs-arc{border:1.5px solid var(--orange);opacity:.75;border-radius:50%;width:5080px;height:5080px;position:absolute;top:280px;left:-1900px}.fs-caption{text-align:center;z-index:50;width:900px;position:absolute;top:428px;left:190px}.fs-caption h3{color:var(--orange);font-size:36px;font-weight:700;line-height:60px}.fs-caption p{color:#7d7d7d;font-size:18px;font-weight:500;line-height:40px}.fs-caption>*{transition:opacity .25s,transform .25s}.fs-caption.fs-swap>*{opacity:0;transform:translateY(8px)}.fs-dots{z-index:50;justify-content:center;gap:8px;display:flex;position:absolute;top:566px;left:0;right:0}.fs-dots button{cursor:pointer;width:8px;height:8px;transition:width .4s var(--ease), background .4s;background:#d7dfe4;border:0;border-radius:4px;position:relative}.fs-dots button:before{content:"";position:absolute;inset:-10px}.fs-dots button.fs-on{background:var(--orange);width:24px}.fs-card{border:1px solid var(--line);transform-origin:269.5px 2769.5px;width:539px;height:339px;transition:transform 1.1s var(--ease), opacity .9s var(--ease);cursor:pointer;background:#fff;border-radius:20px;position:absolute;top:50.5px;left:370.5px;overflow:hidden;box-shadow:0 16px 40px #334d661f}.fs-card.fs-active{cursor:default}.fs-pad{position:absolute;inset:20px 24px}.fs-hd{justify-content:space-between;align-items:center;display:flex}.fs-ttl{color:var(--blue);font-size:17px;font-weight:700}.fs-sub{color:var(--gray);font-size:12px;font-weight:600}.fs-chip{color:var(--blue);background:var(--lblue);white-space:nowrap;border-radius:12px;padding:4px 10px;font-size:12px;font-weight:700}.fs-av{background:var(--c);color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:11px;font-style:normal;font-weight:700;display:inline-grid}.fs-j-table{position:absolute;top:42px;left:0;right:0}.fs-j-row{border-bottom:1px solid var(--line);z-index:1;grid-template-columns:1fr 58px 58px 58px 58px;align-items:center;height:46px;display:grid;position:relative}.fs-j-row:last-child{border-bottom:0}.fs-j-row.fs-h{height:24px;color:var(--gray);border:0;font-size:12px;font-weight:600}.fs-j-row.fs-h span:not(:first-child){text-align:center}.fs-who{align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.fs-g{border-radius:9px;justify-self:center;place-items:center;width:32px;height:32px;font-size:15px;font-weight:800;display:grid;position:relative}.fs-g5{color:var(--green);background:#3dbe6b24}.fs-g4{color:var(--blue);background:#004f7c1f}.fs-g3{color:var(--orange-ink);background:#ff962929}.fs-gn{color:var(--red);background:#eb545421}.fs-card.fs-active .fs-g{animation:fs-pop .5s var(--d) both var(--pop)}@keyframes fs-pop{0%{opacity:0;transform:scale(0)}}.fs-g.fs-new:after{content:"";border:2px solid var(--green);border-radius:12px;animation:1.6s ease-out infinite fs-ring;position:absolute;inset:-4px}@keyframes fs-ring{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.35)}}.fs-j-hl{background:var(--lblue);opacity:.55;width:58px;animation:fs-colsweep 8s var(--ease) infinite;border-radius:10px;position:absolute;top:24px;bottom:0;left:calc(100% - 232px)}@keyframes fs-colsweep{0%,20%{transform:translate(0)}25%,45%{transform:translate(58px)}50%,70%{transform:translate(116px)}75%,95%{transform:translate(174px)}to{transform:translate(0)}}.fs-kpi{text-align:right;font-size:32px;font-weight:800;line-height:1}.fs-up{color:var(--green);background:var(--lgreen);border-radius:12px;margin-top:6px;padding:4px 10px;font-size:12px;font-weight:700;animation:2s ease-in-out infinite fs-pulse;display:inline-block}@keyframes fs-pulse{50%{transform:scale(1.06)}}.fs-chart{height:160px;position:absolute;top:94px;left:0;right:0}.fs-gridl{background:var(--line);height:1px;position:absolute;left:0;right:0}.fs-bars{justify-content:space-between;align-items:flex-end;display:flex;position:absolute;inset:0}.fs-b{transform-origin:bottom;align-items:flex-end;width:40px;height:100%;display:flex}.fs-card.fs-active .fs-b{animation:fs-grow .7s var(--d) both var(--pop)}@keyframes fs-grow{0%{transform:scaleY(.05)}}.fs-bi{width:100%;height:var(--h);background:var(--blue);opacity:.88;animation:fs-breathe 2.4s ease-in-out var(--d) infinite alternate;border-radius:8px 8px 4px 4px}.fs-b.fs-hot .fs-bi{background:var(--orange);opacity:1}@keyframes fs-breathe{to{height:calc(var(--h) - 12%)}}.fs-trend{position:absolute;inset:0;overflow:visible}.fs-trend path{fill:none;stroke:var(--orange);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;opacity:.9}.fs-card.fs-active .fs-trend path{animation:fs-draw 1.4s .3s both var(--ease)}@keyframes fs-draw{0%{stroke-dashoffset:1px}}.fs-trend circle{fill:#fff;stroke:var(--orange);stroke-width:3px;transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite fs-pulse}.fs-months{justify-content:space-between;display:flex;position:absolute;top:262px;left:0;right:0}.fs-months span{text-align:center;width:40px;color:var(--gray);font-size:12px;font-weight:600}.fs-tip{background:var(--dark);color:#fff;white-space:nowrap;border-radius:12px;padding:4px 10px;font-size:11px;font-weight:700;animation:2s ease-in-out infinite fs-bob;position:absolute;top:-36px;left:395.8px;transform:translate(-50%)}@keyframes fs-bob{50%{margin-top:-5px}}.fs-stack{display:flex}.fs-stack .fs-av{border:2px solid #fff;width:30px;height:30px;margin-right:-10px}.fs-chat-h{align-items:center;gap:20px;display:flex}.fs-online{align-items:center;gap:6px;margin-top:2px;display:flex}.fs-dot{background:var(--green);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite fs-blink}@keyframes fs-blink{50%{opacity:.3}}.fs-msgs{flex-direction:column;gap:10px;display:flex;position:absolute;top:48px;left:0;right:0}.fs-msg{align-items:flex-end;gap:10px;display:flex}.fs-msg.fs-r{justify-content:flex-end}.fs-bubble{background:var(--lblue);border-radius:14px 14px 14px 4px;padding:9px 14px;font-size:13px;font-weight:600}.fs-msg.fs-r .fs-bubble{background:var(--orange-ink);color:#fff;border-radius:14px 14px 4px}.fs-msg.fs-s .fs-bubble{background:var(--lgreen)}.fs-card.fs-active .fs-msg{animation:fs-msg-in .5s var(--d) both var(--pop)}@keyframes fs-msg-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}.fs-typing{background:var(--soft);border-radius:14px 14px 14px 4px;gap:5px;padding:13px 15px;display:flex}.fs-typing i{background:var(--gray);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite fs-hop}.fs-typing i:nth-child(2){animation-delay:.15s}.fs-typing i:nth-child(3){animation-delay:.3s}@keyframes fs-hop{0%,60%,to{opacity:.4;transform:none}30%{opacity:1;transform:translateY(-5px)}}.fs-input{background:var(--soft);height:42px;color:var(--gray);border-radius:21px;justify-content:space-between;align-items:center;padding:0 5px 0 18px;font-size:13px;font-weight:600;display:flex;position:absolute;bottom:0;left:0;right:0}.fs-caret{background:var(--blue);vertical-align:-3px;width:1.5px;height:15px;margin-left:2px;animation:1s step-end infinite fs-blink;display:inline-block}.fs-send{background:var(--orange-ink);border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:relative}.fs-send:after{content:"";border:2px solid var(--orange);border-radius:50%;animation:1.8s ease-out infinite fs-ring;position:absolute;inset:0}.fs-search{background:var(--soft);border-radius:21px;align-items:center;gap:10px;height:42px;padding:0 16px;font-size:14px;font-weight:600;display:flex}.fs-search .fs-cnt{color:var(--gray);margin-left:auto;font-size:12px}.fs-q{white-space:nowrap;vertical-align:bottom;max-width:14em;display:inline-block;overflow:hidden}.fs-card.fs-active .fs-q{animation:1s steps(15,end) .2s both fs-type}@keyframes fs-type{0%{max-width:0}}.fs-shelf{background:#004f7c40;border-radius:4px;width:262px;height:8px;position:absolute;bottom:15px;left:0}.fs-books{align-items:flex-end;gap:4px;display:flex;position:absolute;bottom:23px;left:6px}.fs-book{width:var(--w);height:var(--h);background:var(--c);transform-origin:bottom;animation:fs-sway 3s ease-in-out var(--d) infinite alternate;border-radius:4px;position:relative}.fs-book:before,.fs-book:after{content:"";background:#ffffff80;border-radius:2px;height:4px;position:absolute;left:4px;right:4px}.fs-book:before{top:14px}.fs-book:after{bottom:22px}@keyframes fs-sway{0%{transform:rotate(-1.5deg)}to{transform:rotate(1.5deg)}}.fs-book.fs-feat{animation:none}.fs-card.fs-active .fs-book.fs-feat{animation:fs-lift .6s .2s both var(--pop), fs-float 2.4s .8s ease-in-out infinite}@keyframes fs-lift{to{transform:translateY(-52px)}}@keyframes fs-float{0%,to{transform:translateY(-52px)}50%{transform:translateY(-62px)rotate(-2deg)}}.fs-detail{background:var(--soft);border:1px solid var(--line);border-radius:16px;width:211px;height:206px;padding:14px;position:absolute;top:58px;right:0}.fs-card.fs-active .fs-detail{animation:fs-slide-in .6s .35s both var(--pop)}@keyframes fs-slide-in{0%{opacity:0;transform:translate(30px)}}.fs-d-top{gap:12px;display:flex}.fs-cover{background:var(--orange);border-radius:6px;flex:none;width:62px;height:86px;position:relative}.fs-cover:before,.fs-cover:after{content:"";background:#ffffff80;border-radius:2px;height:4px;position:absolute;left:6px;right:6px}.fs-cover:before{top:14px}.fs-cover:after{bottom:20px}.fs-d-top b{font-size:16px;display:block}.fs-ln{background:var(--line);border-radius:3px;height:6px;margin-top:8px}.fs-track{background:var(--line);border-radius:3px;height:6px;margin-top:8px;overflow:hidden}.fs-fill{background:var(--orange);border-radius:3px;width:64%;height:100%}.fs-card.fs-active .fs-fill{animation:fs-fillw 1.2s .6s both var(--ease)}@keyframes fs-fillw{0%{width:0}}.fs-btn{background:var(--blue);color:#fff;border-radius:12px;place-items:center;height:38px;margin-top:14px;font-size:14px;font-weight:700;display:grid;position:relative;overflow:hidden}.fs-btn:after{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:40px;animation:2.6s ease-in-out infinite fs-shine;position:absolute;top:0;bottom:0;left:-60px;transform:skew(-20deg)}@keyframes fs-shine{60%,to{left:120%}}.fs-player{background:linear-gradient(135deg,#004f7c,#082b4a);border-radius:16px;height:236px;position:absolute;top:0;left:0;right:0;overflow:hidden}.fs-board{background:#ffffff14;border-radius:12px;width:262px;height:150px;padding:22px;position:absolute;top:24px;left:24px}.fs-formula{color:#fff;white-space:nowrap;font-size:26px;font-weight:800}.fs-formula span{display:inline-block}.fs-card.fs-active .fs-formula span{animation:fs-msg-in .45s var(--d) both var(--pop)}.fs-tri{position:absolute;top:80px;left:22px;overflow:visible}.fs-tri path{fill:none;stroke:#fff;stroke-opacity:.75;stroke-width:2.5px;stroke-linejoin:round;stroke-dasharray:1;animation:fs-draw 3s var(--ease) infinite alternate}.fs-teacher{width:112px;height:180px;animation:3s ease-in-out infinite fs-nod;position:absolute;top:62px;left:326px}.fs-t-head{background:#fad1a8;border-radius:50%;width:48px;height:48px;position:absolute;top:4px;left:30px}.fs-t-body{background:var(--orange);border-radius:52px 52px 0 0;width:104px;height:140px;position:absolute;top:58px;left:4px}.fs-arm{transform-origin:100%;background:#fad1a8;border-radius:3px;width:70px;height:6px;animation:3s ease-in-out infinite fs-point;position:absolute;top:80px;left:-30px}@keyframes fs-nod{50%{transform:translateY(3px)}}@keyframes fs-point{0%,to{transform:rotate(18deg)}50%{transform:rotate(-8deg)}}.fs-hdb{color:#fff;background:#ffffff2e;border-radius:12px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:700;display:flex;position:absolute;top:14px;right:14px}.fs-rec{background:var(--red);border-radius:50%;width:7px;height:7px;animation:1s step-end infinite fs-blink}.fs-play{background:#fffffff2;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;position:absolute;top:86px;left:213.5px}.fs-play:after{content:"";border:2px solid #fff;border-radius:50%;animation:1.8s ease-out infinite fs-ring;position:absolute;inset:0}.fs-card.fs-active .fs-play{animation:fs-play-out .6s .3s both var(--ease)}@keyframes fs-play-out{to{opacity:0;transform:scale(1.4)}}.fs-eq{align-items:flex-end;gap:3px;height:18px;display:flex;position:absolute;bottom:16px;left:24px}.fs-eq i{background:#ffffffb3;border-radius:2px;width:4px;animation:.9s ease-in-out infinite alternate fs-eq}.fs-eq i:nth-child(2){animation-delay:.2s}.fs-eq i:nth-child(3){animation-delay:.4s}.fs-eq i:nth-child(4){animation-delay:.1s}@keyframes fs-eq{0%{height:4px}to{height:18px}}.fs-vtrack{background:var(--line);border-radius:3px;height:6px;position:absolute;top:252px;left:0;right:0}.fs-vfill{background:var(--orange);border-radius:3px;height:6px;animation:8s linear infinite fs-progress;position:absolute;top:0;left:0}.fs-vfill:after{content:"";border:3px solid var(--orange);box-sizing:border-box;background:#fff;border-radius:50%;width:16px;height:16px;position:absolute;top:-5px;right:-8px}@keyframes fs-progress{0%{width:8%}to{width:92%}}.fs-vmeta{justify-content:space-between;font-size:14px;font-weight:700;display:flex;position:absolute;top:272px;left:0;right:0}.fs-vmeta span{color:var(--gray);font-size:13px;font-weight:600}.fs-tiles{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:10px;height:236px;display:grid;position:absolute;top:0;left:0;right:0}.fs-tile{background:var(--bg);border-radius:14px;place-items:center;display:grid;position:relative}.fs-tile:after{content:"";border:3px solid var(--green);opacity:0;animation:fs-speak 8s var(--sd) infinite;border-radius:14px;position:absolute;inset:0}@keyframes fs-speak{0%,22%{opacity:1}26%,to{opacity:0}}.fs-card.fs-active .fs-tile{animation:fs-pop .5s var(--d) both var(--pop)}.fs-tile .fs-av{width:52px;height:52px;margin-top:-10px;font-size:18px;position:relative}.fs-tile .fs-av:before{content:"";border:2px solid var(--green);opacity:0;animation:fs-speak-ring 8s var(--sd) infinite;border-radius:50%;position:absolute;inset:-8px}@keyframes fs-speak-ring{0%{opacity:.8;transform:scale(.9)}6%{opacity:0;transform:scale(1.25)}7%{opacity:.8;transform:scale(.9)}13%{opacity:0;transform:scale(1.25)}14%{opacity:.8;transform:scale(.9)}20%{opacity:0;transform:scale(1.25)}21%,to{opacity:0}}.fs-name{background:#ffffffeb;border-radius:12px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:8px;left:10px}.fs-mic{align-items:center;gap:2px;height:10px;display:flex}.fs-mic i{background:var(--green);border-radius:2px;width:2.5px;height:4px;animation:.5s ease-in-out infinite alternate fs-eq}.fs-mic i:nth-child(2){animation-delay:.15s}.fs-mic i:nth-child(3){animation-delay:.3s}.fs-controls{background:var(--soft);border:1px solid var(--line);border-radius:26px;gap:12px;padding:6px;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.fs-card.fs-active .fs-controls{animation:fs-up-in .5s .5s both var(--pop)}@keyframes fs-up-in{0%{opacity:0;transform:translate(-50%,24px)}}.fs-cb{border:1px solid var(--line);background:#fff;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.fs-cb.fs-end{background:var(--red);border-color:var(--red)}.fs-timer{background:#ffffffeb;border-radius:10px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;display:flex;position:absolute;top:10px;right:10px}.fs-card:not(.fs-active) *,.fs-card:not(.fs-active) :before,.fs-card:not(.fs-active) :after,.fs-wrap[data-paused] *,.fs-wrap[data-paused] :before,.fs-wrap[data-paused] :after{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.fs-stage *,.fs-stage :before,.fs-stage :after{transition:none!important;animation:none!important}}
