/* Public report edition. Brand roles and base components are provided by StellarArc. */
/* Long-distance section navigation should land immediately, including narrow screens. */
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0}img{display:block;max-width:100%;height:auto}button,input,select{font-family:inherit}button,a,summary,input,select{touch-action:manipulation}button,summary{cursor:pointer}h1,h2,h3,h4,p,figure{margin-top:0}h1,h2,h3,h4{overflow-wrap:anywhere}a{overflow-wrap:anywhere}[hidden]{display:none!important}.content{min-width:0}.skip{position:absolute;left:24px;top:-100px}.skip:focus{top:12px;z-index:99;padding:12px;background:var(--sa-color-bg-surface)}
.topbar{min-height:88px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:24px max(24px,calc((100vw - 1152px)/2));background:var(--sa-color-bg-surface);border-bottom:1px solid var(--sa-color-border-default);position:sticky;top:0;z-index:20}.brand,.footer-brand{display:block;flex-shrink:0}.brand img,.footer-brand img{width:160px;min-width:140px;height:auto}.topnav{display:flex;align-items:center;gap:24px;font-size:var(--sa-font-size-sm);line-height:var(--sa-typography-small-lineHeight)}.topnav a{color:var(--sa-color-text-muted);text-decoration:none}.topnav a:hover{color:var(--sa-color-text-link);text-decoration:underline}
.hero{background:var(--sa-color-bg-subtle);padding:48px max(24px,calc((100vw - 1152px)/2)) 0;border-bottom:1px solid var(--sa-color-border-default)}.hero-top{display:flex;align-items:start;justify-content:space-between;gap:24px}.eyebrow{color:var(--sa-color-text-brand);font-size:14px;line-height:20px;letter-spacing:.08em;font-weight:700}.hero-kicker{margin:8px 0 0;font-size:14px;color:var(--sa-color-text-muted)}.hero-date{font-size:12px;line-height:20px;text-align:right;letter-spacing:.04em;color:var(--sa-color-text-subtle);font-variant-numeric:tabular-nums}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center;margin-top:40px}.hero h1{font-size:clamp(36px,3.65vw,52px);line-height:1.5;letter-spacing:.02em;margin-bottom:24px;font-weight:700}.hero h1 em{font-style:normal;color:var(--sa-color-text-brand)}.hero-lead{font-size:16px;line-height:1.75;color:var(--sa-color-text-muted);max-width:40rem;margin-bottom:24px}.hero-actions{margin-bottom:8px}.hero-visual{margin:0}.hero-visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--sa-radius-lg)}.hero-visual figcaption{font-size:12px;line-height:20px;color:var(--sa-color-text-subtle);margin-top:12px}.hero-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;margin-top:40px;padding:24px 0;border-top:1px solid var(--sa-color-border-default);font-size:12px;line-height:20px;color:var(--sa-color-text-subtle)}.hero-footer strong{font-size:20px;color:var(--sa-color-text-brand)}
.layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:176px minmax(0,1fr);gap:48px;padding:48px 24px 80px}.rail{align-self:start;position:sticky;top:120px;font-size:14px;line-height:1.75}.rail-title{font-size:12px;letter-spacing:.08em;font-weight:700;color:var(--sa-color-text-subtle);margin-bottom:16px}.rail a{display:block;text-decoration:none;color:var(--sa-color-text-muted);padding:12px 0;border-bottom:1px solid var(--sa-color-border-default)}.rail a:hover{color:var(--sa-color-text-link)}.rail a b{display:inline-block;font-size:12px;width:28px;color:var(--sa-color-text-brand)}.rail .rail-sub{font-size:12px;padding:8px 0 8px 28px;border:0}.rail-note{font-size:12px;line-height:20px;color:var(--sa-color-text-subtle);margin-top:24px}.section{margin:0 0 80px;scroll-margin-top:120px}.section-label{font-size:12px;font-weight:700;line-height:20px;letter-spacing:.08em;color:var(--sa-color-text-brand);margin-bottom:12px}.section-head{padding-bottom:24px;margin-bottom:32px;border-bottom:2px solid var(--sa-color-border-brand)}.section h2{font-size:30px;line-height:1.5;margin:0}.section-intro{max-width:40rem;color:var(--sa-color-text-muted);margin:16px 0 0}.lede{font-size:20px;line-height:1.75;font-weight:500;max-width:40rem;margin:24px 0}.prose{max-width:40rem}.prose p{margin:0 0 24px}.sources-row{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;line-height:20px;margin-top:16px}.source-label{color:var(--sa-color-text-subtle)}.callout{margin:32px 0;max-width:40rem}.takeaways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px}.takeaway-card .num{font-size:14px;font-weight:700;color:var(--sa-color-text-brand)}.takeaway-card h3{font-size:20px;line-height:28px;margin:12px 0}.takeaway-card p{margin-bottom:0;color:var(--sa-color-text-muted)}
.diagram-wrap.sa-fig{container-type:inline-size;background:var(--sa-color-bg-surface);border:1px solid var(--sa-color-border-default);border-radius:var(--sa-radius-md);padding:24px;margin:32px 0}.diagram-title{font-size:16px;font-weight:700;line-height:28px;color:var(--sa-color-text-brand);margin:0 0 8px}.diagram-wrap svg{display:block;width:100%;height:auto;font-family:inherit}.diagram-wrap .diagram-caption{font-size:12px;line-height:20px;color:var(--sa-color-text-subtle);margin-top:12px;text-align:left}.flow-mobile{display:none;list-style:none;margin:20px 0;padding:0}.flow-mobile li{margin:0;text-align:center}.flow-step{display:block;font-size:16px;line-height:28px;padding:16px;border:1px solid var(--sa-color-border-strong);border-radius:var(--sa-radius-md);background:var(--sa-color-bg-subtle);overflow-wrap:anywhere}.flow-mobile li:first-child .flow-step,.flow-mobile li:last-child .flow-step{border-color:var(--sa-color-border-brand);background:var(--sa-color-bg-brandSubtle)}.flow-arrow{display:block;font-size:20px;line-height:32px;color:var(--sa-color-text-brand)}.flow-loop{font-size:14px;color:var(--sa-color-text-brand);text-align:center;margin:8px 0}
@container(max-width:719px){.diagram-wrap .diagram-desktop{display:none}.diagram-wrap .flow-mobile{display:block}}
.trend{padding:32px 0;border-bottom:1px solid var(--sa-color-border-default)}.trend:first-of-type{padding-top:0}.trend-label{font-size:12px;line-height:20px;letter-spacing:.08em;font-weight:700;color:var(--sa-color-text-brand)}.trend h3{font-size:24px;line-height:36px;margin:12px 0 24px}.trend-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px}.trend p{margin-bottom:16px}.trend h4{font-size:14px;line-height:20px;margin:0 0 12px;color:var(--sa-color-text-brand)}.trend-action{align-self:start;background:var(--sa-color-bg-subtle)}.trend-action p:last-child{margin:0}.trend .tension{font-size:14px;line-height:24px;color:var(--sa-color-text-subtle);border-top:1px solid var(--sa-color-border-default);padding-top:16px;margin:24px 0 0}
.toolbar{position:sticky;top:89px;z-index:12;background:var(--sa-color-bg-surface);padding:16px 0;border-bottom:1px solid var(--sa-color-border-default)}.searchrow{display:flex;gap:12px}.searchrow input{min-width:0;flex:1;background:var(--sa-color-bg-surface);color:var(--sa-color-text-default);border:1px solid var(--sa-color-border-control);border-radius:var(--sa-radius-md);padding:12px 16px;font-size:16px;line-height:24px}.filterrow{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.filterrow select{max-width:100%;min-height:40px;padding:8px 28px 8px 12px;border:1px solid var(--sa-color-border-control);border-radius:var(--sa-radius-md);background:var(--sa-color-bg-surface);color:var(--sa-color-text-default);font-size:14px;line-height:20px}.result-count{font-size:12px;line-height:20px;color:var(--sa-color-text-subtle);margin:12px 0 0}.library-note{font-size:14px;line-height:24px;color:var(--sa-color-text-subtle);margin:24px 0}.session{padding:40px 0 48px;border-bottom:1px solid var(--sa-color-border-default);scroll-margin-top:280px}.session-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:16px}.session-no{font-size:14px;font-weight:700;color:var(--sa-color-text-brand)}.session-time{font-size:12px;line-height:20px;color:var(--sa-color-text-subtle)}.badge.official{background:var(--sa-color-bg-muted);color:var(--sa-color-text-muted)}.session h3{font-size:24px;line-height:36px;margin:0}.speaker{font-size:16px;font-weight:700;margin:16px 0 0}.speaker span{font-weight:400;color:var(--sa-color-text-muted)}.official-title{font-size:14px;line-height:24px;color:var(--sa-color-text-subtle);margin:12px 0 0;max-width:40rem}.onsite-change{font-size:14px;margin-top:16px}.session-summary{font-size:16px;line-height:28px;max-width:40rem;margin:24px 0 0}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.tag{background:var(--sa-color-bg-subtle);color:var(--sa-color-text-subtle)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.gallery.three{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery figure{min-width:0;margin:0}.photo-button{display:block;border:0;padding:0;width:100%;position:relative;border-radius:var(--sa-radius-md);background:var(--sa-color-bg-dark)}.photo-button img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:var(--sa-radius-md)}.photo-button::after{content:'↗ 拡大';position:absolute;right:8px;bottom:8px;font-size:12px;line-height:20px;background:var(--sa-color-bg-brand);color:var(--sa-color-text-inverse);padding:4px 8px;border-radius:var(--sa-radius-sm)}.gallery figcaption{font-size:12px;line-height:20px;color:var(--sa-color-text-subtle);padding-top:12px}.gallery figcaption small{display:block;margin-top:4px;font-size:12px;overflow-wrap:anywhere}.session details{margin-top:24px;border-top:1px solid var(--sa-color-border-default)}.session summary,.method summary{font-size:14px;line-height:24px;font-weight:700;color:var(--sa-color-text-brand);padding:16px 4px}.detail-body{padding-bottom:4px}.points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:16px 0 32px}.point h4{font-size:18px;line-height:28px;margin:0 0 12px}.point p{font-size:16px;line-height:28px;margin:0}.evidence-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.evidence-link.sa-btn{font-size:12px;line-height:20px;padding:8px 12px}.takehome{margin-top:24px;max-width:40rem}.takehome b{display:block;font-size:14px;line-height:20px;color:var(--sa-color-text-brand);margin-bottom:12px}.caveat{font-size:14px;line-height:24px;color:var(--sa-color-text-subtle);max-width:40rem;margin:20px 0 0}.empty{padding:48px 24px;border:1px solid var(--sa-color-border-default);text-align:center}.schedule-table-wrap{margin:24px 0;padding:4px}.schedule-table-wrap>.schedule-table{min-width:740px;font-size:14px;line-height:24px}.schedule-table th{font-size:14px}.schedule-table td{vertical-align:top}.schedule-table td:first-child{white-space:nowrap;font-size:12px;line-height:24px}.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.action{border-top:3px solid var(--sa-color-border-brand)}.action .when{font-size:12px;line-height:20px;font-weight:700;color:var(--sa-color-text-brand)}.action h3{font-size:20px;line-height:28px;margin:16px 0}.action p{font-size:16px;line-height:28px;color:var(--sa-color-text-muted);margin-bottom:0}.closing{font-size:18px;line-height:32px;max-width:40rem;margin-top:32px}.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.method-grid h3{font-size:20px;line-height:28px;margin:0 0 16px}.method-grid p,.method-grid li{font-size:16px;line-height:28px;color:var(--sa-color-text-muted)}.method-grid ul{padding-left:24px}.method-grid li{margin-bottom:12px}.method details{border-top:1px solid var(--sa-color-border-default);margin-top:32px}
.footer{max-width:1200px;margin:auto;padding:40px 24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:32px;border-top:1px solid var(--sa-color-border-default);font-size:12px;line-height:20px;color:var(--sa-color-text-subtle)}.footer p{margin:0}dialog{width:min(1000px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--sa-color-border-default);border-radius:var(--sa-radius-lg);background:var(--sa-color-bg-surface);color:var(--sa-color-text-default)}dialog::backdrop{background:color-mix(in srgb,var(--sa-color-bg-dark) 85%,transparent)}.dialog-top{display:flex;align-items:start;justify-content:space-between;gap:16px;position:sticky;top:0;padding:24px;border-bottom:1px solid var(--sa-color-border-default);background:var(--sa-color-bg-surface);z-index:3}.dialog-top>div{min-width:0}.dialog-top h3{font-size:20px;line-height:28px;margin:0 0 8px}.dialog-top p{font-size:12px;line-height:20px;overflow-wrap:anywhere;margin:0;color:var(--sa-color-text-subtle)}.dialog-top button{flex-shrink:0}.dialog-body{padding:24px;overflow-wrap:anywhere}.dialog-body img{width:100%;height:auto}.dialog-body pre{font-family:var(--sa-font-family-sans);font-size:16px;line-height:28px;white-space:pre-wrap;background:var(--sa-color-bg-subtle);color:var(--sa-color-text-default);margin-bottom:0}.audio-note{font-size:14px;line-height:24px;padding:16px;background:var(--sa-color-bg-brandSubtle)}.back-to-top{position:fixed;right:16px;bottom:16px;z-index:15;background:var(--sa-color-bg-brand);color:var(--sa-color-text-inverse);font-size:12px;line-height:20px;min-height:40px;padding:10px 16px;text-decoration:none;border-radius:var(--sa-radius-md)}.nojs{padding:16px;background:var(--sa-color-bg-subtle)}.print-only{display:none}
@media(max-width:1100px){.layout{grid-template-columns:160px minmax(0,1fr);gap:32px}.topnav{gap:16px}.hero-grid{gap:32px}.hero h1{font-size:36px}.action-grid{grid-template-columns:minmax(0,1fr)}.gallery.three{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery.three figure:last-child{grid-column:1/-1;max-width:66%}.toolbar{position:static}.session{scroll-margin-top:112px}}
@media(max-width:900px){.layout{display:block}.rail{position:static;display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:48px;padding-bottom:24px;border-bottom:1px solid var(--sa-color-border-default)}.rail a{border:0}.rail .rail-sub,.rail-title,.rail-note{display:none}.hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}.hero h1{font-size:48px}.hero-lead{max-width:40rem}.hero-visual img{aspect-ratio:16/9}.topnav a{display:none}.trend-columns{gap:24px}.hero-date{display:none}}
@media(max-width:600px){.topbar{padding:20px 24px;gap:16px}.topnav button{font-size:12px;padding:8px 12px}.hero{padding-top:32px}.hero-top{display:block}.eyebrow{font-size:12px;letter-spacing:.04em}.hero-grid{margin-top:24px}.hero h1{font-size:32px;line-height:1.5;letter-spacing:0}.hero-footer{margin-top:24px;display:grid;gap:12px}.hero-footer strong{font-size:18px}.hero-actions{gap:12px}.hero-actions .sa-btn{flex:1;padding-inline:12px}.layout{padding-top:32px}.rail{font-size:12px;gap:0 16px;margin-bottom:32px}.rail a b{width:24px}.section{margin-bottom:56px}.section h2{font-size:24px;line-height:36px}.section-head{margin-bottom:24px}.lede{font-size:18px}.takeaways,.trend-columns,.points,.method-grid,.gallery,.gallery.three{grid-template-columns:minmax(0,1fr)}.gallery.three figure:last-child{grid-column:auto;max-width:none}.trend h3,.session h3{font-size:22px;line-height:32px}.trend-action{padding:24px}.searchrow{gap:8px}.searchrow input{padding-inline:12px}.searchrow button{padding-inline:12px}.filterrow{gap:8px}.filterrow select{width:100%}.filterrow button{width:100%}.session{padding:32px 0}.diagram-wrap.sa-fig{padding:20px}.dialog-top,.dialog-body{padding:16px}.dialog-top h3{font-size:18px}.dialog-top button{padding:8px}.dialog-body pre{padding:16px}.footer{display:grid;gap:24px;padding-bottom:80px}}
@media(max-width:360px){.topbar{position:static}.topnav{margin-left:auto}.hero-actions{display:grid;width:100%}.hero h1{font-size:30px}.rail{display:grid;grid-template-columns:minmax(0,1fr)}.diagram-wrap.sa-fig{padding:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
html{scroll-behavior:auto}
@media print{html{scroll-behavior:auto}.topbar,.rail,.toolbar,.back-to-top,.hero-actions,.no-print,dialog{display:none!important}.hero{padding:24px 0;background:var(--sa-color-bg-surface);break-after:page}.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:30px}.hero-visual img{max-height:260px}.layout{display:block;max-width:none;padding:0}.section{margin-bottom:32px}.section h2{font-size:24px}.session{padding:24px 0}.session[hidden]{display:block!important}.session summary{display:none}.session details:not([open])>*:not(summary){display:block!important}.gallery,.point,.takehome,.trend-action,.action,.diagram-wrap{break-inside:avoid}.photo-button::after{display:none}.diagram-wrap .diagram-desktop{display:block!important}.diagram-wrap .flow-mobile{display:none!important}.print-only{display:block}.schedule-table-wrap{overflow:visible}.schedule-table-wrap>.schedule-table{min-width:0;font-size:11px}.footer{padding-bottom:24px}.method details{display:none}}
