@import url("../shared/ep-como-usar.css");
.tubulao-canvas { min-height: 610px; overflow: hidden; }
.tubulao-canvas svg { width: 100%; min-height: 610px; display: block; touch-action: none; }
.t-title,.t-callout,.t-action-label,.t-water-label { font-family: Helvetica, Arial, sans-serif; }
.t-title { fill: #00845d; font-size: 15px; font-weight: 700; letter-spacing: 1.2px; }
.t-label,.t-pressure-label,.t-water-label,.diagram-label { fill: #64736f; font-size: 12px; font-family: Helvetica, Arial, sans-serif; }
.t-callout { fill: #00845d; font-size: 12px; font-weight: 700; }
.t-action-label { fill: #087c5b; font-size: 13px; font-weight: 700; }
.t-concrete { fill: #edf3f0; stroke: #111b19; stroke-width: 4; }
.t-rebar { fill: none; stroke: #e5484d; stroke-width: 5; stroke-linecap: round; }
.t-rebar.blue { stroke: #2563c9; }
.t-water { stroke: #2563c9; stroke-width: 2; stroke-dasharray: 8 6; }
.t-soil { fill: #f1dfca; opacity: .78; }
.t-soil-hatch { stroke: #c5986e; stroke-width: 1; opacity: .48; }
.t-ground { stroke: #8b6a4d; stroke-width: 2; }
.t-load { stroke: #07855f; stroke-width: 3; }
.t-dim,.t-dim-ext { stroke: #83918d; stroke-width: 1.2; }
.t-tie { stroke: #111b19; stroke-width: 1.8; }
.t-leader { stroke: #64736f; stroke-width: 1.2; fill: none; }
.t-moment-point { fill:#fff; stroke-width:3; }
.t-moment-line { fill:none; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.t-moment-label { font-size:11px; font-weight:700; paint-order:stroke fill; stroke:#fff; stroke-width:3px; }
.canvas-legend .legend-concrete,.canvas-legend .legend-soil,.canvas-legend .legend-action,.canvas-legend .legend-water { display:inline-block; width:18px; height:5px; margin-right:5px; vertical-align:middle; border-radius:1px; }
.canvas-legend .legend-concrete { background:#111b19; }
.canvas-legend .legend-soil { background:#b98555; height:6px; }
.canvas-legend .legend-action { background:#07855f; height:2px; }
.canvas-legend .legend-water { background:#2563c9; height:2px; }
.pressure-line { fill: none; stroke: #07855f; stroke-width: 3; }
.pressure-fill { fill: #dff1ea; opacity: .85; }
.pressure-limit { stroke: #e5484d; stroke-width: 2; stroke-dasharray: 7 5; }
.diagram-axis { stroke: #9eadaa; stroke-width: 1.3; }
.t-pressure-axis { stroke:#84938e; stroke-width:1.2; }
.t-pressure-grid { stroke:#d9e4df; stroke-width:1; stroke-dasharray:4 5; }
.t-pressure-area { fill:#dff0e9; opacity:.9; }
.t-pressure-line { stroke:#00845d; stroke-width:3; }
.t-pressure-limit { stroke:#df4a4f; stroke-width:2; stroke-dasharray:8 7; }
.t-pressure-title,.t-pressure-note,.t-pressure-tick,.t-pressure-limit-label { fill:#64736f; font-size:11px; font-family:Helvetica,Arial,sans-serif; }
.t-pressure-title { fill:#00845d; font-weight:700; letter-spacing:.25px; }
.t-pressure-limit-label { fill:#be3c42; font-weight:700; }
.geometry-summary dl { display: grid; grid-template-columns: 1fr 1fr; gap: 11px 20px; margin: 0; }
.geometry-summary dt { color: #687672; font-size: .85rem; }
.geometry-summary dd { margin: 2px 0 0; color: #101a18; font-weight: 700; }
.design-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 16px 0; }
.design-key { border: 1px solid #d7e2de; border-left: 4px solid #16aa78; border-radius: 12px; padding: 16px; display: grid; gap: 5px; }
.design-key strong { color: #0c2019; }.design-key span { color: #65736f; font-size: .9rem; }
.t-check { display: grid; grid-template-columns: 15px minmax(200px,1.4fr) 118px minmax(110px,.7fr) 105px minmax(140px,.75fr); gap: 12px; align-items: center; border: 1px solid #dce7e3; border-left: 4px solid #16aa78; border-radius: 10px; padding: 12px 14px; margin-top: 9px; }
.t-check.failed { border-left-color: #df4a4f; }.t-check i { width: 10px; height: 10px; border-radius: 50%; background: #18ab78; }.t-check.failed i { background: #df4a4f; }.t-check strong,.t-check small,.t-check span { display: block; }.t-check small { color:#71807b; margin-top:3px; font-size:.78rem; }.t-check span { color:#00845d; font-weight:700; font-size:.84rem; }.t-check.failed span { color:#b43c40; }.t-figures strong { font-size:.9rem; color:#101a18; }.t-figures em { display:block; margin-top:2px; font-style:normal; font-size:.78rem; color:#71807b; }
.t-check progress { accent-color:#17a877; width:100%; height:7px; }.t-check.failed progress { accent-color:#df4a4f; }
.review-row td { color: #a4373b; background: #fff7f7; }.section-note { color:#64736f; margin: 14px 0; }
.memory-preview { white-space: pre-wrap; font-family: Helvetica, Arial, sans-serif; line-height: 1.65; border: 1px solid #dbe5e1; border-radius: 12px; background: #fff; padding: 28px; color: #26332f; }
#detailing-preview { width: 100%; display: block; background: #edf1ef; border-radius: 12px; }
.sheet { fill: #fff; stroke: #bdcbc6; stroke-width: 2; }.sheet-frame { fill:none; stroke:#111b19; stroke-width:1.5; }.sheet-kicker { fill:#00845d; font-size:11px; letter-spacing:1px; }.sheet-title { fill:#101a18; font-size:23px; font-weight:700; }.sheet-callout { fill:#00845d; font-size:14px; font-weight:700; }.sheet-note { fill:#586763; font-size:13px; }.sheet-concrete { fill:#eef3f0; stroke:#111b19; stroke-width:3; }.sheet-rebar { fill:none; stroke:#e5484d; stroke-width:4; stroke-linecap:round; }.sheet-tie { fill:none; stroke:#151f1d; stroke-width:2.5; }.sheet-rebar-dot { fill:#e5484d; stroke:#fff; stroke-width:1.5; }.sheet-dim { stroke:#7b8a85; stroke-width:1.2; }.sheet-dim-ext { stroke:#7b8a85; stroke-width:1; }.sheet-arrow { fill:#7b8a85; }.sheet-leader { fill:none; stroke:#64736f; stroke-width:1.2; }.material-table { fill:#fff; stroke:#1a2824; stroke-width:1.4; }
@media (max-width: 900px) { .tubulao-canvas,.tubulao-canvas svg { min-height: 490px; }.design-summary { grid-template-columns:1fr; }.t-check { grid-template-columns:15px 1fr; }.t-check .t-figures,.t-check progress,.t-check span,.t-check > small:last-child { grid-column:2; }.analysis-grid { grid-template-columns:1fr; } }
