*{box-sizing:border-box}body{margin:0;background:#f8f9fc;color:#17222d;font:16px/1.8 "PingFang SC",system-ui,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #4161cf;outline-offset:4px}header,main{max-width:1180px;margin:auto;padding:24px 32px}header{display:flex;justify-content:space-between;border-bottom:1px solid #dbe1eb}.intro{padding:28px 0 32px}h1{font-size:clamp(30px,4vw,48px);line-height:1.35;margin:12px 0 18px;max-width:880px}p{color:#5c6877;margin:8px 0}.intro p{max-width:820px}h2{font-size:26px;margin:0 0 20px}section{margin:36px 0}.flow{display:flex;gap:0;flex-wrap:wrap;background:#e4eaf2;padding:18px;border-radius:6px}.flow span{flex:1;min-width:140px;padding:8px 16px;border-right:1px solid #b8c7d7}.flow span:last-child{border:0}.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.roles h3{font-size:18px;margin:0}.roles article{border-top:2px solid #7d98b5;padding-top:14px}.visual{display:grid;grid-template-columns:1fr;gap:20px}.visual.mobile{grid-template-columns:1fr 260px;align-items:start}.visual img{width:100%;border:1px solid #dbe1eb;border-radius:6px}.visual figure{margin:0}.visual figcaption{font-size:13px;color:#5c6877;margin-top:8px}.decisions{display:grid;grid-template-columns:1fr 1fr;gap:16px}details{padding:20px;background:white;border:1px solid #dbe1eb;border-radius:6px}summary{font-size:18px;font-weight:600;cursor:pointer;list-style:none}summary::after{content:'＋';float:right;color:#4161cf}details[open] summary::after{content:'−'}details p{font-size:15px}.choice{border-left:3px solid #4161cf;padding-left:14px;margin-top:16px}.links{display:flex;flex-wrap:wrap;gap:12px}.links a{border:1px solid #bbc9da;padding:10px 16px;border-radius:5px;background:white}.links a:hover{background:#e7edf5}.scope{border-top:1px solid #dbe1eb;padding:24px 0;font-size:13px}.source{font-size:14px;padding:18px 20px;background:#eaf0f5}.back{font-size:14px;color:#4161cf}footer{margin:40px 0;font-size:13px}@media(max-width:760px){header,main{padding:20px}.roles,.decisions,.visual.mobile{grid-template-columns:1fr}.visual.mobile figure:last-child{max-width:300px;justify-self:center}.flow span{min-width:50%;border:0}.intro{padding:20px 0}section{margin:28px 0}h2{font-size:23px}header{font-size:13px}}
.intro{padding-top:18px;padding-bottom:20px}section{margin:28px 0}.flow{padding:12px}.roles{gap:20px}h2{margin-bottom:16px}

.visual.paired{grid-template-columns:1fr 1fr;align-items:start}.case-carbon .flow{background:#dfebe4}.case-quality .flow{background:#e7eaf7}.case-warehouse .flow{background:#eee9df}@media(max-width:760px){.visual.paired{grid-template-columns:1fr}}

.lock-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lock-gallery figure{margin:0}.lock-gallery img{width:100%;display:block;border-radius:6px}.lock-gallery figcaption{font-size:13px;color:#5c6877;margin-top:8px}@media(max-width:760px){.lock-gallery{grid-template-columns:1fr}}

html{scroll-padding-top:145px;scroll-behavior:smooth}
body>header{position:sticky;top:0;z-index:100;background:#f8f9fcf5;backdrop-filter:blur(12px);box-shadow:0 3px 14px #203f6509;min-height:72px;align-items:center}
body .ds-chapters{position:sticky;top:72px;z-index:90;background:#f8f9fcf5;padding:10px 0;border-bottom:1px solid #dce5ef}
.visual img,.lock-gallery img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain;cursor:zoom-in}
main{min-width:0}.visual,.visual figure{min-width:0}.visual figure{overflow:visible}
.case-image-note{font-size:14px;color:#426184;margin:10px 0}
.case-image-viewer{width:min(1400px,96vw);max-width:96vw;height:90vh;max-height:90vh;border:1px solid #dce5ef;border-radius:14px;padding:0;background:#fff;box-shadow:0 20px 80px #102e4a35}
.case-image-viewer::backdrop{background:#142b45b3}
.case-viewer-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid #dce5ef;background:#f5f8fc}
.case-viewer-tools span{font-size:14px;color:#426184}.case-viewer-tools div{display:flex;gap:8px}
.case-viewer-tools button{font:inherit;font-size:14px;padding:8px 12px;border:1px solid #cbd8e7;border-radius:7px;background:white;color:#244970;cursor:pointer}
.case-viewer-canvas{height:calc(100% - 76px);overflow:auto;padding:20px}
.case-viewer-canvas img{display:block;width:100%;height:auto;max-width:none;object-fit:contain}
@media(max-width:760px){body>header{padding:16px 20px;min-height:64px}body .ds-chapters{top:64px}.case-viewer-tools{padding:10px;flex-wrap:wrap}.case-viewer-canvas{padding:10px;height:calc(100% - 104px)}html{scroll-padding-top:140px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
