/*
 * Material Icons - Google
 * https://fonts.google.com/icons
 *
 * Licenza: Apache License 2.0
 * Integrato nel progetto YallaYalla
 */

/* Material Icons - Filled (default) */
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('../fonts/material-icons/MaterialIcons-Regular.woff2') format('woff2'),
         url('../fonts/material-icons/MaterialIcons-Regular.woff') format('woff');
}

.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
}

/* ===== UTILITY CLASSES ===== */

/* Dimensioni */
.material-icons.md-14 { font-size: 14px; }
.material-icons.md-16 { font-size: 16px; }
.material-icons.md-18 { font-size: 18px; }
.material-icons.md-20 { font-size: 20px; }
.material-icons.md-24 { font-size: 24px; }
.material-icons.md-28 { font-size: 28px; }
.material-icons.md-32 { font-size: 32px; }
.material-icons.md-36 { font-size: 36px; }
.material-icons.md-48 { font-size: 48px; }

/* Colori (matching Bootstrap) */
.material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }
.material-icons.md-light { color: rgba(255, 255, 255, 1); }
.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }

/* Colori YallaYalla */
.material-icons.md-primary { color: #337ab7; }
.material-icons.md-success { color: #5cb85c; }
.material-icons.md-info { color: #5bc0de; }
.material-icons.md-warning { color: #f0ad4e; }
.material-icons.md-danger { color: #d9534f; }
.material-icons.md-muted { color: #777; }

/* Spinning animation per icone di loading */
.material-icons.md-spin {
    -webkit-animation: md-spin 1s infinite linear;
    animation: md-spin 1s infinite linear;
}

@-webkit-keyframes md-spin {
    0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}

@keyframes md-spin {
    0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}

/* Pulse animation */
.material-icons.md-pulse {
    -webkit-animation: md-pulse 1s infinite;
    animation: md-pulse 1s infinite;
}

@-webkit-keyframes md-pulse {
    0% { opacity: 1; }
    50% { opacity: 0.4; }
    100% { opacity: 1; }
}

@keyframes md-pulse {
    0% { opacity: 1; }
    50% { opacity: 0.4; }
    100% { opacity: 1; }
}

/* Vertical align helpers */
.material-icons.md-middle { vertical-align: middle; }
.material-icons.md-top { vertical-align: top; }
.material-icons.md-bottom { vertical-align: bottom; }
.material-icons.md-text-top { vertical-align: text-top; }
.material-icons.md-text-bottom { vertical-align: text-bottom; }

/* Flip e rotate */
.material-icons.md-flip-h { -webkit-transform: scaleX(-1); transform: scaleX(-1); }
.material-icons.md-flip-v { -webkit-transform: scaleY(-1); transform: scaleY(-1); }
.material-icons.md-rotate-90 { -webkit-transform: rotate(90deg); transform: rotate(90deg); }
.material-icons.md-rotate-180 { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
.material-icons.md-rotate-270 { -webkit-transform: rotate(270deg); transform: rotate(270deg); }

/* Button icon helper - per icone dentro bottoni */
.btn .material-icons {
    font-size: inherit;
    vertical-align: middle;
    margin-top: -2px;
}

.btn-lg .material-icons { font-size: 20px; }
.btn-sm .material-icons { font-size: 14px; }
.btn-xs .material-icons { font-size: 12px; }

/* Input group addon */
.input-group-addon .material-icons {
    font-size: 16px;
    vertical-align: middle;
}

/* Nav/Tab icons */
.nav .material-icons {
    margin-right: 5px;
    vertical-align: middle;
}

/* Alert icons */
.alert .material-icons {
    margin-right: 8px;
    vertical-align: middle;
}

/* Badge con icona */
.badge .material-icons {
    font-size: 12px;
    vertical-align: middle;
    margin-top: -1px;
}

/* List group icons */
.list-group-item .material-icons {
    margin-right: 10px;
    vertical-align: middle;
}
