:root{--bg:#fbfbf9;--card:#fff;--panel:#f3f4f1;--ink:#191a1c;--ink-2:#3d3f44;--muted:#74767c;--line:#e4e4df;--line-2:#d3d4ce;--accent:#3a5aa8;--accent-ink:#fff;--accent-soft:color-mix(in srgb, var(--accent) 9%, #fff);--ok:#2f7d4f;--ok-soft:#e9f3ec;--warn:#8f6312;--warn-soft:#faf2e1;--danger:#b3261e;--danger-soft:#fbebe9;--serif:"Noto Serif TC", "Songti TC", "PingFang TC", serif;--sans:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;--radius:8px;--radius-lg:14px;--shadow:0 1px 2px #191a1c0a, 0 10px 30px #191a1c0f;--header-h:64px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body,html{background:var(--bg);color:var(--ink);font:16px/1.75 var(--sans);margin:0}body{-webkit-font-smoothing:antialiased;font-feature-settings:"palt" 0}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}img{max-width:100%}::selection{background:var(--accent-soft)}.wrap{max-width:1120px}.narrow,.wrap{margin:0 auto;padding:0 20px}.narrow{max-width:640px}@media (width<=640px){.narrow,.wrap{padding:0 16px}}.serif,h1,h2,h3{font-family:var(--serif);letter-spacing:.01em;color:var(--ink);font-weight:600}h1{margin:0 0 12px;font-size:calc(clamp(28px,3.6vw,40px));line-height:1.3}h2{margin:40px 0 16px;font-size:calc(clamp(21px,2.2vw,26px));line-height:1.4}h3{margin:20px 0 8px;font-size:18px;line-height:1.5}.eyebrow{font:600 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;display:inline-block}.lede{color:var(--ink-2);margin:0 0 20px;font-size:18px;line-height:1.8}.muted{color:var(--muted)}.small{font-size:14px}.num{font-variant-numeric:tabular-nums}header.top{z-index:30;height:var(--header-h);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0}header.top .wrap{align-items:center;gap:24px;height:100%;display:flex}header.top .brand{font:600 20px/1 var(--serif);color:var(--ink);letter-spacing:.02em}header.top .brand:hover{text-decoration:none}header.top nav{align-items:center;gap:6px;margin-left:auto;font-size:15px;display:flex}header.top nav a{color:var(--ink-2);border-radius:999px;padding:8px 12px}header.top nav a:hover{color:var(--ink);background:var(--panel);text-decoration:none}header.top nav a.router-link-exact-active{color:var(--ink)}header.top nav a.nav-cta{color:var(--accent-ink);background:var(--accent);border-radius:var(--radius);margin-left:4px;padding:8px 16px}header.top nav a.nav-cta:hover{background:color-mix(in srgb,var(--accent) 88%,#000)}.menu-btn{color:var(--ink);background:0 0;border:0;margin-left:auto;padding:8px;display:none}@media (width<=760px){.menu-btn{display:inline-flex}header.top nav{top:var(--header-h);background:var(--bg);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 16px;display:none;position:absolute;left:0;right:0}header.top nav.open{display:flex}header.top nav a{border-bottom:1px solid var(--line);border-radius:0;padding:12px 4px}header.top nav a.nav-cta{text-align:center;border-radius:var(--radius);border:0;margin-top:12px}}main{padding:40px 0 96px}.shell{flex-direction:column;min-height:100vh;display:flex}.shell main{flex:1}footer.foot{border-top:1px solid var(--line);color:var(--muted);padding:32px 0 28px;font-size:14px}footer.foot a{color:var(--ink-2)}.foot-contact{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:10px 32px;margin-bottom:20px;padding-bottom:24px;display:flex}.foot-contact a{align-items:center;gap:8px;display:inline-flex}.foot-bottom{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.foot-bottom .copy{font-size:13px}.foot-links{flex-wrap:wrap;gap:20px;margin-left:auto;display:flex}@media (width<=640px){.foot-links{margin-left:0}}.nav-sep{background:var(--line-2);width:1px;height:20px;margin:0 6px}.nav-user{margin-left:4px;position:relative}.avatar-btn{width:36px;height:36px;font:600 15px/1 var(--sans);border-radius:50%;padding:0}.nav-menu{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow);z-index:40;padding:6px;display:none;position:absolute;top:calc(100% + 10px);right:0}.nav-user.open .nav-menu{display:block}.nav-menu .who{border-bottom:1px solid var(--line);flex-direction:column;margin-bottom:6px;padding:10px 12px 12px;font-size:14px;line-height:1.5;display:flex}.nav-menu .who span{color:var(--muted);text-overflow:ellipsis;font-size:12px;overflow:hidden}header.top .nav-menu a{border-radius:var(--radius);padding:8px 12px;font-size:14px;display:block}@media (width<=760px){.avatar-btn,.nav-sep{display:none}.nav-user{margin:0}.nav-menu{box-shadow:none;background:0 0;border:0;min-width:0;padding:0;display:block;position:static}.nav-menu .who{margin:0;padding:12px 4px}header.top .nav-menu a{border-bottom:1px solid var(--line);border-radius:0;padding:12px 4px}}.auth,.bare{min-height:100vh}.auth{background:var(--panel);flex-direction:column;align-items:center;padding:72px 16px 64px;display:flex}.auth-brand{font:600 20px/1.2 var(--serif);color:var(--ink)}.auth-brand img{height:36px;display:block}.auth-brand:hover,.btn,button{text-decoration:none}.auth-title{margin:56px 0 20px;font-size:26px}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;max-width:480px;padding:36px 40px 32px}.auth-card input:not([type=checkbox]){padding:12px 14px}.auth-sent{text-align:center}.auth-sent .icon{color:var(--accent)}.auth-links{flex-direction:column;gap:6px;width:100%;max-width:480px;margin-top:18px;padding:0 4px;font-size:14px;display:flex}@media (width<=520px){.auth{padding:40px 0 48px}.auth-title{margin-top:36px}.auth-card{border-left:0;border-right:0;border-radius:0;padding:28px 20px}.auth-links{padding:0 20px}}.card{background:var(--card);border:1px solid var(--line)}.card,.panel{border-radius:var(--radius-lg);padding:22px}.panel{background:var(--panel)}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.stack>*+*{margin-top:12px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pre{white-space:pre-wrap;word-break:break-word}.divider{border:0;border-top:1px solid var(--line);margin:28px 0}.btn,button{appearance:none;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius);font:500 15px/1.4 var(--sans);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:10px 18px;transition:background .15s,border-color .15s,color .15s,transform 50ms;display:inline-flex}.btn:hover,button:hover{background:color-mix(in srgb,var(--accent) 88%,#000);border-color:color-mix(in srgb,var(--accent) 88%,#000);text-decoration:none}.btn:active,button:active{transform:translateY(1px)}.btn.ghost,button.ghost{color:var(--ink);border-color:var(--line-2);background:0 0}.btn.ghost:hover,button.ghost:hover{background:var(--panel);border-color:var(--line-2)}.btn.dark,button.dark{background:var(--ink);border-color:var(--ink);color:#fff}.btn.dark:hover,button.dark:hover{background:var(--ink-2);border-color:var(--ink-2)}.btn.lg,button.lg{padding:14px 22px;font-size:16px}.btn.block,button.block{width:100%}.btn.small,button.small{padding:5px 11px;font-size:13px}button.danger{background:var(--danger);border-color:var(--danger)}button:disabled{opacity:.5;cursor:not-allowed}button.link{color:var(--accent);background:0 0;border:0;padding:0}input,select,textarea{width:100%;font:inherit;border:1px solid var(--line-2);border-radius:var(--radius);color:var(--ink);background:#fff;padding:10px 12px;font-size:15px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}textarea{min-height:110px;line-height:1.7}label{color:var(--ink-2);margin-bottom:6px;font-size:14px;font-weight:500;display:block}label.inline{color:var(--ink);align-items:center;gap:8px;font-weight:400;display:inline-flex}label.inline input{width:auto}.field{margin-bottom:16px}.error{color:var(--danger);font-size:14px}.notice{background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 25%,transparent);color:#5c430f;border-radius:var(--radius);padding:12px 16px;font-size:14px}.notice.info{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--ink)}.tag{background:var(--panel);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 9px;font-size:12px;font-weight:500;line-height:1.6;display:inline-flex}.tag.ok{background:var(--ok-soft);color:var(--ok)}.tag.warn{background:var(--warn-soft);color:var(--warn)}.tag.danger{background:var(--danger-soft);color:var(--danger)}.tag.accent{background:var(--accent-soft);color:var(--accent)}table{border-collapse:collapse;width:100%;font-size:14px}th{letter-spacing:.04em;color:var(--muted);white-space:nowrap;padding:10px 12px;font-size:12px;font-weight:600}td,th{text-align:left;border-bottom:1px solid var(--line)}td{vertical-align:top;padding:12px}tbody tr:hover td{background:color-mix(in srgb,var(--panel) 55%,transparent)}tbody tr:last-child td{border-bottom:0}.table-scroll{overflow-x:auto}.card.table-scroll{padding:6px 10px}.price{font:600 30px/1.2 var(--serif);font-variant-numeric:tabular-nums}.strike{color:var(--muted);margin-left:8px;text-decoration:line-through}.stars{color:#c98a10;letter-spacing:1px}.tabs{background:var(--panel);flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;margin-bottom:18px;padding:4px;display:flex}.tabs,.tabs button{border-radius:999px}.tabs button{color:var(--ink-2);background:0 0;border:0;padding:7px 14px;font-size:14px}.tabs button:hover{background:#fff9}.tabs button.on{color:var(--ink);background:#fff;box-shadow:0 1px 3px #00000014}.curr-head,details>summary{cursor:pointer}.cols-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=640px){.cols-2{grid-template-columns:1fr}}code{background:var(--panel);border-radius:4px;padding:1px 6px;font-size:13px}.kbd-hint{color:var(--muted);font-size:12px}.icon{vertical-align:-.15em;flex:none}.progress{background:var(--line);border-radius:99px;height:6px;overflow:hidden}.progress>i{background:var(--accent);border-radius:99px;height:100%;transition:width .3s;display:block}.rich{word-break:break-word;line-height:1.9}.rich .rt-img,.rich blockquote,.rich ol,.rich p,.rich ul{margin:0 0 16px}.rich blockquote{border-left:3px solid var(--accent);color:var(--ink-2);padding-left:16px}.rich .rt-img{border-radius:var(--radius);max-width:100%;display:block}.rich>:last-child{margin-bottom:0}.banner img{border-radius:var(--radius-lg);width:100%;display:block}.wall img{border-radius:var(--radius);border:1px solid var(--line);max-width:100%}.comment{border-bottom:1px solid var(--line);padding:14px 0}.comment.reply{border-left:2px solid var(--line);margin-left:24px;padding-left:14px}.hero-home{text-align:center;padding:32px 0 8px}.hero-home h1{max-width:16em;margin:0 auto 12px;font-size:calc(clamp(30px,4.4vw,48px))}.hero-home .lede{max-width:640px;margin:0 auto}.section-head{align-items:baseline;gap:16px;margin:48px 0 20px;display:flex}.section-head h2{margin:0}.section-head a{margin-left:auto;font-size:15px}.ccard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.ccard:hover{box-shadow:var(--shadow);border-color:var(--line-2);text-decoration:none;transform:translateY(-2px)}.ccard .cover{aspect-ratio:16/9;background:var(--panel)}.ccard .cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.ccard .body{flex-direction:column;flex:1;padding:18px 20px 20px;display:flex}.ccard h3{margin:0 0 6px;font-size:19px}.ccard p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.7;display:-webkit-box;overflow:hidden}.ccard .meta{color:var(--muted);gap:12px;margin-top:auto;padding-top:14px;font-size:13px;display:flex}.type-cover{background:var(--ink);color:#f2f2ee;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:20px 22px;display:flex;position:relative;overflow:hidden}.type-cover:after{content:"";aspect-ratio:1;background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--accent) 85%,#fff),var(--accent) 60%,transparent 61%);opacity:.9;border-radius:50%;width:70%;position:absolute;top:-42%;right:-16%}.type-cover .tc-mark{font:600 12px/1 var(--sans);letter-spacing:.2em;opacity:.7;z-index:1;position:relative}.type-cover .tc-title{font:600 calc(clamp(20px,2.4vw,30px))/1.35 var(--serif);z-index:1;max-width:75%;position:relative}.sp{padding-top:8px}.sp-grid{-moz-column-gap:40px;grid-template-columns:minmax(0,1fr) 360px;grid-template-areas:"head side""body side";align-items:start;column-gap:40px;display:grid}.sp-head{grid-area:head;padding-bottom:8px}.sp-side{flex-direction:column;grid-area:side;gap:16px;display:flex}.sp-body{grid-area:body;min-width:0}.sp-badge{background:var(--ok);color:#fff;letter-spacing:.06em;border-radius:4px;margin-bottom:14px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.sp-head h1{margin:0 0 12px;font-size:calc(clamp(28px,3.2vw,38px))}.sp-sub{margin:0 0 18px;font-size:17px;line-height:1.75}.sp-meta,.sp-sub{color:var(--ink-2)}.sp-meta{flex-wrap:wrap;align-items:center;gap:8px 22px;font-size:14px;display:flex}.sp-meta>span{align-items:center;gap:6px;display:inline-flex}.sp-teacher{color:var(--ink);font-weight:500;gap:10px!important}.sp-cover iframe,.sp-cover img,.sp-teacher img.avatar,.sp-teacher-card .t-photo{-o-object-fit:cover;object-fit:cover}.sp-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 1px 2px #191a1c0a}.sp-cover{aspect-ratio:16/9;background:var(--panel)}.sp-cover iframe,.sp-cover img{border:0;width:100%;height:100%;display:block}.sp-card-body{padding:18px 20px 20px}.sp-inc-t{margin-bottom:8px;font-size:14px;font-weight:600}.sp-inc{color:var(--ink-2);margin:0;padding:0;font-size:14px;list-style:none}.sp-inc li{align-items:center;gap:10px;padding:3px 0;display:flex}.sp-inc .icon,.sp-progress{color:var(--muted)}.sp-progress{margin:16px 0 14px;font-size:13px}.sp-progress .progress{margin-top:6px}.sp-tabs{top:var(--header-h);z-index:10;scrollbar-width:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg);gap:4px;margin:28px 0 36px;display:flex;position:sticky;overflow-x:auto}.sp-tabs::-webkit-scrollbar{display:none}.sp-tabs a{text-align:center;color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;flex:1 0 auto;padding:16px 14px 14px;font-size:15px}.sp-tabs a:hover{color:var(--ink);text-decoration:none}.sp-tabs a.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.sp-body section{scroll-margin-top:130px}.sp-body section+section{margin-top:64px}.sp-body section>h2:first-child{margin-top:0}.learn-list{grid-template-columns:1fr 1fr;gap:14px 28px;margin:0;padding:0;list-style:none;display:grid}.learn-list li{align-items:flex-start;gap:10px;line-height:1.7;display:flex}.learn-list .icon{color:var(--accent);margin-top:5px}@media (width<=640px){.learn-list{grid-template-columns:1fr}}.sp-body .learn-list{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:28px;padding:22px 24px}.sp-teacher-card{align-items:flex-start;gap:20px;display:flex}.sp-teacher-card .t-photo{border-radius:50%;flex:none;width:88px;height:88px;font-size:30px}.sp-teacher-card h3{margin:4px 0 8px;font-size:20px}.buy-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 20px 20px}.buy-card h3{margin:0 0 10px;font-size:18px}.buy-card .price{font-size:28px}.buy-card .rich{color:var(--ink-2);font-size:14px;line-height:1.75}.buy-card .rich ul{padding-left:20px}.buy-card .perks{color:var(--ink-2);border-top:1px solid var(--line);margin:16px 0 0;padding:12px 0 0;font-size:13px;list-style:none}.buy-card .perks li{align-items:center;gap:8px;padding:3px 0;display:flex}.buy-card .perks .icon,.curr-head .chev{color:var(--muted)}.sticky-buy{top:calc(20px + var(--header-h));position:sticky}.mobile-buy{display:none}@media (width<=900px){.sp-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""side""body"}.sp-side{margin-top:20px;position:static}.sp-tabs{margin:32px -16px 28px;padding:0 8px}.sp-tabs a{flex:none;padding:14px 10px 12px;font-size:14px}.sp-body section+section{margin-top:48px}.sp-teacher-card{flex-direction:column}.mobile-buy{z-index:25;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);align-items:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-buy .p{font:600 20px/1.2 var(--serif)}.mobile-buy .btn{min-width:140px;margin-left:auto}.sp{padding-bottom:72px}}.curr{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);overflow:hidden}.curr-sec+.curr-sec,.faq details:first-child{border-top:1px solid var(--line)}.curr-head{align-items:center;gap:14px;padding:18px 22px;list-style:none;display:flex}.curr-head::-webkit-details-marker{display:none}.curr-head .chev{margin-left:4px;transition:transform .2s}.curr-sec[open] .curr-head .chev{transform:rotate(180deg)}.curr-sec[open] .curr-head{padding-bottom:8px}.curr-head .n{font:600 14px/1 var(--serif);color:var(--accent);min-width:22px}.curr-head h3{margin:0;font-size:17px}.curr-head .muted{white-space:nowrap;margin-left:auto;font-size:13px}.curr ul{margin:0;padding:0 10px 12px;list-style:none}.curr li .row-static,.curr li a{border-radius:var(--radius);color:var(--ink);align-items:center;gap:12px;padding:10px 12px;font-size:15px;display:flex}.curr li a:hover{background:var(--panel);text-decoration:none}.curr li .d,.curr li .icon,.curr li .row-static{color:var(--muted)}.curr li .t{flex:1;min-width:0}.curr li .d{font-variant-numeric:tabular-nums;font-size:13px}.curr li .done .icon,.curr li .icon.done{color:var(--ok)}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{align-items:center;gap:12px;font-size:16px;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .icon{color:var(--muted);margin-left:auto;transition:transform .2s}.faq details[open] summary .icon{transform:rotate(45deg)}.faq .a{color:var(--ink-2);margin-top:10px}.reviews{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.review{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px}.review .who{align-items:center;gap:10px;margin-bottom:8px;display:flex}.avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);font:600 14px/1 var(--sans);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.rating-big{align-items:baseline;gap:10px;margin-bottom:16px;display:flex}.rating-big b{font:600 36px/1 var(--serif)}.lp{min-height:calc(100vh - var(--header-h));grid-template-columns:320px minmax(0,1fr);margin:-40px 0 -96px;display:grid}.lp-side{border-right:1px solid var(--line);background:var(--card);top:var(--header-h);height:calc(100vh - var(--header-h));position:sticky;overflow-y:auto}.lp-side .head{border-bottom:1px solid var(--line);padding:22px 22px 18px}.lp-side .head a.back{color:var(--muted);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;display:inline-flex}.lp-side .head .ct{font:600 17px/1.45 var(--serif);margin-bottom:14px}.lp-side .head .pg{color:var(--muted);justify-content:space-between;margin-bottom:6px;font-size:13px;display:flex}.lp-sec .sh{letter-spacing:.06em;color:var(--muted);padding:16px 22px 6px;font-size:12px;font-weight:600}.lp-sec ul{margin:0;padding:0 10px 6px;list-style:none}.lp-sec li a,.lp-sec li span.locked{border-radius:var(--radius);color:var(--ink-2);align-items:flex-start;gap:10px;padding:9px 12px;font-size:14px;line-height:1.55;display:flex}.lp-sec li a:hover{background:var(--panel);text-decoration:none}.lp-sec li a.cur{background:var(--accent-soft);color:var(--ink);font-weight:500}.lp-sec li .icon,.lp-sec li span.locked{color:var(--muted)}.lp-sec li .icon{margin-top:3px}.lp-sec li .icon.done{color:var(--ok)}.lp-main{width:100%;max-width:980px;padding:32px 40px 96px}.lp-main h1{margin-bottom:20px;font-size:calc(clamp(24px,2.8vw,32px))}.player{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#0e0f10;position:relative;overflow:hidden}.player iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.player-empty{color:#9a9ca1;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex;position:absolute;inset:0}.watermark{pointer-events:none;color:#ffffff59;white-space:nowrap;z-index:2;font-size:13px;animation:40s linear infinite drift;position:absolute}@keyframes drift{0%{top:8%;left:6%}25%{top:70%;left:55%}50%{top:30%;left:70%}75%{top:80%;left:10%}to{top:8%;left:6%}}.lp-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:28px;padding:16px 0 8px;display:flex}.lp-bar .nav{gap:8px;margin-left:auto;display:flex}.lp-block{margin-top:36px}.lp-block>h2{align-items:center;gap:10px;margin:0 0 14px;font-size:20px;display:flex}.files{margin:0;padding:0;list-style:none}.files li a{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--card);align-items:center;gap:10px;padding:12px 14px;display:flex}.files li+li{margin-top:8px}.files li a:hover{border-color:var(--line-2);text-decoration:none}.lp-toggle{display:none}@media (width<=900px){.lp{grid-template-columns:1fr;margin:-40px 0 0}.lp-side{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.lp-side .list{display:none}.lp-side.open .list{display:block}.lp-toggle{margin-top:12px;display:inline-flex}.lp-main{padding:24px 16px 64px}}.video-embed{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#000;position:relative;overflow:hidden}.video-embed iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.page-head{margin-bottom:28px}.page-head h1{margin-bottom:6px}.adm{background:var(--bg);grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.adm-side{background:var(--card);border-right:1px solid var(--line);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.adm-brand{color:var(--ink);align-items:center;gap:10px;padding:18px 16px 14px;display:flex}.adm-brand:hover,.adm-group a:hover{text-decoration:none}.adm-side .tile{background:var(--accent);color:#fff;width:32px;height:32px;font:600 15px/1 var(--sans);border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.adm-side .nm{flex-direction:column;min-width:0;font-size:15px;font-weight:600;line-height:1.3;display:flex}.adm-side .nm small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}.adm-group{padding:4px 10px}.adm-group .gt{color:var(--muted);padding:12px 10px 4px;font-size:12px;font-weight:500}.adm-group a{border-radius:var(--radius);color:var(--ink-2);align-items:center;gap:10px;padding:7px 10px;font-size:14px;display:flex}.adm-group a.router-link-active,.adm-group a:hover{background:var(--panel);color:var(--ink)}.adm-group a.router-link-active{font-weight:600}.adm-group a .icon{color:var(--muted)}.adm-group a.router-link-active .icon{color:var(--ink)}.adm-side .foot{border-top:1px solid var(--line);margin-top:auto;padding:10px 10px 14px}.adm-user{align-items:center;gap:10px;padding:8px 10px;display:flex}.adm-user .nm b{font-size:14px}.adm-side .foot a{border-radius:var(--radius);color:var(--muted);align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.adm-side .foot a:hover{color:var(--ink);background:var(--panel);text-decoration:none}.adm-main{flex-direction:column;min-width:0;display:flex}.adm-top{z-index:20;background:color-mix(in srgb,var(--card) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);gap:14px;height:48px;padding:0 28px;position:sticky;top:0}.adm-top,.adm-top .right,.crumb{align-items:center;display:flex}.crumb{white-space:nowrap;gap:8px;min-width:0;font-size:14px;overflow:hidden}.crumb a{color:var(--ink-2)}.crumb .sep{color:var(--line-2)}.crumb .cur{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.adm-top .right{gap:16px;margin-left:auto;font-size:13px}.adm-top .right a{color:var(--ink-2);align-items:center;gap:6px;display:inline-flex}.adm-top .menu-btn{margin-left:0}.adm-main main{padding:28px 0 80px}.adm-main .wrap{max-width:1240px;padding:0 28px}.adm-scrim{display:none}@media (width<=960px){.adm{grid-template-columns:1fr}.adm-side{z-index:40;width:264px;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.adm-side.open{transform:none}.adm-scrim.open{z-index:35;background:#00000059;display:block;position:fixed;inset:0}.adm-top{padding:0 12px}.adm-top .menu-btn{display:inline-flex}.adm-top .right{display:none}.kpi{padding:14px 16px}.kpi b{margin-top:6px;font-size:24px}.adm-main .wrap{padding:0 16px}}.admin-nav{display:none}.kpis{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px}.kpi .k{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.kpi b{font:600 30px/1.2 var(--serif);font-variant-numeric:tabular-nums;margin-top:10px;display:block}.kpis .card b{font:600 28px/1.2 var(--serif);display:block}.quick{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.quick a{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:500;display:flex}.quick a:hover{border-color:var(--line-2);box-shadow:var(--shadow);text-decoration:none}.quick a .ic{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.bar-cell{align-items:center;gap:10px;min-width:140px;display:flex}.bar-cell .progress{flex:1}.req{color:var(--danger);margin-left:3px;font-style:normal}.opt{margin-left:6px;font-size:12px;font-weight:400}.hint,.opt{color:var(--muted)}.hint{margin:6px 0 0;font-size:13px;line-height:1.6}.hint.ok{color:var(--ok)}.seg{background:var(--panel);border-radius:var(--radius);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.seg label{color:var(--ink-2);cursor:pointer;border-radius:6px;margin:0;padding:7px 14px;font-size:14px;font-weight:500}.seg label.on{color:var(--ink);background:#fff;box-shadow:0 1px 3px #00000014}.seg input{opacity:0;pointer-events:none;position:absolute}.co{max-width:1072px;padding-top:24px}.co-empty{text-align:center;max-width:520px;margin:40px auto}.co-grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:40px;display:grid}.co-main{max-width:600px}.co-main input:not([type=checkbox]):not([type=radio]),.co-main textarea{padding:12px 14px}.co-main .field{margin-bottom:22px}.co-h{font:600 19px/1.4 var(--serif);margin:0 0 16px}.co-login{min-width:260px}.co-or{color:var(--muted);align-items:center;gap:14px;margin:32px 0 28px;font-size:13px;display:flex}.co-or:after,.co-or:before{content:"";border-top:1px solid var(--line);flex:1}.co-me{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);align-items:center;gap:12px;margin-bottom:22px;padding:14px 16px;display:flex}.co-2{grid-template-columns:1fr 2fr;gap:10px;margin-top:10px;display:grid}.bump{border:1px dashed color-mix(in srgb,var(--ok) 55%,transparent);background:var(--ok-soft);border-radius:var(--radius);margin-bottom:14px;padding:14px 16px 16px;transition:border-color .15s,background .15s}.bump.on{border-style:solid;border-color:var(--ok)}.bump-check{color:var(--ink);cursor:pointer;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:inline-flex}.bump-check input{width:18px;height:18px;accent-color:var(--ok)}.bump-save{color:var(--ok);margin:4px 0 0 26px;font-size:13px}.bump-body{justify-content:space-between;align-items:flex-end;gap:16px;margin:10px 0 0 26px;display:flex}.bump-name{color:var(--ink);font-size:14px;font-weight:600}.bump-price{font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.bump-price s{color:var(--muted);margin-left:8px;font-size:12px;font-weight:400}.bump-img{aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;border-radius:6px;flex:none;width:120px}.co-coupon{position:relative}.co-coupon input{padding-right:76px!important}.co-coupon button{padding:6px 14px;position:absolute;top:50%;right:7px}.co-coupon button,.co-coupon button:active,.search .icon{transform:translateY(-50%)}.co-totals{border-top:1px solid var(--line);margin:8px 0 22px;padding-top:14px}.co-line,.co-row,.co-totals div{justify-content:space-between;gap:16px;display:flex}.co-totals div{color:var(--ink-2);padding:6px 0;font-size:15px}.co-row.total,.co-totals .total{color:var(--ink);font-size:17px;font-weight:700}.co-agree{color:var(--ink-2);cursor:pointer;align-items:flex-start;gap:10px;margin:0 0 18px;font-size:14px;font-weight:400;line-height:1.7;display:flex}.co-agree input{flex:none;width:16px;height:16px;margin-top:5px}.co-agree a{margin:0 2px}.co-submit{margin-top:14px;font-weight:600}.co-secure{background:var(--panel);border-radius:var(--radius);color:var(--ink-2);justify-content:center;align-items:center;gap:10px;margin-top:16px;padding:14px 16px;font-size:13px;line-height:1.6;display:flex}.co-secure .icon{color:var(--ok)}.co-closed{background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 25%,transparent);border-radius:var(--radius);color:#5c430f;align-items:flex-start;gap:12px;margin-bottom:20px;padding:14px 16px;font-size:14px;line-height:1.6;display:flex}.co-closed .icon{color:var(--warn);flex:none;margin-top:2px}.co-closed b{margin-bottom:2px;display:block}.co-closed p{margin:0}.co-side{top:calc(20px + var(--header-h));position:sticky}.co-sum{background:var(--panel);border-radius:var(--radius);padding:24px}.co-line{color:var(--ink);padding:4px 0 28px;font-size:14px;line-height:1.6}.co-line+.co-line{padding-top:0}.co-line button{margin-left:8px;font-size:12px}.co-row{border-top:1px solid var(--line-2);color:var(--ink-2);padding:16px 0;font-size:14px}.co-row.total{padding-bottom:0}@media (width<=900px){.co{padding-top:8px}.co-grid{grid-template-columns:1fr;gap:24px}.co-side{order:-1;position:static}.co-sum{padding:18px 20px}.co-line{padding-bottom:12px}.co-row{padding:12px 0}.co-main{max-width:none}.co-login{width:100%}.bump-body,.bump-save{margin-left:0}.bump-img{width:96px}}.stu{background:var(--panel);min-height:calc(100vh - var(--header-h));margin:-40px 0 -96px;padding:40px 0 96px}.stu-head{margin-bottom:24px}.stu-head h1{margin-bottom:4px}.stu-head p{margin:0}.stu-head .tabs{background:color-mix(in srgb,var(--line) 70%,transparent)}.stu-grid{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:24px;display:grid}.stu-bar{align-items:center;gap:12px;margin-bottom:14px;display:flex}.stu-bar label{color:var(--muted);margin:0}.stu-cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;display:grid}.stu-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.stu-card.dim{opacity:.6}.stu-card .cover{aspect-ratio:16/9;background:var(--panel);display:block}.stu-card .cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.stu-card .body{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex}.stu-card .t{color:var(--ink);font-size:16px;font-weight:600;line-height:1.5}.stu-card .who{color:var(--ink-2);gap:8px;font-size:13px}.stu-card .pg,.stu-card .who{align-items:center;display:flex}.stu-card .pg{color:var(--muted);gap:10px;margin-top:auto;font-size:12px}.stu-card .pg .progress{flex:1}.btn.disabled{pointer-events:none;color:var(--muted)}.avatar.sm{-o-object-fit:cover;object-fit:cover;width:24px;height:24px;font-size:11px}.stu-filter{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);top:calc(20px + var(--header-h));padding:6px 20px;position:sticky}.stu-filter .fsec{padding:16px 0}.stu-filter .fsec+.fsec{border-top:1px solid var(--line)}.stu-filter .ft{margin-bottom:10px;font-size:13px;font-weight:600}.stu-filter label.inline{margin:0 0 6px;font-size:14px;display:flex}.search{position:relative}.search .icon{color:var(--muted);position:absolute;top:50%;left:12px}.search input{background:var(--panel);border-color:#0000;padding-left:36px}.switch{color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin:0;font-size:14px;font-weight:600;display:flex}.switch input{appearance:none;background:var(--line-2);cursor:pointer;border:0;border-radius:99px;flex:none;width:38px;height:22px;padding:0;transition:background .15s;position:relative}.switch input:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0003}.switch input:checked{background:var(--accent)}.switch input:checked:after{transform:translate(16px)}.switch input:focus{box-shadow:0 0 0 3px var(--accent-soft)}.stu-panel{max-width:860px}.stu-panel>h2:first-child{margin-top:8px}@media (width<=900px){.stu-grid{grid-template-columns:1fr}.stu-filter{order:-1;position:static}}.cls{--side-w:340px;--top-h:56px;min-height:100vh}.cls,.cls-top{background:var(--card)}.cls-top{z-index:30;height:var(--top-h);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:0 20px;display:flex;position:sticky;top:0}.cls-back{color:var(--ink);align-items:center;gap:8px;min-width:0;font-size:15px;font-weight:600;display:inline-flex}.cls-back span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cls-back:hover{color:var(--accent);text-decoration:none}.cls-right{flex:none;align-items:center;gap:14px;margin-left:auto;display:flex}.cls-pg{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:13px;display:inline-flex}.cls-pg .progress{width:120px}.cls-icon{color:var(--ink-2);border-radius:var(--radius);background:0 0;border:0;padding:6px}.cls-icon:hover{background:var(--line)}.cls-side{top:var(--top-h);width:var(--side-w);background:var(--panel);border-right:1px solid var(--line);z-index:20;flex-direction:column;transition:transform .2s;display:flex;position:fixed;bottom:0;left:0}.cls.side-closed .cls-side{transform:translate(-100%)}.cls-side-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:12px 12px 12px 20px;font-size:15px;line-height:1.5;display:flex}.cls-side-head b{flex:1;min-width:0}.cls-list{flex:1;padding-bottom:12px;overflow-y:auto}.cls-sec{border-bottom:1px solid var(--line)}.cls-sec summary{cursor:pointer;align-items:center;gap:10px;padding:14px 16px 14px 20px;font-size:15px;font-weight:500;list-style:none;display:flex}.cls-sec summary::-webkit-details-marker{display:none}.cls-sec summary>span:first-child{flex:1}.cls-sec .chev{color:var(--muted);transition:transform .2s}.cls-sec[open] .chev{transform:rotate(180deg)}.cls-sec ul{margin:0;padding:0 8px 10px;list-style:none}.cls-sec li .locked,.cls-sec li a{border-radius:var(--radius);color:var(--ink-2);align-items:flex-start;gap:12px;padding:10px 12px;font-size:14px;line-height:1.5;display:flex}.cls-sec li a:hover{background:color-mix(in srgb,var(--line) 60%,transparent);text-decoration:none}.cls-sec li a.cur{background:var(--accent-soft);color:var(--ink);font-weight:500}.cls-sec li .icon,.cls-sec li .locked{color:var(--muted)}.cls-sec li .icon{margin-top:1px}.cls-sec li a.cur .icon{color:var(--accent)}.cls-sec li .icon.done{color:var(--ok)}.cls-sec .lt{flex-direction:column;min-width:0;display:flex}.cls-sec .lt small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:400}.cls-user{border-top:1px solid var(--line);background:var(--panel);align-items:center;gap:10px;padding:12px 20px;font-size:14px;display:flex}.cls-user .avatar{background:var(--accent);color:#fff}.cls-main{margin-left:var(--side-w);transition:margin .2s;position:relative}.cls.side-closed .cls-main{margin-left:0}.cls-inner{max-width:960px;margin:0 auto;padding:32px 40px 96px}.cls-inner h1{margin-bottom:20px;font-size:calc(clamp(22px,2.4vw,28px))}.cls-open{position:absolute;top:16px;left:16px}.cls-scrim,.only-m{display:none}@media (width<=900px){.only-m{display:inline-flex}.only-d{display:none!important}.cls-top{gap:4px;padding:0 8px 0 4px}.cls-pg .progress{display:none}.cls-side{z-index:50;width:calc(min(86vw,340px));box-shadow:var(--shadow);top:0;transform:translate(-100%)}.cls.drawer-open .cls-side{transform:none}.cls.drawer-open .cls-scrim{z-index:45;background:#00000059;display:block;position:fixed;inset:0}.cls-main,.cls.side-closed .cls-main{margin-left:0}.cls-inner{padding:20px 16px 64px}.cls .player{border-radius:0;margin:0 -16px}.lp-bar .nav,.lp-bar>button{flex:100%}.lp-bar .nav{margin-left:0}.lp-bar .nav .btn{flex:1}}.cls-main{padding:0}.home-banner{margin:-40px 0 0}.home-banner img{-o-object-fit:cover;object-fit:cover;width:100%;max-height:520px;display:block}.home-h{text-align:center;margin:48px 0 28px}.home-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.hcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 1px 2px #191a1c0a}.hcard:hover{box-shadow:var(--shadow);text-decoration:none;transform:translateY(-2px)}.hcard .cover{aspect-ratio:16/9;background:var(--panel);position:relative}.hcard .cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.hcard .cover .sp-badge{z-index:2;margin:0;position:absolute;top:12px;right:12px}.hcard .body{flex-direction:column;flex:1;gap:8px;padding:16px 18px 18px;display:flex}.hcard h3{margin:0;font-size:18px}.hcard p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.65;display:-webkit-box;overflow:hidden}.hcard .who{color:var(--ink-2);gap:8px;font-size:13px}.hcard .foot,.hcard .who{align-items:center;display:flex}.hcard .foot{gap:10px;margin-top:auto;padding-top:10px}.hcard .foot .pr{font-variant-numeric:tabular-nums;font-weight:600}.hcard .foot .pr small{color:var(--muted);font-weight:400}.hcard .foot .btn{margin-left:auto}@media (width<=640px){.home-grid{grid-template-columns:1fr}.home-h{margin-top:32px}}.adm-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;padding-bottom:18px;display:flex}.adm-head h1{margin:0 0 4px;font-size:26px}.adm-head p{margin:0;font-size:14px}.adm-split{grid-template-columns:minmax(0,1fr) 240px;align-items:start;gap:24px;display:grid}.adm-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;display:grid}.acard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);flex-direction:column;display:flex;overflow:hidden}.acard:hover{border-color:var(--line-2);box-shadow:var(--shadow);text-decoration:none}.acard .cover{aspect-ratio:16/9;background:var(--panel)}.acard .cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.acard .cover .type-cover .tc-title{font-size:18px}.acard .body{flex-direction:column;flex:1;gap:8px;padding:12px 14px 14px;display:flex}.acard .t{font-size:15px;font-weight:600;line-height:1.5}.acard .meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin-top:auto;font-size:12px;display:flex}.acard .meta span{align-items:center;gap:4px;display:inline-flex}.adm-filter{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;position:sticky;top:68px}.adm-filter .ft{margin-bottom:8px;font-size:13px;font-weight:600}.adm-filter label.inline{margin:0 0 6px;font-size:14px;display:flex}@media (width<=900px){.adm-split{grid-template-columns:1fr}.adm-filter{order:-1;position:static}}.ce{grid-template-columns:170px minmax(0,1fr);align-items:start;gap:32px;display:grid}.ce-nav{flex-direction:column;gap:2px;font-size:14px;display:flex;position:sticky;top:68px}.ce-nav .gt{color:var(--muted);padding:14px 10px 4px;font-size:12px}.ce-nav .gt:first-child{padding-top:0}.ce-nav a{border-radius:var(--radius);color:var(--ink-2);padding:7px 10px}.ce-nav a:hover{background:var(--panel);text-decoration:none}.ce-nav a.on{background:var(--panel);color:var(--ink);font-weight:600}.ce-nav a.ext{color:var(--accent);align-items:center;gap:6px;margin-top:14px;display:inline-flex}.ce-main{min-width:0}.ce-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px}.ce-panel .field{margin-bottom:20px}.ce-cover{aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;border:1px solid var(--line);width:280px;margin:-6px 0 20px;display:block}.ce-cover,.prefixed{border-radius:var(--radius)}.prefixed{border:1px solid var(--line-2);background:#fff;align-items:stretch;display:flex;overflow:hidden}.prefixed:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.prefixed span{background:var(--panel);color:var(--muted);white-space:nowrap;border-right:1px solid var(--line);text-overflow:ellipsis;align-items:center;max-width:55%;padding:0 10px;font-size:13px;display:flex;overflow:hidden}.prefixed input{border:0;border-radius:0;min-width:0;box-shadow:none!important}.prefixed button{white-space:nowrap;border:0;border-left:1px solid var(--line);border-radius:0;flex:none;padding:0 14px}.ce-faq{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex-direction:column;gap:8px;margin-bottom:12px;padding:14px;display:flex}.ce-sw{border-bottom:1px solid var(--line);padding:14px 0;font-weight:500}.ce-sw span{flex-direction:column;display:flex}.ce-sw small{color:var(--muted);font-size:13px;font-weight:400}.ce-bar{z-index:5;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:16px;padding:14px 0;display:flex;position:sticky;bottom:0}.switch.sm input{width:32px;height:18px}.switch.sm input:after{width:12px;height:12px}.switch.sm input:checked:after{transform:translate(14px)}.ol{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.ol-head,.ol-les-row{grid-template-columns:40px minmax(0,1fr) 56px minmax(0,220px) auto;align-items:center;gap:12px;display:grid}.ol-head{background:var(--panel);color:var(--muted);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 56px minmax(0,220px) 96px;padding:10px 16px 10px 68px;font-size:12px;font-weight:600}.ol-sec+.ol-sec{border-top:8px solid var(--panel)}.ol-sec-row{background:color-mix(in srgb,var(--panel) 60%,#fff);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 16px;display:flex}.ol-title{background:0 0;border-color:#0000;flex:1;min-width:0;padding:6px 8px;font-weight:600}.ol-title:hover{border-color:var(--line-2);background:#fff}.ol-act{justify-content:flex-end;gap:6px;display:flex}.ol-les{border-bottom:1px solid var(--line)}.ol-les:last-of-type{border-bottom:0}.ol-les-row{padding:10px 16px}.ol-les.open .ol-les-row{background:var(--accent-soft)}.ol-name{text-align:left;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;justify-content:flex-start;padding:0;font-size:14px;display:block;overflow:hidden}.ol-name:hover{color:var(--accent);background:0 0}.ol-tags{flex-wrap:wrap;gap:4px;display:flex}.move{flex-direction:column;line-height:1;display:flex}.move .link{color:var(--muted);padding:1px 4px;font-size:10px}.move .link:hover{color:var(--ink);background:0 0}.move .link:disabled{opacity:.25}.ol-edit{background:var(--bg);border-top:1px solid var(--line);padding:18px 20px 20px 68px}.ol-empty{margin:0;padding:12px 16px 14px 68px}@media (width<=900px){.ce{grid-template-columns:1fr;gap:16px}.ce-nav{flex-flow:wrap;gap:4px;position:static}.ce-nav .gt,.ol-head,.ol-les-row .ol-tags,.ol-les-row .switch{display:none}.ce-nav a{background:var(--panel)}.ol-les-row{grid-template-columns:28px minmax(0,1fr) auto}.ol-edit,.ol-empty{padding-left:16px}.ce-panel{padding:18px}}.adm-main h1{font-size:26px}.adm-main h2{margin-top:36px;font-size:20px}.kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.kpi b{font:700 24px/1.3 var(--sans);white-space:nowrap}.about-info{border-top:1px solid var(--line);grid-template-columns:max-content 1fr;gap:8px 20px;margin:24px 0 0;padding-top:20px;font-size:15px;display:grid}.about-info dt{color:var(--muted)}.about-info dd{margin:0}
