.nps-gauge {
            background: linear-gradient(90deg, #d9534f 0%, #f0ad4e 25%, #5bc0de 50%, #5cb85c 75%, #5cb85c 100%);
            height: 12px;
            border-radius: 12px;
            margin: 20px 0;
            position: relative;
        }
        .gauge-marker {
            position: absolute;
            top: -8px;
            width: 4px;
            height: 28px;
            background-color: #2c3e50;
            border-radius: 2px;
            transform: translateX(-50%);
            box-shadow: 0 0 3px rgba(0,0,0,0.3);
        }
        .nps-score-badge {
            font-size: 3rem;
            font-weight: 800;
            line-height: 1.2;
            text-align: center;
            padding: 1rem;
            border-radius: 16px;
            background: #f8f9fc;
            border: 1px solid #e9ecef;
        }
        .rating-badge {
            display: inline-block;
            padding: 0.3rem 1rem;
            border-radius: 40px;
            font-weight: 600;
            font-size: 1rem;
        }
        .rating-excellent { background: #d4edda; color: #155724; }
        .rating-good { background: #d1ecf1; color: #0c5460; }
        .rating-neutral { background: #fff3cd; color: #856404; }
        .rating-poor { background: #f8d7da; color: #721c24; }
        .stat-card {
            background: white;
            border-radius: 12px;
            padding: 1rem;
            text-align: center;
            box-shadow: 0 2px 8px rgba(0,0,0,0.03);
            border: 1px solid #edf2f7;
        }
        .stat-number {
            font-size: 2rem;
            font-weight: 700;
            margin-bottom: 0.25rem;
        }
        .promoter-color { color: #28a745; }
        .passive-color { color: #ffc107; }
        .detractor-color { color: #dc3545; }
        .example-group {
            margin: 1rem 0;
        }
        .nps-benchmark-note {
            background: #f1f9fe;
            border-radius: 12px;
            padding: 1.2rem;
            margin-top: 1.5rem;
            border-left: 5px solid #2c7da0;
        }
        .authority-ref {
            font-size: 0.85rem;
            border-top: 1px solid #dee2e6;
            padding-top: 1rem;
            margin-top: 1.5rem;
        }
        .explanation-box {
            background: #ffffff;
            border-radius: 16px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
            padding: 1.25rem;
            margin: 1.5rem 0;
        }
        .toast-nps {
            position: fixed;
            bottom: 20px;
            right: 20px;
            z-index: 1100;
            min-width: 260px;
            background: #2c3e50;
            color: white;
            border-radius: 12px;
            padding: 0.75rem 1.25rem;
            box-shadow: 0 5px 15px rgba(0,0,0,0.2);
            display: flex;
            align-items: center;
            gap: 10px;
            opacity: 0;
            transition: opacity 0.2s ease;
            pointer-events: none;
        }
        .toast-nps.show {
            opacity: 1;
        }
        .toast-nps i {
            font-size: 1.2rem;
        }