/* Reset link */
a {
- text-decoration: none;
+ /*text-decoration: none;*/
color: #066;
}
html, body, dd, li, p, td {
/* DejaVu Sans/FreeSans/FreeSerif/Linux Libertine/Symbola/Unifont*/
font-family: 'Droid Sans', 'Symbola', 'DejaVu Sans', 'FreeSans', sans-serif;
- font-display: swap;
}
button, code, input, option, optgroup, pre, select, textarea {
font-family: 'Droid Sans Mono', monospace;
- font-display: swap;
}
dt, h1, h2, h3, h4, h5, h6, label, legend, th, details {
font-family: 'Droid Serif', serif;
- font-display: swap;
}
/* Default styling */
h1 {
- font-size: 2rem;
-}
-
-h2 {
font-size: 1.5rem;
margin: 0 0 .5rem;
padding: .5rem;
}
-h3 {
+h2 {
font-size: 1.17rem;
margin: 0 0 .5rem;
padding: .4rem;
}
-h4 {
+h3 {
font-size: 1rem;
margin: 0 0 .5rem;
padding: .3rem;
}
-h5 {
+h4 {
font-size: .85rem;
margin: 0 0 .5rem;
padding: .2rem;
}
-h6 {
+h5 {
font-size: .67rem;
margin: 0 0 .5rem;
padding: .1rem;
}
+h6 {
+ font-size: .5rem;
+ margin: 0 0 .5rem;
+ padding: .1rem;
+}
+
+header {
+ margin: 0 0 .5rem;
+}
+
+header h1 {
+ margin: 0;
+ padding: .5rem .5rem .3rem;
+ border-bottom: 0 none;
+}
+
+header h2 {
+ border-bottom: 0 none;
+}
+
nav strong {
display: block;
font-size: 1.17rem;
padding: .4rem;
}
-h2, h3, h4, h5, nav strong {
+h1, h2, h3, h4, header {
background-color: #cff;
border-bottom: .1rem solid #00c3f9;
}
font-size: .9rem;
}
+pre {
+ margin: 0 .5rem .3rem;
+ font-size: .8rem;
+}
+
+dl {
+ margin: 0 .5rem .5rem;
+}
+
+dl:first-child,
+dl:only-child,
+dl:first-of-type {
+ margin-top: .5rem;
+}
+
+dt {
+ font-size: .9rem;
+ font-weight: bold;
+}
+
+dd {
+ font-size: .9rem;
+ margin-left: 1rem;
+}
+
+.map figure,
+.multimap figure,
+.thumb figure {
+ text-align: center;
+}
+
+.map img,
+.multimap img,
+.thumb img {
+ border-radius: .2rem;
+ border: .1rem solid #00c3f9;
+ aspect-ratio: 1;
+}
+
+.map dd {
+ margin: 0;
+}
+
+.map dd img {
+ width: 100%;
+ width: calc(100% - .2rem);
+ height: auto;
+}
+
+.thumb img {
+ width: 100%;
+ width: calc(100% - 1.2rem);
+}
+
+.four .multimap {
+ grid-column: span 4;
+}
+
+.three .multimap {
+ grid-column: span 3;
+}
+
+.two .multimap {
+ grid-column: span 2;
+}
+
body {
display: flex;
flex-flow: column wrap;
}
nav,
-section {
+section,
+article {
margin: 0 .5rem .5rem;
border: .1rem solid #00c3f9;
border-radius: .3rem;
margin-bottom: 0;
}
-/*form section div {
- display: flex;
- flex-direction: row;
- align-content: space-around;
- justify-content: center;
-}
-
-form section section {
- display: flex;
- flex-direction: column;
-}*/
-
form label {
width: 12rem;
- /*padding: .2rem 1rem .2rem 0;*/
+ line-height: 1.3rem;
padding-right: 1rem;
text-align: right;
}
+form label.captcha {
+ line-height: normal;
+}
+
+form label.captcha img {
+ height: 1.325rem;
+}
+
form input,
form option,
form optgroup,
form section section {
width: 24rem;
padding: .1rem;
+ margin: 0 auto;
}
form select {
}
form .message {
+ margin: 0 0 .5rem 0;
+}
+
+form div .message {
margin: .25rem 0 0 0;
}
/* Vertical form */
+.location .col label,
.col label {
width: 8rem;
padding-right: 0;
padding-bottom: .2rem;
text-align: center;
+ margin: 0 auto;
}
+.location .col input,
+.location .col textarea,
.col input,
.col option,
.col optgroup,
width: 8rem;
}
-/*.col section {
- width: auto;
-}*/
-
.col .row {
flex-direction: column;
}
/* Header */
#header {
+ background-color: transparent;
border: .1rem solid #00c3f9;
border-top: 0;
border-radius: 0 0 .5rem .5rem;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
- line-height: 32px;
+ line-height: 45px;
font-size: 32px;
padding: .5rem;
gap: .5rem;
}
-#header h1 {
+#logo {
+ font-size: 2rem;
padding: 0;
- margin: 0;
+ margin: auto;
white-space: nowrap;
- width: 171px;
- height: 32px;
-}
-
-#header h2 {
- display: none;
+ width: 100px;
+ height: 45px;
}
#header nav {
.mortal,
.mortal button,
.mortal select {
- border-color: #c33333;
+ /*border-color: #c33333;
+ color: #c33333;*/
+ border-color: #930;
background-color: #f9c3c3;
- color: #c33333;
+ color: #930;
}
.dangerous,
.dangerous,
.dangerous button,
.dangerous select {
- border-color: #c39333;
+ /*border-color: #c39333;
background-color: #f9c333;
- color: #936333;
+ color: #936333;*/
+ border-color: #930;
+ background-color: #fc9;
+ color: #930;
}
.warning {
#form,
#recover,
#regulation {
- border: .1rem solid #00c3f9;
border-radius: .5rem;
+ /*border: .1rem solid #00c3f9;
margin: .5rem;
margin-top: 0;
display: flex;
- flex-direction: column;
+ flex-direction: column;*/
}
.panel {
}
.grid {
- display: flex;
- flex-flow: row wrap;
+ display: grid;
border-style: solid;
border-color: #00c3f9;
border-radius: .2rem;
- flex: 1 1 auto;
box-sizing: border-box;
border-collapse: collapse;
- gap: .1rem;
+ grid-gap: .1rem;
+ flex: 1 1 auto;
}
+.grid article,
.grid section {
+ border-collapse: inherit;
+ border-radius: inherit;
+ border-style: inherit;
+ border-width: .1rem;
+ box-sizing: inherit;
+ flex-grow: inherit;
margin: 0;
+ min-height: 5rem;
+ overflow: hidden;
+}
+
+.grid section {
+ border-color: inherit;
}
.grid h3 {
margin: 0;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
}
.grid ul {
list-style: none inside none;
}
-.grid p {
- margin: 0 0 .3rem;
-}
-
-.grid p:only-child,
-.grid p:last-child,
-.grid p:last-of-type {
- margin: 0;
-}
-
-.form {
- margin: 0;
- display: flex;
- flex-direction: column;
- gap: .5rem;
-}
-
-.form h2 {
- font-size: 1.17rem;
- padding: .4rem;
-}
-
-.form a {
- white-space: nowrap;
-}
-
-.form section {
- margin: 0;
- border: .05rem solid #00c3f9;
+.grid li {
+ border-width: .1rem;
+ border-style: solid;
border-radius: .2rem;
+ white-space: nowrap;
+ padding: .1rem;
+ display: flex;
+ margin: 0 0 .1rem;
+ flex-direction: row;
+ justify-content: space-between;
}
-.form form {
- gap: .5rem;
-}
-
-#location section {
- display: flex;
- flex: 1 1 auto;
- flex-direction: column;
+.grid li a:first-letter {
+ color: inherit;
}
-#location h3 {
+/*XXX: required by ul display:block for overflow:hidden*/
+.grid li:only-child,
+.grid li:last-child,
+.grid li:last-of-type {
margin: 0;
- border-style: none;
- flex: 1 1 auto;
}
-#location form {
- margin-top: .5rem;
+.grid a {
+ /*TODO: voir pourquoi on a besoin d'un overflow-y de merde, sans une putain de scrollbar s'affiche dans certaines conditions sur chrome, depuis le passage de deux lignes de grid à 3 !!!*/
+ /*Est-ce parce que le city est pas expanded ???*/
+ overflow-y: clip;
+ overflow-x: hidden;
+ text-overflow: ellipsis;
}
-#location form label {
- width: 4.5rem;
+.grid p {
+ margin: 0 0 .3rem;
}
-/*#dashboard .panel {
- display: flex;
- flex-direction: row;
- flex-wrap: nowrap;
- place-content: space-between;
- border: 0;
+.grid p:only-child,
+.grid p:last-child,
+.grid p:last-of-type {
margin: 0;
- padding: 0 .5rem .5rem .5rem;
-}
-
-#dashboard .panel:only-child,
-#dashboard .panel:first-child,
-#dashboard .panel:first-of-type {
- padding-top: .5rem;
}
-
-#dashboard .panel:only-child,
-#dashboard .panel:last-child,
-#dashboard .panel:last-of-type {
- padding-bottom: .5rem;
-}*/
-
-#dashboard .candidate section,
-#dashboard .location section {
- flex-direction: column;
- flex-grow: 1;
- border: .1rem solid #00c3f9;
- border-radius: .3rem;
- padding: 0;
+.current,
+.current h3 {
+ background-color: #cfc;
+ border-color: #008000;
+ color: #008000;
}
-#dashboard .location h4 {
- border-width: 0;
+.current h3:first-letter {
+ color: #00b000;
}
-/*#dashboard .grid {
- display: flex;
- flex-flow: row wrap;
- border-style: solid;
+.granted,
+.granted a {
+ background-color: #cff;
border-color: #00c3f9;
- border-radius: .2rem;
- flex-grow: 1;
- box-sizing: border-box;
- border-collapse: collapse;
- gap: .1rem;
-}*/
-
- /*margin: 0;
-#dashboard .grid:only-child,
-#dashboard .grid:last-child,
-#dashboard .grid:last-of-type {
- margin-bottom: 0;
-}*/
-
-/*#dashboard .candidate .grid,
-#dashboard .location .grid {
- padding: .5rem;
-}*/
-
-#dashboard .dlgrid {
- display: flex;
- flex-flow: row wrap;
- gap: .5rem;
}
-#dashboard dl {
- /*margin: .5rem;
- padding: .25rem;
- border: .1rem solid #00c3f9;
- border-radius: .2rem;
- flex-grow: 1;
- box-sizing: border-box;
- border-collapse: collapse;*/
- margin: 0 .5rem .5rem .5rem;
-}
-
-#dashboard dl:first-child,
-#dashboard dl:only-child,
-#dashboard dl:first-of-type {
- margin-top: .5rem;
-}
-
-#dashboard dt {
- font-size: .9rem;
- font-weight: bold;
-}
-
-#dashboard dd {
- font-size: .9rem;
- margin-left: 1rem;
-}
-
-#dashboard .subgrid {
- display: flex;
- flex-flow: row wrap;
- border-style: solid;
- border-color: #00c3f9;
- border-width: .1rem 0 0 .1rem;
- border-radius: .2rem;
- flex-grow: 1;
- box-sizing: inherit;
- box-sizing: border-box;
- border-collapse: collapse;
- margin: .5rem;
+.disputed,
+.disputed a {
+ border-color: #930;
+ background-color: #fc9;
+ color: #930;
}
-#dashboard .subgrid:only-child,
-#dashboard .subgrid:last-child,
-#dashboard .subgrid:last-of-type {
- margin-bottom: 0;
+.canceled,
+.canceled a,
+.canceled h2,
+.canceled header {
+ color: #963;
+ background-color: #fddddd;
+ border-color: #963;
}
-#dashboard .cell {
- border-color: inherit;
- border-style: inherit;
- border-width: .1rem;
- border-radius: inherit;
- flex-grow: inherit;
- box-sizing: inherit;
- border-collapse: inherit;
+.locked,
+.locked a {
+ border-color: #930;
+ background-color: #f9c3c3;
+ color: #930;
}
-#dashboard .subgrid .cell {
- border-radius: 0;
- border-width: 0 .1rem .1rem 0;
-}
-#dashboard .subgrid .cell:only-child,
-#dashboard .subgrid .cell:last-child,
-#dashboard .subgrid .cell:last-of-type {
- border-radius: inherit;
+.pending,
+.pending a {
+ background-color: #ccc;
+ border-color: #066;
}
-#dashboard .fourth {
- min-height: 5rem;
- width: calc(100% / 4 - (3/4*.1rem));
+.highlight,
+.highlight a,
+.highlight h3 {
+ border-color: #3333c3;
+ background-color: #c3c3f9;
+ color: #606;
}
-#dashboard .seventh {
- min-height: 5rem;
- width: calc(100% / 7 - (6/7*.1rem));
+.highlight h3::first-letter {
+ color: #3333c3;
}
-#dashboard .third {
- min-height: 5rem;
- width: calc(100% / 3 - (2/3*.1rem));
+.disabled {
+ filter: grayscale(66%);
}
-#dashboard .session {
- border: .1rem solid #00c3f9;
- border-radius: .2rem;
- white-space: nowrap;
- display: flex;
- flex-direction: row;
- justify-content: space-between;
- padding: .1rem;
+.calendar a {
+ display: grid;
+ /*grid-template-columns: 1fr auto fit-content(1fr);*/
+ grid-template-columns: max-content 1fr max-content;
+ flex: 1 1 auto;
+ grid-gap: .1rem;
+ /*XXX: reset to visible to prevent scroll*/
+ overflow-x: visible;
}
-#dashboard .session a {
+.calendar .reducible {
overflow-x: hidden;
text-overflow: ellipsis;
+ text-align: center;
}
-#dashboard .session a:first-letter {
- color: #066;
+.calendar .glyph {
+ font-family: 'Noto Color Emoji', 'Noto Emoji', 'Droid Sans', 'Symbola', 'DejaVu Sans', 'FreeSans', sans-serif;
}
-#dashboard .disabled {
- /*color: #acc;
- background-color: #bee;*/
- filter: grayscale(33%);
+.calendar .temperature,
+.calendar .rain,
+.calendar .rate {
+ line-height: 1rem;
+ text-align: right;
}
-#dashboard .current {
- background-color: #cff;
+.calendar .rate {
+ text-align: center;
}
-#dashboard .current h3 {
- text-decoration: underline solid #00c3f9;
+.calendar .info {
+ line-height: 1rem;
+ text-align: right;
}
-#dashboard .next {
- background-color: #eff;
+.calendar .pseudonym {
+ grid-column: span 2;
}
-#dashboard .pending {
- background-color: #ccc;
+.seven {
+ grid-template-columns: repeat(7, 1fr);
}
-#dashboard .granted {
- background-color: #cff;
- /*background-color: #33b679;
- border-color: #33b679;*/
+.four {
+ grid-template-columns: repeat(4, 1fr);
}
-#dashboard .disputed {
- background-color: #fcc;
+.three {
+ grid-template-columns: repeat(3, 1fr);
}
-#dashboard .orphaned {
- background-color: #fc9;
+.two {
+ grid-template-columns: repeat(2, 1fr);
}
-#dashboard .highlight {
- border-color: #3333c3;
- background-color: #c3c3f9;
- color: #3333c3;
+.city .grid h3,
+.location .grid h3,
+.city .grid h4,
+.location .grid h4 {
+ border-style: none;
+ margin: 0;
+ flex: 1 1 auto;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
}
-/* Weather
- * TODO: drop
->24°C
-#dashboard .cleary a::before {
- content: "☀";
+.city .grid article,
+.location .grid article {
+ min-height: auto;
+ height: fit-content;
}
->17°C
-#dashboard .sunny a::before {
- content: "⛅";
+.city .grid {
+ gap: .5rem;
}
->10°C
-#dashboard .cloudy a::before {
- content: "☁";
+.location form {
+ margin: .5rem auto;
}
-<=10°C
-#dashboard .winty a::before {
- content: "❄️";
+.location form .row {
+ flex-direction: column;
}
->0mm
-#dashboard .rainy a::before {
- content: "🌂";
+.location form div {
+ margin-left: auto;
+ margin-right: auto;
}
->2mm
-#dashboard .stormy a::before {
- content: "☔";
-}*/
+.location label {
+ width: 20rem;
+ padding-right: 0;
+ text-align: center;
+}
-/* Regulation */
-#regulation {
+.location input,
+.location textarea {
+ width: 20rem;
+ margin: 0 .1rem;
}
-#regulation dl {
- /*display: flex;
- flex-direction: row;
- justify-content: space-around;
- padding-bottom: .5rem;*/
- padding: .25rem;
- margin-bottom: .5rem;
+.form {
+ margin: 0;
+ display: flex;
+ flex-direction: column;
+ gap: .5rem;
}
-#regulation dt {
- font-size: .9rem;
- font-weight: bold;
- padding-bottom: .2rem;
+.form h2 {
+ font-size: 1.17rem;
+ padding: .4rem;
}
-#regulation dd {
- font-size: .9rem;
- margin-left: 1.5rem;
+.form a {
+ white-space: nowrap;
}
-#regulation dd:before {
+.form section {
+ margin: 0;
+ border: .05rem solid #00c3f9;
+ border-radius: .2rem;
+ width: 100%;
}
-#regulation dl:only-child,
-#regulation dl:last-child,
-#regulation dl:last-of-type,
-#regulation dt:only-child,
-#regulation dt:last-child,
-#regulation dt:last-of-type,
-#regulation dd:only-child,
-#regulation dd:last-child,
-#regulation dd:last-of-type {
- margin-bottom: 0;
+.form form {
+ gap: .5rem;
}
/* Footer */
display: flex;
justify-content: space-between;
background-color: #cff;
-}
-
-#footer details {
- font-weight: bold;
+ gap: .5rem;
}
#footer summary::after {
}
/* viewport responsive hack */
-@media ( max-width: 900px ) {
+@media ( max-width: 1400px ) {
+ .location label,
+ .location input,
+ .location textarea {
+ width: 12rem;
+ }
+
+ .location .two {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ .session .three {
+ grid-template-columns: repeat(2, 1fr);
+ }
+}
+
+@media ( max-width: 950px ) {
.panel {
- place-content: center;
+ /*flex-flow: column-reverse wrap;*/
flex-flow: column wrap;
}
+ .location .two {
+ grid-template-columns: repeat(2, 1fr);
+ }
+}
+
+@media ( max-width: 900px ) {
.form {
flex-direction: row;
}
form label {
width: 6rem;
+ line-height: 2rem;
+ }
+
+ form label.captcha img {
+ height: auto;
+ width: 6rem;
+ padding: .25rem 0;
}
form input,
form textarea,
form section section {
width: 20rem;
+ line-height: 2rem;
}
form button {
width: 6rem;
+ line-height: 2rem;
}
.col label,
.col button {
width: 12rem;
- box-sizing: fit-content;
}
- #dashboard .seventh:nth-child(7n+1),
+ .seven {
+ grid-template-columns: repeat(4, 1fr);
+ }
+
+ .calendar .sunday {
+ grid-column: span 2;
+ }
+
+ /*.grid section:nth-child(7n) {
+ grid-column: span 2;
+ }*/
+
+ .four {
+ grid-template-columns: repeat(3, 1fr);
+ }
+
+ .three {
+ grid-template-columns: repeat(2, 1fr);
+ }
+
+ .two {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ .four .multimap {
+ grid-column: span 3;
+ }
+
+ .three .multimap {
+ grid-column: span 2;
+ }
+
+ .two .multimap {
+ grid-column: span 1;
+ }
+
+ /*#dashboard .seventh:nth-child(7n+1),
#dashboard .seventh:nth-child(7n+2),
#dashboard .seventh:nth-child(7n+3),
#dashboard .seventh:nth-child(7n+4) {
#dashboard .seventh:nth-child(7n+6),
#dashboard .seventh:nth-child(7n+7) {
width: calc(100% / 3 - (2/3*.1rem));
+ }*/
+}
+
+@media ( max-width: 700px ) {
+ .session .three {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ .multimap img {
+ width: 100%;
+ width: calc(100% - .2rem);
+ height: auto;
}
}
flex-direction: column;
}
- #dashboard .seventh:nth-child(n) {
+ .seven {
+ grid-template-columns: repeat(2, 1fr);
+ }
+
+ /*.grid section:nth-child(7n) {
+ grid-column: span 2;
+ margin-bottom: .5rem;
+ }
+
+ .grid section:only-child,
+ .grid section:last-child,
+ .grid section:last-of-type {
+ margin-bottom: 0;
+ }*/
+
+ .calendar .sunday {
+ margin-bottom: .5rem;
+ }
+
+ .calendar .sunday:only-child,
+ .calendar .sunday:last-child {
+ margin-bottom: 0;
+ }
+
+ .four {
+ grid-template-columns: repeat(2, 1fr);
+ }
+
+ .three {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ .four .multimap {
+ grid-column: span 2;
+ }
+
+ .three .multimap {
+ grid-column: span 1;
+ }
+
+ .location .two {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ /*#dashboard .seventh:nth-child(n) {
width: calc(100% / 2 - .1rem);
}
#dashboard .seventh:nth-child(7n) {
width: calc(100%);
+ }*/
+
+ /*.city .two,
+ .location .two {
+ grid-template-columns: 1fr;
}
+
+ .city .grid article,
+ .location .grid article {
+ overflow: hidden;
+ }*/
}
@media ( max-width: 450px ) {
+ dd, p, #footer {
+ font-size: 110%;
+ }
+
+ a, dd, figcaption, #footer {
+ /*XXX: required to validate Tap targets are sized appropriately*/
+ line-height: 3rem;
+ }
+
+ figure,
+ .calendar a {
+ line-height: normal;
+ }
+
form .row,
.grid,
- .form {
+ .form,
+ #footer {
flex-direction: column;
}
- #dashboard .seventh:nth-child(n) {
- width: calc(100%);
+ form label {
+ text-align: center;
+ }
+
+ .seven {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ /*.grid section:nth-child(n) {
+ grid-column: auto;
+ }*/
+ .calendar .sunday {
+ grid-column: auto;
+ }
+
+ .four {
+ grid-template-columns: repeat(1, 1fr);
+ }
+
+ .four .multimap {
+ grid-column: span 1;
+ }
+}
+
+@media ( max-width: 260px ) {
+ .col label,
+ .col input,
+ .col option,
+ .col optgroup,
+ .col select,
+ .col textarea {
+ width: 10rem;
+ }
+
+ .col button {
+ width: 10rem;
}
}