/* Based on Classless.css v1.0 (Tiny Inline Version)*/

/* Tiny Reset for block elements  */
* {box-sizing: border-box; border-spacing: 0;}
header, footer, figure, caption {
  display: block;
  margin: 0.5rem 0rem 1rem;
  width: 100%;
}
html { font: 12pt/1.6 'Open Sans', 'DejaVu Sans', Helvetica, sans-serif; }
body {
  margin: auto;
  max-width: 60rem;
  background-color: #fcfcfc;
  color: #433;
  padding: 3.1rem 0.6rem 0;
}
body > footer { margin: 4rem 0 0; }

.welcome {
  margin: 2.7rem 0;
  padding: 1rem;
  font-size: 118%;
  background-color: #fff;
  border-radius: 1em;
  box-shadow: #d9d9d9 0.3em 0.3em 0.4em 0.2em;
}
.welcome .bold { font-weight: 500; }

.msg {
  background-color: #b0cafb;
  border-radius: 0.5em;
  padding: 0.4em 0.8em;
}

#desktop-notice, #ios-notice { display: none; }

.contact { text-align: right; }

/* clickable stuff */
a, button, select { color: #07c; cursor: pointer; }
a { text-decoration: underline solid #d1d1d1; }
a:hover { color: #088; }

/* common */
table.tbl td, table.tbl th, figcaption, caption { font-size: 95%; }
table.tbl td, table.tbl th, hr { border: 0; border-bottom: 0.1rem solid #d1d1d1; }

/* tables */
table.tbl { margin: 0.5rem 0rem 1rem; }
table.tbl td, table.tbl th { padding: 0.5rem 0.8rem; text-align: left; }
table.tbl th { position: sticky; top: 0; vertical-align: bottom; background-color: #fcfcfc; }
table.tbl td { vertical-align: top; }
table.tbl td:first-child { white-space: nowrap; }
table.tbl span.em { padding: 0.2em; background-color: #ecff68; }

/* navigation */
nav {
  display: flex;
  justify-content: space-between;
}
nav a {
  text-decoration: none;
}
nav a:hover { color: #07c; }
nav .logo, nav .logo:hover {
  color: inherit;
  font-size: 180%;
  font-weight: bold;
}
nav .logo {
  display: flex;
  align-items: center;
}
nav .logo img {
  position: relative;
  left: -9px;
  top: -5px;
  opacity: 85%;
}
nav .login {
  padding: 0.7em;
  border-radius: 12px;
  background-color: #e2e2e2;
}

/* headings */
h1, h2, h3 { margin: 1.5em 0 0em; line-height: 1.2em; }
h1+h2, h2+h3 { margin-top: .5em; }
h1 { font-size: 2.2em; font-weight: 300; }
h2 { font-size: 2.0em; font-weight: 300; font-variant-caps: small-caps; }
h3 { font-size: 1.5em; font-weight: 400; }

/* figures */
img, svg { max-width: 100%; vertical-align: text-top; }
p>img:not(:only-child) { float: right; margin: 0 0 .5em .5em; }
figure > img { display: block; margin: 0.5em auto; }
figcaption, caption { color: #888; margin-bottom: 1rem; }
figure > *:not(:last-child) { margin: 0 0 0.4rem; }

/* forms */
form { margin-top: 12px; }
input, select { outline:none; }
input { font-size: 1em; }
input, button, select {
  border-radius: 4px;
  border: 1.5px solid #d1d1d1;
  margin-bottom: 5px;
  padding: 0.4em 0.8em;
  color: #433;
  background-color: #f5f6f7;
}
button, select {
  font-weight: bold;
  border: 1.5px solid #07c;
}
button {
  padding: 0.4em 1em;
  font-size: 85%;
  letter-spacing: 0.1em;
}
button.go {
  border-radius: 0 4px 4px 0;
}
button:not(.go) {
  margin: 0.4em 0;
}
.btn-remark {
  display: flex;
  align-items: center;
}
.btn-remark > small {
  padding-left: 8px;
}
input:not([type=checkbox]):not([type*='ra']):hover, select:hover {
  border: 1.5px solid #088;
}
input:not([type=checkbox]):not([type*='ra']):focus {
  border: 1.5px solid #07c;
  box-shadow: 0 0 5px #07c;
}
.search {
  display: flex;
  width: 100%;
}
.search input {
  width: 100%;
  border-radius: 4px 0 0 4px;
  border-right-width: 0 !important;
}
input[name="alert-price"] {
  width: 8em;
}

.grid {
  display: grid;
  grid-template-columns: max-content max-content;
  column-gap: 15px;
}
.grid > button, .grid > .btn-remark { grid-column-start: 2; }

/* product card */
.card {
  display: flex;
  flex-wrap: wrap;
  width: fit-content;
  margin: 2em;
  padding: 1.6em;
  background-color: #fff;
  border-radius: 1em;
  box-shadow: #ddd 0.7em 0.7em 1em 1em;
}
.card > img {
  margin-right: 1.6em;
}
.card > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.card .price {
  font-size: 1.8em;
}
.card .qty {
  font-size: 1.2em;
}
.card .status {
  font-size: 1.4em;
  margin-bottom: 1em;
}
.card .time {
  margin-bottom: 1em;
}

/* search results */
.results {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(30%, 1fr));
  gap: 6px;
}
.results a {
  color: inherit;
  text-decoration: inherit;
}
.results .item {
  display: flex;
  flex-wrap: wrap;
  margin: 1em;
  padding: 1em;
  background-color: #fff;
  border-radius: 1em;
  border: 3px solid #fff;
  box-shadow: #d9d9d9 0.7em 0.7em 1em 0.5em;
}
.results .item:hover {
  border: 3px solid #90b0fa;
}
.results .item > img {
  margin-right: 20px;
  margin-bottom: 10px;
}
.results .item .price {
  font-size: 1.2em;
  margin-right: 10px;
}

/* other specific elements */
span.qty { white-space: nowrap; }
p.alertme { margin: 0; }
div#chart { width: 100%; height: 500px; }
.uplot { font-family: revert !important; }
