color: #00c3f9;
}
+/* Font styling */
+html, body, dd, li, p, td {
+ font-family: 'Droid Sans', 'Symbola', 'DejaVu Sans', 'FreeSans', sans-serif;
+ /* DejaVu Sans/FreeSans/FreeSerif/Linux Libertine/Symbola/Unifont*/
+}
+
+button, code, input, option, optgroup, pre, select, textarea {
+ font-family: 'Droid Sans Mono', monospace;
+}
+
+dt, h1, h2, h3, h4, h5, h6, label, legend, th, details {
+ font-family: 'Droid Serif', serif;
+}
+
/* Default styling */
h1 {
font-size: 2rem;
}
h5 {
- font-size: .83rem;
+ font-size: .85rem;
margin: 1.386rem 0;
}
margin: 1.561rem 0;
}
-p {
+p,
+dt {
+ font-size: 1rem;
+}
+
+dd {
+ font-size: .9rem;
}
body {
}
/* Message */
-div.error::before,
-div.error::after {
+.notice::before,
+.notice::after,
+.warning::before,
+.warning::after,
+.error::before,
+.error::after {
content: "⚠";
line-height: 100%;
margin: auto 0;
+ padding: 0 .25rem;
}
-div.error {
+.notice,
+.warning,
+.error {
display: flex;
flex-direction: row;
justify-content: space-between;
text-align: center;
}
-div.flash {
+.notice::before,
+.notice::after {
+ /*XXX: see https://www.fileformat.info/info/unicode/char/2139/fontsupport.htm
+ * DejaVu Sans/FreeSans/FreeSerif/Linux Libertine/Symbola/Unifont*/
+ content: "ℹ";
+ /*content: "⌘";*/
+}
+
+.notice {
+ border-color: #3333c3;
+ background-color: #c3c3f9;
+ color: #3333c3;
+}
+
+.warning::before,
+.warning::after {
+ /*XXX: see https://www.fileformat.info/info/unicode/char/2139/fontsupport.htm
+ * DejaVu Sans/FreeSans/FreeSerif/Linux Libertine/Symbola/Unifont*/
+ content: "?";
+ /*content: "⌘";*/
+}
+
+.warning {
+ border-color: #c39333;
+ background-color: #f9c333;
+ color: #936333;
+}
+
+.flash {
margin: 0 .5rem .5rem;
}
+p.notice,
+p.warning,
+p.error {
+ margin-bottom: .5rem;
+}
+
+pre.trace {
+ border: .05rem solid #00c3f9;
+ border-radius: .2rem;
+ padding: .5rem;
+ margin-bottom: 1rem;
+ font-size: .7rem;
+}
+
+
/*ul#error::before,
ul#error::after,
ul.error::before,
}*/
/* Content */
+#dashboard,
#form,
#content,
-#dashboard {
+#regulation,
+#location,
+#session,
+#user {
border: .1rem solid #00c3f9;
border-radius: .5rem;
margin: .5rem;
margin-top: 0;
overflow: hidden;
padding: .5rem;
+ display: flex;
+ flex-direction: column;
+}
+
+/* Section */
+section {
+ display: flex;
+ flex-direction: column;
+ border: .05rem solid #00c3f9;
+ border-radius: .2rem;
+ padding: .5rem;
+ margin-bottom: 1rem;
+ overflow: hidden;
+}
+
+section:only-child,
+section:last-child,
+section:last-of-type {
+ margin-bottom: .5rem;
}
section h2 {
background-color: #cff;
border-bottom: .1rem solid #00c3f9;
- margin: -.5rem -.5rem .5rem -.5rem;
+ margin: -.5rem;
+ margin-bottom: .5rem;
+ padding: .5rem;
+ padding-bottom: .5rem;
+}
+
+section h3 {
+ background-color: #cff;
+ border-bottom: .1rem solid #00c3f9;
+ margin: -.5rem;
+ margin-bottom: .5rem;
+ padding: .4rem;
+}
+
+section h4 {
+ background-color: #cff;
+ border-bottom: .1rem solid #00c3f9;
+ margin: -.5rem;
+ margin-bottom: .5rem;
+ padding: .3rem;
+}
+
+section section {
padding: .5rem;
- padding-bottom: .4rem;
+ padding-bottom: .5rem;
+ margin-bottom: .5rem;
+}
+
+section section:only-child,
+section section:last-child,
+section section:last-of-type {
+ margin-bottom: 0;
}
/* Form */
+/*#form div {
+ margin-bottom: .5rem;
+}
+
+#form div:only-child,
+#form div:last-child,
+#form div:last-of-type {
+ margin-bottom: 0;
+}
+
form {
display: flex;
flex-direction: column;
- border: .05rem solid #00c3f9;
- border-radius: .2rem;
+ / *border: .05rem solid #00c3f9;
+ border-radius: .2rem;* /
padding: .5rem;
}
form section:last-of-type {
margin-bottom: .5rem;
}
+*/
+
+form section,
+form section:only-child,
+form section:last-child,
+form section:last-of-type {
+ border: none;
+ margin-bottom: .5rem;
+}
form section section,
form section section:only-child,
form section section:last-child,
form section section:last-of-type {
width: 50%;
+ padding: 0;
margin-bottom: 0;
}
form div {
display: flex;
flex-direction: row;
- justify-content: space-around;
+ justify-content: center;
margin-bottom: .5rem;
}
margin-bottom: 0;
}
-form section div.error {
- margin: 0 1rem;
+form header div.error {
+ width: calc(50% + 10rem);
+ margin: 0 auto;
}
-form section section div.error {
- margin: .25rem 0 0 0;
+form section div.error {
+ margin-top: .25rem;
}
+
+/*form section div.error {
+ margin: 0 1rem;
+}*/
+
+
label {
- min-width: 5rem;
- font-size: .9rem;
- padding: .2rem 0;
+ min-width: 10rem;
+ font-size: .85rem;
+ padding: .2rem 1rem .2rem 0;
text-align: right;
white-space: nowrap;
}
button,
input,
select,
+option,
+optgroup,
textarea {
box-sizing: border-box;
width: 100%;
border-radius: .2rem;
font-size: .8rem;
color: #066;
+ background-color: transparent;
}
button.submit {
}
/* Vertical form */
-.form_col {
- margin-left: .5rem;
- width: 10rem;
+form.col {
}
-.form_col div {
+form.col div {
flex-direction: column;
}
-.form_col div.error {
+form.col div.error {
flex-direction: row;
}
-.form_col label {
+form.col label {
text-align: center;
+ padding-right: 0;
+}
+
+form.col section {
+ padding: 0;
}
-.form_col section section,
-.form_col section section:only-child,
-.form_col section section:last-child,
-.form_col section section:last-of-type {
+form.col section section {
width: auto;
}
-.form_col div.date {
+form.col div.date {
flex-direction: row;
justify-content: space-between;
}
/* Dashboard */
-#dashboard .panel {
+#dashboard .panel,
+#location .panel,
+#session .panel,
+#user .panel {
display: flex;
flex-direction: row;
- flex-wrap: wrap;
+ flex-wrap: nowrap;
place-content: space-between;
+ border: 0;
+ margin: 0 0 .5rem 0;
+ padding: 0;
+}
+
+#dashboard .panel:only-child,
+#dashboard .panel:last-child,
+#dashboard .panel:last-of-type,
+#location .panel:only-child,
+#location .panel:last-child,
+#location .panel:last-of-type,
+#session .panel:only-child,
+#session .panel:last-child,
+#session .panel:last-of-type,
+#user .panel:only-child,
+#user .panel:last-child,
+#user .panel:last-of-type {
+ margin-bottom: 0;
}
-#dashboard .grid {
+#dashboard .grid,
+#location .grid,
+#session .grid,
+#user .grid {
display: table;
- border: .05rem solid #00c3f9;
+ line-height: normal;
+ padding: 0;
flex-grow: 1;
- border-radius: .2rem; /* marche pas sur chrome */
- table-layout: fixed;
+ table-layout: fixed;
+ border: 0 none;
+ /*width: calc(100% - 12rem);
+ border-collapse: collapse;*/
width: calc(100% - 12rem);
border-collapse: collapse;
}
-#dashboard .cell {
+#dashboard .cell,
+#location .cell,
+#session .cell,
+#user .cell {
display: table-cell;
text-align: left;
+ padding: .5rem;
+ flex-grow: 1;
border: .05rem solid #00c3f9;
- font-size: initial;
- height: 8rem;
+ height: 6rem;
}
-#dashboard dl.cell {
- height: 3rem;
-}
-
-#dashboard .cell h3 {
- font-size: 1rem;
- padding: .25rem;
- margin: 0;
+#dashboard .form,
+#location .form,
+#session .form,
+#user .form {
+ border: .1rem solid #00c3f9;
+ border-radius: .2rem;
+ padding: .5rem;
+ margin-left: .5rem;
+ width: 10rem;
}
-#dashboard .cell dd {
+#dashboard .form label,
+#dashboard .form input,
+#dashboard .form button,
+#location .form label,
+#location .form input,
+#location .form button,
+#session .form label,
+#session .form input,
+#session .form button,
+#user .form label,
+#user .form input,
+#user .form button {
text-align: center;
+ min-width: 6rem;
}
-#dashboard .seventh {
+
+#dashboard .seventh,
+#location .seventh,
+#session .seventh,
+#user .seventh {
width: calc(100% / 7);
}
-#dashboard .disabled {
+#dashboard .third,
+#location .third,
+#session .third,
+#user .third {
+ width: calc(100% / 3);
+ height: auto;
+}
+
+#dashboard .disabled,
+#location .disabled,
+#session .disabled,
+#user .disabled {
color: #acc;
background-color: #bee;
}
-#dashboard .current {
+#dashboard .current,
+#location .current,
+#session .current,
+#user .current {
background-color: #cff;
}
-#dashboard .next {
+#dashboard .next,
+#location .next,
+#session .next,
+#user .next {
background-color: #eff;
}
-#dashboard .session {
+#dashboard .session,
+#location .session,
+#session .session,
+#user .session {
border-radius: .2rem;
border: .1rem solid #00c3f9;
font-size: .8rem;
margin: 0 .1rem .1rem .1rem;
overflow-x: hidden;
white-space: nowrap;
- text-overflow: ellipsis;
+ Text-overflow: ellipsis;
}
-#dashboard .pending {
+#dashboard .pending,
+#location .pending,
+#session .pending,
+#user .pending {
background-color: #ccc;
}
-#dashboard .granted {
+#dashboard .granted,
+#location .granted,
+#session .granted,
+#user .granted {
background-color: #cff;
/*background-color: #33b679;
border-color: #33b679;*/
}
-#dashboard .disputed {
+#dashboard .disputed,
+#location .disputed,
+#session .disputed,
+#user .disputed {
background-color: #fcc;
}
-#dashboard .orphaned {
+#dashboard .orphaned,
+#location .orphaned,
+#session .orphaned,
+#user .orphaned {
background-color: #fc9;
}
+#dashboard .highlight,
+#location .highlight,
+#session .highlight,
+#user .highlight {
+ border-color: #3333c3;
+ background-color: #c3c3f9;
+ color: #3333c3;
+}
+
+/* Session */
+#session {
+}
+
+#session h2 a::after {
+ content: " >";
+}
+
+#session h2 a:last-child::after {
+ content: none;
+}
+
+#session .row {
+ display: flex;
+ flex-wrap: wrap;
+ margin-bottom: .5rem;
+ border: .1rem solid #00c3f9;
+ border-radius: .2rem;
+}
+
+#session .sub {
+ display: flex;
+ flex-direction: column;
+ line-height: normal;
+ margin-bottom: .5rem;
+ margin-top: .5rem;
+ padding: .5rem;
+ border: .1rem solid #00c3f9;
+ border-radius: .2rem;
+}
+
+#session .grid dd dd {
+ text-indent: .5rem;
+}
+
+/* Regulation */
+#regulation {
+}
+
+
+/*#regulation div {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-around;
+ margin-bottom: .5rem;
+}
+
+#regulation div:only-child,
+#regulation div:last-child,
+#regulation div:last-of-type {
+ margin-bottom: 0;
+}*/
+/*
+ * XXX: TODO:
+ * see https://developer.mozilla.org/fr/docs/Web/HTML/Element/dl
+ * see https://www.w3.org/Style/Examples/007/fonts.fr.html
+ * see https://fonts.googleapis.com/css?family=Droid+Sans:100,200,300,400,500,600,700,800,900,100i,200i,300i,400i,500i,600i,700i,800i,900i|Droid+Sans+Mono:100,200,300,400,500,600,700,800,900,100i,200i,300i,400i,500i,600i,700i,800i,900i|Droid+Serif:100,200,300,400,500,600,700,800,900,100i,200i,300i,400i,500i,600i,700i,800i,900i
+ * see https://fonts.google.com/?query=droi
+ * see https://fonts.google.com/specimen/Inconsolata
+ * see https://fonts.google.com/specimen/Tangerine%20light,light+italic+regular+semi-bold+bold+extra-bold
+ * see https://fonts.google.com/?selection.family=Roboto:100i
+ * see https://developers.google.com/fonts/docs/getting_started
+ */
+
+#regulation dl {
+ /*display: flex;
+ flex-direction: row;
+ justify-content: space-around;
+ padding-bottom: .5rem;*/
+ padding: .25rem;
+ margin-bottom: .5rem;
+}
+
+#regulation dt {
+ font-size: .9rem;
+ font-weight: bold;
+ padding-bottom: .2rem;
+}
+
+#regulation dd {
+ font-size: .9rem;
+ margin-left: 1.5rem;
+}
+
+#regulation dd:before {
+}
+
+#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;
+}
+
/* Footer */
#footer {
border: .1rem solid #00c3f9;
- border-radius: .5rem;
+ Border-radius: .5rem;
margin: .5rem;
margin-top: 0;
padding: .5rem;
}
/* viewport responsive hack */
-@media ( max-width: 650px ) {
+@media ( max-width: 850px ) {
#header {
flex-wrap: wrap;
}
- #dashboard .panel {
+ #location .panel,
+ #session .panel,
+ #user .panel {
place-content: center;
flex-direction: column;
+ flex-wrap: wrap;
}
- #dashboard .grid {
- width: 100%;
+ #location .panel:only-child,
+ #location .panel:last-child,
+ #location .panel:last-of-type,
+ #session .panel:only-child,
+ #session .panel:last-child,
+ #session .panel:last-of-type,
+ #user .panel:only-child,
+ #user .panel:last-child,
+ #user .panel:last-of-type {
+ margin-bottom: .5rem;
}
- #dashboard div.grid {
- display: grid;
+ #location .form,
+ #session .form,
+ #user .form {
+ width: auto;
+ margin: .5rem auto 0 auto;
}
- .form_col {
- margin: .5rem auto 0 auto;
+ #location .grid,
+ #session .grid,
+ #user .grid {
+ width: calc(100%);
}
}
-