:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17213f;--blue:#2765d6;--blue-deep:#153b8d;--cyan:#20c5d8;--pink:#ec4f91;--muted:#5f6b85;--paper:#fff;--background:#eaf3ff}*{box-sizing:border-box}html{background:var(--background)}body{color:var(--ink);background:radial-gradient(circle at 18% 22%, #20c5d82e 0 9%, transparent 9.5%), radial-gradient(circle at 86% 18%, #ec4f9124 0 8%, transparent 8.5%), radial-gradient(circle at 72% 84%, #2765d621 0 12%, transparent 12.5%), var(--background);margin:0;font-family:Manrope,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.page-shell{place-items:center;min-height:100svh;padding:2rem;display:grid}.hero{background:#ffffffe0;border:2px solid #17213f2e;border-radius:2rem;width:min(68rem,100%);padding:clamp(2rem,6vw,5rem);box-shadow:0 1.5rem 5rem #153b8d29}.card{background:#ffffffeb;border:2px solid #17213f2e;border-radius:2rem;width:min(68rem,100%);padding:clamp(1.5rem,5vw,3.5rem);box-shadow:0 1.5rem 5rem #153b8d29}.card.narrow{width:min(34rem,100%)}.card.wide{width:min(80rem,100%)}.align-start{place-items:start center}.page-title{margin:0 0 1rem;font-size:clamp(2rem,5vw,4rem);line-height:1.05}.eyebrow{color:var(--blue-deep);letter-spacing:.06em;text-transform:uppercase;margin:0 0 1rem;font-size:clamp(.9rem,1.5vw,1.05rem);font-weight:750}h1{letter-spacing:-.025em;margin:0;font-size:clamp(2.3rem,7vw,6.4rem);line-height:.98}h2,h3,h4{letter-spacing:-.012em}h1 span{color:var(--pink)}.lead{max-width:50rem;margin:2rem 0 0;font-size:clamp(1.05rem,2.2vw,1.45rem);line-height:1.55}.lead.compact{font-size:clamp(1rem,2vw,1.25rem)}.button,.small-button{border:2px solid var(--blue-deep);color:#fff;background:var(--blue-deep);min-height:3rem;font:inherit;cursor:pointer;border-radius:.8rem;justify-content:center;align-items:center;padding:.75rem 1.25rem;font-weight:750;text-decoration:none;display:inline-flex}.hero .button{margin-top:2rem}.button:hover,.button:focus-visible,.small-button:hover,.small-button:focus-visible{background:var(--blue)}.button:focus-visible,.small-button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.text-link:focus-visible{outline:4px solid var(--cyan);outline-offset:3px}.button:disabled{opacity:.65;cursor:wait}.button.secondary{color:var(--blue-deep);background:#fff}.button.quiet{color:var(--ink);background:0 0;border-color:#17213f47}.small-button{min-height:2.3rem;padding:.4rem .65rem;font-size:.88rem}.form{gap:1.1rem;margin:1.5rem 0;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form label{gap:.45rem;font-weight:700;display:grid}input,select{width:100%;min-height:3rem;color:var(--ink);font:inherit;background:#fff;border:2px solid #17213f52;border-radius:.65rem;padding:.65rem .8rem}.message{border-radius:.7rem;padding:.8rem 1rem;font-weight:700}.message.error{color:#861b42;background:#ffe3ee}.message.success{color:#0b5d4a;background:#d9fff2}.text-link{color:var(--blue-deep);margin-top:1rem;font-weight:700;display:inline-block}.actions,.row-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.breadcrumbs{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border-bottom:1px solid #17213f26;padding:.85rem max(1rem,50vw - 40rem);position:relative}.breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:.45rem;margin:0;padding:0;font-size:.92rem;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:.45rem;display:inline-flex}.breadcrumbs li+li:before{content:"›";color:var(--muted);font-weight:800}.breadcrumbs a{color:var(--blue-deep);text-underline-offset:.2em;font-weight:750;text-decoration-thickness:1px}.breadcrumbs [aria-current=page]{color:var(--muted);font-weight:700}.course-entry{border:3px solid var(--blue-deep);color:#fff;background:linear-gradient(120deg, var(--blue-deep), var(--blue) 62%, #187cba);border-radius:1.4rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem 1.5rem;margin-top:2rem;padding:clamp(1.25rem,3vw,2rem);text-decoration:none;display:grid;box-shadow:0 1rem 2.5rem #153b8d3d}.course-entry span,.course-entry strong,.course-entry small{display:block}.course-entry span{color:#ddecff;text-transform:uppercase;font-size:.9rem;font-weight:800}.course-entry strong{letter-spacing:-.02em;grid-column:1;font-size:clamp(1.65rem,4vw,2.65rem);line-height:1.08}.course-entry small{grid-column:1;margin-top:.35rem;font-size:clamp(.95rem,1.8vw,1.08rem);line-height:1.45}.course-entry b{grid-area:1/2/4;font-size:clamp(2rem,5vw,3.5rem)}.course-entry:hover,.course-entry:focus-visible{border-color:var(--pink);background:linear-gradient(120deg,#173f93,#2f71e2 62%,#1687c9)}.dashboard-extras{border-top:2px solid #2765d624;margin-top:1.25rem;padding-top:1.25rem}.create-panel{background:#f5f9ff;border:2px solid #2765d638;border-radius:1rem;margin:2rem 0;padding:1rem 1.2rem}.create-panel summary{cursor:pointer;font-size:1.1rem;font-weight:800}.table-scroll{margin:2rem 0;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%}caption{text-align:left;padding:0 0 .8rem;font-weight:800}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #17213f2e;padding:.9rem}thead th{color:#fff;background:var(--blue-deep)}tbody th span,tbody th small{display:block}tbody th small{margin-top:.25rem;font-weight:500}.row-actions{margin-top:0}.notification-list{gap:1rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.notification-item{background:#fff;border:2px solid #17213f2e;border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;padding:1.25rem;display:grid}.notification-item.unread{border-color:var(--blue);background:#f4f8ff}.notification-item h2{margin:.2rem 0 .5rem;font-size:1.25rem}.notification-item p{margin:0 0 .65rem;line-height:1.55}.notification-item time,.notification-state{color:var(--blue-deep);font-size:.9rem;font-weight:750}.notification-state{margin:0}.notification-dismiss{color:var(--ink);background:#fff;border-color:#17213f59}.empty-state{background:#f5f9ff;border-radius:1rem;margin-top:2rem;padding:1.25rem;line-height:1.55}.certificate-list{gap:1.25rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.certificate-card{background:#f8faff;border:2px solid #2765d63d;border-radius:1.25rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;padding:1.5rem;display:grid}.certificate-card h2{margin:.25rem 0 .75rem;font-size:clamp(1.25rem,2.5vw,1.8rem)}.certificate-card p{margin:.35rem 0}.certificate-kind,.certificate-state{color:var(--blue-deep);letter-spacing:.03em;text-transform:uppercase;font-size:.9rem;font-weight:800}.certificate-state.state-revoked{color:#861b42}.achievement-badge{color:#fff;background:var(--blue-deep);border-radius:999px;padding:.5rem .85rem;font-weight:800;display:inline-block;margin-top:.75rem!important}.certificate-actions{gap:.75rem;min-width:13rem;display:grid}.verification-card{width:min(55rem,100%)}.verification-result{border:2px solid;border-radius:1rem;margin:1.5rem 0;padding:1.25rem}.verification-result h2,.verification-result p{margin:.25rem 0}.verification-result.valid{background:#d9fff2;border-color:#0b8064}.verification-result.invalid{background:#ffe3ee;border-color:#a62955}.certificate-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0;display:grid}.certificate-details div{background:#f5f9ff;border-radius:.85rem;padding:1rem}.certificate-details dt{color:var(--blue-deep);text-transform:uppercase;font-size:.85rem;font-weight:800}.certificate-details dd{margin:.4rem 0 0;font-size:1.05rem;font-weight:700}.notification-preferences{margin-top:2rem}.checkbox-label{grid-template-columns:none;align-items:center;gap:.75rem!important;display:flex!important}.checkbox-label input{width:1.35rem;min-height:1.35rem;margin:0}.notification-time-grid{margin:0}.form-hint{color:#17213fc7;margin:0;line-height:1.5}.delivery-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:2rem 0;display:grid}.delivery-summary div{background:#f5f9ff;border:2px solid #2765d638;border-radius:1rem;padding:1rem}.delivery-summary dt{color:var(--blue-deep);font-weight:750}.delivery-summary dd{margin:.35rem 0 0;font-size:1.8rem;font-weight:850}.delivery-filter{gap:.45rem;max-width:22rem;font-weight:750;display:grid}.delivery-status{background:#e8efff;border-radius:999px;padding:.35rem .65rem;font-size:.88rem;font-weight:800;display:inline-block}.delivery-status.status-delivered{color:#075d48;background:#dff9ef}.delivery-status.status-failed_temporary,.delivery-status.status-failed_permanent{color:#7f1d1d;background:#ffe3e7}.delivery-error{color:#7f1d1d;margin-top:.35rem;display:block}@media (max-width:50rem){.delivery-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:44rem){.notification-item{grid-template-columns:1fr}}.module-list{gap:1rem;margin:2rem 0;padding:0;list-style:none;display:grid}.module-card{background:#fff;border:2px solid #2765d63d;border-radius:1.2rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.2rem;padding:1.25rem;display:grid}.module-card.status-locked{color:#17213fab;background:#ffffff9e;border-color:#17213f24}.module-card.status-completed{background:#effff9;border-color:#0b7b6166}.module-number{color:#fff;background:var(--pink);border-radius:50%;place-items:center;width:3rem;height:3rem;font-size:1.2rem;font-weight:850;display:grid}.module-copy h2,.section-card h2{margin:.25rem 0 .5rem}.module-copy p{margin:.25rem 0}.module-meta{color:var(--blue-deep);font-size:.9rem;font-weight:750}.module-action{justify-items:end;gap:.65rem;display:grid}.status-pill,.section-kind{width:fit-content;color:var(--blue-deep);background:#e8efff;border-radius:999px;padding:.38rem .7rem;font-size:.88rem;font-weight:800;display:inline-flex}.status-completed{color:#075e49;background:#d9fff2}.section-list{gap:1.2rem;margin:2rem 0;display:grid}.section-card{background:#fff;border:2px solid #17213f29;border-radius:1.2rem;padding:clamp(1.2rem,3vw,2rem)}.section-card.section-status-locked{color:#17213fad;background:#ffffffa8;border-color:#17213f1f}.section-card:target{outline:4px solid var(--cyan);outline-offset:4px}.section-next-step{flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1rem;display:flex}.section-next-step .message{margin:0}.module-navigation{border-top:2px solid #2765d62e;grid-template-columns:minmax(13rem,auto) minmax(18rem,1fr);align-items:stretch;gap:1rem;margin-top:2.4rem;padding-top:1.5rem;display:grid}.module-navigation .button{min-height:4rem;font-size:clamp(1rem,1.6vw,1.18rem)}.module-list-button{gap:.65rem}.module-next-button{background:linear-gradient(135deg, var(--pink), #9c205d);border-color:#9c205d;gap:.75rem;font-weight:850;box-shadow:0 12px 28px #c42a6f3d}.module-next-button:hover,.module-next-button:focus-visible{background:#9c205d;border-color:#7f1749}.module-next-hint{color:#17213fb8;background:#f7f9ff;border:2px dashed #2765d640;border-radius:.8rem;align-items:center;margin:0;padding:.9rem 1.1rem;font-size:.92rem;line-height:1.45;display:flex}.section-card header{flex-wrap:wrap;justify-content:space-between;gap:.75rem;display:flex}.compact-actions{margin-top:1rem}.course-video{background:#0e1730;border-radius:.9rem;width:100%;max-height:70svh}.video-watch-status{gap:.55rem;margin-top:.9rem;display:grid}.video-watch-heading{justify-content:space-between;align-items:baseline;gap:1rem;font-size:.94rem;display:flex}.video-watch-heading strong{color:var(--brand-deep);font-size:1.05rem}.video-watch-track{background:#e9eefc;border:1px solid #b9c5e7;border-radius:999px;width:100%;height:.9rem;overflow:hidden}.video-watch-track>span{border-radius:inherit;background:linear-gradient(90deg, var(--brand), var(--accent));width:0;height:100%;transition:width .18s ease-out;display:block}@media (max-width:42rem){.module-navigation{grid-template-columns:1fr}.module-next-button{grid-row:1}}.lesson-document{width:min(72rem,100%);font-size:1.08rem;line-height:1.72}.lesson-document>h1{margin:2rem 0 1.25rem;font-size:clamp(2.1rem,5vw,4rem);line-height:1.08}.lesson-document>h2{margin:3.4rem 0 1rem;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.2}.lesson-document>p,.lesson-document>ul,.lesson-document>ol{max-width:52rem}.lesson-back{margin:0 0 1.5rem}.lesson-figure,.lesson-animation{margin:1.6rem 0 2.4rem}.lesson-media,.course-animation-video{background:#fff;border:2px solid #17213f29;border-radius:1rem;width:100%;height:auto;display:block}.lesson-animation{background:#f5f9ff;border:2px solid #2765d63d;border-radius:1.2rem;padding:clamp(1rem,3vw,1.5rem)}.lesson-animation>figcaption{gap:.3rem;margin-bottom:1rem;display:grid}.lesson-animation>figcaption strong{color:var(--blue-deep)}.animation-controls{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.animation-description,.animation-steps{background:#fff;border:2px solid #17213f24;border-radius:.8rem;margin-top:1rem;padding:.9rem 1rem}.animation-description summary,.animation-steps summary{cursor:pointer;font-weight:800}.animation-steps ol{gap:1.5rem;padding-left:1.5rem;display:grid}.animation-steps figure{margin:0}.animation-steps figcaption{margin-top:.5rem;font-weight:750}.lesson-completion{background:#effff9;border:2px solid #0b7b615c;border-radius:1.2rem;margin-top:4rem;padding:clamp(1.2rem,3vw,2rem)}.lesson-completion h2{margin-top:0}.statistics-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0;display:grid}.statistics-summary article{background:#f5f9ff;border:2px solid #2765d638;border-radius:1rem;gap:.25rem;padding:1.2rem;display:grid}.statistics-summary strong{color:var(--blue-deep);font-size:clamp(1.5rem,3vw,2.2rem)}.statistics-summary span{color:var(--muted);font-weight:700}.statistics-panel{margin:2rem 0}.table-scroll{overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%}.table-scroll th,.table-scroll td{text-align:left;vertical-align:top;border-bottom:1px solid #17213f24;padding:.85rem 1rem}.table-scroll thead th{color:var(--blue-deep);background:#f5f9ff}.table-scroll tbody th small{color:var(--muted);margin-top:.25rem;font-weight:500;display:block}.empty-state{background:#f8fbff;border:2px dashed #2765d659;border-radius:1rem;padding:clamp(1.2rem,4vw,2.4rem)}.empty-state h3{margin-top:0}.table-link{color:var(--blue-deep);text-underline-offset:.2em;text-decoration-thickness:.12em}.statistics-chart{background:#fff;border:2px solid #2765d638;border-radius:1rem;margin:1rem 0;padding:1rem}.statistics-chart svg{width:100%;height:auto;display:block}.statistics-chart text{fill:var(--muted);font:700 16px Manrope,sans-serif}.chart-axis{stroke:#17213f73;stroke-width:2px}.chart-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:5px}.chart-line-mean{stroke:var(--blue)}.chart-line-maximum{stroke:var(--pink)}.statistics-chart figcaption{flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:.75rem;font-weight:700;display:flex}.legend-swatch{border-radius:1rem;width:1.5rem;height:.3rem;margin-left:.5rem}.legend-swatch.mean{background:var(--blue)}.legend-swatch.maximum{background:var(--pink)}.ranking-highlight{background:#fff2f8;border:2px solid #e2327959;border-radius:1rem;gap:.3rem;padding:1.2rem;display:grid}.ranking-highlight strong{color:var(--pink);font-size:1.45rem}.ranking-metadata{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0;display:grid}.ranking-metadata div{background:#f5f9ff;border-radius:.9rem;gap:.35rem;padding:1rem;display:grid}.ranking-metadata span{color:var(--muted);font-weight:700}.ranking-metadata strong{color:var(--blue-deep);font-size:1.15rem}.ranking-groups{flex-wrap:wrap;gap:.6rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.ranking-groups li{background:#fff;border:2px solid #17213f2e;border-radius:999px;padding:.4rem .7rem;font-weight:800}.ranking-groups li.achieved{color:#fff;border-color:var(--blue-deep);background:var(--blue-deep)}.own-ranking-row{background:#fff2f8}.ranking-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.ranking-pagination span{font-weight:800}.statistics-secondary-link{margin-left:1.5rem}.parameter-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.parameter-list div{background:#f5f9ff;border-radius:.8rem;padding:.85rem 1rem}.parameter-list dt{color:var(--muted);font-weight:700}.parameter-list dd{overflow-wrap:anywhere;margin:.2rem 0 0;font-weight:800}.activity-breakdown{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.activity-breakdown div{background:#f5f9ff;border-radius:.8rem;padding:1rem}.activity-breakdown dt{color:var(--muted);font-weight:700}.activity-breakdown dd{color:var(--blue-deep);margin:.25rem 0 0;font-size:1.25rem;font-weight:850}.admin-search{gap:.45rem;margin:1.75rem 0;display:grid}.admin-search label,.certificate-admin-operations label{color:var(--blue-deep);font-weight:800}.admin-search input{min-width:min(28rem,65vw)}.admin-certificate-list{gap:1.25rem;margin:1.5rem 0;display:grid}.admin-certificate{background:#fff;border:2px solid #2765d638;border-radius:1.1rem;padding:clamp(1rem,3vw,1.5rem)}.admin-certificate>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-certificate h2{margin:.2rem 0}.admin-certificate code{overflow-wrap:anywhere}.admin-certificate-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0;display:grid}.admin-certificate-facts div{background:#f5f9ff;border-radius:.8rem;padding:.8rem}.admin-certificate-facts dt{color:var(--muted);font-weight:700}.admin-certificate-facts dd{margin:.2rem 0 0;font-weight:850}.certificate-admin-operations{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.certificate-admin-operations details{background:#f8fbff;border:2px solid #17213f24;border-radius:.9rem;padding:1rem}.certificate-admin-operations summary{cursor:pointer;color:var(--blue-deep);font-weight:850}.certificate-admin-operations form{gap:.85rem;margin-top:1rem;display:grid}.certificate-admin-operations label{gap:.35rem;display:grid}.certificate-admin-operations input,.certificate-admin-operations select,.certificate-admin-operations textarea,.admin-search input{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;background:#fff;border:2px solid #17213f40;border-radius:.7rem;padding:.75rem}.button.danger{color:#fff;background:#a21b39;border-color:#a21b39}.certificate-audit{border-left:5px solid var(--pink);background:#fff2f8;border-radius:.6rem;margin-top:1rem;padding:1rem}.certificate-audit h3{margin-top:0}.certificate-audit li+li{margin-top:.65rem}.user-editor{background:#f8fbff;border:2px solid #2765d647;border-radius:1.1rem;gap:1.25rem;margin:1.5rem 0;padding:clamp(1rem,3vw,1.5rem);display:grid}.user-editor-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.user-editor-heading h2,.password-reset-form h3{margin:.15rem 0}.job-status{background:#f5f9ff;border:2px solid #2765d640;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;margin:1.25rem 0;padding:1rem 1.25rem;display:flex}.job-status h2{margin:0 0 .35rem}.job-status p{margin:.2rem 0}.password-reset-form{border-top:2px solid #2765d62e;padding-top:1.25rem}.password-reset-form label{max-width:32rem}@media (max-width:40rem){.page-shell{padding:1rem}.hero,.card{border-radius:1.4rem}.form-grid{grid-template-columns:1fr}.module-card{grid-template-columns:auto minmax(0,1fr)}.module-action{grid-column:1/-1;justify-items:stretch}.statistics-summary,.parameter-list,.activity-breakdown,.ranking-metadata,.certificate-card,.certificate-details{grid-template-columns:1fr}.certificate-actions{min-width:0}.admin-certificate>header{display:grid}.admin-certificate-facts,.certificate-admin-operations{grid-template-columns:1fr}.admin-search input{min-width:0}.user-editor-heading{display:grid}.job-status{flex-direction:column;align-items:stretch}.breadcrumbs{padding-block:.7rem}.course-entry{grid-template-columns:1fr}.course-entry b{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
