*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font),Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.break-all{word-break:break-all}.border{border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #F7F8FA;--card: #FFFFFF;--border: #E6EAF0;--ink: #0F172A;--muted: #64748B;--accent: #1D6FF2;--accent-tint: #EEF4FF;--accent-dark: #1558C7;--ok: #16A34A;--ok-tint: #EAF7EF;--warn: #B45309;--warn-tint: #FEF3E2;--danger: #DC2626;--danger-tint: #FDECEC;--idle: #D97706;--r: 14px;--shadow: 0 1px 2px rgba(15,23,42,.05), 0 4px 16px rgba(15,23,42,.05);--font: "Inter"}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font),"Inter",sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.6}.mono{font-family:JetBrains Mono,monospace}button{font-family:inherit;cursor:pointer}a{color:inherit}.btn{border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}.btn.ghost{background:var(--bg);color:var(--ink);border:1px solid var(--border)}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.45;cursor:default}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow)}.topbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:0 20px;height:60px}.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px;letter-spacing:-.02em}.logo-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--accent),#5A9BFF);display:grid;place-items:center;color:#fff;font-weight:800;font-size:14px;overflow:hidden}.logo-mark img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.logo small{font-weight:500;color:var(--muted);font-size:11px;display:block;margin-top:-2px}.viewswitch{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:3px;margin-left:8px;gap:2px}.viewswitch button,.viewswitch a{border:none;background:transparent;padding:7px 16px;border-radius:8px;font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;display:inline-flex;align-items:center}.viewswitch button.on,.viewswitch a.on{background:#fff;color:var(--ink);box-shadow:var(--shadow)}.spacer{flex:1}.topbar-name{font-size:13.5px;font-weight:600;color:var(--ink)}.online-pill{display:inline-flex;align-items:center;gap:7px;background:var(--ok-tint);color:#14532d;font-weight:700;font-size:12.5px;padding:6px 12px;border-radius:99px;font-variant-numeric:tabular-nums}.online-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);animation:onlinePulse 2s infinite}@keyframes onlinePulse{0%{box-shadow:0 0 #16a34a73}70%{box-shadow:0 0 0 6px #16a34a00}to{box-shadow:0 0 #16a34a00}}.avatar{width:34px;height:34px;border-radius:50%;background:var(--accent-tint);color:var(--accent);display:grid;place-items:center;font-weight:700;font-size:13px;border:1px solid #D8E6FF;overflow:hidden;text-decoration:none;cursor:pointer}.avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.view{max-width:1280px;margin:0 auto;padding:24px 20px 60px}.learn-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.side{padding:14px;position:sticky;top:84px}.side h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:6px 10px 10px}.topic{border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:500;color:var(--ink);margin-bottom:2px;cursor:pointer;width:100%;text-align:left;background:none;border:none}.topic .num{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;font-size:11px;font-weight:700;background:var(--bg);color:var(--muted);flex:none}.topic.done{color:var(--muted)}.topic.done .num{background:var(--ok-tint);color:var(--ok)}.topic.now{background:var(--accent-tint);font-weight:600}.topic.now .num{background:var(--accent);color:#fff}.topic.lock{color:#b6bec9;cursor:default}.topic.lock .num{color:#b6bec9}.topic .pct{margin-left:auto;font-size:11px;color:var(--muted)}.sub{margin:4px 0 8px 22px;border-left:2px solid var(--border);padding-left:12px}.sub a{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);text-decoration:none;padding:6px 8px;border-radius:8px;cursor:pointer}.sub a.now{color:var(--accent);font-weight:600;background:var(--accent-tint)}.sub a.lock{color:#b6bec9;cursor:default}.check{color:var(--ok);display:inline-flex}.lesson-head{padding:22px 28px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.lesson-head-main{min-width:0}.crumb{font-size:12px;color:var(--muted);font-weight:500;margin-bottom:6px}.active-time{display:inline-flex;align-items:center;gap:4px;margin-left:10px;padding:2px 8px;border-radius:99px;background:var(--accent-tint);color:var(--accent);font-weight:600}.lesson-head h1{font-size:22px;font-weight:700;letter-spacing:-.02em}.progressbar{height:5px;background:var(--bg);border-radius:99px;margin:16px 28px 0;overflow:hidden}.progressbar i{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .4s}.content{position:relative;padding:26px 28px 10px;max-width:760px;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden}.content p{color:#334155;margin-bottom:16px;max-width:660px}.content h2{font-size:17px;font-weight:700;margin:6px 0 12px}.callout{background:var(--accent-tint);border:1px solid #D8E6FF;border-left:3px solid var(--accent);border-radius:10px;padding:14px 16px;font-size:14px;color:#1e3a8a;margin-bottom:16px;max-width:660px;display:flex;gap:8px}.media{background:#0f172a;border-radius:12px;max-width:660px;margin-bottom:16px;color:#fff;position:relative;overflow:hidden}.media.video{aspect-ratio:16/9;display:grid;place-items:center}.media.audio{display:flex;align-items:center;gap:14px;padding:14px 18px;background:#fff;border:1px solid var(--border);color:var(--ink)}.medialabel{position:absolute;top:10px;left:12px;font-size:11px;font-weight:600;background:#ffffff24;padding:3px 9px;border-radius:99px}.imgblock{max-width:660px;border-radius:12px;margin-bottom:16px;border:1px solid var(--border)}.pager{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding:16px 28px;margin-top:10px}.pageno{font-size:13px;color:var(--muted);font-weight:500}.reader-progress{position:sticky;top:60px;z-index:6;height:4px;background:var(--bg);overflow:hidden;border-radius:var(--r) var(--r) 0 0}.reader-progress i{display:block;height:100%;background:var(--accent);border-radius:0 99px 99px 0;transition:width .25s}.content.reader{-webkit-user-select:text;-moz-user-select:text;user-select:text}.watermark{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background-repeat:repeat}mark.hl{background:#f59e0b52;border-radius:3px;padding:0 1px;color:inherit;cursor:pointer}mark.hl:hover{background:#f59e0b8c}.sel-pop{position:fixed;z-index:60;transform:translate(-50%,-120%);background:var(--ink);color:#fff;border:none;border-radius:8px;padding:6px 11px;font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px;box-shadow:var(--shadow)}.pop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:59}.hl-pop{position:fixed;z-index:60;width:260px;max-width:90vw;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:10px}.hl-pop textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:7px 9px;font-family:inherit;font-size:13px;outline:none;resize:vertical;-webkit-user-select:text;-moz-user-select:text;user-select:text}.hl-pop textarea:focus{border-color:var(--accent)}.hl-pop-actions{display:flex;justify-content:space-between;margin-top:8px}.hl-pop-actions .btn{padding:5px 10px;font-size:12.5px}.marks-sep{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 10px 4px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);padding:18px}.stat-card .lbl{font-size:12px;color:var(--muted);font-weight:600}.stat-card .val{font-size:30px;font-weight:800;letter-spacing:-.02em;margin-top:6px}.stat-card .val small{font-size:14px;font-weight:600;color:var(--muted)}.stat-card.warn .val{color:var(--danger)}@media(max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.tbl tr.click{cursor:pointer}.tbl tr.click:hover{background:#fafbfd}.tbl tr.row-sel{background:var(--accent-tint)}.st{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;border-radius:99px;padding:4px 11px;white-space:nowrap}.st .d{width:7px;height:7px;border-radius:50%;background:#cbd5e1}.st.online{background:var(--ok-tint);color:#14532d}.st.online .d{background:var(--ok)}.st.idle{background:var(--warn-tint);color:var(--warn)}.st.idle .d{background:var(--idle)}.flag-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--danger);background:var(--danger-tint);border-radius:99px;padding:3px 10px;white-space:nowrap}.dash-bottom{display:grid;grid-template-columns:1fr 360px;gap:18px;margin-top:18px;align-items:start}@media(max-width:980px){.dash-bottom{grid-template-columns:1fr}}.timeline{padding:10px 22px 18px}.tl-item{display:flex;align-items:baseline;gap:12px;padding:9px 0 9px 18px;position:relative;border-left:2px solid var(--border)}.tl-item:last-child{border-left-color:transparent}.tl-dot{position:absolute;left:-5px;top:13px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.tl-body{flex:1;font-size:13.5px;color:#334155}.tl-who{font-weight:700;color:var(--ink)}.tl-time{font-size:12px;color:var(--muted);white-space:nowrap}.page-slot{position:relative;scroll-margin-top:80px}.slot-tools{position:absolute;top:4px;right:4px;z-index:3;display:flex;gap:4px}.slot-btn{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:#ffffffe6;color:var(--muted);display:grid;place-items:center}.slot-btn:hover{border-color:var(--accent);color:var(--accent)}.slot-btn.on{background:var(--accent-tint);border-color:#d8e6ff;color:var(--accent)}.note-box{position:relative;z-index:3;margin:6px 0 14px}.note-box textarea{width:100%;max-width:660px;border:1px solid var(--accent);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:13.5px;outline:none;resize:vertical;background:#fffef7;-webkit-user-select:text;-moz-user-select:text;user-select:text}.lesson-head-side{display:flex;align-items:center;gap:10px;flex:none;flex-wrap:wrap;justify-content:flex-end}.btn.ghost.on{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.learn-grid.reader-mode{grid-template-columns:minmax(0,1fr);max-width:900px;margin:0 auto}.learn-grid.reader-mode .side{display:none}.learn-grid.reader-mode .content{margin-left:auto;margin-right:auto}.learn-grid.reader-mode .lesson-head{max-width:760px;margin-left:auto;margin-right:auto;width:100%}.marks-wrap{position:relative}.marks-btn{padding:6px 12px;font-size:13px}.marks-dropdown{position:absolute;right:0;top:calc(100% + 6px);z-index:30;width:300px;max-height:340px;overflow:auto;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:6px}.marks-empty{color:var(--muted);font-size:13px;padding:10px}.marks-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:none;padding:8px 10px;border-radius:8px;font-size:13px;cursor:pointer}.marks-item:hover{background:var(--accent-tint)}.marks-ico{color:var(--accent);display:inline-flex;gap:3px;flex:none}.marks-lbl{font-weight:600;flex:none}.marks-note{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-skeleton{display:grid;place-items:center;min-height:200px;color:var(--muted)}.lesson-end{display:flex;flex-direction:column;align-items:center;gap:16px;padding:26px 0 10px;border-top:1px solid var(--border);margin-top:22px}.feedback{display:flex;flex-direction:column;align-items:center;gap:8px}.feedback-label{font-size:13px;color:var(--muted);font-weight:500}.stars{display:flex;gap:4px}.star{background:none;border:none;color:#cbd5e1;padding:2px;line-height:0}.star:hover,.star.on{color:#f59e0b}.feedback-comment{width:100%;max-width:440px;border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-family:inherit;font-size:13.5px;outline:none;resize:vertical;-webkit-user-select:text;-moz-user-select:text;user-select:text}.feedback-comment:focus{border-color:var(--accent)}.done-badge{display:inline-flex;align-items:center;gap:6px;color:var(--ok);font-weight:700}.content h1,.blockrow .body h1{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:8px 0 14px}.content h3,.blockrow .body h3{font-size:15px;font-weight:700;margin:14px 0 8px}.content ul,.content ol,.blockrow .body ul,.blockrow .body ol{margin:0 0 16px 1.4em;max-width:660px}.content ul,.blockrow .body ul{list-style:disc}.content ol,.blockrow .body ol{list-style:decimal}.content li,.blockrow .body li{margin-bottom:6px;color:#334155}.content a,.blockrow .body a{color:var(--accent);text-decoration:underline}.content strong,.blockrow .body strong{font-weight:700}.content blockquote,.blockrow .body blockquote{border-left:3px solid var(--accent);background:var(--accent-tint);border-radius:0 8px 8px 0;padding:10px 16px;margin:0 0 16px;color:#1e3a8a;max-width:660px}.content code,.blockrow .body code{font-family:JetBrains Mono,monospace;font-size:.88em;background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:1px 5px}.content pre,.blockrow .body pre{background:#0f172a;color:#e2e8f0;border-radius:10px;padding:14px 16px;overflow-x:auto;margin:0 0 16px;max-width:660px}.content pre code,.blockrow .body pre code{background:none;border:none;padding:0;color:inherit}.content img,.blockrow .body img{max-width:100%;border-radius:10px;margin:4px 0 16px;border:1px solid var(--border)}.content table,.blockrow .body table{border-collapse:collapse;width:100%;max-width:660px;margin:0 0 16px;font-size:13.5px}.content th,.content td,.blockrow .body th,.blockrow .body td{border:1px solid var(--border);padding:8px 12px;text-align:left}.content th,.blockrow .body th{background:var(--bg);font-weight:600}.content hr,.blockrow .body hr{border:none;border-top:1px solid var(--border);margin:20px 0}.rt{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}.rt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:3px;padding:8px 10px;border-bottom:1px solid var(--border);background:#fafbfd;position:sticky;top:60px;z-index:5}.rt-btn{border:1px solid transparent;background:transparent;border-radius:7px;min-width:30px;height:30px;padding:0 9px;font-size:13px;font-weight:600;color:var(--ink);display:inline-flex;align-items:center;justify-content:center}.rt-btn:hover{background:#fff;border-color:var(--border)}.rt-btn.on{background:var(--accent-tint);border-color:#d8e6ff;color:var(--accent)}.rt-sep{width:1px;height:20px;background:var(--border);margin:0 4px}.rt-content{max-height:60vh;overflow-y:auto}.rt-content .ProseMirror{padding:20px 22px;outline:none;min-height:280px;font-size:15px;line-height:1.7;color:#334155}.rt-content .ProseMirror:focus{outline:none}.rt-content .ProseMirror>*{max-width:680px}.rt-content .ProseMirror h2{font-size:18px;font-weight:700;letter-spacing:-.02em;margin:14px 0 10px;color:var(--ink)}.rt-content .ProseMirror h3{font-size:15px;font-weight:700;margin:12px 0 8px;color:var(--ink)}.rt-content .ProseMirror p{margin:0 0 12px}.rt-content .ProseMirror ul{list-style:disc;margin:0 0 12px 1.4em}.rt-content .ProseMirror ol{list-style:decimal;margin:0 0 12px 1.4em}.rt-content .ProseMirror li{margin-bottom:5px}.rt-content .ProseMirror a{color:var(--accent);text-decoration:underline}.rt-content .ProseMirror blockquote{border-left:3px solid var(--accent);background:var(--accent-tint);border-radius:0 8px 8px 0;padding:8px 14px;margin:0 0 12px;color:#1e3a8a}.rt-content .ProseMirror table{border-collapse:collapse;width:100%;margin:0 0 12px;font-size:13.5px}.rt-content .ProseMirror th,.rt-content .ProseMirror td{border:1px solid var(--border);padding:7px 10px;text-align:left}.rt-content .ProseMirror th{background:var(--bg);font-weight:600}.rt-content .ProseMirror p.is-editor-empty:first-child:before{content:"Írj vagy illessz be ide tartalmat…";color:#b6bec9;float:left;height:0;pointer-events:none}.rt-content .ProseMirror img,.content img,.blockrow .body img{max-width:100%;border-radius:10px;margin:6px 0 12px;border:1px solid var(--border);display:block}.rt-content .ProseMirror audio,.content audio{width:100%;max-width:560px;margin:6px 0 14px;display:block}.rt-content .ProseMirror video,.content video{width:100%;max-width:660px;border-radius:12px;margin:6px 0 14px;display:block;background:#000}.embed-wrap{position:relative;padding-bottom:56.25%;height:0;margin:6px 0 14px;border-radius:12px;overflow:hidden;max-width:660px;background:#000}.embed-wrap iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.rt-content .ProseMirror .ProseMirror-selectednode{outline:2px solid var(--accent);outline-offset:2px;border-radius:10px}.ed-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start}.tree{padding:10px}.t-topic{font-weight:600;font-size:13.5px;padding:9px 11px;border-radius:9px;display:flex;align-items:center;gap:8px}.t-lesson{font-size:13px;color:var(--muted);padding:7px 11px 7px 34px;border-radius:8px;display:flex;gap:8px;align-items:center;cursor:pointer}.t-lesson.on{background:var(--accent-tint);color:var(--accent);font-weight:600}.pill{font-size:10px;font-weight:700;border-radius:99px;padding:2px 8px;margin-left:auto}.pill.pub{background:var(--ok-tint);color:var(--ok)}.pill.draft{background:var(--bg);color:var(--muted)}.addbtn{width:calc(100% - 8px);margin:8px 4px 4px;border:1px dashed #C3CBD6;background:transparent;border-radius:9px;padding:9px;font-size:13px;color:var(--muted);font-weight:500}.addbtn:hover{border-color:var(--accent);color:var(--accent)}.blockrow{display:flex;gap:12px;padding:14px 18px;border-bottom:1px solid #F0F2F6;align-items:flex-start}.btag{font-size:10px;font-weight:700;border-radius:6px;padding:3px 8px;flex:none;margin-top:2px}.btag.text{background:var(--accent-tint);color:var(--accent)}.btag.image{background:#e0f2fe;color:#0369a1}.btag.audio{background:#f3e8ff;color:#7c3aed}.btag.video{background:#ffe8f0;color:#db2777}.btag.callout{background:var(--warn-tint);color:var(--warn)}.blockrow .body{flex:1;font-size:13.5px;color:#334155}.palette{display:flex;gap:8px;padding:14px 18px;flex-wrap:wrap}.palette button{border:1px solid var(--border);background:#fff;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:500;color:var(--ink)}.palette button:hover{border-color:var(--accent);color:var(--accent)}.editor-h2{font-size:15px;font-weight:700;padding:16px 18px;border-bottom:1px solid var(--border)}.frow{margin-bottom:16px}.frow label{display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}.frow input[type=text],.frow input[type=email],.frow input[type=password],.frow select,.frow textarea{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 13px;font-size:14px;font-family:inherit;outline:none;background:#fff}.frow input:focus,.frow select:focus,.frow textarea:focus{border-color:var(--accent)}.authwrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--bg)}.authcard{width:100%;max-width:400px;padding:32px 28px}.authcard .logo{justify-content:center;margin-bottom:6px}.auth-sub{text-align:center;color:var(--muted);font-size:13.5px;margin-bottom:22px}.alert{border-radius:10px;padding:10px 13px;font-size:13px;margin-bottom:14px}.alert.error{background:var(--danger-tint);color:var(--danger)}.alert.info{background:var(--accent-tint);color:var(--accent-dark)}.alert.ok{background:var(--ok-tint);color:#14532d}.tbl{width:100%;border-collapse:collapse;font-size:13.5px}.tbl th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;padding:10px 18px;border-bottom:1px solid var(--border);font-weight:600}.tbl td{padding:13px 18px;border-bottom:1px solid #F0F2F6;vertical-align:middle}.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;border-radius:99px;padding:4px 10px}.status.pending{background:var(--accent-tint);color:var(--accent)}.status.expired{background:var(--warn-tint);color:var(--warn)}.status.used{background:var(--ok-tint);color:var(--ok)}.center-msg{display:grid;place-items:center;min-height:60vh;color:var(--muted)}.sub a.topic-test{color:var(--accent);font-weight:600}.sub a.topic-test.done{color:var(--muted);font-weight:500}.sub a.topic-test:hover{background:var(--accent-tint)}.quiz-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f172a73;display:grid;place-items:start center;padding:40px 16px;overflow-y:auto}.quiz-card{width:100%;max-width:680px}.quiz-head{display:flex;align-items:flex-start;gap:12px;padding:20px 24px;border-bottom:1px solid var(--border)}.quiz-head h2{font-size:19px;font-weight:700;letter-spacing:-.02em}.iconbtn{border:1px solid var(--border);background:#fff;border-radius:9px;width:34px;height:34px;display:grid;place-items:center;color:var(--muted);margin-left:auto;flex:none}.iconbtn:hover{border-color:var(--accent);color:var(--accent)}.quiz-questions,.quiz-review{padding:8px 24px}.q-block{padding:16px 0;border-bottom:1px solid #F0F2F6}.q-block:last-child{border-bottom:none}.q-head{display:flex;align-items:flex-start;gap:8px;font-size:14.5px;margin-bottom:12px;line-height:1.5}.q-hint{font-size:11px;font-weight:600;color:var(--accent);background:var(--accent-tint);border-radius:99px;padding:2px 9px;margin-left:auto;flex:none;white-space:nowrap}.opts{display:flex;flex-direction:column;gap:8px}.opt{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;padding:11px 13px;font-size:14px;cursor:pointer;transition:border-color .15s,background .15s}.opt input{position:absolute;opacity:0;width:0;height:0}.opt .box{width:20px;height:20px;border-radius:50%;border:2px solid #CBD5E1;display:grid;place-items:center;color:#fff;flex:none}.opt .box.sq{border-radius:6px}.opt.sel{border-color:var(--accent);background:var(--accent-tint)}.opt.sel .box{background:var(--accent);border-color:var(--accent)}.opt:hover{border-color:var(--accent)}.opt.review{cursor:default}.opt.review:hover{border-color:var(--border)}.opt.review.correct{border-color:var(--ok);background:var(--ok-tint)}.opt.review.correct .box{background:var(--ok);border-color:var(--ok)}.opt.review.wrong{border-color:var(--danger);background:var(--danger-tint)}.opt.review.wrong .box{background:var(--danger);border-color:var(--danger)}.q-mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:#fff;flex:none;margin-top:1px}.q-mark.ok{background:var(--ok)}.q-mark.bad{background:var(--danger)}.q-expl{margin-top:10px;font-size:13px;color:#1e3a8a;background:var(--accent-tint);border-radius:10px;padding:10px 12px;display:flex;gap:8px;align-items:flex-start}.quiz-result{display:flex;align-items:center;gap:20px;padding:22px 24px;margin:0}.quiz-result .score{font-size:40px;font-weight:800;letter-spacing:-.03em;line-height:1}.quiz-result.ok .score{color:var(--ok)}.quiz-result.fail .score{color:var(--danger)}.quiz-result .badge{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:15px}.quiz-result.ok .badge{color:var(--ok)}.quiz-result.fail .badge{color:var(--danger)}.quiz-result .meta .sub{font-size:13px;color:var(--muted);margin-top:4px}.quiz-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border)}.t-test{border:1px solid var(--border);background:#fff;border-radius:7px;width:26px;height:26px;display:grid;place-items:center;color:var(--muted);flex:none}.t-test:hover{border-color:var(--accent);color:var(--accent)}.t-del:hover{border-color:var(--danger)!important;color:var(--danger)!important}.t-del-lesson{border:none;background:none;color:#b6bec9;padding:3px 5px;border-radius:6px;display:inline-flex;flex:none}.t-del-lesson:hover{color:var(--danger);background:var(--danger-tint)}.qe-config{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px 24px;background:#fafbfd;border-bottom:1px solid var(--border)}.qe-config .qe-hint{grid-column:1 / -1;font-size:12px;color:var(--muted)}.qe-list,.qe-form{padding:16px 24px 20px}.qe-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #F0F2F6}.qe-type{font-size:10px;font-weight:700;border-radius:6px;padding:3px 8px;background:var(--accent-tint);color:var(--accent);flex:none}.qe-text{flex:1;font-size:14px}@media(max-width:1080px){.learn-grid,.ed-grid{grid-template-columns:1fr}.side{position:static}}@media(max-width:680px){.topbar{flex-wrap:wrap;height:auto;padding:10px 12px;gap:8px}.logo small{display:none}.viewswitch{order:3;width:100%;justify-content:stretch}.viewswitch button{flex:1}.view{padding:14px 10px 80px}.lesson-head{padding:18px 18px 0}.content{padding:20px 18px 6px}.pager{padding:12px 14px}}@media print{body{display:none}}
