@charset "UTF-8";:root{color:#202523;background:#f2f4f2;--font-sans: "Yu Gothic UI", "Yu Gothic", Meiryo, "Noto Sans JP", "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Noto Sans", Arial, sans-serif;font-family:var(--font-sans);font-synthesis:none;letter-spacing:0;--ink: #202523;--muted: #68716d;--line: #dce1dd;--surface: #ffffff;--surface-subtle: #f7f8f7;--green: #28784f;--green-dark: #1f633f;--orange: #e8673c;--blue: #2f6fb5}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden;background:#f2f4f2}button,input,select{font:inherit}button{cursor:pointer}#app{height:100vh;display:flex;flex-direction:column}.topbar{height:64px;flex:0 0 auto;display:flex;align-items:center;gap:24px;padding:0 24px;background:#202623;color:#f7f5ef;border-bottom:1px solid #111713}.brand{min-width:238px;display:flex;align-items:center;gap:12px;white-space:nowrap;color:inherit;text-decoration:none}.brand-mark{width:18px;height:18px;border:2px solid #79b68c;border-right-color:#f4784e;transform:rotate(45deg)}.brand>span:last-child{display:grid;gap:2px}.brand strong{font-size:14px;letter-spacing:.01em}.brand small{color:#aeb9b3;font-size:10px;font-weight:500}.pipeline-form{min-width:0;flex:1 1 auto;display:flex;align-items:center;justify-content:flex-end;gap:8px}.file-control{min-width:0;height:36px;display:flex;align-items:center;gap:7px;padding:4px 8px;border:1px solid rgba(247,245,239,.2);border-radius:6px;background:#ffffff14}.unit-control{height:36px;display:flex;align-items:center;gap:6px;padding:4px 7px;border:1px solid rgba(247,245,239,.2);border-radius:6px;background:#ffffff14}.unit-control span{color:#f7f5ef;font-size:10px;font-weight:800}.unit-control select{border:0;outline:0;background:transparent;color:#f7f5ef;font-size:11px}.unit-control option{color:#1e2326}.file-control span{flex:0 0 auto;color:#f7f5ef;font-size:11px;font-weight:800}.file-control input{width:142px;min-width:0;color:#d9ded8;font-size:11px}.topbar-button{min-height:36px;flex:0 0 auto;border:1px solid rgba(105,163,123,.55);border-radius:6px;padding:7px 11px;background:var(--green);color:#fff;font-size:12px;font-weight:800}.topbar-button:disabled{cursor:not-allowed;border-color:#f7f5ef24;background:#4d5658;color:#b8c0bd}.flow-bar{min-height:58px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 24px;border-bottom:1px solid var(--line);background:var(--surface)}.flow-steps{min-width:0;display:flex;align-items:center;gap:10px;margin:0;padding:0;list-style:none}.flow-step{display:flex;align-items:center;gap:9px;color:#929994}.flow-step>span:last-child{display:grid;gap:1px}.flow-step strong{font-size:11px;line-height:1.1;white-space:nowrap}.flow-step small{font-size:9px;white-space:nowrap}.step-index{width:25px;height:25px;display:grid;place-items:center;border:1px solid #cbd0cc;border-radius:50%;background:#fff;font-size:10px;font-weight:800}.flow-step.is-active{color:var(--green)}.flow-step.is-active .step-index{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 0 0 3px #28784f1c}.flow-step.is-complete{color:#48514c}.flow-step.is-complete .step-index{border-color:#acd0b9;background:#e8f4ec;color:var(--green)}.flow-divider{width:clamp(20px,4vw,60px);height:1px;background:#d7dcd8}.status{min-width:0;max-width:38vw;color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.semantic-export-controls{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px}.semantic-export-controls input,.semantic-export-controls select{min-width:0;border:1px solid rgba(30,35,38,.2);border-radius:5px;padding:7px;background:#fff;color:#1e2326;font:inherit}.semantic-export-controls .secondary-button{grid-column:1 / -1}.semantic-export-controls .bulk-accept-button{border-color:#7fb18f;background:#e8f4ec;color:var(--green);font-weight:800}.semantic-export-controls .bulk-accept-button:hover:not(:disabled){border-color:var(--green);background:#dcefe3}.screen{min-height:0;flex:1}.review-screen{display:grid;grid-template-rows:minmax(0,1fr) auto}.review-workspace{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 350px;padding:14px 18px 0;gap:14px;background:#f2f4f2}.comparison-shell{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}.comparison-header{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:0 2px}.eyebrow{display:block;margin-bottom:3px;color:var(--green);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.comparison-header h1{margin:0;color:var(--ink);font-size:17px;line-height:1.2}.comparison-header p{max-width:420px;margin:0 0 1px;color:var(--muted);font-size:10px;line-height:1.4;text-align:right}.comparison-grid{min-width:0;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compare-pane{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid #d8ded9;border-radius:9px;background:var(--surface);box-shadow:0 3px 12px #1f2a230d}.pane-header{min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 11px;border-bottom:1px solid #e4e8e5;background:#fbfcfb}.pane-header>div{min-width:0;display:flex;align-items:center;gap:8px}.pane-header>div>span:last-child{min-width:0;display:grid;gap:1px}.pane-header strong,.pane-header small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pane-header strong{color:#303733;font-size:11px}.pane-header small,.pane-hint{color:#7d8681;font-size:8px}.pane-hint{flex:0 0 auto;text-align:right}.view-badge{width:30px;height:24px;display:grid;place-items:center;flex:0 0 auto;border-radius:4px;color:#fff;font-size:9px;font-weight:900;letter-spacing:.05em}.view-badge-2d{background:var(--blue)}.view-badge-3d{background:var(--orange)}.viewer-shell{min-width:0;min-height:0;position:relative;background:radial-gradient(circle at 50% 42%,#fffffff2,#eff2eff5 68%),#eef1ee}.viewer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.viewer canvas{display:block;width:100%;height:100%}.drawing-viewer{min-width:0;min-height:0;position:relative;display:grid;place-items:center;overflow:hidden;cursor:grab;touch-action:none;background-color:#f4f6f5;background-image:linear-gradient(rgba(92,108,99,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(92,108,99,.055) 1px,transparent 1px);background-size:18px 18px}.drawing-viewer.is-panning{cursor:grabbing}.drawing-viewer>img{position:absolute;top:4%;right:4%;bottom:4%;left:4%;width:92%;height:92%;display:block;object-fit:contain;opacity:0;filter:contrast(1.02);transform-origin:center;transition:opacity .16s ease;-webkit-user-select:none;user-select:none;pointer-events:none}.drawing-viewer>img.is-visible{opacity:1}.drawing-empty{z-index:1;display:grid;place-items:center;gap:5px;padding:24px;color:#87908b;text-align:center}.drawing-empty.is-hidden{display:none}.drawing-empty strong{color:#5d6762;font-size:11px}.drawing-empty span:last-child{max-width:240px;font-size:9px;line-height:1.4}.empty-drawing-icon{width:42px;height:33px;position:relative;margin-bottom:5px;border:1px solid #aeb6b1;border-radius:3px;background:linear-gradient(135deg,transparent 48%,#b7bfba 49%,#b7bfba 51%,transparent 52%),#fff}.empty-drawing-icon:before,.empty-drawing-icon:after{content:"";position:absolute;background:#aeb6b1}.empty-drawing-icon:before{width:17px;height:1px;left:6px;top:8px}.empty-drawing-icon:after{width:1px;height:13px;right:8px;bottom:5px}.drawing-controls{z-index:3;position:absolute;left:10px;bottom:10px;display:flex;align-items:center;overflow:hidden;border:1px solid #d2d8d4;border-radius:6px;background:#fffffff0;box-shadow:0 3px 10px #222b261a}.drawing-controls button,.drawing-controls span{min-width:30px;height:28px;display:grid;place-items:center;border:0;border-right:1px solid #e1e5e2;background:transparent;color:#46514b;font-size:10px;font-weight:700}.drawing-controls button:hover{background:#edf4ef;color:var(--green)}.drawing-controls button:disabled{cursor:default;background:transparent;color:#a9b0ac}.drawing-controls .drawing-overview-button{min-width:104px;padding:0 10px;white-space:nowrap}.drawing-controls span{min-width:45px;color:#6f7973;font-size:8px}.drawing-controls>:last-child{border-right:0}.drawing-annotation-overlay{z-index:2;position:absolute;top:0;right:0;bottom:0;left:0;display:none;overflow:hidden;pointer-events:none}.drawing-annotation-overlay.is-visible{display:block}.drawing-annotation-box{position:absolute;min-width:8px;min-height:8px;border:2px solid #f05a28;border-radius:4px;background:#f05a2814;box-shadow:0 0 0 2px #fffc,0 5px 16px #4a322533}.drawing-annotation-box.is-point-anchor{min-width:18px;min-height:18px;border-radius:50%;background:#f05a2829}.drawing-annotation-box.has-tolerance{border-color:#c57b16;background:#d28b221a}.drawing-annotation-box.is-gdt{border-color:#2e6e49;background:#2e6e491a}.drawing-annotation-callout{position:absolute;left:-2px;bottom:calc(100% + 6px);max-width:260px;padding:5px 7px;border:1px solid #c9d1cc;border-radius:5px;background:#fffffff7;box-shadow:0 5px 16px #222b2624;color:#26302b;font-size:13px;font-weight:700;line-height:1.3;white-space:nowrap}.drawing-annotation-measurement{display:block}.drawing-annotation-callout .review-status-badges{margin-top:4px}.drawing-review-badge,.annotation-review-badge{display:inline-flex;align-items:center;gap:3px;border-radius:999px;background:#e7f2ea;color:#276342;font-size:9px;font-weight:800;line-height:1.2}.drawing-review-badge{padding:3px 6px}.drawing-annotation-box.is-callout-below .drawing-annotation-callout{top:calc(100% + 6px);bottom:auto}.drawing-annotation-box.is-callout-right .drawing-annotation-callout{right:-2px;left:auto}.annotation-overlay,.label-layer,.annotation-leader-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.annotation-overlay{z-index:2;overflow:hidden}.annotation-leader-layer{width:100%;height:100%;overflow:visible}.annotation-leader{stroke:#4d8c6f;stroke-width:1.25;stroke-linecap:round;opacity:.68;vector-effect:non-scaling-stroke}.annotation-leader.needs-review{stroke:#7b61c9;stroke-dasharray:5 4;opacity:.72}.annotation-leader.is-selected{stroke:#1677b8;stroke-width:2;stroke-dasharray:none;opacity:.96}.annotation-leader.is-focus-hidden{display:none}.annotation-label{position:absolute;transform:translate(-50%,-50%);box-sizing:border-box;width:112px;min-height:54px;display:grid;grid-template-columns:auto 1fr;gap:0 4px;align-items:baseline;padding:7px 8px;border:1px solid rgba(37,42,45,.24);border-radius:6px;background:#fffffff0;color:#1e2326;box-shadow:0 8px 18px #252a2d29;pointer-events:auto;text-align:left}.annotation-label:hover,.annotation-label.is-selected{border-color:#f05a28;box-shadow:0 8px 22px #f05a283d}.annotation-label.needs-review{border-color:#d28b22d1;background:#fff8e6f5}.annotation-label.needs-review:after{content:"review";position:absolute;transform:translate(76px,-14px);padding:2px 5px;border-radius:999px;background:#d28b22;color:#fff;font-size:8px;font-weight:800;text-transform:uppercase}.annotation-label.is-proposed{border-color:#6f4bd8eb;background:#f7f3fff7}.annotation-label.is-proposed:after{content:"PROPOSED";background:#6f4bd8}.annotation-leader.is-proposed,.annotation-leader.is-proposed.is-selected{stroke:#6f4bd8;stroke-dasharray:5 4;opacity:.9}.annotation-title{grid-column:1 / -1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.05;font-weight:800}.annotation-value{font-size:12px;line-height:1.15;font-weight:700;color:#394549}.annotation-unit{font-size:11px;color:#526064}.annotation-angle{font-size:11px;font-weight:800;color:#9c562d}.annotation-type,.annotation-review-status{grid-column:1 / -1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#526064}.annotation-label .review-status-badges{grid-column:1 / -1;margin-top:3px}.annotation-review-badge{padding:2px 5px}.annotation-panel{min-width:0;min-height:0;display:flex;flex-direction:column;background:#fbfaf7;overflow:hidden;border:1px solid #d8ded9;border-radius:9px;box-shadow:0 3px 12px #1f2a230d}.annotation-panel.is-detail-mode{background:#fff}.panel-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e2ded5}.panel-header h1,.detail-title h2,.empty-detail h2{margin:0;font-size:16px;line-height:1.2}.panel-header p,.empty-detail p{margin:4px 0 0;font-size:12px;color:#667174}.detail-mode-header{flex:0 0 auto;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #e2ded5;background:#fbfaf7}.detail-mode-header h1{min-width:0;margin:0;overflow:hidden;color:#1e2326;font-size:16px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.detail-mode-header p{min-width:0;margin:4px 0 0;overflow:hidden;color:#2e6e49;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.back-button{min-width:96px;white-space:nowrap}.ap242-guide{flex:0 0 auto;margin:8px 10px 0;border:1px solid #c9d8cf;border-radius:7px;background:#f3f8f5;color:#28312d}.ap242-guide summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;cursor:pointer;color:#2e6e49;font-size:11px;font-weight:800}.ap242-guide summary small{color:#6c7a72;font-size:9px;font-weight:600}.ap242-guide-intro{margin:0;padding:0 10px 8px;color:#5e6b65;font-size:10px;line-height:1.5}.ap242-guide-grid{display:grid;gap:5px;padding:0 10px 8px}.ap242-guide-item{display:grid;gap:2px;padding:6px 7px;border-left:3px solid #7d8a84;border-radius:4px;background:#ffffff94}.ap242-guide-item strong{font-size:10px}.ap242-guide-item span{color:#5e6b65;font-size:9px;line-height:1.45}.ap242-guide-item.is-supported{border-left-color:#2e6e49}.ap242-guide-item.is-graphic{border-left-color:#c78432}.ap242-guide-item.is-context{border-left-color:#8b9290}.ap242-guide-steps{display:grid;gap:3px;margin:0 10px 10px;padding-top:8px;border-top:1px solid #d8e4dc;color:#2e6e49;font-size:9px;line-height:1.45}.ap242-guide-steps span{color:#5e6b65}.annotation-list{flex:1 1 auto;min-height:120px;overflow:auto;padding:7px;border-bottom:1px solid #e2ded5}.annotation-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:8px 9px;margin:0 0 6px;border:1px solid transparent;border-radius:6px;background:transparent;color:#1e2326;text-align:left}.annotation-row:hover,.annotation-row.is-selected{background:#f1eee6;border-color:#cfc8ba}.annotation-row.has-semantic-decision{box-shadow:inset 3px 0 #2e6e49}.annotation-row.semantic-degraded{box-shadow:inset 3px 0 #b97724}.annotation-row.semantic-ignored{box-shadow:inset 3px 0 #78827e}.annotation-row.semantic-rejected{box-shadow:inset 3px 0 #a74b45}.row-main{min-width:0;display:grid;gap:2px}.row-main strong,.row-main span,.row-status-text,.row-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-main strong{font-size:13px}.row-main span,.row-status{font-size:11px;color:#667174}.row-value{align-self:start;font-weight:800;font-size:13px;color:#2e6e49}.row-status{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:8px}.row-status-text{min-width:0}.semantic-review-badge{flex:0 0 auto;display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border:1px solid #b9cfc0;border-radius:999px;background:#e7f2ea;color:#276342;font-size:9px;font-weight:800;white-space:nowrap}.review-status-badges{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px}.review-status-icon{width:13px;height:13px;flex:0 0 13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.semantic-review-badge.is-edited,.drawing-review-badge.is-edited,.annotation-review-badge.is-edited,.drawing-review-badge.is-repaired,.annotation-review-badge.is-repaired{border-color:#e4b69f;background:#fff0e8;color:#a44720}.drawing-review-badge.is-degraded,.annotation-review-badge.is-degraded{background:#fff1d8;color:#8a5515}.drawing-review-badge.is-ignored,.annotation-review-badge.is-ignored{background:#eef0ef;color:#59635f}.drawing-review-badge.is-rejected,.annotation-review-badge.is-rejected{background:#f9e6e4;color:#8d3934}.semantic-review-badge.is-repaired{border-color:#9fbda9;background:#dcece1}.semantic-review-badge.is-degraded{border-color:#e3c08d;background:#fff1d8;color:#8a5515}.semantic-review-badge.is-ignored{border-color:#c9cfcc;background:#eef0ef;color:#59635f}.semantic-review-badge.is-rejected{border-color:#dfb3af;background:#f9e6e4;color:#8d3934}.semantic-review-badge.is-pending{border-style:dashed;border-color:#c5bbb0;background:#f7f3ed;color:#786f65}.detail-panel{min-height:0;flex:0 1 auto;overflow:auto;padding:12px 14px}.detail-panel-expanded{flex:1 1 auto;padding:14px;background:#fff}.detail-panel-expanded .edit-form{max-width:520px;margin:0 auto}.inline-message{margin-bottom:12px;padding:8px 10px;border-radius:6px;background:#edf5ef;color:#2e6e49;font-size:12px}.semantic-review-state{display:grid;gap:3px;padding:10px 12px;border:1px solid #b9cfc0;border-left:4px solid #2e6e49;border-radius:7px;background:#edf5ef}.semantic-review-state>span{color:#2e6e49;font-size:10px;font-weight:800}.semantic-review-state>strong{color:#244c36;font-size:13px}.semantic-review-state>small{color:#5e6b65;font-size:10px;line-height:1.45}.semantic-review-state.is-degraded{border-color:#e3c08d;border-left-color:#b97724;background:#fff7ea}.semantic-review-state.is-degraded>span,.semantic-review-state.is-degraded>strong{color:#865316}.semantic-review-state.is-ignored{border-color:#c9cfcc;border-left-color:#78827e;background:#f1f3f2}.semantic-review-state.is-ignored>span,.semantic-review-state.is-ignored>strong{color:#56615c}.semantic-review-state.is-rejected{border-color:#dfb3af;border-left-color:#a74b45;background:#fbefee}.semantic-review-state.is-rejected>span,.semantic-review-state.is-rejected>strong{color:#873b36}.semantic-review-state.is-pending{border-style:dashed;border-color:#cfc5ba;border-left-color:#9a8f84;background:#f8f5f0}.semantic-review-state.is-pending>span,.semantic-review-state.is-pending>strong{color:#746b62}.ap242-selection-note{display:grid;gap:3px;padding:8px 10px;border-left:3px solid #8b9290;border-radius:5px;background:#f1f3f1;font-size:10px;line-height:1.45}.ap242-selection-note strong{font-size:10px}.ap242-selection-note span{color:#5e6b65}.ap242-selection-note.is-supported{border-left-color:#2e6e49;background:#edf5ef}.ap242-selection-note.is-graphic{border-left-color:#c78432;background:#fff7ea}.ap242-selection-note.is-warning{border-left-color:#bf7a27;background:#fff8ed}.ap242-selection-note.is-context{border-left-color:#8b9290}.edit-form{display:grid;gap:12px}.detail-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #d8ded9;border-radius:7px;background:#d8ded9}.detail-summary-grid>div{min-width:0;display:grid;gap:3px;padding:9px 10px;background:#fff}.detail-summary-grid span,.detail-section-title span{color:#667174;font-size:9px;font-weight:800;text-transform:uppercase}.detail-summary-grid strong{min-width:0;overflow:hidden;color:#22302a;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.detail-section{display:grid;gap:10px;padding:11px;border:1px solid #e0ded7;border-radius:8px;background:#fff}.review-focus-section{border-color:#b9cfc0;background:#f6faf7;box-shadow:inset 3px 0 #2e6e49}.detail-section-title{display:flex;align-items:center;gap:8px;padding-bottom:7px;border-bottom:1px solid #ece8df}.detail-section-title:after{content:"";height:1px;flex:1 1 auto;background:#f1eee7}.review-focus-section .detail-section-title{border-bottom-color:#d8e4dc}.review-focus-section .detail-section-title span{color:#2e6e49}.detail-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.semantic-action-block{display:grid;gap:10px;padding-top:10px;border-top:1px solid #ece8df}.semantic-action-block.is-compact{grid-template-columns:minmax(0,1fr);padding-top:0;border-top:0}.semantic-action-block.is-compact .primary-button{min-height:40px}.detail-disclosure{border:1px solid #e0ded7;border-radius:8px;background:#fff}.detail-disclosure summary{min-height:38px;display:flex;align-items:center;padding:0 11px;cursor:pointer;color:#4b5558;font-size:11px;font-weight:800;text-transform:uppercase}.detail-disclosure[open] summary{border-bottom:1px solid #ece8df}.detail-disclosure .detail-section{border:0;border-radius:0;background:transparent}.tolerance-editor{display:grid;gap:10px;margin:0;padding:11px;border:1px solid #d6d0c4;border-radius:8px;background:#f8f6f0b8}.tolerance-editor legend{padding:0 5px;color:#4b5558;font-size:11px;font-weight:800}.tolerance-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.tolerance-editor [hidden]{display:none}.detail-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-title span{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#667174}.field,.field-readonly{display:grid;gap:5px}.semantic-overrides{border:1px solid var(--border);border-radius:10px;padding:10px}.semantic-overrides summary{cursor:pointer;font-weight:700;margin-bottom:8px}.semantic-overrides[open]{display:grid;gap:10px}.field span,.field-readonly span{font-size:11px;color:#667174}.field input,.field select{min-width:0;width:100%;height:36px;padding:7px 9px;border:1px solid #c7c0b3;border-radius:6px;background:#fff;color:#1e2326}.field input:focus,.field select:focus{outline:2px solid rgba(77,140,111,.35);border-color:#4d8c6f}.field-readonly strong{min-width:0;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.field-readonly.is-primary{padding:10px 11px;border:1px solid #c9d8cf;border-radius:7px;background:#f3f8f5}.field-readonly.is-primary strong{color:#244c36;font-size:18px;line-height:1.15}.engineering-semantics{display:grid;gap:9px;padding:10px;border:1px solid #c9d8cf;border-radius:7px;background:#f3f8f5}.engineering-semantics-title{padding-bottom:7px;border-bottom:1px solid #d8e4dc}.engineering-semantics-title span{color:#2e6e49;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.primary-button,.secondary-button,.ghost-button{min-height:34px;border:1px solid transparent;border-radius:6px;padding:7px 11px;font-weight:700}.primary-button{background:#2e6e49;color:#fff}.secondary-button{background:#fff;border-color:#c7c0b3;color:#252a2d}.ghost-button{width:100%;background:transparent;border-color:#d6d0c4;color:#667174}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.48}.panel-footer{z-index:1;flex:0 0 auto;display:grid;gap:8px;padding:10px 14px 12px;border-top:1px solid #e2ded5;background:#fbfaf7;box-shadow:0 -5px 12px #1f2a230d}.empty-detail{padding:14px;border:1px dashed #c7c0b3;border-radius:6px}.review-actionbar{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 22px;border-top:1px solid #d8ded9;background:#fffffff7;box-shadow:0 -5px 16px #202a230d}.review-readiness{min-width:0;display:flex;align-items:center;gap:10px}.review-readiness>span:last-child{min-width:0;display:grid;gap:2px}.review-readiness strong,.review-readiness small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-readiness strong{color:#37403b;font-size:11px}.review-readiness small{color:#77807b;font-size:9px}.readiness-icon{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#e9f4ed;color:var(--green);font-size:12px;font-weight:900}.confirm-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--green);border-radius:6px;padding:8px 15px;background:var(--green);color:#fff;font-size:11px;font-weight:800;box-shadow:0 4px 10px #28784f29}.confirm-button:hover{background:var(--green-dark)}.confirm-button:disabled{cursor:not-allowed;border-color:#b7bfba;background:#b7bfba;box-shadow:none}.result-screen{overflow:auto;padding:34px 20px;background:radial-gradient(circle at 50% 10%,rgba(222,241,229,.8),transparent 38%),#f2f4f2}.result-screen[hidden],.review-screen[hidden],.dialog-backdrop[hidden]{display:none}.result-card{width:min(720px,100%);min-height:420px;display:flex;flex-direction:column;align-items:center;margin:0 auto;padding:42px 48px 30px;border:1px solid #d8ded9;border-radius:14px;background:#fff;box-shadow:0 15px 44px #1f302617;text-align:center}.result-check{width:54px;height:54px;display:grid;place-items:center;margin-bottom:15px;border-radius:50%;background:#e5f3e9;color:var(--green);font-size:23px;font-weight:900;box-shadow:0 0 0 8px #e5f3e985}.result-card h1{margin:4px 0 8px;color:var(--ink);font-size:25px}.result-card>p{max-width:540px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.result-stats{width:100%;display:grid;grid-template-columns:repeat(4,1fr);margin:28px 0 24px;border:1px solid #e1e5e2;border-radius:9px;background:#f8faf8}.result-stats div{display:grid;gap:3px;padding:16px 10px;border-right:1px solid #e1e5e2}.result-stats div:last-child{border-right:0}.result-stats strong{color:var(--green);font-size:20px}.result-stats span{color:#747d78;font-size:9px}.result-actions{display:flex;align-items:center;justify-content:center;gap:8px}.result-semantic-export{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,210px) auto;align-items:center;gap:10px;margin-top:16px;padding:12px;border:1px solid #c9d8cf;border-radius:9px;background:#f3f8f5;text-align:left}.result-semantic-export>div{min-width:0;display:grid;gap:3px}.result-semantic-export strong{color:#2e6e49;font-size:12px}.result-semantic-export small{color:var(--muted);font-size:9px;text-transform:uppercase}.result-semantic-export input{min-width:0;height:36px;padding:7px 9px;border:1px solid #b9c9bf;border-radius:6px;background:#fff;color:var(--ink)}.result-semantic-export .primary-button{min-height:36px;white-space:nowrap}.result-primary{min-height:38px;padding-inline:18px}.result-note{margin-top:18px!important;font-size:9px!important}.dialog-backdrop{z-index:100;position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#1219158c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.confirm-dialog{width:min(460px,100%);position:relative;padding:30px;border:1px solid #d8ded9;border-radius:12px;background:#fff;box-shadow:0 24px 64px #111b1542;text-align:center}.dialog-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:#77807b;font-size:22px}.dialog-icon{width:42px;height:42px;display:grid;place-items:center;margin:0 auto 12px;border-radius:50%;background:#e8f4ec;color:var(--green);font-weight:900}.confirm-dialog h2{margin:0 0 8px;color:var(--ink);font-size:18px}.confirm-dialog>p{margin:0 auto;color:var(--muted);font-size:11px;line-height:1.5}.dialog-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:20px 0;overflow:hidden;border:1px solid #e0e5e1;border-radius:7px;background:#e0e5e1}.dialog-summary span{display:grid;gap:2px;padding:11px 6px;background:#f7f9f7;color:#7a837e;font-size:8px}.dialog-summary strong{color:#38423c;font-size:15px}.dialog-actions{display:flex;justify-content:center;gap:8px}.dialog-actions .secondary-button,.dialog-actions .confirm-button{min-height:38px}@media(max-width:1100px){body{overflow:auto}.topbar{height:auto;min-height:52px;flex-wrap:wrap;padding:10px 18px}.pipeline-form{order:3;flex-basis:100%;justify-content:flex-start}#app{min-height:100vh;height:auto}.review-screen{min-height:calc(100vh - 122px)}.review-workspace{grid-template-columns:1fr;grid-template-rows:minmax(480px,65vh) auto;padding-bottom:14px}.annotation-panel{min-height:520px}.status{display:none}.review-actionbar{position:sticky;bottom:0;z-index:20}}@media(max-width:760px){.topbar{align-items:flex-start;flex-direction:column;padding:10px 12px;gap:6px}.brand,.pipeline-form{width:100%;max-width:none}.pipeline-form{justify-content:flex-start;flex-wrap:wrap}.file-control{flex:1 1 150px}.file-control input{width:100%}.flow-bar{padding-inline:12px}.flow-divider{width:12px}.flow-step small{display:none}.flow-step strong{white-space:normal}.review-workspace{grid-template-rows:auto auto;padding:12px}.comparison-header{align-items:flex-start;flex-direction:column;gap:6px}.comparison-header p{text-align:left}.comparison-grid{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(390px,54vh))}.pane-hint{display:none}.review-actionbar{align-items:stretch;flex-direction:column;padding:10px 12px}.review-actionbar .confirm-button{width:100%}.result-card{padding:34px 18px 24px}.result-stats{grid-template-columns:repeat(2,1fr)}.result-stats div:nth-child(2){border-right:0}.result-stats div:nth-child(-n+2){border-bottom:1px solid #e1e5e2}.result-actions,.dialog-actions{width:100%;flex-direction:column}.result-semantic-export{grid-template-columns:1fr}.result-actions button,.dialog-actions button,.result-semantic-export .primary-button{width:100%}.annotation-label{width:96px}}@media(max-width:480px){.flow-step>span:last-child{display:none}.flow-divider{flex:1}.comparison-grid{grid-template-rows:repeat(2,minmax(340px,52vh))}}
