:root{--bg: #ffffff;--bg-soft: #f6f7f9;--panel: #ffffff;--line: #e6e8ec;--line-strong: #d3d7de;--text: #14161a;--muted: #6b7280;--accent: #2f6fed;--accent-dark: #2258c8;--accent-soft: #eaf1fe;--ok: #12855a;--ok-soft: #e7f6ef;--warn: #a26a00;--warn-soft: #fdf4e3;--err: #c62f2f;--err-soft: #fdecec;--shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 4px 12px rgba(16, 24, 40, .06);--shadow-lg: 0 8px 28px rgba(16, 24, 40, .12);--r: 10px}*{box-sizing:border-box}body{margin:0;background:var(--bg-soft);color:var(--text);font:15px/1.55 -apple-system,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0 0 12px;font-weight:650;letter-spacing:-.01em}h1{font-size:28px}h2{margin-top:30px;font-size:21px}h3{font-size:16px}.muted{color:var(--muted)}.small{font-size:13px}.spacer{flex:1}.center{min-height:100vh;display:grid;place-items:center;padding:20px}.app{min-height:100vh}.page{max-width:1060px;margin:0 auto;padding:24px 20px 72px}.topbar{display:flex;align-items:center;gap:14px;padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{font-weight:750;letter-spacing:-.02em;font-size:18px;color:var(--text);text-decoration:none}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}.card.auth{width:100%;max-width:400px}label{display:block;margin-bottom:14px;font-size:13px;color:var(--muted);font-weight:500}input,select,textarea{width:100%;margin-top:5px;padding:10px 12px;background:#fff;color:var(--text);border:1px solid var(--line-strong);border-radius:8px;font:inherit;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input::placeholder{color:#a6adba}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 16px;border-radius:8px;border:1px solid var(--line-strong);background:#fff;color:var(--text);font:inherit;font-weight:550;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,transform .06s,box-shadow .15s;box-shadow:0 1px 1px #1018280a}button:hover,.btn:hover{background:var(--bg-soft);border-color:var(--line-strong)}button:active,.btn:active{transform:translateY(1px)}button.primary,.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px #2f6fed4d}button.primary:hover,.btn.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}button.danger{background:var(--err);border-color:var(--err);color:#fff}button.danger:hover{background:#a82626;border-color:#a82626}button.ghost{background:transparent;border-color:transparent;color:var(--muted);box-shadow:none}button.ghost:hover{background:var(--bg-soft);color:var(--text)}button.link{background:none;border:none;color:var(--accent);padding:0;font-weight:500;box-shadow:none;text-align:left}button.link:hover{background:none;text-decoration:underline}button:disabled,.btn:disabled{opacity:.5;cursor:default;transform:none}.big-btn{font-size:16px;padding:13px 26px}.btnlink{display:inline-flex;align-items:center;justify-content:center;padding:11px 22px;border-radius:8px;background:var(--accent);color:#fff;text-decoration:none;font-weight:550;box-shadow:0 1px 2px #2f6fed4d}.btnlink:hover{background:var(--accent-dark)}.btnlink.small{padding:8px 15px;font-size:14px}.ghostlink{color:var(--muted);text-decoration:none;font-weight:500}.ghostlink:hover{color:var(--text)}.tabs{display:flex;gap:6px;margin-bottom:18px;flex-wrap:wrap}.tabs button{background:transparent;border-color:transparent;color:var(--muted);box-shadow:none}.tabs button:hover{background:var(--bg-soft);color:var(--text)}.tabs button.on{background:var(--accent-soft);border-color:transparent;color:var(--accent-dark)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0}.row.between{justify-content:space-between}.row.bottom{margin-top:auto}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.error{color:#8f1f1f;background:var(--err-soft);border:1px solid #f3c9c9;padding:10px 12px;border-radius:8px;margin:12px 0}.note{color:#0d6b48;background:var(--ok-soft);border:1px solid #bfe6d4;padding:10px 12px;border-radius:8px;margin:12px 0}.warn{color:#7a5000;background:var(--warn-soft);border:1px solid #f0dcb4;padding:10px 12px;border-radius:8px;margin:12px 0}.stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:15px 20px;min-width:140px;box-shadow:var(--shadow)}.stat .v{font-size:24px;font-weight:680;letter-spacing:-.02em}.stat .l{color:var(--muted);font-size:12px;margin-top:2px}.table{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px;background:var(--panel);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}.table th,.table td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line)}.table th{color:var(--muted);font-weight:550;font-size:12px;text-transform:uppercase;letter-spacing:.03em;background:var(--bg-soft)}.table tr:last-child td{border-bottom:none}.kv td{padding:7px 12px 7px 0}.big{font-size:28px;font-weight:680;letter-spacing:-.02em}.tag{font-size:11px;padding:3px 9px;border-radius:20px;font-weight:550;border:1px solid var(--line-strong);color:var(--muted);background:var(--bg-soft)}.tag.active,.tag.paid{color:#0d6b48;border-color:#bfe6d4;background:var(--ok-soft)}.tag.draft,.tag.pending,.tag.stale{color:#7a5000;border-color:#f0dcb4;background:var(--warn-soft)}.tag.hidden,.tag.cancelled{color:var(--muted)}.bar{height:7px;background:var(--bg-soft);border-radius:5px;overflow:hidden;margin:9px 0 4px}.bar div{height:100%;background:var(--accent);border-radius:5px}.lessons{list-style:none;padding:0;margin:12px 0}.lessons li{padding:9px 0;border-bottom:1px solid var(--line)}.lessons li:last-child{border-bottom:none}.lrow.dragging{opacity:.55;background:var(--bg-soft);border-radius:8px;box-shadow:0 2px 10px #0000001f}.drag-handle{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;color:var(--muted);font-size:18px;padding:0 6px;line-height:1;align-self:center}.drag-handle:active{cursor:grabbing}.lnum{display:inline-grid;place-items:center;width:26px;height:26px;background:var(--bg-soft);border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:650;color:var(--muted)}.lmove{display:flex;flex-direction:column;line-height:.8}.lmove button{font-size:15px;padding:0 3px}.ltitle{font-weight:550}.lesson-locked{color:var(--muted);cursor:default}.ledit{margin:10px 0 4px 34px;padding:14px;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r)}.ledit textarea{resize:vertical}.lfiles{margin:12px 0;padding-top:12px;border-top:1px solid var(--line)}.attach{list-style:none;padding:0;margin:10px 0 0}.attach li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;font-size:14px}.course-cover{display:flex;flex-direction:column;align-items:center;gap:8px}.course-cover img,.course-cover .ph{width:160px;height:120px;border-radius:10px;object-fit:cover}.course-cover .ph{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-dark);font-size:44px;font-weight:700}.course-head{display:flex;gap:24px;align-items:flex-start;margin:8px 0 20px}.course-photo{flex-shrink:0;width:300px;max-width:40vw}.course-photo img,.course-photo .ph{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--r);box-shadow:var(--shadow)}.course-photo .ph{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-dark);font-size:80px;font-weight:700}.course-info{flex:1;min-width:0}.course-info h1{font-size:30px}@media (max-width: 640px){.course-head{flex-direction:column}.course-photo{width:100%;max-width:none}}.upload{display:inline-block;margin:0;color:var(--accent);cursor:pointer;font-weight:550}.check{display:inline-flex;align-items:center;gap:7px;margin:0;cursor:pointer}.check input{width:auto;margin:0}video{width:100%;border-radius:var(--r);background:#000;margin:12px 0}.prose{white-space:pre-wrap;margin:16px 0}.task{background:var(--accent-soft);border-left:3px solid var(--accent);padding:13px 16px;border-radius:0 8px 8px 0;margin:16px 0}a{color:var(--accent)}.hero{padding:22px 0 10px}.hero h1{font-size:34px;line-height:1.18}.lead{font-size:17px;color:var(--muted);max-width:660px}.price{font-size:27px;font-weight:700;letter-spacing:-.02em}.author{color:var(--muted);font-size:13px}.program{padding-left:22px;margin:14px 0 26px}.program li{padding:7px 0}.program .module>ol{margin-top:7px}.program .module{margin-bottom:14px}.search{max-width:300px;margin:0}.empty{text-align:center;padding:36px 20px}.grid.tight{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;align-items:stretch}.ccard{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:box-shadow .18s,transform .18s,border-color .18s}.ccard:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--line-strong)}button.ccard{padding:0;font:inherit;text-align:left;cursor:pointer}button.ccard:hover{background:var(--panel)}.ccard .cover{position:relative;overflow:hidden;aspect-ratio:1 / 1;background:linear-gradient(135deg,#eef2f8,#dde5f2);display:grid;place-items:center}.ccard .cover img{width:100%;height:100%;object-fit:cover;display:block}.ccard .initial{font-size:54px;font-weight:700;color:#9fb0c9}.kind-badge{position:absolute;top:8px;left:8px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;background:#ffffffed;color:var(--muted);box-shadow:0 1px 2px #1018281a}.ccard .cbody{padding:13px 14px 14px;display:flex;flex-direction:column;flex:1;gap:6px}.ccard h3{margin:0;font-size:15.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ccard .author{font-size:13px}.ccard strong{font-size:16px}.cat{font-size:11px;color:var(--accent-dark);background:var(--accent-soft);padding:2px 8px;border-radius:20px;align-self:flex-start;font-weight:550}.clamp{margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.nav{display:flex;gap:4px;align-items:center}.nav button,.nav a{padding:7px 14px;border-radius:8px;font-size:15px;font-weight:550;background:transparent;border:1px solid transparent;color:var(--muted);text-decoration:none;box-shadow:none;cursor:pointer}.nav button:hover,.nav a:hover{background:var(--bg-soft);color:var(--text)}.nav button.on{background:var(--accent-soft);color:var(--accent-dark)}@media (max-width: 560px){.nav button,.nav a{padding:7px 10px;font-size:14px}.topbar{gap:8px;padding:10px 14px}}.listhead{margin:26px 0 14px;gap:14px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.chip{font-size:13px;padding:6px 13px;border-radius:20px;background:var(--panel);border:1px solid var(--line-strong);color:var(--muted);box-shadow:none;font-weight:500}.chip:hover{border-color:var(--accent);color:var(--text);background:var(--panel)}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.livedot{color:#d92d20;font-weight:650;font-size:13px}.livedot:before{content:"● ";animation:pulse 1.4s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.viewers{color:var(--muted);font-size:14px;font-weight:550}.wcard .cbody{gap:8px}.live-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}@media (max-width: 900px){.live-layout{grid-template-columns:minmax(0,1fr)}}.stage{position:relative;aspect-ratio:16 / 9;background:#0b0d11;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}.stage video{width:100%;height:100%;object-fit:contain;margin:0;border-radius:0}.stage video.off{display:none}.stage-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0b0d11d1;text-align:center;padding:20px;color:#fff}.stage-overlay .muted{color:#c2c8d2}.controls{margin:14px 0 20px}.pulse{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;color:var(--muted);background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;padding:9px 12px;margin-bottom:16px}.pulse b{color:var(--text)}.diag{margin:12px auto;font-size:13px;text-align:left;color:#dfe4ec}.diag td{padding:3px 10px 3px 0}.diag td b{color:#fff}.offer{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fffffff7;border:1px solid var(--accent);border-radius:var(--r);padding:13px 16px;box-shadow:var(--shadow-lg);animation:offer-in .35s ease-out}@keyframes offer-in{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}.offer-text{flex:1;min-width:170px}.offer strong{font-size:17px}.countdown{color:#c2410c;font-size:13px;font-weight:650;margin-top:4px}.countdown.out{color:var(--muted);font-weight:400}.chat{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:560px;overflow:hidden}.chat-head{display:flex;align-items:center;gap:10px;padding:12px 15px;border-bottom:1px solid var(--line);background:var(--bg-soft)}.chat-box{flex:1;min-height:220px;overflow-y:auto;padding:12px 15px}.msg{padding:6px 0;font-size:14px;display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}.msg .who{color:var(--muted);font-size:13px;font-weight:550}.msg.host .who{color:var(--accent)}.msg.rejected{opacity:.45}.msg .mod{display:flex;gap:9px;font-size:12px}.chat-send{display:flex;gap:8px;padding:12px 15px;border-top:1px solid var(--line)}.chat-send input{margin:0}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#1018288c;display:grid;place-items:center;padding:20px;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-body{max-width:440px;width:100%;margin:0;box-shadow:var(--shadow-lg)}.pay{text-align:center}.pay-sum{font-size:32px;font-weight:700;letter-spacing:-.02em;margin-bottom:16px}.pay-qr{display:inline-block;padding:12px;background:#fff;border:1px solid var(--line);border-radius:var(--r);line-height:0}.pay-open{margin:16px 0 6px;width:100%}.pay-phone{font-size:19px;font-weight:650;margin-top:6px}.pay-ref{margin:18px 0 10px;display:flex;flex-direction:column;align-items:center;gap:6px}.pay-ref .code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:20px;font-weight:700;letter-spacing:.1em;padding:9px 18px;background:var(--bg-soft);border:1px dashed var(--line-strong);border-radius:8px;box-shadow:none}.pay-ref .code:hover{background:var(--accent-soft);border-color:var(--accent)}.curve{display:flex;align-items:flex-end;gap:2px;height:150px;background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;padding:10px;margin:14px 0}.curve-bar{flex:1;min-width:2px;background:var(--accent);border-radius:3px 3px 0 0;min-height:1px}.curve-bar:hover{background:var(--accent-dark)}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}@media (max-width: 860px){.lesson-layout{grid-template-columns:minmax(0,1fr)}}.lesson-main h1{font-size:24px}.files{list-style:none;padding:0}.files li{padding:6px 0}.buy-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:20px;padding:18px;border:1px solid var(--accent);background:var(--accent-soft);border-radius:var(--r)}.tcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:var(--shadow);position:sticky;top:76px}.tcard-head{display:flex;gap:12px;align-items:center}.tavatar{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0}.tavatar.ph{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-dark);font-size:24px;font-weight:700}.tname{font-weight:650}.theadline{color:var(--muted);font-size:13px}.tbio{margin-top:12px;white-space:pre-wrap;font-size:14px;color:var(--text)}.tcard.compact{position:static}.pf-photo{display:flex;flex-direction:column;align-items:center;gap:10px}.pf-photo img,.pf-photo .ph{width:110px;height:110px;border-radius:50%;object-fit:cover}.pf-photo .ph{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-dark);font-size:40px;font-weight:700}.qa{margin-top:28px}.qa-box{max-height:380px;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.qmsg{display:flex;flex-direction:column;max-width:78%}.qmsg.mine{align-self:flex-end;align-items:flex-end}.qmsg.trainer{align-self:flex-start}.qmsg .bubble{padding:9px 13px;border-radius:14px;font-size:14px;line-height:1.45}.qmsg.mine .bubble{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.qmsg.trainer .bubble{background:var(--bg-soft);border:1px solid var(--line);border-bottom-left-radius:4px}.qwho{font-size:11px;color:var(--muted);margin-top:3px}.qa-send{display:flex;gap:8px;margin-top:12px}.qa-send input{margin:0}.bot-switch{display:flex;align-items:center;gap:14px;width:100%;padding:16px 20px;border-radius:14px;cursor:pointer;text-align:left;border:2px solid transparent;transition:background .15s,border-color .15s}.bot-switch.on{background:#e6f7ef;border-color:#22a06b}.bot-switch.off{background:var(--bg-soft);border-color:var(--line)}.bot-switch .knob{flex:none;width:52px;height:30px;border-radius:999px;position:relative;transition:background .15s}.bot-switch.on .knob{background:#22a06b}.bot-switch.off .knob{background:#c3c9c6}.bot-switch .knob:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px #0000004d}.bot-switch.on .knob:after{transform:translate(22px)}.bot-switch-text{display:flex;flex-direction:column;gap:2px;flex:1}.bot-switch-text b{font-size:17px}.bot-switch.on .bot-switch-text b{color:#157a4f}.bot-switch-text span{font-size:13px;color:var(--muted)}.bot-switch-state{flex:none;font-weight:800;font-size:15px;letter-spacing:.5px}.bot-switch.on .bot-switch-state{color:#22a06b}.bot-switch.off .bot-switch-state{color:var(--muted)}.bot-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;align-items:start}@media (max-width: 820px){.bot-grid{grid-template-columns:1fr}}.bot-chat{position:sticky;top:12px}.bot-box{min-height:220px;max-height:420px;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px}.kb-preview{white-space:pre-wrap;font-size:13px;line-height:1.5;margin-top:10px;padding:12px;background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;max-height:320px;overflow-y:auto;color:var(--text)}.ai-prov{padding:12px 0;border-bottom:1px solid var(--line)}.ai-prov:last-of-type{border-bottom:none}.ai-pick{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:8px}.ai-pick input[type=radio]{margin:0}.ai-prov input[type=password]{width:100%;margin:0;font-family:monospace}.ai-pick .dot{width:9px;height:9px;border-radius:50%;display:inline-block}.ai-pick .dot.ok{background:#22a06b}.ai-pick .dot.off{background:var(--line);border:1px solid #cbb}.ig-input{display:flex;align-items:center;gap:6px}.ig-input span{color:var(--muted);font-weight:600}.ig-input input{margin:0;flex:1}.tinsta{display:inline-block;margin-top:8px;font-size:14px;color:var(--accent);text-decoration:none}.tinsta:hover{text-decoration:underline}.chan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:8px;align-items:start}.chan-grid .card{margin-top:0}.tg-steps{margin:8px 0;padding-left:20px}.tg-steps li{margin:3px 0}.lbl-sm{display:block;font-size:13px;margin-top:8px}.dlg-grid{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:14px;align-items:start}@media (max-width: 720px){.dlg-grid{grid-template-columns:1fr}}.dlg-list{display:flex;flex-direction:column;gap:8px;max-height:460px;overflow-y:auto}.dlg-item{text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);cursor:pointer}.dlg-item.on{border-color:var(--accent);background:var(--bg-soft)}.dlg-last{color:var(--muted);font-size:13px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dlg-view{min-height:200px}.wa-connect{text-align:center}.wa-qr{width:240px;height:240px;image-rendering:pixelated;border:1px solid var(--line);border-radius:12px;background:#fff;padding:8px;margin:8px auto;display:block}.qthread{cursor:pointer;transition:border-color .15s}.qthread:hover{border-color:var(--accent)}.qthread .last{margin-top:6px;color:var(--muted);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:10px;background:var(--err);color:#fff;font-size:11px;font-weight:650}.lessons.compact li{padding:6px 0}.copylink input{margin:0;font-size:13px}.share-earn{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border:1px solid var(--ok);background:var(--ok-soft)}
