]> Raphaël G. Git Repositories - airbundle/blobdiff - Resources/public/css/screen.css
Replace AbstractController heritage with ControllerTrait
[airbundle] / Resources / public / css / screen.css
index 1b8a10e14453b151de0f29ae3fa2e3f42e17671a..feb1460f4cb10ca31330d13a145979e0107a6380 100644 (file)
@@ -18,50 +18,63 @@ a::first-letter {
        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;
-       font-family: 'La Belle Aurore';
        margin: 1.34rem 0;
 }
 
 h2 {
        font-size: 1.5rem;
-       font-family: 'La Belle Aurore';
        margin: 1.245rem 0;
 }
 
 h3 {
        font-size: 1.17rem;
-       font-family: 'La Belle Aurore';
        margin: 1.17rem 0;
 }
 
 h4 {
        font-size: 1rem;
-       font-family: 'La Belle Aurore';
        margin: 1.33rem 0;
 }
 
 h5 {
-       font-size: .83rem;
-       font-family: 'La Belle Aurore';
+       font-size: .85rem;
        margin: 1.386rem 0;
 }
 
 h6 {
        font-size: .67rem;
-       font-family: 'La Belle Aurore';
        margin: 1.561rem 0;
 }
 
-p {
+p,
+dt {
+       font-size: 1rem;
+}
+
+dd {
+       font-size: .9rem;
 }
 
 body {
        display: flex;
        flex-flow: column wrap;
-       font-family: 'Irish Grover';
        color: #066;
 }
 
@@ -128,14 +141,21 @@ 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;
@@ -148,10 +168,53 @@ div.error {
        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,
@@ -217,87 +280,156 @@ ul.error {
 }*/
 
 /* Content */
+#dashboard,
 #form,
 #content,
-#policy,
-#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 */
-#policy,
+/*#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;
 }
 
-#policy section,
 form section {
        margin-bottom: 1rem;
 }
 
-#policy section:only-child,
-#policy section:last-child,
-#policy section:last-of-type,
 form section:only-child,
 form section:last-child,
 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;
 }
 
-#policy div,
 form div {
        display: flex;
        flex-direction: row;
-       justify-content: space-around;
+       justify-content: center;
        margin-bottom: .5rem;
 }
 
-#policy div:only-child,
-#policy div:last-child,
-#policy div:last-of-type,
 form div:only-child,
 form div:last-child,
 form div:last-of-type {
        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;
 }
@@ -305,6 +437,8 @@ label {
 button,
 input,
 select,
+option,
+optgroup,
 textarea {
        box-sizing: border-box;
        width: 100%;
@@ -313,6 +447,7 @@ textarea {
        border-radius: .2rem;
        font-size: .8rem;
        color: #066;
+       background-color: transparent;
 }
 
 button.submit {
@@ -323,93 +458,161 @@ 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 section,
-.form_col section section:only-child,
-.form_col section section:last-child,
-.form_col section section:last-of-type {
+form.col section {
+       padding: 0;
+}
+
+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;
+       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;
@@ -417,66 +620,151 @@ button.submit {
        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;
 }
 
-/* Policy */
-#policy h3 {
-       background-color: #cff;
-       border-bottom: .1rem solid #00c3f9;
-       margin: -.5rem -.5rem .5rem -.5rem;
-       padding: .5rem;
-       padding-bottom: .4rem;
+#dashboard .highlight,
+#location .highlight,
+#session .highlight,
+#user .highlight {
+       border-color: #3333c3;
+       background-color: #c3c3f9;
+       color: #3333c3;
+}
+
+/* Session */
+#session {
 }
 
-#policy section {
+#session h2 a::after {
+       content: " >";
+}
+
+#session h2 a:last-child::after {
+       content: none;
+}
+
+#session .row {
        display: flex;
-       flex-direction: column;
-       border: .05rem solid #00c3f9;
+       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;
 }
 
-#policy section section {
+#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;
-       padding-bottom: .5rem;
+       margin-bottom: .5rem;
 }
 
-#policy dl {
-       padding-bottom: .5rem;
+#regulation dt {
+       font-size: .9rem;
+       font-weight: bold;
+       padding-bottom: .2rem;
 }
 
-#policy h4 {
-       background-color: #cff;
-       border-bottom: .1rem solid #00c3f9;
-       margin: -.24rem -.24rem .24rem -.24rem;
-       padding: .24rem;
-       padding-bottom: .3rem;
+#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;
@@ -500,26 +788,41 @@ button.submit {
 }
 
 /* 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%);
        }
 }
-