:root{color-scheme:dark;font-family:Meiryo,"Yu Gothic",system-ui,sans-serif;--bg:#07111d;--panel:#151e2e;--card:#081827;--line:#294761;--text:#eef6ff;--muted:#a9bdd0;--blue:#55aaff;--green:#4be06b;--red:#ff5468;--orange:#f5a623;--cyan:#3dd8ff}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.55}.bf-page{width:min(1480px,calc(100% - 32px));margin:18px auto 56px}.bf-header,.bf-panel{background:var(--panel);border:1px solid #34465f;border-radius:12px;padding:20px;margin-bottom:16px}.bf-header h1{margin:0 0 8px;font-size:28px;letter-spacing:.01em}.bf-version-line{margin:0 0 14px;color:#c7d8e8;font-size:15px}.bf-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin:10px 0}.bf-actions button,.bf-actions a,.bf-button{appearance:none;background:#142a40;color:#eef8ff;border:1px solid #3f6689;border-radius:7px;padding:8px 13px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.bf-actions button:hover,.bf-actions a:hover,.bf-button:hover{border-color:#61c8ff;background:#18334d}.bf-actions .primary{background:#103b58;border-color:#38baf8}.bf-actions .danger{border-color:#c96571;color:#ffd4d9}.bf-actions button:disabled{opacity:.45;cursor:not-allowed}.bf-dependency-line{margin-top:12px;color:#b8cee2}.bf-dependency-line a{color:#69c9ff;text-decoration:none;font-weight:700}.bf-dependency-line a:hover{text-decoration:underline}.bf-callout{margin-top:12px;background:#0a2032;border-left:3px solid #42bff8;border-radius:6px;padding:10px 13px;color:#cfe1ef}.bf-panel>h2{font-size:23px;margin:0 0 14px}.bf-panel>p{color:#c2d3e2}.bf-usage-grid{display:grid;grid-template-columns:minmax(390px,.88fr) minmax(470px,1.12fr);gap:14px}@media(max-width:980px){.bf-usage-grid{grid-template-columns:1fr}}.bf-card{background:var(--card);border:1px solid #31516b;border-radius:10px;padding:16px;min-width:0}.bf-card h3{margin:0 0 12px;font-size:17px}.bf-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 12px}.bf-control-grid label{display:grid;gap:5px;color:#c6d8e7;font-size:13px;min-width:0}.bf-control-grid input,.bf-control-grid select{width:100%;min-width:0;background:#07131f;color:#f4f9ff;border:1px solid #3b5d78;border-radius:6px;padding:8px 9px;font:inherit}.bf-control-grid .wide{grid-column:1/-1}.bf-check{display:flex!important;align-items:center;gap:8px!important}.bf-check input{width:auto!important}.bf-color-row{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px;align-items:end}.bf-color-trigger{width:48px;height:38px;padding:4px;background:#142a40;border:1px solid #3f6689;border-radius:7px;cursor:pointer}.bf-color-swatch{display:block;width:100%;height:100%;border-radius:4px;border:1px solid #8096a8;background:#111}.bf-preview-stage{min-height:190px;display:grid;place-items:center;border:1px dashed #41637e;border-radius:9px;background:linear-gradient(135deg,#07131f,#0d2236);padding:22px}.bf-preview-stage input{min-width:min(360px,100%);max-width:100%;padding:11px;border:1px solid #4e7695;border-radius:7px}.bf-summary{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;margin:14px 0 0}.bf-summary dt{color:#9fb7ca}.bf-summary dd{margin:0;min-width:0;font-family:Consolas,monospace;overflow-wrap:anywhere}.bf-dependency-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:8px;margin-top:14px}@media(max-width:1200px){.bf-dependency-grid{grid-template-columns:repeat(3,minmax(180px,1fr))}}@media(max-width:760px){.bf-dependency-grid{grid-template-columns:1fr}}.bf-dep{background:#081827;border:1px solid #31516b;border-radius:8px;padding:9px 10px;min-width:0}.bf-dep strong{display:block;font-size:14px;overflow-wrap:anywhere}.bf-dep span{display:block;color:#9fb8cc;font-size:12px;margin-top:3px}.bf-dep.ok{border-color:#278f65}.bf-dep.fail{border-color:#c65360}.bf-joint-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bf-joint-card.is-wide{grid-column:1/-1}@media(max-width:900px){.bf-joint-grid{grid-template-columns:1fr}.bf-joint-card.is-wide{grid-column:auto}}.bf-flow{position:relative;min-height:188px;border:1px solid #31516b;border-radius:9px;background:#061523;display:flex;align-items:center;justify-content:space-around;gap:54px;padding:34px 58px;overflow:hidden}.bf-joint-card:not(.is-wide) .bf-flow{min-height:152px;padding:28px 38px;gap:44px}.bf-flow svg,.bf-delivery-stage svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.bf-flow .joint-line-layer,.bf-delivery-stage .joint-line-layer{z-index:1}.bf-node{position:relative;z-index:2;min-width:130px;max-width:190px;padding:13px 14px;text-align:center;border-radius:8px;border:1px solid #5a7d98;background:#10243a;color:#f1f8ff;line-height:1.2}.bf-node.source{border-color:#4c9be0}.bf-node.text{border-color:#3dd7b4}.bf-node.target{border-color:#ad8df5}.bf-node::before,.bf-node::after{content:"";position:absolute;top:50%;width:8px;height:8px;border-radius:50%;background:#a5e2ff;border:2px solid #06101a;transform:translateY(-50%)}.bf-node::before{left:-6px}.bf-node::after{right:-6px}.bf-flow .joint-marker-layer,.bf-delivery-stage .joint-marker-layer{z-index:3}.bf-joint-diagnostics{display:grid;gap:8px;margin-top:10px}.bf-joint-card.is-wide .bf-joint-diagnostics{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-joint-diag-group{min-width:0;border:1px solid #244158;border-radius:7px;overflow:hidden}.bf-joint-diag-group h4{margin:0;padding:7px 10px;background:#0b1c2b;color:#a7ddff;font-size:12px}.bf-joint-diag-row{display:grid;grid-template-columns:minmax(118px,.85fr) minmax(0,1.15fr);gap:10px;padding:5px 9px;border-top:1px solid #19354b;font:12px/1.35 Consolas,monospace;min-width:0}.bf-joint-diag-row span{color:#c0d5e7;min-width:0}.bf-joint-diag-row strong{display:block;min-width:0;text-align:right;color:#f1f7fd;overflow-wrap:anywhere;word-break:break-word}.bf-joint-diag-row strong.error{color:#ff97a2}.bf-joint-diag-row strong.warning{color:#ffd18a}@media(max-width:560px){.bf-joint-diag-row{grid-template-columns:1fr}.bf-joint-diag-row strong{text-align:left}}.bf-joint-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;color:#bed2e2;font-size:13px}.bf-joint-legend span{display:inline-flex;align-items:center;gap:7px}.bf-joint-legend i{width:38px;height:4px;border-radius:99px;display:inline-block}.bf-joint-legend .in{background:var(--blue)}.bf-joint-legend .out{background:var(--green)}.bf-joint-legend .mismatch{background:var(--orange)}.bf-joint-legend .error{background:var(--red)}.bf-delivery-stage{position:relative;min-height:180px;border:1px solid #31516b;border-radius:9px;background:#061523;display:flex;align-items:center;justify-content:space-between;padding:36px 110px;overflow:hidden}.bf-statebar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}@media(max-width:700px){.bf-statebar{grid-template-columns:repeat(2,1fr)}}.bf-stat{background:#07131f;border:1px solid #2d4c65;border-radius:8px;padding:8px;text-align:center;color:#a8bdcf}.bf-stat b{display:block;margin-top:4px;font-size:17px;color:#f0f7fe;overflow-wrap:anywhere}.status-notrun{color:#aebcc8!important}.status-pass{color:#75e7a9!important}.status-fail{color:#ff8c98!important}.bf-log{white-space:pre-wrap;background:#050d16;border:1px solid #27445c;border-radius:8px;padding:10px;min-height:66px;font:12px/1.5 Consolas,monospace}.bf-visual-checks{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}.bf-results{display:grid;gap:4px;margin-top:10px}.bf-result{display:grid;grid-template-columns:62px minmax(0,1fr);gap:8px;padding:6px 8px;border-bottom:1px solid #1d394f}.bf-result strong{font-family:Consolas,monospace}.bf-result.pass strong{color:#75e7a9}.bf-result.fail strong{color:#ff8c98}.bf-result span{min-width:0;overflow-wrap:anywhere}.bf-completion{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}@media(max-width:1000px){.bf-completion{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.bf-completion{grid-template-columns:1fr}}.bf-completion>div{background:#07131f;border:1px solid #2d4c65;border-radius:8px;padding:9px;min-width:0}.bf-completion span{display:block;color:#9fb6c9;font-size:12px}.bf-completion b{display:block;margin-top:4px;overflow-wrap:anywhere}.bf-functional{font-family:Consolas,monospace;background:#050d16;border:1px solid #27445c;padding:12px;border-radius:8px;overflow-wrap:anywhere}.bf-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}.bf-joint-waiting-spinner,.bf-joint-blocked-ban,.bf-joint-error-marker,.bf-joint-compatibility-error{position:relative;z-index:3}

/* Runtime Schema / inheritParent additions */
.bf-schema-wrap{overflow:auto;border:1px solid #2d4c65;border-radius:9px;background:#07131f}
.bf-schema-table{width:100%;border-collapse:collapse;min-width:1080px;font-size:12px}
.bf-schema-table th,.bf-schema-table td{padding:8px 10px;border-bottom:1px solid #1d394f;border-right:1px solid #1d394f;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.bf-schema-table th{position:sticky;top:0;background:#0b1c2b;color:#a7ddff;z-index:1}
.bf-schema-table td:first-child,.bf-schema-table td:nth-child(4),.bf-schema-table td:nth-child(5){font-family:Consolas,monospace}
.bone-text[data-inherit-parent="true"],.bone-text-editor[data-inherit-parent="true"]{box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0}

/* v1.0.10 formal Runtime Schema visibility */
.bf-runtime-schema-panel{border-color:#3a7298;box-shadow:0 0 0 1px rgba(61,216,255,.08) inset}
.bf-runtime-schema-panel>h2{display:flex;align-items:center;gap:8px;color:#eaf8ff}
.bf-runtime-schema-panel>h2::before{content:"◆";color:var(--cyan);font-size:14px}
.bf-schema-source{margin:0 0 10px;padding:9px 11px;border:1px solid #28536f;border-radius:7px;background:#07131f;color:#b9d9ec!important;overflow-wrap:anywhere}
#runtime-property-schema-summary{margin-bottom:0}

/* v1.0.12 inheritParent visual contract */
#combined-editor-host{box-sizing:border-box;width:100%;min-width:0;display:flex;align-items:center;justify-content:flex-start;padding:14px;border:1px solid #28536f;border-radius:8px;background:rgba(7,19,31,.72)}
#combined-editor-host>.bone-text-editor{transition:width .12s ease}
#combined-editor-host>.bone-text-editor[data-inherit-parent="true"],#combined-editor-host>.bone-text[data-inherit-parent="true"]{flex:0 0 100%;min-width:0!important;width:100%!important}
#combined-editor-host>.bone-text-editor[data-inherit-parent="false"],#combined-editor-host>.bone-text[data-inherit-parent="false"]{flex:0 1 auto;min-width:0!important;width:auto!important}
.bf-parent-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
.bf-parent-metric{padding:7px 9px;border:1px solid #244158;border-radius:7px;background:#07131f;color:#9fb7ca;font-size:12px}
.bf-parent-metric b{display:block;margin-top:2px;color:#eef6ff;font:700 13px/1.3 Consolas,monospace}
@media(max-width:620px){.bf-parent-metrics{grid-template-columns:1fr}}
