img, svg, video, canvas{
  max-width: 100%;
}input, select, button, textarea{
  max-width: 100%;
  min-width: 0;
}.top, .shead{
  background: var(--hdr-bg);
}.logo img{
  width: 100%;
  height: 100%;
  display: block;
}input, select, button{
  font: inherit;
}.primary .label, .green .label{
  color: #e0e7ff;
}.rate-wrap{
  display: flex;
  align-items: center;
  justify-content: space-between;
}.fx-note button{
  background: none;
  border: 0;
  padding: 0 0 0 2px;
  color: inherit;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}.wrap{
  overflow-x: auto;
}.date .dn{
  display: inline-block;
  width: 1.7em;
  text-align: right;
}.date .dw{
  display: inline-block;
  width: 3.4em;
  margin-inline-start: .3em;
  text-align: start;
}.status.empty{
  background: var(--emp);
  border-color: var(--inb);
  color: var(--empt);
}.empty-row .date{
  color: var(--d0);
}.present-row .date{
  color: var(--dp);
}.absent-row .date{
  color: var(--da);
}.holiday-row .date{
  color: var(--dh);
}.ci:read-only{
  background: transparent;
  border-color: transparent;
  color: transparent;
  cursor: default;
}.mini.lt{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(8*var(--u));
}.tool{
  background: var(--s);
  border: 1px solid var(--b);
  color: var(--tc);
  border-radius: calc(8*var(--u));
  padding: calc(6*var(--u)) calc(8*var(--u));
  font-size: calc(9.5*var(--u));
}.ot-w{
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}.otm.c{
  color: var(--warn);
}.otm.h{
  visibility: hidden;
}.sheetrow button{
  flex: none;
  cursor: pointer;
}select option{
  background: var(--s);
  color: var(--t);
}.nav svg{
  width: calc(14*var(--u));
  height: calc(14*var(--u));
  fill: none;
  stroke: currentColor;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}.logo svg{
  width: calc(20*var(--u));
  height: calc(20*var(--u));
  fill: none;
  stroke: #fff;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}.tb.busy{
  opacity: .5;
  pointer-events: none;
}#printArea{
  display: none;
}.sdot.ok{
  background: var(--g);
}.ci.bad{
  border-color: var(--r);
  box-shadow: 0 0 0 2px #ef444440;
}.adv h3, dialog h3{
  display: flex;
  justify-content: space-between;
  margin: 0 0 calc(8*var(--u));
  font-size: calc(11*var(--u));
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--m);
}.adv-f .mi{
  width: 100%;
  box-sizing: border-box;
}.adv-f .note, .adv-f button{
  grid-column: 1/-1;
}.adv-i .n{
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--m);
}dialog .chk{
  justify-content: flex-start;
}.qa button{
  flex: 1;
}.dev b{
  color: #00f0ff;
  letter-spacing: .5px;
  text-shadow: 0 0 8px #00f0ff80;
}.ver .vn{
  color: #39ff14;
  font-weight: 700;
  text-shadow: 0 0 8px #39ff1480;
}:root[data-theme=light] .dev b{
  color: #0097a7;
  text-shadow: none;
}:root[data-theme=light] .ver .vn{
  color: #12a100;
  text-shadow: none;
}#qf svg{
  color: var(--p);
}#woff svg{
  color: #f97316;
}#mny svg{
  color: #10b981;
}#bak svg{
  color: #0ea5e9;
}#res svg{
  color: #14b8a6;
}label:has(#otx) .lbl svg{
  color: #ec4899;
}#theme[aria-checked=true] .sw{
  background: var(--p);
}.adv-i button{
  font-size: calc(14*var(--u));
  cursor: pointer;
  display: grid;
  place-items: center;
  width: calc(32*var(--u));
  height: calc(32*var(--u));
  padding: 0;
  border: 1px solid var(--r);
  border-radius: calc(8*var(--u));
  background: var(--s);
  color: var(--r);
}.adv-i button svg{
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
  width: calc(15*var(--u));
  height: calc(15*var(--u));
  stroke-width: 2;
}html, body{
  margin: 0;
  background: var(--bg);
  color: var(--t);
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  -webkit-font-smoothing: antialiased;
}body{
  min-height: 100vh;
  padding: env(safe-area-inset-top) 0 calc(calc(24*var(--u)) + env(safe-area-inset-bottom));
  -webkit-font-smoothing: antialiased;
  background: transparent;
  min-height: 100dvh;
}.app{
  width: min(100%,calc(520*var(--u)));
  margin: auto;
  padding: calc(16*var(--u)) calc(14*var(--u));
}.icon-btn{
  padding: 0;
  background: var(--s);
  border: 1px solid var(--b);
  font-size: calc(14*var(--u));
  cursor: pointer;
  display: grid;
  place-items: center;
  color: var(--tc);
  width: calc(40*var(--u));
  height: calc(40*var(--u));
  border-radius: calc(12*var(--u));
  box-shadow: var(--shadow);
}.meta{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(8*var(--u));
  margin-bottom: calc(16*var(--u));
}.mi{
  min-width: 0;
  background: var(--s);
  border: 1px solid var(--b);
  color: var(--t);
  outline: 0;
  font-size: calc(14*var(--u));
  padding: calc(11*var(--u)) calc(12*var(--u));
  border-radius: calc(12*var(--u));
  box-shadow: var(--shadow);
}