:root{--orange:#f97316;--orange-dark:#c2410c;--orange-soft:#fff1e8;--black:#111111;--muted:#6b7280;--line:#e7e7e7;--white:#fff;--bg:#f7f7f5;--green:#16803a;--red:#b42318;--shadow:0 18px 50px rgba(17,17,17,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--black);background:var(--bg);line-height:1.55}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}
.splash,.auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 80% 10%,#fed7aa 0,transparent 32%),linear-gradient(135deg,#fff 0,#fff7ed 50%,#111 50%,#111 100%)}.splash{text-align:center}.brand-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--orange);color:white;font-weight:900;letter-spacing:-2px;box-shadow:0 12px 28px rgba(249,115,22,.35)}
.auth-card{width:min(460px,100%);padding:36px;border-radius:28px;background:rgba(255,255,255,.97);box-shadow:var(--shadow)}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:900;color:var(--orange-dark)}h1,h2,h3{line-height:1.15;margin-top:0}h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.045em}.auth-card h1{font-size:2.2rem}.muted{color:var(--muted)}.error,.success{padding:11px 13px;border-radius:12px;margin:12px 0;font-weight:700}.error{background:#fff0ed;color:var(--red)}.success{background:#ecfdf3;color:var(--green)}
.field{display:grid;gap:7px;margin:14px 0}.field label{font-weight:800;font-size:.88rem}.field input,.field textarea,.field select,.inline-form input,.inline-form select{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:white;color:#111;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(249,115,22,.13)}textarea{min-height:110px;resize:vertical}
.btn{border:0;border-radius:12px;padding:11px 16px;background:var(--black);color:white;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn:hover{transform:translateY(-1px)}.btn.orange{background:var(--orange)}.btn.light{background:white;color:var(--black);border:1px solid var(--line)}.btn.danger{background:#fff0ed;color:var(--red)}.btn.small{padding:8px 11px;font-size:.85rem}.btn.icon-btn{min-width:36px;padding-left:9px;padding-right:9px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.full{width:100%}
.shell{min-height:100vh}.topbar{height:72px;background:#111;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,54px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-weight:900}.brand .brand-mark{width:40px;height:40px;border-radius:12px;font-size:.85rem;box-shadow:none}.top-actions{display:flex;align-items:center;gap:10px}.user-pill{font-size:.86rem;color:#ddd}.layout{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 72px)}.sidebar{background:white;border-right:1px solid var(--line);padding:26px 18px}.nav-btn{width:100%;padding:12px 14px;margin-bottom:6px;border:0;border-radius:12px;text-align:left;background:transparent;font-weight:800;color:#555}.nav-btn:hover,.nav-btn.active{background:var(--orange-soft);color:var(--orange-dark)}.main{padding:clamp(22px,4vw,52px);max-width:1400px;width:100%;margin:0 auto}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:26px}.page-head h1{margin-bottom:6px}.page-head p{margin:0}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.stat,.card{background:white;border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 26px rgba(17,17,17,.04)}.stat{padding:20px}.stat strong{display:block;font-size:2rem;line-height:1}.stat span{color:var(--muted);font-size:.88rem}.card{padding:22px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}.course-card{overflow:hidden;padding:0}.course-cover{height:170px;background:radial-gradient(circle at 80% 25%,rgba(255,255,255,.75) 0 8%,transparent 9%),linear-gradient(130deg,var(--orange),#fb923c 55%,#111 56%);padding:22px;color:white;display:flex;align-items:end}.course-cover h3{margin:0;font-size:1.55rem}.course-body{padding:20px}.progress-track{height:9px;border-radius:99px;background:#ececec;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--orange);border-radius:inherit}.progress-row{display:flex;justify-content:space-between;margin:10px 0 6px;font-size:.84rem;font-weight:800}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--orange-soft);color:var(--orange-dark);font-size:.76rem;font-weight:900}.badge.dark{background:#111;color:#fff}.badge.green{background:#ecfdf3;color:var(--green)}.diploma-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.diploma-card{position:relative;display:grid;gap:28px;min-height:310px;padding:26px;overflow:hidden;border:1px solid #fed7aa;border-radius:22px;background:linear-gradient(145deg,#fff 0,#fffaf6 100%);box-shadow:0 14px 36px rgba(17,17,17,.07)}.diploma-card:after{content:'';position:absolute;right:-45px;bottom:-55px;width:150px;height:150px;border:18px solid rgba(249,115,22,.09);border-radius:50%}.diploma-card-top,.diploma-card-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:14px}.diploma-monogram{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:#111;color:#fff;font-weight:950;letter-spacing:.08em;box-shadow:inset 0 -4px 0 var(--orange)}.diploma-card h2{margin:7px 0 8px;font-size:1.55rem}.diploma-card p{margin:0}.diploma-card-footer{align-items:flex-end;border-top:1px solid #fed7aa;padding-top:18px}.diploma-card-footer small{color:var(--muted);font-size:.75rem}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:white}table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#fafafa}tr:last-child td{border-bottom:0}.inline-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:end}.section{margin:28px 0}.section-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.section-title h2,.section-title h3{margin:0}
.course-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:24px}.course-nav{background:white;border:1px solid var(--line);border-radius:20px;padding:16px;height:max-content;position:sticky;top:96px}.module-nav{margin:8px 0 16px}.module-nav h3{font-size:.86rem;margin:0 0 8px;color:var(--orange-dark)}.lesson-link{display:flex;width:100%;align-items:center;gap:9px;padding:9px 10px;border:0;border-radius:9px;background:transparent;text-align:left;font-size:.86rem}.lesson-link:hover,.lesson-link.active{background:var(--orange-soft)}.check{width:20px;height:20px;border-radius:50%;border:1px solid #ccc;display:grid;place-items:center;flex:0 0 auto;font-size:.7rem}.check.done{background:var(--orange);border-color:var(--orange);color:white}.lesson{background:white;border:1px solid var(--line);border-radius:24px;padding:clamp(22px,5vw,48px);min-height:600px}.lesson-meta{color:var(--orange-dark);font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.lesson h1{font-size:clamp(2rem,5vw,3.3rem)}.content-block{margin:26px 0}.content-block h2{font-size:1.55rem}.callout{padding:20px;border-left:5px solid var(--orange);background:var(--orange-soft);border-radius:0 16px 16px 0}.media-frame{position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#111}.media-frame iframe,.media-frame img{width:100%;height:100%;border:0;object-fit:cover}.image-error{width:100%;height:100%;padding:30px;place-content:center;text-align:center;color:white}.image-error:not([hidden]){display:grid}.graphic{padding:22px;border-radius:18px;background:#111;color:white}.graphic-row{display:grid;grid-template-columns:120px 1fr 45px;gap:10px;align-items:center;margin:12px 0}.graphic-bar{height:12px;background:#333;border-radius:99px;overflow:hidden}.graphic-bar span{display:block;height:100%;background:var(--orange)}.quiz{margin-top:34px;padding:24px;border-radius:20px;background:#fff7ed;border:1px solid #fed7aa}.quiz fieldset{border:0;border-top:1px solid #fed7aa;padding:18px 0 4px;margin:18px 0}.option{display:flex;gap:9px;margin:9px 0;padding:11px;background:white;border:1px solid #eee;border-radius:10px}.quiz-feedback{padding:12px 14px;margin:9px 0;border-radius:12px;background:white;border-left:4px solid var(--red)}.quiz-feedback.correct{border-left-color:var(--green)}.quiz-feedback p{margin:5px 0 0}.lesson-footer{display:flex;justify-content:space-between;gap:12px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.builder-module{border:1px solid var(--line);background:white;border-radius:18px;padding:18px;margin:14px 0}.builder-lesson{border-left:3px solid var(--orange);padding:12px 0 12px 16px;margin:12px 0}.builder-actions,.course-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.preview-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 17px;margin-bottom:20px;border:1px solid #fed7aa;border-radius:14px;background:var(--orange-soft);color:var(--orange-dark)}.preview-banner span{font-size:.9rem}.block-chip{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 11px;border-radius:10px;background:#f5f5f5;margin:7px 0;font-size:.85rem}.block-form{padding:16px;background:#fff7ed;border-radius:14px;margin-top:10px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rich-text-panel{padding:14px;border:1px solid #fed7aa;border-radius:14px;background:white;margin:14px 0}.rich-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;background:#f7f7f5}.rich-toolbar label{display:flex;align-items:center;gap:7px;font-size:.84rem;font-weight:800}.rich-toolbar select{border:1px solid var(--line);border-radius:8px;padding:7px;background:white}.rich-toolbar input[type=color]{width:42px;height:36px;padding:3px;border:1px solid var(--line);border-radius:8px;background:white;cursor:pointer}.rich-bold{min-width:42px;font-size:1rem}.rich-editor{min-height:180px;padding:15px;border:1px solid var(--line);border-radius:0 0 12px 12px;background:white;outline:none;line-height:1.65;white-space:normal}.rich-editor:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(249,115,22,.13)}.rich-editor:empty:before{content:'Escribe aquí el texto de la lección…';color:#9ca3af}.formatted-text{line-height:1.65}.formatted-text>div{margin:.7em 0}.empty{padding:35px;text-align:center;border:1px dashed #ccc;border-radius:16px;color:var(--muted)}.empty.compact{padding:18px}.quiz-builder{border-top:2px solid #111;margin-top:22px;padding-top:20px}.quiz-builder .eyebrow{margin-bottom:5px}.quiz-settings{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border-radius:14px;background:var(--orange-soft);margin:12px 0}.quiz-settings>label{font-weight:850}.quiz-settings>div:first-of-type{display:flex;align-items:center;gap:8px}.quiz-settings input{width:80px;border:1px solid var(--line);border-radius:10px;padding:8px;background:white}.quiz-settings [data-message]{width:100%}.question-list{display:grid;gap:9px;margin:14px 0}.question-chip{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fafafa}.question-chip>div:first-child{display:grid;gap:5px}.question-chip small{color:var(--green)}.question-form{padding:18px;background:#fff7ed;border:1px solid #fed7aa;border-radius:16px;margin-top:14px}.quiz-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.form-help{font-size:.83rem}.form-actions{justify-content:flex-start}
.toolbar-group{display:flex;align-items:center;gap:5px}.toolbar-colors{display:flex;align-items:center;gap:6px;font-size:.84rem;font-weight:800}.color-swatch{width:26px;height:26px;border:2px solid white;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #cfcfcf;cursor:pointer}.color-swatch:hover{transform:scale(1.1)}.custom-color{padding-left:3px}.block-context-help{padding:12px 14px;margin:-2px 0 14px;border-left:4px solid var(--orange);border-radius:0 10px 10px 0;background:#fff;color:#444;font-size:.88rem}.block-context-help code,.builder-guide code{padding:2px 5px;border-radius:5px;background:#fff1e8;color:var(--orange-dark);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.builder-guide{margin:18px 0 24px;padding:22px;border-radius:20px;background:#111;color:white}.builder-guide h2{margin-bottom:5px}.builder-guide>.muted,.builder-guide>div>.muted{color:#c8c8c8}.builder-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.builder-guide article{padding:16px;border:1px solid #343434;border-radius:15px;background:#1b1b1b}.builder-guide article h3{margin:8px 0}.builder-guide article p{margin:8px 0;color:#ddd;font-size:.9rem}.builder-guide article>code{display:block;margin-top:10px;white-space:normal}.guide-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--orange);color:white;font-weight:900}.data-table-block{padding:4px 0}.data-table-block>h2{margin-bottom:7px}.data-table-scroll{overflow:auto;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 28px rgba(17,17,17,.06)}.data-table{min-width:560px;background:white}.data-table th{padding:14px 16px;background:#111;color:white;text-transform:none;letter-spacing:0;font-size:.9rem}.data-table td{padding:13px 16px}.data-table tbody tr:nth-child(even){background:#fff7ed}.data-table tbody tr:hover{background:#ffedd5}.data-table tbody td:first-child{font-weight:800;color:var(--orange-dark)}.formatted-text ul,.formatted-text ol{padding-left:1.5em}.formatted-text li{margin:.35em 0}
.builder-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.builder-page-head h1{margin-bottom:6px}.builder-page-head p{margin-top:0}.builder-course-switcher{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:15px 18px;margin-bottom:18px;border:1px solid var(--line);border-radius:18px;background:white;box-shadow:0 8px 24px rgba(17,17,17,.04)}.builder-course-switcher .field{width:min(460px,100%);margin:0}.builder-top-actions{display:flex;gap:9px;flex-wrap:wrap}.builder-course-overview{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:28px;align-items:center;padding:26px 28px;margin-bottom:18px;border-radius:24px;background:linear-gradient(120deg,#111 0,#1c1c1c 70%,#2a190f 100%);color:white;box-shadow:var(--shadow)}.builder-course-copy h2{margin:12px 0 7px;font-size:clamp(1.45rem,3vw,2.1rem)}.builder-course-copy p{margin:0;color:#c9c9c9}.builder-stats{display:grid;grid-template-columns:repeat(4,minmax(78px,1fr));gap:8px}.builder-stats div{min-width:88px;padding:14px 12px;text-align:center;border:1px solid #383838;border-radius:15px;background:rgba(255,255,255,.055)}.builder-stats strong{display:block;color:var(--orange);font-size:1.55rem;line-height:1}.builder-stats span{display:block;margin-top:6px;color:#d7d7d7;font-size:.75rem}.builder-guide{padding:0;margin:0 0 26px;overflow:hidden;border:1px solid #2f2f2f;border-radius:18px;background:#111;color:white}.builder-guide summary{display:flex;align-items:center;gap:12px;padding:15px 18px;cursor:pointer;list-style:none}.builder-guide summary::-webkit-details-marker{display:none}.builder-guide summary>span:nth-child(2){display:grid;flex:1}.builder-guide summary strong{font-size:.95rem}.builder-guide summary small{color:#bdbdbd}.builder-guide .guide-chevron{font-size:1.35rem;transition:transform .2s}.builder-guide[open] .guide-chevron{transform:rotate(180deg)}.builder-guide-grid{padding:0 16px 16px;margin-top:0}.builder-outline-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:30px 0 12px}.builder-outline-head h2{margin:0}.builder-outline-head p{margin-bottom:5px}.builder-outline-head>span{font-size:.88rem}.builder-outline{display:grid;gap:14px}.builder-module{padding:0;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:white;box-shadow:0 8px 24px rgba(17,17,17,.045);transition:border-color .2s,box-shadow .2s}.builder-module.is-open{border-color:#f5b27f;box-shadow:0 12px 32px rgba(249,115,22,.09)}.builder-module-head,.builder-lesson-head{display:flex;align-items:stretch}.builder-module-toggle,.builder-lesson-toggle{display:flex;align-items:center;gap:14px;min-width:0;flex:1;padding:18px;border:0;background:transparent;text-align:left;color:inherit}.builder-module-toggle:hover,.builder-lesson-toggle:hover{background:#fffaf6}.builder-number{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:var(--orange);color:white;font-size:1.15rem;font-weight:950;box-shadow:0 7px 16px rgba(249,115,22,.25)}.builder-title{display:grid;min-width:0;flex:1;gap:2px}.builder-title small{color:var(--orange-dark);font-size:.65rem;font-weight:950;letter-spacing:.13em}.builder-title strong{overflow:hidden;font-size:1.06rem;text-overflow:ellipsis;white-space:nowrap}.builder-title>span{color:var(--muted);font-size:.78rem}.builder-chevron{margin-left:auto;color:var(--muted);font-size:1.35rem;transition:transform .2s}.is-open>.builder-module-head .builder-chevron,.builder-lesson.is-open>.builder-lesson-head .builder-chevron{transform:rotate(180deg)}.builder-module-actions,.builder-lesson-actions{display:flex;align-items:center;gap:6px;padding:12px 16px 12px 0}.builder-module-body{padding:0 18px 20px;border-top:1px solid var(--line);background:#fafaf9}.builder-module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 2px 12px}.builder-module-toolbar p{display:grid;margin:0}.builder-module-toolbar span{color:var(--muted);font-size:.8rem}.builder-lesson{padding:0;margin:10px 0;overflow:hidden;border:1px solid #e2e2e2;border-left:1px solid #e2e2e2;border-radius:17px;background:white}.builder-lesson.is-open{border-color:#f6b98d}.builder-lesson-toggle{padding:13px 14px}.lesson-order{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #fed7aa;border-radius:11px;background:var(--orange-soft);color:var(--orange-dark);font-weight:950}.builder-lesson-actions{padding:9px 12px 9px 0}.builder-lesson-body{padding:16px;border-top:1px solid var(--line);background:#fffdfb}.lesson-content-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.lesson-content-head p{margin:2px 0 0;font-size:.82rem}.block-list{display:grid;gap:8px}.block-chip{padding:11px 12px;margin:0;border:1px solid #ececec;border-radius:13px;background:white}.block-chip:hover{border-color:#fed7aa;background:#fffaf6}.block-kind{display:flex;align-items:center;gap:11px;min-width:0}.block-kind>i{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#111;color:white;font-size:.76rem;font-style:normal;font-weight:900}.block-kind>span{display:grid;min-width:0}.block-kind small{color:var(--orange-dark);font-size:.65rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.block-kind strong{max-width:520px;overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.builder-empty-blocks{padding:19px;border:1px dashed #d4d4d4;border-radius:13px;background:#fafafa;color:var(--muted);font-size:.86rem;text-align:center}.builder-lesson .block-form{border:1px solid #fed7aa;box-shadow:0 12px 26px rgba(17,17,17,.07)}.builder-module .quiz-builder{margin-top:18px;padding:20px 2px 0}.builder-module .quiz-settings{border:1px solid #fed7aa}.builder-module .question-chip{background:white}.builder-module .question-form{background:white}.btn.danger.icon-btn{font-size:1.15rem}.builder-module-body[hidden],.builder-lesson-body[hidden]{display:none}
.course-cover{position:relative;padding:0;isolation:isolate;overflow:hidden}.course-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.course-cover-overlay{display:flex;align-items:flex-end;width:100%;height:100%;padding:22px;background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,.82) 100%)}.course-cover:not(.has-image) .course-cover-overlay{background:transparent}.builder-course-overview{grid-template-columns:minmax(230px,300px) minmax(0,1fr);align-items:stretch}.builder-course-info{display:grid;align-content:center;gap:22px}.builder-cover-editor{display:grid;align-content:start;gap:12px}.builder-cover-preview{aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden;border:1px solid #424242;border-radius:17px;background:linear-gradient(135deg,var(--orange),#fb923c 58%,#2a2a2a 59%);text-align:center}.builder-cover-preview>img{width:100%;height:100%;object-fit:cover}.builder-cover-preview>span{display:grid;gap:3px;padding:18px}.builder-cover-preview small{color:#eee}.builder-cover-editor form{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.builder-cover-editor form>small{width:100%;color:#bdbdbd;font-size:.72rem}.builder-cover-editor [data-message]{width:100%;margin:0}.cover-file-label{position:relative;max-width:100%;padding:8px 11px;overflow:hidden;border:1px solid #555;border-radius:10px;background:#292929;color:white;cursor:pointer;font-size:.82rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.cover-file-label:hover{border-color:var(--orange)}.cover-file-label input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
body.course-fullscreen{overflow:auto;background:var(--bg)}body.course-fullscreen .topbar,body.course-fullscreen .sidebar{display:none}body.course-fullscreen .layout{display:block;min-height:100vh}body.course-fullscreen .main{max-width:1800px;padding:20px 24px}body.course-fullscreen .course-nav{top:20px;max-height:calc(100vh - 40px);overflow:auto}
@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--line);padding:10px}.nav-btn{width:auto;white-space:nowrap;margin:0}.course-layout{grid-template-columns:1fr}.course-nav{position:static}.inline-form{grid-template-columns:1fr 1fr}.builder-course-overview{grid-template-columns:1fr}.builder-stats{width:100%}.builder-guide-grid{grid-template-columns:1fr}.builder-module-head,.builder-lesson-head{flex-wrap:wrap}.builder-module-actions,.builder-lesson-actions{width:100%;padding:0 14px 12px;justify-content:flex-end}.user-pill{display:none}}
@media(max-width:600px){.topbar{padding:0 14px}.main{padding:20px 14px}.stats{grid-template-columns:1fr}.inline-form,.two-col,.quiz-options-grid{grid-template-columns:1fr}.page-head,.builder-page-head,.builder-course-switcher,.builder-outline-head{align-items:stretch;flex-direction:column}.builder-course-overview{padding:21px 18px}.builder-stats{grid-template-columns:repeat(2,1fr)}.builder-stats div{min-width:0}.builder-top-actions{display:grid;grid-template-columns:1fr 1fr}.builder-top-actions .btn{padding:10px}.builder-module-toggle{padding:14px}.builder-number{width:40px;height:40px}.builder-title strong{font-size:.95rem}.builder-module-actions .btn:not(.icon-btn),.builder-lesson-actions .btn:not(.icon-btn){flex:1}.builder-module-body{padding:0 10px 14px}.builder-module-toolbar,.lesson-content-head{align-items:stretch;flex-direction:column}.block-chip,.question-chip{align-items:flex-start;flex-direction:column}.block-chip .builder-actions,.question-chip .builder-actions{justify-content:flex-start;width:100%}.block-kind strong{max-width:250px}.auth-card{padding:26px}.lesson{padding:22px 18px}.lesson-footer{flex-direction:column}.graphic-row{grid-template-columns:90px 1fr 38px}.rich-toolbar{align-items:stretch}.rich-toolbar label{justify-content:space-between;flex:1 1 150px}}
.html-frame{width:100%;min-height:520px;border:1px solid var(--line);border-radius:18px;background:white}
@media(max-width:600px){.diploma-grid{grid-template-columns:1fr}.diploma-card-footer{align-items:stretch;flex-direction:column}.diploma-card-footer .btn{width:100%}}
.registration-page{min-height:100vh;padding:28px;display:grid;place-items:center;background:linear-gradient(135deg,#fff7f2 0,#fff 48%,#fff0f5 100%)}.registration-shell{width:min(1180px,100%);display:grid;grid-template-columns:minmax(340px,.9fr) minmax(480px,1.1fr);overflow:hidden;border:1px solid #f0d8d0;border-radius:28px;background:white;box-shadow:0 28px 80px rgba(93,48,35,.14)}.registration-visual{position:relative;min-height:720px;display:flex;align-items:flex-end;overflow:hidden;padding:42px;background:linear-gradient(145deg,#f97316,#ed785c 55%,#e984a0);color:white}.registration-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.registration-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,12,15,.05),rgba(20,12,15,.88))}.registration-visual-copy,.registration-visual>div{position:relative;z-index:1}.registration-visual h1{margin:14px 0 12px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.02}.registration-visual p{max-width:520px;line-height:1.6;color:rgba(255,255,255,.86)}.registration-visual strong{display:block;margin-top:20px}.registration-badge{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.2);backdrop-filter:blur(8px);font-size:.75rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.registration-form-card{padding:clamp(28px,5vw,58px)}.registration-form-card h2{margin:12px 0 7px;font-size:clamp(1.7rem,3vw,2.45rem)}.registration-form-card form{margin-top:24px}.registration-two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.registration-form-card .field small{display:block;margin-top:5px;color:var(--muted)}.optional{color:var(--muted);font-size:.72rem;font-weight:500}.registration-check{display:flex;align-items:flex-start;gap:10px;margin:15px 0;color:#51474c;font-size:.86rem;line-height:1.48}.registration-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--orange);flex:0 0 auto}.registration-check a{color:var(--orange-dark);font-weight:750}.registration-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.privacy-information{margin:15px 0 20px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fafafa;color:var(--muted);font-size:.8rem;line-height:1.5}.privacy-information summary{cursor:pointer;color:var(--ink);font-weight:800}.privacy-information p{margin:10px 0 0}.registration-form-card .btn.full+.btn.full{margin-top:9px}.public-registration-card{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(420px,1.25fr);gap:28px;align-items:center;margin:0 0 22px;padding:24px 26px;border:1px solid #f2cdbf;border-radius:22px;background:linear-gradient(135deg,#fff8f3,#fff0f4);box-shadow:0 10px 28px rgba(113,55,38,.06)}.public-registration-card h2{margin:5px 0 8px}.public-registration-card p{margin:0}.public-registration-card form{display:grid;grid-template-columns:1fr auto;gap:11px 12px;align-items:end}.switch-row{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:white}.switch-row input{width:20px;height:20px;accent-color:var(--orange)}.switch-row span{display:grid}.switch-row small{color:var(--muted)}.public-registration-card .field{margin:0}.public-link{grid-column:1/-1;display:flex;align-items:center;gap:9px;min-width:0;padding:9px 10px;border:1px dashed #e6b7a5;border-radius:11px;background:white}.public-link span{min-width:0;flex:1;overflow:hidden;color:var(--orange-dark);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.public-registration-card [data-message]{grid-column:1/-1}.registration-loading{max-width:520px;text-align:center}
@media(max-width:850px){.registration-page{padding:10px}.registration-shell{grid-template-columns:1fr}.registration-visual{min-height:360px}.registration-form-card{padding:28px 22px}.public-registration-card{grid-template-columns:1fr}.public-registration-card form{grid-template-columns:1fr auto}}
@media(max-width:560px){.registration-two{grid-template-columns:1fr}.registration-visual{min-height:300px;padding:26px}.public-registration-card form{grid-template-columns:1fr}.public-registration-card form>.btn{width:100%}.public-link{align-items:stretch;flex-direction:column}.public-link .btn{width:100%}}
.course-market-section{margin-top:52px;padding-top:34px;border-top:1px solid var(--line)}.course-market-head{max-width:720px;margin-bottom:20px}.course-market-head h2{margin:5px 0 7px;font-size:clamp(1.55rem,3vw,2.25rem)}.course-market-head p{margin-top:0}.market-course-card{border-color:#fed7aa;transition:transform .2s,box-shadow .2s}.market-course-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(249,115,22,.13)}.market-course-card .course-body{display:flex;min-height:230px;flex-direction:column;align-items:flex-start}.market-course-card .course-body p{flex:1}.market-course-card .btn{margin-top:10px}.promotion-settings-card{background:linear-gradient(135deg,#fffaf5,#fff7ed)}
.student-directory-section{margin-top:38px}.student-directory-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.student-directory-stats>div{padding:17px 18px;border:1px solid var(--line);border-radius:16px;background:white;box-shadow:0 7px 20px rgba(17,17,17,.035)}.student-directory-stats strong{display:block;font-size:1.65rem;line-height:1;color:var(--orange-dark)}.student-directory-stats span{display:block;margin-top:6px;color:var(--muted);font-size:.78rem}.student-directory-filters{display:grid;grid-template-columns:minmax(260px,1fr) minmax(210px,.35fr);gap:12px;padding:16px;margin-bottom:14px;border:1px solid var(--line);border-radius:17px;background:white}.student-directory-filters .field{margin:0}.student-record-list{display:grid;gap:11px}.student-record{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:white;box-shadow:0 8px 24px rgba(17,17,17,.04)}.student-record[open]{border-color:#f6b98d;box-shadow:0 12px 30px rgba(249,115,22,.08)}.student-record>summary{display:flex;align-items:center;gap:14px;padding:15px 18px;cursor:pointer;list-style:none}.student-record>summary::-webkit-details-marker{display:none}.student-record>summary:hover{background:#fffaf6}.student-avatar{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;background:var(--orange);color:white;font-weight:950}.student-record-name{display:grid;min-width:0;flex:1}.student-record-name strong,.student-record-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-record-name small{color:var(--muted)}.student-record-count{display:grid;min-width:58px;text-align:center}.student-record-count strong{font-size:1.15rem}.student-record-count small{color:var(--muted);font-size:.72rem}.student-record-chevron{font-size:1.25rem;color:var(--muted);transition:transform .2s}.student-record[open] .student-record-chevron{transform:rotate(180deg)}.student-record-body{padding:18px;border-top:1px solid var(--line);background:#fcfcfb}.student-personal-data{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:15px}.student-personal-data>span{display:grid;padding:11px 12px;border:1px solid #ececec;border-radius:12px;background:white}.student-personal-data small{color:var(--muted);font-size:.7rem}.student-personal-data strong{overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.student-course-table td:first-child{min-width:220px}.student-course-table td:first-child strong,.student-course-table td:first-child small{display:block}.student-course-table td:first-child small{margin-top:4px;color:var(--muted);font-size:.7rem}.student-course-table .progress-track{min-width:130px}.student-course-table .progress-row{margin:0 0 5px}.student-course-table td{vertical-align:middle}
@media(max-width:850px){.student-directory-stats,.student-personal-data{grid-template-columns:repeat(2,1fr)}.student-directory-filters{grid-template-columns:1fr}.student-record>summary{flex-wrap:wrap}.student-record-name{min-width:200px}.student-record-count{margin-left:auto}}
@media(max-width:560px){.student-directory-stats,.student-personal-data{grid-template-columns:1fr 1fr}.student-record>summary{align-items:flex-start}.student-record-name{min-width:calc(100% - 62px)}.student-record-count{margin-left:58px}.student-record>summary>.badge{margin-left:auto}.student-record-body{padding:11px}}

.student-directory-stats{grid-template-columns:repeat(5,1fr)}
.student-directory-stats>div.attention{border-color:#f7b895;background:#fff7f2}
.student-directory-stats>div.attention strong{color:#c2410c}
.student-record-activity{display:grid;min-width:120px;text-align:right}
.student-record-activity small{color:var(--muted);font-size:.68rem}
.student-record-activity strong{font-size:.82rem}
.student-inactive{border-left:4px solid #fb923c}
.student-record-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-2px 0 15px}
.inactivity-alert{padding:7px 10px;border-radius:999px;background:#fff1e8;color:#9a3412;font-size:.75rem;font-weight:800}
.student-notes{margin-top:15px;padding:15px;border:1px solid #eadfd8;border-radius:14px;background:#fffaf7}
.student-notes label{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;font-weight:850}
.student-notes label small{color:var(--muted);font-weight:500}
.student-notes textarea{width:100%;min-height:82px;resize:vertical;background:white}
.student-notes>div{display:flex;align-items:center;gap:10px;margin-top:8px}
.note-save-status{font-size:.78rem;color:#b91c1c}
.note-save-status.success{color:#15803d}
@media(max-width:1050px){.student-directory-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.student-directory-stats{grid-template-columns:repeat(2,1fr)}.student-record-activity{order:4;margin-left:58px;text-align:left}.student-personal-data{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.student-record-activity{width:100%;margin-left:58px}.student-directory-section .section-title{align-items:flex-start;gap:12px}.student-directory-section .section-title .btn{width:100%;text-align:center}}
.tutoring-new{max-width:820px}.tutoring-new textarea,.tutoring-thread textarea{min-height:120px;resize:vertical}.tutoring-list{display:grid;gap:16px}.tutoring-thread{padding:0;overflow:hidden}.tutoring-thread.needs-answer{border-left:4px solid var(--orange,#f97316)}.tutoring-thread summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;list-style:none}.tutoring-thread summary::-webkit-details-marker{display:none}.tutoring-thread summary span:first-child{display:grid;gap:5px}.tutoring-thread summary small{color:#6b7280}.tutoring-thread-body{border-top:1px solid #eee;padding:22px}.tutoring-messages{display:grid;gap:12px;margin-bottom:20px}.tutoring-message{max-width:82%;padding:14px 16px;border-radius:16px;background:#f5f5f5}.tutoring-message.teacher{margin-left:auto;background:#fff2e8;border:1px solid #fed7aa}.tutoring-message>div{display:flex;justify-content:space-between;gap:16px;font-size:.88rem}.tutoring-message time{color:#777}.tutoring-message p{margin:8px 0 0;line-height:1.55}.tutoring-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px;padding:14px;background:#fafafa;border-radius:12px}.tutoring-context span{display:grid;gap:3px}.tutoring-context small{color:#777}.tutoring-expired{padding:12px;background:#fafafa;border-radius:10px}.notice-card{padding:18px 20px;border:1px solid #fed7aa;background:#fff7ed;border-radius:14px}.notice-card p{margin:6px 0 0}@media(max-width:700px){.tutoring-thread summary{align-items:flex-start;flex-direction:column}.tutoring-message{max-width:94%}.tutoring-context{grid-template-columns:1fr}}
