/* =============================================================================
   ICONOS DE LA MARCA: MATERIAL SYMBOLS ROUNDED
   -----------------------------------------------------------------------------
   La marca Livriz usa un unico set de iconos: Material Symbols Rounded, eje
   optico 24, peso 400, sin relleno, grade 0 (https://marca.app.livriz.com).

   El editor y el creador de tapas escribian sus iconos con tres sets distintos:
     - Font Awesome (clases fa-*), en nuestro HTML y JavaScript;
     - la fuente propia de Summernote (note-icon-*), en la barra del editor;
     - Themify (ti-*), en los controles del visor dFlip de la vista previa.
   Esta hoja los dibuja a todos con Material Symbols: a cada clase le asigna el
   nombre del simbolo equivalente (las ligaduras de la fuente convierten el
   nombre en el dibujo). Asi las barras de Summernote y de dFlip, que son de
   librerias de terceros, quedan en el set de la marca sin parchearlas, y no hay
   que reescribir cada icono del HTML ni los addClass/removeClass del JS.

   Las hojas de Font Awesome y Themify ya no se cargan. La unica excepcion son
   los logos de redes sociales (.fab / .fa-brands): son marcas de terceros y
   Material Symbols no los tiene, asi que siguen saliendo de Font Awesome.

   Para un icono nuevo: usar <span class="material-symbols-rounded">nombre</span>
   (https://fonts.google.com/icons). Si hace falta una clase fa-* que no esta
   aca, agregarla abajo con su equivalente; si no, no se dibuja nada.
   ============================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@24,400,0,0&display=block');

/* --- Base --------------------------------------------------------------- */
.material-symbols-rounded,
:is(.fa, .fas, .far, .fal, .fad, .fa-solid, .fa-regular):not(.fab):not(.fa-brands)::before,
[class^="note-icon-"]::before, [class*=" note-icon-"]::before,
[class^="ti-"]::before, [class*=" ti-"]::before {
    font-family: 'Material Symbols Rounded' !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    font-feature-settings: 'liga';
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    speak: never;
}
.material-symbols-rounded {
    display: inline-block;
    font-size: 1.25em;
    vertical-align: -0.225em;
    user-select: none;
}
:is(.fa, .fas, .far, .fal, .fad, .fa-solid, .fa-regular):not(.fab):not(.fa-brands),
[class^="note-icon-"], [class*=" note-icon-"],
[class^="ti-"], [class*=" ti-"] {
    display: inline-block;
    font-style: normal;
    line-height: 1;
    vertical-align: -0.225em;
    user-select: none;
}
:is(.fa, .fas, .far, .fal, .fad, .fa-solid, .fa-regular):not(.fab):not(.fa-brands)::before,
[class^="note-icon-"]::before, [class*=" note-icon-"]::before,
[class^="ti-"]::before, [class*=" ti-"]::before {
    display: inline-block;
    font-size: 1.25em;
}

/* Tamanos y modificadores de Font Awesome que se siguen usando. */
.fa-fw { width: 1.25em; text-align: center; }
.fa-xs::before { font-size: 1em !important; }
.fa-sm::before { font-size: 1.1em !important; }
.fa-lg::before { font-size: 1.6em !important; }
.fa-2x::before { font-size: 2.5em !important; }
.fa-3x::before { font-size: 3.75em !important; }
.fa-spin { animation: livriz-icono-gira 1s linear infinite; }
@keyframes livriz-icono-gira { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .fa-spin { animation-duration: 3s; } }

/* --- Font Awesome 5 y 6 -> Material Symbols ------------------------------ */
.fa-a::before { content: "match_case"; }
.fa-align-center::before { content: "format_align_center"; }
.fa-align-justify::before { content: "format_align_justify"; }
.fa-align-left::before { content: "format_align_left"; }
.fa-align-right::before { content: "format_align_right"; }
.fa-angle-double-down::before { content: "keyboard_double_arrow_down"; }
.fa-angle-double-right::before { content: "keyboard_double_arrow_right"; }
.fa-arrow-down::before { content: "arrow_downward"; }
.fa-arrow-right::before { content: "arrow_forward"; }
.fa-arrow-turn-down::before { content: "subdirectory_arrow_right"; }
.fa-arrow-up::before { content: "arrow_upward"; }
.fa-arrows-alt-h::before { content: "swap_horiz"; }
.fa-asterisk::before { content: "asterisk"; }
.fa-bold::before { content: "format_bold"; }
.fa-book::before { content: "menu_book"; }
.fa-calculator::before { content: "calculate"; }
.fa-cart-plus::before { content: "add_shopping_cart"; }
.fa-check::before { content: "check"; }
.fa-chevron-down::before { content: "expand_more"; }
.fa-chevron-right::before { content: "chevron_right"; }
.fa-circle::before { content: "circle"; }
.fa-circle-check::before { content: "check_circle"; }
.fa-circle-info::before, .fa-info-circle::before { content: "info"; }
.fa-clipboard-check::before { content: "fact_check"; }
.fa-clone::before { content: "flip_to_front"; }
.fa-cog::before { content: "settings"; }
.fa-compress-arrows-alt::before { content: "close_fullscreen"; }
.fa-copy::before { content: "content_copy"; }
.fa-cut::before { content: "content_cut"; }
.fa-download::before, .fa-file-download::before { content: "download"; }
.fa-ellipsis-h::before { content: "more_horiz"; }
.fa-ellipsis-vertical::before { content: "more_vert"; }
.fa-envelope::before { content: "mail"; }
.fa-eraser::before { content: "ink_eraser"; }
.fa-exclamation-triangle::before, .fa-triangle-exclamation::before { content: "warning"; }
.fa-eye::before { content: "visibility"; }
.fa-eye-dropper::before { content: "colorize"; }
.fa-eye-slash::before { content: "visibility_off"; }
.fa-feather-alt::before { content: "history_edu"; }
.fa-file-alt::before { content: "description"; }
.fa-file-pdf::before { content: "picture_as_pdf"; }
.fa-file-word::before { content: "article"; }
.fa-globe::before { content: "language"; }
.fa-heart::before { content: "favorite"; }
.fa-image::before { content: "image"; }
.fa-images::before { content: "photo_library"; }
.fa-italic::before { content: "format_italic"; }
.fa-lightbulb::before { content: "lightbulb"; }
.fa-link::before { content: "link"; }
.fa-list-ul::before { content: "format_list_bulleted"; }
.fa-lock::before { content: "lock"; }
.fa-lock-open::before { content: "lock_open"; }
.fa-magic::before { content: "auto_awesome"; }
.fa-minus::before { content: "remove"; }
.fa-plus::before { content: "add"; }
.fa-quote-left::before { content: "format_quote"; }
.fa-redo::before, .fa-rotate-right::before { content: "redo"; }
.fa-rotate-left::before, .fa-undo::before { content: "undo"; }
.fa-save::before { content: "save"; }
.fa-smile::before { content: "mood"; }
.fa-spinner::before { content: "progress_activity"; }
.fa-sync::before { content: "refresh"; }
.fa-table::before { content: "table"; }
.fa-tablet-alt::before { content: "tablet"; }
.fa-text-slash::before { content: "format_clear"; }
.fa-times::before { content: "close"; }
.fa-trash::before { content: "delete"; }
.fa-underline::before { content: "format_underlined"; }
.fa-universal-access::before { content: "accessibility_new"; }
.fa-up-right-and-down-left-from-center::before { content: "open_in_full"; }
.fa-upload::before { content: "upload"; }
.fa-users::before { content: "group"; }
.fa-vector-square::before { content: "crop_free"; }

/* --- Summernote (barra del editor y menus de imagen y tabla) ------------- */
.note-icon-align::before, .note-icon-align-left::before { content: "format_align_left"; }
.note-icon-align-center::before { content: "format_align_center"; }
.note-icon-align-justify::before { content: "format_align_justify"; }
.note-icon-align-right::before { content: "format_align_right"; }
.note-icon-align-indent::before { content: "format_indent_increase"; }
.note-icon-align-outdent::before { content: "format_indent_decrease"; }
.note-icon-arrow-circle-down::before { content: "arrow_circle_down"; }
.note-icon-arrow-circle-left::before { content: "arrow_circle_left"; }
.note-icon-arrow-circle-right::before { content: "arrow_circle_right"; }
.note-icon-arrow-circle-up::before { content: "arrow_circle_up"; }
.note-icon-arrows-alt::before { content: "open_in_full"; }
.note-icon-arrows-h::before { content: "swap_horiz"; }
.note-icon-arrows-v::before { content: "swap_vert"; }
.note-icon-bar::before { content: "menu"; }
.note-icon-bold::before { content: "format_bold"; }
.note-icon-border::before { content: "border_all"; }
.note-icon-caret::before { content: "arrow_drop_down"; }
.note-icon-chain-broken::before { content: "link_off"; }
.note-icon-circle::before { content: "circle"; }
.note-icon-close::before { content: "close"; }
.note-icon-code::before { content: "code"; }
.note-icon-col-after::before { content: "add_column_right"; }
.note-icon-col-before::before { content: "add_column_left"; }
.note-icon-col-remove::before { content: "variable_remove"; }
.note-icon-eraser::before { content: "ink_eraser"; }
.note-icon-float-left::before, .note-icon-pull-left::before { content: "format_image_left"; }
.note-icon-float-right::before, .note-icon-pull-right::before { content: "format_image_right"; }
.note-icon-float-none::before, .note-icon-rollback::before { content: "block"; }
.note-icon-font::before { content: "text_format"; }
.note-icon-frame::before { content: "crop_free"; }
.note-icon-italic::before { content: "format_italic"; }
.note-icon-link::before { content: "link"; }
.note-icon-magic::before { content: "auto_awesome"; }
.note-icon-menu-check::before { content: "check"; }
.note-icon-minus::before { content: "horizontal_rule"; }
.note-icon-orderedlist::before { content: "format_list_numbered"; }
.note-icon-pencil::before { content: "edit"; }
.note-icon-picture::before { content: "image"; }
.note-icon-question::before { content: "help"; }
.note-icon-redo::before { content: "redo"; }
.note-icon-row-above::before { content: "add_row_above"; }
.note-icon-row-below::before { content: "add_row_below"; }
.note-icon-row-remove::before { content: "variable_remove"; }
.note-icon-special-character::before { content: "special_character"; }
.note-icon-square::before { content: "square"; }
.note-icon-strikethrough::before { content: "format_strikethrough"; }
.note-icon-subscript::before { content: "subscript"; }
.note-icon-summernote::before { content: "edit_note"; }
.note-icon-superscript::before { content: "superscript"; }
.note-icon-table::before { content: "table"; }
.note-icon-text-height::before { content: "format_line_spacing"; }
.note-icon-trash::before { content: "delete"; }
.note-icon-underline::before { content: "format_underlined"; }
.note-icon-undo::before { content: "undo"; }
.note-icon-unorderedlist::before { content: "format_list_bulleted"; }
.note-icon-video::before { content: "videocam"; }
.note-icon-caret::before { font-size: 1em !important; }

/* --- Themify (controles del visor dFlip) --------------------------------- */
.ti-angle-double-left::before { content: "first_page"; }
.ti-angle-double-right::before { content: "last_page"; }
.ti-angle-left::before { content: "chevron_left"; }
.ti-angle-right::before { content: "chevron_right"; }
.ti-arrows-corner::before { content: "fit_screen"; }
.ti-book::before { content: "menu_book"; }
.ti-close::before { content: "close"; }
.ti-control-pause::before { content: "pause"; }
.ti-control-play::before { content: "play_arrow"; }
.ti-download::before { content: "download"; }
.ti-email::before { content: "mail"; }
.ti-facebook::before, .ti-google::before, .ti-twitter-alt::before, .ti-sharethis::before { content: "share"; }
.ti-file::before { content: "description"; }
.ti-fullscreen::before { content: "fullscreen"; }
.ti-help-alt::before { content: "help"; }
.ti-layout-grid2::before { content: "grid_view"; }
.ti-menu-alt::before { content: "toc"; }
.ti-more-alt::before { content: "more_horiz"; }
.ti-search::before { content: "search"; }
.ti-volume::before { content: "volume_up"; }
.ti-zoom-in::before { content: "zoom_in"; }
.ti-zoom-out::before { content: "zoom_out"; }
