
:root {

    --colors-text-focus: #0b0b0b;
    --colors-text-faded: #6d6d6d;

    --colors-background: rgba(120,120,180,0.1);
    --colors-background-hover: rgba(120,120,180,0.3);
    --colors-primary: #0ff0a0;
    --colors-success: #500067;
    --colors-soon: #ffb000;
    --colors-error: #c44f00;
    --colors-done: #ff4f00;
}

/**
 * Bases
 */
.pretix-widget {
    border: none;
    border-radius: 0;
    font: inherit;
}

.pretix-widget a {
    color: var(--colors-primary);
}

.pretix-widget a:hover, .pretix-widget a:focus, .pretix-widget a:active, .pretix-widget a:visited {
    background-color: var(--colors-primary);
}

.pretix-widget button {
    background-color: var(--colors-primary);
    border-color: var(--colors-primary);
}

.pretix-widget-frame-holder .pretix-widget-frame-close {
    background-color: var(--colors-primary);
    display: grid;
}

.pretix-widget-frame-holder .pretix-widget-frame-close a {
    padding: 0.1rem 0 0 0;
    color: white;
}

@media(max-width:800px) {
    .pretix-widget-frame-holder .pretix-widget-frame-inner {
        background-color: var(--colors-primary);
    }
    .pretix-widget-frame-holder .pretix-widget-frame-close a {
        color: white;
    }
    .pretix-widget-frame-holder .pretix-widget-frame-close svg path {
        fill: white;
    }
    .pretix-widget-primary-color {
        fill: var(--colors-primary);
    }
}

button:focus, a:focus, .btn:focus, summary:focus, button:active:focus, a:active:focus, .btn:active:focus, summary:active:focus {
    outline: 2px solid var(--colors-primary);
    outline-offset: 2px;
}

/**
 * Vue liste
 */
.pretix-widget .pretix-widget-event-list-entry {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
    grid-column-gap: 0;
    grid-row-gap: 0;
    margin-bottom: 2rem;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
    position: relative;
}

.pretix-widget .pretix-widget-event-list-entry {
    background-color: var(--colors-background);
}

.pretix-widget .pretix-widget-event-list-entry:hover {
    background-color: var(--colors-background-hover);
    color: unset;
}

.pretix-widget .pretix-widget-event-list-entry:last-of-type {
    margin-bottom: unset;
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-name {
    font-size: 1.3rem;
    font-weight: bold;
    display: block;
    grid-area: 1 / 1 / 2 / 4;
    width: auto;
    padding: 1rem;
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-name:first-letter {
    text-transform: uppercase;
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-date {
    grid-area: 2 / 1 / 3 / 2;
    width: auto;
    position: relative;
    padding: 1rem 1rem 1rem 2.2rem;
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-date:not(:empty)::before {
    height: 100%;
    width: 1rem;
    position: absolute;
    top: 0;
    left: 1rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/calendar.svg');
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-location {
    display: unset;
    grid-area: 2 / 2 / 3 / 3;
    width: auto;
    position: relative;
    padding: 1rem 1rem 1rem 2.2rem;
}


.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-location:not(:empty)::before {
    height: 100%;
    width: 1rem;
    position: absolute;
    top: 0;
    left: 1rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/map-marker.svg');
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-location:first-letter {
    text-transform: uppercase;
}

.pretix-widget .pretix-widget-event-list-entry .pretix-widget-event-list-entry-availability {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.pretix-widget .pretix-widget-event-availability-none::before {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    margin: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    content: '';
    background-color: var(--colors-primary);
}

.pretix-widget .pretix-widget-event-availability-green::before {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    margin: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    content: '';
    background-color: var(--colors-success);
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/check-white.svg');
}

.pretix-widget .pretix-widget-event-availability-orange::before {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    margin: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    content: '';
    background-color: var(--colors-soon);
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/timer-sand-white.svg');
}

.pretix-widget .pretix-widget-event-availability-red::before {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    margin: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    content: '';
    background-color: var(--colors-error);
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/lock-white.svg');
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-continued::before {
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/arrow-right-thin-white.svg');
}


.pretix-widget.pretix-widget-mobile .pretix-widget-event-list-entry {
    grid-template-columns: auto min-content;
    grid-template-rows: repeat(3, auto);
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-list-entry .pretix-widget-event-list-entry-name {
    grid-area: 1 / 1 / 2 / 3;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-list-entry .pretix-widget-event-list-entry-location {
    grid-area: 2 / 1 / 3 / 2;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-list-entry .pretix-widget-event-list-entry-date {
    grid-area: 3 / 1 / 4 / 2;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-list-entry .pretix-widget-event-list-entry-date,
.pretix-widget.pretix-widget-mobile .pretix-widget-event-list-entry .pretix-widget-event-list-entry-location {
    width: auto;
}

/**
 * Vue calendrier
 */

/* HEAD */
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head {
    position: relative;
    width: 100%;
    height: 30px;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-calendar-head strong,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head strong {
    position: absolute;
    left: 0;
    width: initial;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-previous-month,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-previous-month {
    position: absolute;
    width: initial;
    font-size: 0;
    right: 40px;
    border-radius: 5px;
    background-color: var(--colors-background);
    padding: 0.2rem 0.75rem;
    box-sizing: border-box;
    max-width: 100%;
    white-space: normal;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-previous-month::before {
    content: '';
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/arrow-left-thin.svg');
    font-size: .8rem;
    padding: 0.2rem 0.8rem;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-next-month,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-next-month {
    position: absolute;
    width: initial;
    font-size: 0;
    right: 0;
    border-radius: 5px;
    background-color: var(--colors-background);
    padding: 0.2rem 0.75rem;
    box-sizing: border-box;
    max-width: 100%;
    white-space: normal;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-next-month::before {
    content: '';
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/arrow-right-thin.svg');
    font-size: .8rem;
    padding: 0.2rem 0.8rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-previous-month:hover,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-head .pretix-widget-event-calendar-next-month:hover {
    background-color: var(--colors-background-hover);
    text-decoration: none;
}

/* TABLE */
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-table {
    border: none;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-table th {
    border: 1px solid #cecece;
    color: var(--colors-text-focus);
    font-weight: 700;
    font-size: 1.5em;
    padding: 0.8rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-table tbody tr {
    border: none;
    height: 6rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-table td {
    border: none;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-table td:not(:empty) {
    border: 1px solid #cecece;
    color: var(--colors-text-faded);
    font-weight: 700;
    font-size: 1.3em;
    padding: 1.2rem 0.8rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-none.pretix-widget-event-calendar-event,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-green.pretix-widget-event-calendar-event,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-orange.pretix-widget-event-calendar-event,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-red.pretix-widget-event-calendar-event {
    color: var(--colors-text-faded);
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-none.pretix-widget-event-calendar-event:hover,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-green.pretix-widget-event-calendar-event:hover,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-orange.pretix-widget-event-calendar-event:hover,
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-availability-red.pretix-widget-event-calendar-event:hover {
    color: var(--colors-text-focus);
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-table td .pretix-widget-event-calendar-events {
    font-size: 1rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-day {
    padding-bottom: 0.5rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-event {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, auto);
    grid-column-gap: 0;
    grid-row-gap: 0;
    background-color: var(--colors-background);
    transition: all 0.3s ease-in-out;
    padding-top: 2rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-event:hover {
    background-color: var(--colors-background-hover);
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-event .pretix-widget-event-calendar-event-name {
    padding: 0.2rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-event .pretix-widget-event-calendar-event-date {
    grid-area: 1 / 1 / 2 / 2;
    font-size: 0.8rem;
    font-weight: normal;
    padding: 0 0.2rem 0 1rem;
    position: relative;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-event .pretix-widget-event-calendar-event-date:not(:empty)::before {
    height: 100%;
    width: .8rem;
    position: absolute;
    top: 0;
    left: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    background-image: url('https://sciences-techniques.univ-nantes.fr/extensions/inscription/resources/styles/icons/clock.svg');
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-calendar-event-availability {
    display: none;
}

/**
 * Vue semaine
 */
.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col {
    border-top: 1px solid #cecece;
    border-right: 1px solid #cecece;
    border-bottom: 1px solid #cecece;
    margin: 0;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col:first-of-type {
    border-left: 1px solid #cecece;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col .pretix-widget-event-calendar-day {
    border-bottom: 1px solid #cecece;
    padding: 0.5rem;
}

.pretix-widget .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col .pretix-widget-event-calendar-events {
    padding: 0.5rem;
}

/*
 * Vue semaine mobile
 */
.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-week-table {
    border: 1px solid #cecece;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col {
    border: none;
    border-bottom: 1px solid #cecece;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col:last-of-type {
    border: none;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col .pretix-widget-event-calendar-day {
    border: none;
    padding: 0.5rem;
}

.pretix-widget.pretix-widget-mobile .pretix-widget-event-calendar .pretix-widget-event-week-table .pretix-widget-event-week-col .pretix-widget-event-calendar-events {
    border: none;
    padding: 0.5rem;
}

/*
 * Liste des evenements
 */
.prtx-list .event-list, .prtx-list {
    list-style: none;
    padding: 0;
    margin: 0;
    overflow: unset;
}

ul.prtx-list > li {
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 0;
    grid-row-gap: 0;
    margin-bottom: 2rem;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
    position: relative;
    background-color: var(--colors-background);
    padding: 1rem;
}

.prtx-list > li:before {
    display: none;
}

.prtx-list > li:hover {
    background-color: var(--colors-background-hover);
    color: unset;
}

.prtx-list > li .event-label {
    font-size: 1.3rem;
    font-weight: bold;
    display: block;
    grid-area: 1 / 1 / 2 / 3;
    width: auto;
    padding: 1rem;
    justify-self: left;
    align-self: center;
}

.prtx-list > li .event-label:first-letter {
    text-transform: uppercase;
}

.prtx-list > li .event-dates-times {
    grid-area: 2 / 1 / 3 / 2;
    width: auto;
    padding: 1rem;
    justify-self: left;
    align-self: center;
}

.prtx-list .event-list > li{
    padding-left: 1.2rem;
    position: relative;
}

.prtx-list .event-list > li::before{
    height: 100%;
    width: 1.5rem;
    position: absolute;
    top: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    left: -0.5rem;
}

.prtx-list .event-list > li.event-item-date-time::before {
    background-image: url(/extensions/inscription/resources/styles/icons/calendar.svg);
}

.prtx-list .event-list > li.event-item-lieu::before {
    background-image: url(/extensions/inscription/resources/styles/icons/map-marker.svg);
}


.prtx-list .event-list .item-date:first-of-type {
    padding-right: 0.4rem;
}

.prtx-list > li .event-location {
    grid-area: 3 / 1 / 3 / 1;
    width: auto;
    padding: 1rem;
    justify-self: left;
    align-self: center;
}

.prtx-list > li .event-action {
    padding: 1rem;
    justify-self: right;
    align-self: center;
}

#page #contenu button, .prtx-list .prtx-event, .pretix-button {
    background-color: #3452ff ! important;
    border: #3452ff 2px solid ! important;
    color: #fff ! important;
    font-size: 1em ! important;
    text-transform: uppercase ! important;
    padding: 1rem 2rem ! important;
    border-radius: 0 ! important;
}

#page #contenu button:active, #page #contenu button:active:hover, #page #contenu button:active:focus, #page #contenu button:hover, #page #contenu button:focus,
.prtx-list .prtx-event:active, .prtx-list .prtx-event:active:hover, .prtx-list .prtx-event:active:focus, .prtx-list .prtx-event:hover, .prtx-list .prtx-event:focus,
.pretix-button:active, .pretix-button:active:hover, .pretix-button:active:focus, .pretix-button:hover, .pretix-button:focus {
    background-color: white ! important;
    color: #3452ff ! important;
    outline: none ! important;
}

@media screen and (max-width: 500px) {
    ul.prtx-list > li {
        display: grid;
        grid-template-columns: 1fr;
        grid-auto-flow: row;
    }
    .prtx-list > li .event-label {
        grid-area: unset;
    }
    .prtx-list > li .event-location {
        grid-area: unset;
    }
    .prtx-list > li .event-dates-times {
        grid-area: unset;
    }
    .prtx-list > li .event-action {
        grid-area: unset;
    }

}
