/* Scoped to the six approved P1 pages. Images retain their full, original ratio. */
.sidebar .nav-label,.sidebar .side-note { color:#526861; }
.p1-lesson .p1-manga {
  width:100%; margin:1.5rem auto 2rem; padding:0; min-width:0;
  border:1px solid #cfdfd9; border-radius:12px; background:#fff; color:#233c38;
}
.p1-lesson .p1-manga--full { max-width:760px; border-top:4px solid #176658; }
.p1-lesson .p1-manga--micro { max-width:480px; }
.p1-lesson .p1-manga--diagram { max-width:560px; }
.p1-lesson .p1-manga>figcaption { padding:1rem 1.1rem; text-align:left; }
.p1-manga-label { display:block; font-size:.875rem; font-weight:700; color:#266051; }
.p1-reading-help { display:block; margin-top:.5rem; font-size:.875rem; line-height:1.7; color:#526861; }
.p1-guide-layout .benefit-grid>section>span,.p1-guide-layout .lesson-pager small,.p1-guide-layout .guide-toc a>span { color:#395f4b; }
.p1-lesson .p1-manga h3 { font-size:1.25rem; line-height:1.6; margin:.25rem 0; }
.p1-lesson .p1-manga figcaption p { font-size:1rem; line-height:1.8; margin:.35rem 0 0; }
.p1-manga-pages { display:grid; gap:1.25rem; }
.p1-manga-art { display:block; width:100%; border:0; padding:0; background:transparent; font:inherit; text-align:inherit; cursor:zoom-in; color:#174f45; text-decoration:none; min-width:0; }
.p1-manga-art img { display:block; width:100%; max-width:100%; height:auto; object-fit:contain; }
.p1-manga-zoom { display:block; padding:.65rem 1rem; min-height:44px; box-sizing:border-box; text-align:right; background:#f0f6f3; font-size:.9375rem; text-decoration:underline; }
.p1-manga-text { border-top:1px solid #cfdfd9; padding:.5rem 1.1rem; }
.p1-manga-text summary { padding:.4rem 0; min-height:44px; cursor:pointer; font-weight:700; font-size:1rem; }
.p1-lesson .p1-manga-text p { margin:.8rem 0; font-size:1.0625rem; line-height:1.9; }
.p1-manga-application { margin:1.5rem 0; border-block:1px solid #cfdfd9; }
.p1-manga-application>summary { padding:1rem .25rem; min-height:44px; cursor:pointer; color:#174f45; font-weight:700; }
.p1-manga-application>p { font-size:1rem; }
.p1-manga :is(a,button,summary):focus-visible,.p1-manga-application>summary:focus-visible { outline:3px solid #174aaf; outline-offset:3px; }
.p1-lesson .p1-record-supplement { width:100%; max-width:560px; margin:1.5rem auto 2rem; padding:0; border:1px solid #cfdfd9; border-radius:12px; background:#fff; color:#233c38; }
.p1-record-supplement>figcaption,.p1-record-supplement-text { padding:1rem; }
.p1-lesson .p1-record-supplement h3 { margin:0 0 .5rem; font-size:1.2rem; line-height:1.6; }
.p1-lesson .p1-record-supplement p { margin:.5rem 0 1rem; font-size:1rem; line-height:1.8; }
.p1-lesson .p1-record-supplement table { width:100%; table-layout:fixed; font-size:1rem; }
.p1-record-supplement caption { padding:.5rem 0; text-align:left; line-height:1.6; }
.p1-record-supplement :is(th,td) { white-space:normal; overflow-wrap:anywhere; }
.p1-record-supplement th:first-child { width:38%; }
.p1-record-supplement :is(a,button):focus-visible { outline:3px solid #174aaf; outline-offset:3px; }
.p1-image-viewer { width:min(1100px,94vw); max-width:94vw; height:94vh; max-height:94dvh; padding:0; border:1px solid #b7cbc3; border-radius:12px; color:#233c38; background:#fff; overflow:hidden; }
.p1-image-viewer[open] { display:flex; flex-direction:column; }
.p1-image-viewer::backdrop { background:rgb(10 24 21 / 75%); }
.p1-viewer-toolbar { flex:0 0 auto; box-sizing:border-box; padding:12px; overflow:auto; max-height:45%; display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.p1-viewer-toolbar h2 { flex:1 1 160px; font-size:1.1rem; line-height:1.5; margin:0; }
.p1-viewer-controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px; flex-basis:100%; }
.p1-viewer-toolbar p { font-size:.875rem; margin:0; line-height:1.5; }
.p1-viewer-scroll { overflow:auto; min-height:0; min-width:0; flex:1 1 auto; overscroll-behavior:contain; background:#eff4f0; }
.p1-viewer-scroll img { display:block; width:100%; height:auto; max-width:none; }
.p1-image-viewer :is(button,.p1-viewer-scroll):focus-visible { outline:3px solid #174aaf; outline-offset:-3px; }
@media(max-width:650px) {
  .article.p1-lesson { padding-inline:16px; }
  .p1-lesson .p1-manga { width:calc(100% + 24px); max-width:none; margin-inline:-12px; border-radius:0; }
  .p1-lesson .p1-manga>figcaption { padding:.85rem .8rem; }
  .p1-lesson .p1-manga h3 { font-size:1.15rem; }
  .p1-manga-text { padding:.5rem .8rem; }
}
/* P2-00.1: the five approved micro stories use one reusable Scene Card pattern. */
.p2-pilot{--p2-ink:#203d41;--p2-muted:#425b5d;--p2-accent:#166257;--p2-paper:#f2f7f2;--p2-line:#bdcfca;width:100%;max-width:760px;margin:2rem auto;padding:0;border:1px solid var(--p2-line);border-radius:1rem;background:#fff;color:var(--p2-ink);font-size:1rem;line-height:1.8;isolation:isolate;container-type:inline-size;content-visibility:auto;contain-intrinsic-block-size:auto 90rem}
.p2-pilot--people{contain-intrinsic-block-size:auto 89rem}
.p2-pilot--workflow{contain-intrinsic-block-size:auto 101rem}
.p2-pilot--charts{contain-intrinsic-block-size:auto 110rem}
.p2-pilot--statistics{contain-intrinsic-block-size:auto 90rem}
.p2-pilot--break-even{contain-intrinsic-block-size:auto 117rem}
.p2-pilot *{box-sizing:border-box;min-width:0}
.p2-pilot--charts{--p2-accent:#365682;--p2-paper:#f0f4fa;--p2-line:#bdc9d8}
.p2-pilot--statistics{--p2-accent:#315e38;--p2-paper:#f0f6eb;--p2-line:#bfd0bd}
.p2-pilot--break-even{--p2-accent:#70442c;--p2-paper:#faf1e7;--p2-line:#d7c0ad}
.p2-pilot .p2-heading{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1.1rem 1.2rem;background:var(--p2-paper);border-radius:1rem 1rem 0 0;border-bottom:1px solid var(--p2-line);color:var(--p2-ink)}
.p2-pilot .p2-heading>div{flex:1 1 15rem}
.p2-pilot .p2-heading h3{font-size:1.3rem;line-height:1.5;margin:.2rem 0 0;color:var(--p2-ink)}
.p2-pilot .p2-kicker{font-size:.875rem;font-weight:700;line-height:1.6;letter-spacing:.015em;color:var(--p2-accent);margin:0}
.p2-prop{flex:0 0 3.7rem;width:3.7rem;height:3rem;color:var(--p2-accent)}
.p2-story,.p2-scenes{display:grid;gap:1rem;padding:1rem;background:linear-gradient(180deg,#fff 0,var(--p2-paper) 160%)}
.p2-scene{padding:1rem;border:1px solid var(--p2-line);border-radius:.9rem;background:#fff;box-shadow:0 8px 24px rgb(26 66 59 / 7%)}
.p2-scene--people{background:linear-gradient(145deg,#fff 0,#f1f8f3 72%,#e5f0e9 100%)}
.p2-scene--workflow{background:linear-gradient(145deg,#fff 0,#fff6e9 100%)}
.p2-scene--charts{background:linear-gradient(145deg,#fff 0,#eef3fb 100%)}
.p2-scene--statistics{background:linear-gradient(145deg,#fff 0,#f0f6eb 100%)}
.p2-scene--break-even{background:linear-gradient(145deg,#fff 0,#fbefe3 100%)}
.p2-scene-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.7rem;border-bottom:1px solid var(--p2-line)}
.p2-scene-heading>div{flex:1 1 auto}
.p2-scene-heading .p2-prop{flex:0 0 3rem;width:3rem;height:2.5rem}
.p2-pilot .p2-scene-label{margin:0;color:var(--p2-accent);font-size:.78rem;font-weight:800;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}
.p2-pilot .p2-scene h4{margin:.12rem 0 0;color:var(--p2-ink);font-size:1.12rem;line-height:1.5}
.p2-scene-facts{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:.75rem 0;padding:0}
.p2-scene-facts li{margin:0;padding:.25rem .65rem;border:1px solid var(--p2-line);border-radius:999px;background:rgb(255 255 255 / 88%);color:var(--p2-muted);font-size:.82rem;font-weight:700;line-height:1.55}
.p2-scene-dialogue,.p2-insight{display:grid;gap:.8rem;margin-top:.9rem}
.p2-insight{padding:.9rem;border:1px dashed var(--p2-line);border-radius:.8rem;background:#fff}
.p2-speech{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.75rem}
.p2-speech-body{flex:1 1 12rem}
.p2-speech--mio .p2-speech-text,.p2-speech--guest .p2-speech-text{border-left:4px solid #926946;border-radius:.2rem .8rem .8rem .2rem}
.p2-pilot .p2-speaker-name{font-size:.82rem;line-height:1.5;font-weight:800;margin:0 0 .25rem;color:var(--p2-ink)}
.p2-pilot .p2-speech-text{font-size:1rem;line-height:1.75;margin:0;background:var(--p2-paper);padding:.65rem .8rem;border-radius:.15rem .8rem .8rem .8rem;overflow-wrap:anywhere}
.p2-avatar-frame{display:grid;place-items:center;flex:0 0 88px;width:88px;min-height:96px;align-self:start;padding:4px;border:1px solid var(--p2-line);border-radius:.8rem;background:#fff;box-shadow:0 3px 10px rgb(30 66 58 / 8%)}
.p2-avatar{display:block;width:100%;height:auto;max-height:108px;object-fit:contain}
.p2-transition{display:grid;justify-items:center;gap:.05rem;color:var(--p2-accent);font-weight:800;line-height:1.3;text-align:center}
.p2-transition span{display:block;font-size:1.45rem}
.p2-transition small{font-size:.78rem;line-height:1.5}
.p2-learning-panel{border:1px solid var(--p2-line);border-radius:.9rem;background:#fff}
.p2-pilot .p2-core{padding:1rem;font-size:1rem;background:#fff;border-radius:.9rem}
.p2-pilot .p2-core--official{margin:0 1rem 1rem;border:1px solid var(--p2-line)}
.p2-pilot .p2-core p{font-size:1rem;line-height:1.8;margin:.65rem 0}
.p2-pilot .p2-note{font-size:.925rem!important;line-height:1.8;color:var(--p2-muted)}
.p2-compare{display:grid;grid-template-columns:1fr;gap:.85rem}
.p2-compare>div{padding:1rem;background:var(--p2-paper);border:1px solid var(--p2-line);border-radius:.65rem}
.p2-pilot .p2-core h4{font-size:1.05rem;line-height:1.5;color:var(--p2-ink);margin:0 0 .5rem}
.p2-pilot .p2-flow{padding:0;list-style:none;display:grid;gap:1.35rem;margin:.6rem 0}
.p2-pilot .p2-flow li{position:relative;padding:.8rem .9rem;background:var(--p2-paper);border:1px solid var(--p2-line);border-top:4px solid var(--p2-accent);border-radius:.6rem;margin:0}
.p2-pilot .p2-flow li:not(:last-child)::after{content:'↓';position:absolute;left:50%;bottom:-1.27rem;transform:translateX(-50%);color:var(--p2-accent);font-weight:900;line-height:1}
.p2-flow strong,.p2-flow span{display:block;font-size:1rem}
.p2-flow span{color:var(--p2-muted);font-size:.9rem;font-weight:700}
.p2-pilot .p2-flow p{margin:.25rem 0 0}
.p2-pilot .p2-values{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,4.2rem),1fr));gap:.45rem;margin:1rem 0;padding:0}
.p2-pilot .p2-values li{text-align:center;border:1px solid #91aa94;border-radius:.55rem;padding:.5rem .35rem;background:var(--p2-paper);font-size:1.55rem;font-weight:800;line-height:1.4;margin:0}
.p2-values span{display:block;font-size:.75rem;font-weight:700;line-height:1.5}
.p2-pilot .p2-middle{border:3px solid var(--p2-accent)!important;background:#e5f1df}
.p2-pilot .p2-long-wait{border-style:dashed!important}
.p2-pilot .p2-metrics{display:grid;grid-template-columns:1fr;gap:.6rem;margin:1rem 0;padding:0}
.p2-metrics>div{padding:.75rem;border:1px solid var(--p2-line);border-radius:.55rem;background:#fff}
.p2-pilot .p2-metrics dt{font-size:.9rem;font-weight:800;color:var(--p2-accent)}
.p2-pilot .p2-metrics dd{font-size:1rem;margin:.2rem 0 0;overflow-wrap:anywhere}
.p2-key-message{padding:.55rem .75rem;border:2px solid var(--p2-accent);border-radius:.65rem;background:#fff;text-align:center;color:var(--p2-accent);font-weight:900;letter-spacing:.04em}
.p2-chart-purpose{display:block;margin:.15rem 0 .5rem;color:var(--p2-accent);font-size:1rem}
.p2-pilot .p2-axis{font-size:.82rem!important;line-height:1.55!important;color:var(--p2-ink)}
.p2-bars{display:flex;align-items:end;gap:.75rem;height:6rem;border-bottom:2px solid var(--p2-accent);border-left:2px solid var(--p2-accent);padding:.3rem .5rem 0}
.p2-bars span{display:block;flex:1;height:var(--p2-bar);background:#416b80}
.p2-bars--histogram{gap:0;padding-inline:0}
.p2-bars--histogram span{border-right:1px solid #fff;background:#35614b}
.p2-bar-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;text-align:center;margin:.5rem 0;padding:0}
.p2-pilot .p2-bar-labels dt,.p2-pilot .p2-bar-labels dd{font-size:.78rem;line-height:1.55;margin:0}
.p2-pilot .p2-bar-labels dt{word-break:keep-all;overflow-wrap:normal}
.p2-pilot .p2-bar-labels dd{overflow-wrap:anywhere}
.p2-pilot .p2-bar-labels dd{font-size:.88rem;font-weight:800}
.p2-pilot .p2-calculation{list-style:none;margin:1rem 0;padding:0;counter-reset:p2calc}
.p2-pilot .p2-calculation li{position:relative;margin:0 0 1.35rem;padding:.85rem 1rem;border:1px solid var(--p2-line);border-radius:.65rem;background:var(--p2-paper);font-size:1rem;counter-increment:p2calc}
.p2-pilot .p2-calculation li::before{content:counter(p2calc);display:grid;place-items:center;width:1.65rem;height:1.65rem;margin:0 0 .45rem;border-radius:50%;background:var(--p2-accent);color:#fff;font-weight:800;line-height:1}
.p2-pilot .p2-calculation li:not(:last-child)::after{content:'↓';position:absolute;left:50%;bottom:-1.25rem;transform:translateX(-50%);color:var(--p2-accent);font-weight:900}
.p2-calculation>li>span,.p2-calculation>li>strong{display:block}
.p2-calculation strong{font-size:1.12rem;color:var(--p2-accent);margin:.3rem 0}
.p2-pilot .p2-equation{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15em .35em;overflow-wrap:normal}
.p2-pilot .p2-equation .p2-term,.p2-pilot .p2-equation .p2-operator{display:inline-block;white-space:nowrap}
.p2-pilot .p2-calculation-result{border-width:2px;background:#fff7ed}
.p2-pilot .p2-check{border:1px solid #c6b19b;padding:.8rem;border-radius:.5rem;background:#fffcf6;font-size:1rem}
.p2-pilot .p2-check summary{font-size:1rem;font-weight:700;cursor:pointer;line-height:1.8}
.p2-pilot summary:focus-visible{outline:3px solid #174ab8;outline-offset:4px}
@container(min-width:42rem){.p2-scenes--people{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.p2-scenes--people .p2-transition{align-self:center}.p2-scenes--people .p2-transition span{transform:rotate(-90deg)}.p2-compare{grid-template-columns:repeat(2,minmax(0,1fr))}.p2-pilot .p2-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.p2-pilot .p2-flow li:not(:last-child)::after{content:'→';left:auto;right:-.68rem;top:50%;bottom:auto;transform:translate(50%,-50%);z-index:1;background:#fff;padding:.05rem}.p2-pilot .p2-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.p2-insight{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:18rem){.p2-story,.p2-scenes,.p2-scene,.p2-pilot .p2-core,.p2-compare>div{padding:.75rem}.p2-pilot .p2-core--official{margin:0 .75rem .75rem}.p2-pilot .p2-calculation li{padding:.75rem}.p2-pilot .p2-calculation .p2-equation{font-size:.75rem}.p2-bar-labels{grid-template-columns:1fr;text-align:left;gap:.45rem}.p2-bar-labels>div{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;border-bottom:1px solid var(--p2-line);padding:.2rem 0}.p2-pilot .p2-bar-labels dt,.p2-pilot .p2-bar-labels dd{font-size:.82rem}}
@media(min-width:700px){.p2-pilot--people{contain-intrinsic-block-size:auto 89rem}.p2-pilot--workflow{contain-intrinsic-block-size:auto 96rem}.p2-pilot--charts{contain-intrinsic-block-size:auto 108rem}.p2-pilot--statistics{contain-intrinsic-block-size:auto 84rem}.p2-pilot--break-even{contain-intrinsic-block-size:auto 102rem}}
@media(min-width:1200px){.p2-pilot--people{contain-intrinsic-block-size:auto 64rem}.p2-pilot--workflow{contain-intrinsic-block-size:auto 73rem}.p2-pilot--charts{contain-intrinsic-block-size:auto 76rem}.p2-pilot--statistics{contain-intrinsic-block-size:auto 74rem}.p2-pilot--break-even{contain-intrinsic-block-size:auto 96rem}}
@media(max-width:600px){.p2-pilot{border-radius:.8rem}.p2-pilot .p2-heading{padding:.9rem;gap:.7rem}.p2-story,.p2-scenes{padding:.75rem}.p2-scene{padding:.8rem}.p2-pilot .p2-core{padding:.85rem}.p2-pilot .p2-core--official{margin:0 .75rem .75rem}.p2-speech{gap:.55rem}.p2-avatar-frame{flex-basis:80px;width:80px;min-height:88px}.p2-pilot .p2-speech-text{padding:.55rem .65rem}.p2-prop{width:2.6rem;flex-basis:2.6rem}.p2-bar-labels{gap:.15rem}}
