/* Shared RIJLER layout. Standalone simulator and its controls are unaffected. */
body.site-layout{background:#f6f8fc;color:#102748;font-size:15px;line-height:1.65}
.site-layout .sidebar{width:256px;height:100dvh;padding:25px 18px;overflow-y:auto;gap:0;box-shadow:2px 0 20px #10274804}
.site-layout .sidebar .brand{display:block;width:195px;max-width:100%;margin:0 auto 8px}
.site-layout .sidebar .brand img{display:block;width:100%;height:auto;object-fit:contain}
.site-layout .nav-caption{font-size:10px;letter-spacing:1px;text-align:center;margin:10px 0 22px;color:#6c7f98}
.site-layout .sidebar #main-nav{display:block;grid-template-columns:none;margin:0;overflow:visible}
.site-layout .sidebar #main-nav a{display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 12px;margin:3px 0;border-radius:10px;color:#405773;font-size:13px;line-height:1.55;text-decoration:none;letter-spacing:0}
.site-layout .sidebar #main-nav a:hover{color:#075bc6;background:#f0f6ff}
.site-layout .sidebar #main-nav a.active{background:#eaf2ff;color:#075bc6;font-weight:700;box-shadow:inset 3px 0 #087dff}
[dir=rtl] .site-layout .sidebar #main-nav a.active{box-shadow:inset -3px 0 #087dff}
.site-layout .nav-icon{display:grid;place-items:center;width:22px;flex:none;font-size:16px;color:inherit}
.site-layout .nav-group{margin-top:19px}
.site-layout .nav-group-label{margin:0 12px 7px;font-size:11px;font-weight:750;letter-spacing:.6px;color:#7689a2}
.site-layout .nav-disclosure{margin-top:17px;padding-top:11px;border:0;border-top:1px solid #e4ebf5;font-size:13px}
.site-layout .nav-disclosure>summary{min-height:42px;padding:9px 12px;cursor:pointer;color:#405773;font-weight:650;list-style-position:inside}
.site-layout .nav-disclosure a{margin-inline-start:8px!important}
.site-layout .shell{margin-inline:0;margin-inline-start:256px;min-width:0}
.site-layout .topbar{height:auto;min-height:72px;padding:14px 32px;position:sticky;top:0;z-index:20;background:#fffffffa;backdrop-filter:blur(12px);border-color:#e4ebf5}
.site-layout .breadcrumb{font-size:12px;color:#607894}
.site-layout .breadcrumb>span{padding:0 7px;color:#b5c1d0}
.site-layout .toolbar{gap:12px;min-width:0;flex-wrap:wrap}
.site-layout main{max-width:1300px;min-width:0;padding:32px 34px 52px;min-height:calc(100dvh - 220px)}
.site-layout .page-heading{gap:16px;align-items:flex-start;margin-bottom:24px}
.site-layout .page-heading h1{font-size:clamp(26px,3vw,36px);line-height:1.4;letter-spacing:-.5px;margin:7px 0 8px}
.site-layout .page-heading p{max-width:75ch;line-height:1.8;color:#62748b}
.site-layout .section-heading{margin:30px 0 16px;align-items:center}
.site-layout .section-heading h2,.site-layout section[data-search-group]>h2{font-size:23px;line-height:1.5;margin:0 0 10px}
.site-layout .section-heading p{margin:8px 0;color:#657891;font-size:14px;max-width:72ch}
.site-layout .panel,.site-layout .module-card{border:1px solid #e0e8f3;border-radius:15px;background:white;box-shadow:0 3px 12px #10274803}
.site-layout .module-grid{gap:18px;align-items:start;margin-top:15px}
.site-layout .module-card{min-height:0;padding:20px;transition:box-shadow .15s,border-color .15s}
.site-layout .module-card:hover{box-shadow:0 8px 24px #1027480c;border-color:#a9c9f2}
.site-layout .module-card h3{font-size:18px;line-height:1.55;margin:12px 0 8px;color:#102748}
.site-layout .module-card>p{font-size:13px;line-height:1.75;color:#687b93;margin:0 0 17px}
.site-layout .module-top{margin-bottom:12px}
.site-layout .module-number{font-size:14px;color:#0872df;font-weight:750}
.site-layout .module-bottom{color:#0872df;font-size:13px}
.site-layout .learning-topic-card .learning-visual{margin:0 0 10px}
.site-layout .learning-topic-card>.button{display:block;text-align:center;min-height:44px;margin-top:12px}
.site-layout .topic-options{border:0;border-top:1px solid #e7edf6;padding-top:10px;margin-top:15px}
.site-layout .topic-options summary{padding:7px 0;font-size:12px;line-height:1.7;color:#426181;cursor:pointer;min-height:36px}
.site-layout .topic-options>a{display:block;font-size:13px;padding:8px 0;color:#075bc6}
.site-layout .topic-levels{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.site-layout .topic-levels a{font-size:11px;padding:8px 10px;border-radius:7px;background:#f0f5fd;color:#19548f;min-height:36px;display:flex;align-items:center}
.site-layout .chapter-card .life-scene{width:100%;aspect-ratio:1.8;object-fit:contain;border-radius:10px;background:#f1f6fd;margin:0}
.site-layout .chapter-card>p,.site-layout .life-card>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.site-layout .life-card{padding:20px;position:relative;min-height:245px}
.site-layout .life-card h2{font-size:18px;line-height:1.6;margin:12px 0 8px}
.site-layout .life-card>p{font-size:13px;line-height:1.75;color:#687b93}
.site-layout .life-card>strong{font-size:13px;color:#0872df}
.site-layout .life-card-preview{width:90px;height:52px;object-fit:contain;float:inline-end;border-radius:8px;background:#f2f6fd;margin-inline-start:10px}
.site-layout section[data-search-group]{margin-top:28px;scroll-margin-top:95px}
.site-layout .compact-tools{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.site-layout .compact-tools>a{padding:20px}
.site-layout .compact-tools h3{font-size:18px;margin:0 0 8px}
.site-layout .compact-tools p{font-size:13px;color:#687b93;margin:0}
.site-layout .learning-tools{margin-top:34px}
.site-layout .learning-search{border-color:#dce7f5;padding:17px 20px;box-shadow:none;margin-bottom:19px}
.site-layout .learning-search>label{font-size:13px}
.site-layout .learning-search-row input{background:#f8faff;border-color:#d3dfef}
.site-layout .learning-search-row button{font-size:12px;padding:10px 17px}
.site-layout .learning-search output{font-size:11px;color:#71839a}
.site-layout .lesson-section-links{margin:15px 0 24px;gap:8px}
.site-layout .lesson-section-links a{font-size:12px;min-height:42px;padding:9px 14px}
.site-layout .section-anchor,#learning-path{scroll-margin-top:100px}
.site-layout .dashboard-welcome{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:center;background:linear-gradient(125deg,#fff 15%,#eef5ff);border:1px solid #dce7f5;border-radius:20px;padding:35px}
.site-layout .welcome-copy h1{font-size:clamp(29px,3.5vw,43px);line-height:1.4;letter-spacing:-.6px;margin:10px 0 15px;color:#102748}
.site-layout .welcome-copy>p{font-size:15px;line-height:1.9;color:#526b88;margin:0 0 18px;max-width:65ch}
.site-layout .free-pill{display:inline-flex;align-items:center;padding:7px 12px;border-radius:24px;background:#e4f5ed;color:#176643;font-size:12px;font-weight:750}
.site-layout .welcome-copy .free-note{font-size:12px;line-height:1.7;margin:9px 0 0;color:#657c91}
.site-layout .next-step-card{background:#102748;color:#fff;border-radius:16px;padding:25px;box-shadow:0 10px 28px #10274810}
.site-layout .next-step-card .eyebrow{color:#a9cbfa;font-size:10px}
.site-layout .next-step-card h2{font-size:23px;line-height:1.5;color:white;margin:10px 0}
.site-layout .next-step-card p{color:#bfd0e4;font-size:13px;line-height:1.8;margin:0 0 20px}
.site-layout .next-step-card .button{background:#087dff;border-color:#087dff;color:white;display:inline-flex;align-items:center;min-height:46px}
.site-layout .overview-stats{margin:23px 0 30px;gap:16px}
.site-layout .overview-stats article{padding:19px;border-radius:14px}
.site-layout .overview-stats strong{font-size:27px}
.site-layout .overview-stats p{font-size:12px}
.site-layout .journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;list-style:none;padding:0;margin:0}
.site-layout .journey-grid>li{margin:0;min-width:0}
.site-layout .journey-card{display:flex;gap:15px;align-items:flex-start;border:1px solid #e0e8f3;border-radius:15px;background:white;padding:23px;text-decoration:none;min-height:145px;transition:border-color .15s,box-shadow .15s}
.site-layout .journey-card:hover{border-color:#8ab8ef;box-shadow:0 8px 24px #10274809}
.site-layout .journey-number{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:11px;background:#edf4ff;color:#086bda;font-size:12px;font-weight:750}
.site-layout .journey-card h3{font-size:18px;line-height:1.5;margin:0 0 8px;color:#102748}
.site-layout .journey-card p{font-size:13px;color:#6a7e97;line-height:1.8;margin:0}
.site-layout .journey-arrow{margin-inline-start:auto;color:#087dff;flex:none}
.site-layout .welcome-film-entry{margin-top:24px}
.site-layout .welcome-film-entry .welcome-film-replay{font-size:12px;margin:0}
.site-layout .site-footer{border-top:1px solid #e0e8f3;text-align:start;padding:28px 34px 20px;background:white;color:#6f8199;font-size:12px;margin-top:0}
.site-layout .footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;max-width:1200px;margin:auto}
.site-layout .footer-top strong{color:#284560}
.site-layout .footer-top p{max-width:65ch;line-height:1.8;margin:8px 0}
.site-layout .footer-owner{flex:none;display:grid;gap:7px;justify-items:start}
.site-layout .footer-owner img{display:block;width:155px;max-width:100%;height:auto;object-fit:contain}
.site-layout .footer-links{display:flex;gap:18px;flex-wrap:wrap;margin:20px auto 0;max-width:1200px;padding-top:15px;border-top:1px solid #edf1f7}
.site-layout .footer-links a{color:#496885;min-height:35px;display:inline-flex;align-items:center;gap:4px}
.site-layout .footer-copyright{max-width:1200px;margin:12px auto 0;font-size:10px;color:#8190a3}
.site-layout .skip-link{position:fixed;top:8px;inset-inline-start:12px;z-index:10000;transform:translateY(-160%);padding:12px 18px;background:#102748;color:white;border-radius:8px}
.site-layout .skip-link:focus{transform:translateY(0)}
@media(max-width:1120px){.site-layout .module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-layout .dashboard-welcome{padding:26px;gap:22px;grid-template-columns:1fr 1fr}.site-layout .journey-card{padding:19px}}
@media(max-width:800px){
 .site-layout .sidebar{position:relative;inset:auto;width:100%;height:auto;overflow:visible;padding:14px 16px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;border-inline-end:0;border-bottom:1px solid #e0e8f3;gap:10px}
 .site-layout .sidebar .brand{width:175px;max-width:calc(100% - 105px);margin:0}.site-layout .nav-caption{display:none}.site-layout .nav-toggle{display:block;min-height:46px;min-width:82px;border-radius:10px;font-size:12px}
 .site-layout .sidebar #main-nav{width:100%;margin-top:10px;display:block}.site-layout.nav-ready .sidebar #main-nav.nav-collapsed,.nav-ready .site-layout .sidebar #main-nav.nav-collapsed{display:none}
 .site-layout .sidebar #main-nav a{font-size:14px;min-height:46px}.site-layout .nav-group{margin-top:12px}.site-layout .nav-group-label{font-size:11px}.site-layout .nav-disclosure>summary{font-size:13px}
 .site-layout .shell{margin-inline:0;width:100%}.site-layout .topbar{padding:12px 17px;min-height:60px;position:relative}.site-layout main{padding:24px 18px 36px}.site-layout .toolbar{gap:10px}.site-layout .breadcrumb{display:none}
 .site-layout .dashboard-welcome{grid-template-columns:1fr;gap:20px;padding:24px}.site-layout .welcome-copy h1{font-size:30px}.site-layout .next-step-card{padding:22px}.site-layout .next-step-card h2{font-size:22px}
 .site-layout .overview-stats{gap:9px}.site-layout .overview-stats article{padding:14px;gap:9px}.site-layout .overview-stats .stat-icon{width:30px;height:30px}.site-layout .overview-stats strong{font-size:23px}
 .site-layout .site-footer{padding:25px 18px}.site-layout .footer-top{gap:17px}.site-layout .footer-owner img{width:130px}.site-layout .journey-card{min-height:155px}
}
@media(max-width:580px){
 .site-layout main{padding:21px 15px 30px}.site-layout .module-grid,.site-layout .journey-grid,.site-layout .compact-tools{grid-template-columns:1fr}.site-layout .page-heading h1{font-size:27px}.site-layout .page-heading{display:block;margin-bottom:19px}
 .site-layout .module-card{padding:19px}.site-layout .dashboard-welcome{padding:21px;border-radius:16px}.site-layout .welcome-copy h1{font-size:28px}.site-layout .welcome-copy>p{font-size:14px}
 .site-layout .journey-card{min-height:0;padding:19px}.site-layout .journey-number{width:33px;height:33px}.site-layout .journey-card h3{font-size:17px}.site-layout .overview-stats{grid-template-columns:1fr}
 .site-layout .overview-stats article{min-height:75px}.site-layout .overview-stats strong{font-size:25px}.site-layout .section-heading h2,.site-layout section[data-search-group]>h2{font-size:21px}
 .site-layout .learning-search{padding:15px}.site-layout .learning-search-row{flex-direction:row}.site-layout .learning-search-row button{width:auto;min-width:75px;max-width:110px;padding:8px;font-size:11px}
 .site-layout .footer-top{display:grid}.site-layout .footer-links{gap:8px 16px}.site-layout .footer-owner{margin-top:5px}.site-layout .life-card{min-height:0}.site-layout .topic-levels a{font-size:12px;min-height:42px}
}
@media(prefers-reduced-motion:reduce){.site-layout *{transition:none!important;scroll-behavior:auto!important}}

/* Keep training settings together and readable above the question. */
.site-layout .practice-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:14px;padding:20px;border:1px solid #e0e8f3;border-radius:15px;background:white;margin-bottom:22px}
.site-layout .practice-filters label,.site-layout .timing-settings>label{display:flex;flex-direction:column;gap:7px;font-size:13px;color:#405773;min-width:0}
.site-layout .practice-filters select,.site-layout .timing-settings select{width:100%;min-height:46px;font-size:14px;background:#f8faff;border:1px solid #d3dfef;border-radius:8px;padding:9px}
.site-layout .practice-filters>.button{min-height:46px;margin:0}
.site-layout .timing-settings>p,.site-layout .region-option p{font-size:13px;line-height:1.85}
.site-layout .timing-settings>p{margin:10px 0 20px}
@media(max-width:1120px){.site-layout .practice-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.site-layout .practice-filters{grid-template-columns:1fr;padding:17px;gap:13px}.site-layout .practice-filters>.button{width:100%}}
