.forge-object-section{grid-column:1/-1;display:grid;gap:1rem;padding:1rem;border:1px solid rgba(78,205,196,.34);border-radius:.85rem;background:linear-gradient(145deg,rgba(78,205,196,.07),rgba(7,20,38,.75))}.forge-object-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.forge-object-section-head h4{color:#8ef3ff;font-size:1rem;font-weight:750}.forge-object-section-head p{max-width:70ch;margin-top:.25rem;color:#aebed0;font-size:.82rem;line-height:1.5}.forge-scale-grid{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1.2fr);gap:.85rem}.forge-scale-profile{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.forge-scale-profile label{font-size:.78rem}.forge-scale-note{grid-column:1/-1;padding:.75rem .85rem;border-left:3px solid #d4b866;border-radius:.35rem;background:#d4b8660c;color:#c8d6e5;font-size:.78rem;line-height:1.5}.forge-scale-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.55rem}.forge-scale-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.24rem .5rem;border:1px solid #4ecdc44d;border-radius:999px;background:#4ecdc412;color:#bff8f4;font-size:.7rem}.forge-collision-summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:.85rem;border:1px solid #ffffff1c;border-radius:.75rem;background:#061426}.forge-collision-summary strong{display:block;color:#fff}.forge-collision-summary span{display:block;margin-top:.2rem;color:#9fb3c8;font-size:.78rem}.forge-collision-summary button{min-height:42px}.forge-collision-modal{position:fixed;inset:0;z-index:1000;display:none;place-items:center;padding:clamp(12px,2vw,28px);background:#020713dc;backdrop-filter:blur(8px)}.forge-collision-modal.active{display:grid}.forge-collision-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1120px,96vw);max-height:94vh;overflow:hidden;border:1px solid #4ecdc46b;border-radius:1.1rem;background:#071426;color:#eaf8ff;box-shadow:0 28px 90px #000c}.forge-collision-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem 1.3rem;border-bottom:1px solid #ffffff18;background:linear-gradient(120deg,#0c2638,#081426)}.forge-collision-header h2{color:#8ef3ff;font-size:1.35rem;font-weight:800}.forge-collision-header p{max-width:72ch;margin-top:.3rem;color:#aebed0;font-size:.84rem;line-height:1.45}.forge-collision-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #ffffff27;border-radius:.7rem;color:#ddecf5;background:#ffffff08;font-size:1.5rem}.forge-collision-close:hover,.forge-collision-close:focus-visible{border-color:#7af5ed;color:#fff;outline:none;box-shadow:0 0 0 3px #4ecdc42e}.forge-collision-body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);min-height:0}.forge-collision-stage{display:grid;grid-template-rows:auto minmax(300px,1fr);gap:.85rem;min-width:0;padding:1rem;border-right:1px solid #ffffff16}.forge-collision-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.forge-collision-modes label{position:relative;display:grid;place-items:center;min-height:48px;padding:.55rem .75rem;border:1px solid #36536c;border-radius:.7rem;background:#0a1a2d;color:#c9d8e6;cursor:pointer}.forge-collision-modes label:has(input:checked){border-color:#4ecdc4;background:#14394a;color:#fff;box-shadow:0 0 0 3px #4ecdc41d}.forge-collision-modes input{position:absolute;opacity:0}.forge-collision-canvas-wrap{position:relative;display:grid;place-items:center;min-height:300px;overflow:hidden;border:1px solid #294761;border-radius:.85rem;background-color:#04101f;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:24px 24px}.forge-collision-canvas{width:100%;height:100%;min-height:300px;touch-action:none;cursor:crosshair}.forge-collision-side{min-height:0;overflow:auto;padding:1rem;scrollbar-width:thin}.forge-collision-panel{display:none;gap:.85rem}.forge-collision-panel.active{display:grid}.forge-collision-field{display:grid;gap:.35rem;color:#d6e5f2;font-size:.82rem;font-weight:650}.forge-collision-field input,.forge-collision-field select{width:100%;min-height:42px;padding:.55rem .65rem;border:1px solid #3d5f78;border-radius:.55rem;background:#04101f;color:#fff;color-scheme:dark}.forge-collision-check{display:flex;align-items:center;gap:.6rem;color:#c8d6e5;font-size:.82rem}.forge-collision-check input{width:18px;height:18px;accent-color:#4ecdc4}.forge-collision-help{padding:.75rem;border-left:3px solid #4ecdc4;border-radius:.35rem;background:#4ecdc40d;color:#adbed0;font-size:.78rem;line-height:1.5}.forge-collision-toolbar{display:flex;flex-wrap:wrap;gap:.45rem}.forge-collision-toolbar button,.forge-collision-footer button{min-height:42px;padding:.55rem .8rem;border:1px solid #35647a;border-radius:.62rem;background:#102a3d;color:#dffaff;font-weight:700}.forge-collision-toolbar button:hover,.forge-collision-toolbar button:focus-visible,.forge-collision-footer button:hover,.forge-collision-footer button:focus-visible{border-color:#65e4dc;background:#17425a;outline:none}.forge-collision-toolbar button.active{border-color:#d4b866;color:#ffe897;background:#d4b86618}.forge-collision-toolbar button.danger{border-color:#ef444466;color:#fecaca;background:#ef44440d}.forge-collision-part-list{display:grid;gap:.45rem}.forge-collision-part{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.5rem;padding:.55rem .65rem;border:1px solid #ffffff1c;border-radius:.55rem;background:#08182a}.forge-collision-part button:first-child{text-align:left;color:#dcebf7}.forge-collision-part.selected{border-color:#4ecdc4;background:#123448}.forge-collision-point-table{display:grid;gap:.45rem}.forge-collision-point{display:grid;grid-template-columns:auto repeat(2,minmax(0,1fr)) auto;align-items:end;gap:.4rem;padding:.45rem;border:1px solid #ffffff14;border-radius:.5rem}.forge-collision-point span{align-self:center;color:#7af5ed;font:700 .75rem ui-monospace,monospace}.forge-collision-point label{display:grid;gap:.2rem;color:#91a6b9;font-size:.65rem}.forge-collision-point input{min-width:0;padding:.4rem;border:1px solid #35536a;border-radius:.4rem;background:#03101f;color:#fff}.forge-collision-footer{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;padding:1rem 1.3rem;border-top:1px solid #ffffff17;background:#071221}.forge-collision-footer .primary{border-color:#4ecdc4;background:#1b4656;color:#83f1ea}.forge-collision-status{margin-right:auto;color:#aebed0;font-size:.78rem}.forge-object-badge{display:inline-flex;align-items:center;padding:.18rem .45rem;border:1px solid #4ecdc44d;border-radius:999px;color:#a8f3ee;background:#4ecdc412;font-size:.68rem}.editor-tabs{max-height:min(42vh,430px);overflow:auto;scrollbar-width:thin}.tab-content{min-height:0}.blocklyText{dominant-baseline:middle}.forge-compact-text-block .blocklyText{font-weight:650}@media(max-width:820px){.forge-scale-grid,.forge-collision-body{grid-template-columns:1fr}.forge-scale-profile{grid-template-columns:repeat(2,1fr)}.forge-collision-stage{border-right:0;border-bottom:1px solid #ffffff16}.forge-collision-dialog{max-height:96vh}.forge-collision-side{max-height:38vh}}@media(max-width:520px){.forge-object-section-head,.forge-collision-header{display:block}.forge-scale-profile{grid-template-columns:1fr}.forge-collision-summary{grid-template-columns:1fr}.forge-collision-modes{grid-template-columns:1fr}.forge-collision-footer{flex-wrap:wrap}.forge-collision-status{width:100%;margin:0}.forge-collision-point{grid-template-columns:auto 1fr 1fr}.forge-collision-point button{grid-column:1/-1}}

/* CourtScript editor polish: keep editable value fields inside their sockets. */
.blocklyText{dominant-baseline:auto!important;alignment-baseline:auto!important}
.blocklyEditableText>.blocklyText{fill:#071426!important;font-weight:700!important}
body.case-forge-page .blocklyEditableText>.blocklyDropdownText{fill:#071426!important}
body.case-forge-page .blocklyEditableText>.blocklyDropdownRect~image:last-child{filter:brightness(.2)}
.blocklyEditableText>rect{fill:#f8fafc!important;stroke:#4ecdc4!important;stroke-width:1.5px!important;rx:5px;ry:5px}
.blocklyEditableText:hover>rect,.blocklyEditableText:focus>rect{stroke:#8ef3ff!important;stroke-width:2px!important}
.blocklyHtmlInput{min-width:72px!important;max-width:min(360px,70vw)!important;padding:4px 7px!important;border:2px solid #4ecdc4!important;border-radius:6px!important;background:#f8fafc!important;color:#071426!important;font:700 14px/1.25 Inter,"Microsoft YaHei",sans-serif!important;box-shadow:0 6px 20px #0008!important}

/* CourtScript dropdown contrast: override Blockly's injected white menu surface and keep native selectors readable. */
body.case-forge-page select{background-color:#04101f;color:#f4fbff;color-scheme:dark}
body.case-forge-page select option,body.case-forge-page select optgroup{background:#071426;color:#f4fbff;font:inherit}
body.case-forge-page .blocklyDropDownDiv{border-color:#4ecdc4!important;background:#071426!important;color:#f4fbff!important;color-scheme:dark;box-shadow:0 12px 32px #000b!important}
body.case-forge-page .blocklyDropDownArrow{border-color:#4ecdc4!important;background:#071426!important}
body.case-forge-page .blocklyDropDownContent,body.case-forge-page .blocklyDropDownDiv .blocklyMenu,body.case-forge-page .blocklyDropDownDiv .blocklyDropdownMenu,body.case-forge-page .blocklyWidgetDiv .blocklyMenu,body.case-forge-page .blocklyWidgetDiv .goog-menu{background:#071426!important;color:#f4fbff!important}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItem,body.case-forge-page .blocklyDropDownDiv .goog-menuitem,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItem,body.case-forge-page .blocklyWidgetDiv .goog-menuitem{background:transparent!important;color:#f4fbff!important}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItemContent,body.case-forge-page .blocklyDropDownDiv .goog-menuitem-content,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItemContent,body.case-forge-page .blocklyWidgetDiv .goog-menuitem-content{color:#f4fbff!important}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItemHighlight,body.case-forge-page .blocklyDropDownDiv .goog-menuitem-highlight,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItemHighlight,body.case-forge-page .blocklyWidgetDiv .goog-menuitem-highlight{background:#17425a!important;color:#fff!important}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItemHighlight .blocklyMenuItemContent,body.case-forge-page .blocklyDropDownDiv .goog-menuitem-highlight .goog-menuitem-content,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItemHighlight .blocklyMenuItemContent,body.case-forge-page .blocklyWidgetDiv .goog-menuitem-highlight .goog-menuitem-content{color:#fff!important}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItemSelected,body.case-forge-page .blocklyDropDownDiv .goog-option-selected,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItemSelected,body.case-forge-page .blocklyWidgetDiv .goog-option-selected{background:#123448!important}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItemDisabled,body.case-forge-page .blocklyDropDownDiv .goog-menuitem-disabled,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItemDisabled,body.case-forge-page .blocklyWidgetDiv .goog-menuitem-disabled{background:transparent!important;color:#9fb3c8!important;cursor:not-allowed}
body.case-forge-page .blocklyDropDownDiv .blocklyMenuItemDisabled .blocklyMenuItemContent,body.case-forge-page .blocklyDropDownDiv .goog-menuitem-disabled .goog-menuitem-content,body.case-forge-page .blocklyWidgetDiv .blocklyMenuItemDisabled .blocklyMenuItemContent,body.case-forge-page .blocklyWidgetDiv .goog-menuitem-disabled .goog-menuitem-content{color:#9fb3c8!important}

/* Collision editor hierarchy, contrast, and responsive controls. */
.forge-collision-modal{z-index:2147483000}
.forge-collision-dialog{isolation:isolate}
.forge-collision-modes label{place-items:stretch;min-height:64px;text-align:left}
.forge-collision-modes label>span{display:grid;gap:.18rem;align-content:center}
.forge-collision-modes strong{font-size:.83rem;color:#f3f8fc}
.forge-collision-modes small{color:#91a6b9;font-size:.68rem;line-height:1.3}
.forge-collision-modes label:has(input:checked) small{color:#c9f7f4}
.forge-collision-modes label:focus-within{border-color:#8ef3ff;outline:2px solid #8ef3ff;outline-offset:2px}
.forge-collision-panel{min-width:0}
.forge-collision-panel>button,.forge-collision-new-part select{min-height:42px;padding:.55rem .75rem;border:1px solid #35647a;border-radius:.62rem;background:#102a3d;color:#effcff;font-weight:700;color-scheme:dark}
.forge-collision-panel>button:hover,.forge-collision-panel>button:focus-visible,.forge-collision-new-part select:focus-visible{border-color:#65e4dc;background:#17425a;outline:2px solid #4ecdc44d;outline-offset:2px}
.forge-collision-toolbar button:disabled{cursor:not-allowed;opacity:.45}
.forge-collision-new-part{display:grid;flex:1 1 150px;gap:.28rem;color:#9eb3c6;font-size:.68rem;font-weight:700}
.forge-collision-toolbar button{align-self:end}
.forge-collision-override{display:grid;gap:.18rem;padding:.72rem .8rem;border:1px solid #d4b86666;border-radius:.65rem;background:#d4b86610}
.forge-collision-override strong{color:#ffe68c;font-size:.8rem}
.forge-collision-override span{color:#d8d0ad;font-size:.73rem;line-height:1.45}
.forge-collision-source{display:grid;gap:.16rem;padding:.7rem .78rem;border:1px solid #4ecdc43d;border-radius:.62rem;background:#4ecdc40b}
.forge-collision-source span{color:#8fa8ba;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}
.forge-collision-source strong{color:#dffdfb;font-size:.8rem}
.forge-collision-range{display:grid;grid-template-columns:minmax(0,1fr) 3.5rem;align-items:center;gap:.65rem}
.forge-collision-range input{min-height:24px;padding:0;border:0;background:transparent;accent-color:#4ecdc4}
.forge-collision-range output{padding:.28rem .38rem;border:1px solid #35536a;border-radius:.38rem;background:#03101f;color:#dffaff;text-align:center;font:700 .72rem ui-monospace,monospace}
.forge-collision-check{align-items:flex-start;padding:.62rem .7rem;border:1px solid #ffffff16;border-radius:.58rem;background:#08182a}
.forge-collision-check input{flex:0 0 auto;margin-top:.1rem}
.forge-collision-check span{display:grid;gap:.15rem}
.forge-collision-check strong{color:#e6f2fb;font-size:.78rem}
.forge-collision-check small{color:#91a6b9;font-size:.68rem;line-height:1.35}
.forge-collision-caption{color:#91a6b9;font-size:.7rem;line-height:1.4}
.forge-collision-empty{display:grid;gap:.2rem;padding:.8rem;border:1px dashed #547188;border-radius:.6rem;color:#9fb3c8}
.forge-collision-empty strong{color:#dcebf7;font-size:.8rem}
.forge-collision-empty span{font-size:.72rem}
.forge-collision-anchor-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.7rem .75rem;border:1px solid #4ecdc438;border-radius:.62rem;background:#071a2c}
.forge-collision-anchor-tools>div{display:grid;gap:.18rem;min-width:0}
.forge-collision-anchor-tools strong{color:#dffdfb;font-size:.8rem}
.forge-collision-anchor-tools small{color:#91a6b9;font-size:.68rem;line-height:1.4}
.forge-collision-anchor-tools button{min-height:40px;padding:.5rem .72rem;border:1px solid #4ecdc480;border-radius:.55rem;background:#15394a;color:#8ff4ed;font-weight:750;white-space:nowrap}
.forge-collision-anchor-tools button:hover,.forge-collision-anchor-tools button:focus-visible{border-color:#8ef3ff;background:#1b4c60;outline:2px solid #4ecdc433;outline-offset:2px}
.forge-collision-point button:disabled{cursor:not-allowed;opacity:.35}
.forge-collision-part button{min-height:36px;border-radius:.4rem}
.forge-collision-part button:focus-visible,.forge-collision-point button:focus-visible{outline:2px solid #8ef3ff;outline-offset:2px}
.forge-collision-point input:focus,.forge-curve-handle input:focus,.forge-collision-field input:focus,.forge-collision-field select:focus{border-color:#65e4dc;outline:2px solid #4ecdc433;outline-offset:1px}
.forge-collision-status[data-tone="error"]{color:#fca5a5;font-weight:700}
.forge-collision-status[data-tone="warning"]{color:#fcd86f}
.forge-collision-status[data-tone="success"]{color:#86efac}
.forge-collision-canvas-wrap::after{content:"−1                         0                         +1";position:absolute;right:.65rem;bottom:.45rem;color:#ffffff66;font:600 .62rem ui-monospace,monospace;pointer-events:none;white-space:pre}
@media(max-width:820px){.forge-collision-dialog{width:min(720px,97vw)}.forge-collision-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.forge-collision-stage{grid-template-rows:auto minmax(260px,42vh)}.forge-collision-side{max-height:40vh}}
@media(max-width:560px){.forge-collision-modes{grid-template-columns:1fr}.forge-collision-stage{padding:.75rem}.forge-collision-canvas-wrap,.forge-collision-canvas{min-height:240px}.forge-collision-footer button{flex:1}.forge-collision-anchor-tools{grid-template-columns:1fr}.forge-collision-anchor-tools button{width:100%}.forge-collision-canvas-wrap::after{display:none}}
