:root{
  --ink:#102b4a;--ink2:#274766;--muted:#667b90;--line:#dbe5ef;--panel:#fff;--bg:#f4f7fb;
  --blue:#0c4d8a;--blue2:#eaf3fb;--green:#2f8a4c;--green2:#e9f7ed;--amber:#bd7915;--amber2:#fff3dd;
  --grey:#718095;--grey2:#eef2f6;--red:#b33a3a;--brown:#84543d;--polit:#35699a;--regards:#3f7c68;--gold:#a47400;
  --shadow:0 9px 28px rgba(18,48,78,.09);--radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#f7f9fc 0,#f2f6fa 100%);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}
button,input,textarea,select{font:inherit}button,a{transition:.16s ease}button{cursor:pointer}a{color:var(--blue)}
.skip-link{position:fixed;left:12px;top:-60px;z-index:1000;background:#fff;padding:8px 12px;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{top:12px}
.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto minmax(220px,420px) auto;align-items:center;gap:24px;padding:13px 28px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:var(--ink);padding:0;text-align:left}.brand:hover{transform:none}.brand-mark{width:51px;height:51px;border-radius:14px;display:grid;place-items:center;background:#eaf2fb;color:var(--blue)}.brand-mark svg{width:37px;height:37px}.brand-copy strong{display:block;font:800 26px/1.08 Georgia,"Times New Roman",serif}.brand-copy small{display:block;margin-top:3px;color:var(--muted);font-size:13px;font-weight:700}
.global-progress{min-width:0}.progress-copy{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;color:var(--muted);font-size:13px}.progress-copy strong{color:var(--ink)}.progress-track{height:9px;background:#e8eef4;border-radius:999px;overflow:hidden}.progress-track>span{display:block;height:100%;background:linear-gradient(90deg,#4ba864,#2f8a4c);border-radius:inherit}
.top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-button,.action-button,.icon-button{border:1px solid #cfdbe7;border-radius:11px;background:#fff;color:#264664;text-decoration:none;font-weight:800;padding:9px 12px;box-shadow:0 2px 5px rgba(20,50,80,.03)}.nav-button:hover,.action-button:hover,.icon-button:hover{border-color:#aabfd3;transform:translateY(-1px)}.nav-button.primary,.action-button.primary{background:#0c4d8a;color:#fff;border-color:#0c4d8a}.action-button.green{background:#2f8a4c;color:#fff;border-color:#2f8a4c}.action-button.danger{color:#98342f;border-color:#e3b9b6;background:#fff7f6}.icon-button{padding:6px 10px}.icon-button:disabled{opacity:.35;cursor:not-allowed}
.main{width:min(1500px,calc(100% - 32px));margin:0 auto;padding:22px 0 46px}.panel,.reader-main,.side-card,.modal-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.loading-card,.error-card{display:flex;align-items:center;gap:18px;max-width:760px;margin:80px auto;padding:28px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.loading-card h1,.error-card h1{margin:0 0 5px;font:800 30px/1.1 Georgia,serif}.spinner{width:34px;height:34px;border:4px solid #dbe7f2;border-top-color:var(--blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.eyebrow{margin:0 0 5px;color:var(--blue);font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.small-note{font-size:13px;color:var(--muted);line-height:1.45}.lead{font-size:18px;color:var(--ink2);max-width:850px;line-height:1.55}
.home{display:grid;gap:18px}.home-intro{display:grid;grid-template-columns:minmax(0,1fr) 230px 320px;gap:24px;align-items:center;padding:22px 24px}.home-intro h1{margin:0;font:800 clamp(31px,3.2vw,46px)/1.06 Georgia,serif;letter-spacing:-.02em}.home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.home-mascot{text-align:center}.home-mascot img{width:112px;max-height:135px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(14,45,75,.12))}.speech{position:relative;margin:8px auto 0;padding:10px 12px;border:1px solid #d6e2ec;background:#fff;border-radius:14px;color:#36506b;font-size:13px;line-height:1.35}.home-metrics{padding:15px 17px;border:1px solid var(--line);border-radius:15px;background:#f9fbfd}.home-metrics-head{display:flex;justify-content:space-between;margin-bottom:9px;color:var(--muted);font-size:13px}.home-metrics-head strong{font-size:20px;color:var(--green)}.mini-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px}.mini-metrics span{padding:8px 5px;border:1px solid #e0e8f0;border-radius:10px;background:#fff;text-align:center}.mini-metrics strong{display:block;font-size:16px}.mini-metrics small{display:block;color:var(--muted);font-size:10px;margin-top:2px}
.home-workspace{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:18px;align-items:start}.board-panel{padding:18px 19px 17px;overflow:hidden}.board-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:10px}.board-head h2{margin:0;font:800 34px/1.08 Georgia,serif}.board-head p:not(.eyebrow){margin:6px 0 0;color:var(--muted);font-size:15px}.board-tip{max-width:270px;color:var(--muted);font-size:12.5px;text-align:right}
.board-wrap{position:relative;min-height:450px;border:1px solid #e3e9ef;border-radius:17px;background:linear-gradient(180deg,#fbfcfe,#f8fbfd);overflow:hidden}.track{position:absolute;inset:0;pointer-events:none}.track-line{position:absolute;left:8%;right:8%;height:18px;border-radius:999px;background:linear-gradient(180deg,#eef3f6,#e2e9ee);border:1px solid #dbe3e8;box-shadow:inset 0 1px 2px rgba(30,50,70,.05)}.track-line.one{top:18.5%}.track-line.two{top:48.5%}.track-line.three{top:78.5%}.track-connector{position:absolute;right:7.6%;top:20%;width:18px;height:30%;background:#e5ecef;border-left:1px solid #dbe3e8;border-right:1px solid #dbe3e8}.track-connector.second{right:auto;left:7.6%;top:50%}.track-start,.track-end{position:absolute;color:#8796a4;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.track-start{left:1.4%;top:15.5%}.track-end{right:1.4%;top:75.5%}
.board-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);gap:36px 22px;min-height:450px;padding:26px 48px 24px}.chapter-case{position:relative;align-self:center;justify-self:center;width:min(165px,100%);min-height:112px;padding:12px 12px 11px;border:2px solid transparent;border-radius:16px;text-align:center;box-shadow:0 8px 16px rgba(26,48,70,.10);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eef2f6;color:var(--ink)}.chapter-case.progress{background:#fff0d8}.chapter-case.done{background:#e5f5e9}.chapter-case.selected{border-color:#0c4d8a;box-shadow:0 0 0 3px rgba(12,77,138,.13),0 10px 20px rgba(20,50,80,.12)}.chapter-case:hover{transform:translateY(-2px)}.chapter-case .number{font-size:25px;font-weight:900;color:inherit;line-height:1}.chapter-case .case-title{font-size:15px;font-weight:900;line-height:1.16;margin-top:5px}.chapter-case .case-question{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:5px;color:#60758b;font-size:10.5px;line-height:1.25}.chapter-case.family-eco .number,.chapter-case.family-eco .case-title{color:var(--red)}.chapter-case.family-socio .number,.chapter-case.family-socio .case-title{color:var(--brown)}.chapter-case.family-regards .number,.chapter-case.family-regards .case-title{color:var(--regards)}.case-state{position:absolute;right:7px;bottom:6px;font-size:16px;color:#536c83}.done .case-state{color:var(--green)}.progress .case-state{color:var(--amber)}.case-star{position:absolute;left:8px;top:6px;color:var(--gold)}
.legend{display:flex;gap:11px 16px;align-items:center;flex-wrap:wrap;margin-top:12px;color:#536a80;font-size:12.5px}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-swatch{width:17px;height:17px;border:1px solid #d3dde5;border-radius:5px}.legend-swatch.new{background:#eef2f6}.legend-swatch.progress{background:#fff0d8}.legend-swatch.done{background:#e5f5e9}.legend-family{font-weight:900}.legend-family.eco{color:var(--red)}.legend-family.socio{color:var(--brown)}.legend-family.regards{color:var(--regards)}
.home-sidebar{display:grid;gap:15px;position:sticky;top:91px}.preview-card,.progress-card{padding:16px}.preview-head{display:grid;grid-template-columns:45px 1fr;gap:10px;align-items:start}.preview-number{width:45px;height:45px;border-radius:12px;display:grid;place-items:center;background:#eef4fa;font-size:20px;font-weight:900;color:var(--blue)}.preview-family{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:900}.preview-family.eco{color:var(--red)}.preview-family.socio{color:var(--brown)}.preview-family.regards{color:var(--regards)}.preview-head h2{margin:2px 0 4px;font:800 22px/1.12 Georgia,serif}.preview-question{margin:0;color:var(--muted);font-size:12.5px;line-height:1.35}.preview-guide{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;margin:13px 0}.preview-guide img{width:68px;max-height:88px;object-fit:contain}.preview-guide .speech{margin:0;font-size:12px}.preview-progress{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:10px 0 7px;font-size:12px}.preview-blocks{display:grid;gap:6px;margin-top:12px}.preview-block{display:grid;grid-template-columns:38px 1fr 25px;gap:8px;align-items:center;width:100%;border:1px solid #dde6ee;background:#fbfdff;border-radius:10px;padding:8px 9px;text-align:left;color:var(--ink)}.preview-block:hover{border-color:#b9cbdc;background:#fff}.preview-block-index{font-size:11px;font-weight:900;color:var(--blue)}.preview-block strong{display:block;font-size:12.5px;line-height:1.15}.preview-block small{display:block;color:var(--muted);font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-block-state{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;border:1px solid #cfdbe5;font-size:11px}.preview-block-state.done{color:var(--green);border-color:#a6d6b3}.preview-block-state.progress{color:var(--amber);border-color:#e6c58d}.preview-tools{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:11px}.preview-tools .action-button{padding:7px 8px;font-size:11.5px}.preview-main{width:100%;margin-top:8px}.progress-card h2{margin:0 0 10px;font:800 21px/1.1 Georgia,serif}.progress-row{display:flex;justify-content:space-between;margin-top:8px;color:var(--muted);font-size:12px}.progress-row strong{color:var(--ink)}
.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:start}.reader-main{overflow:hidden}.chapter-hero,.block-hero{padding:21px 24px 18px;background:linear-gradient(135deg,#f9fcff,#fff);border-bottom:1px solid var(--line)}.breadcrumb{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:11px;color:var(--muted);font-size:12px}.breadcrumb button{border:0;background:transparent;padding:0;color:var(--blue);font-weight:800}.chapter-hero h1,.block-hero h1{margin:0;font:800 clamp(31px,3.5vw,47px)/1.06 Georgia,serif}.chapter-hero .question,.block-hero .goal{margin:8px 0 0;color:var(--ink2);font-size:16px;line-height:1.5}.chapter-meta,.block-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.status-chip,.timer{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #d8e1e9;border-radius:999px;background:#f8fafc;color:#415b73;font-size:11.5px;font-weight:800}.status-chip.done{background:var(--green2);color:#286e3d}.status-chip.progress{background:var(--amber2);color:#915b0c}
.tabs{display:flex;gap:7px;overflow-x:auto;padding:11px 14px;border-bottom:1px solid var(--line);background:#fbfcfe}.tab-button{white-space:nowrap;border:1px solid #d5e0ea;background:#fff;color:#37536d;border-radius:10px;padding:8px 11px;font-size:12.5px;font-weight:800}.tab-button.active{background:var(--blue);color:#fff;border-color:var(--blue)}.chapter-content,.block-content{padding:19px 21px 24px}.section-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:13px}.section-head h2{margin:0;font:800 28px/1.1 Georgia,serif}.section-head p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-size:14px}
.blocks-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.block-card{border:1px solid #dbe5ed;background:#fff;border-radius:15px;padding:14px;text-align:left;color:var(--ink);box-shadow:0 5px 13px rgba(18,48,78,.04)}.block-card:hover{border-color:#aec4d7;transform:translateY(-2px)}.block-card h3{margin:10px 0 6px;font:800 20px/1.14 Georgia,serif}.block-card p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.43}.block-card-footer{display:flex;justify-content:space-between;gap:8px;margin-top:12px;color:#31597e;font-size:11.5px;font-weight:800}
.programme-card,.summary-card,.bac-card{border:1px solid var(--line);border-radius:15px;background:#fff;padding:16px 17px;margin-bottom:13px}.programme-card h2,.summary-card h2,.bac-card h2{margin:0 0 10px;font:800 23px/1.13 Georgia,serif}.programme-question{padding:12px 14px;border-left:5px solid var(--blue);background:#f1f7fc;border-radius:0 11px 11px 0;font-weight:800;color:#183e63}.objective-list{display:grid;gap:9px}.objective{padding:11px 12px;border:1px solid #e0e8ef;border-radius:11px;background:#fbfdff}.objective p{margin:0;color:#294762;font-size:13.5px}.objective-links{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.objective-links button{border:1px solid #cbd9e5;background:#fff;color:#255981;border-radius:999px;padding:5px 8px;font-size:10.5px;font-weight:800}.quant-list{display:flex;gap:7px;flex-wrap:wrap}.quant-list span{padding:6px 9px;border-radius:999px;background:#eef4f9;color:#31536f;font-size:11.5px;font-weight:700}.summary-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#f9fbfd;margin-bottom:12px;font-size:12.5px;color:var(--muted)}.summary-ideas{display:grid;gap:8px}.summary-idea{padding:9px 10px;border:1px solid #e1e9ef;border-radius:10px;background:#fbfdff;font-size:13.5px}.summary-idea b{color:var(--blue)}
.subblock-card{margin-bottom:16px;padding:16px 17px 18px;border:1px solid #dbe5ee;border-radius:16px;background:#fff;box-shadow:0 5px 13px rgba(18,48,78,.04);scroll-margin-top:100px}.subblock-card:focus{outline:3px solid rgba(12,77,138,.25)}.subblock-title{display:flex;align-items:center;gap:9px;margin:0 0 11px;font:800 23px/1.12 Georgia,serif}.subblock-index{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border-radius:9px;background:#eaf3fb;color:var(--blue);font:900 12px Inter,Arial,sans-serif}.markdown{font-size:15.5px;color:#243f59;line-height:1.62}.markdown p{margin:0 0 11px}.markdown ul{margin:7px 0 12px;padding-left:22px}.markdown li{margin:4px 0}.markdown strong{color:#153d62}.markdown table{width:100%;border-collapse:collapse;margin:11px 0;font-size:13px}.markdown th,.markdown td{border:1px solid #dbe5ed;padding:8px 9px;vertical-align:top}.markdown th{background:#edf4fa;text-align:left}
.support{margin:0 0 14px;border:1px solid #d8e3eb;border-radius:14px;background:#f9fbfd;overflow:hidden}.support-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 13px;background:#edf4f9;border-bottom:1px solid #d9e4ec}.support-head h3{margin:0;font:800 16px/1.2 Georgia,serif}.support-legend{display:block;margin-top:3px;color:#61778b;font-size:11.5px;line-height:1.3}.support-type{padding:4px 7px;border-radius:999px;background:#fff;color:#436078;border:1px solid #d4e0e9;font-size:10px;font-weight:900;white-space:nowrap}.support-body{padding:13px}.support-comment{margin-top:11px;padding:9px 10px;border-radius:10px;background:#fff7e7;color:#5e4a21;font-size:12.5px}.support-source{padding:9px 13px;border-top:1px solid #dde6ed;color:#687d90;font-size:10.5px;background:#fff}.support-source a{font-weight:800}.diagram-flow{display:grid;grid-template-columns:repeat(5,max-content);justify-content:center;align-items:stretch;gap:8px;overflow-x:auto;padding:2px}.diagram-node{width:185px;padding:10px;border:1px solid #cddde9;border-radius:12px;background:#fff}.diagram-node b{display:block;color:#18547f;font-size:12px;margin-bottom:4px}.diagram-node p{margin:0;color:#456076;font-size:11.5px;line-height:1.35}.diagram-arrow{align-self:center;color:#7e9ab3;font-size:23px;font-weight:900}.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.compare-col,.info-card{padding:11px;border:1px solid #d7e2ea;border-radius:11px;background:#fff}.compare-col h4,.info-card h4{margin:0 0 5px;color:#244f75;font-size:12.5px}.compare-col p,.info-card p{margin:0;color:#4f667c;font-size:11.5px;line-height:1.38}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:9px}.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;position:relative}.timeline-event{padding:10px;border-left:4px solid #4e82ae;background:#fff;border-radius:0 10px 10px 0}.timeline-event b{color:#1f5780;font-size:12px}.timeline-event p{margin:4px 0 0;color:#4f667b;font-size:11.5px;line-height:1.35}.stat-wrap{overflow:auto;border:1px solid #d8e2ea;border-radius:10px;background:#fff}.stat-table{width:100%;border-collapse:collapse;min-width:540px;font-size:11.5px}.stat-table th,.stat-table td{padding:8px 9px;border-right:1px solid #e1e8ee;border-bottom:1px solid #e1e8ee;text-align:right}.stat-table th:first-child,.stat-table td:first-child{text-align:left}.stat-table th{background:#eaf2f8;color:#1f5074}.doc-image{display:block;width:min(100%,850px);margin:auto;border-radius:10px;border:1px solid #d9e2e9}
.side-card{position:sticky;top:91px;padding:15px}.side-mascot{text-align:center}.side-mascot img{width:92px;max-height:112px;object-fit:contain}.side-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:6px}.side-list li{display:flex;justify-content:space-between;gap:8px;padding:8px 9px;border:1px solid #e0e8ef;border-radius:9px;background:#fbfdff;color:var(--muted);font-size:11.5px}.side-list strong{color:var(--ink);text-align:right}.side-outline{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.side-outline>strong{font-size:12px}.side-outline button{display:block;width:100%;border:0;background:transparent;padding:5px 0;text-align:left;color:#2e628b;font-size:11px}.side-outline button:hover{text-decoration:underline}
.quiz-shell{margin-top:20px;padding:16px 17px;border:1px solid #cfdde8;border-radius:16px;background:#f8fbfe}.quiz-shell>h2{margin:0;font:800 25px/1.12 Georgia,serif}.quiz-lead{margin:6px 0 12px;color:var(--muted);font-size:13.5px}.quiz-status{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 12px;border-radius:10px;margin-bottom:10px;background:#fff3df;color:#7b530f}.quiz-status.pass{background:#e8f6ec;color:#2c713f}.quiz-status strong{font-size:18px}.question-card{padding:12px 13px;border:1px solid #dce5ed;border-radius:12px;background:#fff;margin-top:9px}.question-title{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;font-weight:800;font-size:13.5px}.question-title>span{width:28px;height:28px;border-radius:8px;background:#eaf3fa;display:grid;place-items:center;color:var(--blue);font-size:11px}.choices{display:grid;gap:6px;margin-top:9px}.choice{display:flex;gap:8px;align-items:flex-start;padding:8px 9px;border:1px solid #e0e7ed;border-radius:9px;background:#fbfdff;font-size:12.5px}.choice input{margin-top:3px;accent-color:var(--blue)}.choice.correct{background:#eaf7ed;border-color:#aed6b7}.choice.wrong{background:#fff0ef;border-color:#e3b6b1}.feedback{margin-top:8px;padding:8px 9px;border-radius:9px;font-size:12px}.feedback.ok{background:#edf8ef;color:#2f7040}.feedback.ko{background:#fff1ef;color:#8a352f}.feedback button{margin-left:8px;border:0;background:transparent;color:var(--blue);font-weight:800;text-decoration:underline}.quiz-actions,.footer-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}
.bac-docs{display:grid;gap:8px}.bac-doc{border:1px solid #dbe5ed;border-radius:10px;background:#fbfdff;overflow:hidden}.bac-doc summary{cursor:pointer;padding:10px 12px;font-weight:800;color:#245275}.bac-doc-body{padding:0 12px 12px}.writing-step{margin:10px 0;padding:12px;border:1px solid #dce5ec;border-radius:11px;background:#fbfdff}.writing-step h3{margin:0 0 4px}.writing-step p{margin:0 0 8px;color:var(--muted);font-size:12.5px}.writing-step textarea{width:100%;min-height:120px;padding:10px;border:1px solid #cfdce7;border-radius:9px;resize:vertical}.sample-plan{display:grid;gap:9px}.plan-part{padding:11px;border:1px solid #dce5ed;border-radius:10px;background:#fbfdff}.plan-part h3{margin:0 0 6px;font-size:14px}.plan-part ul{margin:0;padding-left:20px;font-size:12.5px}
.modal-root{display:none;position:fixed;inset:0;z-index:100;background:rgba(15,35,55,.50);padding:20px;overflow:auto}.modal-root.open{display:grid;place-items:start center}.modal-card{width:min(980px,100%);margin:3vh auto;max-height:92vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px 17px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font:800 27px/1.1 Georgia,serif}.modal-close{width:38px;height:38px;border:1px solid #d4dee7;border-radius:10px;background:#fff;font-size:22px}.modal-body{padding:16px 17px}.progress-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.metric-card{padding:12px;border:1px solid #dce5ed;border-radius:11px;background:#fbfdff;text-align:center}.metric-card strong{display:block;font-size:21px}.metric-card span{font-size:10.5px;color:var(--muted)}.progress-table-wrap{overflow:auto}.progress-table{width:100%;border-collapse:collapse;font-size:12px}.progress-table th,.progress-table td{padding:8px;border-bottom:1px solid #e0e8ef;text-align:left}.progress-table th{background:#edf4fa}.modal-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.import-input{display:none}.order-list{display:grid;gap:6px}.order-row{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid #dfe7ed;border-radius:9px}.order-rank{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#edf4fa;color:var(--blue);font-weight:900}.order-buttons{display:flex;gap:5px}.sync-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sync-box{padding:13px;border:1px solid #dce5ed;border-radius:12px;background:#fbfdff}.sync-box h3{margin:0 0 5px}.code-box{width:100%;min-height:90px;padding:9px;border:1px solid #cad8e4;border-radius:9px;font-family:ui-monospace,Consolas,monospace;font-size:11px;resize:vertical}.field-label{display:block;margin:10px 0 5px;font-weight:800;font-size:11.5px}.field-input{width:100%;padding:9px;border:1px solid #cad8e4;border-radius:9px}.toast-root{position:fixed;right:16px;bottom:16px;z-index:200;display:grid;gap:8px}.toast{padding:10px 13px;border-radius:10px;background:#183e63;color:#fff;box-shadow:var(--shadow);font-size:12px}.toast.ok{background:#2d7b43}.toast.warn{background:#a66a13}
@media(max-width:1200px){.topbar{grid-template-columns:auto 1fr}.global-progress{grid-column:1/-1}.home-intro{grid-template-columns:1fr 190px}.home-metrics{grid-column:1/-1}.home-workspace{grid-template-columns:1fr}.home-sidebar{position:static;grid-template-columns:1fr 320px}.reader-layout{grid-template-columns:1fr}.side-card{position:static;display:grid;grid-template-columns:140px 1fr;gap:15px}.side-list{margin:0}.side-outline{grid-column:1/-1}}
@media(max-width:800px){body{font-size:15px}.topbar{position:static;display:flex;flex-wrap:wrap;padding:12px 13px;gap:12px}.brand-copy strong{font-size:21px}.brand-mark{width:45px;height:45px}.top-actions{width:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.nav-button{white-space:nowrap;font-size:12px}.global-progress{width:100%}.main{width:min(100% - 18px,1500px);padding-top:12px}.home-intro{grid-template-columns:1fr;padding:16px}.home-mascot{display:grid;grid-template-columns:85px 1fr;align-items:center;text-align:left}.home-mascot img{width:78px}.home-mascot .speech{margin:0}.home-workspace{display:block}.home-sidebar{display:grid;grid-template-columns:1fr;margin-top:13px;position:static}.board-panel{padding:13px}.board-head{display:block}.board-tip{text-align:left;margin-top:7px;max-width:none}.board-wrap{min-height:0;border:0;background:transparent}.track{display:none}.board-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:9px;min-height:0;padding:0}.chapter-case{grid-column:auto!important;grid-row:auto!important;width:100%;min-height:100px}.reader-layout{display:block}.reader-main{border-radius:14px}.chapter-hero,.block-hero{padding:17px 15px}.chapter-content,.block-content{padding:15px 13px}.blocks-grid{grid-template-columns:1fr}.side-card{display:none}.section-head{display:block}.section-head .action-button{display:inline-block;margin-top:9px}.summary-toolbar{display:block}.summary-toolbar .footer-actions{margin-top:8px}.diagram-flow{grid-template-columns:1fr;justify-content:stretch}.diagram-node{width:100%}.diagram-arrow{transform:rotate(90deg);justify-self:center}.progress-overview{grid-template-columns:1fr 1fr}.sync-grid{grid-template-columns:1fr}.modal-root{padding:8px}.modal-body,.modal-head{padding:13px}.preview-tools{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.board-grid{grid-template-columns:1fr}.chapter-case{min-height:88px;display:grid;grid-template-columns:38px 1fr 26px;grid-template-rows:auto auto;text-align:left;justify-items:stretch}.chapter-case .number{grid-row:1/3;align-self:center;text-align:center}.chapter-case .case-title{margin:0;align-self:end}.chapter-case .case-question{-webkit-line-clamp:1;margin-top:2px}.case-state{position:static;grid-column:3;grid-row:1/3;align-self:center;text-align:center}.progress-overview{grid-template-columns:1fr}.mini-metrics{grid-template-columns:1fr 1fr 1fr}.preview-tools{grid-template-columns:1fr}.home-intro h1{font-size:32px}}
@media print{body{background:#fff}.topbar,.home,.tabs,.side-card,.footer-actions,.summary-toolbar,.toast-root,.modal-root{display:none!important}.main{width:100%;padding:0}.reader-layout{display:block}.reader-main{border:0;box-shadow:none}.chapter-content,.block-content{padding:0}.support,.subblock-card,.summary-card{break-inside:avoid;box-shadow:none}.markdown{font-size:11pt}}
/* Verrouillage anti-débordement : les grilles peuvent sinon prendre la largeur min-content de leurs cartes. */
.home{grid-template-columns:minmax(0,1fr);min-width:0}
.home-intro,.home-workspace,.board-panel,.home-sidebar,.preview-card,.progress-card,.board-wrap,.board-grid{min-width:0;max-width:100%}
@media(max-width:800px){
  .home,.home-intro,.home-workspace,.board-panel,.home-sidebar{width:100%;max-width:100%;min-width:0}
  .home-intro{grid-template-columns:minmax(0,1fr)}
  .board-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .topbar,.top-actions,.global-progress{max-width:100%;min-width:0}
}
@media(max-width:520px){.board-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){
  .top-actions{overflow:visible;flex-wrap:wrap;max-width:100%}
  .preview-block{grid-template-columns:38px minmax(0,1fr) 25px;min-width:0}
  .preview-block>span:nth-child(2){min-width:0;max-width:100%}
  .preview-block small{max-width:100%}
}

/* Identité des disciplines et chapitres allégés. */
.chapter-case.family-polit .number,.chapter-case.family-polit .case-title{color:var(--polit)}
.legend-family.polit,.preview-family.polit,.progress-family.polit{color:var(--polit)}
.progress-family.eco{color:var(--red)}.progress-family.socio{color:var(--brown)}.progress-family.regards{color:var(--regards)}
.chapter-case[data-light="true"]{border-color:#b9bec6;box-shadow:0 2px 10px rgba(70,78,90,.08)}
.chapter-case[data-light="true"].selected{border-color:var(--blue);box-shadow:inset 0 0 0 2px #b9bec6,0 0 0 3px rgba(12,77,138,.13),0 10px 20px rgba(20,50,80,.12)}
.light-badge{position:absolute;left:7px;bottom:7px;padding:2px 5px;border-radius:999px;background:#f0f1f3;color:#69707a;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}

/* Vue alternative : regroupement visible par discipline. */
.discipline-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.discipline-group{min-width:0;padding:12px;border:1px solid #e0e7ed;border-radius:14px;background:#fafcfe}
.discipline-group h3{margin:0 0 9px;font:800 19px/1.1 Georgia,serif}
.discipline-group.family-eco h3{color:var(--red)}.discipline-group.family-socio h3{color:var(--brown)}.discipline-group.family-polit h3{color:var(--polit)}.discipline-group.family-regards h3{color:var(--regards)}
.discipline-chapters{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px;min-width:0}
.chapter-case.grouped{width:100%;min-height:118px}

/* Accès direct aux sous-blocs depuis l’accueil. */
.preview-head{grid-template-columns:45px minmax(0,1fr)}
.preview-guide{grid-template-columns:72px minmax(0,1fr)}
.preview-family.eco{color:var(--red)}.preview-family.socio{color:var(--brown)}.preview-family.regards{color:var(--regards)}
.preview-block{grid-template-columns:38px minmax(0,1fr) 25px;min-width:0}
.preview-block>span:nth-child(2){min-width:0}
.preview-block strong{overflow-wrap:anywhere}
.preview-block.active{border-color:#7da7c9;background:#eef6fc;box-shadow:inset 3px 0 0 var(--blue)}
.preview-subblock-panel{min-width:0;margin-top:10px;padding:10px;border:1px solid #d7e2eb;border-radius:12px;background:#f8fbfd}
.preview-subblock-head{display:grid;gap:2px;margin-bottom:8px;min-width:0}.preview-subblock-head span{color:var(--blue);font-size:10px;font-weight:900;text-transform:uppercase}.preview-subblock-head strong{font-size:12.5px;overflow-wrap:anywhere}
.block-subnav{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.55rem;width:100%;max-width:100%;min-width:0}
.block-subnav>*{min-width:0;overflow-wrap:anywhere}
.block-subnav button{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:7px;width:100%;border:1px solid #dbe5ed;border-radius:9px;background:#fff;color:#315b7e;padding:7px 8px;text-align:left;font-size:11px;font-weight:800}
.block-subnav button span{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:#eaf3fa;color:var(--blue);font-size:9px}

/* Lecture des sous-blocs et supports documentaires. */
.subblock-title{font-size:clamp(1.42rem,1.25rem + .65vw,1.75rem);line-height:1.15}
.subblock-content{font-size:clamp(1.05rem,1rem + .25vw,1.18rem);line-height:1.62}
.subblock-content h2{font-size:clamp(1.42rem,1.25rem + .65vw,1.75rem)}
.subblock-content h3{font-size:clamp(1.18rem,1.08rem + .35vw,1.42rem)}
.diagram-arrow{align-self:center;display:grid;justify-items:center;min-width:72px;color:#6f8da8}
.diagram-arrow small{font-size:9.5px;font-weight:800;line-height:1.1;text-align:center}.diagram-arrow b{font-size:23px;line-height:1}
.info-central{max-width:620px;margin:0 auto 10px;padding:14px;border:2px solid #8fb4d1;border-radius:14px;background:linear-gradient(135deg,#edf6fd,#fff);text-align:center}
.info-central>span{display:block;color:var(--blue);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.info-central h4{margin:3px 0 5px;font:800 20px/1.1 Georgia,serif}.info-central p{margin:0;color:#405f79;font-size:12px}
.compare-conclusion{margin:10px 0 0;padding:9px 10px;border-left:4px solid #84543d;border-radius:0 9px 9px 0;background:#f7f1ee;color:#5e463b;font-size:12px}.info-card{position:relative;padding-left:44px}.info-icon{position:absolute;left:11px;top:11px;width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:#e9f3fa;color:#18547f;font-weight:900}
.stat-table{font-size:12px}.stat-meta{display:grid;gap:3px;margin-top:8px;color:#5d7285;font-size:11px}
.stat-prompt{margin:11px 0 7px;padding:9px 11px;border-left:4px solid var(--blue);background:#eef6fc;color:#244f70;font-weight:800;font-size:12.5px}
.stat-analysis{border:1px solid #d5e1ea;border-radius:10px;background:#fff;overflow:hidden}.stat-analysis>summary{cursor:pointer;padding:9px 11px;color:#255b86;font-size:12px;font-weight:900}.stat-analysis[open]>summary{border-bottom:1px solid #dce5ec;background:#f6fafd}
.stat-analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}.stat-analysis-grid article{padding:9px;border:1px solid #e0e8ef;border-radius:9px;background:#fbfdff}.stat-analysis-grid article.caution{background:#fff8e9;border-color:#ead7aa}.stat-analysis-grid strong{display:block;color:#204f76;font-size:11.5px}.stat-analysis-grid p{margin:3px 0 0;color:#405a71;font-size:12px;line-height:1.42}

/* Fil directeur et lecture active : l'élève sait ce qu'il doit expliquer avant d'entrer dans le détail. */
.block-overview-card{margin:0 0 16px;padding:16px;border:1px solid #c8dce9;border-top:5px solid var(--blue);border-radius:15px;background:linear-gradient(145deg,#eef6fb,#fff 62%)}
.block-overview-card header{margin-bottom:11px}.block-overview-card h2{margin:0;font:800 24px/1.12 Georgia,serif}
.block-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.block-overview-grid article{padding:11px 12px;border:1px solid #d8e5ed;border-radius:11px;background:#fff}.block-overview-grid article>span{display:block;margin-bottom:4px;color:#1e5a86;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.block-overview-grid p{margin:0;color:#35536d;font-size:12.5px;line-height:1.46}.block-overview-grid .overview-pitfall{border-color:#e4c990;background:#fff9eb}.block-overview-grid .overview-pitfall>span{color:#8b5b0f}
.support-reading-guide{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);gap:10px;margin-bottom:12px;padding:10px 11px;border:1px solid #cbdde9;border-radius:11px;background:#eef6fb}.support-reading-guide>div{display:grid;gap:3px}.support-reading-guide>div span{color:#1c5a88;font-size:9.5px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.support-reading-guide>div strong{color:#183f61;font-size:13px;line-height:1.42}.support-reading-guide details{align-self:start;border-left:1px solid #c9dbe7;padding-left:10px}.support-reading-guide summary{cursor:pointer;color:#275b83;font-size:11.5px;font-weight:900}.support-reading-guide ol{margin:8px 0 1px;padding-left:20px;color:#415e76;font-size:11.5px;line-height:1.45}.support-reading-guide li+li{margin-top:4px}

/* Mini-navigateur contextuel du bloc. */
.mobile-block-context{display:none}
.context-heading{display:grid;gap:2px;padding-bottom:9px;border-bottom:1px solid var(--line)}.context-heading span{color:var(--blue);font-size:10px;font-weight:900;text-transform:uppercase}.context-heading strong{font:800 18px/1.15 Georgia,serif}
.context-outline button{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:7px;padding:7px 6px;border-radius:8px;text-decoration:none!important;overflow-wrap:anywhere}.context-outline button span{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:#eaf3fa;font-size:9px;font-weight:900}.context-outline button[aria-current="true"]{background:#eaf3fb;color:#153f63;box-shadow:inset 3px 0 0 var(--blue)}
.context-actions{display:grid;grid-template-columns:1fr;gap:6px;margin-top:11px}.context-actions .action-button{width:100%;padding:7px 8px;font-size:11px}

/* Tableau de bord, dissertation et impression. */
.resume-card{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px;border:1px solid #cfe0ec;border-radius:11px;background:#f3f8fc}.resume-card div{display:grid;gap:3px}.resume-card span{color:var(--muted);font-size:10.5px}.resume-card strong{font-size:13px}
.progress-family{display:block;margin-bottom:2px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.progress-table td>.action-button{padding:5px 7px;font-size:10.5px}
.plan-reveal{border:1px solid #d7e2eb;border-radius:11px;background:#fbfdff;overflow:hidden}.plan-reveal>summary{cursor:pointer;padding:12px 14px;color:#24577f;font-weight:900}.plan-reveal[open]>summary{border-bottom:1px solid #dce5ec;background:#eef6fc}.plan-content{padding:12px}
.print-source{display:none}

/* Dessins d’identité des douze chapitres. */
.chapter-symbol{display:block;width:100%;height:auto;overflow:visible}.chapter-symbol .symbol-backdrop{fill:currentColor;opacity:.09;stroke:none}.chapter-symbol.family-eco{color:var(--red)}.chapter-symbol.family-socio{color:var(--brown)}.chapter-symbol.family-polit{color:var(--polit)}.chapter-symbol.family-regards{color:var(--regards)}
.case-heading{display:flex;align-items:center;justify-content:center;gap:5px}.case-symbol{width:34px;height:34px}.chapter-case .case-heading .number{margin:0}.chapter-case:hover .case-symbol{transform:rotate(-3deg) scale(1.06)}
.preview-head{grid-template-columns:58px minmax(0,1fr)}.preview-symbol{position:relative;width:54px;height:54px;display:grid;place-items:center;border:1px solid #d9e4ec;border-radius:14px;background:#f8fbfd}.preview-chapter-symbol{width:48px}.preview-symbol b{position:absolute;right:-3px;bottom:-3px;width:21px;height:21px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:var(--ink);color:#fff;font-size:9px}
.chapter-hero{display:grid;grid-template-columns:minmax(0,1fr) 105px;column-gap:20px}.chapter-hero>:not(.chapter-hero-symbol){grid-column:1}.chapter-hero-symbol{grid-column:2;grid-row:1/7;align-self:start;justify-self:end;width:100px}.hero-chapter-symbol{filter:drop-shadow(0 7px 8px rgba(24,55,82,.12))}
.context-heading-identity{display:flex;align-items:center;gap:8px}.context-heading-identity>div{display:grid;gap:2px;min-width:0}.block-chapter-symbol{width:54px;flex:0 0 54px}

/* Infographies illustrées : dessin central, pictogrammes et quatre compositions. */
.infographic-visual{position:relative;display:grid;gap:13px;overflow:hidden}.infographic-stage{position:relative;isolation:isolate;display:grid;grid-template-columns:116px minmax(0,1fr);gap:15px;align-items:center;min-height:142px;padding:15px 18px;border:1px solid #cadde9;border-radius:18px;background:linear-gradient(135deg,#edf7fd 0%,#fff 62%,#f5f0ea 100%)}
.infographic-drawing{position:relative;z-index:2;width:108px;height:108px;display:grid;place-items:center;border:1px solid rgba(55,98,132,.17);border-radius:30px;background:rgba(255,255,255,.82);box-shadow:0 10px 24px rgba(30,70,100,.10);transform:rotate(-2deg)}.infographic-symbol{width:96px}.infographic-core{position:relative;z-index:2}.infographic-core>span{display:block;margin-bottom:4px;color:var(--blue);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.infographic-core h4{margin:0 0 6px;font:800 clamp(20px,2.4vw,27px)/1.08 Georgia,serif;color:#173d60}.infographic-core p{margin:0;color:#3f5d75;font-size:12.5px;line-height:1.48}
.infographic-decoration{position:absolute;z-index:0;border-radius:50%;border:2px solid rgba(53,105,154,.12)}.infographic-decoration.one{width:160px;height:160px;left:-55px;top:-65px}.infographic-decoration.two{width:105px;height:105px;right:-25px;bottom:-55px;background:rgba(179,58,58,.05)}
.infographic-cards{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.infographic-visual .info-card{--card-accent:#35699a;position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:start;min-width:0;padding:13px 11px;border:1px solid color-mix(in srgb,var(--card-accent) 28%,#dbe5ed);border-top:5px solid var(--card-accent);border-radius:13px;background:#fff;box-shadow:0 7px 15px rgba(27,59,85,.07)}.infographic-visual .info-card:nth-child(2){--card-accent:#84543d}.infographic-visual .info-card:nth-child(3){--card-accent:#3f7c68}.info-card-order{position:absolute;right:7px;top:5px;color:color-mix(in srgb,var(--card-accent) 55%,#fff);font-size:9px;font-weight:900}.info-card-illustration{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--card-accent) 11%,#fff);color:var(--card-accent)}.info-pictogram{width:38px;height:38px}.infographic-visual .info-card h4{margin:1px 18px 5px 0;color:var(--card-accent);font-size:12.5px}.infographic-visual .info-card p{margin:0;color:#435d72;font-size:11.5px;line-height:1.42}
.variant-steps .infographic-cards{padding-top:14px}.variant-steps .info-card:nth-child(1){transform:translateY(12px)}.variant-steps .info-card:nth-child(2){transform:translateY(6px)}.variant-steps .infographic-stage{background:linear-gradient(120deg,#f7f2ec,#fff 45%,#edf7fd)}
.variant-balance .infographic-stage::after{content:"";position:absolute;right:8%;bottom:18px;width:34%;height:3px;border-radius:9px;background:#84543d;transform:rotate(-7deg);opacity:.22}.variant-balance .infographic-cards .info-card:nth-child(3){grid-column:1/-1;width:min(620px,100%);justify-self:center}.variant-balance .infographic-cards{grid-template-columns:1fr 1fr}
.variant-pyramid .infographic-cards{grid-template-columns:1fr}.variant-pyramid .info-card{justify-self:center}.variant-pyramid .info-card:nth-child(1){width:62%}.variant-pyramid .info-card:nth-child(2){width:81%}.variant-pyramid .info-card:nth-child(3){width:100%}.variant-pyramid .infographic-stage{background:linear-gradient(160deg,#eef7f2,#fff 55%,#f5efeb)}
.variant-radial .infographic-stage{border-radius:70px 18px 18px 70px}.variant-radial .infographic-cards::before{content:"";position:absolute;left:8%;right:8%;top:-7px;height:1px;background:linear-gradient(90deg,transparent,#9db9cc,transparent)}

/* Synthèse complète : plan, développement continu, transitions et conclusion. */
.full-summary-heading{align-items:center}.summary-chapter-symbol{width:82px;flex:0 0 82px}.summary-introduction{border-top:5px solid var(--blue)}.summary-prose{font-size:clamp(1rem,.96rem + .18vw,1.1rem);line-height:1.68}.summary-prose strong{color:#153f63}.summary-roadmap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:15px}.summary-roadmap button{display:grid;grid-template-rows:auto auto 1fr;gap:4px;min-width:0;padding:9px;border:1px solid #d9e4ec;border-radius:11px;background:#f8fbfd;color:#294d6a;text-align:left}.summary-roadmap button:hover{border-color:#91b2cc;background:#eef6fc}.summary-roadmap span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--blue);color:#fff;font-size:10px;font-weight:900}.summary-roadmap strong{font-size:11.5px;line-height:1.18}.summary-roadmap small{color:#62788b;font-size:9.5px;line-height:1.28;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.full-summary-section{position:relative;padding-left:24px;border-left:6px solid #8fb2cc;background:linear-gradient(90deg,#f5f9fc,#fff 20%)}.full-summary-section:nth-of-type(3n+1){border-left-color:#b76b63}.full-summary-section:nth-of-type(3n+2){border-left-color:#9a765e}.summary-section-head{display:grid;grid-template-columns:39px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:9px}.summary-section-head>span{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#e8f2f9;color:var(--blue);font-size:16px;font-weight:900}.summary-section-head p{margin:0;color:#6a7e90;font-size:9.5px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.summary-section-head h2{margin:2px 0 0}.summary-key-terms{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 11px}.summary-key-terms span{padding:5px 8px;border:1px solid #d8e3eb;border-radius:999px;background:#fff;color:#315d7e;font-size:10.5px;font-weight:800}.summary-lead{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:#eaf4fa}.summary-lead p{margin:0}.summary-paragraphs{display:grid;gap:9px}.summary-paragraphs>.summary-prose{padding:10px 12px;border:1px solid #e0e8ee;border-radius:10px;background:#fff}.summary-paragraphs p{margin:0}.summary-transition{margin:12px 0 0;padding:8px 11px;border-left:4px solid var(--blue);border-radius:0 9px 9px 0;background:#f0f6fa;color:#365b78;font-size:12.5px;font-style:italic}.summary-transition strong{color:#183f61}.summary-conclusion{border:2px solid #a9c4d6;background:linear-gradient(145deg,#eef6fb,#fff 55%,#f4f8f2)}.summary-final-points{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.summary-final-points article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;padding:9px;border:1px solid #dbe5ec;border-radius:10px;background:#fff}.summary-final-points b{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:#e8f2f9;color:var(--blue);font-size:10px}.summary-final-points p{margin:0;color:#38566e;font-size:12px;line-height:1.4}
.summary-pitfalls{border-color:#e5ce9e;background:linear-gradient(145deg,#fffaf0,#fff)}.summary-pitfalls .summary-idea{border-color:#ead9b5;background:#fffdf7}.summary-pitfalls .summary-idea b{color:#94620e}
.summary-caution{margin-top:11px;padding:10px 12px;border:1px solid #e5cc98;border-left:5px solid #c08219;border-radius:0 10px 10px 0;background:#fff9ea}.summary-caution strong{display:block;color:#87590e;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.summary-caution p{margin:3px 0 0;color:#5b4a2c;font-size:12.5px;line-height:1.45}
.summary-exam-focus{margin-top:14px;padding:12px 14px;border:1px solid #bed5e5;border-radius:12px;background:#f1f7fb}.summary-exam-focus h3{margin:0 0 7px;color:#1b5179;font:800 17px/1.2 Georgia,serif}.summary-exam-focus ul{margin:0;padding-left:20px;color:#36566f}.summary-exam-focus li{margin:5px 0;font-size:12.5px;line-height:1.45}

@media(max-width:800px){
  .discipline-groups{grid-template-columns:1fr}.discipline-chapters{grid-template-columns:1fr 1fr}
  .block-subnav{grid-template-columns:minmax(0,1fr)}
  .block-overview-grid,.support-reading-guide{grid-template-columns:1fr}.support-reading-guide details{border-left:0;border-top:1px solid #c9dbe7;padding:8px 0 0}
  .stat-analysis-grid{grid-template-columns:1fr}
  .diagram-arrow{transform:none}.diagram-arrow b{transform:rotate(90deg)}
  .mobile-block-context{display:block;margin:10px 13px 0;border:1px solid #d6e2eb;border-radius:12px;background:#f8fbfd}.mobile-block-context>summary{cursor:pointer;padding:10px 12px;color:#255b84;font-weight:900}.mobile-block-context[open]>summary{border-bottom:1px solid #dce5ec}.mobile-block-context>.context-heading,.mobile-block-context>.side-list,.mobile-block-context>.side-outline,.mobile-block-context>.context-actions{margin-left:11px;margin-right:11px}.mobile-block-context>.context-heading{padding-top:10px}.mobile-block-context>.context-actions{padding-bottom:11px}
  .resume-card{align-items:flex-start;flex-direction:column}.progress-table{min-width:760px}
  .chapter-hero{grid-template-columns:minmax(0,1fr) 68px;column-gap:10px}.chapter-hero-symbol{width:66px}
  .infographic-stage{grid-template-columns:82px minmax(0,1fr);padding:13px}.infographic-drawing{width:78px;height:78px;border-radius:22px}.infographic-symbol{width:70px}.infographic-cards,.variant-balance .infographic-cards{grid-template-columns:1fr}.variant-balance .infographic-cards .info-card:nth-child(3){grid-column:auto;width:100%}.variant-steps .info-card:nth-child(n),.variant-pyramid .info-card:nth-child(n){width:100%;transform:none}.variant-radial .infographic-stage{border-radius:18px}
  .summary-roadmap{grid-template-columns:1fr 1fr}.summary-final-points{grid-template-columns:1fr}
}
@media(max-width:520px){.discipline-chapters{grid-template-columns:1fr}.chapter-case{grid-template-columns:68px minmax(0,1fr) 26px}.chapter-case .case-heading{grid-row:1/3;align-self:center;justify-self:start}.chapter-case .case-heading .number{grid-row:auto}.case-symbol{width:36px}.chapter-hero{grid-template-columns:minmax(0,1fr) 54px}.chapter-hero-symbol{width:52px}.infographic-stage{grid-template-columns:1fr;text-align:center}.infographic-drawing{justify-self:center}.infographic-cards{grid-template-columns:1fr}.summary-roadmap{grid-template-columns:1fr}.summary-chapter-symbol{width:62px;flex-basis:62px}.full-summary-section{padding-left:15px}.summary-section-head{grid-template-columns:34px minmax(0,1fr)}.summary-section-head>span{width:34px;height:34px}}

@media print{
  @page{margin:15mm 13mm 20mm}
  .print-source{display:block;position:fixed;left:13mm;bottom:7mm;font-size:9pt;color:#555}
  .mobile-block-context{display:none!important}
  .stat-analysis{border:0}.stat-analysis>summary{display:none}.stat-analysis:not([open])>.stat-analysis-grid{display:grid}
}
