:root{--paper:#f4f2ed;--surface:#fffefa;--ink:#282e2b;--muted:#626961;--line:#d8d9d0;--accent:#235f57;--accent-soft:#e5eee7;--danger:#90372d;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 var(--sans)}[hidden]{display:none!important}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--accent);text-underline-offset:4px}button{color:inherit}button,input,select{min-height:44px}button{border:0;background:transparent}input:not([type=checkbox]),textarea,select{background:var(--surface);border:1px solid #a8aea4;border-radius:5px;color:var(--ink);padding:11px 12px;max-width:100%}input[type=checkbox]{accent-color:var(--accent);width:19px;height:19px;margin:0;flex-shrink:0}textarea{width:100%;resize:vertical;min-height:165px}input::placeholder,textarea::placeholder{color:#727970}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;text-wrap:pretty}h1{font-size:34px;line-height:1.15}h2{font-size:28px;line-height:1.22}h3{font-size:22px;line-height:1.3}.eyebrow{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.8px;font-weight:700;color:var(--accent)}.muted,.hint{color:var(--muted)}.hint{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:15px;z-index:100;background:var(--ink);color:#fff;padding:14px}.skip-link:focus{top:8px}.topbar{height:82px;position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;gap:16px;padding:0 34px;background:var(--surface);border-bottom:1px solid var(--line)}.identity{display:flex;align-items:center;gap:15px;color:var(--ink);text-decoration:none}.monogram{font:italic 29px var(--serif);letter-spacing:-2px;display:grid;place-items:center;width:46px;height:46px;border:1px solid #bfc7bd;border-radius:50%;color:var(--accent)}.identity strong{display:block;font:22px var(--serif);letter-spacing:-.4px}.identity small{display:block;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;margin-top:3px;color:var(--muted)}.session-actions{margin-left:auto;display:flex;align-items:center;gap:20px}.account-name{font-size:13px;color:var(--muted)}.text-button{font-weight:600;color:var(--accent);padding:8px 12px;border-radius:4px}.text-button:hover{background:var(--accent-soft)}.primary-button,.outline-button{border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:10px 17px;font-size:13px;font-weight:600}.primary-button{background:var(--accent);color:#fff;border:1px solid var(--accent)}.primary-button:hover{background:#194c45}.outline-button{background:transparent;border:1px solid #aab5a9;color:var(--accent)}.outline-button:hover{background:var(--accent-soft)}.icon-button{font-size:24px;min-width:44px;padding:2px 10px}.mobile-only{display:none}.boot-status{margin:180px auto 70px;max-width:600px;padding:30px}.boot-status h1{margin:14px 0}.boot-status p{color:var(--muted)}.auth{max-width:1070px;margin:165px auto 70px;padding:40px;display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.auth-intro h1{font-size:54px;letter-spacing:-1.6px;margin:25px 0}.auth-intro p{color:var(--muted);max-width:355px}.auth-rule{width:60px;height:1px;background:#a6b6a7;margin:35px 0 24px}.auth-intro .fine-print{font:18px/1.7 var(--serif)}.auth-panel{background:var(--surface);border:1px solid var(--line);padding:32px;border-radius:8px}.auth-panel h2{margin-bottom:25px}.auth-panel form{display:flex;flex-direction:column;gap:9px}.auth-panel label{font-size:13px;font-weight:600}.auth-panel label:not(:first-child){margin-top:12px}.password-field{display:flex;align-items:center;border:1px solid #a8aea4;border-radius:5px}.password-field input{width:100%;min-width:0;border:0}.password-field button{font-size:12px}.auth-panel .primary-button{margin-top:16px}.privacy-note{font-size:11px;color:var(--muted);padding-top:22px;border-top:1px solid var(--line);margin-top:20px}.message:empty{display:none}.message,.error-message{margin-top:16px;color:var(--danger);font-size:13px}.workspace{padding-top:82px;min-height:100vh;display:grid;grid-template-columns:284px minmax(0,1fr)}.sidebar{position:sticky;top:82px;height:calc(100dvh - 82px);display:flex;flex-direction:column;border-right:1px solid var(--line);background:#eeeee7;overflow-y:auto;overscroll-behavior:contain}.sidebar-heading{padding:28px 24px 13px;display:flex;justify-content:space-between;align-items:center}.section-nav{padding:0 12px 17px;border-bottom:1px solid var(--line)}.section-nav button{width:100%;display:flex;justify-content:space-between;text-align:left;padding:10px 12px;border-radius:4px;font-size:14px}.section-nav button span{color:var(--muted)}.section-nav button[aria-current]{background:var(--ink);color:var(--surface)}.section-nav button[aria-current] span{color:#bccdc4}.section-nav button:hover:not([aria-current]){background:#e0e4da}.sidebar-tools{padding:20px 20px 0}.search-label{display:block;font-size:11px;letter-spacing:.2px;font-weight:600;margin-bottom:7px}.sidebar-tools input[type=search]{width:100%;font-size:12px}.check-label{display:flex;align-items:center;gap:10px;min-height:44px;font-size:12px;cursor:pointer}.sidebar-tools .check-label{margin-top:7px}.list-summary{font-size:11px;color:var(--muted);padding:12px 22px 10px}.module-list{padding:0 10px 24px}.module{border-top:1px solid var(--line)}.module summary{font-size:13px;font-weight:700;cursor:pointer;min-height:52px;padding:15px 11px;list-style:none;display:flex;align-items:center;gap:8px}.module summary::-webkit-details-marker{display:none}.module summary::before{content:'›';font-size:20px;line-height:16px;display:inline-block;transform:rotate(0deg)}.module[open] summary::before{transform:rotate(90deg)}.module summary .module-name{flex:1}.module-count{font-size:10px;font-weight:400;color:var(--muted);white-space:nowrap}.lesson-item{width:100%;display:flex;gap:10px;padding:12px 11px;min-height:62px;text-align:left;border-radius:4px;margin-bottom:3px;align-items:start;border:1px solid transparent}.lesson-item:hover{background:#e5e7de}.lesson-item.selected{background:var(--surface);border-color:#c4cfc1}.lesson-number{font-size:11px;min-width:23px;color:var(--muted);padding-top:2px;font-variant-numeric:tabular-nums}.lesson-copy{display:block;min-width:0;flex:1}.lesson-name{display:block;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.lesson-caption{display:block;font-size:10px;color:var(--muted);margin-top:4px}.lesson-item.selected .lesson-name{font-weight:700;color:var(--accent)}.lesson-mark{font-size:15px;color:var(--accent);min-width:15px}.sidebar-foot{padding:20px 24px;margin-top:auto;border-top:1px solid var(--line);color:var(--muted);font:italic 14px var(--serif)}.main{width:100%;max-width:1380px;margin:auto;padding:35px 42px 0;min-height:calc(100dvh - 82px)}.workspace-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;padding-bottom:28px;border-bottom:1px solid var(--line)}.workspace-heading h1{margin-top:7px;font-size:32px;letter-spacing:-.7px}.workspace-heading .outline-button{font-size:11px;max-width:240px;text-align:left}.lesson-heading{margin:25px 0 20px}.lesson-context{font-size:11px;color:var(--accent);margin-bottom:9px;letter-spacing:.35px}.lesson-heading h2{font-size:28px}.lesson-heading .muted{font-size:12px;margin-top:9px}.video-shell{background:#202622;aspect-ratio:16/9;border-radius:6px;overflow:hidden;position:relative;width:100%;display:flex;align-items:center;justify-content:center}video{display:block;width:100%;height:100%;max-height:72vh;background:#161c18;object-fit:contain}.media-placeholder{padding:35px;text-align:center;color:#e7e9e0;max-width:560px}.media-placeholder .eyebrow{color:#adc7b8}.media-placeholder h3{margin:15px 0 10px;font-size:28px}.media-placeholder p{font-size:13px;color:#c1c8be}.player-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.playback-tools{display:flex;align-items:center;gap:7px}.playback-tools .outline-button{padding:6px 12px;font-size:12px}.playback-tools label{font-size:11px;color:var(--muted);margin-left:9px}.playback-tools select{font-size:12px;padding:7px 26px 7px 10px;background:var(--surface)}.player-toolbar .text-button{font-size:12px;white-space:nowrap}.lesson-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap;padding:10px 0 20px}.lesson-actions .text-button{font-size:12px}.lesson-actions .muted{font-size:11px;margin-left:auto}.study-details{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr);gap:35px;padding-top:26px;border-top:1px solid var(--line)}.study-details h3{margin-top:5px;margin-bottom:18px}.resource-link{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none;min-height:60px}.resource-link:hover .resource-title{text-decoration:underline;text-underline-offset:3px}.resource-title{font-size:13px;display:block;overflow-wrap:anywhere}.resource-kind{font-size:10px;color:var(--muted);display:block;margin-top:4px;text-transform:uppercase;letter-spacing:.7px}.resource-arrow{font-size:20px}.notes-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.notes-heading .hint{font-size:11px;text-align:right}.notes-footer{display:flex;gap:14px;justify-content:space-between;align-items:center;margin-top:10px}.notes-footer .hint{font-size:10px}.notes-footer button{white-space:nowrap;font-size:11px;padding:8px 13px}.main-footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;letter-spacing:.3px;padding:24px 0;margin-top:50px;border-top:1px solid var(--line)}.empty-state{padding:70px 20px;max-width:680px}.empty-state h2{margin:12px 0;font-size:33px}.empty-state p{color:var(--muted);max-width:450px;margin-bottom:23px}.library-intro{margin:30px 0}.library-intro h2{font-size:30px;margin-bottom:15px}.library-intro p{max-width:670px;font-size:13px;color:var(--muted)}.library-list .resource-link{padding:22px 5px}.library-list .resource-title{font-size:16px;font-family:var(--serif)}.app-notice{font-size:12px;padding:12px 16px;margin-top:18px;background:#eee8d6;border:1px solid #c7bfa3;border-radius:5px}.connectivity{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);padding:14px 20px;max-width:600px;width:calc(100% - 32px);background:var(--ink);color:var(--surface);z-index:60;border-radius:5px;font-size:12px;box-shadow:0 4px 20px #0002}.module-empty{font-size:12px;padding:20px 12px;color:var(--muted)}body.drawer-open{overflow:hidden}@media(min-width:1600px){.main{padding-left:60px;padding-right:60px}}@media(max-width:1100px){.main{padding:28px 25px 0}.workspace{grid-template-columns:260px minmax(0,1fr)}.study-details{grid-template-columns:1fr;gap:30px}.workspace-heading{align-items:flex-start;flex-direction:column;gap:15px}.workspace-heading .outline-button{max-width:none}.player-toolbar{flex-wrap:wrap}.auth{gap:50px}}@media(max-width:760px){.topbar{height:72px;padding:0 14px;gap:8px}.monogram{display:none}.identity strong{font-size:20px}.identity small{font-size:9px;letter-spacing:1px}.account-name{display:none}.session-actions{gap:0}.session-actions .text-button{font-size:12px;padding:8px}.mobile-only{display:inline-flex;align-items:center;justify-content:center}.workspace{display:block;padding-top:72px}.sidebar{position:fixed;left:0;top:72px;height:calc(100dvh - 72px);width:min(340px,88vw);z-index:45;transform:translateX(-105%);transition:transform .18s ease;visibility:hidden;box-shadow:8px 0 30px #17281e18}.drawer-open .sidebar{transform:translateX(0);visibility:visible}.drawer-backdrop{position:fixed;inset:72px 0 0;background:#17231dc0;z-index:40;width:100%;height:calc(100dvh - 72px)}.sidebar-heading{padding:14px 22px 8px}.main{padding:24px 19px 0;min-height:calc(100dvh - 72px)}.workspace-heading{padding-bottom:22px;gap:18px}.workspace-heading h1{font-size:31px}.lesson-heading h2{font-size:25px}.lesson-heading{margin-top:22px}.lesson-context{font-size:10px}.video-shell{border-radius:4px}.media-placeholder{padding:18px}.media-placeholder h3{font-size:22px;margin:8px 0}.media-placeholder p{font-size:11px}.media-placeholder .eyebrow{font-size:8px}.playback-tools{gap:5px;flex-wrap:wrap}.playback-tools label{font-size:10px;margin-left:5px}.playback-tools .outline-button{padding:7px 10px}.player-toolbar{gap:2px}.player-toolbar>.text-button{margin-left:auto}.lesson-actions{gap:3px 10px}.lesson-actions .muted{margin-left:0;flex-basis:100%;padding:0 0 5px}.study-details{padding-top:23px;gap:29px}.notes-footer{flex-wrap:wrap}.notes-footer .primary-button{margin-left:auto}.main-footer{margin-top:35px;font-size:9px}.auth{display:block;margin:105px auto 40px;padding:15px 22px;max-width:480px}.auth-intro h1{font-size:40px;letter-spacing:-1px;margin:16px 0}.auth-intro h1 br{display:none}.auth-intro>p{font-size:13px}.auth-rule,.auth-intro .fine-print{display:none}.auth-panel{margin-top:27px;padding:25px}.auth-panel h2{font-size:25px}.auth-panel .privacy-note{font-size:10px}.boot-status{margin-top:120px}.empty-state{padding:50px 0}.empty-state h2{font-size:29px}.library-intro h2{font-size:27px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.topbar,.sidebar,.player-toolbar,.video-shell,.lesson-actions,.workspace-heading,.main-footer,.notes-footer,.connectivity{display:none!important}.workspace{display:block;padding:0}.main{padding:0}.study-details{display:block}.notes-section{margin-top:25px}textarea{border:0;height:auto}}
/* Radar: reuses the caderno palette and keeps controls reachable on mobile. */
.radar-intro p+p{margin-top:12px}.radar-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:6px}.radar-filters>label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:600}.radar-filters input[type=search],.radar-filters select{width:100%;min-width:0;font-weight:400;font-size:13px}.radar-query{grid-column:1/-1}.radar-filter-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.radar-status{font-size:12px;margin:20px 0 15px}.radar-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.radar-card{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:23px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;overflow-wrap:anywhere}.radar-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;width:100%;margin-bottom:14px}.radar-priority{color:var(--accent);font-size:11px;font-weight:700}.radar-card h3{font-size:24px;line-height:1.25}.radar-axis{font-size:12px;color:var(--muted);margin:10px 0 14px}.radar-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.radar-badge{font-size:10px;line-height:1.5;border:1px solid var(--line);padding:4px 8px;border-radius:3px}.radar-top{background:var(--accent-soft);color:var(--accent);border-color:#c4cfc1;font-weight:700}.radar-reason{font-size:13px;margin-bottom:22px}.radar-watch{margin-top:auto;font-size:12px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;max-width:100%}.radar-destination{margin-top:10px;line-height:1.5}.radar-empty{grid-column:1/-1;padding:25px 0}@media(max-width:1100px){.radar-list{grid-template-columns:1fr}.radar-filters{grid-template-columns:1fr 1fr}.radar-filters>label[for=radar-axis]{grid-column:1/-1}}@media(max-width:760px){.radar-filters{padding:16px;grid-template-columns:1fr;gap:12px}.radar-card{padding:20px}.radar-card h3{font-size:23px}.radar-card-meta{gap:7px}.radar-intro{margin-top:24px}.radar-filter-actions{gap:4px}.radar-filter-actions .text-button{margin-left:auto}}
