/* Canonical diagram stages and the same-source cards in the reader documents. */
.storyline-intro{margin:0 0 32px}.storyline-layer-navigation{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px}.storyline-layer-navigation a{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--border-line);padding:6px 10px;border-radius:4px;color:var(--text-secondary);font-size:12px;line-height:1.5;text-decoration:none!important}.storyline-layer-navigation a[aria-current]{background:var(--bg-subtle);color:var(--text-primary);border-color:var(--text-secondary);font-weight:700}.storyline-layer-navigation b{font-size:13px}.storyline-canonical-map{--layer-color:#565a5c;position:relative;margin:0;padding:18px 20px;border:1px solid var(--border-line);border-left:7px solid var(--layer-color);border-bottom:6px solid var(--layer-color);border-radius:6px;background:var(--bg-subtle);scroll-margin-top:140px}.storyline-canonical-map[data-layer=L2]{--layer-color:#9c9f9e}.storyline-canonical-map[data-layer=L3]{--layer-color:#e98300}.storyline-canonical-map>figcaption{display:flex;align-items:center;gap:13px;margin:0 0 20px!important;color:var(--text-primary)}.storyline-layer-number{font-size:34px;line-height:1;font-weight:800;letter-spacing:-2px}.storyline-canonical-map>figcaption>span{display:flex;flex-direction:column;gap:4px}.storyline-canonical-map>figcaption strong{font-size:20px;line-height:1.3}.storyline-canonical-map>figcaption>span>span{font-size:12px;line-height:1.5;color:var(--text-secondary)}
.storyline-canonical-nodes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px;list-style:none!important;margin:0!important;padding:0!important}.storyline-canonical-nodes>li{position:relative;display:flex;flex-direction:column;gap:7px;min-width:0;min-height:120px;margin:0!important;padding:12px 10px!important;border:1px solid var(--border-line);border-top:3px solid var(--layer-color);border-radius:5px;background:var(--bg-elevated);box-sizing:border-box;list-style:none!important}.storyline-canonical-nodes>li:before{content:none!important}.storyline-canonical-nodes>li:nth-child(5){grid-column:4;grid-row:2}.storyline-canonical-nodes>li:nth-child(6){grid-column:3;grid-row:2}.storyline-canonical-nodes>li:nth-child(7){grid-column:2;grid-row:2}.storyline-canonical-nodes>li>.storyline-node-link{display:flex;flex:1;flex-direction:column;gap:7px;min-width:0;height:auto;color:var(--text-primary)!important;text-decoration:none!important;box-sizing:border-box;overflow-wrap:anywhere}.storyline-canonical-nodes>li:hover,.storyline-canonical-nodes>li:focus-within,.storyline-canonical-nodes>li:has(>.storyline-node-link[aria-current]){border-color:var(--text-secondary);box-shadow:0 0 0 1px var(--text-secondary)}.storyline-node-label{font-size:12px;font-weight:700;line-height:1.2;color:var(--text-secondary)}.storyline-node-title{font-size:14px;line-height:1.5;font-weight:700;word-break:keep-all;overflow-wrap:anywhere}.storyline-node-subtitle{font-size:12px;line-height:1.6;color:var(--text-secondary)}.storyline-node-states{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.storyline-node-status{display:inline-block;padding:2px 5px;border:1px solid var(--border-line);border-radius:3px;font-size:12px;line-height:1.5;background:var(--bg-subtle);color:var(--text-secondary)}.storyline-node-status.bd-tgt{border-style:dashed}.storyline-node-status.bd-dec,.storyline-node-status.bd-unk{background:#fff2de;color:#815000;border-color:#d8b279}.storyline-flow-arrow{position:absolute;top:50%;right:-20px;width:16px;height:22px;transform:translateY(-50%);font-size:21px;line-height:1;color:var(--text-secondary);text-align:center;pointer-events:none}.storyline-flow-arrow:before{content:'→'}.storyline-canonical-nodes>li:nth-child(4)>.storyline-flow-arrow{top:auto;bottom:-25px;left:50%;right:auto;transform:translateX(-50%)}.storyline-canonical-nodes>li:nth-child(4)>.storyline-flow-arrow:before{content:'↓'}.storyline-canonical-nodes>li:nth-child(n+5)>.storyline-flow-arrow{right:auto;left:-20px}.storyline-canonical-nodes>li:nth-child(n+5)>.storyline-flow-arrow:before{content:'←'}.storyline-canonical-nodes>li:last-child>.storyline-flow-arrow{display:none}.storyline-flow-return{font-size:12px!important;color:var(--text-secondary);line-height:1.7!important;margin:16px 0 0!important;padding-top:10px;border-top:1px dashed var(--border-line)}.storyline-map-full{font-size:12px!important;line-height:1.7!important;margin:12px 0 0!important}.storyline-reading-note,.storyline-scope-note{font-size:12px!important;line-height:1.8!important;color:var(--text-secondary);margin:12px 0 0!important}.storyline-layer-transfer{display:flex;justify-content:space-between;gap:10px;padding:10px 8px;font-size:12px;line-height:1.7;color:var(--text-secondary)}
.storyline-stage-content{margin:18px 0 28px}.storyline-stage-content>.card{border:1px solid var(--border-line);border-left:4px solid #565a5c;background:var(--bg-elevated);border-radius:4px;padding:18px 20px}.storyline-stage-content[data-layer=L2]>.card{border-left-color:#9c9f9e}.storyline-stage-content[data-layer=L3]>.card{border-left-color:var(--color-primary)}.storyline-stage-content .ch{display:flex;gap:10px;flex-wrap:wrap;align-items:baseline;margin:0 0 12px;font-size:16px;font-weight:700;line-height:1.6}.storyline-stage-content .sid{font-size:13px;color:var(--text-secondary)}.storyline-stage-content .chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:14px}.storyline-stage-content .bd,.storyline-stage-content .cn,.storyline-stage-content .cm{display:inline-block;border:1px solid var(--border-line);border-radius:3px;padding:3px 7px;font-size:12px;line-height:1.6;color:var(--text-secondary);background:var(--bg-subtle)}.storyline-stage-content .bd-tgt{border-style:dashed}.storyline-stage-content .bd-dec,.storyline-stage-content .bd-unk{background:#fff2de;color:#815000;border-color:#d8b279}.storyline-stage-content p{font-size:14px;line-height:1.85;margin:12px 0}.storyline-stage-content .wt{padding:14px;background:var(--bg-subtle);border-radius:3px}.storyline-stage-content .iop{border-top:1px dashed var(--border-line);padding-top:12px}.storyline-stage-content .mut,.storyline-stage-content .nt{color:var(--text-secondary)}.storyline-stage-content .br{border-left:3px solid var(--border-line);padding-left:14px}.storyline-stage-content .storyline-sentence-ref{font-size:12px;line-height:1.5;white-space:nowrap;display:inline-block;margin-left:4px;text-underline-offset:3px}.storyline-stage-content .storyline-step-source{font-size:12px;margin-bottom:0}.storyline-stage-links{padding:14px 16px;border:1px solid var(--border-line);border-top:0;border-radius:0 0 4px 4px;background:var(--bg-subtle)}.storyline-stage-links>p{margin:0 0 8px;font-size:13px}.storyline-stage-links ul,.storyline-related-flow ul{display:flex;flex-wrap:wrap;gap:7px 14px;list-style:none!important;padding:0!important;margin:0!important}.storyline-stage-links li,.storyline-related-flow li{list-style:none!important;padding:0!important;margin:0!important;font-size:13px;line-height:1.8}.storyline-stage-links li:before,.storyline-related-flow li:before{content:none!important}.storyline-back-to-flow{font-size:12px!important}.storyline-related-flow{margin:14px 0;padding:12px 14px;border-left:3px solid var(--border-line);background:var(--bg-subtle)}.storyline-related-flow>p{font-size:12px!important;line-height:1.6!important;color:var(--text-secondary);font-weight:600;margin:0 0 6px!important}.storyline-related-flow a>span{font-size:12px;color:var(--text-secondary)}.storyline-research-link{margin:20px 0;padding:16px 18px;border:1px solid var(--border-line);background:var(--bg-subtle);border-radius:4px}.storyline-research-link p{font-size:13px;line-height:1.8;margin:8px 0}.storyline-research-status,.storyline-research-scope{color:var(--text-secondary)}.storyline-intro a:focus-visible,.storyline-stage-content a:focus-visible,.storyline-related-flow a:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:2px}
:root[data-theme=dark] .storyline-node-status.bd-dec,:root[data-theme=dark] .storyline-node-status.bd-unk,:root[data-theme=dark] .storyline-stage-content .bd-dec,:root[data-theme=dark] .storyline-stage-content .bd-unk{background:#302719;color:#f5bf76;border-color:#7c603b}
@media(max-width:767px){.storyline-intro{margin-bottom:26px}.storyline-layer-navigation{gap:5px;margin-bottom:12px}.storyline-layer-navigation a{padding:5px 7px}.storyline-canonical-map{padding:14px 12px;border-left-width:5px;border-bottom-width:5px}.storyline-canonical-map>figcaption{gap:10px;margin-bottom:16px!important}.storyline-layer-number{font-size:30px}.storyline-canonical-map>figcaption strong{font-size:18px}.storyline-canonical-map>figcaption>span>span{font-size:12px}.storyline-canonical-nodes{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 22px}.storyline-canonical-nodes>li{min-height:110px;padding:10px 9px!important;gap:5px}.storyline-canonical-nodes>li>.storyline-node-link{gap:5px}.storyline-node-title{font-size:14px}.storyline-canonical-nodes>li:nth-child(1){grid-column:1;grid-row:1}.storyline-canonical-nodes>li:nth-child(2){grid-column:2;grid-row:1}.storyline-canonical-nodes>li:nth-child(3){grid-column:2;grid-row:2}.storyline-canonical-nodes>li:nth-child(4){grid-column:1;grid-row:2}.storyline-canonical-nodes>li:nth-child(5){grid-column:1;grid-row:3}.storyline-canonical-nodes>li:nth-child(6){grid-column:2;grid-row:3}.storyline-canonical-nodes>li:nth-child(7){grid-column:2;grid-row:4}.storyline-canonical-nodes>li>.storyline-flow-arrow{top:50%;bottom:auto;left:auto;right:-19px;transform:translateY(-50%)}.storyline-canonical-nodes>li>.storyline-flow-arrow:before{content:'→'}.storyline-canonical-nodes>li:nth-child(2n)>.storyline-flow-arrow{top:auto;bottom:-23px;left:50%;right:auto;transform:translateX(-50%)}.storyline-canonical-nodes>li:nth-child(2n)>.storyline-flow-arrow:before{content:'↓'}.storyline-canonical-nodes>li:nth-child(3)>.storyline-flow-arrow{right:auto;left:-19px;top:50%;bottom:auto;transform:translateY(-50%)}.storyline-canonical-nodes>li:nth-child(3)>.storyline-flow-arrow:before{content:'←'}.storyline-canonical-nodes>li:nth-child(5)>.storyline-flow-arrow{right:-19px;left:auto;top:50%;bottom:auto;transform:translateY(-50%)}.storyline-canonical-nodes>li:nth-child(5)>.storyline-flow-arrow:before{content:'→'}.storyline-layer-transfer{gap:8px;padding:9px 4px;flex-wrap:wrap}.storyline-stage-content>.card{padding:14px 12px}.storyline-stage-content .ch{font-size:15px}.storyline-stage-content .wt{padding:12px}.storyline-stage-links{padding:12px}.storyline-stage-links ul{display:block}.storyline-stage-links li+li{margin-top:5px!important}}
@media print{:root,:root[data-theme=dark]{--bg-page:#fff;--bg-elevated:#fff;--bg-subtle:#f5f5f5;--text-primary:#111;--text-secondary:#333;--border-line:#999;--color-primary:#8a4900;color-scheme:light}.storyline-canonical-map{break-inside:avoid}.storyline-canonical-nodes>li{box-shadow:none!important}.storyline-stage-content>.card{break-inside:avoid}.storyline-stage-content p{font-size:10pt;line-height:1.6}.storyline-stage-content .storyline-sentence-ref{font-size:9pt}.storyline-node-status,.storyline-stage-content .bd,.storyline-stage-content .cn,.storyline-stage-content .cm{color:#111!important;background:#f4f4f4!important;border-color:#999!important}.storyline-back-to-flow,.storyline-layer-navigation{display:none}.storyline-related-flow{break-inside:avoid}.storyline-research-link{break-inside:avoid}}

/* Three stacked layer plates are the first reading surface. */
body[data-page="role-guides"] .content .lead{margin-bottom:12px}
body[data-page="role-guides"] .doc-article>h2#operate{margin-top:22px;margin-bottom:14px;font-size:21px;line-height:1.4}
.storyline-overview-plates{margin:0 0 24px}
.storyline-layer-plate{--plate-edge:var(--color-dark-gray);display:grid;grid-template-columns:80px minmax(0,1fr);min-height:96px;margin:0;border:1px solid var(--border-line);border-left:7px solid var(--plate-edge);border-bottom:4px solid var(--plate-edge);border-radius:5px;background:var(--bg-subtle);overflow-wrap:anywhere;break-inside:avoid}
.storyline-layer-plate[data-layer=L2]{--plate-edge:var(--text-secondary)}
.storyline-layer-plate[data-layer=L3]{--plate-edge:var(--color-primary)}
.storyline-plate-label{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:10px 9px;border-right:1px solid var(--border-line);color:var(--text-primary);font-size:13px;line-height:1.45;text-align:center;text-decoration:none!important;font-weight:600}
.storyline-plate-label b,.storyline-plate-label strong:first-child{font-size:27px;line-height:1.15;letter-spacing:-1px}
.storyline-plate-body{padding:11px 14px;min-width:0}
.storyline-plate-body>header,.storyline-plate-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.storyline-plate-body h3,.storyline-plate-body strong{font-size:16px;line-height:1.4;margin:0}
.storyline-plate-body p{font-size:13px!important;line-height:1.5!important;margin:4px 0 7px!important;color:var(--text-secondary)}
.storyline-plate-body .storyline-plate-open,.storyline-plate-heading>a{font-size:12px;white-space:nowrap}
.storyline-plate-steps,.storyline-plate-summary{display:flex;flex-wrap:wrap;gap:5px 8px;list-style:none!important;padding:0!important;margin:7px 0 0!important}
.storyline-plate-steps>li,.storyline-plate-summary>li{font-size:12px;line-height:1.6;margin:0!important;padding:0!important;list-style:none!important}
.storyline-plate-steps>li:before,.storyline-plate-summary>li:before{content:none!important}
.storyline-plate-steps>li:not(:last-child):after,.storyline-plate-summary>li:not(:last-child):after{content:'→';margin-left:8px;color:var(--text-secondary)}
.storyline-plate-steps a,.storyline-plate-summary a{color:var(--text-primary);text-decoration:none!important;border-bottom:1px solid var(--border-line)}
.storyline-plate-summary{display:none}
.storyline-overview-plates .storyline-layer-transfer{padding:7px 7px;gap:8px;font-size:12px;line-height:1.5;flex-wrap:nowrap}
.storyline-overview-plates .storyline-layer-transfer>span:last-child{text-align:right}
.storyline-overview-return,.storyline-overview-note{font-size:12px!important;line-height:1.6!important;margin:8px 0!important;color:var(--text-secondary)}
.storyline-entry-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 16px;border:1px solid var(--border-line);border-left:4px solid var(--color-primary);background:var(--bg-subtle);padding:13px 16px;margin:18px 0;font-size:13px;line-height:1.6;color:var(--text-primary);text-decoration:none!important}
.storyline-entry-strip span{font-size:13px}.storyline-entry-strip small{font-size:12px;color:var(--text-secondary)}
.storyline-role-entry{font-size:13px!important}
.storyline-role-flow{margin:24px 0 18px}
.storyline-role-table,.storyline-role-summary-table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:0;font-size:12px;line-height:1.55;color:var(--text-primary)}
.storyline-role-table caption,.storyline-role-summary-table caption{text-align:left;font-size:15px;font-weight:700;line-height:1.6;margin:0 0 10px}
.storyline-role-table th,.storyline-role-table td,.storyline-role-summary-table th,.storyline-role-summary-table td{padding:9px 7px;border:1px solid var(--border-line);vertical-align:top;word-break:normal;overflow-wrap:anywhere;text-align:left}
.storyline-role-table th,.storyline-role-summary-table th{font-weight:600;background:var(--bg-subtle)}
.storyline-role-table th:first-child{width:105px}.storyline-role-summary-table th:first-child{width:130px}
.storyline-role-table td p,.storyline-role-summary-table td p{font-size:12px!important;line-height:1.55!important;margin:3px 0!important}
.storyline-role-primary{background:var(--bg-subtle);font-weight:600}
.storyline-role-table .storyline-role-primary strong,.storyline-role-table .storyline-role-participant strong{font-size:12px}
.storyline-role-table a,.storyline-role-summary-table a{font-size:12px}
.storyline-role-table .storyline-role-extra{display:block;margin-top:6px;font-weight:400}
.storyline-role-legend,.storyline-role-boundary,.storyline-role-note,.storyline-measurement-strip{font-size:12px!important;line-height:1.75!important;margin:10px 0!important;color:var(--text-secondary)}
.storyline-role-stages{display:none}
.storyline-role-alternative{margin-top:14px;border:1px solid var(--border-line);padding:10px 12px;font-size:13px;line-height:1.75}
.storyline-role-alternative summary{font-weight:600;cursor:pointer}
.storyline-role-summary-table ul{list-style:none!important;margin:0!important;padding:0!important}
.storyline-role-summary-table li{list-style:none!important;margin:4px 0!important;padding:0!important;font-size:12px;line-height:1.6}
.storyline-role-summary-table li:before{content:none!important}
.storyline-role-lanes{margin:18px 0}
.storyline-company-state{font-size:12px!important;line-height:1.6!important;background:var(--bg-subtle);border:1px solid var(--border-line);padding:3px 6px;border-radius:3px}
.storyline-stage-links ul,.storyline-related-flow ul{display:block}
.storyline-stage-links li,.storyline-related-flow li{margin:7px 0!important}
.storyline-connection-context,.storyline-related-context{display:block;color:var(--text-secondary);font-size:12px;line-height:1.65}
.storyline-measurement-section{margin:24px 0}.storyline-measurement-section h2{margin-top:32px}
.storyline-overview-plates a:focus-visible,.storyline-entry-strip:focus-visible,.storyline-role-flow a:focus-visible,.storyline-role-lanes a:focus-visible,.storyline-role-alternative summary:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}
@media(max-width:767px){
 body[data-page="role-guides"] .content{padding-top:22px}
 body[data-page="role-guides"] .content .page-title{font-size:27px;line-height:1.35;margin-bottom:10px}
 body[data-page="role-guides"] .content .lead{font-size:15px;line-height:1.6;margin-top:0;margin-bottom:12px}
 body[data-page="role-guides"] .doc-article>h2#operate{font-size:18px;line-height:1.45;margin-top:18px;margin-bottom:12px}
 .storyline-layer-plate{grid-template-columns:64px minmax(0,1fr);min-height:94px;border-left-width:5px;border-bottom-width:4px}
 .storyline-plate-label{font-size:12px;padding:8px 6px;gap:2px}
 .storyline-plate-label b,.storyline-plate-label strong:first-child{font-size:24px}
 .storyline-plate-body{padding:9px 10px}
 .storyline-plate-body h3,.storyline-plate-body strong{font-size:15px;line-height:1.4}
 .storyline-plate-body p{font-size:12px!important;line-height:1.5!important;margin:4px 0!important}
 .storyline-plate-steps{display:none}.storyline-plate-summary{display:flex;gap:4px 6px;margin-top:5px!important}
 .storyline-plate-summary>li{font-size:12px}.storyline-plate-summary>li:not(:last-child):after{margin-left:6px}
 .storyline-overview-plates .storyline-layer-transfer{padding:6px 2px;font-size:12px;line-height:1.5}
 .storyline-overview-plates .storyline-layer-transfer>span{max-width:52%}
 .storyline-role-table{display:none}
 .storyline-role-stages{display:block;list-style:none!important;margin:0!important;padding:0!important}
 .storyline-role-stages>li{list-style:none!important;margin:0 0 16px!important;padding:12px 14px!important;border:1px solid var(--border-line);border-left:4px solid var(--color-primary);background:var(--bg-subtle);position:relative}
 .storyline-role-stages>li:before{content:none!important}
 .storyline-role-stages>li:not(:last-child):after{content:'↓';display:block;position:absolute;bottom:-19px;left:18px;color:var(--text-secondary);font-size:15px}
 .storyline-role-stages h4,.storyline-role-stages h3{font-size:15px!important;line-height:1.5!important;margin:0 0 8px!important}
 .storyline-role-stages p,.storyline-role-stages dd,.storyline-role-stages dt{font-size:13px!important;line-height:1.75!important;margin:4px 0!important}
 .storyline-role-summary-table{display:block;table-layout:auto}
 .storyline-role-summary-table thead{display:none}
 .storyline-role-summary-table tbody{display:block}
 .storyline-role-summary-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 12px;border:1px solid var(--border-line)}
 .storyline-role-summary-table tbody th{display:block;width:auto;grid-column:1/-1;border:0;border-bottom:1px solid var(--border-line)}
 .storyline-role-summary-table td{display:block;border:0;border-right:1px solid var(--border-line);padding:8px}
 .storyline-role-summary-table td:last-child{border-right:0}
 .storyline-entry-strip{justify-content:flex-start;padding:12px;gap:6px 10px;font-size:12px}
}
@media print{
 .storyline-layer-plate{break-inside:avoid}.storyline-overview-plates{break-inside:avoid}
 .storyline-plate-steps{display:flex}.storyline-plate-summary{display:none}
 .storyline-role-table,.storyline-role-summary-table{display:table;table-layout:fixed;font-size:9pt;width:100%;min-width:0}
 .storyline-role-table th,.storyline-role-table td{padding:5px 4px;font-size:9pt;line-height:1.4;border-color:var(--border-line)}
 .storyline-role-table th:first-child{width:85px}.storyline-role-table thead{display:table-header-group}
 .storyline-role-table tr{break-inside:avoid}.storyline-role-stages,.storyline-role-alternative{display:none!important}
 .storyline-role-summary-table thead{display:table-header-group}.storyline-role-summary-table tbody{display:table-row-group}
 .storyline-role-summary-table tr{display:table-row;break-inside:avoid}.storyline-role-summary-table td,.storyline-role-summary-table tbody th{display:table-cell;width:auto}
 .storyline-layer-plate,.storyline-role-primary{background:var(--bg-subtle)!important;color:var(--text-primary)!important}
}

.storyline-summary-note{font-size:12px!important;line-height:1.6!important;margin:6px 0!important;color:var(--text-secondary)}
.storyline-role-action,.storyline-role-states,.storyline-role-boundary{display:block}
.storyline-role-kind{font-weight:700}.storyline-role-stage-chip{display:block;margin:5px 0;font-size:12px;line-height:1.6}
.storyline-role-states{margin-top:4px;font-size:12px;font-weight:400;color:var(--text-secondary)}
.operation-role-work .storyline-related-flow{padding:0;margin:0;border:0;background:none}
.operation-role-work .storyline-related-flow>p{display:none}

.storyline-role-table th,.storyline-role-table td,.storyline-role-summary-table th,.storyline-role-summary-table td{white-space:normal}
.storyline-role-table thead th a>span{display:block;margin-top:3px}
@media(max-width:767px){.storyline-role-summary-table td:before{content:attr(data-layer);display:block;font-weight:700;font-size:12px;margin-bottom:6px;color:var(--text-secondary)}}

/* The mobile menu button is part of the fixed header, including anchor journeys. */
@media(max-width:1023px){.doc-article [id],.doc-article h2,.doc-article h3,.storyline-canonical-map{scroll-margin-top:172px}}
@media print{.skip-link{display:none!important}}

/* A stage is one card: its primary route and company-status route share
   an intrinsic-height flex container, never two full-height anchors. */
.storyline-layer-maps{display:grid;gap:24px}
.storyline-company-status{display:inline-block;align-self:flex-start;max-width:100%;box-sizing:border-box;padding:3px 6px;border:1px solid var(--border-line);border-radius:3px;background:var(--bg-subtle);color:var(--text-secondary);font-size:12px;line-height:1.6;overflow-wrap:anywhere;text-underline-offset:3px}
.storyline-canonical-map a:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:2px}

/* The selected architectural layer scene; source stays in the document model. */
.storyline-explorer{--flow-field:var(--bg-subtle);--flow-edge:#8b8f91;--flow-accent:#8a4900;--flow-hover:#fff2df;position:relative;container-type:inline-size;border:1px solid var(--border-line);border-radius:8px;overflow:clip;background:var(--bg-page);margin:24px 0;scroll-margin-top:145px}
.flow-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px;border-bottom:1px solid var(--border-line)}
.flow-layer-tabs,.flow-view-tabs{display:flex;flex-wrap:wrap;gap:4px}
.flow-toolbar button{min-height:40px;padding:8px 12px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}
.flow-layer-tabs button[aria-pressed=true]{background:var(--text-primary);color:var(--bg-page)}
.flow-toolbar button:hover:not([aria-pressed=true]){background:var(--bg-subtle);border-color:var(--border-line)}
.flow-view-tabs{border:1px solid var(--border-line);padding:2px;border-radius:4px}
.flow-view-tabs button{min-height:32px;padding:4px 10px}
.flow-view-tabs button[aria-pressed=true]{background:var(--flow-hover);color:var(--flow-accent);font-weight:600}
.flow-toolbar button:focus-visible,.flow-gap-control input:focus-visible,.flow-flat-map a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
.storyline-explorer .flow-scene-wrap{margin:0;padding:20px 0 0;background:var(--flow-field)}
.storyline-explorer .storyline-scene{display:block;width:100%;height:auto;max-height:680px;margin:0 auto;overflow:visible}
.storyline-explorer .flow-scene-wrap figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:16px 24px;font-size:12px;line-height:1.7;color:var(--text-secondary);border-top:1px solid var(--border-line)}
.flow-gap-control{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 24px;background:var(--flow-field);border-top:1px solid var(--border-line);font-size:12px;color:var(--text-secondary)}
.flow-gap-control input{accent-color:var(--flow-accent);width:140px;height:24px;cursor:ew-resize}
.flow-flat-map{padding:24px;display:grid;gap:16px;background:var(--flow-field)}
.flow-flat-layer{padding:16px;background:var(--bg-page);border:1px solid var(--border-line);border-left:3px solid var(--flow-edge);border-radius:4px;min-width:0}
.flow-flat-layer.is-selected{border-color:var(--flow-accent)}
.doc-article .flow-flat-layer h3{font-size:16px;line-height:1.6;margin:0 0 12px}
.flow-flat-layer ol,.flow-flat-layer ul,.flow-flat-steps{display:flex;flex-wrap:wrap;gap:8px;list-style:none!important;margin:0!important;padding:0!important}
.flow-flat-layer li{margin:0!important;min-width:0}
.flow-flat-layer a[data-flow-step]{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--border-line);border-radius:4px;color:var(--text-primary);background:var(--bg-subtle);font-size:13px;line-height:1.6;text-decoration:none}
.flow-flat-layer a.is-active{border-color:var(--flow-accent);background:var(--flow-hover);box-shadow:0 0 0 1px var(--flow-accent)}
.flow-selection-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.storyline-step-index{border-top:1px solid var(--border-line);border-bottom:1px solid var(--border-line);padding:14px 0;margin:24px 0}
.storyline-step-index>summary{cursor:pointer;font-size:14px;font-weight:600;line-height:1.7}
.storyline-step-index[open]>summary{margin-bottom:16px}
.flow-detail-dialog{--flow-card-width:366px;--flow-edge:#8b8f91;--flow-accent:#8a4900;--flow-hover:#fff2df;position:fixed;inset:auto;margin:0;width:var(--flow-card-width);max-width:calc(100vw - 32px);max-height:min(620px,calc(100dvh - 100px));padding:0;border:1px solid var(--flow-edge);border-radius:6px;background:var(--bg-page);color:var(--text-primary);box-shadow:0 16px 60px #1a1a1a26;z-index:170;overflow:hidden;font:inherit;overscroll-behavior:contain}
.flow-detail-dialog[open]{display:flex;flex-direction:column}
.flow-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;border-bottom:1px solid var(--border-line);padding:10px 16px;background:var(--flow-hover)}
.flow-dialog-kicker{font-size:11px;letter-spacing:.04em;color:var(--flow-accent);font-weight:600}
.flow-dialog-header button{display:flex;gap:8px;align-items:center;min-height:36px;border:0;background:none;color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer;padding:4px 8px}
.flow-dialog-header button span{font-size:20px;line-height:1}
.flow-dialog-header button:focus-visible,.flow-detail-dialog a:focus-visible,.flow-detail-dialog summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
.flow-dialog-content{overflow:auto;overscroll-behavior:contain;padding:20px;min-height:0;scrollbar-width:thin;font-size:13px;line-height:1.8}
.flow-dialog-content .flow-detail-title{font-size:23px;line-height:1.4;font-weight:600;margin:0 0 12px;letter-spacing:-.04em;color:var(--text-primary)}
.flow-dialog-content .flow-detail-title:focus{outline:none}
.flow-dialog-content p{margin:12px 0;line-height:1.8;font-size:13px}
.flow-detail-status{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap}
.flow-detail-status span,.flow-detail-status a{display:inline-block;font-size:11px;line-height:1.7;padding:2px 6px;border:1px solid var(--border-line);border-radius:3px;background:var(--bg-subtle);color:var(--text-primary);text-decoration:none}
.flow-detail-status .cn,.flow-detail-status .cm{border-color:var(--color-primary)}
.flow-dialog-content .flow-detail-fields{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;margin:20px 0;padding-top:16px;border-top:1px solid var(--border-line)}
.flow-detail-fields dt{font-weight:600;font-size:12px}
.flow-detail-fields dd{margin:0;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.flow-detail-conditions{font-size:12px;line-height:1.8;background:var(--bg-subtle);border-left:2px solid var(--flow-edge);padding:12px;margin:16px 0}
.flow-detail-conditions p{font-size:12px;margin:0 0 10px}
.flow-detail-conditions p:last-child{margin:0}
.flow-detail-conditions summary{cursor:pointer;font-weight:600}
.flow-detail-links{padding-top:12px;border-top:1px solid var(--border-line);font-size:12px}
.flow-detail-links ul{margin:8px 0;padding-left:18px}
.flow-detail-links a{color:var(--text-primary);text-underline-offset:3px}
.flow-dialog-content a.flow-body-link{display:flex;align-items:center;justify-content:space-between;padding:12px;margin-top:16px;min-height:44px;text-decoration:none;background:var(--text-primary);color:var(--bg-page);border-radius:3px;font-size:13px;font-weight:600}
.flow-connector{display:none;position:fixed;inset:0;pointer-events:none;z-index:160;width:100vw;height:100vh;overflow:visible}
.flow-connector.is-visible{display:block}
.flow-connector path{stroke:var(--color-primary);stroke-width:1;fill:none}
.flow-connector circle{fill:var(--color-primary);stroke:var(--bg-page);stroke-width:2}
.flow-detail-dialog::backdrop{background:#1a1a1a35;backdrop-filter:blur(1px)}
.flow-detail-dialog.is-sheet{inset:auto 0 0;left:0!important;top:auto!important;width:100%;max-width:100%;max-height:min(78dvh,760px);border-radius:16px 16px 0 0;border-bottom:0;box-shadow:0 -12px 60px #1a1a1a26;padding-bottom:env(safe-area-inset-bottom)}
.flow-detail-dialog.is-sheet .flow-dialog-header{padding:12px 16px}
.flow-detail-dialog.is-sheet .flow-dialog-header button{min-height:44px}
.flow-detail-dialog.is-sheet .flow-dialog-content{padding:20px 24px 24px}
:root[data-theme=dark] .storyline-explorer,:root[data-theme=dark] .flow-detail-dialog{--flow-field:var(--bg-subtle);--flow-edge:#858b8f;--flow-accent:#ffb454;--flow-hover:#3b3023}
:root[data-theme=dark] .flow-connector path{stroke:#ffb454}
:root[data-theme=dark] .flow-connector circle{fill:#ffb454}
@container(max-width:660px){.flow-toolbar{padding:12px;gap:10px}.flow-layer-tabs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.flow-layer-tabs button{font-size:12px;padding:8px 4px}.flow-view-tabs{margin-left:auto}.storyline-explorer .flow-scene-wrap figcaption{padding:12px 16px;font-size:11px}.flow-gap-control{padding:12px 16px}.flow-flat-map{padding:16px}.flow-flat-layer{padding:12px}.flow-flat-layer ol,.flow-flat-layer ul,.flow-flat-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.flow-flat-layer a[data-flow-step]{height:100%;font-size:12px;padding:8px;word-break:keep-all;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:no-preference){.flow-detail-dialog.is-sheet[open]{animation:flow-sheet-in .18s ease-out}@keyframes flow-sheet-in{from{transform:translateY(24px);opacity:.6}to{transform:translateY(0);opacity:1}}}
@media print{.flow-toolbar,.flow-gap-control,.flow-detail-dialog,.flow-connector,.flow-flat-map,.flow-selection-status{display:none!important}.storyline-explorer{overflow:visible;break-inside:avoid;border-color:#aaa;--flow-field:white;--flow-edge:#777;--flow-accent:#333;--flow-hover:white}.storyline-explorer .storyline-scene{display:block!important;max-height:150mm}.storyline-explorer .flow-scene-wrap{background:white}.storyline-explorer .flow-scene-wrap figcaption{color:#222}.storyline-step-index{break-inside:auto}.storyline-step-index>.storyline-layer-maps,.storyline-step-index>.storyline-canonical-map{display:block!important}}

.flow-scene-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:var(--flow-field)}
.flow-scene-meta p{font-size:12px!important;line-height:1.7!important;color:var(--text-secondary);margin:0!important}
.flow-scene-meta button{flex-shrink:0;min-height:40px;padding:8px;border:0;background:transparent;color:var(--text-secondary);font:inherit;font-size:12px;cursor:pointer}
.flow-scene-meta button:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
.flow-gap-control output{display:none}.flow-gap-control>span{font-size:11px;margin-left:auto}
.flow-dialog-content .flow-detail-eyebrow{font-size:11px;color:var(--text-secondary);margin-top:0}
.flow-dialog-content .storyline-company-correspondence{font-size:12px;background:var(--bg-subtle);padding:10px}
.flow-dialog-content .storyline-sentence-ref{font-size:10px;color:var(--text-secondary);margin-left:4px;white-space:nowrap}
.flow-detail-status .bd,.flow-detail-status .cn,.flow-detail-status .cm{max-width:100%;white-space:normal}
@container(max-width:660px){.flow-scene-meta{padding:12px 16px;gap:8px}.flow-scene-meta p{font-size:11px!important}.flow-gap-control>span{display:none}.flow-gap-control{justify-content:flex-start}.flow-flat-layer>p{font-size:12px}}
@media print{.flow-scene-meta button{display:none!important}}

.flow-dialog-footer{flex-shrink:0;padding:12px 20px;border-top:1px solid var(--border-line);background:var(--bg-page)}
.flow-dialog-footer .flow-body-link{display:block;padding:12px;min-height:44px;text-decoration:none;background:var(--text-primary);color:var(--bg-page);border-radius:3px;font-size:13px;line-height:1.6;font-weight:600}
.flow-dialog-footer a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}

/* Site palette for the selected layer scene. These selectors intentionally
   outrank the SVG's preserved prototype styles; only paint is overridden. */
.storyline-explorer{--flow-line:#7b8083;--flow-ink:var(--color-dark-gray);--flow-tint:#eceeef;--flow-rim:#fafafa;--flow-side:#e6e8e9;--flow-haze:#e5e7e8}
:root[data-theme=dark] .storyline-explorer{--flow-line:#a4aaae;--flow-ink:var(--text-primary);--flow-tint:#373c3f;--flow-rim:#363b3e;--flow-side:#303538;--flow-haze:#3b3e40}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) text{fill:var(--text-primary)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plane{--accent:var(--flow-line);--tint:var(--flow-tint)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plane.is-selected{--accent:var(--flow-accent);--tint:var(--flow-hover)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .surface{stroke:var(--flow-edge)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plane.is-selected .surface{stroke:var(--flow-accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plate-edge{fill:var(--flow-rim);stroke:var(--flow-edge)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plate-edge.side{fill:var(--flow-side)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plate-lip,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-hairline{stroke:var(--bg-page)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plate-shadow{fill:var(--color-dark-gray)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .grid,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .circuit.back,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .shaft,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .leader{stroke:var(--flow-line)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .terminal{stroke:var(--bg-page)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-surface{stroke:var(--accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-side{fill:var(--flow-side);stroke:var(--flow-edge)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-content{stroke:var(--flow-ink)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-content .white{fill:var(--flow-rim)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-label{stroke:var(--flow-field)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-number,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plate-code,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .layer-number,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .layer-sub,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .layer-steps,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .flow-caption,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .diagram-caption{fill:var(--text-secondary)!important}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .plane.is-selected .layer-title{fill:var(--flow-accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .module-link:hover .node-surface,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .module-link:focus-visible .node-surface,:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .module-link.is-active .node-surface{fill:var(--flow-hover);stroke:var(--flow-accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .module-link:focus-visible .node-label{fill:var(--flow-accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .flow-thread{stroke:var(--flow-accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .flow-thread.return{stroke:var(--flow-line)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .flow-dot{fill:var(--color-primary);stroke:var(--bg-page)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-plate-glass"] stop:first-child{stop-color:var(--bg-page)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-plate-glass"] stop:nth-child(2){stop-color:var(--flow-rim)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-plate-glass"] stop:last-child{stop-color:var(--flow-side)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-node-glass"] stop:first-child{stop-color:var(--bg-page)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-node-glass"] stop:last-child{stop-color:var(--flow-rim)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-ambient"] stop{stop-color:var(--flow-haze)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-ground"] stop{stop-color:var(--flow-line)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-flow-down"] path{stroke:var(--flow-accent)}
:root[data-theme] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) [id$="-flow-up"] path{stroke:var(--flow-line)}
:root[data-theme=dark] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .surface{fill:var(--bg-subtle)}
:root[data-theme=dark] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .node-surface{fill:var(--flow-rim)}
:root[data-theme=dark] .storyline-explorer :is(#flow-explorer-scene,#canonical-flow-scene) .module-link.is-active .node-surface{fill:var(--flow-hover);stroke:var(--flow-accent)}
@media print{:root[data-theme] .storyline-explorer{--flow-field:#fff;--flow-line:#777;--flow-ink:#333;--flow-tint:#eee;--flow-rim:#fafafa;--flow-side:#e6e6e6;--flow-haze:#eee;--flow-accent:#333;--flow-hover:#f4f4f4;--flow-edge:#777}}
