.input-group-custom { margin-bottom: 1rem; }
        .deep-dive { margin: 1.8rem 0; }
        .deep-dive p { text-align: justify; }
        .unit-note { font-size: 0.9rem; color: #6c757d; }
        .coord-input { margin-bottom: 0.5rem; }
        .geometry-canvas { width: 100%; height: auto; background-color: #f7fbf9; border: 1px solid #ddd; border-radius: 8px; margin-top: 1.5rem; display: block; }
        .canvas-container { text-align: center; margin-top: 1rem; }
        .legend { display: flex; justify-content: center; gap: 2rem; margin: 0.5rem 0; font-size: 0.9rem; flex-wrap: wrap; }
        .legend-item { display: flex; align-items: center; gap: 0.3rem; }
        .legend-color { width: 16px; height: 16px; border-radius: 50%; }
        .legend-color.dark { background-color: #2c3e50; }
        .legend-color.green { background-color: #1a7a5a; }
        .legend-color.orange { background-color: #e67e22; }
        .legend-color.blue { background-color: #2e86de; }
        .legend-color.brown { background-color: #8b6b4d; }
        .input-group-prepend-custom { background-color: #f0f4f2; border: 1px solid #ced4da; border-right: none; padding: 0.375rem 0.75rem; border-radius: 0.375rem 0 0 0.375rem; display: flex; align-items: center; font-weight: 500; color: #1a7a5a; }
        .input-group-custom .result-card { background: linear-gradient(135deg, #f8fdfa 0%, #eef6f2 100%); border-radius: 12px; padding: 1.5rem; border: 1px solid #d0e6dc; margin-top: 1rem; }
        .result-card .stat { padding: 0.75rem; border-bottom: 1px solid #dce8e2; }
        .result-card .stat:last-child { border-bottom: none; }
        .stat-label { font-weight: 500; color: #2c3e50; }
        .stat-value { font-weight: 700; color: #1a7a5a; font-size: 1.4rem; }
        .stat-value.tonnage { font-size: 2rem; }
        .density-ref { background: white; border-radius: 8px; padding: 1rem; border: 1px solid #dce8e2; margin: 1rem 0; }
        .density-ref table { width: 100%; font-size: 0.95rem; }
        .density-ref th { font-weight: 600; color: #1a7a5a; }
        .project-tip { background: #fff8e7; border-left: 4px solid #f39c12; padding: 0.75rem 1rem; border-radius: 0 4px 4px 0; margin: 0.5rem 0; }
        .unit-toggle { display: flex; gap: 0.5rem; align-items: center; margin-bottom: 0.5rem; }
        .unit-toggle .btn-group .btn { font-size: 0.8rem; padding: 0.25rem 0.75rem; }
        .unit-toggle .btn-group .btn.active { background-color: #1a7a5a; border-color: #1a7a5a; color: white; }
        .inline-icon { color: #1a7a5a; margin-right: 0.3rem; }
        .feature-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin: 1.5rem 0; }
        .feature-item { background: white; padding: 1rem; border-radius: 8px; border: 1px solid #e0ece6; text-align: center; }
        .feature-item i { font-size: 2rem; color: #1a7a5a; margin-bottom: 0.5rem; }
        .feature-item h6 { font-weight: 600; color: #1a3d32; }
        .material-selector { background: #f8fcf9; border-radius: 8px; padding: 1rem; border: 1px solid #d0e6dc; }
        .unit-change-notice { display: none; background-color: #d1ecf1; border: 1px solid #bee5eb; color: #0c5460; padding: 0.5rem 1rem; border-radius: 4px; margin: 0.5rem 0; }
        .unit-change-notice.show { display: block; }