:root{--cream:#fff7e9;--green:#084f3d;--coral:#ba4944;--mango:#ffc144;--line:#d6dacb;--plum:#57405c}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--green);font:16px/1.65 Arial,sans-serif}button,input{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}.topbar,main,footer{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{min-height:82px;display:flex;align-items:center;justify-content:space-between}.brand{font:900 27px/1 Georgia,serif;letter-spacing:-1.2px;text-decoration:none}.brand span{display:block;font-size:16px;margin-top:3px}.brand b{color:#e3a915}.topbar #signed-tools{display:flex;align-items:center;gap:14px;font-size:14px}.skip{position:fixed;top:-100px;left:12px;background:#fff;padding:12px;z-index:10}.skip:focus{top:12px}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}h1,h2,h3{font-family:Georgia,serif;letter-spacing:-.045em;line-height:1.06;margin-top:0}h1{font-size:clamp(46px,10vw,76px);margin-bottom:16px}h1 em{font-weight:700;font-style:normal;color:var(--coral)}h2{font-size:30px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.14em;font-weight:bold;margin-bottom:16px}.lead{font-size:17px;max-width:570px}.card{background:#fffaf1;border:1px solid var(--line);border-radius:22px;padding:clamp(22px,5vw,54px);margin:24px auto 60px}.auth h1{margin-bottom:18px}.auth-grid{display:grid;gap:20px;margin-top:38px}.auth-grid form{border-top:1px solid var(--line);padding-top:22px;display:flex;flex-direction:column;gap:12px}.auth-grid h2{font-size:23px;margin:0 0 4px}.auth-grid label{font-size:13px;font-weight:bold}.auth-grid input{width:100%;min-height:48px;border:1px solid #9bab90;border-radius:9px;background:white;padding:10px 12px}.primary,.secondary{min-height:48px;border:0;border-radius:30px;padding:10px 20px;font-weight:bold}.primary{background:var(--green);color:white}.secondary{background:#f4d5d3;color:#583530}.quiet{min-height:44px;padding:8px 12px;border:1px solid var(--line);background:transparent;border-radius:24px}.notice{min-height:24px;font-size:14px;color:#6b3f37}.welcome{padding:42px 0 32px;display:flex;align-items:center;justify-content:space-between}.welcome-mark{font-size:100px;color:var(--mango);line-height:1}.layout{display:grid;gap:35px;padding-bottom:80px}.sidebar{padding:22px;background:#f2e8d7;border-radius:16px;align-self:start}.sidebar h2{font-size:23px;margin-bottom:8px}.sidebar p{font-size:13px}.progress-track{height:8px;border-radius:8px;background:#d8d1bf;overflow:hidden;margin:16px 0}.progress-track span{display:block;height:100%;width:0;background:var(--green);transition:width .2s}.filter{width:100%;min-height:44px;text-align:left;background:none;border:0;border-top:1px solid #d5cab8;font-weight:bold}.library-heading{display:flex;justify-content:space-between;gap:20px;align-items:end}.library-heading h2{font-size:38px;margin:0}.search{display:grid;gap:6px;font-size:12px;font-weight:bold;max-width:260px;width:48%}.search input{min-width:0;min-height:44px;border:1px solid #9bab90;border-radius:8px;background:transparent;padding:8px 10px}.lesson-list{margin-top:22px}.lesson-card{border-top:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px}.lesson-card:last-child{border-bottom:1px solid var(--line)}.lesson-card h3{font-size:24px;margin:0 0 7px}.lesson-card p{font-size:14px;margin:0}.lesson-card .meta{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:bold;margin-bottom:7px}.lesson-card button{min-height:44px;border:0;background:none}.lesson-card .open{grid-column:1/-1;justify-self:start;text-decoration:underline;font-weight:bold;padding:6px 0}.detail{margin-top:34px;padding:clamp(20px,4vw,38px);border-radius:18px;background:#fffaf1;border:1px solid var(--line)}.detail-head{display:flex;justify-content:space-between;gap:15px;align-items:start}.detail h2{font-size:34px}.detail-copy{max-width:720px}.detail-copy h3{font-size:24px;margin:26px 0 10px}.detail-copy p,.detail-copy li{line-height:1.8}.visual{width:min(100%,650px);height:auto;margin:22px auto;cursor:zoom-in}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.actions button,.materials a{min-height:44px;padding:9px 15px;border:1px solid var(--green);border-radius:24px;background:transparent;text-decoration:none;font-weight:bold;display:inline-flex;align-items:center}.materials{border-top:1px solid var(--line);padding-top:18px}.materials a{margin:5px 8px 5px 0}.empty{padding:25px 0;color:#526c5d}.access-note{background:#f4d5d3;padding:14px;border-radius:10px;font-size:14px}footer{border-top:1px solid var(--line);padding:26px 0 34px;display:flex;justify-content:space-between;align-items:center;font-size:12px}dialog{border:0;border-radius:14px;max-width:min(900px,96vw);max-height:92vh;padding:12px;background:var(--cream);color:var(--green)}dialog::backdrop{background:#083d34bb}dialog img{max-height:calc(92vh - 65px);width:auto;max-width:100%;margin:auto;object-fit:contain}.dialog-head{display:flex;justify-content:space-between;align-items:center;min-height:48px}@media(min-width:720px){.auth-grid{grid-template-columns:1fr 1fr;gap:36px}.layout{grid-template-columns:230px minmax(0,1fr);gap:55px}.sidebar{position:sticky;top:18px}.welcome{padding-top:65px}.lesson-card{grid-template-columns:minmax(0,1fr) 48px 130px;align-items:center}.lesson-card .open{grid-column:auto;justify-self:end}.detail h2{font-size:42px}}@media(max-width:359px){.topbar,main,footer{width:calc(100% - 28px)}.brand{font-size:24px}.welcome-mark{font-size:60px}.library-heading{align-items:start;flex-direction:column}.search{width:100%;max-width:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

[hidden]{display:none!important}.recovery-notice{background:#f9df9d;border-radius:15px;padding:24px;margin:0 0 30px}.recovery-notice h2{font-size:26px}.recovery-notice p{font-size:14px;max-width:650px}.recovery-notice code{display:block;font-size:17px;font-weight:bold;overflow-wrap:anywhere;background:#fff7e9;padding:14px;margin:18px 0}.visual-button{border:0;background:none;padding:0;width:100%;display:block;cursor:zoom-in}.visual-button .visual{display:block}.materials a{font-size:13px}.detail-head .quiet{flex-shrink:0}.topbar #signed-tools{max-width:65%}#student-name{overflow-wrap:anywhere}.notice:empty{min-height:0}.detail-copy h3,.detail-copy h4{line-height:1.25}

dialog{width:min(900px,calc(100% - 20px));max-width:none;padding:0}.dialog-head{padding:12px 18px}.image-controls{display:flex;gap:10px;padding:8px 18px}.image-controls button{min-height:44px;border:1px solid #8a9e8b;border-radius:24px;background:none;font-size:12px;padding:8px 13px}.image-controls button[aria-pressed=true]{background:var(--green);color:white}.image-scroll{max-height:calc(92dvh - 130px);overflow:auto;overscroll-behavior:contain}.image-scroll img{max-height:none;max-width:none;width:100%;height:auto;display:block}.image-scroll.zoomed img{width:1100px}

/* Narrow-screen lesson header: long editorial classifications must wrap above the back action. */

.detail-head{min-width:0}

.detail-head>div{min-width:0;overflow-wrap:anywhere}

.detail-head .eyebrow{overflow-wrap:anywhere;word-break:normal}

.detail-head h2{overflow-wrap:anywhere;word-break:normal}

@media(max-width:479px){.detail-head{flex-direction:column;align-items:stretch;gap:12px}.detail-head .quiet{align-self:flex-start;flex-shrink:1;max-width:100%;white-space:normal}}

.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden}.welcome>div{min-width:0}@media(max-width:719px){.welcome-mark{display:none}.welcome h1{font-size:42px}}



/* Reading surface keeps library search and favorites in memory. */

.reading .welcome,.reading .sidebar,.reading .library-heading,.reading #lesson-list{display:none}.reading .layout{display:block;padding-top:24px}.reading .library{max-width:900px;margin-inline:auto}.reading .detail{margin-top:0}.enlarge-label{display:inline-block;background:var(--green);color:var(--cream);padding:12px 20px;border-radius:30px;margin-bottom:24px;font-weight:bold}



body{font-family:'DM Sans',Arial,sans-serif}h1,h2,h3,.brand{font-family:'Fraunces',Georgia,serif}



.adult-heading{margin:38px 0 0;padding:18px 20px;border-radius:12px;background:#ede4ed;color:#503b55;font-size:23px}



.auth{position:relative;background-image:radial-gradient(#a28a5420 .65px,transparent .65px);background-size:7px 7px;isolation:isolate}.auth-art{position:absolute;width:240px;height:175px;object-fit:contain;top:40px;right:38px;pointer-events:none;z-index:-1;transform:rotate(-8deg)}.auth>.lead{max-width:600px}.back-site{font-size:12px;text-decoration:none;margin-left:auto;margin-right:25px;white-space:nowrap}.topbar{gap:12px}.auth h1{max-width:750px}@media(max-width:719px){.auth-art{width:100px;height:75px;top:10px;right:10px;opacity:.65}.auth>.eyebrow{max-width:190px}.auth h1{font-size:45px;max-width:90%}.back-site{margin:0;font-size:11px}.topbar{flex-wrap:wrap}.topbar #signed-tools{margin-left:auto}.auth{padding-top:44px}}



.welcome{position:relative}.welcome-mark{width:220px;height:170px;object-fit:contain;transform:rotate(-9deg);opacity:.88}.lesson-group{font-family:"DM Sans",Arial,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#647e61;margin:30px 0 12px}.lesson-group:first-child{margin-top:0}@media(max-width:719px){.welcome{padding:24px 0 18px;gap:12px}.welcome h1{font-size:34px;margin-bottom:12px}.welcome .eyebrow{margin-bottom:10px}.welcome .lead{font-size:14px;max-width:260px;margin-bottom:0}.welcome-mark{display:block;position:absolute;width:85px;height:72px;right:0;top:14px;opacity:.65;z-index:-1}.sidebar{padding:15px 18px}.sidebar h2{font-size:21px;margin-bottom:4px}.sidebar p{margin:4px 0}.progress-track{margin:10px 0}.layout{gap:23px}.library-heading h2{font-size:31px}.lesson-list{margin-top:18px}.lesson-card h3{font-size:23px}.lesson-card{padding:17px 0}.back-site{margin-left:auto}}



.lesson-video{border-block:1px solid var(--line);padding:24px 0;margin:20px 0 28px}.lesson-video h3{font-size:27px}.lesson-video p{font-size:13px}.lesson-video>a{display:block;font-size:13px;margin-bottom:18px}.official-player iframe{display:block;width:100%;aspect-ratio:16/9;min-height:200px;border:0;margin-top:20px;border-radius:12px}

/* Isolated V4 student proposal — decorative identity outside the reading body. */

.auth{display:grid;grid-template-columns:1fr 1fr;gap:26px 48px;padding:48px;overflow:hidden;border-radius:30px;background:#fffaf1;isolation:isolate}.auth-intro{position:relative;z-index:1;align-self:center}.auth h1{font-size:54px;max-width:490px;line-height:1.05}.auth-intro .lead{font-size:16px;max-width:440px;line-height:1.7}.auth-corner{position:absolute;right:-110px;top:-65px;width:430px;opacity:.23;filter:blur(3px);pointer-events:none;z-index:0;transform:rotate(-15deg)}.auth-visual{position:relative;height:190px;margin-top:25px;pointer-events:none}.auth-visual img{position:absolute;width:200px;height:185px;object-fit:contain;filter:drop-shadow(6px 15px 9px #173c321c);left:5px;bottom:0;transform:rotate(-7deg)}.auth-visual img+img{width:140px;height:150px;left:180px;bottom:-9px;transform:rotate(15deg)}.auth-grid{position:relative;z-index:1;display:block;margin:0;background:#f2eddc;border-radius:24px;padding:26px}.auth-grid form{padding-top:22px;margin-top:23px;border-color:#cad5bf}.auth-grid form:first-child{padding-top:0;margin-top:0;border-top:0}.auth-grid h2{font-size:25px}.auth>.notice{grid-column:1/-1;margin:0}.auth-grid input,.search input{border-radius:14px;background:#fffdf8;border-color:#91a68a}.primary,.secondary,.quiet,.actions button,.materials a,.image-controls button,.enlarge-label{min-height:44px;border-radius:999px;font-family:'DM Sans',Arial,sans-serif;font-weight:700;line-height:1.3}.primary{background:#074c3d;color:#fffaf1}.secondary{background:#f5d1cb;color:#653e35}.primary:hover{background:#063a30}.secondary:hover{background:#efbab0}.quiet:hover,.actions button:hover{background:#e5ecd9}.welcome{padding:30px 32px;margin:18px 0 30px;background:#e1e9cf;border:1px solid #ccd8bd;border-radius:28px;isolation:isolate;overflow:hidden;min-height:220px}.welcome>div{position:relative;z-index:2;max-width:75%}.welcome h1{font-size:50px;margin-bottom:16px}.welcome .lead{font-size:15px;margin:0;max-width:500px}.welcome .eyebrow{margin-bottom:12px}.welcome-mark{display:block;position:absolute;z-index:0;width:390px;height:auto;right:-120px;top:-65px;transform:rotate(-20deg);opacity:.38;filter:blur(2px)}.welcome-coconut{position:absolute;z-index:1;width:140px;height:140px;object-fit:contain;right:25px;bottom:-12px;transform:rotate(12deg);filter:drop-shadow(7px 12px 8px #173c321a);pointer-events:none}.layout{grid-template-columns:250px minmax(0,1fr);gap:35px}.sidebar{padding:21px;background:#f0eadc;border:1px solid #dfdfcd;border-radius:24px;position:sticky;top:18px}.sidebar h2{font-size:25px}.sidebar .filter{border-radius:999px;border:1px solid #9caf94;margin-top:12px;padding:10px 12px;min-height:44px;text-align:center;font-size:12px}.sidebar .filter:hover{background:#e1e9cf}.trail-nav{display:grid;gap:8px;margin-top:23px;padding-top:20px;border-top:1px solid #d1d9c5}.trail-button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;border:1px solid transparent;border-radius:16px;background:transparent;color:var(--green);font:600 12px/1.35 'DM Sans',Arial,sans-serif;text-align:left;padding:11px;min-height:45px;cursor:pointer}.trail-button:has(img){grid-template-columns:40px minmax(0,1fr) auto}.trail-button img{width:40px;height:44px;object-fit:contain;filter:drop-shadow(3px 5px 3px #173c3215)}.trail-button small{font-size:11px;font-weight:700;min-width:20px;text-align:right}.trail-button[aria-pressed=true]{background:var(--green);color:var(--cream);border-color:var(--green)}.trail-button:hover:not([aria-pressed=true]){background:#e2e9d6}.browse-menu-toggle{display:none}.library-heading{align-items:center;gap:24px}.library-heading h2{font-size:38px}.library-heading .eyebrow{margin-bottom:9px}.search{font-size:11px;width:42%;max-width:260px}.library-context{font-size:12px;line-height:1.5;color:#677e61;margin:20px 0 22px}.lesson-group{font-size:12px;letter-spacing:.09em;background:#e5ecd8;padding:14px 17px;border-radius:14px;margin:34px 0 14px;color:var(--green)}.lesson-card{background:#fffaf1;border:1px solid #d8ddca;border-radius:21px;padding:23px;margin:12px 0;align-items:start;gap:10px 16px}.lesson-card:last-child{border:1px solid #d8ddca}.lesson-card h3{font-size:25px;margin-bottom:10px;line-height:1.12}.lesson-card p{font-size:13px;line-height:1.65}.lesson-card .meta{font-size:10px;letter-spacing:.08em;margin-bottom:8px}.video-card{display:grid;grid-template-columns:70px minmax(0,1fr) 38px}.lesson-symbol{width:70px;height:85px;object-fit:contain;grid-column:1;grid-row:1/3;filter:drop-shadow(4px 8px 4px #173c3218);align-self:center}.lesson-main{min-width:0}.video-card .lesson-main{grid-column:2;grid-row:1}.favorite-button{width:38px;height:38px;min-height:38px!important;border:1px solid #ccd8bf!important;border-radius:50%;padding:0;justify-self:end;color:var(--green)}.video-card .favorite-button{grid-column:3;grid-row:1}.lesson-card .open{min-height:44px;border:1px solid #78917f;background:#fffaf1;color:var(--green);border-radius:999px;padding:10px 16px;text-decoration:none;font-size:12px;font-weight:700;justify-self:start;margin-top:4px}.video-card .open{grid-column:2/-1;grid-row:2}.lesson-card .open:hover{background:#074c3d;color:#fffaf1}.documentary-card{display:grid;grid-template-columns:minmax(0,1fr) 38px}.documentary-card .lesson-main{grid-column:1;grid-row:1}.documentary-card .favorite-button{grid-column:2;grid-row:1}.documentary-card .open{grid-column:1/-1;grid-row:2}.adult-heading{border-radius:14px;padding:16px;font-size:22px}.reading .library-context{display:none}.reading .detail{padding:34px 40px;border-radius:24px;border-color:#d1dac6;box-shadow:0 8px 22px #173c3205}.detail h2{font-size:42px;line-height:1.07}.detail .eyebrow{font-size:10px;letter-spacing:.08em;line-height:1.7;color:#687f5d}.detail-copy{max-width:700px;margin-top:30px}.detail-copy p,.detail-copy li{font-size:16px;line-height:1.85}.detail-copy h3{font-size:27px;line-height:1.15}.detail-head .quiet{font-size:11px;min-height:44px}.official-player iframe{border-radius:18px}.empty{padding:28px 22px;border:1px dashed #a8b69a;border-radius:20px;background:#f5efdf;font-size:14px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c74c35;outline-offset:4px}

@media(max-width:719px){.topbar{min-height:88px;gap:11px;align-items:center}.brand{font-size:25px}.back-site{font-size:10px}.topbar #signed-tools{gap:8px;max-width:55%}.topbar #signed-tools #student-name{font-size:11px}.topbar #logout{font-size:11px;padding:9px 12px}.auth{display:block;padding:28px 24px 25px;margin-top:15px;border-radius:25px}.auth h1{font-size:39px;max-width:260px;margin-bottom:20px}.auth-intro .eyebrow{font-size:10px;max-width:190px;margin-bottom:17px}.auth-intro .lead{font-size:14px;line-height:1.7;max-width:none}.auth-corner{width:200px;right:-95px;top:-25px;opacity:.2;filter:blur(2px)}.auth-visual{display:none}.auth-grid{margin-top:28px;padding:22px 17px;border-radius:21px}.auth-grid h2{font-size:22px}.auth-grid input{min-height:48px}.auth-grid label{font-size:12px}.welcome{padding:23px;margin:12px 0 23px;min-height:185px}.welcome>div{max-width:88%}.welcome h1{font-size:34px;max-width:270px;line-height:1.06;margin-bottom:14px}.welcome .lead{font-size:13px;max-width:245px}.welcome-mark{width:230px;right:-105px;top:-43px;opacity:.28;z-index:0}.welcome-coconut{width:80px;height:85px;right:6px;bottom:-12px;opacity:.9}.layout{display:block;padding-bottom:55px}.sidebar{position:static;padding:18px;margin-bottom:26px;border-radius:22px}.sidebar h2{font-size:23px}.sidebar p{font-size:12px;margin-bottom:0}.progress-track{margin:12px 0}.browse-menu-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin:15px 0 8px;font-size:12px;background:#fffaf1}.trail-nav{display:none;margin-top:12px;padding-top:12px;gap:7px}.trail-nav.open{display:grid}.trail-button{min-height:48px;padding:10px 12px;font-size:12px;border-color:#d4dbc7}.trail-button:has(img){grid-template-columns:44px minmax(0,1fr) auto}.trail-button img{width:44px;height:45px}.sidebar .filter{display:inline-flex;justify-content:center;width:auto;margin:7px 6px 0 0;min-height:44px;padding:10px 14px}.library-heading{flex-direction:column;align-items:stretch;gap:15px}.library-heading h2{font-size:34px}.search{width:100%;max-width:none;font-size:11px}.search input{min-height:46px}.library-context{margin:14px 0 18px;font-size:11px}.lesson-group{font-size:11px;line-height:1.5;margin:27px 0 14px}.lesson-card{padding:19px 16px;margin:12px 0;gap:9px 12px;border-radius:20px}.lesson-card h3{font-size:23px;line-height:1.13}.lesson-card p{font-size:12px;line-height:1.75}.video-card{grid-template-columns:47px minmax(0,1fr) 32px}.lesson-symbol{width:52px;height:65px;grid-row:1;align-self:start;margin-top:12px;margin-left:-5px}.favorite-button{width:32px;height:34px;min-height:34px!important;font-size:15px}.video-card .open{grid-column:1/-1;grid-row:2}.lesson-card .open{font-size:11px;padding:10px 15px;min-height:44px}.documentary-card{grid-template-columns:minmax(0,1fr) 32px}.reading .layout{padding-top:12px}.reading .detail{padding:23px 20px;border-radius:22px}.detail h2{font-size:32px}.detail-copy p,.detail-copy li{font-size:15px;line-height:1.85}.detail-copy h3{font-size:25px}.detail-copy{margin-top:25px}.detail .eyebrow{font-size:9px;line-height:1.8}.actions{margin:20px 0}.actions button{font-size:12px}.materials a{font-size:11px}.detail-head .quiet{font-size:11px}footer{gap:20px;align-items:center}}

@media(max-width:359px){.topbar,main,footer{width:calc(100% - 28px)}.topbar .back-site{font-size:9px}.auth{padding:25px 20px}.auth h1{font-size:35px;max-width:230px}.auth-grid{padding:20px 14px}.welcome{padding:21px}.welcome h1{font-size:31px}.welcome .lead{max-width:220px;font-size:12px}.lesson-card{padding:17px 14px}.video-card{grid-template-columns:38px minmax(0,1fr) 30px;gap:8px 10px}.lesson-symbol{width:43px;height:55px}.lesson-card h3{font-size:22px}.lesson-card p{font-size:12px}.detail h2{font-size:29px}.reading .detail{padding:23px 18px}.detail-copy p,.detail-copy li{font-size:14px}.trail-button{font-size:11px}}

.favorite-button{width:44px;height:44px;min-height:44px!important}.video-card{grid-template-columns:70px minmax(0,1fr) 44px}.documentary-card{grid-template-columns:minmax(0,1fr) 44px}@media(max-width:719px){.video-card{grid-template-columns:47px minmax(0,1fr) 44px}.documentary-card{grid-template-columns:minmax(0,1fr) 44px}.lesson-card p{font-size:13px}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.sidebar h2{grid-column:1;grid-row:1;font-size:21px;margin:0;align-self:center}.sidebar>p{grid-column:2;grid-row:1;text-align:right;align-self:center;font-size:11px;margin:0}.progress-track{grid-column:1/-1;grid-row:2;margin:12px 0}.browse-menu-toggle{grid-column:1;grid-row:3;margin:6px 0 0;padding:10px 12px;font-size:11px}.sidebar>.filter{grid-column:2;grid-row:3;width:100%;margin:6px 0 0;font-size:11px;padding:10px 11px}.trail-nav{grid-column:1/-1;grid-row:4}.detail-copy p,.detail-copy li{font-size:15px}}@media(max-width:359px){.video-card{grid-template-columns:38px minmax(0,1fr) 44px}.lesson-card p{font-size:13px}.detail-copy p,.detail-copy li{font-size:15px}}

/* Proposal review: keep video learning first and let mobile titles use the full row. */

@media(max-width:719px){.lesson-card{position:relative}.video-card,.documentary-card{grid-template-columns:minmax(0,1fr) 44px}.video-card .lesson-main,.documentary-card .lesson-main{grid-column:1/-1;grid-row:1}.lesson-card .favorite-button{position:absolute;top:16px;right:14px;z-index:2}.video-card .lesson-symbol{position:absolute;left:15px;top:17px;width:40px;height:37px;margin:0;z-index:1}.lesson-card .meta{display:flex;align-items:center;min-height:44px;padding-right:52px;margin-bottom:11px}.video-card .meta{padding-left:50px}.video-card .open,.documentary-card .open{grid-column:1/-1;grid-row:2}.lesson-card h3{font-size:24px;line-height:1.12}.lesson-card p{font-size:13px;line-height:1.75}}

@media(max-width:359px){.lesson-card h3{font-size:23px}.video-card .lesson-symbol{width:36px;height:35px;left:15px}.video-card .meta{padding-left:44px}.lesson-card .favorite-button{right:14px}}

/* V4 library review: each video uses its own authorized summary, guides remain compact. */

.welcome{min-height:0;padding:23px 30px;margin-bottom:24px}.welcome h1{font-size:40px;margin-bottom:10px}.welcome .lead{font-size:14px}.welcome-coconut{width:110px;height:110px}.welcome .eyebrow{margin-bottom:7px}

#lesson-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lesson-group,.adult-heading,.empty{grid-column:1/-1}.lesson-card.video-card{display:grid;grid-template-columns:minmax(0,1fr) 44px;padding:0 20px 20px;position:relative;overflow:hidden;align-content:start;gap:12px}.video-card .lesson-preview{grid-column:1/-1;grid-row:1;margin:0 -20px;width:calc(100% + 40px);height:174px;position:relative;overflow:hidden;background:#e7e7d3}.lesson-preview img{width:100%;height:100%;object-fit:cover;object-position:center 18%;opacity:0;transition:opacity .2s}.lesson-preview.loaded img{opacity:1}.lesson-preview span{position:absolute;bottom:10px;left:12px;padding:4px 10px;border-radius:999px;font-size:10px;font-weight:700;background:#fffaf1eb;color:#074c3d}.video-card .lesson-main{grid-column:1/-1;grid-row:2;padding:0}.video-card .meta{padding:0 43px 0 0;min-height:29px;font-size:10px;margin:0 0 9px;line-height:1.5}.video-card .favorite-button{position:absolute;top:186px;right:13px;background:#fffaf1;border:1px solid #b9c7a6}.video-card h3{font-size:24px;line-height:1.15;margin-bottom:2px}.lesson-card .card-objective{display:none}.video-card .open{grid-column:1/-1;grid-row:3;justify-self:start;margin:4px 0 0;min-height:44px;border-radius:999px}.documentary-card{grid-column:1/-1;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:12px;padding:17px 20px;align-items:center}.documentary-card .lesson-main{grid-column:1;grid-row:1}.documentary-card .meta{min-height:0;margin:0 0 5px;padding:0;font-size:10px}.documentary-card h3{font-size:21px;margin:0}.documentary-card .favorite-button{position:static;grid-column:3;grid-row:1}.documentary-card .open{grid-column:2;grid-row:1;margin:0;min-height:44px}.trail-button{border-radius:24px}

@media(max-width:1050px){#lesson-list{grid-template-columns:1fr}.video-card .lesson-preview{height:175px}}

@media(max-width:719px){.welcome{padding:20px;margin:14px 0 20px}.welcome h1{font-size:32px;margin-bottom:9px}.welcome .lead{font-size:13px;line-height:1.6}.welcome>div{max-width:84%}.welcome-coconut{width:82px;right:-8px;bottom:-20px}.welcome-mark{opacity:.24}.video-card h3{font-size:23px}.lesson-card.video-card{padding:0 17px 17px;gap:11px}.video-card .lesson-preview{margin:0 -17px;width:calc(100% + 34px);height:154px}.video-card .favorite-button{top:165px}.video-card .meta{padding-right:44px;min-height:31px}.documentary-card{padding:16px;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.documentary-card .lesson-main{grid-column:1;grid-row:1}.documentary-card .favorite-button{grid-column:2}.documentary-card h3{font-size:20px;line-height:1.2}.documentary-card .open{grid-column:1/-1;grid-row:2;justify-self:start;font-size:12px}.documentary-card .meta{min-height:0;padding:0;margin:0 0 5px}}

@media(prefers-reduced-motion:reduce){.lesson-preview img{transition:none}}



/* Human-requested first access/disclosure and coherent contour controls. */

.auth-grid .register-primary h2{font-size:29px;line-height:1.15;margin-bottom:20px}.auth-grid .register-primary>.primary{min-height:48px}.recovery-disclosure{margin-top:24px;padding-top:12px;border-top:1px solid #c5d0b8}.recovery-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;min-height:48px;padding:11px 0;cursor:pointer;border-radius:8px;color:var(--green);font:400 13px/1.55 'DM Sans',Arial,sans-serif}.recovery-disclosure>summary::-webkit-details-marker{display:none}.recovery-disclosure>summary strong{display:block;font-weight:700}.recovery-disclosure>summary:focus-visible{outline:3px solid #c4492e;outline-offset:5px}.recovery-disclosure[open]>summary{margin-bottom:8px}.auth-grid .recovery-disclosure form{padding:4px 0 0;margin:0;border:0}.recovery-disclosure[open]>summary .chevron-icon{transform:rotate(180deg)}

.ui-icon{display:block;flex:0 0 18px;width:18px;height:18px;overflow:visible;pointer-events:none}.chevron-icon{transition:transform .18s ease}.browse-menu-toggle,.sidebar .filter{align-items:center;justify-content:center;gap:8px}.sidebar .filter{display:inline-flex}.browse-menu-toggle>span{margin:0}.browse-menu-toggle[aria-expanded="true"]>.chevron-icon{transform:rotate(180deg)}.sidebar .filter.is-active{background:#074c3d;color:#fffaf1;border-color:#074c3d}.favorite-button{display:inline-flex;align-items:center;justify-content:center;padding:0}.favorite-button[aria-pressed="true"]{background:#074c3d;color:#fffaf1;border-color:#074c3d}.favorite-button[aria-pressed="true"] .heart-icon{fill:currentColor}.sidebar .filter.is-active .heart-icon{fill:currentColor}@media(max-width:719px){.browse-menu-toggle{display:inline-flex}.auth-grid .register-primary h2{font-size:27px}}@media(prefers-reduced-motion:reduce){.chevron-icon{transition:none}}



/* Candidate only: authorized resume + five editorial modules. */

.course-start{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 30px;margin:0 0 28px;background:#e3ebd4}.course-start[hidden]{display:none}.course-start h2{font:700 25px/1.18 'Fraunces',Georgia,serif;margin:0}.course-start .eyebrow{margin:0 0 9px}.course-start button{flex-shrink:0}.reading .course-start{display:none}@media(max-width:719px){.course-start{align-items:flex-start;flex-direction:column;padding:24px;gap:20px}.course-start h2{font-size:24px}.course-start button{max-width:100%}}



/* Compact single course welcome/resume card; private lesson rendering unchanged. */

.course-ready>.welcome{display:none}.course-start{position:relative;isolation:isolate;overflow:hidden;margin-top:20px;padding:26px 30px;min-height:0}.course-start>div,.course-start>button{position:relative;z-index:2}.course-start>div{max-width:700px}.course-start h2{font-size:30px}.course-start .course-palm{position:absolute;width:180px;right:-65px;top:-65px;opacity:.3;filter:blur(2px);pointer-events:none;z-index:0}.course-start .course-coconut{position:absolute;width:58px;right:20px;bottom:9px;opacity:.7;pointer-events:none;z-index:0}.course-ready .layout{margin-top:0}@media(max-width:719px){.course-start{padding:23px 24px;gap:19px;margin-top:14px;margin-bottom:22px}.course-start h2{font-size:27px;max-width:285px}.course-start .course-palm{width:140px;right:-55px;top:-40px}.course-start .course-coconut{width:50px;right:14px;bottom:12px}.course-start .eyebrow{font-size:10px}.welcome{padding-block:24px}.welcome h1{font-size:36px}}



/* Lesson rows: Panetone lesson-row / Conservas compact library pattern. */

.lesson-list{display:flex;flex-direction:column;gap:10px}.lesson-list .lesson-group,.lesson-list .adult-heading{margin:20px 0 2px;width:100%}.lesson-list .lesson-card{position:relative;display:grid;grid-template-columns:132px minmax(0,1fr);grid-template-rows:auto auto;column-gap:18px;row-gap:10px;padding:14px;min-height:126px;border-radius:20px;align-items:center;overflow:hidden}.lesson-list .lesson-card .lesson-preview{grid-column:1;grid-row:1/span 2;width:132px;height:74px;min-height:0;aspect-ratio:16/9;margin:0;border-radius:12px;align-self:center;overflow:hidden}.lesson-list .lesson-preview img{width:100%;height:100%;object-fit:cover;object-position:center}.lesson-list .lesson-preview>span{display:none}.lesson-list .lesson-main{grid-column:2;grid-row:1;min-width:0;padding:0}.lesson-list .lesson-main h3{font-size:21px;line-height:1.2;margin:0;min-height:0;overflow-wrap:anywhere}.lesson-list .card-objective,.lesson-list .meta{display:none}.lesson-list .lesson-card .open{grid-column:2;grid-row:2;justify-self:start;align-self:start;margin:0;min-height:40px;font-size:12px;padding:8px 14px;max-width:calc(100% - 46px);white-space:normal}.lesson-list .lesson-card .favorite-button{position:absolute;right:12px;bottom:12px;top:auto;min-width:40px;min-height:40px;width:40px;height:40px;padding:10px;margin:0}.lesson-list .documentary-card{grid-template-columns:minmax(0,1fr);min-height:116px}.lesson-list .documentary-card .lesson-main,.lesson-list .documentary-card .open{grid-column:1}.document-section{margin-top:42px;padding-top:30px;border-top:1px solid var(--line)}.document-section[hidden]{display:none}.document-section>h2{font-size:30px;margin-bottom:12px}.document-section>p:not(.eyebrow){font-size:14px;margin-bottom:20px}.reading .document-section{display:none}.detail-copy>h3:first-child,.summary-heading{font-size:27px;line-height:1.15}.summary-heading{margin:34px 0 18px}

@media(max-width:719px){.lesson-list .lesson-card{grid-template-columns:86px minmax(0,1fr);padding:12px;column-gap:12px;row-gap:10px;min-height:126px;border-radius:17px}.lesson-list .lesson-card .lesson-preview{width:86px;height:49px;border-radius:10px}.lesson-list .lesson-main h3{font-size:17px;line-height:1.23}.lesson-list .lesson-card .open{font-size:11px;padding:7px 11px;min-height:40px;max-width:calc(100% - 40px)}.lesson-list .lesson-card .favorite-button{width:36px;height:36px;min-width:36px;min-height:36px;padding:9px;right:10px;bottom:12px}.lesson-list .documentary-card{grid-template-columns:minmax(0,1fr)}.document-section>h2{font-size:27px}}



/* ID specificity overrides the former desktop two-column card grid. */

#lesson-list,#document-list{display:flex;flex-direction:column;grid-template-columns:none;gap:10px}.reading #lesson-list{display:none}


/* Human correction: horizontal lesson rows only on phones; desktop cards stack image/title. */
@media(min-width:720px){
#lesson-list,#document-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:20px}
#lesson-list>.lesson-group,#lesson-list>.adult-heading,#document-list>.lesson-group,#document-list>.adult-heading{grid-column:1/-1}
.lesson-list .lesson-card.video-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;min-height:0;border-radius:22px}
.lesson-list .video-card .lesson-preview{width:100%;height:auto;min-height:0;aspect-ratio:16/9;align-self:stretch;border-radius:21px 21px 0 0;margin:0}
.lesson-list .video-card .lesson-main{padding:20px 20px 14px}
.lesson-list .video-card .lesson-main h3{font-size:21px;line-height:1.2}
.lesson-list .video-card .open{align-self:flex-start;margin:0 64px 20px 20px;max-width:calc(100% - 84px);min-height:42px;padding:9px 14px;font-size:12px}
.lesson-list .video-card .favorite-button{right:14px;bottom:20px;width:40px;height:40px;min-width:40px;min-height:40px}
.reading #lesson-list{display:none}
}

.pdf-catalog{margin-block:36px;color:#004d40}.pdf-catalog h2{font:inherit;font-size:clamp(26px,4vw,36px);font-weight:700;margin:8px 0 20px}.pdf-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase}.pdf-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0;list-style:none}.pdf-card{min-width:0;border:1px solid #d6d8c4;border-radius:20px;background:#fffaf0;padding:20px;display:flex;flex-direction:column;align-items:flex-start}.pdf-format{display:inline-flex;border:1px solid currentColor;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:700;letter-spacing:.08em}.pdf-card h3{font-size:20px;line-height:1.25;margin:18px 0 24px;overflow-wrap:anywhere}.pdf-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.pdf-actions a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;box-sizing:border-box;border:1px solid #789986;border-radius:999px;color:inherit;font-size:13px;text-decoration:none}.pdf-actions a:first-child{background:#004d40;color:#fff}.pdf-actions a:focus-visible{outline:3px solid #b66b16;outline-offset:3px}@media(max-width:600px){.pdf-list{grid-template-columns:minmax(0,1fr)}.pdf-card{padding:18px}.pdf-card h3{font-size:21px}}

.reading #pdf-catalog-host{display:none}.pdf-catalog h2{font-family:'Fraunces',Georgia,serif}.pdf-catalog{color:var(--green)}
@media(max-width:719px){#lesson-list{gap:10px}.lesson-list .lesson-card{margin:0;padding:12px;column-gap:12px;row-gap:8px}.lesson-list .video-card{grid-template-columns:112px minmax(0,1fr)}.lesson-list .video-card .lesson-preview{width:112px;height:80px;aspect-ratio:auto}.lesson-list .lesson-main h3{font-size:16px;line-height:1.22}.lesson-list .lesson-card .open{margin:0}.lesson-list .lesson-card .favorite-button{bottom:12px}}
@media(max-width:359px){.lesson-list .video-card{grid-template-columns:96px minmax(0,1fr);column-gap:10px}.lesson-list .video-card .lesson-preview{width:96px;height:72px}.lesson-list .lesson-main h3{font-size:15px;line-height:1.23}.lesson-list .lesson-card .open{padding-inline:9px;font-size:10px}}

.pdf-disclosure{border-top:1px solid var(--line);padding-top:22px}.pdf-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;min-height:56px;list-style:none}.pdf-disclosure>summary::-webkit-details-marker{display:none}.pdf-disclosure>summary h2{margin:0;font-size:28px}.pdf-disclosure>summary>span{font-size:12px;white-space:nowrap}.pdf-disclosure>summary::after{content:"+";font-size:26px;line-height:1}.pdf-disclosure[open]>summary::after{content:"−"}@media(max-width:719px){.pdf-catalog{margin-block:22px}.pdf-disclosure>summary h2{font-size:25px}.pdf-disclosure>summary{gap:10px}.pdf-disclosure>summary>span{font-size:11px}}

.pdf-card .pdf-cover{width:76px;height:104px;object-fit:contain;object-position:left center;border-radius:5px;margin-bottom:2px;filter:drop-shadow(3px 5px 3px #173c3219)}

/* Visible curriculum: all module headings, native disclosure, one open at a time. */
#lesson-list{display:flex;flex-direction:column;gap:10px}.course-module{width:100%;min-width:0;border:1px solid #cbd8bf;border-radius:18px;background:#fffaf1;overflow:hidden}.course-module>summary{display:flex;align-items:center;gap:14px;cursor:pointer;padding:16px 18px;min-height:68px;background:#e3ebd4;list-style:none}.course-module>summary::-webkit-details-marker{display:none}.module-label{display:grid;gap:4px;flex:1;min-width:0}.module-label small{font-size:9px;text-transform:uppercase;letter-spacing:.12em}.module-label strong{font-family:'Fraunces',Georgia,serif;font-size:20px;line-height:1.13}.module-count{font-size:11px;white-space:nowrap}.module-chevron{flex-shrink:0;transition:transform .2s}.course-module[open]>summary .module-chevron{transform:rotate(180deg)}.module-lessons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;padding:16px}.module-empty{padding:8px;margin:0;font-size:13px}.course-module .module-lessons .lesson-card{margin:0}.reading #lesson-list{display:none}
#guide-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;cursor:pointer}#guide-disclosure>summary h2{margin:0;font-size:26px}#guide-count{font-size:12px;white-space:nowrap}#guide-disclosure>p{font-size:13px;margin-top:18px}
.pdf-catalog .pdf-list{display:flex;flex-direction:column;gap:8px}.pdf-catalog .pdf-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:8px 14px;padding:12px 14px;border-radius:16px}.pdf-catalog .pdf-card .pdf-cover,.pdf-catalog .pdf-card .pdf-format{grid-column:1;grid-row:1/span 2;width:48px;height:64px;object-fit:contain;margin:0}.pdf-catalog .pdf-card .pdf-format{display:grid;place-content:center;font-size:10px;padding:5px}.pdf-catalog .pdf-card h3{grid-column:2;grid-row:1/span 2;font-size:17px;line-height:1.2;margin:0}.pdf-catalog .pdf-actions{grid-column:3;grid-row:1/span 2;margin:0;gap:8px}.pdf-catalog .pdf-actions a{min-height:38px;font-size:11px;padding:7px 11px}
@media(max-width:719px){.course-start{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:15px 16px;gap:12px;margin-top:8px;margin-bottom:16px}.course-start h2{font-size:17px;line-height:1.18;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:none}.course-start .eyebrow{font-size:9px;letter-spacing:.08em;margin-bottom:6px}.course-start button{min-height:42px;padding:10px 14px;font-size:12px;max-width:100%}.course-start .course-coconut{display:none}.sidebar{padding:16px}.sidebar h2{font-size:22px}.library-heading h2{font-size:28px}.course-module>summary{padding:13px 14px;min-height:64px;gap:10px}.module-label strong{font-size:18px}.module-count{font-size:10px}.module-lessons{display:flex;flex-direction:column;gap:8px;padding:10px}.module-lessons .lesson-card.video-card{padding:11px;column-gap:11px}.pdf-catalog .pdf-card{grid-template-columns:48px minmax(0,1fr);padding:10px 12px;gap:7px 11px}.pdf-catalog .pdf-card h3{grid-column:2;grid-row:1;font-size:15px}.pdf-catalog .pdf-actions{grid-column:2;grid-row:2}.pdf-catalog .pdf-actions a{min-height:36px;padding:6px 10px;font-size:10px}.pdf-catalog .pdf-card .pdf-cover,.pdf-catalog .pdf-card .pdf-format{height:62px}.pdf-disclosure>summary h2,#guide-disclosure>summary h2{font-size:23px}}

/* Latest explicit request: real PDF materials in TWO compact columns. */
.pdf-catalog .pdf-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pdf-catalog .pdf-card{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:15px;min-width:0}.pdf-catalog .pdf-card .pdf-cover,.pdf-catalog .pdf-card .pdf-format{width:76px;height:104px;align-self:center;margin:0}.pdf-catalog .pdf-card h3{font-size:17px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;min-height:2.4em}.pdf-catalog .pdf-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:auto}.pdf-catalog .pdf-actions a{min-height:38px;padding:7px 12px;font-size:12px}
@media(max-width:719px){.pdf-catalog .pdf-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pdf-catalog .pdf-card{padding:10px;gap:8px;border-radius:15px}.pdf-catalog .pdf-card .pdf-cover,.pdf-catalog .pdf-card .pdf-format{width:60px;height:80px}.pdf-catalog .pdf-card h3{font-size:13px;line-height:1.22;min-height:2.44em}.pdf-catalog .pdf-actions{gap:6px}.pdf-catalog .pdf-actions a{min-height:34px;padding:5px 9px;font-size:10px}}

.course-module>summary{background:var(--module-bg,#e3ebd4)}.module-poster{display:block;flex:0 0 auto;width:64px;height:48px;object-fit:cover;border-radius:9px;background:#dbe4d2}.support-guide{margin-top:14px;border:1px solid var(--line);border-radius:16px;padding:0 16px}.support-guide>summary{font-weight:700;padding:14px 0;min-height:48px;cursor:pointer}.support-guide-copy{font-size:15px;line-height:1.7;padding:0 0 16px}.support-guide-copy h3{font-size:23px}.support-guide-copy h4{font-size:20px}@media(max-width:719px){.module-poster{width:48px;height:44px;border-radius:8px}.course-module>summary{gap:10px}.module-label strong{font-size:17px}.module-count{font-size:10px}.module-label small{font-size:8px;letter-spacing:.08em}.support-guide{padding-inline:13px}.support-guide-copy{font-size:14px}}

@media(max-width:719px){.module-lessons .video-card .lesson-preview{height:100%;min-height:96px;align-self:stretch}.module-lessons .video-card .lesson-preview img{width:100%;height:100%;object-fit:cover;object-position:center}}

/* Approved generated module cutouts; real video frames remain only on lesson rows. */
.module-poster{object-fit:contain;background:transparent;filter:drop-shadow(2px 3px 2px #173c3215)}.pdf-catalog .pdf-card{align-items:center;text-align:center}.pdf-catalog .pdf-card h3{text-align:center;width:100%}.pdf-catalog .pdf-actions{justify-content:center}

/* Delta visible-player v1: compact lesson actions; favorites retain a 44px touch target without a circle. */
#lesson-list .lesson-card .open{min-height:44px!important;padding:5px 10px!important;font-size:11px!important;line-height:1.15!important;border-radius:999px}
#lesson-list .lesson-card .favorite-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:10px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}

/* Larger generated module illustrations shifted left, outside the soft outline. */
.course-module{overflow:visible}.course-module>summary{position:relative;border-radius:17px;padding-left:83px}.module-poster{position:absolute;left:-16px;top:50%;transform:translateY(-50%);width:86px;height:80px;pointer-events:none;z-index:1}.course-module .module-lessons{border-radius:0 0 17px 17px}.adult-pdf-entry{display:flex;align-items:center;gap:18px;padding:18px 22px;margin-top:14px;border:1px solid #dacbdf;border-radius:20px;background:#eee3ef;grid-column:1/-1}.adult-pdf-entry>img{width:62px;height:84px;object-fit:contain}.adult-pdf-entry .eyebrow{font-size:10px;margin-bottom:6px}.adult-pdf-entry h3{font-size:23px;margin-bottom:10px}.adult-pdf-entry a{display:inline-flex;align-items:center;min-height:42px;padding:8px 16px;border:1px solid currentColor;border-radius:999px;text-decoration:none;font-size:12px}.adult-pdf-entry a[aria-disabled=true]{opacity:.55;pointer-events:none}.optional-pdf-support{display:flex;flex-wrap:wrap;align-items:center;gap:12px;grid-column:1/-1;padding:15px;border-top:1px solid var(--line);font-size:13px}.optional-pdf-support a{color:var(--green);text-underline-offset:4px}.optional-pdf-support a[aria-disabled=true]{opacity:.55;pointer-events:none}
@media(max-width:719px){.course-module>summary{padding-left:68px}.module-poster{left:-12px;width:74px;height:76px}.module-label strong{font-size:17px}.adult-pdf-entry{padding:14px 16px;gap:15px}.adult-pdf-entry>img{width:52px;height:70px}.adult-pdf-entry h3{font-size:21px}}

/* Nine offers always visible in course; dedicated internal sale page when selected. */
#workspace.offer-view> :not(#extras-support-host):not(#status){display:none!important}#workspace.offer-view #extras-support-host{margin-top:16px}#workspace.offer-view .shake-extras{margin-top:0;padding-top:0}#workspace.offer-view .shake-extras__heading,#workspace.offer-view [data-role=catalog],#workspace.offer-view .shake-extras__owned,#workspace.offer-view .shake-extras__support{display:none}#workspace:not(.offer-view) .shake-extras__detail{display:none}#workspace:not(.offer-view) .offer-backbar{display:none}.offer-backbar{position:sticky;top:10px;z-index:20;margin:0 0 16px;width:max-content;max-width:100%;border-radius:999px;background:var(--cream);padding:5px;box-shadow:0 3px 14px #173c3210}.offer-backbar a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;padding:10px 18px;font-size:13px;border:1px solid #8da58f;border-radius:999px}#workspace.offer-view .collection-page,#workspace.offer-view .collection-offer{scroll-margin-top:78px}.shake-extras.extras-compact>[data-role=catalog]{display:grid}@media(max-width:760px){.shake-extras.extras-compact>[data-role=catalog]{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact support, official mail and comfortable action target. */
#extras-support-host .shake-extras.extras-compact .shake-extras__support{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:14px 16px;min-height:104px}
#extras-support-host .shake-extras.extras-compact .shake-extras__support>div{min-width:0}
#extras-support-host .shake-extras.extras-compact .shake-extras__support>div>p{display:none}
#extras-support-host .shake-extras.extras-compact .shake-extras__support h2{font-size:20px;line-height:1.2;margin:0}
#extras-support-host .shake-extras.extras-compact .shake-extras__support>a{min-height:44px;margin:0;padding:10px 14px;font-size:13px;line-height:1.2;border-radius:999px;white-space:nowrap}
#extras-support-host .shake-extras.extras-compact .shake-extras__support>.extras-compact-email{grid-column:1/-1;margin:0;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
@media(max-width:760px){#extras-support-host .shake-extras.extras-compact .shake-extras__support{min-height:110px;padding:13px 12px;gap:6px 10px}#extras-support-host .shake-extras.extras-compact .shake-extras__support h2{font-size:19px}#extras-support-host .shake-extras.extras-compact .shake-extras__support>a{padding:10px 12px}}

/* Dedicated authorized collection area; sale and main course remain separate. */
#workspace.owned-view>:not(#extras-support-host):not(#status){display:none!important}
#workspace.owned-view #extras-support-host{margin-top:16px}
#workspace.owned-view #extras-support-host .shake-extras{margin-top:0;padding-top:0}
#workspace.owned-view #extras-support-host .shake-extras>:not(#owned-course-host){display:none!important}
#workspace.offer-view #owned-course-host{display:none!important}
#extras-support-host .shake-extras--owned-course-mounted>.shake-extras__owned{display:none!important}
#owned-course-host{scroll-margin-top:16px}
#owned-course-host .owned-course{padding:16px 0}
#workspace.owned-view #owned-course-host .owned-course__page{margin-top:0}

.owned-course{--oc-ink:#26302b;--oc-muted:#66716a;--oc-green:#315c43;--oc-line:#e1e7e0;--oc-paper:#fff;max-width:1180px;margin:0 auto;padding:clamp(1rem,3vw,2rem);color:var(--oc-ink);font:inherit}
.owned-course *{box-sizing:border-box}
.owned-course [hidden]{display:none!important}
.owned-course__library>header,.owned-course__materials-heading{margin-bottom:1rem}
.owned-course__eyebrow{margin:0 0 .35rem;color:var(--oc-green);font-size:.75rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.owned-course h1,.owned-course h2,.owned-course h3,.owned-course p{margin-top:0}
.owned-course__library h2{margin-bottom:.5rem;font-size:clamp(1.4rem,2.5vw,2rem)}
.owned-course__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0 0;padding:0;list-style:none}
.owned-course__grid a{display:grid;grid-template-rows:auto auto auto;height:100%;overflow:hidden;border:1px solid var(--oc-line);border-radius:18px;background:var(--oc-paper);color:inherit;text-decoration:none;box-shadow:0 8px 24px #1b39220d}
.owned-course__grid img{width:100%;aspect-ratio:1.6;object-fit:cover;background:#edf1e9}
.owned-course__grid span:not(.owned-course__action){padding:1rem .95rem .25rem;font-weight:750}
.owned-course__action{padding:.6rem .95rem 1rem;color:var(--oc-green);font-size:.92rem;font-weight:750}
.owned-course__grid a:hover{transform:translateY(-2px);box-shadow:0 12px 30px #1b39221b}
.owned-course__grid a:focus-visible,.owned-course button:focus-visible,.owned-course a:focus-visible{outline:3px solid #c39d54;outline-offset:3px}
.owned-course__page{margin:1.25rem 0 2rem;padding:clamp(1rem,3vw,2rem);border:1px solid var(--oc-line);border-radius:22px;background:#fff}
.owned-course__hero{display:grid;gap:1.25rem;margin-bottom:2rem}
.owned-course__back{justify-self:start;min-height:44px;padding:.6rem 1rem;border:1px solid var(--oc-line);border-radius:999px;background:#fff;color:var(--oc-green);font:inherit;font-weight:750;cursor:pointer}
.owned-course__hero-content{display:grid;grid-template-columns:minmax(180px,300px) minmax(0,1fr);align-items:center;gap:clamp(1.25rem,4vw,3rem)}
.owned-course__hero-content>img{display:block;width:100%;aspect-ratio:1.3;object-fit:cover;border-radius:16px;background:#edf1e9}
.owned-course__hero h1{max-width:720px;margin-bottom:0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.08}
.owned-course__materials-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--oc-line)}
.owned-course__materials-heading h2{margin:0;font-size:clamp(1.25rem,2.5vw,1.8rem)}
.owned-course__materials-heading p{margin:0;color:var(--oc-muted);font-size:.9rem}
.owned-course__materials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0 0;padding:0;list-style:none}
.owned-course__material{display:grid;grid-template-columns:minmax(96px,150px) minmax(0,1fr);align-items:center;gap:1rem;min-height:140px;padding:.85rem;border:1px solid var(--oc-line);border-radius:16px;background:#fbfcfa}
.owned-course__material>img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:9px;background:#edf1e9}
.owned-course__material-copy h3{margin:0 0 1rem;font-size:1rem;line-height:1.35}
.owned-course__file-actions{display:flex;flex-wrap:wrap;gap:.55rem}
.owned-course__file-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .8rem;border-radius:999px;background:var(--oc-green);color:#fff;font-size:.88rem;font-weight:750;text-decoration:none}
.owned-course__file-actions a+ a{border:1px solid var(--oc-green);background:transparent;color:var(--oc-green)}
.owned-course [role=status],.owned-course [role=alert]{padding:.7rem 0;color:var(--oc-muted)}
@media(max-width:760px){.owned-course__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.owned-course__hero-content{grid-template-columns:minmax(120px,35%) minmax(0,1fr);gap:1rem}.owned-course__materials{grid-template-columns:1fr}}
@media(max-width:480px){.owned-course__grid{grid-template-columns:1fr}.owned-course__hero-content{grid-template-columns:1fr}.owned-course__hero-content>img{max-width:260px}.owned-course__materials-heading{align-items:flex-start;flex-direction:column;gap:.35rem}.owned-course__material{grid-template-columns:minmax(82px,30%) minmax(0,1fr);gap:.75rem;padding:.65rem}.owned-course__file-actions a{flex:1 1 100%}}

.shake-extras--owned-course-mounted .shake-extras__owned{display:none!important}
#workspace.owned-view>:not(#status):not(#extras-support-host){display:none!important}
#workspace.owned-view>#status{display:block!important}
#workspace.owned-view>#extras-support-host{display:block!important}
#workspace.owned-view #extras-support-host .shake-extras>:not(#owned-course-host){display:none!important}
#workspace.owned-view #extras-support-host #owned-course-host{display:block!important}

/* Localized labels and dynamic catalog. */
.brand{font-size:28px}.course-module>summary{padding-left:18px}.lesson-preview img{object-fit:contain!important;background:#e4ebd7}.lesson-card .favorite-button{font-size:26px}.library-context{overflow-wrap:anywhere}.detail-copy{overflow-wrap:anywhere}.pdf-actions a{min-height:44px}.trail-nav.open{display:flex!important;flex-direction:column}.course-module>summary:focus-visible,.favorite-button:focus-visible{outline:3px solid #b37f00;outline-offset:3px}@media(max-width:719px){.brand{font-size:24px}.course-module>summary{padding-left:14px}.module-label strong{overflow-wrap:anywhere}.detail-head{flex-wrap:wrap}.auth-intro h1{font-size:clamp(35px,10vw,54px)}}

.visual-button{display:block;max-width:100%;width:100%;min-width:0;overflow:hidden}.visual-button img{display:block;width:100%;max-width:100%;height:auto}.library,.detail,.detail-copy,.layout{min-width:0}.detail .visual-button{padding:0}.detail .visual-button .enlarge-label{display:block;padding:10px}

.pdf-language-note{grid-column:1/-1;font-size:12px;line-height:1.5;margin:8px 0;color:#596b5d}.pdf-card h3{-webkit-line-clamp:unset!important;overflow:visible!important;display:block!important}

.lesson-main>p:not(.meta){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.lesson-preview img[src^="/api/student/posters/"]{object-fit:cover!important}

.lesson-main>p:empty,.detail-copy>p:empty{display:none}

/* Canonical support strip, independent of additional paid collections. */
.student-support{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.5rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid #e2e8e2;border-radius:18px;background:#f7f9f5;color:#26302b}.student-support h2{margin:.2rem 0 .5rem;font-family:Fraunces,Georgia,serif;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.2}.student-support p{color:#69736d;line-height:1.55}.student-support>a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.65rem 1rem;border-radius:999px;background:#315c43;color:white;font-weight:700;text-decoration:none}.student-support>a:focus-visible{outline:3px solid #c39d54;outline-offset:3px}@media(max-width:719px){.student-support{align-items:flex-start;flex-direction:column;margin-top:12px;padding:14px;gap:10px}.student-support h2{font-size:21px}.student-support p{margin:6px 0;font-size:13px;line-height:1.35}.student-support>a{min-height:44px;padding:9px 16px;font-size:13px}}
