:root {
            --medical-primary: #2c7da0;
            --medical-accent: #61a5c2;
            --pain-low: #a7e0b0;
            --pain-mild: #ffe5b4;
            --pain-moderate: #ffcc99;
            --pain-severe: #e9a6a6;
            --pain-extreme: #c96f6f;
        }
        .pain-slider {
            width: 100%;
            margin: 1rem 0;
        }
        .pain-slider input {
            width: 100%;
            accent-color: var(--medical-primary);
        }
        .pain-meter {
            height: 20px;
            background: linear-gradient(90deg, #2ecc71, #f1c40f, #e67e22, #e74c3c);
            border-radius: 20px;
            margin: 15px 0;
            position: relative;
        }
        .pain-marker {
            position: absolute;
            width: 24px;
            height: 24px;
            background: #2c3e50;
            border: 3px solid white;
            border-radius: 50%;
            top: -2px;
            transform: translateX(-50%);
            box-shadow: 0 2px 6px rgba(0,0,0,0.2);
            transition: left 0.2s ease;
        }
        .score-badge {
            font-size: 2.8rem;
            font-weight: 700;
            line-height: 1;
        }
        .pain-level-tag {
            display: inline-block;
            padding: 0.4rem 1rem;
            border-radius: 40px;
            font-weight: 600;
        }
        .level-none { background: #e8f5e9; color: #2e7d32; }
        .level-mild { background: #fff8e1; color: #b76e0e; }
        .level-moderate { background: #ffede0; color: #c45c1a; }
        .level-severe { background: #fbe9e7; color: #bf360c; }
        .level-extreme { background: #ffebee; color: #b71c1c; }
        .faces-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 0.5rem;
            background: #f8fafc;
            border-radius: 2rem;
            padding: 1rem;
        }
        .face-icon {
            font-size: 2.2rem;
            cursor: pointer;
            transition: transform 0.1s ease;
            opacity: 0.6;
            filter: grayscale(0.3);
        }
        .face-icon.active-face {
            opacity: 1;
            transform: scale(1.2);
            filter: grayscale(0);
            text-shadow: 0 0 6px rgba(44,125,160,0.4);
        }
        .pain-qualities {
            display: flex;
            flex-wrap: wrap;
            gap: 0.6rem;
            margin-top: 0.5rem;
        }
        .quality-badge {
            background: #eef2f5;
            padding: 0.4rem 0.9rem;
            border-radius: 30px;
            font-size: 0.85rem;
            cursor: pointer;
            transition: all 0.2s;
            border: 1px solid #dce5ec;
        }
        .quality-badge.selected-quality {
            background: var(--medical-primary);
            color: white;
            border-color: var(--medical-primary);
        }
        .impact-option {
            padding: 0.6rem 1rem;
            border-radius: 12px;
            background: #ffffff;
            border: 1px solid #dee2e6;
            cursor: pointer;
            transition: all 0.15s;
            text-align: center;
        }
        .impact-option.selected-impact {
            background: var(--medical-primary);
            border-color: var(--medical-primary);
            color: white;
        }
        .clinical-note {
            background: #eef2fa;
            border-left: 4px solid #2c7da0;
            padding: 1rem;
            margin: 1.5rem 0;
            border-radius: 0 12px 12px 0;
        }
        .disclaimer-box {
            background: #fff8e7;
            border: 1px solid #ffe2b5;
            font-size: 0.85rem;
            padding: 0.8rem;
            border-radius: 12px;
        }
        .authority-ref {
            font-size: 0.9rem;
            border-top: 1px solid #e2e8f0;
            margin-top: 2rem;
            padding-top: 1rem;
        }
        .results-card {
            background: #ffffff;
            border-radius: 20px;
            box-shadow: 0 8px 20px rgba(0,0,0,0.05);
            padding: 1.5rem;
            margin-top: 1.5rem;
        }
        .pain-canvas {
            width: 100%;
            background: #fdfdfd;
            border-radius: 16px;
            margin: 1rem 0;
            border: 1px solid #e2edf2;
        }
        .btn-medical {
            background: var(--medical-primary);
            color: white;
            border-radius: 40px;
            padding: 0.6rem 1.8rem;
            font-weight: 500;
        }
        .btn-medical:hover {
            background: #1f5e7e;
        }
        .selfcare-table {
            font-size: 0.9rem;
        }
        .selfcare-table td, .selfcare-table th {
            padding: 0.6rem;
        }