.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:BIZ UDPGothic,BIZ UDGothic,Yu Gothic UI,YuGothic,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;color:#223047;background:#f5f7fa;-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100%}.app-header{display:flex;align-items:center;gap:16px;padding:8px 16px;background:#1f3864;color:#fff;flex-shrink:0;min-height:52px}.header-titles{min-width:0}.header-title{margin:0;font-size:15.5px;font-weight:800;line-height:1.3}.header-desc{margin:2px 0 0;font-size:11px;color:#ccd8ee;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.hdr-btn{font-family:inherit;font-size:12px;font-weight:700;color:#1f3864;background:#fff;border:1px solid #b9c6dd;border-radius:4px;padding:6px 12px;cursor:pointer}.hdr-btn:hover:enabled{background:#eaf1fb}.hdr-btn:disabled{opacity:.6;cursor:default}.hdr-link{color:#fff;font-size:12px;margin-left:4px}.app-body{flex:1;display:flex;min-height:0}.sidebar{width:228px;flex-shrink:0;background:#fff;border-right:1px solid #dde3ea;overflow-y:auto;padding:12px 10px 16px}.sidebar-brand-title{font-size:13px;font-weight:800;color:#1f3864;line-height:1.35}.sidebar-brand-sub{font-size:10px;color:#7a8699;margin-top:2px;line-height:1.4}.sidebar-group{margin-top:14px}.sidebar-category{font-size:10.5px;font-weight:800;color:#7a8699;letter-spacing:.12em;border-bottom:1px solid #e6ebf2;padding:0 4px 4px}.sidebar-list{list-style:none;margin:6px 0 0;padding:0}.sidebar-item{display:block;width:100%;text-align:left;background:none;border:none;font-family:inherit;font-size:12.5px;line-height:1.4;color:#2b3648;padding:7px 8px;border-radius:5px;cursor:pointer}.sidebar-item:hover{background:#eef2f8}.sidebar-item.is-active{background:#dae3f3;color:#1f3864;font-weight:700}.sidebar-foot{margin-top:18px;padding:0 4px;font-size:10.5px;color:#8a94a6;line-height:1.7}.canvas-wrap{flex:1;min-width:0;position:relative}.react-flow{background:#f5f7fa}.sidebar-group.cat-intro .sidebar-category{color:#1f3864;border-bottom-color:#1f3864}.sidebar-group.cat-intro .sidebar-item{color:#1f3864;font-weight:700}.sidebar-group.cat-catalog .sidebar-category{color:#1f3864}.sidebar-group.cat-mapview .sidebar-category{color:#2e75b6}.sidebar-group.cat-chartview .sidebar-category{color:#548235}.sidebar-group.cat-tableview .sidebar-category{color:#6b7280}.page-scroll{position:absolute;inset:0;overflow:auto;background:#f5f7fa}.catalog-page{min-width:1000px;padding:14px 18px 22px;background:#f5f7fa}.cat-titlebar{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 10px;padding-bottom:8px;border-bottom:2px solid #dfe5ee}.cat-media-chip{font-size:11px;font-weight:800;color:#fff;background:#7f7f7f;border-radius:3px;padding:3px 9px;flex:none}.media-map .cat-media-chip{background:#2e75b6}.media-chart .cat-media-chip{background:#548235}.media-table .cat-media-chip{background:#7f7f7f}.cat-media-chip.is-index{background:#1f3864}.cat-media-chip.is-intro{background:#1f3864;letter-spacing:.06em}.cat-title{margin:0;font-size:17px;font-weight:800;color:#1f3864;line-height:1.3}.cat-lead{margin:0;font-size:11.5px;color:#5c6a80;line-height:1.5;flex:1 1 320px}.cat-hero{display:grid;grid-template-columns:452px minmax(0,1fr);gap:14px;margin-top:12px;align-items:start}.cat-figure{margin:0;background:#fff;border:1px solid #dde3ea;border-top:3px solid #7f7f7f;border-radius:6px;padding:9px 11px 10px}.media-map .cat-figure{border-top-color:#2e75b6}.media-chart .cat-figure{border-top-color:#548235}.cat-figure-head{font-size:10.5px;font-weight:800;color:#7a8699;letter-spacing:.08em;margin-bottom:6px}.cat-figure-body{display:flex;justify-content:center;background:#fbfcfe;border:1px solid #eef1f6;border-radius:4px;padding:6px}.sample-svg{display:block;width:100%;height:auto}.cat-figure-body.is-map .sample-svg{max-width:416px}.cat-figure-cap{margin-top:7px;font-size:10.5px;line-height:1.65;color:#5c6a80}.cat-hero-main{display:flex;flex-direction:column;gap:12px;min-width:0}.cat-block,.cat-card{background:#fff;border:1px solid #dde3ea;border-radius:6px;padding:10px 13px 12px}.cat-h{display:flex;align-items:baseline;gap:10px;margin:0 0 8px;font-size:12px;font-weight:800;color:#1f3864;line-height:1.3;padding-bottom:5px;border-bottom:1px solid #e6ebf2}.cat-h-link{margin-left:auto;font-family:inherit;font-size:10.5px;font-weight:800;color:#1f3864;background:#eef2fa;border:1px solid #b9c6dd;border-radius:3px;padding:2px 8px;cursor:pointer;flex:none}.cat-h-link:hover{background:#1f3864;color:#fff}.cat-p{margin:0 0 8px;font-size:12px;line-height:1.85;color:#2b3648}.cat-p:last-child{margin-bottom:0}.cat-p.sm{font-size:11px;line-height:1.75;color:#46536a}.cat-caution{margin:4px 0 0;font-size:11.5px;line-height:1.8;color:#5a4500;background:#fff8e5;border-left:3px solid #bf9000;border-radius:0 4px 4px 0;padding:7px 10px}.cat-caution b{display:block;color:#8a6a00;font-size:11px;margin-bottom:2px}.type-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.type-badge{border:1.6px solid #dfe3e9;border-radius:6px;padding:7px 9px 8px;background:#f4f5f7}.type-badge-key{display:block;font-size:14px;font-weight:800;line-height:1.2;font-family:SF Mono,Consolas,Menlo,monospace}.type-badge-desc{display:block;font-size:10px;line-height:1.45;margin-top:3px}.type-badge-mark{display:inline-block;margin-top:5px;font-size:9.5px;font-weight:800;border-radius:3px;padding:1.5px 6px}.type-badge.is-off{opacity:.55}.type-badge.is-off .type-badge-key,.type-badge.is-off .type-badge-desc{color:#98a1af}.type-badge.is-off .type-badge-mark{background:#e6e9ee;color:#98a1af}.media-map .type-badge.is-on{border-color:#2e75b6;background:#eaf1fb}.media-map .type-badge.is-on .type-badge-key{color:#1c4e79}.media-map .type-badge.is-on .type-badge-mark{background:#2e75b6;color:#fff}.media-chart .type-badge.is-on{border-color:#548235;background:#e2efda}.media-chart .type-badge.is-on .type-badge-key{color:#24380f}.media-chart .type-badge.is-on .type-badge-mark{background:#548235;color:#fff}.media-table .type-badge.is-on{border-color:#7f7f7f;background:#eee}.media-table .type-badge.is-on .type-badge-key{color:#3f3f3f}.media-table .type-badge.is-on .type-badge-mark{background:#6b7280;color:#fff}.type-badge.is-on .type-badge-desc{color:#46536a}.two-note{margin:9px 0 0;font-size:11.5px;line-height:1.75;color:#173a5c;background:#eaf1fb;border:1px solid #b9d0e8;border-radius:4px;padding:7px 10px}.cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;align-items:start}.def-row{display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;padding:6px 0;border-bottom:1px dashed #e6ebf2}.def-row:last-child{border-bottom:none}.def-label{font-size:10.5px;font-weight:800;color:#7a8699;line-height:1.6}.def-value{font-size:11px;line-height:1.7;color:#2b3648;word-break:break-word}.assign-list{list-style:none;margin:0 0 8px;padding:0}.assign-list li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;padding:4px 0;border-bottom:1px dashed #e6ebf2}.assign-code{font-size:10.5px;font-weight:800;color:#1f3864;background:#dae3f3;border-radius:3px;padding:1px 6px;white-space:nowrap;align-self:start}.assign-sum{font-size:11px;line-height:1.6;color:#2b3648}.no-assign{margin:0 0 8px;font-size:12px;font-weight:700;color:#8a94a6;background:#f2f3f5;border:1px dashed #cfd6de;border-radius:4px;padding:8px 10px}.cat-foot{margin:14px 0 0;font-size:10px;line-height:1.7;color:#8a94a6}.mtx-guide{margin:12px 0 0;display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;font-size:11.5px;line-height:1.7;color:#33405c;background:#eef2fa;border:1px solid #b9c6dd;border-left:4px solid #1f3864;border-radius:0 4px 4px 0;padding:8px 12px}.mtx-guide>span{flex:1 1 480px}.mtx-guide b{color:#1f3864}.mtx-guide-btn{margin-left:auto;font-family:inherit;font-size:11px;font-weight:800;color:#fff;background:#1f3864;border:1px solid #1f3864;border-radius:3px;padding:4px 12px;cursor:pointer;flex:none}.mtx-guide-btn:hover{background:#33507f}.mtx-type-btn{font-family:inherit;display:block;width:100%;background:none;border:none;border-radius:3px;padding:1px 0 2px;color:inherit;cursor:pointer;text-align:center}.mtx-type-btn:hover{background:#ffffff29}.mtx-type-key{display:block;font-family:SF Mono,Consolas,Menlo,monospace;font-size:11px;font-weight:800;text-decoration:underline;text-decoration-color:#ffffff80;text-underline-offset:2px}.mtx-type-desc{display:block;font-size:9px;font-weight:600;color:#ccd8ee;margin-top:1px}.mtx-wrap{margin-top:12px;background:#fff;border:1px solid #dde3ea;border-radius:6px;padding:4px;overflow-x:auto}.mtx{border-collapse:collapse;width:100%;font-size:11.5px}.mtx thead th{background:#1f3864;color:#fff;font-size:10.5px;font-weight:800;padding:7px 8px;text-align:center;line-height:1.35;position:sticky;top:0}.mtx thead th.col-name,.mtx thead th.col-use{text-align:left}.mtx .col-name{width:30%}.mtx .col-media{width:52px}.mtx .col-type{width:62px;text-align:center}.mtx-group th{text-align:left;font-size:10.5px;font-weight:800;padding:6px 9px;letter-spacing:.05em}.mtx-group.media-map th{background:#eaf1fb;color:#1c4e79;border-left:4px solid #2e75b6}.mtx-group.media-chart th{background:#e2efda;color:#24380f;border-left:4px solid #548235}.mtx-group.media-table th{background:#eee;color:#3f3f3f;border-left:4px solid #7f7f7f}.mtx-row{cursor:pointer;border-bottom:1px solid #eef1f6}.mtx-row td{padding:7px 8px;vertical-align:middle}.mtx-row:hover{background:#f2f6fc}.mtx-row:focus-visible{outline:2px solid #2e75b6;outline-offset:-2px}.mtx-name{font-weight:700;color:#1f3864;text-decoration:underline;text-decoration-color:#b9c6dd;text-underline-offset:2px}.mtx-go{margin-left:7px;font-size:10px;color:#8a94a6;opacity:0}.mtx-row:hover .mtx-go,.mtx-row:focus-visible .mtx-go{opacity:1}.mtx-chip{display:inline-block;font-size:10px;font-weight:800;color:#fff;border-radius:3px;padding:1.5px 7px}.mtx-chip.media-map{background:#2e75b6}.mtx-chip.media-chart{background:#548235}.mtx-chip.media-table{background:#7f7f7f}.mtx-yes{font-size:15px;font-weight:800;color:#1f3864}.mtx-sup{font-size:9px;color:#2e75b6;margin-left:1px}.mtx-no{font-size:14px;color:#c3cad4}.mtx-none{color:#98a1af}.mtx .col-use{font-size:10.5px;color:#46536a;line-height:1.55}.mtx-notes{margin:12px 0 0;padding-left:18px;font-size:10.5px;line-height:1.85;color:#5c6a80}.dt-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.dt-sum-card{background:#fff;border:1px solid #b9c6dd;border-top:3px solid #1f3864;border-radius:6px;padding:8px 11px 9px}.dt-sum-key{display:block;font-family:SF Mono,Consolas,Menlo,monospace;font-size:16px;font-weight:800;color:#1f3864;line-height:1.2}.dt-sum-ja{display:block;font-size:11.5px;font-weight:800;color:#33405c;margin-top:2px}.dt-sum-one{display:block;font-size:11px;color:#5c6a80;line-height:1.6;margin-top:3px}.dt-flow{margin-top:14px}.dt-flow-svg{display:block;width:100%;height:auto;max-width:1100px;margin:2px auto 8px}.dt-type{margin-top:14px;background:#fff;border:1px solid #dde3ea;border-left:4px solid #1f3864;border-radius:0 6px 6px 0;padding:0 0 12px}.dt-type-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;background:#eef2fa;border-bottom:1px solid #d5deed;padding:8px 14px}.dt-key{font-family:SF Mono,Consolas,Menlo,monospace;font-size:18px;font-weight:800;color:#1f3864;line-height:1.2}.dt-ja{font-size:13px;font-weight:800;color:#33405c}.dt-one{font-size:12px;color:#5c6a80}.dt-body{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:16px;padding:10px 14px 0;align-items:start}.dt-col{min-width:0}.dt-h{margin:12px 0 6px;font-size:11.5px;font-weight:800;color:#1f3864;line-height:1.3;padding-bottom:4px;border-bottom:1px solid #e6ebf2}.dt-col>.dt-h:first-child,.dt-two-grid .dt-h{margin-top:0}.dt-cols{margin:0;font-family:SF Mono,Consolas,Menlo,monospace;font-size:11px;line-height:1.7;color:#1f3864;background:#f4f6fb;border:1px solid #d5deed;border-radius:4px;padding:7px 10px;word-break:break-word}.dt-notes,.dt-hints{margin:7px 0 0;padding-left:17px;font-size:11px;line-height:1.75;color:#46536a}.dt-notes li,.dt-hints li{margin-bottom:3px}.dt-file{font-family:SF Mono,Consolas,Menlo,monospace;font-size:10.5px;font-weight:700;color:#fff;background:#1f3864;border-radius:3px 3px 0 0;padding:3px 9px;display:inline-block}.dt-table{overflow-x:auto}.dt-table .card-table-wrap{margin-top:0}.dt-table .card-table{font-size:11px}.dt-table .card-table th,.dt-table .card-table td{padding:3.5px 8px}.dt-table .card-table th{background:#dae3f3;color:#1f3864}.dt-table .card-table th.is-key{background:#1f3864;color:#fff;box-shadow:none}.dt-table .card-table td.is-key{background:#eef2fa;color:#1f3864;box-shadow:inset 0 0 0 1.2px #7f9dc9}.dt-table .card-table-note{font-size:10px;color:#6b7686;margin-top:4px}.dt-cap{margin:7px 0 0;font-size:11px;line-height:1.7;color:#5c6a80}.dt-views{list-style:none;margin:0;padding:0;display:grid;gap:5px}.dt-views.is-inline{grid-template-columns:repeat(2,minmax(0,1fr));margin:9px 0 12px}.dt-view-btn{font-family:inherit;display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:#fff;border:1px solid #dde3ea;border-radius:4px;padding:5px 9px;cursor:pointer}.dt-view-btn:hover{background:#f2f6fc;border-color:#b9c6dd}.dt-view-name{font-size:11.5px;font-weight:700;color:#1f3864;text-decoration:underline;text-decoration-color:#b9c6dd;text-underline-offset:2px}.dt-view-tag{font-size:9.5px;font-weight:800;color:#1c4e79;background:#eaf1fb;border:1px solid #b9d0e8;border-radius:3px;padding:1px 6px;white-space:nowrap}.dt-view-tag.is-any{color:#3f3f3f;background:#f2f2f2;border-color:#d0d0d0}.dt-view-go{margin-left:auto;font-size:10px;color:#8a94a6;white-space:nowrap;opacity:0}.dt-view-btn:hover .dt-view-go{opacity:1}.dt-src{list-style:none;margin:0;padding:0}.dt-src li{padding:5px 0;border-bottom:1px dashed #e6ebf2}.dt-src li:last-child{border-bottom:none}.dt-src-top{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.dt-src-name{font-size:11.5px;font-weight:700;color:#33405c}.dt-src-note{font-size:10.5px;line-height:1.65;color:#5c6a80;margin-top:2px}.dt-two{margin-top:14px;border-left:4px solid #1f3864;border-radius:0 6px 6px 0}.dt-two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.intro-page{max-width:1240px}.ip-block{margin-top:13px;background:#fff;border:1px solid #dde3ea;border-left:4px solid #1f3864;border-radius:0 6px 6px 0;padding:10px 14px 13px}.ip-head{border-bottom:1px solid #e6ebf2;padding-bottom:5px;margin-bottom:9px}.ip-h{display:flex;align-items:baseline;gap:9px;margin:0;font-size:12.5px;font-weight:800;color:#1f3864;line-height:1.35}.ip-h-badge{font-size:9.5px;font-weight:800;color:#fff;background:#1f3864;border-radius:3px;padding:1.5px 7px;letter-spacing:.06em;flex:none}.ip-note{margin:4px 0 0;font-size:10.5px;line-height:1.6;color:#7a8699}.ip-p{margin:0 0 8px;font-size:12px;line-height:1.9;color:#2b3648}.ip-p:last-child{margin-bottom:0}.ip-cards{display:grid;gap:10px;align-items:stretch}.ip-card{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;width:100%;text-align:left;font-family:inherit;background:#f7f9fc;border:1px solid #d5deed;border-top:3px solid #1f3864;border-radius:6px;padding:8px 11px 10px}.ip-card.is-link{cursor:pointer}.ip-card.is-link:hover{background:#eef2fa;border-color:#7f9dc9;border-top-color:#1f3864}.ip-card-title{font-size:12px;font-weight:800;color:#1f3864;line-height:1.4}.ip-card-lines{margin:5px 0 0;padding-left:15px;font-size:11px;line-height:1.7;color:#46536a}.ip-card-lines li{margin-bottom:2px}.ip-card-go{display:block;margin-top:auto;padding-top:6px;font-size:10px;font-weight:800;color:#2e5a9e}.ip-steps{list-style:none;display:grid;gap:12px 24px;margin:0;padding:0}.ip-step{position:relative;display:flex;flex-direction:column;background:#fff;border:1.4px solid #7f9dc9;border-radius:7px;padding:7px 10px 9px}.ip-step.has-arrow:before{content:"";position:absolute;left:-18px;top:22px;width:0;height:0;border-left:11px solid #1f3864;border-top:7px solid transparent;border-bottom:7px solid transparent}.ip-step-top{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;border-bottom:1px dashed #d5deed;padding-bottom:4px}.ip-step-no{font-size:14px;font-weight:800;color:#1f3864;line-height:1.2;flex:none}.ip-step-title{font-size:11.5px;font-weight:800;color:#1f3864;line-height:1.35}.ip-step-tag{font-size:9px;font-weight:800;color:#5a4500;background:#fff2cc;border:1px solid #e6cf8a;border-radius:3px;padding:.5px 5px;margin-left:auto;flex:none;white-space:nowrap}.ip-step-lines{margin:5px 0 6px;padding-left:14px;font-size:10.5px;line-height:1.65;color:#46536a}.ip-step-lines li{margin-bottom:2px}.ip-step-link{font-family:inherit;align-self:flex-start;margin-top:auto;font-size:9.5px;font-weight:800;color:#1f3864;background:#eef2fa;border:1px solid #b9c6dd;border-radius:3px;padding:1.5px 7px;cursor:pointer}.ip-step-link:hover{background:#1f3864;color:#fff}.ip-routes{list-style:none;margin:0;padding:0}.ip-route{padding:7px 0;border-bottom:1px dashed #e6ebf2}.ip-route:last-child{border-bottom:none;padding-bottom:0}.ip-route-head{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.ip-route-label{font-size:11.5px;font-weight:800;color:#1f3864;background:#dae3f3;border-radius:3px;padding:1.5px 8px;flex:none}.ip-route-purpose{font-size:10.5px;color:#5c6a80;line-height:1.6}.ip-route-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:6px}.ip-route-arrow{width:0;height:0;border-left:10px solid #1f3864;border-top:6px solid transparent;border-bottom:6px solid transparent;flex:none}.ip-chip{font-family:inherit;display:flex;align-items:baseline;gap:6px;background:#fff;border:1.4px solid #7f9dc9;border-radius:5px;padding:4px 10px;cursor:pointer}.ip-chip:hover{background:#1f3864;border-color:#1f3864}.ip-chip:hover .ip-chip-name,.ip-chip:hover .ip-chip-id{color:#fff}.ip-chip-name{font-size:11.5px;font-weight:700;color:#1f3864;line-height:1.3}.ip-chip-id{font-family:SF Mono,Consolas,Menlo,monospace;font-size:9.5px;color:#8a94a6}.ip-pairs{display:grid;gap:8px}.ip-pair-head{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:0;font-size:10px;font-weight:800;color:#fff;background:#1f3864;border-radius:4px;padding:4px 10px;letter-spacing:.05em}.ip-pair-arrowhead{text-align:center}.ip-pair{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);align-items:stretch;border:1px solid #dde3ea;border-radius:5px;overflow:hidden}.ip-pair-a{background:#f4f6fb;padding:7px 10px 8px;border-right:1px solid #e6ebf2}.ip-pair-q{display:inline-block;font-family:SF Mono,Consolas,Menlo,monospace;font-size:10px;font-weight:800;color:#fff;background:#33507f;border-radius:3px;padding:1px 6px;margin-right:7px;vertical-align:1px}.ip-pair-text{font-size:11.5px;line-height:1.7;color:#1f3864;font-weight:700}.ip-pair-arrow{align-self:center;justify-self:center;width:0;height:0;border-left:12px solid #1f3864;border-top:8px solid transparent;border-bottom:8px solid transparent}.ip-pair-d{padding:7px 10px 8px;font-size:11.5px;line-height:1.7;color:#2b3648;border-left:1px solid #e6ebf2}.ip-pair-note{grid-column:1 / -1;font-size:10px;line-height:1.6;color:#5c6a80;background:#fbfcfe;border-top:1px dashed #e6ebf2;padding:4px 10px 5px}.ip-pair-note:before{content:"備考：";font-weight:800;color:#8a94a6}.ip-panels{display:grid;gap:11px}.ip-panel{border:1px solid #d5deed;border-radius:6px;overflow:hidden}.ip-panel-head{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;background:#eef2fa;border-bottom:1px solid #d5deed;padding:6px 11px}.ip-panel-no{font-size:12px;font-weight:800;color:#fff;background:#1f3864;border-radius:3px;padding:1px 8px;flex:none}.ip-panel-title{font-size:12.5px;font-weight:800;color:#1f3864}.ip-panel-lead{font-size:10.5px;color:#5c6a80;line-height:1.6;flex:1 1 300px}.ip-defs{margin:0;padding:4px 11px 2px}.ip-def{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;padding:5px 0;border-bottom:1px dashed #e6ebf2}.ip-def:last-child{border-bottom:none}.ip-def dt{font-size:11px;font-weight:800;color:#33405c;line-height:1.65}.ip-def dd{margin:0;font-size:11px;line-height:1.75;color:#2b3648}.ip-panel-note{margin:0;font-size:10.5px;line-height:1.7;color:#5c6a80;background:#fbfcfe;border-top:1px dashed #e6ebf2;padding:6px 11px 7px}.ip-callout{margin-top:13px;background:#eef2fa;border:1px solid #b9c6dd;border-left:5px solid #1f3864;border-radius:0 6px 6px 0;padding:9px 13px 11px}.ip-callout-h{margin:0 0 4px;font-size:12px;font-weight:800;color:#1f3864;line-height:1.35}.ip-callout-p{margin:0;font-size:11.5px;line-height:1.85;color:#24334d}.ip-links{list-style:none;margin:0;padding:0;display:grid;gap:5px}.ip-link{font-family:inherit;display:flex;align-items:baseline;gap:8px;width:100%;text-align:left;background:#fff;border:1px solid #dde3ea;border-radius:4px;padding:5px 10px;cursor:pointer}.ip-link:hover{background:#f2f6fc;border-color:#b9c6dd}.ip-link-name{font-size:11.5px;font-weight:700;color:#1f3864;white-space:nowrap}.ip-link-id{font-family:SF Mono,Consolas,Menlo,monospace;font-size:9.5px;color:#8a94a6;white-space:nowrap}.ip-link-desc{font-size:10.5px;line-height:1.55;color:#5c6a80}.ip-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}.ip-map.is-detailed{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-map-cat{border:1px solid #dde3ea;border-top:3px solid #1f3864;border-radius:5px;padding:7px 9px 8px;background:#fbfcfe}.ip-map-cat.cat-mapview{border-top-color:#2e75b6}.ip-map-cat.cat-chartview{border-top-color:#548235}.ip-map-cat.cat-tableview{border-top-color:#7f7f7f}.ip-map-cat-head{display:flex;align-items:baseline;gap:7px}.ip-map-cat-name{font-size:11.5px;font-weight:800;color:#1f3864}.ip-map-cat-count{font-size:9.5px;font-weight:700;color:#8a94a6;margin-left:auto;white-space:nowrap}.ip-map-cat-sum{margin:3px 0 6px;font-size:10px;line-height:1.55;color:#5c6a80}.ip-map-list{list-style:none;margin:0;padding:0}.ip-map:not(.is-detailed) .ip-map-list{display:flex;flex-wrap:wrap;gap:4px}.ip-map-item{font-family:inherit;display:block;text-align:left;background:#fff;border:1px solid #dde3ea;border-radius:4px;padding:3px 8px;cursor:pointer;width:100%}.ip-map:not(.is-detailed) .ip-map-item{width:auto}.ip-map.is-detailed .ip-map-item{margin-bottom:4px;padding:5px 9px 6px}.ip-map-item:hover{background:#eef2fa;border-color:#7f9dc9}.ip-map-name{font-size:10.5px;font-weight:700;color:#1f3864;line-height:1.45}.ip-map-id{font-family:SF Mono,Consolas,Menlo,monospace;font-size:9px;color:#8a94a6;margin-left:6px}.ip-map-desc{display:block;font-size:10px;line-height:1.55;color:#5c6a80;margin-top:2px}.card-node{border-style:solid;border-radius:6px;padding:8px 10px;background:#fff;box-shadow:0 1px 3px #10182824}.card-node.is-dimmed{opacity:.55}.card-node.is-selected{box-shadow:0 0 0 2.5px #2e75b673}.card-title{font-size:12px;font-weight:700;line-height:1.35}.card-lines{margin-top:4px}.card-line{font-size:10px;line-height:1.55;color:#46536a}.card-table-wrap{margin-top:6px}.card-table{border-collapse:collapse;background:#fff;font-size:9px;line-height:1.45}.card-table th,.card-table td{border:1px solid #b9c6d8;padding:1.5px 5px;text-align:left;white-space:nowrap}.card-table th{background:#d9e8c9;color:#24380f;font-weight:700}.card-table td{color:#2b3648;font-weight:400}.card-table th.is-key,.card-table td.is-key{background:#d1f0df;color:#14603a;font-weight:700;box-shadow:inset 0 0 0 1.2px #59c08a}.card-table-note{margin-top:3px;font-size:8.5px;color:#66707f;line-height:1.45}.card-sample{margin-top:6px;padding:7px 9px;border-radius:6px;background:#0f2038;color:#dce8f5;font-family:SF Mono,Consolas,Menlo,monospace;font-size:9.5px;line-height:1.6;overflow:hidden}.sample-line{white-space:pre}.sample-seg-header{color:#ffd479;font-weight:700}.sample-seg-comment{color:#8fb3d9}.sample-seg-key{color:#8ff0c0;background:#59c08a2e;box-shadow:inset 0 0 0 1px #59c08a8c;border-radius:3px;padding:0 2px;font-weight:700}.zone-node{width:100%;height:100%;border-width:1.8px;border-style:solid;border-radius:8px;position:relative}.zone-node.is-selected{box-shadow:0 0 0 2.5px #2e75b659}.zone-fill{position:absolute;inset:0;border-radius:6px;opacity:.45}.zone-head{position:absolute;top:0;left:0;right:0;display:flex;align-items:baseline;gap:8px;padding:8px 10px;pointer-events:none}.zone-title{color:#fff;font-size:11.5px;font-weight:700;line-height:1.3;padding:3px 10px;border-radius:4px;white-space:nowrap}.zone-subtitle{font-size:10px;font-weight:600;opacity:.85;white-space:nowrap}.anchor{opacity:0;width:4px;height:4px;min-width:0;min-height:0;border:none;pointer-events:none}.legend-panel{background:#fffffff2;border:1px solid #d8dfe8;border-radius:6px;padding:8px 10px;box-shadow:0 1px 4px #1018281a;max-width:230px}.legend-heading{font-size:10.5px;font-weight:800;color:#66707f;margin-bottom:4px}.legend-row{display:flex;align-items:center;gap:6px;margin-top:3px}.legend-swatch{width:15px;height:10px;border-width:1.6px;border-radius:2px;display:inline-block;flex:none}.legend-label{font-size:10.5px;color:#333c45;line-height:1.35}.react-flow__panel.bottom.right.react-flow__controls{margin:0 216px 14px 0}.react-flow__minimap{border:1px solid #d8dfe8;border-radius:6px;overflow:hidden}.react-flow__edge-text{font-family:inherit}.react-flow__attribution{background:#fff9}
