.gacha-stats-panel {
            background: #f8f9fc;
            border-radius: 20px;
            padding: 1.2rem;
            margin-bottom: 1.5rem;
            border: 1px solid rgba(70, 130, 180, 0.2);
        }
        .rarity-badge {
            display: inline-block;
            padding: 0.3rem 0.8rem;
            border-radius: 40px;
            font-weight: 600;
            font-size: 0.8rem;
            letter-spacing: 0.3px;
        }
        .rarity-5 { background: linear-gradient(135deg, #f6b93b, #e58e26); color: #2c1a0c; box-shadow: 0 2px 8px rgba(230,126,34,0.3); }
        .rarity-4 { background: linear-gradient(135deg, #9b59b6, #8e44ad); color: white; }
        .rarity-3 { background: #3498db; color: white; }
        .gacha-card-grid {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: 20px;
            max-height: 420px;
            overflow-y: auto;
            padding: 8px 4px;
        }
        .gacha-item-card {
            background: white;
            border-radius: 16px;
            padding: 12px 12px;
            min-width: 110px;
            text-align: center;
            box-shadow: 0 5px 12px rgba(0,0,0,0.05);
            transition: transform 0.15s ease;
            border-left: 4px solid;
            flex: 0 0 auto;
        }
        .gacha-item-card:hover { transform: translateY(-3px); }
        .card-5-star { border-left-color: #f39c12; background: #fff8ef; }
        .card-4-star { border-left-color: #9b59b6; background: #f9f0ff; }
        .card-3-star { border-left-color: #3498db; background: #eff7ff; }
        .item-name { font-weight: 700; font-size: 0.9rem; margin: 6px 0 2px; }
        .item-rarity-text { font-size: 0.7rem; opacity: 0.8; }
        .pull-counter {
            font-size: 2.2rem;
            font-weight: 800;
            color: #2c3e66;
        }
        .pity-indicator {
            background: #eef2ff;
            border-radius: 60px;
            padding: 0.4rem 1rem;
            display: inline-block;
        }
        .sim-btn {
            border-radius: 60px;
            padding: 10px 30px;
            font-weight: 600;
        }
        .stat-number {
            font-size: 1.8rem;
            font-weight: 800;
            line-height: 1;
        }
        .history-header {
            border-bottom: 2px solid rgba(0,0,0,0.05);
            margin-bottom: 0.8rem;
        }
        .responsible-badge {
            background: #e9ecef;
            border-radius: 20px;
            padding: 0.8rem 1.2rem;
            font-size: 0.85rem;
        }
        .probability-box {
            background: white;
            border-radius: 20px;
            padding: 1rem;
            text-align: center;
            box-shadow: 0 2px 6px rgba(0,0,0,0.03);
        }
        .fa-star-gold { color: #f1c40f; }
        .fa-star-purple { color: #9b59b6; }
        .fa-star-blue { color: #3498db; }
        .btn-outline-pity { border-color: #e67e22; color: #e67e22; }
        .btn-outline-pity:hover { background: #e67e22; color: white; }
        .loading-spinner {
            display: inline-block;
            width: 1rem;
            height: 1rem;
            border: 2px solid rgba(255,255,255,0.3);
            border-radius: 50%;
            border-top-color: white;
            animation: spin 0.6s linear infinite;
            margin-right: 8px;
        }
        @keyframes spin { to { transform: rotate(360deg); } }
        .avg-pulls {
            font-size: 1.4rem;
            font-weight: 700;
            color: #2c3e66;
        }