/* PZB Academy – redesign phase 1. Additive, isolated; no core teaching logic replaced. */
:root{--pzb-ink:#16353d;--pzb-teal:#075862;--pzb-cream:#f6f7f1;--pzb-sage:#e6eee3;--pzb-line:#dce6de;--pzb-orange:#cb6926}
#protected:not([hidden]){background:var(--pzb-cream);min-height:100vh;color:var(--pzb-ink)}
#protected .app-top{background:#fffdf8;border-bottom:1px solid var(--pzb-line);box-shadow:0 2px 12px #122b2510}
#protected .app-top .brand strong{color:#123d41}
#catalogView.pzb-home-ready{padding:0!important;max-width:none!important;display:grid;grid-template-columns:190px minmax(0,1fr);align-items:start;gap:0;background:#f8f9f4}
#catalogView.pzb-home-ready[hidden]{display:none!important}
.pzb-home-sidebar{grid-column:1;grid-row:1/6;position:sticky;top:0;min-height:calc(100vh - 82px);padding:18px 12px 30px;background:#fcfdf9;border-right:1px solid var(--pzb-line);display:flex;flex-direction:column;gap:7px}
.pzb-home-sidebar button{appearance:none;display:flex;align-items:center;gap:12px;width:100%;background:transparent;border:0;border-radius:12px;color:#26464e;text-align:left;font:600 14px/1.3 inherit;font-family:inherit;padding:13px 12px;cursor:pointer}
.pzb-home-sidebar button:hover,.pzb-home-sidebar button:focus-visible{background:#e9efe7;outline:0}
.pzb-home-sidebar button[aria-current="page"]{background:linear-gradient(105deg,#135760,#94b87b);color:white}
.pzb-home-sidebar .pzb-home-motto{margin-top:auto;border-top:1px solid var(--pzb-line);padding:22px 9px;color:#476b63;font-size:13px;font-style:italic}
.pzb-home-main{grid-column:2;grid-row:1;min-width:0;padding:0 20px 30px}
.pzb-home-hero{margin:0 -20px 18px;position:relative;overflow:hidden;background:#edf3e9}
.pzb-home-hero img{display:block;width:100%;height:auto;max-height:420px;object-fit:cover;object-position:center;aspect-ratio:1487/357}
.pzb-home-hero button{position:absolute;left:3.8%;top:57%;border:none;color:#fff;background:#ca6b25;border-radius:25px;padding:12px 20px;font-weight:700;box-shadow:0 3px 14px #291b1330;cursor:pointer}
/* Reference includes its original button: transparent accessible target instead of duplicate. */
.pzb-home-hero button{background:transparent;box-shadow:none;color:transparent;min-width:175px;min-height:43px}
.pzb-home-hero button:focus-visible{outline:3px solid #d66b20;color:#fff;background:#c96525}
.pzb-home-ready .pageintro{margin:12px 0 8px!important;padding:0}
.pzb-home-ready .pageintro h1{font-size:clamp(22px,2.5vw,30px);color:#153b3f}
.pzb-home-ready .courses{display:grid!important;grid-template-columns:repeat(4,minmax(180px,1fr));gap:15px}
.pzb-home-ready .course-card{min-height:160px;border-radius:15px!important;border:1px solid #e5e7e0!important;background:#fffdf9!important;box-shadow:0 3px 15px #183a2b0a!important;overflow:hidden}
.pzb-home-ready .recent{border-radius:17px;border:1px solid #e5e7e0;background:#fffefa;padding:18px;margin-top:22px}
.pzb-home-course-heading{font-size:18px;font-weight:800;padding:10px 0 14px;color:#173c43}
.pzb-home-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.pzb-home-quick button{border:1px solid #e6e7e1;background:#fff;border-radius:13px;min-height:72px;padding:14px;font:600 14px inherit;font-family:inherit;color:#123c45;cursor:pointer;text-align:left}
.pzb-home-quick button:hover{background:#eef4e8}
/* Active lesson: reuse original live DOM elements and listeners, change only placement. */
#teacherView.pzb-lesson-ready:not([hidden]){display:flex!important;flex-direction:column;gap:14px;padding:18px!important;background:#f7f9f4;color:#193d41}
#teacherView.pzb-lesson-ready .teacher-heading{background:white;border:1px solid #e3e9e0;border-radius:17px;padding:15px}
.pzb-lesson-shell{display:grid;grid-template-columns:minmax(215px,245px) minmax(0,1fr) minmax(270px,345px);align-items:start;gap:16px;min-width:0}
.pzb-lesson-sidebar{background:#fff;border:1px solid #e0e7de;border-radius:17px;padding:15px;min-width:0;position:sticky;top:8px}
.pzb-lesson-sidebar .pzb-side-title{font-size:13px;font-weight:800;color:#547364;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}
.pzb-lesson-sidebar .teaching-mid{box-shadow:none!important;border:0!important;background:transparent!important;padding:0!important}
.pzb-lesson-sidebar .pane-head{margin-bottom:10px}
.pzb-lesson-sidebar .slide-strip{display:flex!important;flex-direction:column!important;overflow:visible!important;max-height:70vh;overflow-y:auto!important;gap:10px!important}
.pzb-lesson-sidebar .slide-card{width:100%!important;min-width:0!important;flex:0 0 auto!important;white-space:normal!important;overflow-wrap:anywhere;text-align:left}
.pzb-lesson-center{min-width:0;display:flex;flex-direction:column;gap:14px}
.pzb-lesson-center .teaching-top,.pzb-lesson-center .presentation-pane{background:#fff!important;border:1px solid #e0e7de!important;border-radius:17px!important;box-shadow:0 8px 25px #183b2410!important;min-width:0}
.pzb-lesson-center .element-strip{overflow-x:auto}
.pzb-lesson-center .presentation-pane{min-height:520px}
.pzb-lesson-center .slide-board{background:#fcfdf8!important;border-radius:12px;min-height:370px}
.pzb-lesson-right{min-width:0;position:sticky;top:8px}
.pzb-lesson-right .notes-pane{background:#fff!important;border:1px solid #e0e7de!important;border-radius:17px!important;box-shadow:0 8px 25px #183b2410!important}
.pzb-lesson-right .notes-copy{max-height:70vh;overflow:auto}
.pzb-lesson-tools-caption{font-size:12px;font-weight:800;color:#547364;text-transform:uppercase;letter-spacing:.09em;margin:0 0 10px}
.pzb-lesson-right .notes-pane{width:100%!important;min-width:0!important}
@media(max-width:1200px){.pzb-lesson-shell{grid-template-columns:210px minmax(0,1fr)}.pzb-lesson-right{grid-column:2;position:static}.pzb-home-ready .courses{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:750px){#catalogView.pzb-home-ready{display:block}.pzb-home-sidebar{position:relative;min-height:0;flex-direction:row;overflow-x:auto;padding:10px}.pzb-home-sidebar button{white-space:nowrap;width:auto}.pzb-home-sidebar .pzb-home-motto{display:none}.pzb-home-main{padding:0 12px 20px}.pzb-home-hero{margin:0 -12px 12px}.pzb-home-hero img{aspect-ratio:1487/520;object-fit:cover;object-position:center}.pzb-home-ready .courses{grid-template-columns:1fr}.pzb-home-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.pzb-lesson-shell{display:flex;flex-direction:column}.pzb-lesson-sidebar,.pzb-lesson-right,.pzb-lesson-center{width:100%;position:static}.pzb-lesson-sidebar .slide-strip{flex-direction:row!important;overflow-x:auto!important;max-height:180px}.pzb-lesson-sidebar .slide-card{min-width:150px!important;width:170px!important}}
