/*====================================
    TEMA SUPERSALUD
=====================================*/

:root{

    --sns-green:#1F6A3A;
    --sns-green-dark:#16522D;
    --sns-green-light:#2F7F4A;

    --sns-title:#2E3A46;
    --sns-text:#5E6A75;

    --sns-background:#F5F7F8;
    --sns-border:#D9D9D9;

    --sns-shadow:0 3px 10px rgba(0,0,0,.06);

}

.publication-viewer{

    margin-top:30px;

}

.pv-item{

    margin-bottom:20px;

}

.pv-title{

    margin-bottom:35px;

    font-size:48px;

    font-weight:700;

    color:var(--sns-title);

}

.pv-toolbar{

    margin-bottom:25px;

}

.pv-item h4{

    margin-top:0;

}

.pv-item .btn{

    margin-top:10px;

}

.pv-card {
    position: relative;
    display: table;
    width: 100%;
    padding: 22px 24px;
    margin-bottom: 18px;
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-left: 5px solid #1d70b8;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.pv-card:hover {
    border-color: #cfcfcf;
    border-left-color: #155a92;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
}

.pv-card-icon,
.pv-card-content,
.pv-card-action {
    display: table-cell;
    vertical-align: middle;
}

.pv-card-icon {
    width: 48px;
    color: #1d70b8;
    font-size: 28px;
}

.pv-card-content {
    padding-right: 20px;
}

.pv-card-title {
    margin: 0 0 6px 0;
    font-size: 20px;
    font-weight: 600;
    color: #333333;
}

.pv-card-date {
    margin-bottom: 10px;
    font-size: 13px;
    color: #777777;
}

.pv-card-description {
    margin: 0;
    color: #555555;
    line-height: 1.5;
}

.pv-card-action {
    width: 150px;
    text-align: right;
}

.pv-btn {
    border: 1px solid #1d70b8;
    color: #1d70b8;
    background: #ffffff;
    border-radius: 20px;
    padding: 8px 18px;
    font-weight: 600;
}

.pv-btn:hover,
.pv-btn:focus {
    color: #ffffff;
    background: #1d70b8;
    text-decoration: none;
}

@media (max-width: 768px) {
    .pv-card,
    .pv-card-icon,
    .pv-card-content,
    .pv-card-action {
        display: block;
        width: 100%;
        text-align: left;
    }

    .pv-card-icon {
        margin-bottom: 10px;
    }

    .pv-card-action {
        margin-top: 15px;
    }
}

.publication-viewer {
    padding: 25px 0;
}

.pv-toolbar{
    margin-bottom:35px;
}

.pv-toolbar .form-control{
    height:52px;
    border-radius:8px;
    border:1px solid #D5D5D5;
    box-shadow:none;
    font-size:16px;
}

.pv-card {
    min-height: 125px;
}

.pv-card-description {
    max-width: 88%;
}

.pv-card-action {
    padding-left: 20px;
}

.pv-btn {
    white-space: nowrap;
}

.pv-year-group {
    margin-bottom: 24px;
}

.pv-year-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:22px 28px;
    background:var(--sns-background);
    border:1px solid var(--sns-border);
    border-left:4px solid var(--sns-green);
    cursor:pointer;
    transition:.2s;
}

.pv-year-header:hover{
    background:#F0F3F2;
}

.pv-year-title{
    font-size:20px;
    font-weight:700;
    color:var(--sns-title);
}

.pv-year-count{
    margin-left:18px;
    color:#7D7D7D;
    font-size:12px;
}

.pv-year-toggle{
    display:inline-block;
    min-width:100px;
    text-align:center;
    padding:10px 25px;
    border:1px solid #BEBEBE;
    border-radius:35px;
    background:white;
    color:var(--sns-green);
    font-weight:600;
    transition:.2s;
}

.pv-year-header:hover .pv-year-toggle{
    background:var(--sns-green);
    color:white;
    border-color:var(--sns-green);
}

.pv-year-content{
    padding:25px;
    background:white;
}

.pv-year-content .pv-card {
    margin-bottom: 16px;
}

.pv-year-group:not(.open) .pv-year-header {
    border-bottom: none;
}

.pv-loading {
    padding: 35px;
    text-align: center;
    color: #666;
    font-size: 16px;
}

.pv-loading-icon {
    margin-right: 10px;
    color: #1d70b8;
}

.pv-card{
    display:flex;
    align-items:center;
    background:white;
    border:1px solid #E7E7E7;
    border-left:5px solid var(--sns-green);
    border-radius:6px;
    padding:25px;
    margin-bottom:18px;
    box-shadow:var(--sns-shadow);
    transition:.25s;
}

.pv-card:hover {
    transform: translateY(-2px);
    box-shadow:0 10px 22px rgba(0,0,0,.10);
}

.pv-card-icon,
.pv-card-body,
.pv-card-action {
    display: table-cell;
    vertical-align: middle;
}

.pv-card-icon{
    width:62px;
    height:62px;
    margin-right:24px;
    border-radius:50%;
    background:var(--sns-green);
    color:white;
    font-size:28px;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;
}

.pv-card-title{
    margin-bottom:8px;
    font-size:19px !important;
    font-weight:700;
    color:var(--sns-title);
}

.pv-card-date {
    display: inline-block;
    margin-bottom: 12px;
    padding: 5px 14px;
    background: #EEF2F3;
    border-radius: 20px;
    color: #666;
    font-size: 13px;
}

.pv-card-label {
    margin-bottom: 6px;
    color: #888;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.pv-card-description{
    color:var(--sns-text);
    line-height:1.7;
    font-size:14px;
}

.pv-card-action {
    width: 150px;
    text-align: right;
}

.pv-btn{
    display:inline-block;
    padding:12px 28px;
    border:1px solid #BFBFBF;
    border-radius:30px;
    background:white;
    color:var(--sns-green);
    font-weight:600;
	text-decoration:none;
    transition:.25s;
}

.pv-btn:hover,
.pv-btn:focus {
    background:var(--sns-green);
    color:white;
    border-color:var(--sns-green);
	text-decoration:none;
}

@media (max-width: 768px) {
    .pv-card,
    .pv-card-icon,
    .pv-card-body,
    .pv-card-action {
        display: block;
        width: 100%;
        text-align: left;
    }

    .pv-card-icon {
        margin-bottom: 12px;
    }

    .pv-card-action {
        margin-top: 15px;
    }
}

.pv-loading{
    padding:60px;
    text-align:center;
    color:var(--sns-green);
    font-size:18px;
}