
body.is-library{--aspect-navy:#1B365D;--aspect-teal:#2E86AB;--aspect-teal-text:#1D607C;--aspect-green:#047857;--aspect-ink:#162235;--aspect-muted:#536277;--aspect-paper:#FFFFFF;--aspect-soft:#F3F6F8;--aspect-line:#CFD8E3}
body.is-library main :is(a,button,input,textarea,summary,[tabindex]):focus-visible{outline:3px solid #2E86AB;outline-offset:3px}
body.is-library .library-main{max-width:1200px;padding-block:42px 80px}
body.is-library main .search-panel{margin-top:28px;background:var(--aspect-soft);border:1px solid var(--aspect-line);border-radius:14px}
body.is-library main .search-input{background:var(--aspect-paper);border-color:var(--aspect-line)}
body.is-library main .shelf-controls{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 34px}
body.is-library main .shelf-control{display:inline-flex;align-items:stretch;border:1px solid var(--aspect-line);border-radius:10px;overflow:hidden;background:var(--aspect-paper)}
body.is-library main .shelf-control .shelf-tab{border:0;border-radius:0;margin:0;background:transparent;background-image:none;box-shadow:none;color:var(--aspect-navy);min-height:46px;padding:10px 13px}
body.is-library main .shelf-control .shelf-tab[aria-pressed="true"]{background:var(--aspect-navy);background-image:none;color:#fff;border-color:var(--aspect-navy);box-shadow:none}
body.is-library main .shelf-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--aspect-soft);color:var(--aspect-navy);font-size:.78rem;font-weight:800}
body.is-library main .shelf-tab[aria-pressed="true"] .shelf-count{background:#fff;color:var(--aspect-navy)}
body.is-library main .shelf-all{display:inline-flex;align-items:center;padding:8px 12px;border-left:1px solid var(--aspect-line);color:var(--aspect-teal-text);font-size:.82rem;font-weight:800;text-decoration:none;white-space:nowrap}
body.is-library main .shelf-all:hover{text-decoration:underline;text-underline-offset:3px}
body.is-library main .stage-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 42px}
body.is-library main .stage-link{display:flex;flex-direction:column;min-height:150px;padding:20px;border:1px solid var(--aspect-line);border-top:4px solid var(--aspect-teal);border-radius:12px;background:var(--aspect-paper);color:var(--aspect-navy);text-decoration:none}
body.is-library main .stage-link strong{font-size:1rem;line-height:1.35;margin-bottom:8px}
body.is-library main .stage-link span{color:var(--aspect-muted);font-size:.86rem;line-height:1.55}
body.is-library main .stage-link em{margin-top:auto;padding-top:14px;color:var(--aspect-teal-text);font-size:.8rem;font-style:normal;font-weight:800}
body.is-library main .stage-link:hover{border-color:var(--aspect-teal);box-shadow:0 8px 22px rgba(27,54,93,.1)}
body.is-library main .list-heading{border-bottom-color:var(--aspect-navy)}
body.is-library main .article-row{--shelf-wash:transparent;margin:0;padding:24px 0;border:0;border-bottom:1px solid var(--aspect-line);border-radius:0;background:transparent;background-image:none}
body.is-library main .article-row h2,body.is-library main .article-row h3{font-size:1.25rem;line-height:1.45;margin:0 0 9px}
body.is-library main .article-row h2 a,body.is-library main .article-row h3 a{color:var(--aspect-navy)}
body.is-library main .row-meta{justify-content:flex-start;margin-bottom:8px}
body.is-library main .row-meta span{color:var(--aspect-teal-text)}
body.is-library main .row-meta a{color:var(--aspect-teal-text);font-weight:700}
body.is-library main .collection-intro,body.is-library main .stage-intro{max-width:760px;margin-bottom:34px}
body.is-library main .collection-intro h1,body.is-library main .stage-intro h1{color:var(--aspect-navy);font-size:clamp(2.25rem,5vw,3.4rem);letter-spacing:-.04em;line-height:1.12}
body.is-library main .collection-intro p,body.is-library main .stage-intro p{color:var(--aspect-muted);font-size:1.05rem;line-height:1.7}
body.is-library main .collection-count{font-size:.88rem!important;font-weight:800;color:var(--aspect-teal-text)!important}
body.is-library main .stage-shelf{margin:0 0 46px}
body.is-library main .stage-shelf-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;border-bottom:2px solid var(--aspect-navy);padding-bottom:12px}
body.is-library main .stage-shelf-heading h2{color:var(--aspect-navy);font-size:1.35rem;margin:0}
body.is-library main .stage-shelf-heading a{font-size:.85rem;font-weight:800;color:var(--aspect-teal-text)}
body.is-library .article-main{width:100%;max-width:1248px;padding-block:32px 72px}
body.is-library main .article-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}
body.is-library main .article-heading{max-width:none;grid-area:heading}
body.is-library main .article-heading h1{max-width:100%;font-size:clamp(2rem,4vw,3rem)}
body.is-library main .article-fiche{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0 0 16px}
body.is-library main .article-fiche div{display:flex;gap:7px;align-items:baseline}
body.is-library main .article-fiche dt{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--aspect-muted)}
body.is-library main .article-fiche dd{margin:0;color:var(--aspect-teal-text);font-size:.88rem;font-weight:800}
body.is-library main .article-fiche a{color:inherit}
body.is-library main .short-answer{max-width:none;margin-bottom:32px;background:var(--aspect-soft);border-left-color:var(--aspect-teal)}
body.is-library main .article-body [id]{scroll-margin-top:88px}
body.is-library main .toc{grid-area:toc;position:static;max-height:none;overflow:visible;padding:0}
body.is-library main .toc details{border-top:2px solid var(--aspect-navy);border-bottom:1px solid var(--aspect-line);padding:16px 0}
body.is-library main .toc a{color:var(--aspect-muted)}
body.is-library main .article-body{grid-area:body;width:100%;max-width:680px;min-width:0;color:var(--aspect-ink);font-size:1.25rem;letter-spacing:-.005em}
body.is-library main .article-body>p{max-width:680px}
body.is-library main .lib-table{width:100%;max-width:100%;margin:28px 0}
body.is-library main .lib-table__caption{font-weight:800;color:var(--aspect-navy);margin-bottom:5px}
body.is-library main .lib-table__hint{display:none;font-size:.8rem;margin:4px 0 8px;color:var(--aspect-muted)}
body.is-library main .lib-table__scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;background:linear-gradient(to right,var(--aspect-paper) 30%,transparent) left/40px 100% no-repeat local,linear-gradient(to left,var(--aspect-paper) 30%,transparent) right/40px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.18),transparent) left/14px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.18),transparent) right/14px 100% no-repeat scroll}
body.is-library main .lib-table table{width:100%;min-width:0;margin:0;border-collapse:collapse}
body.is-library main .lib-table :is(td,th){overflow-wrap:normal;word-break:normal;hyphens:auto;padding:12px 14px;vertical-align:top;text-align:left}
body.is-library main .lib-table tbody tr>:first-child{min-width:9rem}
body.is-library main .lib-table thead th{font-size:.875rem;font-weight:700;color:var(--aspect-teal-text);background:var(--aspect-soft);border-bottom:2px solid var(--aspect-line)}
body.is-library main .article-context{grid-area:context;display:grid;gap:18px;margin-top:34px}
body.is-library main .context-card{border:1px solid var(--aspect-line);border-radius:12px;padding:18px;background:var(--aspect-paper)}
body.is-library main .context-card h2{font-size:1rem;line-height:1.4;color:var(--aspect-navy);margin:0 0 13px}
body.is-library main .context-card ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
body.is-library main .context-card li{font-size:.86rem;line-height:1.45}
body.is-library main .context-card a{color:var(--aspect-teal-text);font-weight:700}
body.is-library main .question-form{display:grid;gap:10px}
body.is-library main .question-form label{font-size:.8rem;font-weight:800;color:var(--aspect-navy)}
body.is-library main .question-form input,body.is-library main .question-form textarea{width:100%;min-height:44px;border:1px solid var(--aspect-line);border-radius:8px;background:var(--aspect-paper);color:var(--aspect-ink);padding:10px;font:inherit;font-size:.86rem}
body.is-library main .question-form textarea{min-height:104px;resize:vertical}
body.is-library main .question-consent{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;font-size:.8125rem!important;line-height:1.5;color:var(--aspect-muted)!important}
body.is-library main .question-consent input{width:18px;height:18px;margin:1px 0 0;padding:0}
body.is-library main .question-form button{min-height:44px;border:0;border-radius:8px;background:var(--aspect-green);color:#fff;padding:10px 12px;font-weight:800;cursor:pointer}
body.is-library main .question-note{font-size:.8125rem;line-height:1.5;color:var(--aspect-muted);margin:0}
@media(min-width:1024px){body.is-library main .article-grid{grid-template-columns:228px minmax(0,680px);grid-template-areas:"toc heading" "toc body" ". context";column-gap:28px;row-gap:0;justify-content:center}body.is-library main .toc{position:sticky;top:calc(var(--library-header-height) + 24px);max-height:calc(100dvh - var(--library-header-height) - 48px);overflow:auto}body.is-library main .toc details:not([open])>ol{display:block}body.is-library main .article-context{grid-column:2;margin-top:28px}}
@media(min-width:1280px){body.is-library main .article-grid{grid-template-columns:222px minmax(0,680px) 258px;grid-template-areas:"toc heading context" "toc body context";column-gap:20px;justify-content:center}body.is-library main .article-context{grid-column:auto;margin-top:0;position:sticky;top:calc(var(--library-header-height) + 24px)}}
@media(max-width:1023px){body.is-library main .article-grid{grid-template-areas:"heading" "toc" "body" "context";gap:24px}body.is-library main .toc details{margin:0}body.is-library main .article-context{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){body.is-library main .stage-map{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){body.is-library main :is(.breadcrumbs a,.footer a,.legal a,.article-fiche a,.byline a,.toc summary,.faq summary){display:inline-flex;align-items:center;min-height:44px}body.is-library main .lib-table[data-cols="3"] table,body.is-library main .lib-table[data-cols="4"] table,body.is-library main .lib-table[data-cols="5"] table{min-width:560px}body.is-library main .lib-table[data-cols="3"] .lib-table__hint,body.is-library main .lib-table[data-cols="4"] .lib-table__hint,body.is-library main .lib-table[data-cols="5"] .lib-table__hint{display:block}body.is-library main .lib-table:not([data-cols="2"]) tbody tr>:first-child{position:sticky;left:0;background:var(--aspect-paper);z-index:1}body.is-library main .lib-table[data-cols="2"] thead{position:absolute;clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden}body.is-library main .lib-table[data-cols="2"] :is(tr,td,th){display:block;width:auto}body.is-library main .lib-table[data-cols="2"] tr{border-top:1px solid var(--aspect-line);padding:8px 0}body.is-library main .lib-table[data-cols="2"] td:before{content:attr(data-label);display:block;font-size:.8rem;font-weight:700;color:var(--aspect-teal-text)}}
@media(max-width:600px){body.is-library main .shelf-controls{display:grid;grid-template-columns:1fr}body.is-library main .shelf-control{width:100%}body.is-library main .shelf-control .shelf-tab{flex:1;justify-content:space-between}body.is-library main .stage-map{grid-template-columns:1fr}body.is-library main .stage-link{min-height:0}body.is-library main .article-context{grid-template-columns:1fr}body.is-library main .article-heading h1{font-size:clamp(1.65rem,7vw,2.05rem);line-height:1.18}body.is-library main .short-answer{padding:18px}body.is-library main .stage-shelf-heading{align-items:flex-start;flex-direction:column;gap:6px}}
[data-theme="dark"] body.is-library{--aspect-navy:#DCE8F5;--aspect-teal-text:#83C8E5;--aspect-ink:#F3F7FB;--aspect-muted:#C3CFDE;--aspect-paper:#101F38;--aspect-soft:#162945;--aspect-line:#425570}
[data-theme="dark"] body.is-library main :is(.search-input,.shelf-control,.stage-link,.context-card,.question-form input,.question-form textarea){background:var(--aspect-paper);color:var(--aspect-ink);border-color:var(--aspect-line)}
[data-theme="dark"] body.is-library main .shelf-control .shelf-tab{color:var(--aspect-navy)}
[data-theme="dark"] body.is-library main .shelf-control .shelf-tab[aria-pressed="true"]{background:#DCE8F5;color:#101F38}
[data-theme="dark"] body.is-library main .shelf-count{background:#263B58;color:#F3F7FB}
[data-theme="dark"] body.is-library main .shelf-tab[aria-pressed="true"] .shelf-count{background:#101F38;color:#F3F7FB}
[data-theme="dark"] body.is-library main .question-form button{background:#047857;color:#fff}
[data-theme="dark"] body.is-library main .lib-table__scroll,[data-theme="dark"] body.is-library main .lib-table:not([data-cols="2"]) tbody tr>:first-child{background-color:var(--aspect-paper)}
