:root{color-scheme:dark;--bg:#08131e;--panel:#102131;--text:#eef5fa;--muted:#b2c3d1;--line:#2b4053;--accent:#74c9ff;--max:1080px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.85 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic",sans-serif}a{color:var(--accent);text-underline-offset:5px}a:hover{color:#fff}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #ffd570;outline-offset:5px}header,main,footer{width:min(var(--max),calc(100% - 64px));margin:auto}header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:100px;border-bottom:1px solid var(--line)}.brand{display:block;font-size:27px;font-weight:850;font-style:italic;letter-spacing:-1px;text-decoration:none;color:var(--text);white-space:nowrap}.brand span{font-size:11px;font-style:normal;font-weight:500;letter-spacing:3px;display:block;line-height:1.3;color:var(--muted)}nav{display:flex;gap:28px;font-size:14px}nav a{color:var(--muted);text-decoration:none}.skip{position:absolute;top:-100px;left:12px;background:var(--panel);padding:12px;z-index:2}.skip:focus{top:12px}.hero{padding:72px 0 52px;position:relative;border-bottom:1px solid var(--line)}.eyebrow{color:var(--accent);font-size:12px;letter-spacing:3px;font-weight:700;margin:0 0 12px}h1{font-size:clamp(32px,5vw,52px);font-weight:750;line-height:1.4;letter-spacing:.03em;margin:0 0 20px}h2{font-size:25px;line-height:1.5;margin:0 0 18px}h3{font-size:18px;margin:0 0 12px}p{margin:0 0 16px}.lead{color:var(--muted);max-width:680px;font-size:17px}.status{display:inline-block;font-size:12px;color:#d3e6f4;border:1px solid var(--line);padding:4px 12px;margin:12px 0 0}.jump{display:flex;flex-wrap:wrap;gap:10px 26px;margin:26px 0 0;font-size:14px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:56px;padding:48px 0 60px}.content-grid>div{min-width:0}section+section{margin-top:48px}aside{align-self:start;border-top:3px solid var(--accent);background:var(--panel);padding:26px}.action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;background:#1673bb;color:#fff;border:1px solid #3b94d5;border-radius:3px;text-decoration:none;font:inherit;font-weight:650;cursor:pointer}.action:hover{background:#2486cf;color:#fff}.secondary{background:transparent;border-color:#456179}.secondary:hover{background:#1b3449}.full{width:100%}.small{font-size:13px;color:var(--muted)}.callout{border-left:3px solid #718da6;padding:2px 0 2px 18px;color:var(--muted);margin:20px 0}ol,ul{padding-left:24px;color:var(--muted)}li+li{margin-top:8px}strong{color:var(--text);font-weight:650}.report{display:block;width:100%;min-height:204px;background:#06101a;color:#d9e7f2;border:1px solid var(--line);border-radius:3px;padding:18px;font-family:inherit;font-size:14px;line-height:1.85;resize:vertical;margin:14px 0}.copy-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.copy-status{font-size:13px;color:var(--accent)}details{border-top:1px solid var(--line);padding:0}details:last-child{border-bottom:1px solid var(--line)}summary{padding:19px 8px 19px 0;cursor:pointer;font-weight:600}details p{color:var(--muted);padding:0 22px 10px 0;font-size:15px}.operator{margin:20px 0;font-size:14px}.operator dt{color:var(--muted);font-size:12px}.operator dd{margin:0 0 12px}.bottom-note{color:var(--muted);font-size:13px;padding:28px 0;border-top:1px solid var(--line)}footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:28px 0 38px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.landing{padding:80px 0 100px;max-width:760px}.landing .action{margin-top:20px}.landing p{color:var(--muted)}
@media(max-width:760px){header,main,footer{width:calc(100% - 36px)}header{min-height:88px}.brand{font-size:23px}nav{gap:16px;font-size:13px}.hero{padding:42px 0 32px}.lead{font-size:15px}.content-grid{grid-template-columns:1fr;gap:36px;padding:32px 0}.content-grid aside{grid-row:1;padding:22px}.jump{gap:10px 20px}h2{font-size:23px}.landing{padding:54px 0 80px}.report{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
