.input-group-custom { margin-bottom: 1rem; }
        .result-value-lg { font-weight: 700; color: var(--primary-color); font-size: 2.2rem; }
        .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; }
        .stat-canvas { width: 100%; height: auto; background-color: #f9f9f9; border: 1px solid #ddd; border-radius: 8px; margin-top: 1.5rem; display: block; cursor: crosshair; }
        .canvas-container { text-align: center; margin-top: 1rem; position: relative; }
        .canvas-tooltip { position: absolute; display: none; background: rgba(0,0,0,0.8); color: #fff; padding: 5px 10px; border-radius: 4px; font-size: 12px; font-family: 'Courier New', monospace; pointer-events: none; z-index: 100; white-space: nowrap; border: 1px solid #555; }
        .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%; display: inline-block; }
        .legend-color.red { background-color: #dc3545; }
        .legend-color.blue { background-color: #0d6efd; }
        .legend-color.gray { background-color: #6c757d; }
        .legend-color.green { background-color: #28a745; }
        .legend-color.purple { background-color: #9b59b6; }
        .legend-line { display: inline-block; width: 24px; height: 2px; border-bottom: 2px solid #aaa; }
        .legend-line.red { border-bottom-color: #dc3545; }
        .legend-line.blue { border-bottom-color: #0d6efd; }
        .legend-line.green { border-bottom-color: #28a745; }
        .result-box { background-color: #f8f9fa; border-radius: 8px; padding: 1.5rem; margin: 1rem 0; border: 1px solid #e9ecef; }
        .result-box .label { font-weight: 600; color: #495057; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.5px; }
        .result-box .value { font-size: 1.8rem; font-weight: 700; color: #212529; }
        .result-box .value .sub { font-size: 1rem; font-weight: 400; color: #6c757d; }
        .conclusion-box { padding: 1rem 1.5rem; border-radius: 8px; font-weight: 600; font-size: 1.1rem; margin: 1rem 0; }
        .conclusion-box.reject { background-color: #f8d7da; border: 1px solid #f5c6cb; color: #721c24; }
        .conclusion-box.fail-reject { background-color: #d4edda; border: 1px solid #c3e6cb; color: #155724; }
        .data-input-area { background-color: #f8f9fa; border-radius: 8px; padding: 1rem; border: 1px solid #e9ecef; }
        .stat-summary { background-color: #fff; border-radius: 8px; padding: 1rem; border: 1px solid #dee2e6; margin-top: 0.5rem; }
        .stat-summary .stat-item { display: inline-block; margin-right: 2rem; padding: 0.25rem 0; }
        .stat-summary .stat-item .stat-label { font-size: 0.8rem; color: #6c757d; text-transform: uppercase; }
        .stat-summary .stat-item .stat-value { font-weight: 700; font-size: 1.1rem; }
        .btn-outline-primary { color: var(--primary-color); border-color: var(--primary-color); }
        .btn-outline-primary:hover { background-color: var(--primary-color); color: #fff; }
        .radio-group-inline { display: flex; gap: 1.5rem; flex-wrap: wrap; margin: 0.5rem 0; }
        .radio-group-inline .form-check { display: flex; align-items: center; }
        .radio-group-inline .form-check-input { margin-right: 0.4rem; }
        .tab-pane { padding: 1rem 0; }
        .nav-tabs .nav-tabs .effect-size-badge { display: inline-block; padding: 0.25rem 0.75rem; border-radius: 20px; font-size: 0.85rem; font-weight: 600; }
        .effect-size-badge.small { background-color: #cce5ff; color: #004085; }
        .effect-size-badge.medium { background-color: #d4edda; color: #155724; }
        .effect-size-badge.large { background-color: #f8d7da; color: #721c24; }
        .effect-size-badge.very-large { background-color: #e2d9f3; color: #4a1a7a; }
        .export-toolbar { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; margin-bottom: 0.5rem; }
        @media (max-width: 768px) {
            .legend { gap: 0.8rem; }
            .result-box .value { font-size: 1.4rem; }
            .stat-summary .stat-item { display: block; margin-right: 0; margin-bottom: 0.3rem; }
            .export-toolbar .btn { flex: 1 0 auto; }
        }