.tool-label {
        display: block;
        font-size: 13px;
        font-weight: 600;
        color: var(--text-light);
        text-transform: uppercase;
        letter-spacing: 0.5px;
        margin-bottom: 8px;
    }
    .tool-input {
        padding: 12px 16px;
        border: 1px solid var(--border-light);
        border-radius: 8px;
        font-size: 14px;
        background: var(--bg-light);
        color: var(--text-dark);
        transition: border-color 0.2s;
    }
    .tool-input:focus {
        outline: none;
        border-color: var(--primary-light);
        box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
    }
    .tool-select {
        padding: 12px 16px;
        border: 1px solid var(--border-light);
        border-radius: 8px;
        font-size: 14px;
        background: var(--bg-white);
        color: var(--text-dark);
        cursor: pointer;
        width: 100%;
    }
    .tool-select:focus { outline: none; border-color: var(--primary-light); }
    .currency-select { font-size: 14px; }
    .swap-btn {
        width: 44px;
        height: 44px;
        border: 1px solid var(--border-light);
        background: var(--bg-white);
        border-radius: 50%;
        cursor: pointer;
        color: var(--primary);
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.2s;
        margin-bottom: 4px;
    }
    .swap-btn:hover { background: var(--primary); color: white; border-color: var(--primary); }
    .result-box {
        background: linear-gradient(135deg, #dbeafe, #ede9fe);
        border-radius: 12px;
        padding: 24px;
        text-align: center;
    }
    .result-loading {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        color: var(--text-medium);
    }
    .spinner {
        width: 20px;
        height: 20px;
        border: 2px solid var(--border-light);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: spin 0.8s linear infinite;
    }
    @keyframes spin { to { transform: rotate(360deg); } }
    .result-amount {
        font-size: 36px;
        font-weight: 700;
        color: var(--primary);
        margin-bottom: 8px;
    }
    .result-text {
        font-size: 16px;
        color: var(--text-medium);
    }
    .rate-info {
        margin-top: 16px;
        padding: 12px 16px;
        background: var(--bg-light);
        border-radius: 8px;
        font-size: 13px;
        color: var(--text-medium);
        text-align: center;
    }
    .popular-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 10px;
    }
    .popular-btn {
        padding: 10px;
        border: 1px solid var(--border-light);
        background: var(--bg-white);
        border-radius: 6px;
        font-size: 13px;
        cursor: pointer;
        transition: all 0.2s;
        color: var(--text-medium);
    }
    .popular-btn:hover { border-color: var(--primary-light); color: var(--primary); background: var(--bg-light); }
    @media (max-width: 768px) {
        .converter-grid { grid-template-columns: 1fr !important; }
        .swap-btn { margin: 8px auto; transform: rotate(90deg); }
        .popular-grid { grid-template-columns: repeat(2, 1fr); }
        .result-amount { font-size: 28px; }
    }