/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/* 
    Created on : 19-mar-2021, 12.45.23
    Author     : m.zonno
*/
@font-face {
    font-family: Brioni;
    src: url("/faces/jakarta.faces.resource/fonts/Brioni/BrioniSansStd-Light.otf") format("opentype");
}

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;
  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;
  /* Support for IE. */
  font-feature-settings: 'liga';
}


html {
    height: 98%;
}

* {
    font-family: 'Brioni',Arial,Helvetica,sans-serif ;
}
.ui-widget {
    font-family: 'Brioni',Arial,Helvetica,sans-serif !important;
}

.ui-sidebar .ui-sidebar-close .ui-icon {
    color: red;
}

.ui-chkbox .ui-chkbox-box .ui-chkbox-icon.ui-icon-check {
    margin-top: -9px !important;
}

.ui-fileupload .ui-fileupload-buttonbar .ui-button.ui-fileupload-choose .ui-icon {
    margin-top: -.5em !important;
}

.border-none > .ui-panel-content {
    border: 0 !important;
}
.p-0 > .ui-panel-content {
    padding: 0 !important;
}

input {
    color: #4343b5 !important;
}

div.ui-growl {
   left: 50%;
   right: 0;
   margin-left:-150px;
}

.ui-datatable-tablewrapper {
    max-height: 100%;
}
.pi {
    font-family: primeicons !important;
}

.ui-chkbox-icon {
    margin-top: -.7em !important;
}

body {
    font-family: 'Brioni',Arial,Helvetica,sans-serif !important;
    background-color: white !important;
    color: #333 !important;
    height: 100%;
}

.ui-sidebar-right {
    width: 23em !important;
}
.ui-sidebar-content {
    background-color: transparent !important;
    padding: .5em !important;
}

.sidebar-title {
  background-color: #91a5ac;
  border: 1px solid #bdbbbb;
  padding: 0.857em 1em;
  color: white;
  font-weight: 500;
  font-size: 1.3em;
}

.flag-it {
    background: url("/faces/jakarta.faces.resource/images/flag-it.png") no-repeat top left;
    width: 32px;
    height: 32px;
    float: right;
}
.flag-uk {
    background: url("/faces/jakarta.faces.resource/images/flag-uk.png") no-repeat top left;
    width: 32px;
    height: 32px;
    float: right;
}
.flag-es {
    background: url("/faces/jakarta.faces.resource/images/flag-es.png") no-repeat top left;
    width: 32px;
    height: 32px;
    float: right;
}

.buttoninrow span.ui-button-icon-left {
    font-size: 1.1em;
    font-weight: bold;
}
/*
.menu {
    height: 55px !important;
}
*/
.mainmenu {
    background-color: #e8e8e8 !important;
}
.mainmenu .ui-menuitem {
    color: #111 ;
    font-size: 15px;
    margin: 0px;
    padding-right: 1em;
    text-decoration: none;    
}

.mainmenu .ui-menuitem-link  {
    font-size: 14px;
    color: #737e8e;
}

.mainmenu .ui-menuitem-link:hover{
    color: #0099ff ;
    background: transparent;
    font-weight: 600;
}

/* Accedi / Esci in fondo a destra della barra
   (in PrimeFaces 15 la barra e' un flexbox: float:right non ha piu' effetto) */
.mainmenu > .ui-menu-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
}
.mainmenu > .ui-menu-list > li.menu-destra,
.mainmenu > .ui-menu-list > li:has(> a.rightside) {
    margin-left: auto;
}

.menulogin .ui-menuitem-text,
.menulogin .ui-menuitem-icon {
    color: darkgreen !important;
}
.menulogoff .ui-menuitem-text,
.menulogoff .ui-menuitem-icon {
    color: darkred !important;
}

label {
    display: block;
}
.nome-docente {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-bottom: 8px;
    text-align: center;
}
.titolo-docente {
    font-style: italic; 
}

.facolta-docente, .docenza-docente, .incarico-docente
{
    font-weight: 600;
    font-size: 1.1em;
    padding: 5px 5px 0px;
    text-align: center;
}

.indirizzo1-docente, .indirizzo2-docente, .email-docente,
.sitoweb-docente, .curriculum-docente {
    padding: 5px;
    font-size: .9em;
}

.curriculum-docente {
    text-decoration: none;
}

.buttonuploadfoto .ui-button {
    width: 40%;
    height: 32px;
}
.buttonuploadfoto .ui-button .ui-button-text {
    padding-top: .3em !important;
}

.uploadlibro .ui-button {
    width: 160px;
    height: 40px;
    padding-top: .5em;    
}

.dati-docente .ui-icon {
    font-size: 1.1em;
    position: relative !important;
    font-size: 1.1em !important;
    top: 3px;    
}

.foto-docente {
    text-align: center; 
    padding: 2px 2px 2px 0px;
    overflow: hidden;
    background-color: #fff;
    border-width: 0px;
}
.foto-docente img {
    max-width:100%;
    max-height:100%;
    box-shadow: 3px 3px 5px 2px #777;
}

.dati-docente {
   /* height: 100%; */
}
.info-docente {
    font-size: 1em;
    line-height: 1.5em;
    text-align: justify;
    padding-left: 24px !important;
    padding-right: 16px !important;
    height: 100%
}

.titolo-sezione {
    border: 1px inset #c8c8c8;
    border-radius: 5px;
    background-color: #006681;
    margin-bottom: 1em;
    height: 48px;
    margin-top: 0px;
    color: white;
}

.paginadocenti {
    border: 1px inset #c8c8c8;
    border-radius: 5px;
    background-color: #006681;
    margin-bottom: 1em;
    margin-top: 0px;
    color: white;
    padding: 1em;
}

/* 20261020 foto nella lista docenti: p:avatar forza l'immagine a 100% x 100% del cerchio
   e le foto non quadrate venivano deformate. object-fit: cover la ritaglia senza
   deformarla; ancorata in alto per non tagliare il viso nelle foto verticali. */
.paginadocenti .ui-avatar {
    flex-shrink: 0;
    overflow: hidden;
}
.paginadocenti .ui-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.info-docente h3 {
    margin-top:0px;
    margin-bottom: 0px;
    padding: .55em .855em;
    border: 1px inset #c8c8c8;
    border-radius: 5px;
    background-color: #006681;;
    color: white;
}

.ui-fileupload .ui-fileupload-buttonbar .ui-button {
    width: 100%;
}

.newrecordbutton {
    float: right;
    top: -36px;
    right: 20px;
}
.bookslist .ui-datatable-tablewrapper {
    width: 100%;
}
.record {
    /*display:flex;
    flex-direction: row;
    align-items: stretch;
    align-content: stretch; 
    padding: 10px 1px 0 1px; */   
    font-size: 1.1em;
    line-height: 1.15em;
}

.indice {
    width: 1.5em; 
    text-align: center;
    vertical-align: middle; 
    padding-left: 0px !important;
    color: #006681;
}
.commands {
    width : 80px;
    min-width: 80px;
    display: inline-block;
    letter-spacing: 5px;
    padding-left: 5px;
    font-size: 1.1rem;
}

.inputnumber input {
    width:100%;
}

.selected {
    color: darkred !important;
}
.data {
    display: inline-block;
    padding-right: 1.2em;
}

.data p {
    margin-top: 0px;
    line-height: 1.1rem;
}

.data-authors {
    font-weight: normal;
    color: #575757;
    padding-right: .5em;
}
.data-title {
    font-style: italic; 
}
.data-simple {
    font-style: normal;
}

.data-note {
    font-size: .85em;
    font-style: italic;
    display: block;
    margin-top: .5em;
    color: darkslategray;
}

.data-block {
    display: block;
    font-style: italic;
    color: darkslategray;
}

.ui-fileupload-content {
    display: none;
}
.ui-fileupload-buttonbar {
    text-align: center;
}
.md-inputfield {
    height: 2.2em;
}

.ui-texteditor .ql-container .ql-editor {
    background: #fffceacc !important;
}

.distance-buttons {
    width: 5em;
}

.buttonbar {
    padding:5px 0px;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.listof {
    height: 40%;
}
.fullpage {
    height: 100%;
}
.formpage {
    height: 60%;
    padding: 16px !important;
}
.empty {
    display: none;
}

.panel-list-half {
    border: 1px dotted #ddd !important;
    height: calc(40% - 30px);
    margin-top: 4px;
}

.panel-list-full {
    border: none !important;
    height: calc(100% - 30px);
}

.panel-form-open {
    height: 60%;
    background-color: aliceblue !important;
}

.panel-form-close {
    border: none !important;
    height: 46px;
}

.bookslist {
    height: calc(100% - 80px);
    margin-top: -1em;
}

.bookslist .ui-datalist-content, .resultlist .ui-datalist-content {
    border: none !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
}

.bookslist thead, .resultlist thead, .authorlist thead {
    display: none !important;
}

.bookslist td, .resultlist td {
    border: none !important;
}

.closeblepanel {
    margin-top: .5em;
}

.closeblepanel .ui-panel-titlebar {
    border: 1px solid #c8c8c8 !important;
    border-radius: 5px !important;
    background-color: #006681 !important;
    color: white !important;  
    padding: 10.3px 16px !important;
    font-size: 1.2rem !important;
}
.closeblepanel .ui-panel-titlebar .ui-icon {
    color: yellow !important;
}

/* ============================================================
   Menu su smartphone: barra con pulsante "Menu" e menu laterale
   ============================================================ */
.mobile-menubar {
    display: none;
}
.mobile-menu-sidebar.ui-sidebar-left {
    width: min(20rem, 85vw) !important;
    padding: .5rem;
    overflow-y: auto;
}
.mobile-panelmenu {
    width: 100%;
}
.mobile-panelmenu .menulogin .ui-menuitem-text,
.mobile-panelmenu .menulogin .ui-menuitem-icon { color: darkgreen !important; }
.mobile-panelmenu .menulogoff .ui-menuitem-text,
.mobile-panelmenu .menulogoff .ui-menuitem-icon { color: darkred !important; }

/* ============================================================
   SMARTPHONE (sotto il breakpoint md di PrimeFlex, 768px)
   ============================================================ */
@media screen and (max-width: 767px) {
    .logo img {
        width: 100%;
        max-width: 220px !important;
        display: block;
        margin: 0 auto;
        height: 100%;
    }

    /* menu: la barra orizzontale lascia il posto al pulsante "Menu" */
    .mainmenu {
        display: none !important;
    }
    .mobile-menubar {
        display: flex;
        align-items: center;
        gap: .75rem;
        padding: .4rem .5rem;
        background-color: #e8e8e8;
    }
    .mobile-menubar-nome {
        font-weight: 600;
        color: #006681;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .menu {
        margin-bottom: .5em;
    }

    /* una sola barra di scorrimento: quella della pagina.
       Su desktop scheda docente e contenuto scorrono ciascuno nella propria colonna,
       su smartphone le colonne sono una sotto l'altra e le altezze fisse creavano scroll annidati */
    html, body {
        height: auto !important;
    }
    .main-container {
        height: auto !important;
        display: block !important;
    }
    .main-container .content {
        overflow: visible !important;
        flex: none !important;
    }
    .content-grid,
    .content-grid > div,
    .content-grid .h-full {
        height: auto !important;
        overflow: visible !important;
    }
    .content-grid div[style*="height"],
    .content-grid form[style*="height"] {
        height: auto !important;
        overflow: visible !important;
    }
    .bookslist, .listof, .fullpage, .formpage,
    .panel-list-half, .panel-list-full, .panel-form-open {
        height: auto !important;
    }

    /* scheda del docente piu' compatta */
    .info-docente {
        padding-left: .75rem !important;
        padding-right: .75rem !important;
    }
    .foto-docente img {
        max-width: 55%;
    }

    /* intestazioni di sezione: il testo puo' andare a capo */
    .titolo-sezione {
        height: auto;
        min-height: 48px;
    }
    .titolo-sezione > [class*="col-"] {
        flex: 1 1 auto;
        width: auto;
    }

    /* toolbar dei form: Salva / Duplica / Annulla a tutta larghezza, frecce sotto */
    .form-toolbar > div {
        width: 100% !important;
        order: 1;
        padding: .25rem !important;
        margin-top: 0 !important;
    }
    .form-toolbar > div:first-child,
    .form-toolbar > div:last-child {
        width: 50% !important;
        order: 2;
    }
    .form-toolbar .ui-button:not(.rounded-button) {
        width: 100% !important;
        margin: 0 !important;
    }

    /* niente elementi piu' larghi dello schermo */
    .ui-sidebar-right {
        width: min(23em, 100vw) !important;
    }
    div.ui-growl {
        left: .5rem;
        right: .5rem;
        margin-left: 0;
        width: auto;
    }
    .ui-dialog {
        max-width: 95vw;
    }
    .uploadlibro .ui-button,
    .buttonuploadfoto .ui-button {
        width: 100%;
    }
    .commands {
        width: auto;
        min-width: 0;
    }

    /* iOS ingrandisce la pagina sui campi con testo sotto i 16px */
    input, textarea, select, .ui-inputfield {
        font-size: 16px !important;
    }
}

@media screen and (min-width: 768px) and (max-width: 1247px) {
    .logo img{
        padding: 0 20px;
    }
    
    .container {
      max-width: 100%;
    }
    
}

@media screen and (min-width: 1248px) {
    
    .container {
        max-width: 1248px;
        margin: 0 auto;
    }

}

body .ui-toolbar {
    border : 1px solid #c3c5c7 !important;
    height: 3em;
}