:root{--ink:#172c36;--muted:#526670;--line:#d7e2e4;--accent:#176c6d;--pale:#eaf3f1;--paper:#f7faf9;--gap:#fff5e4}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif;font-size:16px;line-height:1.85}a{color:var(--accent);text-underline-offset:3px}a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c38b25;outline-offset:4px}.sitehead{padding:20px max(24px,calc((100vw - 1100px)/2));display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid var(--line);background:white}.sitehead div{display:flex;align-items:center;gap:20px}.tag,.eyebrow{font-size:13px;letter-spacing:.08em;color:var(--muted)}main{max-width:1100px;margin:32px auto 60px;padding:0 24px}h1{font-size:clamp(28px,4vw,44px);line-height:1.35;margin:16px 0;overflow-wrap:anywhere}h2{font-size:21px;line-height:1.5;margin:0 0 12px}h3{font-size:17px}.lead{font-size:21px;line-height:1.7;max-width:920px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0}.facts>div{padding:18px 20px;border-radius:12px;background:var(--pale)}.facts small,.facts strong{display:block}.facts strong{font-size:20px}section{margin:30px 0}article{display:grid;grid-template-columns:1fr 1fr;gap:20px}article section{margin:0;padding:24px;background:white;border:1px solid var(--line);border-radius:12px}p{margin:10px 0}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0;list-style:none;counter-reset:step}.flow li{padding:15px;background:white;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:5px;counter-increment:step}.flow strong:before{content:counter(step)". ";color:var(--accent)}.flow strong,.flow span{display:block}.flow span{font-size:14px;color:var(--muted)}.gap{padding:20px 24px;margin-top:28px;background:var(--gap);border-left:4px solid #c38b25}.button{display:inline-block;background:var(--accent);color:white;border-radius:7px;padding:10px 18px;text-decoration:none;font-size:15px}.choices,.page-nav{display:flex;gap:18px;flex-wrap:wrap;margin:24px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0;list-style:none}.grid>li{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.grid>li p{font-size:15px}.grid .button{margin-top:auto;align-self:flex-start}.grid>li[hidden]{display:none}.filters{display:flex;gap:20px;flex-wrap:wrap}.filters label{display:grid;gap:8px;font-size:14px}input,select{padding:10px 12px;min-width:230px;border:1px solid #8a9fa7;border-radius:5px;background:white;color:var(--ink);font:inherit}figure{margin:28px 0}figcaption{font-weight:600;margin:10px 0}img{display:block;width:100%;height:auto;border:1px solid var(--line);background:white}.royalties{display:grid;grid-template-columns:1fr 1fr;gap:24px}table{border-collapse:collapse;width:100%;background:white;font-size:15px}th,td{border:1px solid var(--line);padding:7px 12px;text-align:left}td{text-align:right}thead{background:var(--pale)}details{margin:30px 0;padding:18px;background:white;border:1px solid var(--line)}summary{cursor:pointer;font-weight:600}footer{padding:30px 24px;text-align:center;color:var(--muted);font-size:13px;border-top:1px solid var(--line)}@media(max-width:700px){.sitehead{align-items:flex-start;font-size:14px}.sitehead div{display:block}.tag{display:block;margin-top:4px}main{margin-top:24px;padding:0 18px}.lead{font-size:18px}.facts{grid-template-columns:1fr;gap:8px}.facts>div{padding:12px 16px}.facts strong{font-size:18px}article,.grid,.royalties{grid-template-columns:1fr}.flow{grid-template-columns:1fr}.flow li{padding:11px 16px}.grid{gap:14px}article section{padding:20px}h2{font-size:20px}}@media print{body{background:white;font-size:11pt}.sitehead,.page-nav,.choices,.filters{display:none}main{margin:0;padding:0}.lead{font-size:14pt}h1{font-size:23pt}.facts strong{font-size:14pt}article{display:block}article section{break-inside:avoid;margin:12px 0;padding:12px}figure{break-before:page}details{display:none}.flow{grid-template-columns:repeat(3,1fr)}footer{font-size:8pt}a{color:inherit}section{break-inside:avoid}}

/* v06 presentation fix: preserve source names and original diagram bytes. */
details a{overflow-wrap:anywhere}
.diagram-viewport{max-width:100%;min-width:0}
.diagram-help{font-size:14px;color:var(--muted)}
.diagram-help .diagram-open{font-weight:600}
.diagram-viewport:focus-visible{outline:3px solid #c38b25;outline-offset:4px}
@media screen and (max-width:700px){
  .diagram-viewport{overflow-x:auto;overscroll-behavior-x:contain}
  .diagram-viewport>a{display:block;width:max-content;min-width:100%}
  .diagram-viewport img{width:auto;max-width:none;height:auto}
}
@media print{.diagram-help{display:none}}
