/* Messages CSS - Professional Dark Mode Message Styles */

/* Message Container */
.widget-message {
    padding: 1rem 1.5rem;
    border-radius: var(--border-radius-small);
    margin-bottom: 1rem;
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-medium);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border: 1px solid;
    box-shadow: var(--shadow-small);
}

/* Success Messages - laut ui-widget-messages.mdc Regel 001: blauer Text und Hintergrund */
.widget-message-success {
    background: var(--color-success-bg);
    border-color: var(--color-success);
    color: var(--color-success);
}

.widget-message-success::before {
    content: '✓';
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-lg);
    color: var(--color-success);
}

/* Error Messages - laut ui-widget-messages.mdc Regel 002: roter Text und Hintergrund */
.widget-message-error {
    background: var(--color-error-bg);
    border-color: var(--color-error);
    color: var(--color-error);
}

.widget-message-error::before {
    content: '✗';
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-lg);
    color: var(--color-error);
}

/* Warning Messages */
.widget-message-warning {
    background: var(--color-warning-bg);
    border-color: var(--color-warning);
    color: var(--color-warning);
}

.widget-message-warning::before {
    content: '⚠';
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-lg);
    color: var(--color-warning);
}

/* Info Messages */
.widget-message-info {
    background: var(--color-info-bg);
    border-color: var(--color-info);
    color: var(--color-info);
}

.widget-message-info::before {
    content: 'ℹ';
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-lg);
    color: var(--color-info);
}

/* Message Close Button */
.widget-message-close {
    margin-left: auto;
    background: none;
    border: none;
    color: inherit;
    font-size: var(--font-size-lg);
    cursor: pointer;
    padding: 0.25rem;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.widget-message-close:hover {
    background: rgba(0, 0, 0, 0.1);
}

/* Message List */
.widget-message-list {
    position: fixed;
    top: 2rem;
    right: 2rem;
    z-index: 10000;
    max-width: 400px;
}

.widget-message-list .widget-message {
    margin-bottom: 0.5rem;
}

/* Responsive Design - laut ui-css.mdc Regel 022: 4 Breakpoints */

/* Mobile: max-width 576px */
@media (max-width: 576px) {
    .widget-message {
        padding: 0.5rem 0.75rem;
        font-size: var(--font-size-xs);
    }
    
    .widget-message-list {
        top: 0.5rem;
        right: 0.5rem;
        left: 0.5rem;
    }
}

/* Tablet/iPad: 600px-768px */
@media (min-width: 600px) and (max-width: 768px) {
    .widget-message {
        padding: 0.75rem 1rem;
        font-size: var(--font-size-sm);
    }
    
    .widget-message-list {
        top: 1rem;
        right: 1rem;
        left: 1rem;
        max-width: none;
    }
}
