@font-face {
  font-family: 'nasin-nanpa';
  src: url('nasin-nanpa-5.0.0-beta.4.otf?v=0004');
}

@keyframes kule {
    from { filter: hue-rotate(0deg); }
    to   { filter: hue-rotate(360deg); }
  }

@keyframes kama-lili {
  0%   { transform: scaleY(100%); }
  97%  { transform: scaleY(100%); }
  100% { transform: scaleY(0%); }
}

@keyframes tawa-sewi {
  0% {
    transform: translate(0, 0);
    color: url(--walo);
  }
  50% {
    transform: translate(0, 0);
    color: url(--walo);
  }
  100% {
    transform: translate(0, -18px);
    color: var(--jelo);
  }
}

@keyframes sike {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes toki-tawa {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-100%, 0, 0); }
}

:root {
  --sp-ala: 95%;
  --ala: "flex";
  --sp: "none";
  --sl: "none";
  --ti: "none";

  --k-sp: #2F9;
  --k-sl: #29F;
  --k-ti: #F92;

  --walo: #EFE;
  --pimeja: #000;
  --laso: #2E5;
  --jelo: #EE2;
  --unu: #545;

  --bg: #122;
  --body-bg: #323;
  --link: #0F4;
  --hover: #F99;
  --border: #798;
  --border2: #789;
}

html {
  padding: 10px;
  padding-left: 11px;
  padding-right: 11px;
  font-family: Sans-serif;
  color: var(--walo);
  background-color: var(--bg);
  font-family: 'nasin-nanpa';
}

body {
  width: fit-content;
  padding: 0.5rem;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  border-radius: 16px;
  position: relative;
  background-color: var(--body-bg);
  border: 2px solid var(--border);
}

footer {
  text-align: center;
  border-top: 2px solid;
  padding-top: 8px;
  border-image: linear-gradient(to right, transparent 0%, var(--border) 20%, var(--border) 80%, transparent 100%) 100% 1;
}

#tan {
  top: 0px;
  left: 8px;
  font-size: 2em;
  position: absolute;
  /* font-family: 'nasin-nanpa'; */
}

#sewi {
  min-width: 300px;
  width: 100%;
  display: inline-grid;
  border-bottom: 2px solid;
  border-image: linear-gradient(to right, transparent 0%, var(--border) 20%, var(--border) 80%, transparent 100%) 100% 1;
}

#sike-pona {
  height: 25px;
  display: flex;
  user-select: none;
  padding: 4px 0;
  border-bottom: 1px solid;
  border-image: linear-gradient(to right, transparent 0%, var(--border) 45%, var(--border) 55%, transparent 100%) 100% 1;
  /* font-family: 'nasin-nanpa'; */
  font-size: 130%;
  max-width: 150px;
  margin: auto;
}

.sike-pona a {
  margin: auto;
}

#itan {
  margin-bottom: 10px;
}

#itan div {
  margin: auto;
  width: 42px;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid var(--k-sp);
  background-image: url("/ijo/itan-lili.png");
	box-shadow: 0 0 4px 3px var(--unu);
}

#ante-toki-selo {
  display: flex;
  margin: auto;
}

#ante-toki-selo input {
  margin-left: 8px;
  margin-right: -4px;
}

#ante-toki-selo label {
  padding-left: 0.5em;
}

.osp {
  color: var(--k-sp);
}
.osl {
  color: var(--k-sl);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
}
.oti {
  color: var(--k-ti);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
}

#ante-toki {
  width: 100px;
  height: 24px;
  padding: 0;
  padding-top: 2px;
  padding-left: 10px;
  text-align: left;
  border: 0;
  border-radius: 10px;
  background-color: #656;
  color: var(--walo);
}

#ala {
  margin-top: 8px;
  /* font-family: 'nasin-nanpa'; */
  font-size: 32px;
  display: var(--ala);
}

#kama-lili {
  display: inline-block;
  animation: 5s ease-in 10s infinite alternate kama-lili;
}

#tawa-sewi {
  display: inline-block;
  animation: 4s ease-in 3s infinite alternate tawa-sewi;
}

.kule {
  color: #0F4;
  animation: 10s linear 0s infinite kule;
}

.toki-tawa-selo {
  font-size: 4rem;
  overflow: hidden;
}

.toki-tawa {
  padding-left: 100%;
  white-space: nowrap;
  display: inline-block;
  box-sizing: content-box;
  animation: 180s linear 0s infinite toki-tawa;
}

.album {
  margin: 4px;
  padding: 4px;
  display: flex;
  font-size: 10pt;
  border-radius: 6.5px;
  border: 1px dashed var(--border);
  background-color: #655;
}

.album b {
  float: right;
}

.album img {
  width: 100px;
  height: 100px;
  border-radius: 3px;
  background-color: var(--pimeja);
  border: 3px solid var(--pimeja);
}

.album div {
  flex: 1;
  margin: auto 0.5em auto 0.5em;
}

.album div p:first-of-type {
  font-size: 14pt;
  font-weight: bold;
  color: var(--k-sp);
  padding-bottom: 5px;
  border-bottom: 1px solid;
  border-image: linear-gradient(to right, var(--k-ti) 0%, transparent 150px) 1;
}

.album div details {
  margin-bottom: 0.4em;
}

.album div details > summary {
  margin-left: 1em;
  list-style: disclosure-closed;
}

.album div details > summary::before {
}

.album div details[open] > summary {
  list-style: disclosure-open;
}

.album ol {
  margin-top: 0.2em;
  padding-left: 2em;
}

.album ul {
  margin-top: 0.2em;
  padding-left: 2em;
}

.album ol span {
  color: var(--k-sp);
}

.album a {
  
}

table.leko-nimi {
  font-size: 4em;
  border-collapse: collapse;
  text-shadow: 0px 0px 1px var(--pimeja);
}

table.leko-nimi td {
  width: 1rem;
  padding: 0px;
  position: relative;
  border-radius: 15px;
  border: 2px solid var(--pimeja);
  cursor: context-menu;
}

table.leko-nimi td > d {
  left: 0;
  right: 0;
  bottom: 0;
  cursor: text;
  font-size: 0.6rem;
  text-align: center;
  position: absolute;
  color: var(--border2);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
}

table.leko-nimi td > c {
  left: 0;
  top: 0;
  opacity: 0%;
  z-index: 100;
  cursor: text;
  height: 0.8em;
  font-size: 2rem;
  transition: 0.4s;
  position: absolute;
  padding: 4px 2px 5px 2px;
  transform: translateY(-1px);
  background-color: var(--unu);
  border-top-right-radius: 3px;
  border-bottom-right-radius: 6px;
  border: 2px solid var(--pimeja);
  text-shadow: -1px 1px var(--pimeja);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
  border-left: 0px;
}
table.leko-nimi td:hover {
  color: var(--hover);
}

table.leko-nimi td:hover > c {
  opacity: 97%;
}

table.leko-nimi td > c > c {
  left: 0;
  bottom: 0.4rem;
  position: relative;
}

div.toki-tawa a.leko-nimi {
  width: 16em;
  font-size: 2rem;
  line-height: 1em;
}

#anpa {
  color: #00FF84;
}

#anpa:hover {
  color: var(--hover);
}

h1 {
  margin-top: 0;
}

a {
  text-decoration: none;
  color: var(--link);
}

a:visited {
  color: #00FF84;
}

a:hover {
  color: #FF9B92;
}

details {
  margin: 0;
}

summary {
  cursor: pointer;
}

#sijelo summary {
  list-style: none;
}

#sijelo summary:hover,
#sijelo summary:hover::before {
  color: #FF9B92;
}

#sijelo summary::before {
  content: "o open|";
  color: #0F4;
}
#sijelo details[open] summary::before {
  content: "o pini|";
}

#sijelo .sl summary::before,
#sijelo .ti summary::before {
  content: "o open: ";
}
#sijelo summary::before {
  color: #0F4;
}
#sijelo .sl details[open] summary::before,
#sijelo .ti details[open] summary::before {
  content: "o pini: ";
}

#sijelo {
  height: 100%;
  table-layout: fixed;
  margin: auto;
}

#sijelo th {
  font-size: 1.2em;
  font-weight: bold;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid;
	text-shadow: -10px 10px 10px var(--pimeja);
}

#sijelo th .teje {
  text-decoration: underline;
  margin-right: 10px;
}

#sijelo td {
  vertical-align: middle;
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
  padding-left: 2px;
  border: 1px solid;
  border-radius: 10px;
}

/*   sitelen pona   */
#sijelo th.sp,td.sp {
  width: 300px;
}
/* header */
#sijelo th.sp {
  font-size: 2em;
  color: var(--k-sp);
  border-image: linear-gradient(to right, transparent 0%, var(--k-sp) 20%, var(--k-sp) 80%, transparent 100%) 100% 1;
}
.sp-header {
	margin: auto;
  color: var(--k-sp);
  font-size: 2em;
  /* font-family: 'nasin-nanpa'; */
	text-align: center;
  font-weight: bold;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid;
	text-shadow: -3px 3px 3px var(--pimeja);
  border-image: linear-gradient(to right, transparent 0%, var(--k-sp) 20%, var(--k-sp) 80%, transparent 100%) 100% 1;
}
/*   data   */
#sijelo td.sp {
  padding-top: 0.5rem;
  padding-bottom: 0.1rem;
  border-image: linear-gradient(to right, var(--k-sp) 0%, transparent 40px) 1;
}

/*   sitelen Lasina   */
#sijelo th.sl,td.sl {
  width: 360px;
}
/*   header   */
#sijelo th.sl {
  color: var(--k-sl);
  border-image: linear-gradient(to right, transparent 0%, var(--k-sl) 20%, var(--k-sl) 80%, transparent 100%) 100% 1;
}
/*   data   */
#sijelo td.sl {
  border-image: linear-gradient(to right, var(--k-sl) 0%, transparent 40px) 1;
}

/*   English   */
#sijelo th.ti,td.ti {
  width: 420px;
}
/*   header   */
#sijelo th.ti {
  color: var(--k-ti);
  border-image: linear-gradient(to right, transparent 0%, var(--k-ti) 20%, var(--k-ti) 80%, transparent 100%) 100% 1;
}
/*   data   */
#sijelo td.ti {
  border-image: linear-gradient(to right, var(--k-ti) 0%, transparent 40px) 1;
}


.toki-ale th,td {
  width: 600px;
}

.sp {
  display: var(--sp);
  font-size: 160%;
}

.sl {
  display: var(--sl);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
  font-size: var(--sp-ala);
}

.ti {
  display: var(--ti);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
  font-size: var(--sp-ala);
}

.sp-ala {
  font-size: var(--sp-ala);
  font-variant-ligatures: none;
  font-feature-settings: "half" 1;
}

.insa {
  margin: auto;
  text-align: center;
}

.teje {
  float: right;
}

p {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

ul {
  margin-top: .5em;
  margin-bottom: 0.5em;
  padding-left: 1rem;
}

li {
  margin-bottom: 0.1em;
}

.sp ul {
  list-style-type: none;
  padding-left: 0;
}

.sp li {
  margin-bottom: 0.1em;
}

.sp li:before {
  content: ".";
}
