/* XQOS Library Pack v2 */
.xqos-library-wrap{--ink:#001c30;--bone:#f4f2ec;--paper:#fcfaf5;--sage:#a7b7aa;--red:#d63b2d;max-width:1280px;margin:0 auto;padding:48px 24px 90px;color:#111921}.xqos-library-wrap h1,.xqos-library-wrap h2,.xqos-library-wrap h3{line-height:1.08}.xqos-library-wrap .eyebrow{font:700 11px ui-monospace,monospace;letter-spacing:.11em;text-transform:uppercase;color:#566a5b}.xqos-guide-content,.xqos-journal-content{max-width:840px}.xqos-guide-content h2,.xqos-journal-content h2{margin-top:42px}.xqos-schedule-hero{background:#001c30;color:#f4f2ec;padding:64px max(24px,calc((100vw - 1280px)/2));}.xqos-schedule-hero h1{font:500 clamp(46px,6vw,78px)/.96 Georgia,serif;margin:12px 0}.xqos-schedule-list{max-width:1280px;margin:0 auto;padding:40px 24px 90px}.xqos-session-card{display:grid;grid-template-columns:170px 1fr auto;gap:24px;padding:22px 0;border-top:1px solid rgba(0,28,48,.18);align-items:start}.xqos-session-card time{font:700 12px ui-monospace,monospace;color:#566a5b}.xqos-session-card h3{margin:0 0 6px;font-size:24px}.xqos-session-meta{font-size:13px;color:#5b6563}.xqos-session-actions a{display:inline-block;border:1px solid #001c30;padding:9px 12px;text-decoration:none;font-size:12px}.xqos-session-actions a.primary{background:#001c30;color:#fff}.xqos-module-session-strip{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:10px 20px;background:#e3eae4;color:#001c30;font:600 11px Arial,sans-serif}.xqos-module-session-strip a{margin-left:auto;color:#001c30}.xqos-guide-back{display:inline-block;margin-bottom:32px;border-bottom:1px solid #a7b7aa;text-decoration:none}.xqos-empty{padding:28px;border:1px solid rgba(0,28,48,.18);background:#fcfaf5}.xqos-training-edit-note{padding:12px 14px;background:#f4f2ec;border-left:4px solid #a7b7aa;margin:12px 0}.xqos-slide-editor{border:1px solid #ccd2ce;margin:10px 0;background:#fff}.xqos-slide-editor summary{cursor:pointer;padding:12px 14px;background:#f4f2ec}.xqos-slide-editor .inside{padding:16px}.xqos-slide-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.xqos-slide-editor textarea{min-height:90px}.xqos-slide-editor textarea.code{font-family:ui-monospace,monospace;min-height:160px}.xqos-schedule-admin-table td,.xqos-schedule-admin-table th{vertical-align:top}.xqos-source-badge{display:inline-block;padding:3px 7px;background:#e3eae4;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}@media(max-width:760px){.xqos-session-card{grid-template-columns:1fr}.xqos-slide-grid{grid-template-columns:1fr}}
/* v2.1 training integration --------------------------------------------------
   The training players are full applications, but they are no longer allowed
   to become navigation islands. The active XQOS theme header sits above the
   player and the player chrome becomes a clear secondary navigation layer. */
.xqos-training-page{--xqos-site-header-h:78px;background:#f4f2ec}
.xqos-training-page .xq-site-header{position:relative;top:auto;z-index:1000}
.xqos-training-site-shell{overflow:visible!important}
.xqos-training-page .xqos-embedded-player{position:relative}
.xqos-training-page .app.xqos-embedded-player{min-height:calc(100dvh - var(--xqos-site-header-h))}
.xqos-training-page .app.xqos-embedded-player .stage-wrap{min-height:calc(100dvh - var(--xqos-site-header-h) - 64px)}
.xqos-training-page .app.xqos-embedded-player .mode-chooser{position:absolute;inset:64px 0 0}
.xqos-training-page .app.xqos-embedded-player>.nav{position:absolute;bottom:16px}
.xqos-training-page .lesson-shell.xqos-embedded-player{height:calc(100dvh - var(--xqos-site-header-h));min-height:660px}
.xqos-training-page .lesson-topbar,.xqos-training-page .topbar{position:relative;top:auto}
.xqos-training-page .xqos-player-back{white-space:nowrap}
.xqos-training-page .lesson-brand{text-decoration:none}
.xqos-training-page .xqos-chooser-back{margin:22px 0 0;font-size:12px;color:#5c6662}
.xqos-training-page .xqos-chooser-back a{color:#24443d;text-decoration:none;border-bottom:1px solid rgba(36,68,61,.35)}
.xqos-training-page .xqos-chooser-back a:hover{border-bottom-color:#24443d}
.xqos-training-missing{padding-top:72px;min-height:60vh}
.xqos-repair-button{display:inline-block;background:#001c30;color:#fff!important;padding:11px 15px;text-decoration:none}

/* Fallback only when the active theme cannot render its header template part. */
.xqos-training-fallback-header{min-height:78px;padding:0 max(24px,calc((100vw - 1460px)/2));display:flex;align-items:center;gap:18px;background:#f2efe7;border-bottom:1px solid rgba(16,22,20,.16);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.xqos-training-fallback-header .xqos-training-home{font:500 29px/1 Georgia,serif;letter-spacing:-.05em;text-decoration:none;white-space:nowrap}
.xqos-training-fallback-header nav{display:flex;align-items:center;justify-content:center;gap:6px;flex:1}
.xqos-training-fallback-header nav a{padding:9px 10px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:650;white-space:nowrap}
.xqos-training-fallback-header nav a:hover{background:#e7e2d7}
.xqos-training-fallback-header .xqos-training-ask{background:#101614;color:#fbfaf6;padding:10px 14px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap}

@media (min-width:782px) and (max-width:1180px){
  .xqos-training-page{--xqos-site-header-h:126px}
  .xqos-training-fallback-header{min-height:126px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
  .xqos-training-fallback-header nav{order:3;flex-basis:100%;justify-content:flex-start}
  .xqos-training-fallback-header .xqos-training-ask{margin-left:auto}
}
@media (max-width:781px){
  .xqos-training-page{--xqos-site-header-h:64px}
  .xqos-training-page .lesson-shell.xqos-embedded-player{height:auto;min-height:calc(100dvh - var(--xqos-site-header-h))}
  .xqos-training-page .lesson-controls .xqos-player-back:nth-of-type(2),
  .xqos-training-page .topbar .xqos-player-back:nth-of-type(2){display:none}
  .xqos-training-fallback-header{min-height:64px;padding:0 18px}
  .xqos-training-fallback-header nav{display:none}
  .xqos-training-fallback-header .xqos-training-ask{margin-left:auto}
}


/* v2.1.1 unified library navigation -----------------------------------------
   Field Notes and Guides now inherit the active XQOS theme header/footer just
   like training modules. The workbook remains a specialized local experience,
   but it no longer replaces the site's top-level navigation. */
.xqos-fieldnote-page .xq-site-header,
.xqos-guide-page .xq-site-header{position:relative;top:auto;z-index:1000}
.xqos-fieldnote-site-shell,.xqos-guide-site-shell{overflow:visible!important}
.xqos-fieldnote-page .practice-subnav{position:relative;z-index:900}
.xqos-library-fallback-footer{display:flex;justify-content:space-between;gap:20px;padding:28px max(24px,calc((100vw - 1280px)/2));border-top:1px solid rgba(0,28,48,.18);background:#f4f2ec;font-size:12px}
@media(max-width:760px){.xqos-library-fallback-footer{flex-direction:column}}
