/* --- Image Compressor (50KB) Styles --- */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap');

.i50kb-wrapper {
    font-family: 'Nunito', sans-serif;
    background-color: #F5F5DC; /* Light Cream */
    padding: 30px; border-radius: 20px;
    max-width: 550px; margin: 40px auto;
}
.i50kb-container {
    background-color: #fff; border-radius: 16px; padding: 30px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08); text-align: center;
}
.i50kb-header .fa-compress-arrows-alt { font-size: 2.5rem; color: #4CAF50; margin-bottom: 10px; }
.i50kb-header h2 { font-size: 1.8rem; color: #333; margin: 0 0 5px; }
.i50kb-header p { color: #666; margin-bottom: 25px; }
.i50kb-file-drop-area {
    position: relative; border: 2px dashed #ddd; border-radius: 12px;
    padding: 40px 20px; transition: background-color 0.3s;
}
.i50kb-file-drop-area:hover { background-color: #F9F9F9; }
.i50kb-file-drop-area input { position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer; }
.i50kb-file-dummy .fa-image { color: #8BC34A; font-size: 2.5rem; margin-bottom: 10px; }
.i50kb-file-dummy p { margin: 0; font-size: 1.1rem; color: #555; font-weight: 600; }
.i50kb-file-dummy span { font-size: 0.85rem; color: #999; margin-top: 5px; }

/* Loading & Result */
#i50kb-loading-block { padding: 40px 0; }
.i50kb-spinner {
    border: 4px solid #f3f3f3; border-top: 4px solid #4CAF50;
    border-radius: 50%; width: 40px; height: 40px; margin: 0 auto 15px;
    animation: i50kb-spin 1s linear infinite;
}
@keyframes i50kb-spin { to { transform: rotate(360deg); } }
#i50kb-loading-block p { font-weight: 600; color: #555; font-size: 1.1rem; }
#i50kb-output-block h3 { font-size: 1.5rem; color: #333; margin-bottom: 20px; }
.i50kb-comparison-grid {
    display: flex; justify-content: space-around;
    background-color: #F9F9F9; padding: 15px; border-radius: 10px; margin-bottom: 20px;
}
.i50kb-info-box h4 { margin: 0 0 5px; color: #666; font-size: 0.9rem; }
.i50kb-info-box p { margin: 0; font-size: 1.2rem; font-weight: 700; color: #4CAF50; }
.i50kb-preview-area {
    margin-bottom: 25px; border: 1px solid #eee; padding: 10px; border-radius: 8px;
}
#i50kb-preview-image { max-width: 100%; height: auto; border-radius: 4px; }

/* Button & Message */
.i50kb-btn {
    display: inline-block; width: 100%; box-sizing: border-box;
    padding: 15px; font-size: 1.1rem; font-weight: 700; text-decoration: none;
    color: #fff; background-color: #4CAF50; /* Green */
    border: none; border-radius: 10px; cursor: pointer;
    transition: background-color 0.2s;
}
.i50kb-btn:hover { background-color: #45A049; }
.i50kb-btn i { margin-right: 8px; }
.i50kb-message { padding: 12px; margin-top: 20px; border-radius: 8px; background-color: #FFEBEE; color: #C62828; }