@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--deep:#053d47;--mid:#076f72;--teal:#319ea5;--bright:#68c7bf;--white:#fdfefe;--light:#f0f4f5;--muted:#8a9ea0;--dark:#0a2a30;--gold:#c8a96e;--shadow:0 24px 70px rgba(5,61,71,.16)}*{box-sizing:border-box}body{margin:0;font-family:Montserrat,system-ui,sans-serif;color:var(--dark);background:radial-gradient(circle at 12% 2%,rgba(104,199,191,.16),transparent 30%),linear-gradient(135deg,#fdfefe 0%,#eef6f6 48%,#e6f1f1 100%);min-height:100vh}button,input{font:inherit}.hidden{display:none!important}.app{min-height:100vh}.topbar{height:72px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,var(--deep),var(--mid));color:white;box-shadow:0 8px 30px rgba(5,61,71,.2);position:sticky;top:0;z-index:5}.brand{font-weight:800;letter-spacing:.09em}.brand span{color:var(--bright)}.nav{display:flex;gap:8px}.nav button,.ghost{border:0;background:rgba(255,255,255,.08);color:white;padding:10px 14px;border-radius:12px;cursor:pointer}.layout{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 72px)}.sidebar{background:rgba(255,255,255,.74);backdrop-filter:blur(16px);border-right:1px solid rgba(5,61,71,.08);padding:24px}.side-link{width:100%;text-align:left;border:0;background:transparent;padding:13px 14px;border-radius:12px;margin-bottom:6px;color:var(--dark);font-weight:600;cursor:pointer}.side-link.active,.side-link:hover{background:linear-gradient(135deg,rgba(49,158,165,.13),rgba(104,199,191,.08));color:var(--mid)}.content{padding:34px;max-width:1280px;width:100%;margin:0 auto}.hero{background:linear-gradient(120deg,var(--deep),var(--mid) 62%,var(--teal));border-radius:26px;padding:32px;color:white;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:rgba(255,255,255,.07);right:-90px;top:-150px}.hero h1{font-size:34px;margin:0 0 8px}.hero p{opacity:.85;max-width:700px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px}.card{background:rgba(255,255,255,.9);border:1px solid rgba(5,61,71,.08);border-radius:20px;padding:20px;box-shadow:0 12px 34px rgba(5,61,71,.08)}.stat .value{font-size:30px;font-weight:800;color:var(--deep)}.stat .label{font-size:13px;color:var(--muted);margin-top:6px}.section-title{margin:30px 0 14px;font-size:20px}.course-card{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:center}.course-art{min-height:190px;border-radius:18px;background:linear-gradient(135deg,var(--deep),var(--mid),var(--teal));color:white;padding:24px;display:flex;flex-direction:column;justify-content:flex-end}.course-art .eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bright)}.progress{height:9px;background:#e5eeee;border-radius:99px;overflow:hidden}.progress>span{height:100%;display:block;background:linear-gradient(90deg,var(--teal),var(--bright));border-radius:99px}.btn{border:0;border-radius:13px;padding:12px 17px;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--mid),var(--teal));color:white;box-shadow:0 10px 20px rgba(7,111,114,.18)}.btn.gold{background:linear-gradient(135deg,#a98a54,var(--gold));color:#fff}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-visual{background:linear-gradient(140deg,var(--deep),var(--mid) 60%,var(--teal));color:white;padding:70px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%}.login-visual:before{width:500px;height:500px;right:-200px;top:-180px}.login-visual:after{width:280px;height:280px;right:30px;bottom:-100px}.login-visual h1{font-size:48px;max-width:650px;line-height:1.08;margin:16px 0}.login-form{display:flex;align-items:center;justify-content:center;padding:40px}.login-card{width:min(440px,100%);background:white;border-radius:26px;padding:34px;box-shadow:var(--shadow)}.login-card h2{margin-top:0}.field{margin:15px 0}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.field input{width:100%;padding:13px 14px;border-radius:12px;border:1px solid #d6e3e4;outline:none}.field input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(49,158,165,.11)}.demo{font-size:12px;color:var(--muted);background:var(--light);padding:12px;border-radius:12px;margin-top:14px}.module{margin-bottom:16px}.module h3{font-size:15px}.lesson{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-radius:12px;background:#f7fafa;margin:7px 0;gap:12px}.lesson.completed{background:rgba(104,199,191,.12)}.lesson small{color:var(--muted)}.lesson button{white-space:nowrap}.lesson-view{display:grid;grid-template-columns:320px 1fr;gap:20px}.video{aspect-ratio:16/9;border-radius:22px;background:radial-gradient(circle at 50% 40%,rgba(104,199,191,.14),transparent 26%),linear-gradient(145deg,#041f25,#053d47 62%,#076f72);display:flex;align-items:center;justify-content:center;color:white;font-size:64px;box-shadow:var(--shadow)}.toast{position:fixed;right:22px;bottom:22px;background:var(--deep);color:#fff;padding:13px 16px;border-radius:12px;box-shadow:var(--shadow);z-index:20}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.muted{color:var(--muted)}@media(max-width:900px){.login-wrap{grid-template-columns:1fr}.login-visual{display:none}.layout{grid-template-columns:1fr}.sidebar{display:none}.grid,.admin-metrics{grid-template-columns:repeat(2,1fr)}.course-card,.lesson-view{grid-template-columns:1fr}.content{padding:20px}.topbar{padding:0 18px}.hero h1{font-size:27px}}@media(max-width:540px){.grid,.admin-metrics{grid-template-columns:1fr}.nav{display:none}}

/* v0.6 Admin */
.brand small{font-size:9px;opacity:.56;letter-spacing:.14em;margin-left:5px}.side-kicker,.page-kicker,.hero-kicker{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--teal);margin-bottom:8px}.page-kicker.bright,.hero-kicker{color:var(--bright)}.login-kicker{margin-top:90px;color:var(--bright);font-size:11px;letter-spacing:.18em;font-weight:800}.mini-logo{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--deep),var(--teal));display:grid;place-items:center;color:white;font-weight:800;font-size:22px;box-shadow:0 12px 28px rgba(5,61,71,.17);margin-bottom:18px}.split{display:flex;justify-content:space-between;margin-bottom:8px}.hero-progress{background:rgba(255,255,255,.18);max-width:520px}.module-head,.page-head,.admin-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:800;letter-spacing:.04em;vertical-align:middle}.status-pill.published{background:rgba(104,199,191,.16);color:#08716c;border:1px solid rgba(49,158,165,.2)}.status-pill.draft{background:rgba(138,158,160,.13);color:#607275;border:1px solid rgba(138,158,160,.18)}.lesson-nav{position:sticky;top:92px;max-height:calc(100vh - 120px);overflow:auto}.nav-title{font-weight:800;margin-bottom:12px}.lesson-group{margin-bottom:16px}.lesson-group>b{font-size:11px;color:var(--muted)}.lesson-link{padding:8px 8px;font-size:12px;cursor:pointer;border-radius:8px;color:var(--dark);margin-top:2px}.lesson-link:hover,.lesson-link.current{background:rgba(49,158,165,.1);color:var(--mid)}.lesson-main{margin-top:18px}.resource-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.resource-chip{border:1px solid rgba(7,111,114,.16);background:var(--light);color:var(--mid);padding:10px 13px;border-radius:12px;text-decoration:none;font-size:12px;font-weight:700}
.admin-hero{background:linear-gradient(115deg,#062e36,var(--deep) 34%,var(--mid) 72%,var(--teal));color:white;border-radius:28px;padding:30px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:var(--shadow);position:relative;overflow:hidden}.admin-hero:after{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-100px;top:-170px}.admin-hero h1{margin:0 0 6px;font-size:32px}.admin-hero p{margin:0;opacity:.75}.admin-hero .btn{position:relative;z-index:1}.admin-toolbar{margin:30px 0 14px;align-items:center}.admin-toolbar h2{margin:0 0 3px}.admin-toolbar p{margin:0}.legend{display:flex;gap:8px}.admin-catalog{display:grid;gap:18px}.admin-course{padding:0;overflow:hidden}.admin-course-head{padding:24px 24px 20px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;background:linear-gradient(180deg,rgba(240,247,247,.7),rgba(255,255,255,.2));border-bottom:1px solid rgba(5,61,71,.08)}.admin-course-head h2{margin:4px 0 6px;font-size:22px}.admin-course-head p{margin:0 0 10px;color:var(--muted)}.admin-code{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);font-weight:800}.catalog-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--muted)}.action-group{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.icon-btn,.mini-actions button,.lesson-actions button,.upload-label{border:1px solid rgba(5,61,71,.11);background:white;color:var(--deep);padding:8px 10px;border-radius:10px;font-size:11px;font-weight:700;cursor:pointer}.icon-btn:hover,.mini-actions button:hover,.lesson-actions button:hover,.upload-label:hover{background:var(--light)}.danger-soft{color:#a94c45!important;background:#fff8f7!important;border-color:rgba(169,76,69,.12)!important}.success-soft{color:#08716c!important;background:#f3fbfa!important}.module-stack{padding:18px 22px 22px}.admin-module{border:1px solid rgba(5,61,71,.08);border-radius:16px;margin:10px 0;background:#fbfdfd;overflow:hidden}.admin-module-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;background:linear-gradient(90deg,rgba(49,158,165,.08),transparent)}.module-code{display:inline-flex;min-width:40px;color:var(--mid);font-size:11px;font-weight:800}.mini-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-lessons{padding:6px 10px 10px}.admin-lesson{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 8px;border-bottom:1px solid rgba(5,61,71,.06)}.admin-lesson:last-of-type{border-bottom:0}.lesson-index{font-size:12px;font-weight:800;color:var(--mid);background:rgba(49,158,165,.09);border-radius:9px;padding:8px;text-align:center}.lesson-info{min-width:0}.lesson-info>b{display:block;font-size:13px}.lesson-meta{font-size:10px;color:var(--muted);margin-top:4px;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.lesson-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.danger-text{color:#a94c45!important}.add-row,.add-lesson{border:1px dashed rgba(7,111,114,.28);background:rgba(104,199,191,.06);color:var(--mid);width:100%;padding:11px;border-radius:11px;font-size:11px;font-weight:800;cursor:pointer;margin-top:9px}.add-row:hover,.add-lesson:hover{background:rgba(104,199,191,.12)}.resource-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.resource-mini{display:inline-flex;align-items:center;gap:4px;background:white;border:1px solid rgba(5,61,71,.08);padding:5px 6px 5px 8px;border-radius:8px}.resource-mini a{font-size:10px;color:var(--mid);text-decoration:none;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-mini button{border:0;background:transparent;color:#9f514b;cursor:pointer}.empty{text-align:center;color:var(--muted);padding:40px}.drawer-backdrop{position:fixed;inset:0;background:rgba(2,25,30,.48);backdrop-filter:blur(5px);z-index:50;display:flex;justify-content:flex-end}.drawer{height:100%;width:min(540px,100%);background:linear-gradient(180deg,#fff,#f8fbfb);box-shadow:-20px 0 70px rgba(4,34,40,.2);padding:28px;overflow:auto;animation:slideIn .22s ease}@keyframes slideIn{from{transform:translateX(40px);opacity:0}to{transform:none;opacity:1}}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(5,61,71,.08);padding-bottom:18px;margin-bottom:20px}.drawer-head h2{margin:0}.drawer-close{width:36px;height:36px;border-radius:50%;border:0;background:var(--light);color:var(--deep);font-size:22px;cursor:pointer}.admin-form textarea,.admin-form select{width:100%;padding:13px 14px;border-radius:12px;border:1px solid #d6e3e4;background:white;font:inherit;color:var(--dark);outline:none}.admin-form textarea:focus,.admin-form select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(49,158,165,.11)}.admin-form small{display:block;color:var(--muted);margin-top:5px;font-size:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkbox-field{display:flex;align-items:end}.checkbox-field label{padding:12px 0}.checkbox-field input{width:auto;margin-right:8px}.drawer-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px;padding-top:18px;border-top:1px solid rgba(5,61,71,.08)}.btn-secondary{border:1px solid rgba(5,61,71,.12);background:white;color:var(--deep);border-radius:13px;padding:12px 17px;font-weight:700;cursor:pointer}.upload-label{display:inline-flex;align-items:center}.toast.error{background:#9f514b}
@media(max-width:980px){.admin-course-head,.admin-module-head{flex-direction:column}.action-group,.mini-actions{justify-content:flex-start}.admin-lesson{grid-template-columns:48px 1fr}.lesson-actions{grid-column:2;justify-content:flex-start}.admin-hero{align-items:flex-start;flex-direction:column}.admin-hero .btn{align-self:flex-start}}
@media(max-width:600px){.form-grid{grid-template-columns:1fr}.drawer{padding:20px}.admin-course-head{padding:18px}.module-stack{padding:12px}.admin-toolbar{align-items:flex-start;flex-direction:column}.admin-lesson{grid-template-columns:1fr}.lesson-index{width:max-content}.lesson-actions{grid-column:1}.legend{display:none}}

/* v0.7 · Evaluaciones */
.assessment-card{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,rgba(5,61,71,.98),rgba(7,111,114,.92));color:white;border:1px solid rgba(104,199,191,.22)}
.assessment-card .muted{color:rgba(255,255,255,.72)}
.assessment-wrap{max-width:940px;margin:0 auto 60px}
.assessment-head{padding:32px;border-radius:24px;background:linear-gradient(135deg,#053d47,#076f72);color:white;display:flex;justify-content:space-between;gap:28px;align-items:flex-start;box-shadow:0 24px 60px rgba(5,61,71,.18);margin-bottom:22px}
.assessment-head p{max-width:700px;color:rgba(255,255,255,.78)}
.assessment-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.assessment-meta span{font-size:12px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15)}
.assessment-form{display:grid;gap:16px}
.question-card{padding:26px}
.question-number{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#076f72;font-weight:800;margin-bottom:8px}
.question-card h3{margin:0 0 18px;line-height:1.45}
.option-list{display:grid;gap:10px}
.answer-option{display:flex;align-items:center;gap:12px;border:1px solid #dce7e8;border-radius:14px;padding:14px 16px;cursor:pointer;transition:.18s;background:white}
.answer-option:hover{border-color:#68c7bf;transform:translateY(-1px)}
.answer-option input{accent-color:#076f72}
.submit-bar{position:sticky;bottom:16px;padding:18px 20px;border-radius:18px;background:rgba(253,254,254,.96);backdrop-filter:blur(16px);display:flex;justify-content:space-between;align-items:center;gap:18px;box-shadow:0 18px 50px rgba(5,61,71,.15);border:1px solid #dde7e8}
.assessment-result{max-width:650px;margin:70px auto;text-align:center;padding:52px 38px;border-radius:28px;background:white;box-shadow:0 26px 70px rgba(5,61,71,.14);border:1px solid #e2ebec}
.result-ring{width:150px;height:150px;margin:0 auto 24px;border-radius:50%;display:grid;place-items:center;border:12px solid #68c7bf;background:linear-gradient(135deg,#f6fbfb,#fff)}
.assessment-result.failed .result-ring{border-color:#c8a96e}.result-ring span{font-size:34px;font-weight:800;color:#053d47}
.result-actions{display:flex;justify-content:center;gap:12px;margin-top:26px}
.assessment-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:rgba(200,169,110,.14);color:#8a6f3d;font-size:11px;font-weight:800}
.question-editor{margin-top:20px;border-top:1px solid #e2ebec;padding-top:18px}
.question-editor-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}
.question-admin-row{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid #edf2f3}
.question-admin-row small{display:block;color:#8a9ea0;margin-top:5px}.question-admin-row button{margin-left:8px}
.option-editor{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin:8px 0}.option-editor input[type=radio]{accent-color:#076f72}
@media(max-width:800px){.assessment-card,.assessment-head,.submit-bar{flex-direction:column;align-items:stretch}.assessment-head{padding:24px}.question-card{padding:20px}.assessment-result{margin:30px 12px;padding:38px 24px}}

/* v0.8 · Certificados verificables */
.certificate-panel{display:grid;grid-template-columns:84px 1fr;gap:24px;align-items:start;border:1px solid rgba(200,169,110,.2);background:linear-gradient(135deg,#fff,#f8fbfb 65%,rgba(200,169,110,.08))}
.certificate-panel.ready{box-shadow:0 22px 58px rgba(5,61,71,.11)}
.certificate-mark{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,#053d47,#076f72);color:#68c7bf;font-size:30px;font-weight:800;box-shadow:0 14px 30px rgba(5,61,71,.18)}
.certificate-copy h2{margin:4px 0 10px}.certificate-copy p{line-height:1.65}.certificate-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.certificate-actions a{text-decoration:none;display:inline-flex;align-items:center}
.requirement-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.requirement-list>div{display:grid;grid-template-columns:28px 1fr;gap:3px 9px;padding:14px;border:1px solid #e1ebec;border-radius:14px;background:white}.requirement-list span{grid-row:1/3;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(104,199,191,.14);color:#076f72;font-weight:800}.requirement-list small{color:#8a9ea0}
.verify-page{min-height:100vh;padding:42px 20px;background:radial-gradient(circle at 10% 0%,rgba(104,199,191,.16),transparent 34%),linear-gradient(135deg,#fdfefe,#edf5f5);display:flex;flex-direction:column;align-items:center}.verify-brand{font-weight:800;letter-spacing:.1em;color:#053d47;margin-bottom:30px}.verify-brand span{color:#319ea5}.verify-card{width:min(680px,100%);background:white;border-radius:28px;padding:42px;box-shadow:0 28px 80px rgba(5,61,71,.14);border:1px solid rgba(5,61,71,.08);text-align:center}.verify-icon{width:82px;height:82px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;font-size:36px;font-weight:800;background:linear-gradient(135deg,#053d47,#076f72);color:#68c7bf}.verify-card.invalid .verify-icon{background:#8c4b47;color:white}.verify-card dl{text-align:left;display:grid;grid-template-columns:150px 1fr;gap:10px 16px;margin:28px 0;padding:20px;background:#f6f9f9;border-radius:16px}.verify-card dt{font-size:12px;font-weight:800;color:#8a9ea0;text-transform:uppercase;letter-spacing:.06em}.verify-card dd{margin:0;font-weight:600}.verify-qr{width:170px;height:170px;object-fit:contain;margin:6px auto 24px;display:block;border:10px solid white;box-shadow:0 8px 30px rgba(5,61,71,.1)}.verify-search{margin:26px 0 18px;text-align:left;padding-top:22px;border-top:1px solid #e5eeee}.verify-search label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6d8588;margin-bottom:8px}.verify-search-row{display:grid;grid-template-columns:1fr auto;gap:10px}.verify-search input{min-width:0;border:1px solid #cbdada;border-radius:12px;padding:13px 14px;font:inherit;color:#0a2a30;background:#fff}.verify-search input:focus{outline:2px solid rgba(49,158,165,.25);border-color:#319ea5}
@media(max-width:700px){.certificate-panel{grid-template-columns:1fr}.requirement-list{grid-template-columns:1fr}.verify-card{padding:30px 22px}.verify-card dl{grid-template-columns:1fr;gap:5px}.verify-card dd{margin-bottom:8px}.verify-search-row{grid-template-columns:1fr}.verify-search-row .btn{width:100%}}
.certificate-admin-table{padding:0;overflow:hidden}.cert-table-head,.cert-table-row{display:grid;grid-template-columns:1.1fr 1.4fr 1fr .6fr auto;gap:14px;align-items:center;padding:13px 16px}.cert-table-head{background:#f2f7f7;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#8a9ea0;font-weight:800}.cert-table-row{border-top:1px solid #edf2f3;font-size:12px}.cert-table-row small{display:block;color:#8a9ea0;margin-top:3px}.cert-table-row a{color:#076f72;text-decoration:none;font-weight:700}.cert-valid,.cert-revoked{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}.cert-valid{background:rgba(104,199,191,.14);color:#076f72}.cert-revoked{background:rgba(169,76,69,.1);color:#a94c45}@media(max-width:800px){.cert-table-head{display:none}.cert-table-row{grid-template-columns:1fr;gap:7px}.cert-table-row span:last-child{justify-self:start}}
.store-page{min-height:100vh;background:linear-gradient(135deg,#053d47 0%,#076f72 45%,#f0f4f5 45%,#fdfefe 100%);font-family:Montserrat,system-ui,sans-serif;color:#0a2a30}.store-top{display:flex;justify-content:space-between;align-items:center;padding:24px 5vw;background:rgba(5,61,71,.96);color:white}.store-main{max-width:1180px;margin:auto;padding:70px 5vw 110px}.store-main>h1{font-size:clamp(36px,6vw,68px);max-width:780px;margin:8px 0 14px;color:#053d47}.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:38px}.store-card{background:rgba(255,255,255,.94);border:1px solid rgba(7,111,114,.15);border-radius:24px;padding:30px;box-shadow:0 22px 60px rgba(5,61,71,.12)}.store-card h2{font-size:27px;margin:10px 0}.store-price{font-size:34px;font-weight:800;color:#076f72;margin:25px 0}.checkout-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dce7e8;border-bottom:1px solid #dce7e8;padding:18px 0;margin:12px 0 20px}.checkout-total b{font-size:26px;color:#076f72}.checkout-consents{display:grid;gap:12px;margin:4px 0 18px}.checkout-consent{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;padding:12px 13px;border:1px solid #dce7e8;border-radius:12px;background:#f8fbfb;color:#38575c;font-size:12px;line-height:1.5}.checkout-consent input{width:auto;margin:3px 0 0;accent-color:#076f72}.checkout-consent a{color:#076f72;font-weight:700;text-decoration:underline}.store-card .btn{width:100%}
.student-admin-table{overflow:hidden}.student-table-head,.student-table-row{display:grid;grid-template-columns:2.2fr .8fr .8fr .9fr 1fr;gap:14px;align-items:center;padding:14px 18px}.student-table-head{background:rgba(5,61,71,.06);font-size:12px;font-weight:700;color:#60777b}.student-table-row{border-top:1px solid #e4ecee}.student-table-row small,.student-enrollment small{display:block;color:#71878b;margin-top:4px}.student-detail{display:grid;gap:18px}.student-profile-strip{display:flex;justify-content:space-between;align-items:flex-start;padding:18px;border-radius:18px;background:linear-gradient(135deg,#053d47,#076f72);color:#fff}.student-profile-strip h2{margin:6px 0}.student-profile-strip p{opacity:.8}.student-section{padding-top:8px;border-top:1px solid #e6edef}.student-enrollment{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #edf2f3}.student-enrollment .progress{max-width:320px;margin-top:8px}.student-line{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #edf2f3}.note-form{display:grid;gap:10px;margin-bottom:14px}.internal-note{background:#f5f8f8;padding:12px 14px;border-radius:12px;margin:8px 0}.internal-note p{margin:0 0 5px}.student-audit{padding:12px 0;color:#71878b}@media(max-width:780px){.student-table-head{display:none}.student-table-row{grid-template-columns:1fr 1fr}.student-table-row span:first-child{grid-column:1/-1}.student-enrollment{grid-template-columns:1fr}.student-line{flex-direction:column;gap:4px}}
.link-button{border:0;background:transparent;color:#076f72;font:inherit;font-weight:700;cursor:pointer;width:100%;padding:12px 0}.link-button:hover{text-decoration:underline}

/* v0.12 · Video profesional */
.video-shell{position:relative;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#042e35,#076f72);box-shadow:0 22px 60px rgba(5,61,71,.18);min-height:340px;margin-bottom:18px}.video-player{width:100%;aspect-ratio:16/9;display:block;background:#021f24}.video-overlay{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;gap:16px;padding:12px 16px;background:linear-gradient(180deg,rgba(2,31,36,.84),transparent);color:#fff;font-size:11px;letter-spacing:.08em;pointer-events:none}.video-empty{min-height:340px;display:grid;place-items:center;color:#fff;text-align:center}.play-orb{width:72px;height:72px;border:1px solid rgba(255,255,255,.35);border-radius:999px;display:grid;place-items:center;margin:0 auto 14px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px);font-size:26px}.video-metric{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin:20px 0;padding:14px 16px;border-radius:14px;background:#f3f7f7}.progress-track{height:8px;border-radius:999px;background:#dfe9ea;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#076f72,#68c7bf)}


/* v0.13 analytics */
.analytics-panel{display:grid;gap:18px;margin-bottom:26px}.analytics-top{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.analytics-kpi{background:linear-gradient(145deg,#053d47,#076f72);color:#fff;border-radius:18px;padding:18px 16px;box-shadow:0 10px 28px rgba(5,61,71,.16)}.analytics-kpi span{display:block;font-size:12px;opacity:.78;margin-bottom:8px}.analytics-kpi b{font-size:26px}.analytics-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.analytics-card{padding:20px}.analytics-card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.analytics-card h3{margin:3px 0 0}.analytics-course-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:14px;align-items:center;padding:13px 0;border-top:1px solid #e7edef}.analytics-course-row:first-of-type{border-top:0}.analytics-course-row small,.risk-row small,.question-risk small{display:block;color:#6c7d80;margin-top:4px}.analytics-bar-wrap{display:grid;gap:5px}.analytics-bar{height:8px;background:#e5edef;border-radius:999px;overflow:hidden}.analytics-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#076f72,#68c7bf)}.analytics-bar-wrap small{font-size:11px;color:#64777a}.risk-row,.question-risk,.cohort-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #e7edef}.risk-row:first-of-type,.question-risk:first-of-type,.cohort-row:first-of-type{border-top:0}.risk-pill{font-weight:800;font-size:12px;padding:7px 9px;border-radius:999px}.risk-pill.high{background:#fff0ee;color:#a63a2f}.risk-pill.mid{background:#fff7df;color:#8a6517}.risk-pill.low{background:#e9f8f4;color:#176b5c}.question-risk>span{font-weight:800;color:#8a5a18;background:#fbf4e7;border-radius:999px;padding:7px 9px}.cohort-row{grid-template-columns:110px 120px 1fr}.cohort-row>b{font-size:12px;color:#526669}@media(max-width:1000px){.analytics-top{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}.analytics-course-row{grid-template-columns:1fr}.cohort-row{grid-template-columns:1fr}}

/* v0.14 monetización */
.promo-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:linear-gradient(135deg,#c8a96e,#e5d2a5);color:#0a2a30;font-size:12px;font-weight:800;letter-spacing:.05em;margin:8px 0}
.old-price{text-decoration:line-through;opacity:.5;font-size:.65em;margin-right:8px}
.bundle-card{border:1px solid rgba(200,169,110,.35);box-shadow:0 24px 60px rgba(5,61,71,.12)}
.bundle-courses{display:grid;gap:7px;margin:16px 0 8px;font-size:13px;color:#47666b}
.promo-note{margin:-2px 0 10px;padding:9px 12px;border-radius:10px;background:#f8f1e4;color:#755d2f;font-size:12px;font-weight:700}
.coupon-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.success-text{color:#087b70;font-weight:700}.danger-text{color:#a43838!important}
.monetization-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}
.monetization-card{padding:20px;min-width:0}.money-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(100px,.7fr) auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid rgba(10,42,48,.08)}
.money-row:first-of-type{border-top:0}.money-row div{min-width:0}.money-row small{display:block;color:#8a9ea0;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.check-line{display:flex;gap:8px;align-items:center;padding:7px 0;color:#38575c;font-size:14px}.check-line input{width:auto}
@media(max-width:1000px){.monetization-grid{grid-template-columns:1fr}.money-row{grid-template-columns:1fr auto}.money-row>button{grid-column:1/-1;justify-self:start}}
.teacher-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.8fr);gap:22px;align-items:start}.role-chip{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(200,169,110,.16);color:#9a7440;font-size:11px;font-weight:800;letter-spacing:.08em}.teacher-grid .card{margin-bottom:16px}@media(max-width:900px){.teacher-grid{grid-template-columns:1fr}}
.teacher-admin-row{display:grid;grid-template-columns:1.1fr 2fr 1.2fr;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(5,61,71,.08)}.teacher-admin-row:last-child{border-bottom:0}.teacher-admin-row small{display:block;color:#8a9ea0;margin-top:4px}.teacher-assignments{display:flex;gap:8px;flex-wrap:wrap}.teacher-admin-row select{max-width:170px;margin-right:8px}@media(max-width:900px){.teacher-admin-row{grid-template-columns:1fr}.teacher-admin-row select{max-width:none;width:65%}}

/* v0.16 · Lykios AI Tutor */
.tutor-card{margin-top:18px;border:1px solid rgba(49,158,165,.18);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(240,248,248,.94));overflow:hidden;position:relative}.tutor-card:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(104,199,191,.10);right:-90px;top:-120px;pointer-events:none}.tutor-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;position:relative}.tutor-head h2{margin:2px 0 8px}.ground-badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(200,169,110,.14);color:#8b6c37;border:1px solid rgba(200,169,110,.25);font-size:10px;font-weight:800;letter-spacing:.06em;white-space:nowrap}.tutor-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:18px}.tutor-form textarea{width:100%;resize:vertical;border:1px solid #d6e3e4;border-radius:14px;padding:13px 14px;font:inherit;outline:none;background:white}.tutor-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(49,158,165,.10)}.tutor-form .btn{align-self:end}.tutor-answer{margin-top:16px;padding:16px;border-radius:15px;background:white;border:1px solid rgba(5,61,71,.08)}.tutor-answer.grounded{border-left:4px solid var(--teal)}.tutor-answer.not-grounded{border-left:4px solid var(--gold)}.tutor-answer-label{font-size:10px;letter-spacing:.11em;font-weight:800;color:var(--teal);margin-bottom:8px}.tutor-answer.not-grounded .tutor-answer-label{color:#9a7440}.tutor-answer p{line-height:1.65;margin:0}.tutor-sources{display:grid;gap:8px;margin-top:16px}.tutor-sources>b{font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.tutor-sources a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;text-decoration:none;color:var(--dark);background:#f4f8f8;border:1px solid rgba(5,61,71,.07);padding:12px;border-radius:12px}.tutor-sources a>span{display:inline-flex;background:var(--deep);color:white;border-radius:9px;padding:6px 8px;font-size:11px;font-weight:800}.tutor-sources strong,.tutor-sources small,.tutor-sources em{display:block}.tutor-sources small{color:var(--muted);margin-top:3px}.tutor-sources em{font-style:normal;color:#52696d;margin-top:7px;font-size:11px;line-height:1.45}.tutor-editor{margin:18px 0;padding:16px;border-radius:15px;background:linear-gradient(145deg,#f5f9f9,#edf5f5);border:1px solid rgba(49,158,165,.13)}.tutor-editor textarea,.admin-form textarea{width:100%;padding:13px 14px;border-radius:12px;border:1px solid #d6e3e4;outline:none;font:inherit;resize:vertical}.tutor-editor textarea:focus,.admin-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(49,158,165,.11)}.check-row{display:flex!important;gap:9px;align-items:center;font-size:13px;font-weight:700;color:var(--deep);cursor:pointer}.check-row input{width:auto!important}.field small{display:block;color:var(--muted);margin-top:6px;font-size:11px;line-height:1.4}@media(max-width:720px){.tutor-head{flex-direction:column}.tutor-form{grid-template-columns:1fr}.ground-badge{white-space:normal}}
.tutor-approval-state{padding:10px 12px;border-radius:11px;font-size:12px;font-weight:800;margin-top:8px}.tutor-approval-state.approved{background:rgba(104,199,191,.14);color:#08716c}.tutor-approval-state.pending{background:rgba(200,169,110,.13);color:#8b6c37}

/* v0.17 · Gobernanza Lykios AI Tutor */
.tutor-privacy-row{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid rgba(49,158,165,.18);border-radius:14px;background:rgba(240,244,245,.55)}
.tutor-answer-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.confidence-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:700;letter-spacing:.03em}.confidence-pill.high{background:rgba(104,199,191,.18);color:#076f72}.confidence-pill.medium{background:rgba(200,169,110,.18);color:#806328}.confidence-pill.low{background:rgba(138,158,160,.16);color:#5b7073}.source-ref{min-width:34px;font-weight:800;color:#c8a96e}.tutor-feedback{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid rgba(10,42,48,.08)}.tutor-feedback button{border:1px solid rgba(7,111,114,.18);background:#fff;border-radius:999px;padding:6px 11px;cursor:pointer}.tutor-feedback small{margin-left:auto;color:#8a9ea0}.tutor-admin{padding:22px;margin-bottom:24px}.tutor-policy-form{display:grid;grid-template-columns:minmax(180px,260px) 1fr 1fr auto;gap:14px;align-items:end;padding:16px 0 20px;border-bottom:1px solid rgba(10,42,48,.08)}.tutor-audit-list{display:flex;flex-direction:column}.tutor-audit-row{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(250px,1.5fr) auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(10,42,48,.07)}.tutor-audit-row small{display:block;color:#8a9ea0;margin-top:3px}.audit-question{font-size:13px;line-height:1.5;color:#0a2a30}.tutor-audit-row>div:last-child{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
@media(max-width:900px){.tutor-policy-form,.tutor-audit-row{grid-template-columns:1fr}.tutor-feedback small{margin-left:0;width:100%}}


/* v1.1 · Experiencia del alumno */
.mobile-nav{display:none}
.student-hero{display:flex;align-items:center;justify-content:space-between;gap:28px}
.student-hero>div:first-child{min-width:0}.global-progress{width:126px;height:126px;border-radius:50%;display:grid;place-items:center;align-content:center;flex:0 0 auto;background:radial-gradient(circle at center,rgba(255,255,255,.15) 0 52%,transparent 53%),conic-gradient(var(--gold) var(--progress,0%),rgba(255,255,255,.16) 0);border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 0 0 8px rgba(255,255,255,.04)}
.global-progress b{font-size:28px;line-height:1}.global-progress span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;margin-top:7px;opacity:.8}
.student-stats .card{min-height:106px}
.resume-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:0;padding:0;overflow:hidden}
.resume-art{min-height:250px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:radial-gradient(circle at 85% 15%,rgba(104,199,191,.28),transparent 30%),linear-gradient(135deg,#042f37,#076f72 62%,#319ea5)}
.resume-art .eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--bright);margin-bottom:10px}.resume-art h2{font-size:25px;margin:0 0 8px}.resume-art p{margin:0;opacity:.82;line-height:1.5}
.resume-copy{padding:28px;display:flex;flex-direction:column;justify-content:center}.resume-progress-head{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;margin-bottom:9px}.resume-progress-head b{font-size:18px;color:var(--deep)}
.resume-lesson{display:grid;grid-template-columns:46px 1fr;gap:13px;align-items:center;margin:22px 0;padding:15px;border-radius:16px;background:linear-gradient(135deg,#f2f8f8,#edf5f5);border:1px solid rgba(49,158,165,.13)}.resume-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--mid),var(--teal));color:#fff;box-shadow:0 8px 18px rgba(7,111,114,.18)}.resume-lesson small,.resume-lesson b,.resume-lesson em{display:block}.resume-lesson small{font-size:9px;letter-spacing:.09em;color:var(--muted);font-weight:800}.resume-lesson b{margin-top:4px;font-size:14px}.resume-lesson em{font-size:11px;color:var(--teal);font-style:normal;margin-top:5px}.continue-btn{width:100%;min-height:48px}
.section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}.section-heading-row .section-title{margin:0}.section-heading-row .link-button{margin:0}
.student-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:14px}.student-course-card{display:flex;flex-direction:column;justify-content:space-between;gap:22px;min-height:250px}.student-course-card h3{font-size:17px;margin:10px 0 8px}.student-course-card p{font-size:13px;color:#5f7376;line-height:1.5}.course-badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(49,158,165,.10);color:var(--mid);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.course-open-btn{margin-top:15px;width:100%}
.student-certificate-grid{display:grid;gap:12px;margin-top:14px}.mini-certificate{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:16px;padding:17px 20px}.certificate-seal{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;border:2px solid rgba(200,169,110,.6);background:rgba(200,169,110,.10);color:#9c783e;font-size:20px;font-weight:800}.mini-certificate small{font-size:9px;letter-spacing:.14em;color:#9a7440;font-weight:800}.mini-certificate h3{margin:4px 0;font-size:15px}.mini-certificate p,.mini-certificate code{margin:0;font-size:11px;color:var(--muted)}.mini-cert-actions{display:flex;align-items:center;gap:10px}.mini-cert-actions a{text-decoration:none}
.activity-card{padding:10px 20px}.activity-row{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(5,61,71,.07)}.activity-row:last-child{border-bottom:0}.activity-row>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(104,199,191,.15);color:var(--mid);font-weight:800}.activity-row b,.activity-row small{display:block}.activity-row b{font-size:12px}.activity-row small{margin-top:3px;font-size:10px;color:var(--muted)}
.empty-student{display:grid;gap:7px;text-align:center;padding:38px}.empty-student b{font-size:18px}.empty-student span{color:var(--muted);font-size:13px}
.student-page-head{align-items:center}.overall-chip{width:78px;height:78px;border-radius:50%;background:linear-gradient(135deg,var(--deep),var(--teal));color:#fff;display:grid;place-items:center;align-content:center;box-shadow:0 12px 28px rgba(5,61,71,.16)}.overall-chip b{font-size:20px;line-height:1}.overall-chip span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;opacity:.8;margin-top:3px}
.course-library{display:grid;gap:16px;margin-top:20px}.library-course{padding:22px}.library-course-top{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start}.library-course h2{margin:10px 0 6px;font-size:21px}.library-course p{margin:0 0 15px;color:var(--muted)}.course-percent{font-size:28px;font-weight:800;color:var(--deep)}.library-meta{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:12px 0 16px;color:#607477;font-size:11px}.library-actions{display:flex;justify-content:flex-end;gap:10px}
.course-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,360px);gap:28px;align-items:center}.course-hero-copy{min-width:0}.course-hero-meta{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 11px}.course-hero-meta span{font-size:10px;font-weight:700;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.11)}.hero-percent{display:block;font-size:11px;margin-top:7px;opacity:.82}
.course-next-card{position:relative;z-index:1;display:flex;flex-direction:column;gap:7px;padding:20px;border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}.course-next-card small{font-size:9px;letter-spacing:.13em;color:var(--bright);font-weight:800}.course-next-card>b{font-size:14px;line-height:1.45}.course-next-card>span{font-size:11px;opacity:.75}.course-next-card .btn{margin-top:8px}.sequence-note{font-size:11px;color:#607477}
.student-module{padding:0;overflow:hidden}.student-module .module-head{padding:18px 20px;background:linear-gradient(90deg,rgba(49,158,165,.08),transparent);align-items:center}.student-module .module-head h3{margin:3px 0 0;font-size:15px}.module-code-label{font-size:9px;letter-spacing:.13em;color:var(--teal);font-weight:800}.module-progress{min-width:42px;text-align:center;padding:7px 9px;border-radius:999px;background:#edf5f5;color:var(--mid);font-size:10px;font-weight:800}.module-lessons{padding:8px 12px 13px}
.student-lesson{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 10px;background:transparent;border-bottom:1px solid rgba(5,61,71,.06);border-radius:0;margin:0}.student-lesson:last-child{border-bottom:0}.student-lesson.state-completed{background:linear-gradient(90deg,rgba(104,199,191,.11),transparent)}.student-lesson.state-locked{opacity:.62}.student-lesson.state-progress,.student-lesson.state-next{background:linear-gradient(90deg,rgba(49,158,165,.08),transparent)}.lesson-state-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#eef5f5;color:var(--mid);font-size:12px}.student-lesson.state-completed .lesson-state-icon{background:rgba(104,199,191,.20)}.student-lesson.state-locked .lesson-state-icon{background:#eef1f1;color:#718386}.lesson-copy{min-width:0}.lesson-copy>b,.lesson-copy>small{display:block}.lesson-copy>b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-copy>small{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.4}.lesson-open{min-width:88px}.lesson-open:disabled,.locked-next:disabled{cursor:not-allowed;box-shadow:none;opacity:.72}.lesson-mini-progress{height:4px;background:#e5eeee;border-radius:99px;overflow:hidden;margin-top:8px;max-width:280px}.lesson-mini-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--bright))}
.mobile-lesson-head{display:none}.lesson-content{min-width:0}.nav-course-progress{margin:0 0 18px}.nav-course-progress small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.lesson-nav .lesson-link{display:grid;grid-template-columns:18px 1fr;gap:7px;align-items:start;width:100%;border:0;background:transparent;text-align:left;font:inherit}.lesson-nav .lesson-link.locked{opacity:.48;cursor:not-allowed}.lesson-topline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--muted)}.done-chip{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(104,199,191,.16);color:#08716c;font-size:9px;font-weight:800}.lesson-requirements{margin:13px 0;padding:11px 13px;border-radius:12px;background:#f3f8f8;color:#52696d;font-size:11px}.lesson-step-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.lesson-step-nav button{min-height:70px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left}.lesson-step-nav button small,.lesson-step-nav button b{display:block}.lesson-step-nav button small{font-size:9px;opacity:.72}.lesson-step-nav button b{font-size:11px;margin-top:3px}.lesson-videos{display:grid;gap:14px}.video-shell{position:relative;border-radius:20px;overflow:hidden;background:#041f25;box-shadow:var(--shadow)}.video-player{display:block;width:100%;aspect-ratio:16/9;background:#041f25}.video-overlay{pointer-events:none;position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:10px;padding:8px 12px;background:linear-gradient(transparent,rgba(0,0,0,.64));color:#fff;font-size:8px;letter-spacing:.05em}.video-metric{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin:16px 0;font-size:11px}.progress-track{height:7px;background:#e5eeee;border-radius:99px;overflow:hidden}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--bright));border-radius:99px}
@media(max-width:1050px){.student-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-hero{grid-template-columns:1fr}.course-next-card{max-width:520px}}
@media(max-width:900px){.mobile-nav{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:12px;right:12px;bottom:10px;z-index:40;background:rgba(253,254,254,.96);border:1px solid rgba(5,61,71,.10);box-shadow:0 16px 45px rgba(5,61,71,.22);border-radius:18px;padding:6px;backdrop-filter:blur(14px)}.mobile-nav button{border:0;background:transparent;color:#687c7f;min-height:48px;border-radius:13px;font-size:9px;font-weight:700;display:grid;place-items:center;align-content:center;gap:2px;cursor:pointer}.mobile-nav button span{font-size:17px}.mobile-nav button.active{background:rgba(49,158,165,.10);color:var(--mid)}.content{padding-bottom:94px}.student-hero{align-items:flex-start}.resume-card{grid-template-columns:1fr}.resume-art{min-height:190px}.lesson-nav{display:none}.mobile-lesson-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:0 2px}.mobile-lesson-head span{font-size:10px;color:var(--muted)}.lesson-view{display:block}.lesson-content{width:100%}}
@media(max-width:640px){body{background:linear-gradient(180deg,#f7fbfb,#eef5f5)}.topbar{height:62px;padding:0 14px}.topbar .brand{font-size:13px}.topbar .brand small{display:none}.topbar .nav{display:flex}.topbar .nav button:first-child{display:none}.topbar .nav button{padding:8px 10px;font-size:11px}.content{padding:15px 13px 96px}.hero{padding:22px 19px;border-radius:20px}.hero h1{font-size:25px;line-height:1.15}.student-hero{gap:15px}.student-hero p{font-size:12px;margin-bottom:0}.global-progress{width:82px;height:82px}.global-progress b{font-size:20px}.global-progress span{font-size:7px}.grid.student-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-stats .card{padding:15px;min-height:88px}.stat .value{font-size:24px}.stat .label{font-size:10px}.section-title{font-size:17px;margin:24px 0 11px}.resume-art{min-height:165px;padding:21px}.resume-art h2{font-size:20px}.resume-copy{padding:20px}.resume-lesson{grid-template-columns:38px 1fr;margin:17px 0;padding:12px}.resume-icon{width:38px;height:38px}.student-course-grid{grid-template-columns:1fr}.student-course-card{min-height:0}.section-heading-row{align-items:center}.mini-certificate{grid-template-columns:44px 1fr;padding:15px}.certificate-seal{width:42px;height:42px}.mini-cert-actions{grid-column:2;justify-content:flex-start}.student-page-head{align-items:flex-start}.overall-chip{width:62px;height:62px}.overall-chip b{font-size:17px}.library-course{padding:17px}.library-course-top{grid-template-columns:1fr auto;gap:10px}.library-course h2{font-size:18px}.course-percent{font-size:22px}.library-meta{display:grid;gap:5px}.library-actions{display:grid;grid-template-columns:1fr 1fr}.library-actions button{width:100%}.course-hero{gap:19px}.course-next-card{padding:15px}.sequence-note{max-width:190px;text-align:right}.student-module .module-head{padding:15px}.module-lessons{padding:5px 8px 10px}.student-lesson{grid-template-columns:32px minmax(0,1fr);gap:9px;padding:12px 7px}.lesson-state-icon{width:29px;height:29px}.lesson-copy>b{font-size:11px;white-space:normal}.lesson-open{grid-column:2;width:100%;min-height:42px}.lesson-main{padding:18px}.lesson-main h1{font-size:23px;line-height:1.22}.video-shell{border-radius:15px}.video-overlay span:first-child{max-width:68%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-metric{grid-template-columns:1fr auto}.video-metric .progress-track{grid-column:1/-1;grid-row:2}.resource-bar{display:grid;grid-template-columns:1fr}.resource-bar>*{width:100%;text-align:center}.assessment-card{display:grid!important;grid-template-columns:1fr!important;gap:12px}.assessment-card .btn{width:100%}.lesson-step-nav{grid-template-columns:1fr}.lesson-step-nav>span:empty{display:none}.lesson-step-nav button{min-height:64px}.certificate-panel{grid-template-columns:1fr!important}.certificate-actions{display:grid!important;grid-template-columns:1fr}.certificate-actions a{text-align:center}.toast{left:14px;right:14px;bottom:82px;text-align:center}.mobile-lesson-head{position:sticky;top:66px;z-index:4;background:rgba(247,251,251,.95);padding:8px 2px;backdrop-filter:blur(8px)}}


/* Lykios Academy · verificación pública de certificados */
.verify-page{
  min-height:100vh;
  padding:46px 20px;
  background:
    radial-gradient(circle at 8% 8%,rgba(49,158,165,.16),transparent 28%),
    radial-gradient(circle at 92% 10%,rgba(194,151,58,.12),transparent 24%),
    linear-gradient(145deg,#f8fbfb 0%,#eef5f4 48%,#fdfaf4 100%);
  display:flex;align-items:flex-start;justify-content:center;color:#0b2c32
}
.verify-shell{width:min(760px,100%)}
.verify-brandbar{
  position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:20px 26px;margin-bottom:18px;border-radius:22px;
  background:linear-gradient(120deg,#043b45 0%,#075f66 70%,#0a7b7d 100%);
  box-shadow:0 18px 50px rgba(5,61,71,.16)
}
.verify-brandbar:after{
  content:"";position:absolute;right:-70px;top:-110px;width:240px;height:240px;border-radius:50%;
  border:1px solid rgba(222,185,101,.5);box-shadow:0 0 0 16px rgba(222,185,101,.08),0 0 0 34px rgba(255,255,255,.04)
}
.verify-wordmark{display:flex;align-items:center;gap:14px;position:relative;z-index:1}
.verify-mark{
  width:50px;height:50px;border-radius:15px 15px 15px 4px;display:grid;place-items:center;
  font-size:29px;font-weight:900;line-height:1;color:#fff;
  background:linear-gradient(145deg,#5fd7d1,#11a8ad 58%,#05707b);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 8px 20px rgba(0,0,0,.12);
  transform:skewY(-5deg)
}
.verify-wordmark-text{display:flex;flex-direction:column;line-height:1}
.verify-wordmark-text strong{font-size:24px;letter-spacing:.18em;color:#fff}
.verify-wordmark-text small{margin-top:7px;font-size:10px;letter-spacing:.42em;color:#6be1dc}
.verify-brand-copy{position:relative;z-index:1;text-align:right;color:#fff;display:flex;flex-direction:column;gap:5px}
.verify-brand-copy strong{font-size:11px;letter-spacing:.18em}
.verify-brand-copy span{font-size:12px;color:#e8d2a0;letter-spacing:.035em}
.verify-card{
  position:relative;overflow:hidden;width:100%;box-sizing:border-box;
  background:rgba(255,255,255,.97);border-radius:28px;padding:38px 42px 34px;
  box-shadow:0 28px 80px rgba(5,61,71,.14);border:1px solid rgba(5,61,71,.08);text-align:center
}
.verify-card-accent{height:4px;position:absolute;top:0;left:0;right:0;background:linear-gradient(90deg,#c5983b,#e3c77f 38%,#20aaa7 72%,#053d47)}
.verify-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}
.verify-card .page-kicker{margin:0;color:#0a7277;font-size:11px;font-weight:800;letter-spacing:.15em;text-align:left}
.verify-status-chip{
  flex:0 0 auto;padding:7px 11px;border-radius:999px;background:#e9f6f4;color:#08756f;
  font-size:10px;font-weight:900;letter-spacing:.12em;border:1px solid #cde9e4
}
.verify-card.invalid .verify-status-chip{background:#f8eceb;color:#8c4b47;border-color:#edd3d0}
.verify-icon{
  width:82px;height:82px;margin:14px auto 18px;border-radius:50%;display:grid;place-items:center;
  font-size:36px;font-weight:800;background:linear-gradient(135deg,#053d47,#08787a);color:#72ddd4;
  box-shadow:0 12px 26px rgba(5,61,71,.15),inset 0 0 0 1px rgba(255,255,255,.16)
}
.verify-card.invalid .verify-icon{background:linear-gradient(135deg,#703b38,#a4544f);color:#fff}
.verify-card h1{margin:0;color:#12373d;font-size:32px;letter-spacing:-.025em}
.verify-intro{max-width:560px;margin:14px auto 0;color:#4d6366;line-height:1.6}
.verify-card dl{
  text-align:left;display:grid;grid-template-columns:155px 1fr;gap:12px 18px;margin:30px 0 24px;
  padding:22px 24px;background:linear-gradient(135deg,#f5f9f8,#fbfaf6);border-radius:18px;
  border:1px solid #e5eeee;box-shadow:inset 4px 0 0 #c5983b
}
.verify-card dt{font-size:11px;font-weight:900;color:#748c8f;text-transform:uppercase;letter-spacing:.08em}
.verify-card dd{margin:0;font-weight:650;color:#16383d}
.verify-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.025em}
.verify-state-text{color:#08756f;font-weight:800}
.verify-card.invalid .verify-state-text{color:#8c4b47}
.verify-qr-wrap{
  display:inline-flex;flex-direction:column;align-items:center;gap:7px;margin:0 auto 8px;
  padding:14px 16px 11px;border-radius:18px;background:#fff;border:1px solid #edf1ef;
  box-shadow:0 12px 34px rgba(5,61,71,.08)
}
.verify-qr{width:154px;height:154px;object-fit:contain;margin:0;display:block;border:0;box-shadow:none}
.verify-qr-wrap span{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#819497;font-weight:800}
.verify-search{margin:24px 0 14px;text-align:left;padding-top:22px;border-top:1px solid #e5eeee}
.verify-search label{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#6d8588;margin-bottom:8px}
.verify-search-row{display:grid;grid-template-columns:1fr auto;gap:10px}
.verify-search input{
  min-width:0;border:1px solid #cbdada;border-radius:13px;padding:13px 14px;font:inherit;color:#0a2a30;background:#fff
}
.verify-search input:focus{outline:3px solid rgba(49,158,165,.18);border-color:#319ea5}
.verify-privacy{font-size:12px;line-height:1.5;max-width:560px;margin:14px auto 18px}
.verify-home{display:inline-flex}
.verify-values{
  margin:28px -42px -34px;padding:16px 24px;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;
  background:linear-gradient(90deg,#073f49,#075f66);color:#e8d2a0;border-top:1px solid rgba(197,152,59,.45)
}
.verify-values span{font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.verify-footer{text-align:center;margin-top:16px;color:#61787a;font-size:9px;font-weight:800;letter-spacing:.12em}
@media(max-width:700px){
  .verify-page{padding:22px 12px}.verify-brandbar{padding:16px 18px;align-items:flex-start}
  .verify-brand-copy{display:none}.verify-card{padding:30px 22px 28px}.verify-topline{align-items:flex-start}
  .verify-card .page-kicker{font-size:9px}.verify-card h1{font-size:27px}
  .verify-card dl{grid-template-columns:1fr;gap:5px;padding:18px}.verify-card dd{margin-bottom:9px}
  .verify-search-row{grid-template-columns:1fr}.verify-search-row .btn{width:100%}
  .verify-values{margin:26px -22px -28px;gap:14px 20px}.verify-wordmark-text strong{font-size:20px}
}


/* v0.20 · Marca de agua de reproducción personalizada */
.video-watermark{
  position:absolute;
  left:18%;
  top:24%;
  transform:translate(-50%,-50%);
  z-index:5;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
  opacity:0;
  max-width:min(52%,440px);
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(3,31,36,.32);
  color:rgba(255,255,255,.82);
  text-shadow:0 1px 4px rgba(0,0,0,.75);
  box-shadow:0 4px 18px rgba(0,0,0,.10);
  backdrop-filter:blur(2px);
  transition:left .8s ease,top .8s ease,opacity .25s ease;
  line-height:1.15;
}
.video-watermark.active{opacity:.78}
.video-watermark span{
  display:block;
  margin-bottom:3px;
  font-size:8px;
  font-weight:800;
  letter-spacing:.16em;
  opacity:.84;
}
.video-watermark b{
  display:block;
  font-size:12px;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.video-watermark small{
  display:block;
  margin-top:2px;
  font-size:9px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.video-overlay-actions{display:flex;align-items:center;gap:8px}
.video-fullscreen-btn{
  pointer-events:auto;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.28);
  border-radius:8px;
  background:rgba(2,31,36,.42);
  color:#fff;
  font:700 14px/1 system-ui,sans-serif;
  cursor:pointer;
}
.video-fullscreen-btn:hover{background:rgba(2,31,36,.72)}
.video-shell:fullscreen{
  display:grid;
  place-items:center;
  background:#000;
  border-radius:0;
}
.video-shell:fullscreen .video-player{
  width:100vw;
  height:100vh;
  max-height:100vh;
  object-fit:contain;
}
.video-shell:fullscreen .video-overlay{z-index:6}
.video-shell:fullscreen .video-watermark{z-index:7}
@media(max-width:640px){
  .video-watermark{max-width:64%;padding:6px 8px}
  .video-watermark b{font-size:10px}
  .video-watermark small{font-size:8px}
  .video-watermark span{font-size:7px}
  .video-fullscreen-btn{width:26px;height:26px}
}

/* v0.21 · Watermark/fullscreen robustness */
.video-watermark{
  opacity:.74 !important;
  z-index:8 !important;
  background:rgba(3,31,36,.46);
  border-color:rgba(255,255,255,.34);
}
.video-watermark.active{opacity:.82 !important}
.video-overlay{z-index:9}
.video-overlay-actions{pointer-events:auto}
.video-fullscreen-btn{
  pointer-events:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  cursor:pointer !important;
}
.video-shell:-webkit-full-screen{
  display:grid;
  place-items:center;
  background:#000;
  border-radius:0;
}
.video-shell:-webkit-full-screen .video-player{
  width:100vw;
  height:100vh;
  max-height:100vh;
  object-fit:contain;
}
.video-shell:-webkit-full-screen .video-overlay{z-index:10}
.video-shell:-webkit-full-screen .video-watermark{z-index:11}


/* v0.22 · Marca de agua fija, discreta y superior derecha */
.video-watermark{
  position:absolute !important;
  top:52px !important;
  right:18px !important;
  left:auto !important;
  transform:none !important;
  z-index:8 !important;
  max-width:min(30%,260px) !important;
  padding:5px 8px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:8px !important;
  background:rgba(3,31,36,.08) !important;
  color:rgba(255,255,255,.42) !important;
  text-shadow:0 1px 2px rgba(0,0,0,.22) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  opacity:.48 !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  transition:none !important;
  line-height:1.08 !important;
}
.video-watermark.active{opacity:.48 !important}
.video-watermark span{
  display:block;
  margin-bottom:2px;
  font-size:7px !important;
  font-weight:700;
  letter-spacing:.14em;
  opacity:.46 !important;
}
.video-watermark b{
  display:block;
  font-size:10px !important;
  font-weight:700;
  opacity:.58 !important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.video-watermark small{
  display:block;
  margin-top:1px;
  font-size:8px !important;
  opacity:.50 !important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.video-shell:fullscreen .video-watermark,
.video-shell:-webkit-full-screen .video-watermark{
  top:58px !important;
  right:22px !important;
  left:auto !important;
  transform:none !important;
  opacity:.48 !important;
}
@media(max-width:640px){
  .video-watermark{
    top:48px !important;
    right:10px !important;
    max-width:42% !important;
    padding:4px 6px !important;
  }
  .video-watermark b{font-size:9px !important}
  .video-watermark small{font-size:7px !important}
  .video-watermark span{font-size:6px !important}
}


/* v0.23 · Estados de filas aislados de estilos globales */
.student-lesson{
  height:auto !important;
  min-height:58px;
  overflow:visible !important;
}
.student-lesson.state-progress,
.student-lesson.state-next,
.student-lesson.state-completed,
.student-lesson.state-available,
.student-lesson.state-locked{
  height:auto !important;
  overflow:visible !important;
}


/* v0.24 · Bunny Stream player */
.bunny-player{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  border:0;
  background:#041f25;
}
.video-shell:fullscreen .bunny-player,
.video-shell:-webkit-full-screen .bunny-player{
  width:100vw;
  height:100vh;
  max-height:100vh;
  aspect-ratio:auto;
  border:0;
}
