/*
 * Salted Egg Lava
 * An original AO3 Site Skin
 *
 * Art direction: the frame and header are deep caramel, and the
 * mooncake sits in that ground. The HTML title stays on the pale stamp,
 * under the baked-in 咸蛋. User links and primary nav are
 * moonlight text. #main is a quiet light sheet. Yolk orange marks
 * links and the mold edge. Georgia throughout.
 *
 * composition: mooncake wordmark / unframed paper sheet / mold-bead cards
 *
 * The mooncake is served from the local ornament server. The mold is hosted.
 * border-image shorthand only: url() is not allowed on border-image-source.
 *  https://ourownskins.com/pub-images/2026-09-25-0033-salted-egg-lava-968398da.png
 *   https://ourownskins.com/pub-images/2026-09-24-2022-mold-bead-9beac8bc-mini.png
 *
 * No parent skin, no @font-face, no @media.
 * Written against AO3's CSS sanitizer: no calc/clamp/min/max, no var()
 * fallbacks, no var() in font-family or content, no grid, no gap, no animation.
 */

:root {
  --sk-wood: #3a2218;
  --sk-lacquer: #26150f;
  --sk-paper: #fbf4e8;
  --sk-paper-2: #f6e6cc;
  --sk-card: #fbf6ee;
  --sk-stamp: #f0dcad;
  --sk-dough: #e2b45a;
  --sk-ink: #2a1c14;
  --sk-muted: #6e5344;
  --sk-heading: #8a3e14;
  --sk-link: #b84316;
  --sk-visited: #7a3218;
  --sk-accent: #b84316;
  --sk-accent-deep: #8a3010;
  --sk-nav-ink: #f6edd8;
  --sk-line: #e0c07a;
}

/* 01 — Page ---------------------------------------------------------------- */

html {
  background-color: var(--sk-wood);
  color-scheme: light;
  scrollbar-color: var(--sk-accent) var(--sk-wood);
}

body {
  min-width: 0;
  margin: 0;
  background-color: var(--sk-wood);
  color: var(--sk-nav-ink);
  font-size: 16px;
  line-height: 1.55;
}

body,
.secondary,
.dropdown,
input,
button,
select,
textarea {
  font-family: Georgia, Palatino, "Book Antiqua", "Times New Roman", serif;
}

#outer.wrapper {
  background-color: var(--sk-wood);
  background-image: none;
}

#inner.wrapper {
  background-color: transparent;
  background-image: none;
  padding: 0.85em 1.1em 1.5em;
}

::selection {
  background-color: var(--sk-accent);
  color: var(--sk-paper);
}

/* 02 — Type and links ------------------------------------------------------ */

h1,
h2,
h3,
h4,
h5,
h6,
.heading {
  font-family: Georgia, Palatino, "Book Antiqua", "Times New Roman", serif;
  color: var(--sk-heading);
  font-weight: bold;
}

a,
a:link {
  color: var(--sk-link);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

a:visited {
  color: var(--sk-visited);
}

a:hover,
a:focus,
a:visited:hover {
  color: var(--sk-accent-deep);
  border-bottom-color: currentcolor;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline: 2px solid var(--sk-accent);
}

code,
kbd,
tt,
samp,
var,
pre {
  font-family: Consolas, Monaco, "Courier New", monospace;
  background-color: var(--sk-paper-2);
}

/* 03 — Header and navigation ----------------------------------------------- */

#header {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--sk-wood);
  background-image: none;
  color: var(--sk-nav-ink);
  margin: 0;
  padding: 0.45em 0.6em 0.7em;
}

#header,
#header h1,
#header .heading {
  color: var(--sk-nav-ink);
}

#header > nav {
  order: 3;
  width: 100%;
}

#header > #greeting {
  order: 1;
  width: 100%;
}

#header > .clear {
  order: 4;
}

#header h1.heading {
  order: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22em;
  max-width: 92%;
  aspect-ratio: 1 / 1;
  margin: 0.15em auto 0.1em;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
  background-image: url(https://ourownskins.com/pub-images/2026-09-25-0033-salted-egg-lava-968398da-mini.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  float: none;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

#header .logo {
  display: none;
  float: none;
}

#header .heading a,
#header .heading a:link,
#header .heading a:visited {
  display: inline-block;
  max-width: 36%;
  margin: 0;
  padding: 0.12em 0.12em;
  border: 0;
  border-radius: 60px;
  box-shadow: none;
  background-color: var(--sk-stamp);
  background-image: none;
  color: var(--sk-ink);
  font-family: Georgia, Palatino, "Book Antiqua", "Times New Roman", serif;
  font-size: 0.95em;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transform: translateY(1.05em);
}

#header .heading a:hover,
#header .heading a:focus,
#header .heading a:visited:hover {
  background-color: var(--sk-stamp);
  color: var(--sk-accent-deep);
  border: 0;
}

#header .user,
#header .primary {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 0;
  float: none;
  list-style: none;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
}

#header .primary {
  margin-top: 0.2em;
}

#header .user > li,
#header .primary > li,
#header .primary > li:first-of-type {
  float: none;
  margin: 0.12em 0.15em;
  padding: 0;
  background-color: transparent;
  border: 0;
  box-shadow: none;
}

#header .user a,
#header .user a:link,
#header .user a:visited,
#header .primary > li > a,
#header .primary > li > a:link,
#header .primary > li > a:visited {
  background-color: transparent;
  background-image: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--sk-nav-ink);
  padding: 0.3em 0.55em;
  text-decoration: none;
}

#header .user a:hover,
#header .user a:focus,
#header .primary > li > a:hover,
#header .primary > li > a:focus {
  background-color: var(--sk-stamp);
  background-image: none;
  color: var(--sk-accent-deep);
  border: 0;
  box-shadow: none;
}

#header .primary > li.search {
  width: 16em;
  max-width: 100%;
}

#header #search fieldset {
  background-color: transparent;
  background-image: none;
  border: 0;
  box-shadow: none;
  margin: 0;
  padding: 0;
}

#header #search .text {
  width: 8.5em;
  background-color: var(--sk-card);
  background-image: none;
  color: var(--sk-ink);
  border: 1px solid var(--sk-line);
  box-shadow: none;
}

#header input[type="submit"] {
  background-color: var(--sk-stamp);
  background-image: none;
  border: 1px solid var(--sk-accent);
  border-radius: 0.35em;
  box-shadow: none;
  color: var(--sk-ink);
}

#header .menu,
#header .primary .menu,
#header .dropdown .menu {
  background-color: var(--sk-card);
  background-image: none;
  border: 1px solid var(--sk-line);
  box-shadow: none;
  z-index: 20;
}

#header .primary .menu a,
#header .dropdown .menu a,
#header .dropdown .menu a:link,
#header .dropdown .menu a:visited {
  color: var(--sk-ink);
  background-color: transparent;
  background-image: none;
}

#header .primary .menu a:hover,
#header .dropdown .menu a:hover,
#header .dropdown .menu a:focus {
  background-color: var(--sk-paper-2);
  color: var(--sk-accent-deep);
}

#header .dropdown:hover .menu,
#header .dropdown.open .menu,
#header .open .menu {
  display: block;
}

/* 04 — Dashboard ----------------------------------------------------------- */

#dashboard,
#dashboard.own {
  background-color: var(--sk-card);
  background-image: none;
  border-top-color: var(--sk-accent);
  border-bottom-color: var(--sk-accent);
  color: var(--sk-ink);
}

#dashboard a,
#dashboard a:visited,
#dashboard span {
  color: var(--sk-ink);
}

#dashboard a:hover,
#dashboard a:focus {
  background-color: var(--sk-paper-2);
  color: var(--sk-accent-deep);
}

#dashboard ul {
  border-top-color: var(--sk-line);
}

#dashboard .current {
  background-color: var(--sk-paper-2);
  background-image: none;
  color: var(--sk-ink);
}

/* 05 — Main ---------------------------------------------------------------- */

#main {
  background-color: var(--sk-paper);
  background-image: none;
  color: var(--sk-ink);
  padding: 1em 1.05em 1.4em;
}

#main .splash .module h3,
#main .splash .browse li a:before {
  color: var(--sk-heading);
  border-bottom-color: var(--sk-line);
}

#main .splash .favorite li:nth-of-type(odd) a {
  background-color: var(--sk-paper-2);
  background-image: none;
  color: var(--sk-ink);
}

#main .splash .favorite li:nth-of-type(odd) a:hover,
#main .splash .favorite li:nth-of-type(odd) a:focus {
  background-color: var(--sk-accent);
  background-image: none;
  color: var(--sk-paper);
}

#main .splash .module div.account {
  background-color: var(--sk-card);
  background-image: none;
  border: 1px solid var(--sk-line);
  box-shadow: none;
}

#main .splash .intro,
#main .splash .parent,
#main .splash .stats {
  color: var(--sk-ink);
}

#main .splash .count {
  color: var(--sk-accent-deep);
}

/* 06 — Blurbs -------------------------------------------------------------- */

li.blurb,
li.work.blurb,
li.bookmark.blurb {
  background-color: var(--sk-card);
  background-image: none;
  border-style: solid;
  border-width: 16px;
  border-color: var(--sk-dough);
  border-image: url(https://ourownskins.com/pub-images/2026-09-24-2022-mold-bead-9beac8bc-mini.png) 108 round;
  border-image-width: 16px;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  margin-bottom: 0.9em;
}

#main .blurb .header .heading,
#main .blurb .header h4,
#main .blurb .header ul {
  margin-right: 7em;
}

.blurb h4 a:link,
.blurb .heading a:link,
.blurb h4 a:visited,
.blurb .heading a:visited {
  color: var(--sk-accent-deep);
}

.blurb .datetime {
  color: var(--sk-muted);
}

.blurb blockquote,
.blurb .summary,
.blurb .header,
.blurb .fandoms {
  color: var(--sk-ink);
}

#main dl.stats dd.words,
#main dl.stats dd.chapters,
#main dl.stats dd.kudos,
#main dl.stats dd.hits,
#main dl.stats dd.comments,
#main dl.stats dd.bookmarks {
  color: var(--sk-ink);
}

#main p.kudos {
  color: var(--sk-muted);
}

#main .feedback,
#main .notes {
  color: var(--sk-ink);
}

#main ol.pagination .previous,
#main ol.pagination .next,
#main ol.pagination .disabled {
  color: var(--sk-muted);
}

#main ol.pagination a.current,
#main ol.pagination .current {
  background-color: var(--sk-accent);
  background-image: none;
  border-color: var(--sk-accent);
  color: var(--sk-paper);
}

/* 07 — Tags ---------------------------------------------------------------- */

#main a.tag,
#main a.tag:link,
#main a.tag:visited {
  color: var(--sk-link);
  border-bottom: 1px dotted var(--sk-line);
  background-color: transparent;
}

#main a.tag:hover,
#main a.tag:focus {
  background-color: var(--sk-accent);
  color: var(--sk-paper);
  border-bottom-color: transparent;
}

#main li.relationships a {
  background-color: var(--sk-paper-2);
}

a.cloud1,
a.cloud2,
a.cloud3,
a.cloud4 {
  color: var(--sk-muted);
}

a.cloud5,
a.cloud6,
a.cloud7,
a.cloud8 {
  color: var(--sk-accent-deep);
}

/* 08 — Meta and stats ------------------------------------------------------ */

#main dl.meta,
#main .listbox {
  background-color: var(--sk-card);
  background-image: none;
  border: 1px solid var(--sk-line);
  box-shadow: none;
  color: var(--sk-ink);
}

#main dl.stats,
#main .blurb dl.stats {
  color: var(--sk-muted);
}

#main .listbox .heading {
  color: var(--sk-heading);
}

/* 09 — Forms --------------------------------------------------------------- */

fieldset,
form dl {
  background-color: var(--sk-paper-2);
  background-image: none;
  border: 1px solid var(--sk-line);
  box-shadow: none;
  color: var(--sk-ink);
}

input,
textarea,
select {
  background-color: var(--sk-card);
  background-image: none;
  color: var(--sk-ink);
  border: 1px solid var(--sk-line);
  box-shadow: none;
}

input:focus,
textarea:focus,
select:focus {
  background-color: var(--sk-paper);
  border-color: var(--sk-accent);
}

/* 10 — Actions and buttons ------------------------------------------------- */

.actions a,
.actions a:link,
.actions a:visited,
.action,
.action:link,
.actions button,
.actions input,
input[type="submit"],
button,
.actions label {
  background-color: var(--sk-card);
  background-image: none;
  border: 1px solid var(--sk-accent);
  border-radius: 0.35em;
  box-shadow: none;
  color: var(--sk-accent-deep);
  font-family: Georgia, Palatino, "Book Antiqua", "Times New Roman", serif;
}

.actions a:hover,
.actions a:focus,
.action:hover,
.actions button:hover,
.actions input:hover,
input[type="submit"]:hover,
button:hover,
.actions label:hover {
  background-color: var(--sk-paper-2);
  background-image: none;
  color: var(--sk-accent-deep);
  box-shadow: none;
}

.actions a:active,
.action:active,
input[type="submit"]:active,
button:active,
.current,
.actions .current {
  background-color: var(--sk-accent);
  background-image: none;
  color: var(--sk-paper);
  border-color: var(--sk-accent);
}

#main .actions a,
#main .actions a:link,
#main .actions a:visited,
#main .action,
#main .actions button,
#main .actions input,
#main input[type="submit"],
#main button {
  background-color: var(--sk-card);
  background-image: none;
  border: 1px solid var(--sk-accent);
  border-radius: 0.35em;
  box-shadow: none;
  color: var(--sk-accent-deep);
}

#main .actions a:hover,
#main .actions a:focus,
#main .action:hover,
#main .actions button:hover,
#main .actions input:hover,
#main input[type="submit"]:hover,
#main button:hover {
  background-color: var(--sk-paper-2);
  background-image: none;
  color: var(--sk-accent-deep);
  box-shadow: none;
}

#main .actions a:active,
#main .current,
#main .actions .current,
#main input[type="submit"]:active,
#main button:active {
  background-color: var(--sk-accent);
  background-image: none;
  color: var(--sk-paper);
  border-color: var(--sk-accent);
}

/* 11 — Filters sidebar ----------------------------------------------------- */

form.filters {
  box-sizing: border-box;
  background-color: var(--sk-card);
  background-image: none;
  border: 1px solid var(--sk-line);
  box-shadow: none;
  padding: 0.55em;
  color: var(--sk-ink);
}

form.filters .expander,
form.filters a {
  color: var(--sk-link);
}

form.filters input,
form.filters select,
form.filters textarea {
  box-sizing: border-box;
  max-width: 100%;
}

.blurb ul.tags {
  display: block;
  box-sizing: border-box;
  max-width: 100%;
  padding-right: 0.4em;
  word-wrap: break-word;
}

/* 12 — Work and chapter reading -------------------------------------------- */

#workskin {
  background-color: transparent;
  background-image: none;
  color: var(--sk-ink);
}

#chapters .chapter > .userstuff {
  background-color: var(--sk-paper);
  background-image: none;
  border: 0;
  color: var(--sk-ink);
  font-family: Georgia, Palatino, "Book Antiqua", "Times New Roman", serif;
  font-size: 1.05em;
  line-height: 1.75;
}

#chapters .userstuff p {
  margin-bottom: 1em;
}

#chapters .userstuff blockquote {
  background-color: var(--sk-paper-2);
  background-image: none;
  border-left: 3px solid var(--sk-accent);
  border-right: 0;
  border-top: 0;
  border-bottom: 0;
  color: var(--sk-ink);
}

#chapters .userstuff h1,
#chapters .userstuff h2,
#chapters .userstuff h3 {
  color: var(--sk-heading);
  border-bottom-color: var(--sk-line);
}

#workskin div.preface {
  background-color: var(--sk-card);
  background-image: none;
  border-style: solid;
  border-width: 16px;
  border-color: var(--sk-dough);
  border-image: url(https://ourownskins.com/pub-images/2026-09-24-2022-mold-bead-9beac8bc-mini.png) 108 round;
  border-image-width: 16px;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  color: var(--sk-ink);
}

#workskin div.preface .title,
#workskin div.preface .byline,
#workskin div.preface .heading {
  color: var(--sk-heading);
}

/* 13 — Comments ------------------------------------------------------------ */

#main div.comment,
#main li.comment {
  background-color: var(--sk-card);
  background-image: none;
  border-style: solid;
  border-width: 16px;
  border-color: var(--sk-dough);
  border-image: url(https://ourownskins.com/pub-images/2026-09-24-2022-mold-bead-9beac8bc-mini.png) 108 round;
  border-image-width: 16px;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  color: var(--sk-ink);
}

#main .comment h4.byline {
  background-color: var(--sk-paper-2);
  background-image: none;
  color: var(--sk-ink);
}

#main .comment div.icon {
  border-bottom-color: var(--sk-line);
}

#main .thread .even {
  background-color: var(--sk-paper-2);
}

#main .comment .userstuff {
  background-color: transparent;
  background-image: none;
  border: 0;
  color: var(--sk-ink);
}

/* 14 — System messages ----------------------------------------------------- */

.flash .notice,
.notice {
  background-color: var(--sk-paper-2);
  background-image: none;
  border: 1px solid var(--sk-line);
  color: var(--sk-ink);
}

.flash .error,
.error,
.comment_error {
  background-color: #f6e3e3;
  background-image: none;
  border: 1px solid #c98d8d;
  color: #5f2020;
}

.flash .caution,
.caution {
  background-color: #f8eed2;
  background-image: none;
  border: 1px solid #cbab61;
  color: #5b4412;
}

/* 15 — Footer -------------------------------------------------------------- */

#footer {
  background-color: var(--sk-lacquer);
  background-image: none;
  color: var(--sk-nav-ink);
}

#footer a,
#footer a:link,
#footer a:visited,
#footer button,
#footer button:hover,
#footer button:focus {
  color: var(--sk-nav-ink);
  background-color: transparent;
  background-image: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  text-decoration: underline;
}

#footer a:hover,
#footer a:focus {
  color: var(--sk-stamp);
  background-color: transparent;
  background-image: none;
  border: 0;
}

#footer .heading {
  color: var(--sk-nav-ink);
}

.secondary {
  background-color: var(--sk-card);
  background-image: none;
  color: var(--sk-ink);
  border: 1px solid var(--sk-line);
}

#header img.icon {
  display: none !important;
}