]> git.plutz.net Git - confetti/blobdiff - style.css
date time helper
[confetti] / style.css
index 298ae3d614903a785fdcb45091ed4bebb91e534f..c00829e2ba5b2fb8c4d45cc7575e261b15515b81 100644 (file)
--- a/style.css
+++ b/style.css
@@ -25,8 +25,9 @@ body > .menu a {
   padding: .5em 3em;
   box-shadow: inset 0 0 .5em #000;
 }
-body.cards > .menu a[href$="/cards/"],
-body.courses > .menu a[href$="/courses/"] {
+body.ledgers > .menu a[href$="/ledgers/"],
+body.courses > .menu a[href$="/courses/"],
+body.cards > .menu a[href$="/cards/"] {
   color: #000;
   background-color: #FFF;
   box-shadow: none;
@@ -34,9 +35,9 @@ body.courses > .menu a[href$="/courses/"] {
 
 /* =========== FILTER AND SEARCH Headers ========= */
 
-form.categories,
+form.upload, form.categories,
 form.search, form.sort, form.filter, form.newcard, form.newcourses {
-  margin-top: 1em; padding: 0 1em;
+  margin-top: 1em; padding: .125em 1em 0 1em;
   z-index: 1;
 }
 form.filter > h1 { display: none; }
@@ -64,10 +65,17 @@ form.filter button[type=submit] {
 form.filter button[value=export_csv] { margin-left: 1em; }
 
 body.courses form .order { display: inline-block; margin-right: 2em;}
+body.courses form.search.sort fieldset { margin-top: .5em; }
 
 body.cards form.newcard { display: flex; }
 body.cards form.newcard input[name=seed] { flex: 1; }
 
+form.upload label {
+  display: block;
+  font-weight: bold;
+  margin-top: .5em;
+}
+
 
 /* ============ LIST ITEMS, Generic ============= */
 
@@ -359,3 +367,167 @@ body.categories form.namelist ul.namelist > li h2 {
 body.categories form.namelist ul.namelist > li ul li {
   display: inline-block;
 }
+
+
+/* ======== Ledgers Page ======== */
+
+form.ibanassign,
+form.ledgers {
+  padding: .125em 1em 0 1em;
+}
+
+.ibanassign fieldset.iban.sure { background-color: #DFD; }
+.ibanassign fieldset.iban.guess { background-color: #FFD; }
+.ibanassign fieldset.iban.unknown { background-color: #FDD; }
+
+.ibanassign fieldset.iban {
+  padding: 0 .75em;
+  margin-top: -.5em;
+  box-shadow: .25em .25em .25em #AAA;
+}
+.ibanassign fieldset.iban legend {
+  top: .75em;
+}
+.ibanassign fieldset.iban p.principal {
+  font-size: .875em;
+}
+.ibanassign fieldset.iban p.date,
+.ibanassign fieldset.iban p.amount {
+  font-size: .875em;
+  display: inline-block;
+  vertical-align: top;
+  margin-right: .75em;
+  margin-bottom: 0;
+}
+.ibanassign fieldset.iban p.amount {
+  font-weight: bold;
+}
+
+.ibanassign fieldset.iban.sure .card { margin-right: 1em; }
+
+.ibanassign fieldset.iban input[name^="fn_"].disabled {
+  pointer-events: none;
+}
+.ibanassign fieldset.iban input[name^="check_"],
+.ibanassign fieldset.iban input[name^="check_"] + input,
+.ibanassign fieldset.iban input[name^="check_"] + input + label {
+  display: none;
+}
+.ibanassign fieldset.iban input[name^="check_"]:checked + input,
+.ibanassign fieldset.iban input[name^="check_"]:checked + input + label.del,
+.ibanassign fieldset.iban input[name^="check_"] + input + label.del + input + input + label.add,
+.ibanassign fieldset.iban input[name^="check_"]:checked + input + label + input + input + label.add {
+  display: inline;
+}
+.ibanassign fieldset.iban input[name^="check_"]:checked + input + label.add,
+.ibanassign fieldset.iban input[name^="check_"] + input + label.del + input:checked + input + label.add,
+.ibanassign fieldset.iban input[name^="check_"]:checked + input + label + input:checked + input + label.add {
+  display: none;
+}
+
+.ibanassign fieldset.iban input[name^="check_"] + input + label {
+  vertical-align: bottom;
+  line-height: 2.5em;
+  padding: .375em .625em;
+  border: .5pt solid;
+}
+.ibanassign fieldset.iban input[name^="check_"] + input + label.add {
+  background-color: #DFD;
+  border-radius: 2pt;
+}
+.ibanassign fieldset.iban input[name^="check_"] + input + label.del {
+  margin: 0 .5em 0 -.25em;
+  background-color: #FDD;
+  border-radius: 0 2pt 2pt 0;
+}
+
+.ibanassign input[name^="use_"] {
+  display: none;
+}
+.ibanassign input[name^="use_"]:checked + fieldset.iban.guess   { background-color: #EFD; }
+.ibanassign input[name^="use_"]:checked + fieldset.iban.unknown { background-color: #FED; }
+.ibanassign input[name^="use_"]:checked + fieldset.iban input {
+  background-color: #DFD;
+  pointer-events: none;
+  border-color: #888;
+}
+.ibanassign input[name^="use_"]:checked + fieldset.iban label.del,
+.ibanassign input[name^="use_"]:checked + fieldset.iban label.add {
+  display: none !important;
+}
+
+.ibanassign fieldset.iban label[for^="use_"] {
+  display: block;
+  float: right;
+  padding: .25em .5em;
+  background-color: #DDF;
+  border: 1pt solid;
+}
+
+.ibanassign input[name^="use_"] + fieldset.iban label[for^="use_"] { display: block; }
+.ibanassign input[name^="use_"] + fieldset.iban label[for^="use_"] + label[for^="use_"] { display: none; }
+.ibanassign input[name^="use_"]:checked + fieldset.iban label[for^="use_"] { display: none; }
+.ibanassign input[name^="use_"]:checked + fieldset.iban label[for^="use_"] + label[for^="use_"] { display: block; }
+
+.ibanassign > button {
+  position: sticky;
+  bottom: 0;
+  margin: auto;
+  display: block;
+}
+
+body.ledgers .transactions {
+  width: 98%;
+  width: calc(100% - 2em);
+  margin: auto;
+}
+body.ledgers .transactions thead {
+  position: sticky;
+  top: 0;
+  z-index: 1;
+}
+body.ledgers .transactions th {
+  text-align: left;
+  background-color: #FFF;
+}
+body.ledgers .transactions td {
+  vertical-align: top;
+  font-family: monospace;
+  font-size: 12pt;
+}
+
+body.ledgers .transactions td:nth-child(2n) {
+  background-color: #DDD;
+}
+body.ledgers .transactions td:nth-child(2n + 1) {
+  background-color: #EEE;
+}
+
+body.ledgers .transactions .date {
+  min-width: 8em;
+}
+body.ledgers .transactions .orig span {
+  display: block;
+}
+body.ledgers .transactions .amount,
+body.ledgers .transactions .balance {
+  vertical-align: bottom;
+  min-width: 6em;
+  text-align: right;
+}
+
+body.ledgers .transactions .reference textarea {
+  width: 100%;
+}
+body.ledgers .transactions .orig input[type=date],
+body.ledgers .transactions .date input[type=date],
+body.ledgers .transactions .amount input[type=number] {
+  display: block;
+  width: 100%;
+}
+
+body.ledgers .transactions .orig input:not(:checked) + label + input[type=date] {
+  background-color: #DDD;
+  border-color: #888;
+  pointer-events: none;
+}