@font-face{font-family:Academy;src:local("Arial")}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;background:#fff;color:#252525;font-family:Academy,Arial,sans-serif;line-height:1.55}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #4263eb;outline-offset:4px}::selection{background:#dbe5ff}.wrap{width:calc(100% - 76px);max-width:1240px;margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:35px;position:relative}.brand{font-family:Impact,"Arial Narrow",Arial,sans-serif;font-stretch:condensed;line-height:1;font-size:32px;letter-spacing:-1.4px;font-weight:900;white-space:nowrap}.brand span{display:inline-block;margin:0 4px;color:#646464}.nav-pill{background:#252525;color:#f2f2f2;display:flex;align-items:center;padding:9px 10px 9px 28px;gap:27px;border-radius:80px;font-size:18px}.nav-pill>a:hover{color:#fff;text-decoration:underline;text-underline-offset:7px}.round{border:0;display:inline-grid;place-items:center;border-radius:50%;width:54px;height:54px;flex-shrink:0}.round svg{width:25px;height:25px}.nav-toggle{background:#3a3a3a;color:#fff}.avatar{background:#f5f5f5;color:#282828;font-size:21px;width:58px;height:58px}.avatar.admin-avatar{box-shadow:inset 0 0 0 1px #d4d4d4}.menu{position:absolute;top:120px;right:0;background:white;border:1px solid #ececec;box-shadow:0 18px 50px #00000012;border-radius:24px;padding:12px;z-index:10;min-width:260px}.menu a,.menu button{display:block;padding:13px 16px;border:0;background:none;text-align:left;width:100%;border-radius:12px;font-size:16px}.menu a:hover,.menu button:hover{background:#f5f5f5}.main{margin-top:75px;min-height:calc(100vh - 305px)}.breadcrumbs{display:flex;align-items:center;gap:13px;color:#989898;margin-bottom:30px;font-size:16px}.breadcrumbs a:hover{color:#252525}.eyebrow{font-size:14px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;color:#999;margin:0 0 7px}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:33px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,3.8vw,48px);font-weight:600;line-height:1.13;letter-spacing:-1.6px;margin-bottom:14px}h2{font-size:28px;line-height:1.2;letter-spacing:-.6px;font-weight:600;margin-bottom:17px}h3{font-size:21px;font-weight:600;line-height:1.3;margin-bottom:9px}.muted{color:#8b8b8b}.lead{font-size:18px;color:#858585;max-width:680px;margin-bottom:0}.small{font-size:14px;color:#929292}.button{border:1px solid #252525;background:#252525;color:white;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:40px;font-size:16px;font-weight:600;min-height:50px;line-height:1.35;transition:background .15s,transform .15s;white-space:normal}.button:hover{background:#424242}.button svg{width:20px;height:20px;flex-shrink:0}.button.secondary{color:#2d2d2d;background:#fff;border-color:#e0e0e0}.button.secondary:hover{background:#f4f4f4}.button.ghost{background:transparent;color:#555;border-color:transparent;padding-inline:5px}.button.danger{background:#fff3f1;border-color:#f2d9d4;color:#9c3b2c}.button.white{background:white;color:#252525;border:0}.button.full{width:100%}.button.compact{min-height:40px;padding:9px 16px;font-size:14px}.button .play-icon{width:35px;height:35px;background:#252525;color:white;border-radius:50%;padding:10px}.catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:25px}.course-card{border:1px solid #ebebeb;border-radius:31px;overflow:hidden;box-shadow:0 6px 12px #00000003;background:white;display:flex;flex-direction:column}.course-cover{position:relative;height:252px;overflow:hidden;background:#2b2c2f;isolation:isolate;color:white;padding:25px}.course-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.62);z-index:-1;transform:scale(1.5);object-position:60% 45%}.course-card.pro .course-cover>img{filter:grayscale(1) brightness(.38);transform:scale(1.25) rotate(180deg)}.cover-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.badge{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;letter-spacing:.2px;padding:6px 12px;border-radius:30px;background:#ffffffed;color:#444;line-height:1.5}.badge svg{width:14px;height:14px}.badge.dark{background:#333333c9;color:white}.badge.draft{background:#f0f0f0;color:#777}.cover-title{position:absolute;bottom:21px;left:27px;line-height:.92;font-size:54px;letter-spacing:-2px;font-weight:600}.cover-mark{position:absolute;right:26px;bottom:26px;border:1px solid #ffffff65;border-radius:50%;height:54px;width:54px;display:grid;place-items:center}.cover-mark svg{width:24px;height:24px}.course-info{padding:26px;display:flex;flex-direction:column;flex:1}.course-info h2{font-size:27px}.course-info p{color:#828282;min-height:56px;margin-bottom:22px}.course-meta{display:flex;align-items:center;gap:13px;flex-wrap:wrap;font-size:14px;color:#999;margin-bottom:22px}.course-info .button{margin-top:auto;width:100%}.course-progress{height:5px;border-radius:5px;background:#eee;overflow:hidden;margin-bottom:18px}.course-progress span{display:block;background:#333;height:100%}.notice{background:#f6f6f6;border-radius:24px;padding:24px 28px;margin:30px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.notice p{margin:3px 0 0;color:#828282;font-size:16px}.notice h3{margin:0;font-size:19px}.notice .button{flex-shrink:0}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:30px;align-items:start}.lesson-main{min-width:0}.video-cover{aspect-ratio:16/9;background:#28282b;border-radius:28px;overflow:hidden;position:relative;isolation:isolate;color:white;display:flex;flex-direction:column;justify-content:space-between;padding:25px}.video-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.4);z-index:-1}.video-cover .badge{align-self:start}.video-cover-bottom{display:flex;align-items:end;justify-content:space-between;gap:22px}.video-cover h2{font-size:clamp(25px,3vw,41px);color:white;margin-bottom:8px;max-width:460px;line-height:1.12}.video-cover p{margin:0;color:#d2d2d2}.video-cover .button{flex-shrink:0}.player{width:100%;background:#202020;border-radius:28px;aspect-ratio:16/9;display:block}.lesson-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:22px 0 30px}.panel{background:white;border:1px solid #f2f2f2;box-shadow:0 8px 25px #00000004;border-radius:27px;padding:29px;margin-bottom:25px}.panel p:last-child{margin-bottom:0}.panel p,.lesson-body{font-size:18px;color:#626262;line-height:1.75}.lesson-body{white-space:pre-wrap;overflow-wrap:anywhere}.sidebar{border-radius:23px;background:#f7f7f7;padding:24px;position:sticky;top:20px}.sidebar .eyebrow{color:#8e8e8e;margin-bottom:20px}.lesson-item{display:flex;align-items:center;gap:15px;border-radius:16px;padding:17px 13px;margin:0 -6px 6px}.lesson-item.active{background:white;box-shadow:0 3px 8px #00000005}.lesson-item .lesson-num{font-size:14px;color:#999;flex:0 0 20px}.lesson-item .item-text{font-size:15px;line-height:1.45;flex:1}.lesson-item small{display:block;font-size:13px;color:#aaa;margin-top:4px}.lesson-item svg{height:17px;width:17px;flex-shrink:0;color:#888}.lesson-item:disabled{opacity:.65;cursor:default}.lesson-item.buttonless{border:0;background:transparent;text-align:left;width:calc(100% + 12px);color:inherit}.lesson-item.buttonless.active{background:white}.locked-state{padding:56px 30px;background:#f7f7f7;border-radius:30px;text-align:center;max-width:700px;margin:20px auto}.locked-state>.round{width:75px;height:75px;background:#eaeaea;margin-bottom:24px}.locked-state p{max-width:460px;margin:0 auto 26px;color:#888}.lock-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.empty{padding:40px 22px;text-align:center;color:#999}.loading{padding:70px 20px;color:#929292}.tabs{display:flex;gap:8px;background:#f4f4f4;border-radius:40px;padding:6px;margin-bottom:30px;width:fit-content;flex-wrap:wrap}.tabs button{border:0;background:none;padding:11px 23px;border-radius:30px;color:#7b7b7b}.tabs button.active{background:#252525;color:white}.admin-top{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:25px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;text-align:left;min-width:0}.field label{font-size:14px;color:#7e7e7e}.input,input[type=search],input[type=text],input[type=date],input[type=number],textarea,select{background:white;border:1px solid #dedede;border-radius:13px;min-height:49px;padding:12px 15px;min-width:0;width:100%;color:#333;outline-offset:2px}textarea{resize:vertical;min-height:110px;line-height:1.6}.search{max-width:370px}.table-scroll{overflow-x:auto;border:1px solid #eaeaea;border-radius:24px}table{border-collapse:collapse;width:100%;text-align:left;font-size:15px}th{color:#979797;font-size:14px;font-weight:400;background:#fafafa;padding:17px 20px;white-space:nowrap}td{padding:20px;border-top:1px solid #eee;vertical-align:middle}td small{display:block;color:#999;font-size:13px;margin-top:4px}.person{display:flex;gap:12px;align-items:center}.person .round{width:40px;height:40px;background:#f1f1f1}.status{font-size:13px;display:inline-flex;align-items:center;gap:6px;border-radius:30px;background:#f3f3f3;color:#969696;padding:6px 10px;white-space:nowrap}.status.active{background:#e8ede8;color:#415b46}.status svg{width:14px;height:14px}.admin-lesson{display:flex;align-items:center;justify-content:space-between;padding:19px 0;border-bottom:1px solid #eee;gap:20px}.admin-lesson:last-child{border-bottom:0}.admin-lesson strong{font-weight:500}.admin-lesson .small{display:block;margin-top:5px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.account-card{max-width:790px}.account-title{display:flex;align-items:center;gap:17px;margin-bottom:27px}.account-title .avatar{width:72px;height:72px}.account-title h2{margin:0 0 5px}.details-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid #eee}.details-row:last-child{border:0}.details-row span{color:#929292}.upload-label{display:flex;flex-direction:column;gap:12px;background:#f7f7f7;border:1px dashed #d1d1d1;border-radius:17px;padding:20px;cursor:pointer}.upload-label input{max-width:100%;font-size:14px}.upload-label small{font-size:13px;color:#999}.switch-line{display:flex;align-items:center;gap:12px;margin:15px 0 25px}.switch-line input{width:20px;height:20px;accent-color:#252525}.progressbar{width:100%;accent-color:#333}.footer{border-top:1px solid #eee;margin-top:75px;padding:28px 0 35px;display:flex;justify-content:space-between;gap:20px;color:#999;font-size:14px}.footer-brand{font-size:14px;letter-spacing:.3px;font-weight:700;color:#555}.footer-brand span{display:block;font-weight:400;font-size:13px;color:#aaa;letter-spacing:0;margin-top:3px}.footer>div{display:flex;gap:25px;align-items:center}dialog{border:1px solid #e8e8e8;border-radius:30px;padding:38px;width:calc(100% - 36px);max-width:580px;color:#252525;max-height:88dvh;overflow:auto;box-shadow:0 25px 80px #00000020}dialog::backdrop{background:#0005;backdrop-filter:blur(3px)}dialog h2{padding-right:30px}.dialog-close{position:absolute;right:18px;top:18px;width:34px;height:34px;background:#f5f5f5;font-size:24px}.dialog-copy{color:#8c8c8c;line-height:1.7;margin-bottom:25px}.dialog-footer{display:flex;gap:12px;justify-content:flex-end;margin-top:25px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#252525;color:#fff;padding:15px 25px;border-radius:16px;max-width:calc(100% - 40px);width:max-content;font-size:15px;box-shadow:0 8px 30px #0002;z-index:100}.error-note{color:#9d3b32;background:#fff2f0;border-radius:15px;padding:15px;margin:15px 0;line-height:1.6}.inline-error{color:#a34334;font-size:14px}.login-steps{padding-left:22px;color:#777;line-height:1.8;margin:20px 0}.divider{height:1px;background:#eee;margin:25px 0}.hidden,[hidden]{display:none!important}
@media(min-width:1450px){.header{padding-top:42px}.nav-pill{font-size:20px;padding:10px 12px 10px 32px;gap:35px}.nav-toggle{width:62px;height:62px}.brand{font-size:37px}.main{margin-top:95px}.course-cover{height:290px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header{gap:15px}.nav-pill{font-size:16px;gap:20px;padding-left:22px}.brand{font-size:28px}.lesson-layout{display:block}.sidebar{position:static;margin:30px 0}.video-cover h2{font-size:36px}.main{margin-top:68px}.course-cover{height:225px}.cover-title{font-size:45px}.course-info{padding:23px}}
@media(max-width:700px){.wrap{width:calc(100% - 38px)}.header{padding-top:23px;gap:11px}.brand{font-size:23px;letter-spacing:-1.1px}.nav-pill{font-size:14px;gap:13px;padding:7px 7px 7px 17px}.nav-toggle{width:42px;height:42px}.nav-toggle svg{width:24px}.avatar{width:44px;height:44px;font-size:18px}.menu{top:95px}.main{margin-top:62px}h1{font-size:32px;letter-spacing:-.9px}.breadcrumbs{font-size:15px;margin-bottom:26px;gap:10px}.heading-row{align-items:start;flex-direction:column;gap:15px}.lead{font-size:16px}.catalog{gap:19px;grid-template-columns:1fr}.course-cover{height:235px}.cover-title{font-size:50px}.course-card{border-radius:27px}.course-info p{min-height:0}.notice{flex-direction:column;align-items:start;padding:23px}.notice .button{width:100%}.video-cover{border-radius:24px;padding:22px;aspect-ratio:16/10}.video-cover h2{font-size:27px}.video-cover-bottom{gap:13px}.video-cover .button{font-size:14px;padding:10px 14px;min-height:45px}.video-cover .button .play-icon{display:none}.video-cover p{font-size:14px}.panel{padding:25px;border-radius:25px}.panel h2{font-size:25px}.panel p,.lesson-body{font-size:17px}.lesson-actions .button{font-size:14px}.admin-top{flex-direction:column;align-items:stretch}.search{max-width:none}.two-col{grid-template-columns:1fr;gap:0}.tabs{width:100%;gap:2px}.tabs button{padding:10px 13px;font-size:14px;flex:1}.footer{margin-top:55px;font-size:13px}.footer>div{gap:16px}.admin-lesson{gap:10px}.admin-lesson .button{padding:8px 12px}.details-row{align-items:start}.details-row strong{text-align:right;overflow-wrap:anywhere}.locked-state{padding:40px 20px}dialog{padding:28px 23px}.dialog-footer{flex-wrap:wrap}}
@media(max-width:450px){.header{flex-wrap:wrap;justify-content:space-between}.brand{font-size:26px}.nav-pill{order:3;width:100%;justify-content:center;margin-top:9px;font-size:16px}.nav-toggle{margin-left:auto}.nav-pill>a{margin-right:15px}.main{margin-top:39px}.menu{top:150px}.video-cover{aspect-ratio:4/3}.video-cover-bottom{flex-direction:column;align-items:start}.video-cover h2{font-size:25px}.course-cover{height:210px}.footer{flex-direction:column}.heading-row{margin-bottom:25px}.cover-title{font-size:45px}.button{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Modules keep the course hierarchy visible without crowding the lesson. */
.breadcrumbs{flex-wrap:wrap}.admin-help{margin-bottom:24px}.admin-module{background:#fafafa;border:1px solid #ebebeb;border-radius:22px;padding:23px;margin:22px 0}.module-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:8px}.module-heading h3{margin:0;overflow-wrap:anywhere}.module-heading .button{flex-shrink:0}.module-heading .eyebrow{font-size:12px}.module-add{margin-top:20px}.module-empty{margin:18px 0}.module-nav{border-bottom:1px solid #e4e4e4;padding:15px 0}.module-nav:first-of-type{padding-top:0}.module-nav summary{position:relative;cursor:pointer;list-style:none;padding-right:20px}.module-nav summary::-webkit-details-marker{display:none}.module-nav summary:after{content:'+';position:absolute;right:0;top:13px;font-size:20px;font-weight:400;color:#888}.module-nav[open] summary:after{content:'−'}.module-nav summary strong{display:block;font-size:16px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.module-nav summary small{display:block;font-size:12px;color:#999;margin:5px 0 10px}.module-label{display:block;font-size:11px;color:#999;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.module-nav .lesson-item{padding:12px 9px;gap:10px}.video-controls{display:flex;align-items:start;gap:12px;flex-direction:column}.video-controls .small{margin:0;line-height:1.6;color:#986348}.admin-lesson>div{min-width:0;overflow-wrap:anywhere}.admin-lesson>.button{flex-shrink:0}.field input:not([type]){background:white;border:1px solid #dedede;border-radius:13px;min-height:49px;padding:12px 15px;width:100%;color:#333}
@media(max-width:700px){.admin-module{padding:19px 16px;margin-inline:-9px}.module-heading{align-items:start;flex-direction:column;gap:12px}.admin-module .admin-lesson{align-items:start;flex-wrap:wrap}.module-heading .button{align-self:start}.module-nav summary strong{font-size:17px}}

.course-cover>img.custom-cover{filter:none;transform:none}.cover-title{max-width:calc(100% - 115px);overflow-wrap:anywhere;font-size:clamp(26px,4vw,48px)}.recipient-list{max-height:280px;overflow:auto;border:1px solid #e5e5e5;border-radius:16px;margin:16px 0 24px}.recipient{display:flex;gap:14px;padding:14px 18px;border-bottom:1px solid #eee;align-items:center}.recipient:last-child{border-bottom:0}.recipient input{width:20px;height:20px;accent-color:#252525;flex-shrink:0}.recipient small{display:block;color:#8b8b8b;font-size:13px}.recipient-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.message-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f5f5;border-radius:18px;padding:22px;margin-bottom:20px}.details-row strong{overflow-wrap:anywhere}.input[type=email],.input[type=tel]{font:inherit}.admin-top h2{margin:0}.tabs{border-radius:24px}.admin-lesson{flex-wrap:wrap}.admin-lesson>div:first-child{flex:1;min-width:160px}

.user-photo{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;border-radius:50%;overflow:hidden;background:#f0f0f0;color:#242424;flex-shrink:0;font-size:20px;line-height:1}.user-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.user-photo img[hidden]{display:none}.account-title>.user-photo{width:72px;height:72px;font-size:28px}#profile-button>.user-photo{width:100%;height:100%;min-width:0;font-size:inherit}.photo-controls{margin-top:24px}.photo-controls .button{margin:0 8px 10px 0}.photo-controls p{margin:6px 0}

/* REY AI DESIGN palette: a quiet white canvas with Tiffany controls. */
:root{color-scheme:light;--accent:#21f1a8;--accent-hover:#18d998;--ink:#171717;--page:#fff;--surface:#fff;--surface-soft:#f6f6f6;--line:#e7e7e7;--text:#252525;--muted:#858585}
:root[data-theme=dark]{color-scheme:dark;--page:#171717;--surface:#202020;--surface-soft:#282828;--line:#393939;--text:#f5f5f5;--muted:#b5b5b5}
body{background:var(--page);color:var(--text);transition:background .2s ease,color .2s ease}.header-actions{display:flex;align-items:center;gap:12px}.theme-toggle{width:48px;height:48px;background:var(--surface-soft);color:var(--text);border:1px solid var(--line)}.theme-toggle:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}.theme-toggle svg{width:22px;height:22px}.button{background:var(--accent);border-color:var(--accent);color:var(--ink)}.button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button.secondary{background:var(--surface);border-color:var(--line);color:var(--text)}.button.secondary:hover{background:var(--surface-soft)}.button.ghost{color:var(--text)}.course-progress span,.progressbar{accent-color:var(--accent)}.course-progress span{background:var(--accent)}.switch-line input,.recipient input{accent-color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--accent)}::selection{background:var(--accent);color:var(--ink)}
:root[data-theme=dark] .brand span{color:var(--accent)}:root[data-theme=dark] .avatar,:root[data-theme=dark] .user-photo{background:#303030;color:#fff}:root[data-theme=dark] .avatar.admin-avatar{box-shadow:inset 0 0 0 1px #444}:root[data-theme=dark] .menu,:root[data-theme=dark] dialog,:root[data-theme=dark] .panel,:root[data-theme=dark] .course-card{background:var(--surface);border-color:var(--line);color:var(--text)}:root[data-theme=dark] .menu{box-shadow:0 18px 50px #0006}:root[data-theme=dark] .menu a:hover,:root[data-theme=dark] .menu button:hover,:root[data-theme=dark] .notice,:root[data-theme=dark] .sidebar,:root[data-theme=dark] .locked-state,:root[data-theme=dark] .tabs,:root[data-theme=dark] .admin-module,:root[data-theme=dark] .message-preview,:root[data-theme=dark] .upload-label{background:var(--surface-soft)}:root[data-theme=dark] .breadcrumbs a:hover{color:var(--text)}:root[data-theme=dark] .lead,:root[data-theme=dark] .small,:root[data-theme=dark] .course-info p,:root[data-theme=dark] .notice p,:root[data-theme=dark] .panel p,:root[data-theme=dark] .lesson-body,:root[data-theme=dark] .locked-state p,:root[data-theme=dark] .dialog-copy,:root[data-theme=dark] .details-row span{color:var(--muted)}:root[data-theme=dark] .lesson-item.active,:root[data-theme=dark] .lesson-item.buttonless.active{background:#333}:root[data-theme=dark] .tabs button{color:#aaa}:root[data-theme=dark] .tabs button.active{background:var(--accent);color:var(--ink)}:root[data-theme=dark] .input,:root[data-theme=dark] input[type=search],:root[data-theme=dark] input[type=text],:root[data-theme=dark] input[type=date],:root[data-theme=dark] input[type=number],:root[data-theme=dark] .field input:not([type]),:root[data-theme=dark] textarea,:root[data-theme=dark] select{background:#242424;border-color:#444;color:#f5f5f5}:root[data-theme=dark] .table-scroll,:root[data-theme=dark] .recipient-list{border-color:var(--line)}:root[data-theme=dark] th{background:#242424;color:#aaa}:root[data-theme=dark] td,:root[data-theme=dark] .admin-lesson,:root[data-theme=dark] .details-row,:root[data-theme=dark] .recipient,:root[data-theme=dark] .footer,:root[data-theme=dark] .module-nav{border-color:var(--line)}:root[data-theme=dark] .status{background:#303030;color:#aaa}:root[data-theme=dark] .status.active{background:#194d3b;color:#75f7c8}:root[data-theme=dark] .footer-brand{color:#ddd}:root[data-theme=dark] .dialog-close{background:#333;color:#fff}:root[data-theme=dark] .toast{background:var(--accent);color:var(--ink)}:root[data-theme=dark] .error-note{background:#3b2220;color:#ffaaa0}:root[data-theme=dark] .divider{background:var(--line)}
@media(max-width:700px){.header-actions{gap:8px}.theme-toggle{width:44px;height:44px}}
@media(max-width:450px){.header-actions{margin-left:auto}.header{align-items:center}}
.consent-line{display:flex;align-items:flex-start;gap:11px;margin:16px 0;color:#5e5e5e;font-size:14px;line-height:1.55}.consent-line input{margin-top:3px;width:18px;height:18px;min-width:18px;accent-color:var(--accent)}.consent-line a{text-decoration:underline;text-underline-offset:3px;color:inherit;font-weight:600}.consent-line.optional{margin-bottom:25px;color:#808080}.consent-line code{font-family:inherit;background:#f0f0f0;border-radius:5px;padding:1px 4px}:root[data-theme=dark] .consent-line code{background:#333}
.input::placeholder{color:var(--muted);opacity:.62}

/* AI Creator storefront */
.course-tier{font-size:13px!important;letter-spacing:1.1px;font-weight:700;color:var(--muted)!important;min-height:0!important;margin-bottom:8px!important}
.course-card-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:auto}
.course-card-actions .button{margin-top:0;width:auto;flex:1 1 200px}
.offer-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:24px;margin-bottom:28px}
.offer-copy,.offer-art{border:1px solid var(--line);border-radius:31px;overflow:hidden}
.offer-copy{background:var(--surface);padding:clamp(30px,5vw,58px);display:flex;flex-direction:column;justify-content:center}
.offer-copy h1{font-size:clamp(46px,7vw,78px);margin-bottom:20px}
.offer-lead{font-size:20px;line-height:1.6;color:var(--muted);max-width:680px;margin-bottom:30px}
.offer-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:2px 0 30px}
.offer-facts span{padding:17px;background:var(--surface-soft);border-radius:18px}
.offer-facts strong,.offer-facts small{display:block}
.offer-facts strong{font-size:18px;line-height:1.25;margin-bottom:5px}
.offer-facts small{font-size:13px;color:var(--muted)}
.offer-actions{display:flex;gap:12px;flex-wrap:wrap}
.offer-art{min-height:500px;background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:34px;position:relative;isolation:isolate}
.offer-art:before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle at 70% 25%,#21f1a855,transparent 28%),repeating-radial-gradient(ellipse at 25% 80%,transparent 0 20px,#ffffff13 21px 23px,transparent 24px 44px);transform:rotate(-12deg);z-index:-1}
.offer-art span{font-size:clamp(72px,10vw,128px);line-height:.78;font-weight:800;letter-spacing:-7px;color:var(--accent)}
.offer-art strong{font-size:clamp(38px,5vw,65px);line-height:.9;letter-spacing:-2.5px}
.offer-art small{margin-top:20px;font-size:15px;letter-spacing:3px}
.offer-result{max-width:none;display:grid;grid-template-columns:220px 1fr;column-gap:28px;align-items:start}
.offer-result .eyebrow{grid-row:1 / span 2}.offer-result h2{margin-bottom:8px}.offer-result p:last-child{max-width:790px}
.offer-section{padding:46px 0}.section-heading{max-width:660px;margin-bottom:26px}.section-heading h2{font-size:clamp(31px,4vw,46px)}
.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.program-grid article{background:var(--surface-soft);border:1px solid var(--line);border-radius:23px;padding:24px;min-height:210px}
.program-grid article>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent);color:var(--ink);font-weight:700;margin-bottom:32px}
.program-grid h3{margin-bottom:9px}.program-grid p{color:var(--muted);line-height:1.65;margin-bottom:0}
.offer-includes{max-width:none;display:grid;grid-template-columns:.75fr 1.25fr;gap:45px;align-items:start}
.offer-includes ul{margin:0;padding:0;list-style:none}
.offer-includes li{padding:15px 0 15px 30px;border-bottom:1px solid var(--line);position:relative;font-size:17px}
.offer-includes li:before{content:"✓";position:absolute;left:0;color:#0f966a;font-weight:800}
.offer-includes li:last-child{border-bottom:0}
.offer-audience .section-heading,.offer-outcomes .section-heading{max-width:760px}
.section-heading>p:last-child{color:var(--muted);font-size:18px;line-height:1.7;margin:10px 0 0}
.audience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.audience-grid article{border:1px solid var(--line);border-radius:24px;padding:27px;background:var(--surface);min-height:205px}
.audience-grid article>span{display:block;color:var(--muted);font-size:13px;letter-spacing:1.4px;margin-bottom:34px}
.audience-grid h3{font-size:23px;margin-bottom:10px}.audience-grid p{color:var(--muted);line-height:1.65;margin:0}
.outcomes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}
.outcomes-grid article{display:flex;align-items:flex-start;gap:17px;background:var(--surface-soft);border:1px solid var(--line);border-radius:23px;padding:24px}
.outcomes-grid article>span{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--accent);color:var(--ink)}
.outcomes-grid article>span svg{width:20px;height:20px}.outcomes-grid h3{margin:2px 0 7px}.outcomes-grid p{color:var(--muted);line-height:1.6;margin:0}
.author-card{display:grid;grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr);min-height:390px;border-radius:29px;overflow:hidden;background:var(--ink);color:#fff}
.author-mark{display:grid;place-items:center;background:var(--accent);color:var(--ink);font-family:Impact,"Arial Narrow",Arial,sans-serif;font-size:clamp(120px,19vw,230px);line-height:1}
.author-copy{padding:clamp(30px,5vw,58px);display:flex;flex-direction:column;justify-content:center}.author-copy .eyebrow{color:#aaa}.author-copy h2{font-size:clamp(33px,4vw,49px);margin-bottom:18px}.author-copy p{color:#d0d0d0;line-height:1.7;max-width:680px}.author-copy a{display:inline-flex;align-items:center;gap:9px;margin-top:10px;color:var(--accent);font-weight:700;width:max-content}.author-copy a svg{width:20px;height:20px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:0 3px}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;padding:23px 0;font-size:19px;font-weight:600}
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{width:30px;height:30px;border-radius:50%;background:var(--surface-soft);position:relative;flex-shrink:0}
.faq-list summary span:before,.faq-list summary span:after{content:"";position:absolute;left:9px;right:9px;top:14px;height:2px;background:currentColor}.faq-list summary span:after{transform:rotate(90deg);transition:transform .2s ease}.faq-list details[open] summary span:after{transform:rotate(0)}
.faq-list details>p{max-width:820px;color:var(--muted);font-size:17px;line-height:1.7;padding:0 50px 23px 0;margin:0}
.buy-panel{background:var(--ink);color:#fff;border-radius:29px;padding:34px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:28px}
.buy-panel h2{font-size:34px;margin-bottom:9px}.buy-panel p{color:#c9c9c9;max-width:650px;margin:0}.buy-panel .eyebrow{color:#aaa;margin-bottom:7px}
.buy-price{display:flex;align-items:center;gap:18px;flex-shrink:0}.buy-price>strong{font-size:31px;white-space:nowrap}.buy-price .button{white-space:nowrap}
:root[data-theme=dark] .offer-copy,:root[data-theme=dark] .offer-result,:root[data-theme=dark] .offer-includes,:root[data-theme=dark] .audience-grid article{background:var(--surface);border-color:var(--line)}
:root[data-theme=dark] .program-grid article{background:var(--surface-soft)}
@media(max-width:900px){.offer-hero{grid-template-columns:1fr}.offer-art{min-height:350px}.offer-result{grid-template-columns:1fr}.offer-result .eyebrow{grid-row:auto}.program-grid{grid-template-columns:1fr 1fr}.offer-includes{grid-template-columns:1fr}.author-card{grid-template-columns:200px 1fr}.buy-panel{align-items:flex-start;flex-direction:column}.buy-price{width:100%;justify-content:space-between}}
@media(max-width:600px){.course-card-actions{grid-template-columns:1fr}.offer-copy{padding:28px 23px}.offer-copy h1{font-size:48px}.offer-lead{font-size:17px}.offer-facts{grid-template-columns:1fr}.offer-facts span{display:flex;align-items:center;justify-content:space-between;gap:15px}.offer-facts strong{margin:0}.offer-facts small{text-align:right}.offer-actions{display:grid;grid-template-columns:1fr;width:100%}.offer-art{min-height:290px;padding:26px}.program-grid,.audience-grid,.outcomes-grid{grid-template-columns:1fr}.program-grid article{min-height:0}.audience-grid article{min-height:0}.audience-grid article>span{margin-bottom:22px}.author-card{grid-template-columns:1fr}.author-mark{min-height:210px;font-size:145px}.author-copy{padding:29px 23px}.faq-list summary{font-size:17px}.faq-list details>p{padding-right:0}.buy-price{align-items:stretch;flex-direction:column}.buy-price .button{width:100%}.buy-panel{padding:27px 23px}}

/* Owner overview, referral links and audience controls. */
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:25px}.metric-grid article{border:1px solid var(--line);border-radius:24px;background:var(--surface);padding:25px;min-height:150px}.metric-grid span,.metric-grid small{display:block;color:var(--muted)}.metric-grid strong{display:block;font-size:42px;line-height:1;margin:18px 0 10px}.dashboard-actions{max-width:none}.dashboard-actions .lock-actions{justify-content:flex-start;margin:20px 0}.broadcast-filters{display:grid;grid-template-columns:1fr 1fr;gap:16px}.referral-card{max-width:790px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,var(--surface)),var(--surface) 58%)}.referral-link{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin:22px 0}.referral-link input{min-height:50px}.referral-summary{display:flex;gap:12px;flex-wrap:wrap}.referral-summary span{min-width:180px;border:1px solid var(--line);border-radius:18px;padding:17px;background:var(--surface)}.referral-summary strong,.referral-summary small{display:block}.referral-summary strong{font-size:24px}.referral-summary small{color:var(--muted);margin-top:4px}
:root[data-theme=dark] .metric-grid article,:root[data-theme=dark] .referral-summary span{background:var(--surface);border-color:var(--line)}
@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,1fr)}.referral-link{grid-template-columns:1fr 1fr}.referral-link input{grid-column:1/-1}.broadcast-filters{grid-template-columns:1fr}}
@media(max-width:600px){.metric-grid{grid-template-columns:1fr}.metric-grid article{min-height:0}.referral-link{grid-template-columns:1fr}.referral-link input{grid-column:auto}.referral-link .button{width:100%}}

/* Desktop layout uses the available window instead of leaving half the screen empty. */
@media(min-width:1001px){
 .wrap{max-width:1600px}
 .account-card,.referral-card{max-width:none}
 .account-card>p,.referral-card>p{max-width:1080px}
 .lesson-layout{grid-template-columns:minmax(0,1fr) 340px;gap:34px}
 .catalog:has(>.course-card:only-child){grid-template-columns:1fr}
 .catalog>.course-card:only-child{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr)}
 .catalog>.course-card:only-child .course-cover{height:100%;min-height:360px}
 .catalog>.course-card:only-child .course-info{padding:38px}
}

.old-price{font-size:.72em;opacity:.6;font-weight:400}.preserve-lines{white-space:pre-line}.offer-art img{width:100%;height:100%;object-fit:cover}.offer-art strong{overflow-wrap:anywhere}.course-content-editor{margin:28px 0}.course-content-editor>summary{font-size:20px;font-weight:700;cursor:pointer;margin-bottom:20px}.course-card .cover-title{overflow-wrap:anywhere}.course-info{min-width:0}

.course-admin-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.offer-facts>span{min-width:0}.offer-facts strong{overflow-wrap:anywhere}

/* Keep both prices on one compact purchase action. */
.button.purchase-sale{flex-direction:row;flex-wrap:wrap;gap:8px;padding:12px 18px;line-height:1.35;text-align:center}
.purchase-caption{display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:700;white-space:nowrap}
.purchase-old-price{font-size:11px;font-weight:400;opacity:.65;text-decoration-thickness:1px}
.purchase-discount{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border-radius:20px;background:#171717;color:#21f1a8;font-size:12px;font-weight:700;white-space:nowrap}

.footer>div{flex-wrap:wrap}

/* Route headings receive focus for screen readers, not as interactive controls. */
#main h1[tabindex="-1"]:focus{outline:none}

/* Free prompt library: independent of course access and catalog size. */
.course-cover.prompts-cover{display:block;background:#16e7a3;color:#171717}.prompts-cover .cover-title{color:#171717}.prompts-cover .cover-mark{border-color:#17171766}.prompts-cover .badge.dark{background:#171717;color:white}.prompts-cover .badge:not(.dark){background:#ffffffdd;color:#171717}@media(min-width:1180px){.catalog:has(.free-prompts-card){grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}}
