:root{
  --blue:#087fbd;--blue-2:#3e89cf;--navy:#102d4a;--ink:#1c3045;--muted:#66788a;
  --pale:#eaf5fd;--line:#dce8f2;--bg:#f5f8fb;--white:#fff;--success:#18875b;
  --shadow:0 14px 38px rgba(21,61,94,.10);--radius:18px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5}button,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:260px;background:linear-gradient(180deg,#087fbd 0%,#086fa8 58%,#075e91 100%);color:#fff;padding:26px 18px 24px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:0 10px 28px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#fff;color:var(--blue);font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.14)}.brand strong{font-size:1.08rem;letter-spacing:.02em}.brand strong span{font-weight:400}.brand small{display:block;color:#cfeafa;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.side-nav{display:grid;gap:6px}.nav-item{width:100%;border:0;background:transparent;color:#dff3ff;border-radius:12px;padding:12px 13px;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;font-weight:650}.nav-item>span{width:23px;text-align:center;font-size:1.15rem}.nav-item b{margin-left:auto;background:rgba(255,255,255,.15);font-size:.72rem;padding:2px 8px;border-radius:999px}.nav-item:hover,.nav-item.active{background:#fff;color:#096fa7;box-shadow:0 7px 18px rgba(0,47,78,.13)}.back-aula{margin-top:auto;color:#fff;text-decoration:none;border-top:1px solid rgba(255,255,255,.2);padding:20px 12px 4px;font-weight:700}.back-aula span{margin-right:8px}.main-column{min-width:0;width:calc(100% - 260px);margin-left:260px}.topbar{height:84px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 40px;position:sticky;top:0;z-index:12}.course-identity{display:flex;flex-direction:column}.course-identity strong{font-size:1.06rem}.eyebrow,.section-kicker,.hero-label{font-size:.72rem;letter-spacing:.12em;font-weight:800;color:var(--blue);text-transform:uppercase}.profile{margin-left:auto;border:0;background:transparent;display:flex;align-items:center;gap:10px;color:var(--ink);cursor:pointer}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800}.profile-copy{text-align:left}.profile-copy strong,.profile-copy small{display:block}.profile-copy small{color:var(--muted);font-size:.75rem}.menu-button{display:none;border:0;background:transparent;font-size:1.4rem;color:var(--navy);margin-right:12px}main{max-width:1300px;margin:auto;padding:32px 40px 70px}.view{display:none}.view.active{display:block}.notice-bar{background:#e6f5fd;border:1px solid #c8e9f9;border-radius:14px;display:flex;align-items:center;padding:11px 14px;gap:12px;margin-bottom:20px;color:#22506d}.notice-bar span{background:var(--blue);color:#fff;border-radius:999px;padding:4px 9px;font-size:.67rem;font-weight:900;letter-spacing:.08em}.notice-bar p{margin:0;flex:1}.notice-bar button{border:0;background:transparent;color:#47738c;font-size:1.3rem;cursor:pointer}.course-hero{min-height:285px;border-radius:24px;padding:42px 46px;color:#fff;background:linear-gradient(116deg,#0d2f50 0%,#154c73 59%,#0e7cae 100%);box-shadow:var(--shadow);position:relative;overflow:hidden;display:flex;align-items:center}.course-hero:after{content:"BCyT";position:absolute;right:4%;top:-22%;font-size:14rem;font-weight:900;color:rgba(255,255,255,.055);letter-spacing:-.08em}.hero-copy{position:relative;z-index:2;max-width:660px}.hero-label{color:#83d7ff}.hero-copy h1{font-family:Georgia,serif;font-size:clamp(2.2rem,5vw,4rem);line-height:1.05;margin:7px 0 14px;font-weight:600}.hero-copy p{font-size:1.06rem;color:#d9eaf5;max-width:600px;margin:0 0 24px}.primary-button{border:0;border-radius:12px;background:var(--blue);color:#fff;padding:13px 18px;font-weight:800;cursor:pointer;box-shadow:0 8px 18px rgba(0,91,143,.22)}.primary-button:hover{background:#0691d5}.primary-button:disabled{opacity:.55;cursor:not-allowed}.primary-button span{margin-left:16px}.hero-progress{position:relative;z-index:2;margin-left:auto;min-width:180px;text-align:center;display:flex;flex-direction:column;align-items:center}.progress-ring{--progress:0deg;width:108px;height:108px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#5ed1ff var(--progress),rgba(255,255,255,.17) 0);position:relative;margin-bottom:10px}.progress-ring:before{content:"";position:absolute;width:84px;height:84px;border-radius:50%;background:#164666}.progress-ring span{position:relative;font-size:1.28rem;font-weight:900}.hero-progress small{color:#cce4f1}.cell-pattern{position:absolute;inset:0;opacity:.09}.cell-pattern i{position:absolute;border:2px solid #fff;border-radius:50%}.cell-pattern i:nth-child(1){width:100px;height:100px;left:43%;top:-30px}.cell-pattern i:nth-child(2){width:45px;height:45px;left:52%;top:60px}.cell-pattern i:nth-child(3){width:130px;height:130px;right:-40px;bottom:-30px}.cell-pattern i:nth-child(4){width:65px;height:65px;left:38%;bottom:-16px}.cell-pattern i:nth-child(5){width:22px;height:22px;left:60%;bottom:32px}.cell-pattern i:nth-child(6){width:34px;height:34px;right:24%;top:20px}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;margin-top:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 24px rgba(32,65,94,.06);padding:24px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-heading h2{font-size:1.3rem;margin:3px 0 0}.text-button{border:0;background:transparent;color:var(--blue);font-weight:750;cursor:pointer}.next-class{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:16px;background:var(--pale);border-radius:15px;padding:17px}.next-number{width:62px;height:62px;display:grid;place-items:center;background:#fff;border:1px solid #d5e9f7;border-radius:14px;color:var(--blue);font-weight:900;font-size:1.15rem}.next-copy strong,.next-copy small{display:block}.next-copy small{color:var(--muted);margin-top:3px}.play-round{width:46px;height:46px;border:0;border-radius:50%;background:var(--blue);color:#fff;cursor:pointer;font-size:1rem}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-grid button{min-height:102px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;padding:14px;cursor:pointer;color:var(--ink)}.quick-grid button:hover{border-color:#85c4e8;background:#f7fcff}.quick-grid strong,.quick-grid small{display:block}.quick-grid small{font-size:.76rem;color:var(--muted)}.quick-icon{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--pale);color:var(--blue);font-weight:900;margin-bottom:7px}.bulletin{margin-top:22px}.updated{color:var(--muted);font-size:.78rem}.bulletin-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bulletin-list article{display:flex;gap:13px}.bulletin-list p{margin:3px 0 0;color:var(--muted)}.bullet-icon{flex:0 0 auto;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#e4f6fd;color:var(--blue);font-weight:900}.bullet-icon.calendar{background:#edf1fa;color:#4e68a5}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:5px 0 25px}.page-heading h1{font-family:Georgia,serif;font-size:2.5rem;line-height:1.1;margin:4px 0 7px;color:var(--navy)}.page-heading p{margin:0;color:var(--muted)}.compact-progress{min-width:210px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px 15px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.compact-progress>span{height:7px;border-radius:99px;background:#e6eef4;overflow:hidden}.compact-progress i{display:block;width:0;height:100%;background:var(--blue);border-radius:99px}.compact-progress small{color:var(--muted)}.class-toolbar{display:flex;gap:12px;margin-bottom:16px}.search-box{flex:1;background:#fff;border:1px solid var(--line);border-radius:13px;display:flex;align-items:center;padding:0 15px;gap:9px}.search-box span{font-size:1.35rem;color:var(--muted)}.search-box input{width:100%;border:0;outline:0;padding:13px 0;background:transparent}.filter-button{border:1px solid var(--line);background:#fff;border-radius:13px;padding:0 16px;color:var(--ink);font-weight:700;cursor:pointer}.filter-button.active{border-color:var(--blue);background:var(--pale);color:var(--blue)}.class-list{display:grid;gap:12px}.class-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 5px 18px rgba(34,67,94,.045)}.class-summary{list-style:none;display:grid;grid-template-columns:52px 1fr auto 26px;gap:15px;align-items:center;padding:17px 18px;cursor:pointer}.class-summary::-webkit-details-marker{display:none}.class-badge{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;background:var(--pale);color:var(--blue);font-weight:900}.class-title strong,.class-title small{display:block}.class-title strong{font-size:1.02rem}.class-title small{color:var(--muted);font-size:.8rem;margin-top:3px}.completion{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.8rem}.completion input{width:19px;height:19px;accent-color:var(--success)}.chevron{font-size:1.3rem;color:#8294a5;transition:.2s}.class-card[open] .chevron{transform:rotate(90deg)}.class-body{border-top:1px solid var(--line);padding:18px 18px 20px 85px;background:#fbfdff}.video-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px}.video-meta strong,.video-meta small{display:block}.video-meta small{color:var(--muted);margin-top:3px}.primary-small,.resource-button{border:1px solid var(--line);border-radius:11px;padding:10px 13px;background:#fff;color:var(--ink);font-weight:750;cursor:pointer}.primary-small{border-color:var(--blue);background:var(--blue);color:#fff}.resource-section{border-top:1px dashed #d7e4ee;padding-top:14px}.resource-section>span{display:block;color:var(--muted);font-size:.76rem;text-transform:uppercase;font-weight:800;letter-spacing:.08em;margin-bottom:9px}.resource-row{display:flex;flex-wrap:wrap;gap:9px}.resource-button:disabled{opacity:.55;cursor:not-allowed}.workshop-list{display:grid;gap:14px}.workshop-card{display:grid;grid-template-columns:72px 1fr;gap:20px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 7px 20px rgba(33,70,98,.05)}.workshop-number{font:600 2.2rem Georgia,serif;color:#83bfe3}.workshop-card h2{margin:5px 0}.workshop-card p{color:var(--muted);margin:0 0 15px}.status-pill{display:inline-block;border-radius:999px;background:#ddf6eb;color:#19714e;padding:3px 9px;font-size:.72rem;font-weight:800}.status-pill.muted{background:#edf1f5;color:#6b7886}.timeline{padding-left:36px}.timeline article{position:relative;border-left:2px solid #bfe0f3;padding:4px 0 28px 28px;display:grid;grid-template-columns:120px 1fr;gap:18px}.timeline article:before{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:var(--blue);left:-7px;top:9px;border:3px solid #e7f5fc}.timeline time{font-weight:800;color:var(--blue)}.timeline p{color:var(--muted);margin:2px 0}.timeline-placeholder{opacity:.72}.empty-card{min-height:330px;background:#fff;border:1px solid var(--line);border-radius:20px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px}.empty-card h2{margin:8px 0}.empty-card p{color:var(--muted);max-width:520px}.empty-icon,.upload-icon{width:62px;height:62px;border-radius:18px;background:var(--pale);display:grid;place-items:center;color:var(--blue);font-size:1.7rem}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.payment-info h2,.upload-card h2{margin-top:0}.muted-copy,.upload-card p{color:var(--muted)}.payment-info dl{margin:20px 0 0}.payment-info dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0}.payment-info dt{color:var(--muted)}.payment-info dd{font-weight:750}.upload-card{text-align:center;display:flex;align-items:center;flex-direction:column}.faq-list{display:grid;gap:10px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 18px}.faq-list summary{list-style:none;padding:17px 0;font-weight:800;cursor:pointer;display:flex;justify-content:space-between}.faq-list summary::-webkit-details-marker{display:none}.faq-list p{color:var(--muted);margin:0;padding:0 30px 18px 0}.mobile-nav,.mobile-sheet{display:none}.toast{position:fixed;right:22px;bottom:22px;background:var(--navy);color:#fff;border-radius:12px;padding:12px 16px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:none}
@media(max-width:980px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.main-column{margin-left:0;width:100%}.menu-button{display:block}.topbar{padding:0 22px}.course-hero{padding:35px}.dashboard-grid{grid-template-columns:1fr}.hero-progress{margin-left:30px}main{padding:25px 24px 90px}}
@media(max-width:700px){body{font-size:15px}.topbar{height:70px;padding:0 15px}.course-identity .eyebrow{display:none}.course-identity strong{font-size:.94rem}.profile-copy{display:none}.avatar{width:36px;height:36px}.course-hero{padding:30px 24px;display:block;min-height:330px}.hero-copy h1{font-size:2.55rem}.hero-copy p{font-size:.94rem}.hero-progress{position:absolute;right:20px;bottom:18px;margin:0;align-items:flex-end}.progress-ring{width:64px;height:64px;margin:0}.progress-ring:before{width:48px;height:48px}.progress-ring span{font-size:.86rem}.hero-progress strong,.hero-progress small{display:none}.dashboard-grid{display:block}.quick-panel,.bulletin{margin-top:16px}.bulletin-list{grid-template-columns:1fr}.page-heading{display:block}.page-heading h1{font-size:2.1rem}.compact-progress{margin-top:18px}.class-toolbar{display:block}.filter-button{width:100%;padding:11px;margin-top:9px}.class-summary{grid-template-columns:44px 1fr 22px;padding:14px;gap:11px}.class-badge{width:44px;height:44px}.completion{grid-column:2/3}.chevron{grid-column:3;grid-row:1}.class-body{padding:16px}.video-row{align-items:flex-start;display:block}.video-row .primary-small{width:100%;margin-top:12px}.payment-grid{grid-template-columns:1fr}.workshop-card{grid-template-columns:48px 1fr;padding:18px;gap:12px}.workshop-number{font-size:1.6rem}.timeline{padding:20px}.timeline article{grid-template-columns:1fr;gap:2px}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:30;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:7px 6px calc(7px + env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:transparent;color:#718293;font-size:.7rem;display:flex;flex-direction:column;align-items:center;gap:2px}.mobile-nav button span{font-size:1.1rem}.mobile-nav button.active{color:var(--blue);font-weight:800}.mobile-sheet{display:grid;position:fixed;z-index:40;left:12px;right:12px;bottom:72px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:9px;box-shadow:var(--shadow);transform:translateY(12px);opacity:0;pointer-events:none;transition:.2s}.mobile-sheet.open{transform:none;opacity:1;pointer-events:auto}.mobile-sheet button,.mobile-sheet a{border:0;background:transparent;padding:13px;border-radius:10px;text-align:left;color:var(--ink);text-decoration:none}.next-class{grid-template-columns:52px 1fr auto}.next-number{width:52px;height:52px}.updated{display:none}main{padding:18px 14px 88px}.notice-bar{align-items:flex-start}.notice-bar p{font-size:.84rem}}
.resource-group+.resource-group{margin-top:13px}.resource-group>strong{display:block;color:#466278;font-size:.78rem;margin-bottom:7px}.resource-button{text-decoration:none;display:inline-flex;align-items:center}.resource-button:hover:not(:disabled){border-color:#85c4e8;background:#f3faff;color:var(--blue)}.workshop-group+.workshop-group{margin-top:34px}.workshop-group-heading{margin:0 0 14px}.workshop-group-heading span{font-size:.72rem;letter-spacing:.12em;font-weight:800;color:var(--blue);text-transform:uppercase}.workshop-group-heading h2{margin:3px 0 0;font:600 1.7rem Georgia,serif;color:var(--navy)}.workshop-card h3{font-size:1.16rem;margin:5px 0}
.lesson-series{margin-top:14px}.lesson-series-label{display:block;color:#466278;font-size:.78rem;margin-bottom:7px}.lesson-paired-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lesson-paired-card{border:1px solid var(--line);border-radius:13px;background:#fff;padding:11px}.lesson-paired-title{display:flex;align-items:center;gap:9px;margin-bottom:9px}.lesson-paired-title>span{width:32px;height:32px;flex:0 0 auto;border-radius:9px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-size:.76rem;font-weight:900}.lesson-paired-title small,.lesson-paired-title strong{display:block}.lesson-paired-title small{font-size:.61rem;letter-spacing:.09em;color:var(--muted)}.lesson-paired-title strong{font-size:.83rem}.lesson-paired-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.lesson-paired-actions .pdf-action{font-size:.78rem;min-height:38px;padding:7px}
.workshop-structure{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border-radius:17px;padding:14px 17px;margin-bottom:28px}.workshop-structure>div{display:grid;grid-template-columns:34px 1fr;column-gap:9px;align-items:center}.workshop-structure>div>span{grid-row:1/3;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.13);display:grid;place-items:center;color:#8ad8ff;font-weight:900}.workshop-structure small,.workshop-structure strong{display:block}.workshop-structure small{font-size:.59rem;letter-spacing:.1em;color:#8ad8ff;font-weight:850}.workshop-structure strong{font-size:.82rem}.workshop-structure i{font-style:normal;color:#71bddd;font-size:1.3rem}.workshop-group-heading p{color:var(--muted);margin:4px 0 0}.workshop-content{min-width:0}.workshop-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.video-pill{background:#e4f2fb;color:#176b97;margin-left:6px}.workshop-resource-block{border-top:1px dashed #d7e4ee;border-bottom:1px dashed #d7e4ee;padding:13px 0;margin:12px 0}.workshop-resource-label{display:flex;align-items:center;gap:9px;margin-bottom:10px}.workshop-resource-label>span{width:32px;height:32px;border-radius:9px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-size:.75rem}.workshop-resource-label small,.workshop-resource-label strong{display:block}.workshop-resource-label small{font-size:.61rem;letter-spacing:.09em;color:var(--blue);font-weight:850}.workshop-resource-label strong{font-size:.83rem}.recording-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.recording-button{border:1px solid #b9dcef;border-radius:11px;background:#f6fbfe;color:#176b97;padding:9px;display:flex;align-items:center;gap:8px;text-align:left;text-decoration:none;cursor:pointer}.recording-button>span{width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:.65rem;flex:0 0 auto}.recording-button small,.recording-button strong{display:block}.recording-button small{font-size:.58rem;letter-spacing:.04em}.recording-button strong{font-size:.75rem}.recording-button.placeholder{opacity:.56;cursor:not-allowed}.workshop-pdf-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.workshop-pdf-row small,.workshop-pdf-row strong{display:block}.workshop-pdf-row small{font-size:.61rem;letter-spacing:.09em;color:var(--muted);font-weight:850}.workshop-pdf-row strong{font-size:.82rem}
.workshop-period-tabs{position:sticky;top:160px;z-index:9;display:flex;align-items:center;gap:8px;overflow-x:auto;background:rgba(245,248,251,.96);backdrop-filter:blur(10px);padding:10px 2px 12px;margin:0 0 10px;scrollbar-width:none}.workshop-period-tabs::-webkit-scrollbar{display:none}.workshop-period-tabs>span{flex:0 0 auto;color:var(--muted);font-size:.65rem;letter-spacing:.1em;font-weight:900;margin-right:3px}.workshop-period-tabs button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fff;color:#526b7e;padding:9px 14px;font-weight:800;cursor:pointer}.workshop-period-tabs button:hover{border-color:#8bc9e9;color:var(--blue)}.workshop-period-tabs button.active{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 5px 13px rgba(8,127,189,.2)}.google-sites-mode .workshop-period-tabs{top:188px}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* PDF design comparison */
.design-page-heading{align-items:center}.design-page-heading p{max-width:760px}.design-options{display:grid;gap:24px}.design-context{display:flex;align-items:center;gap:15px;background:linear-gradient(100deg,#e9f6fd,#f7fbfe);border:1px solid #cfe9f7;border-radius:17px;padding:16px 18px}.design-context div{min-width:0}.design-context small,.selected-number+div small{display:block;color:var(--blue);font-size:.69rem;letter-spacing:.1em;font-weight:850}.design-context strong{display:block;font-size:1.04rem;margin:1px 0}.design-context p{margin:0;color:var(--muted);font-size:.84rem}.design-option{background:#fff;border:1px solid var(--line);border-radius:21px;padding:25px;box-shadow:0 8px 25px rgba(32,65,94,.055)}.design-option.recommended{border:2px solid #39a7dc;box-shadow:0 12px 30px rgba(8,127,189,.11)}.design-option-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:19px}.design-option-head>div{position:relative;padding-left:48px}.design-option-head h2{font:600 1.55rem Georgia,serif;color:var(--navy);margin:0 0 3px}.design-option-head p{color:var(--muted);margin:0}.option-letter{position:absolute;left:0;top:0;width:35px;height:35px;border-radius:11px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.recommend-pill{display:inline-block;background:#dff5ed;color:#147553;border-radius:99px;font-size:.64rem;letter-spacing:.08em;font-weight:900;padding:4px 8px;margin-bottom:6px}.density-label{white-space:nowrap;color:#567084;background:#f1f6fa;border-radius:99px;padding:5px 10px;font-size:.72rem;font-weight:750}.theory-strip{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;background:#f6f9fc;border:1px solid var(--line);border-radius:13px;padding:11px 13px;margin-bottom:13px}.theory-strip>span{width:36px;height:36px;border-radius:10px;background:#e3f2fb;color:var(--blue);display:grid;place-items:center}.theory-strip small,.theory-strip strong{display:block}.theory-strip small{color:var(--muted);font-size:.65rem;letter-spacing:.08em}.theory-strip button{border:0;background:transparent;color:var(--blue);font-weight:800;cursor:pointer}.paired-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.paired-card{border:1px solid var(--line);border-radius:15px;padding:15px;background:#fbfdff}.paired-heading{display:flex;align-items:center;gap:11px;margin-bottom:13px}.paired-heading>span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#e9f5fc;color:var(--blue);font-weight:900}.paired-heading small,.paired-heading strong{display:block}.paired-heading small{font-size:.64rem;letter-spacing:.1em;color:var(--muted)}.paired-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pdf-action{border:1px solid #b9dcef;background:#fff;color:#176b97;border-radius:10px;min-height:42px;padding:8px 10px;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:800;cursor:pointer}.pdf-action span{width:22px;height:22px;border-radius:7px;background:#e8f6fd;display:grid;place-items:center}.pdf-action.answer{border-color:#bce3d4;color:#17724f}.pdf-action.answer span{background:#e5f6ef}.pdf-action:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(26,88,126,.09)}.study-path{position:relative;display:grid;gap:10px}.study-path:before{content:"";position:absolute;left:22px;top:28px;bottom:28px;width:2px;background:#d8eaf5}.path-step{position:relative;display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:13px}.path-number{z-index:1;width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:900;border:5px solid #eff8fd}.path-copy small,.path-copy strong{display:block}.path-copy small{font-size:.65rem;letter-spacing:.1em;color:var(--blue);font-weight:850}.path-copy p{margin:2px 0 0;color:var(--muted);font-size:.8rem}.path-actions{display:flex;gap:7px}.linked-board{display:grid;grid-template-columns:1fr 1fr;gap:8px}.board-title{font-weight:850;padding:10px 13px;border-radius:11px}.question-title{background:#e8f6fd;color:#176b97}.answer-title{background:#e6f6ef;color:#17724f}.board-cell{display:grid;grid-template-columns:31px 1fr;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:11px}.board-cell>span{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;font-weight:900}.question-cell>span{background:#e8f6fd;color:#176b97}.answer-cell>span{background:#e6f6ef;color:#17724f}.board-cell .pdf-action{justify-content:flex-start}.series-selector{display:grid;grid-template-columns:minmax(190px,.7fr) 1.3fr;gap:14px;background:#f6f9fc;border:1px solid var(--line);border-radius:15px;padding:15px}.series-selector label{font-size:.74rem;color:var(--muted);font-weight:750}.series-selector select{display:block;width:100%;margin-top:5px;border:1px solid #cadce9;background:#fff;border-radius:10px;padding:11px;color:var(--ink);font-weight:750}.series-selector>div{display:grid;grid-template-columns:43px 1fr auto auto;align-items:center;gap:9px}.selected-number{width:43px;height:43px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.selected-number+div strong{display:block}

/* Branded PDF.js viewer */
body.viewer-open{overflow:hidden}.pdf-viewer{position:fixed;z-index:100;inset:0;background:#e9eef3;display:none;grid-template-rows:68px 1fr}.pdf-viewer.open{display:grid}.pdf-viewer-bar{background:#102d4a;color:#fff;display:flex;align-items:center;padding:0 18px;gap:12px;box-shadow:0 3px 15px rgba(0,0,0,.22);z-index:2}.viewer-close,.viewer-close-x{border:0;background:transparent;color:#fff;font-size:1.45rem;cursor:pointer}.viewer-close-x{font-size:1.8rem}.viewer-brand{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#fff;color:var(--blue);font-weight:900}.viewer-title{min-width:0}.viewer-title small,.viewer-title strong{display:block}.viewer-title small{color:#89c9eb;font-size:.61rem;letter-spacing:.12em;font-weight:850}.viewer-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48vw}.page-count{margin-left:auto;color:#ccdeea;font-size:.79rem}.viewer-download{color:#fff;text-decoration:none;background:var(--blue);border-radius:10px;padding:9px 12px;font-weight:800}.pdf-pages{overflow:auto;padding:25px;display:grid;justify-items:center;gap:20px}.pdf-page{background:#fff;box-shadow:0 6px 24px rgba(19,43,63,.18);max-width:min(100%,960px)}.pdf-page canvas{display:block;width:100%;height:auto}.pdf-loading,.pdf-error{margin:auto;background:#fff;border-radius:18px;padding:36px;min-width:min(420px,90vw);display:grid;justify-items:center;text-align:center;box-shadow:var(--shadow)}.pdf-loading span{width:42px;height:42px;border-radius:50%;border:4px solid #d7eaf5;border-top-color:var(--blue);animation:pdf-spin .8s linear infinite;margin-bottom:13px}.pdf-loading small{color:var(--muted);margin-top:4px}@keyframes pdf-spin{to{transform:rotate(360deg)}}
.pdf-viewer-main{min-height:0;display:grid;grid-template-columns:176px minmax(0,1fr);overflow:hidden}.pdf-viewer.thumbs-hidden .pdf-viewer-main{grid-template-columns:0 minmax(0,1fr)}.pdf-viewer.thumbs-hidden .pdf-thumbnails{visibility:hidden}.pdf-thumbnails{overflow-y:auto;background:#dce5ec;border-right:1px solid #c3d0da;padding:15px 12px;display:flex;flex-direction:column;gap:13px;transition:.2s}.pdf-thumbnail{border:2px solid transparent;border-radius:10px;background:transparent;color:#4d6273;padding:6px;display:grid;justify-items:center;gap:5px;font-size:.68rem;font-weight:750;cursor:pointer}.pdf-thumbnail canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 3px 10px rgba(20,44,63,.18)}.pdf-thumbnail.active{border-color:var(--blue);background:#fff;color:var(--blue)}.viewer-tool{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;border-radius:9px;padding:7px 9px;font-weight:750;cursor:pointer}.viewer-zoom{display:flex;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:9px;overflow:hidden}.viewer-zoom button{width:34px;height:34px;border:0;background:transparent;color:#fff;font-size:1.05rem;cursor:pointer}.viewer-zoom button:hover,.viewer-tool:hover{background:rgba(255,255,255,.17)}.viewer-zoom span{min-width:48px;text-align:center;color:#dcebf4;font-size:.72rem;font-weight:800}.pdf-pages{min-width:0;justify-items:center}.pdf-page{max-width:none;flex:none}.page-count{margin-left:0;min-width:42px;text-align:center}

@media(max-width:700px){.design-page-heading .primary-button{width:100%;margin-top:14px}.design-option{padding:17px}.design-option-head{display:block}.design-option-head>div{padding-left:43px}.density-label{display:inline-block;margin:10px 0 0 43px}.paired-grid{grid-template-columns:1fr}.paired-actions{grid-template-columns:1fr 1fr}.path-step{grid-template-columns:38px 1fr}.path-number{width:38px;height:38px}.path-actions{grid-column:2;display:grid;grid-template-columns:1fr 1fr}.linked-board{grid-template-columns:1fr}.board-title.answer-title{display:none}.board-cell.answer-cell{margin-bottom:8px}.series-selector{grid-template-columns:1fr}.series-selector>div{grid-template-columns:43px 1fr}.series-selector>div .pdf-action{grid-row:2}.series-selector>div .pdf-action.question{grid-column:1/2}.series-selector>div .pdf-action.answer{grid-column:2/3}.pdf-viewer{grid-template-rows:62px 1fr}.pdf-viewer-bar{padding:0 9px;gap:8px}.viewer-brand,.page-count{display:none}.viewer-title{flex:1}.viewer-title strong{max-width:43vw}.viewer-download{font-size:.75rem;padding:8px}.pdf-pages{padding:12px}.viewer-close-x{display:none}}
@media(max-width:700px){.lesson-paired-grid{grid-template-columns:1fr}.lesson-paired-actions{grid-template-columns:1fr 1fr}.workshop-structure{grid-template-columns:1fr;gap:7px}.workshop-structure i{display:none}.workshop-structure>div{border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:7px}.workshop-structure>div:last-child{border:0;padding:0}.recording-grid{grid-template-columns:1fr 1fr}.workshop-pdf-row{align-items:flex-end}.workshop-pdf-row .resource-button{white-space:nowrap}}
@media(max-width:700px){.workshop-period-tabs{top:70px;margin-inline:-14px;padding-inline:14px}.google-sites-mode .workshop-period-tabs{top:160px}}
@media(max-width:700px){.pdf-viewer-main{display:block;position:relative}.pdf-thumbnails{position:absolute;z-index:5;inset:0 auto 0 0;width:145px;transform:translateX(-102%);visibility:hidden;box-shadow:6px 0 20px rgba(20,44,63,.2)}.pdf-viewer.thumbs-open .pdf-thumbnails{transform:none;visibility:visible}.thumbnail-toggle span{display:none}.viewer-tool{padding:7px}.viewer-zoom span{min-width:40px}.viewer-zoom button{width:29px}.viewer-title{display:none}.page-count{display:none}.viewer-download{margin-left:auto}.pdf-page{max-width:none}.pdf-pages{height:100%}}
@media(min-width:701px) and (max-width:1050px){.viewer-title strong{max-width:24vw}.thumbnail-toggle span{display:none}.viewer-download{font-size:.78rem}.pdf-viewer-bar{gap:8px}}

/* Zoom */
.next-zoom-home{margin-top:22px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border-radius:18px;padding:20px 22px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:15px;box-shadow:var(--shadow)}.next-zoom-icon,.zoom-live-icon{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.13);color:#72d0ff;display:grid;place-items:center;font-size:1.35rem}.next-zoom-copy span,.zoom-next small{font-size:.63rem;letter-spacing:.12em;font-weight:900;color:#79d3ff}.next-zoom-copy h2{font-size:1.15rem;margin:1px 0}.next-zoom-copy p{margin:0;color:#d5e8f3;font-size:.84rem}.zoom-details{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:11px;padding:10px 14px;font-weight:800;cursor:pointer}.zoom-next{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border:0;margin-bottom:14px}.zoom-next-main{display:flex;align-items:center;gap:15px}.zoom-next h2{margin:2px 0;font-size:1.35rem}.zoom-next p{margin:0;color:#d5e8f3}.zoom-pending-pill{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:800;white-space:nowrap}.zoom-help{display:flex;align-items:center;gap:11px;background:#e8f5fc;border:1px solid #c9e7f7;border-radius:14px;padding:12px 15px;color:#31576d;margin-bottom:18px}.zoom-help>span{width:30px;height:30px;flex:0 0 auto;border-radius:9px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900}.zoom-help p{margin:0;font-size:.84rem}.zoom-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.zoom-room-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 7px 20px rgba(33,70,98,.05)}.zoom-room-card header{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;margin-bottom:16px}.zoom-time{width:58px;height:50px;border-radius:13px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-weight:900}.zoom-room-card header small,.zoom-room-card header h3{display:block}.zoom-room-card header small{font-size:.61rem;letter-spacing:.1em;color:var(--muted);font-weight:850}.zoom-room-card h3{margin:1px 0;font-size:1.05rem}.zoom-join{width:100%;border:0;border-radius:11px;background:var(--blue);color:#fff;min-height:44px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:850;cursor:pointer}.zoom-join:disabled{background:#dbe5ec;color:#758695;cursor:not-allowed}.zoom-manual{margin-top:15px;padding-top:13px;border-top:1px dashed #d5e2eb}.zoom-manual>span{display:block;color:var(--muted);font-size:.61rem;letter-spacing:.1em;font-weight:850;margin-bottom:6px}.zoom-credential{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:8px;padding:8px 0;border-top:1px solid #edf1f4}.zoom-credential>span{color:var(--muted);font-size:.78rem}.zoom-credential strong{font-size:.84rem;overflow-wrap:anywhere}.zoom-credential button{border:0;background:transparent;color:var(--blue);font-size:.74rem;font-weight:800;cursor:pointer}.zoom-credential button:disabled{color:#a6b2bb;cursor:not-allowed}
@media(max-width:700px){.next-zoom-home{grid-template-columns:42px 1fr;padding:17px}.next-zoom-icon{width:42px;height:42px}.next-zoom-home .zoom-details,.next-zoom-home .zoom-join{grid-column:1/3}.zoom-next{display:block}.zoom-next-main{align-items:flex-start}.zoom-next>.zoom-join,.zoom-next>.zoom-pending-pill{margin-top:15px}.zoom-next>.zoom-pending-pill{display:inline-block}.zoom-room-grid{grid-template-columns:1fr}.zoom-room-card{padding:17px}.zoom-room-card header{grid-template-columns:54px 1fr}.zoom-room-card header .status-pill{grid-column:2}.zoom-credential{grid-template-columns:100px 1fr auto}}

/* Payments prototype */
.payment-tabs{display:inline-flex;background:#e7eef4;border-radius:12px;padding:4px;margin-bottom:10px}.payment-tabs button{border:0;background:transparent;color:#5d7080;border-radius:9px;padding:9px 15px;font-weight:800;cursor:pointer}.payment-tabs button.active{background:#fff;color:var(--blue);box-shadow:0 3px 10px rgba(30,64,91,.1)}.demo-notice{background:#fff8dd;border:1px solid #f0df9c;color:#6d5b1b;border-radius:11px;padding:9px 12px;margin-bottom:16px;font-size:.8rem}.demo-notice span{font-weight:900;margin-right:7px}.payment-profile{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:14px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border-radius:18px;padding:19px 22px;margin-bottom:17px;box-shadow:var(--shadow)}.payment-avatar{width:54px;height:54px;border-radius:15px;background:#fff;color:var(--blue);display:grid;place-items:center;font-weight:900}.payment-profile small{font-size:.63rem;letter-spacing:.11em;color:#82d4fb;font-weight:900}.payment-profile h2{margin:1px 0;font-size:1.2rem}.payment-profile p{margin:0;color:#d3e7f2;font-size:.82rem}.payment-profile-state{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);border-radius:99px;padding:6px 10px;font-size:.74rem;font-weight:800}.payment-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.65fr);gap:17px}.payment-main{display:grid;gap:17px}.payment-side{display:grid;align-content:start;gap:17px}.pending-payment-list{display:grid;gap:8px}.pending-payment-list article{display:grid;grid-template-columns:42px 1fr auto auto;align-items:center;gap:11px;border:1px solid var(--line);border-radius:13px;padding:11px}.payment-calendar{width:40px;height:40px;border-radius:10px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-size:1.15rem}.pending-payment-list strong,.pending-payment-list small{display:block}.pending-payment-list small{color:var(--muted);font-size:.75rem}.pending-payment-list b{font-size:.95rem}.payment-status{display:inline-block;border-radius:99px;padding:4px 8px;font-size:.69rem;font-weight:850;white-space:nowrap}.payment-status.due,.payment-status.pending{background:#fff0db;color:#996018}.payment-status.approved{background:#ddf6eb;color:#19714e}.payment-table-wrap{overflow-x:auto}.payment-table{width:100%;border-collapse:collapse;text-align:left;font-size:.8rem}.payment-table th{color:var(--muted);font-size:.67rem;letter-spacing:.06em;text-transform:uppercase;padding:8px;border-bottom:1px solid var(--line)}.payment-table td{padding:11px 8px;border-bottom:1px solid #edf1f4}.payment-table td small,.payment-table td strong{display:block}.payment-table td small{color:var(--muted)}.current-plan{background:linear-gradient(145deg,#eaf7fd,#fff)}.current-plan h2{margin:5px 0 0;font:600 1.35rem Georgia,serif}.current-plan p{color:var(--muted);margin:2px 0 13px}.current-plan>strong{font-size:1.35rem;color:var(--navy)}.current-plan>strong small{font-size:.72rem;color:var(--muted)}.enrollment-panel article{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:10px 0;border-top:1px solid var(--line)}.enrollment-panel article strong,.enrollment-panel article small{display:block}.enrollment-panel article strong{font-size:.8rem}.enrollment-panel article small{color:var(--muted);font-size:.71rem}.enrollment-panel article>span{background:#e5f4fb;color:#176b97;border-radius:99px;padding:4px 7px;font-size:.66rem;font-weight:850;white-space:nowrap}.enrollment-panel article>span.no-cost{background:#eeeafa;color:#6550a1}.payment-upload-panel{position:fixed;z-index:90;inset:0;background:rgba(10,32,50,.55);display:grid;place-items:center;padding:18px}.payment-upload-panel[hidden]{display:none}.payment-upload-dialog{width:min(500px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:22px;box-shadow:0 20px 60px rgba(9,31,48,.25)}.payment-upload-dialog header{display:flex;justify-content:space-between;align-items:flex-start}.payment-upload-dialog h2{margin:2px 0 15px}.payment-upload-dialog header button{border:0;background:transparent;color:var(--muted);font-size:1.7rem;cursor:pointer}.payment-upload-dialog form{display:grid;gap:13px}.payment-upload-dialog label{font-size:.78rem;font-weight:800}.payment-upload-dialog input,.payment-upload-dialog select{display:block;width:100%;border:1px solid var(--line);border-radius:10px;padding:11px;margin-top:5px;background:#fff}.file-drop{position:relative;margin-top:5px;border:1px dashed #93cbe9;border-radius:13px;background:#f5fbfe;min-height:100px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--blue);cursor:pointer}.file-drop b{font-size:1.3rem}.file-drop strong,.file-drop small{display:block}.file-drop small{color:var(--muted);font-weight:500}.file-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.payment-upload-dialog form>p{margin:0;color:var(--muted);font-size:.74rem;text-align:center}.admin-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:17px}.admin-summary article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px}.admin-summary small,.admin-summary strong,.admin-summary span{display:block}.admin-summary small{color:var(--muted);font-size:.63rem;letter-spacing:.08em;font-weight:850}.admin-summary strong{font-size:1.75rem;color:var(--navy);margin:3px 0}.admin-summary span{color:var(--muted);font-size:.76rem}.admin-search{border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:var(--muted)}.admin-search input{border:0;outline:0;background:transparent;width:150px}.admin-actions{display:flex;gap:5px}.admin-actions button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px;font-size:.7rem;font-weight:750;cursor:pointer}.admin-actions button.approve{border-color:#8dcdb4;color:#19714e;background:#f1fbf7}
@media(max-width:900px){.payment-layout{grid-template-columns:1fr}.payment-side{grid-template-columns:1fr 1fr}.pending-payment-list article{grid-template-columns:42px 1fr auto}.pending-payment-list .payment-status{grid-column:2/4;justify-self:start}.admin-summary{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.payment-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.payment-profile{grid-template-columns:48px 1fr;padding:16px}.payment-avatar{width:46px;height:46px}.payment-profile-state{grid-column:2;justify-self:start}.payment-side{grid-template-columns:1fr}.pending-payments .panel-heading,.payment-history .panel-heading{display:block}.pending-payments .primary-button{width:100%;margin-top:12px}.pending-payment-list article{grid-template-columns:38px 1fr auto;padding:10px 8px}.payment-calendar{width:36px;height:36px}.pending-payment-list b{font-size:.84rem}.admin-summary{grid-template-columns:1fr}.admin-payments .panel-heading{display:block}.admin-search{display:flex;margin-top:10px}.admin-search input{width:100%}.payment-upload-dialog{padding:18px}}

.assigned-plans{margin-bottom:17px}.assigned-plans .panel-heading p,.plan-catalog .panel-heading p{margin:3px 0 0;color:var(--muted)}.assigned-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assigned-plan{border:1px solid var(--line);border-radius:15px;padding:15px;background:#fbfdff}.assigned-plan header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.assigned-plan header small{font-size:.75rem;letter-spacing:.08em;color:var(--blue);font-weight:850}.assigned-plan h3{margin:2px 0;font-size:1rem}.assigned-plan header>strong{text-align:right;color:var(--navy)}.assigned-plan header>strong span{display:block;color:var(--muted);font-size:.75rem;font-weight:650}.plan-progress{height:8px;background:#e4ebf1;border-radius:99px;overflow:hidden;margin:12px 0 5px}.plan-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),#43b5e9);border-radius:99px}.plan-balance{display:flex;justify-content:space-between;color:var(--muted);font-size:.75rem;margin-bottom:11px}.plan-balance b{color:var(--ink)}.installment-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.installment-row>span{border:1px solid var(--line);border-radius:9px;padding:7px;background:#fff;min-width:0}.installment-row small,.installment-row strong,.installment-row i{display:block;font-style:normal}.installment-row small{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.installment-row strong{font-size:.75rem}.installment-row i{font-size:.75rem;color:#80909c}.installment-row>span.paid{border-color:#acd9c7;background:#f2fbf7}.installment-row>span.paid i{color:#19714e}.installment-row>span.next{border-color:#eccd8e;background:#fffaf0}.installment-row>span.next i{color:#996018}.plan-catalog{margin-top:17px}.plan-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.plan-catalog-grid article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:11px}.plan-catalog-grid strong,.plan-catalog-grid small{display:block}.plan-catalog-grid strong{font-size:.84rem}.plan-catalog-grid small{font-size:.75rem;color:var(--muted)}.plan-catalog-grid b{color:var(--navy);font-size:.84rem}.plan-catalog-grid button{border:0;background:transparent;color:var(--blue);font-weight:800;font-size:.75rem;cursor:pointer}
@media(max-width:900px){.assigned-plan-grid,.plan-catalog-grid{grid-template-columns:1fr}}
@media(max-width:700px){.assigned-plans{padding:17px}.assigned-plan{padding:12px}.assigned-plan header{display:block}.assigned-plan header>strong{text-align:left;display:block;margin-top:5px}.assigned-plan header>strong span{display:inline}.installment-row{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-catalog .panel-heading{display:block}.plan-catalog .primary-button{width:100%;margin-top:12px}.plan-catalog-grid article{grid-template-columns:1fr auto}.plan-catalog-grid button{grid-column:1/3;justify-self:start;padding:0}}

/* Unified schedule and printable export */
.schedule-actions{display:flex;align-items:center;gap:9px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border-radius:17px;padding:16px 18px;margin-bottom:17px}.schedule-actions>div{flex:1}.schedule-actions strong,.schedule-actions span{display:block}.schedule-actions span{color:#cfe5f1;font-size:.82rem;margin-top:2px}.schedule-actions>button{border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.08);color:#fff;border-radius:11px;padding:11px 14px;font-weight:800;cursor:pointer}.schedule-actions>.primary-button{background:var(--blue);border-color:var(--blue)}.schedule-columns{display:grid;grid-template-columns:1fr 1fr;gap:17px}.schedule-section-title{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:5px}.schedule-section-title>span,.schedule-milestones>div>span{width:42px;height:42px;border-radius:12px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-weight:900}.schedule-section-title small,.schedule-section-title h2{display:block}.schedule-section-title small,.schedule-milestones>div>small{font-size:.75rem;letter-spacing:.1em;color:var(--blue);font-weight:850}.schedule-section-title h2{margin:0;font:600 1.45rem Georgia,serif}.schedule-list{display:grid}.schedule-row{display:grid;grid-template-columns:120px 1fr;gap:13px;padding:15px 0;border-bottom:1px solid #e8eef2}.schedule-row:last-child{border-bottom:0}.schedule-row time{color:var(--blue);font-weight:800;font-size:.83rem}.schedule-row small{font-size:.75rem;letter-spacing:.08em;color:var(--muted);font-weight:850}.schedule-row h3{font-size:.95rem;margin:2px 0}.schedule-row p{color:var(--muted);font-size:.8rem;margin:0}.schedule-turns{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.schedule-turns span{border-radius:99px;background:#e8f5fc;color:#176b97;padding:4px 8px;font-size:.75rem;font-weight:850}.schedule-milestones{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:17px;box-shadow:0 7px 20px rgba(33,70,98,.05)}.schedule-milestones>div{display:grid;grid-template-columns:48px 1fr;align-items:center}.schedule-milestones>div>span{grid-row:1/3}.schedule-milestones h2{font:600 1.2rem Georgia,serif;margin:0}.schedule-milestones article{border-left:3px solid #8f73ba;border-radius:10px;background:#f7f4fc;padding:12px 14px}.schedule-milestones article small,.schedule-milestones article strong,.schedule-milestones article time{display:block}.schedule-milestones article small{color:#7256a6;font-size:.75rem;font-weight:850;letter-spacing:.08em}.schedule-milestones article strong{font-size:.9rem;margin:2px 0}.schedule-milestones article time{font-size:.8rem;color:var(--muted)}.schedule-print-sheet{display:none}
@media(max-width:900px){.schedule-columns{grid-template-columns:1fr}.schedule-milestones{grid-template-columns:1fr 1fr}.schedule-milestones>div{grid-column:1/3}}
@media(max-width:700px){.schedule-actions{display:grid;grid-template-columns:1fr 1fr}.schedule-actions>div{grid-column:1/3}.schedule-actions>button{padding:10px 8px}.schedule-section{padding:17px}.schedule-row{grid-template-columns:95px 1fr}.schedule-milestones{grid-template-columns:1fr;padding:16px}.schedule-milestones>div{grid-column:auto}.schedule-milestones article{margin-left:0}}
@media print{body.schedule-printing{background:#fff}body.schedule-printing *{visibility:hidden!important}body.schedule-printing #schedulePrintSheet,body.schedule-printing #schedulePrintSheet *{visibility:visible!important}body.schedule-printing #schedulePrintSheet{display:block;position:absolute;inset:0;width:100%;padding:15mm;color:#152f47;background:#fff}body.schedule-printing #schedulePrintSheet>header{display:flex;align-items:center;gap:12mm;background:#102d4a;color:#fff;padding:10mm;border-radius:5mm}body.schedule-printing #schedulePrintSheet>header>span{width:16mm;height:16mm;border-radius:4mm;background:#fff;color:#087fbd;display:grid;place-items:center;font-weight:900}body.schedule-printing #schedulePrintSheet header small{color:#86d5fb;font-weight:800}body.schedule-printing #schedulePrintSheet h1{font:600 24pt Georgia,serif;margin:1mm 0}body.schedule-printing #schedulePrintSheet header p{margin:0;color:#d7e8f1}body.schedule-printing #schedulePrintSheet>section{margin-top:7mm;break-inside:avoid}body.schedule-printing #schedulePrintSheet>section>h2{background:#087fbd;color:#fff;font-size:12pt;padding:3mm 4mm;margin:0}body.schedule-printing #schedulePrintSheet .schedule-row{grid-template-columns:38mm 1fr;padding:3mm 2mm}body.schedule-printing #schedulePrintSheet .schedule-row h3{margin:0;font-size:10pt}body.schedule-printing #schedulePrintSheet .schedule-row p,body.schedule-printing #schedulePrintSheet .schedule-row time{font-size:9pt}body.schedule-printing #schedulePrintSheet .schedule-turns span{font-size:8pt}body.schedule-printing #schedulePrintSheet footer{margin-top:8mm;border-top:1px solid #ccd8e1;padding-top:3mm;color:#607689;font-size:8pt}}@page{size:A4;margin:0}

/* Campus-wide experience */
.app-loading{position:fixed;z-index:200;inset:0;background:#f4f8fb;display:grid;place-items:center;align-content:center;gap:12px;color:var(--navy)}.app-loading span{width:42px;height:42px;border-radius:50%;border:4px solid #cde8f7;border-top-color:var(--blue);animation:pdf-spin .8s linear infinite}.course-switcher{position:relative}.topbar .course-identity{border:0;background:transparent;color:var(--ink);padding:6px 9px;border-radius:10px;display:flex;flex-direction:row;align-items:center;gap:12px;text-align:left;cursor:pointer}.topbar .course-identity>span{display:flex;flex-direction:column}.topbar .course-identity>i{font-style:normal;color:var(--muted)}.topbar .course-identity:hover{background:#f2f7fa}.course-menu{position:absolute;z-index:25;top:58px;left:0;width:285px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:var(--shadow);display:grid;gap:4px}.course-menu[hidden]{display:none}.course-menu small{color:var(--blue);font-size:.75rem;letter-spacing:.08em;font-weight:850}.course-menu a{margin-top:9px;border-top:1px solid var(--line);padding-top:10px;color:var(--blue);text-decoration:none;font-weight:800;font-size:.84rem}.bulletin-type{display:inline-block!important;border-radius:99px;padding:2px 7px;font-size:.75rem!important;letter-spacing:.08em;font-weight:900;margin-bottom:3px}.bulletin-type.important{background:#fff0db;color:#995d13}.bulletin-type.new{background:#e3f4fb;color:#176b97}.next-zoom-home.overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:16px 18px}.home-overview-title{grid-column:1/-1}.home-overview-title span,.home-overview-title strong{display:block}.home-overview-title span{color:#80d3fb;font-size:.75rem;letter-spacing:.11em;font-weight:900}.home-overview-title strong{font-size:1.05rem}.next-zoom-home.overview>button{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;border-radius:13px;padding:12px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;text-align:left;cursor:pointer}.next-zoom-home.overview>button:hover{background:rgba(255,255,255,.14)}.next-zoom-home.overview .next-zoom-icon{width:38px;height:38px;border-radius:10px;font-size:1rem}.next-zoom-icon.simulation{color:#8ee0bb}.next-zoom-icon.exam{color:#d2b8ff}.next-zoom-home.overview button small,.next-zoom-home.overview button strong,.next-zoom-home.overview button p{display:block}.next-zoom-home.overview button small{color:#80d3fb;font-size:.75rem;font-weight:850;letter-spacing:.06em}.next-zoom-home.overview button strong{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.next-zoom-home.overview button p{margin:1px 0 0;color:#d1e5ef;font-size:.75rem}.next-zoom-home.overview button>i{font-style:normal;color:#80d3fb;font-size:1.25rem}.report-link{border:0;background:transparent;color:#708495;font-size:.75rem;font-weight:750;padding:10px 0 0;cursor:pointer}.report-link:hover{color:var(--blue)}.profile-hero-card{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border-radius:19px;padding:22px 24px;box-shadow:var(--shadow)}.profile-large-avatar{width:66px;height:66px;border-radius:18px;background:#fff;color:var(--blue);display:grid;place-items:center;font-size:1.2rem;font-weight:900}.profile-hero-card small{color:#84d5fb;font-size:.75rem;letter-spacing:.09em;font-weight:850}.profile-hero-card h2{margin:1px 0;font-size:1.35rem}.profile-hero-card p{margin:0;color:#d2e7f2}.profile-hero-card>span{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.1);border-radius:99px;padding:7px 10px;font-size:.75rem;font-weight:800}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.profile-stats article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}.profile-stats small,.profile-stats strong,.profile-stats span{display:block}.profile-stats small{color:var(--muted);font-size:.75rem;letter-spacing:.07em;font-weight:850}.profile-stats strong{font-size:1.45rem;color:var(--navy);margin:3px 0}.profile-stats span{font-size:.78rem;color:var(--muted)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-details .panel-heading button,.profile-access>button{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:9px;padding:7px 9px;font-weight:800;font-size:.75rem;cursor:pointer}.profile-details dl{margin:0}.profile-details dl>div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-top:1px solid var(--line)}.profile-details dt{color:var(--muted)}.profile-details dd{font-weight:750;text-align:right}.profile-details dd span{display:inline-block;background:#ddf6eb;color:#19714e;border-radius:99px;padding:2px 6px;font-size:.75rem}.profile-courses article{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.profile-courses strong,.profile-courses small{display:block}.profile-courses small{color:var(--muted);font-size:.75rem}.profile-courses article>span{background:#e7f4fb;color:#176b97;border-radius:99px;padding:4px 7px;font-size:.75rem;font-weight:850}.profile-courses article>span.no-cost{background:#eeeafa;color:#6550a1}.profile-access p{color:var(--muted);margin:0 0 13px}.profile-payment-link{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:12px}.profile-payment-link>span{width:42px;height:42px;border-radius:12px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-size:1.25rem;font-weight:900}.profile-payment-link small,.profile-payment-link strong{display:block}.profile-payment-link small{color:var(--blue);font-size:.75rem;font-weight:850;letter-spacing:.08em}.profile-payment-link p{margin:2px 0;color:var(--muted);font-size:.8rem}.profile-payment-link button{border:0;background:transparent;color:var(--blue);font-weight:850;cursor:pointer}.campus-footer{margin-top:34px;padding:20px 3px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px;color:var(--muted)}.campus-footer>div{display:flex;align-items:center;gap:9px}.campus-footer p{margin:0}.campus-footer strong,.campus-footer small{display:block}.campus-footer nav{display:flex;gap:14px;margin-left:auto}.campus-footer a,.campus-footer button{border:0;background:transparent;color:var(--muted);text-decoration:none;padding:0;cursor:pointer}.campus-footer>a:hover,.campus-footer button:hover{color:var(--blue)}.campus-footer>span{font-size:.75rem}.whatsapp-help{position:fixed;z-index:35;right:22px;bottom:22px;border:0;background:#20a866;color:#fff;border-radius:999px;padding:11px 16px;display:flex;align-items:center;gap:8px;box-shadow:0 10px 26px rgba(16,99,59,.25);font-weight:850;cursor:pointer}.whatsapp-help>span{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center}
@media(max-width:900px){.next-zoom-home.overview{grid-template-columns:1fr}.home-overview-title{grid-column:auto}.profile-grid{grid-template-columns:1fr}}
@media(max-width:700px){.course-menu{left:-8px;width:min(285px,85vw)}.topbar .course-identity{padding:3px}.topbar .course-identity>i{display:none}.next-zoom-home.overview{grid-template-columns:1fr;padding:14px}.next-zoom-home.overview>button{grid-column:auto}.profile-hero-card{grid-template-columns:54px 1fr;padding:17px}.profile-large-avatar{width:52px;height:52px}.profile-hero-card>span{grid-column:2;justify-self:start}.profile-stats{grid-template-columns:1fr 1fr}.profile-stats article:last-child{grid-column:1/3}.profile-details dl>div{display:block}.profile-details dd{text-align:left;margin:3px 0 0}.profile-payment-link{grid-template-columns:42px 1fr}.profile-payment-link button{grid-column:2;justify-self:start}.campus-footer{display:grid;padding-bottom:20px}.campus-footer nav{margin:0;flex-wrap:wrap}.campus-footer>span{display:none}.whatsapp-help{right:12px;bottom:78px;padding:10px}.whatsapp-help strong{display:none}}
.bulletin-type.schedule{background:#eeeafa;color:#6550a1}.bulletin-date{display:block;color:var(--muted);font-size:.72rem;margin-top:6px}.bulletin-empty{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.bulletin-empty>span{width:38px;height:38px;border-radius:11px;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-weight:900}.bulletin-empty strong,.bulletin-empty p{display:block;margin:0}.bulletin-empty strong{color:var(--ink)}

/* Agenda completa de Zoom */
.zoom-agenda{margin-top:18px}.zoom-agenda-list article{display:grid;grid-template-columns:210px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}.zoom-agenda-list time{color:var(--blue);font-weight:850;text-transform:capitalize}.zoom-agenda-list strong,.zoom-agenda-list small{display:block}.zoom-agenda-list small{color:var(--muted);margin-top:3px}.zoom-agenda-turns{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.zoom-agenda-turns span{background:var(--pale);color:#176b97;border-radius:999px;padding:6px 9px;font-size:.76rem;font-weight:800}
@media(max-width:700px){.zoom-agenda-list article{grid-template-columns:1fr;gap:6px}.zoom-agenda-turns{justify-content:flex-start}}

/* Ayuda y preguntas frecuentes */
.faq-search{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 16px;margin-bottom:14px}.faq-search>span{font-size:1.4rem;color:var(--muted)}.faq-search input{width:100%;border:0;outline:0;padding:14px 0;background:transparent}.faq-list details[hidden]{display:none}.faq-list summary>span{display:grid;gap:2px}.faq-list summary small{color:var(--blue);font-size:.62rem;letter-spacing:.1em}.faq-list summary>b{color:var(--blue);font-size:1.15rem}.faq-list details[open] summary>b{transform:rotate(45deg)}.faq-empty{background:#fff;border:1px dashed var(--line);border-radius:14px;padding:20px;text-align:center;color:var(--muted)}.faq-contact{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:15px;margin-top:18px;background:linear-gradient(105deg,#102d4a,#145078);color:#fff;border:0}.faq-contact>span{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.12);color:#79d3ff;display:grid;place-items:center;font-size:1.35rem;font-weight:900}.faq-contact small{color:#79d3ff;font-weight:850;letter-spacing:.09em}.faq-contact h2{margin:1px 0}.faq-contact p{margin:0;color:#d5e8f3}.faq-contact button{white-space:nowrap}@media(max-width:700px){.faq-contact{grid-template-columns:44px 1fr}.faq-contact>button{grid-column:1/3;width:100%}}

.workshop-recording-notice{display:flex;align-items:center;gap:12px;background:#e7f6fc;border:1px solid #bfe5f6;border-radius:14px;padding:13px 16px;margin:-8px 0 18px;color:#27536c}.workshop-recording-notice>span{color:#e34b56}.workshop-recording-notice p{margin:0}.workshop-recording-notice strong{color:var(--navy)}

@media(max-width:700px){
  .video-row .primary-small{display:flex;width:100%;margin-top:12px;align-items:center;justify-content:center;text-align:center}
}
