@charset "UTF-8";
/* Xpatriate — page chrome only. Loaded from /css, never inlined. */
@font-face {
  font-family: "Special Elite";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/css/fonts/SpecialElite-Regular.woff2") format("woff2");
}
:root {
  --bg: #f4efe6;
  --paper: #fffdf8;
  --ink: #1c1915;
  --muted: #6b6459;
  --rule: #d9d0c3;
  --accent: #0f6e8c;
  --link: #0b4f66;
  --heading: #0050b2;
  --heading-rule: #002846;
  --header-h: 2.35rem;
  --rail-w: 16rem;
  --tab-blush: #fdafc0;
  --tab-peach: #ffc891;
  --tab-butter: #fbeb95;
  --tab-mint: #b2e6c7;
  --tab-sky: #acd5f8;
  --tab-lilac: #d3bbf6;
}

* { box-sizing: border-box; }

html {
  font-size: 18px;
  color: var(--ink);
  background-color: #fff;
  background-image: url("/css/wallpaper.gif");
  background-repeat: repeat;
}

body {
  margin: 0;
  font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  line-height: 1.55;
  background-color: transparent;
  background-image: url("/css/wallpaper.gif");
  background-repeat: repeat;
}

/* 2001 global.css headings */
h1, h2, h3, h4, h5, h6 {
  color: var(--heading);
  font-weight: normal;
}

h1 { font-size: 175%; }
h2 { font-size: 162%; margin-left: 1%; }
h3 { font-size: 150%; margin-left: 2%; }
h4 { font-size: 137%; margin-left: 3%; }
h5 { font-size: 125%; margin-left: 4%; }
h6 { font-size: 112%; margin-left: 5%; }

h2.topside {
  border-top: 2px solid var(--heading-rule);
}

h2.clrrtop {
  clear: right;
  border-top: 2px solid var(--heading-rule);
}

.wrap {
  max-width: 42rem;
  margin: 0 auto;
  padding: 2.5rem 1.25rem 4rem;
}

/* Fixed folder-tab header (filled by js/nav.js) */
#site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 40;
  height: var(--header-h);
  margin: 0;
  padding: 0;
  background: transparent;
  border-bottom: none;
}

.folder-bar {
  display: flex;
  align-items: stretch;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
}

.folder-brand {
  flex: 0 0 auto;
  display: flex;
  align-items: stretch;
  height: 100%;
  padding: 0;
  margin: 0;
}

.folder-brand a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 0.45rem;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.folder-brand img {
  display: block;
  height: 100%;
  width: auto;
  max-height: 100%;
  max-width: none;
  object-fit: contain;
}

.folder-tabs {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  gap: 0;
}

.folder-tab {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  padding: 0 0.35rem;
  border: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
  border-top: none;
  border-radius: 0 0 10px 10px;
  color: var(--ink);
  text-decoration: none;
  text-align: center;
  font-size: 13pt;
  font-family: "Special Elite", "Courier New", Courier, "Lucida Typewriter", ui-monospace, monospace;
  font-weight: 400;
  letter-spacing: 0.04em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.45) inset;
  background-image: url("/css/wallpaper.gif");
  background-repeat: repeat;
}

.folder-tab:first-child { margin-left: 0; }

.folder-tab.tab-0 {
  background-image: linear-gradient(color-mix(in srgb, var(--tab-blush) 42%, transparent), color-mix(in srgb, var(--tab-blush) 42%, transparent)), url("/css/wallpaper.gif");
  z-index: 6;
}
.folder-tab.tab-1 {
  background-image: linear-gradient(color-mix(in srgb, var(--tab-peach) 42%, transparent), color-mix(in srgb, var(--tab-peach) 42%, transparent)), url("/css/wallpaper.gif");
  z-index: 5;
}
.folder-tab.tab-2 {
  background-image: linear-gradient(color-mix(in srgb, var(--tab-butter) 42%, transparent), color-mix(in srgb, var(--tab-butter) 42%, transparent)), url("/css/wallpaper.gif");
  z-index: 4;
}
.folder-tab.tab-3 {
  background-image: linear-gradient(color-mix(in srgb, var(--tab-mint) 42%, transparent), color-mix(in srgb, var(--tab-mint) 42%, transparent)), url("/css/wallpaper.gif");
  z-index: 3;
}
.folder-tab.tab-4 {
  background-image: linear-gradient(color-mix(in srgb, var(--tab-sky) 42%, transparent), color-mix(in srgb, var(--tab-sky) 42%, transparent)), url("/css/wallpaper.gif");
  z-index: 2;
}
.folder-tab.tab-5 {
  background-image: linear-gradient(color-mix(in srgb, var(--tab-lilac) 42%, transparent), color-mix(in srgb, var(--tab-lilac) 42%, transparent)), url("/css/wallpaper.gif");
  z-index: 1;
}

.folder-tab[aria-current="page"] {
  background: var(--paper);
  z-index: 10;
  box-shadow: 0 2px 0 var(--paper);
}

.folder-tab:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

/* Left date rail */
#archive-nav {
  position: fixed;
  top: var(--header-h);
  left: 0;
  bottom: 0;
  width: var(--rail-w);
  z-index: 30;
  overflow: auto;
  background-color: transparent;
  background-image: url("/css/wallpaper.gif");
  background-repeat: repeat;
  border-right: 1px solid var(--rule);
  padding: 0.65rem 0.55rem 1.5rem;
  font-size: 0.82rem;
}

#archive-nav[hidden] { display: none; }

.nav-pager {
  display: flex;
  justify-content: space-between;
  gap: 0.4rem;
  margin-bottom: 0.7rem;
}

.nav-pager-link {
  color: var(--link);
  text-decoration: none;
}

.nav-pager-link.is-disabled {
  color: var(--muted);
}

.nav-day {
  border-bottom: 1px solid var(--rule);
  padding: 0.15rem 0;
}

.nav-day summary {
  cursor: pointer;
  font-variant-numeric: tabular-nums;
  padding: 0.2rem 0.15rem;
}

.nav-posts {
  list-style: none;
  margin: 0 0 0.4rem;
  padding: 0 0 0 0.4rem;
}

.nav-time {
  font-size: 0.66rem;
  color: #000;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.02em;
}

.nav-posts a {
  display: block;
  color: var(--ink);
  text-decoration: none;
  padding: 0.15rem 0.2rem;
  border-radius: 4px;
}

.nav-posts a.is-current,
.nav-posts a[aria-current="page"] {
  background: var(--paper);
  font-weight: 600;
}

body.has-chrome .wrap {
  padding-top: calc(var(--header-h) + 1.75rem);
}

/* Wayback pages have no .wrap — keep content off the tab bar and edges */
body.has-chrome:not(.has-x-nav):not(.has-blog-nav):not(.has-comp-nav) {
  padding: calc(var(--header-h) + 0.85rem) 1.25rem 0;
}

body.has-x-nav .folder-bar,
body.has-blog-nav .folder-bar,
body.has-comp-nav .folder-bar {
  padding-left: 0;
}

body.has-x-nav .wrap,
body.has-blog-nav .wrap,
body.has-comp-nav .wrap {
  margin-left: var(--rail-w);
}

body.has-blog-nav,
body.has-comp-nav {
  margin-left: var(--rail-w);
  padding: calc(var(--header-h) + 0.85rem) 1.25rem 0 1.25rem;
}

/* Blog pages: only .bloggerbody (the post) is visible; keep folder tabs + rail */
body.has-blog-nav #masthead,
body.has-blog-nav p.masthead,
body.has-blog-nav #menu,
body.has-blog-nav #buttons,
body.has-blog-nav #sidebar,
body.has-blog-nav #header,
body.has-blog-nav #ArchivePostList,
body.has-blog-nav #RecentPostDiv,
body.has-blog-nav #SearchPosts,
body.has-blog-nav #footer {
  display: none;
}

body.has-blog-nav:has(.bloggerbody) #main > *:not(.bloggerbody) {
  display: none;
}

#archive-nav .era-bridge {
  margin: 0.65rem 0.15rem;
  font-size: 0.78rem;
}

#archive-nav .era-bridge a {
  color: var(--heading);
  font-weight: 600;
  text-decoration: none;
}

#archive-nav .era-bridge a:hover {
  text-decoration: underline;
}

.comp-rail-heading {
  margin: 0.85rem 0 0.2rem;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}

@media (max-width: 800px) {
  .folder-bar { padding: 0; }
  #archive-nav { display: none; }
  body.has-chrome .wrap,
  body.has-x-nav .wrap,
  body.has-blog-nav .wrap,
  body.has-comp-nav .wrap,
  body.has-blog-nav,
  body.has-comp-nav {
    margin-left: 0;
    padding-top: calc(var(--header-h) + 1.25rem);
  }
  body.has-chrome:not(.has-x-nav):not(.has-blog-nav):not(.has-comp-nav) {
    padding: calc(var(--header-h) + 0.65rem) 0.85rem 0;
  }
  body.has-x-nav .folder-bar { padding: 0; }
}

header.meta {
  display: none;
}

/* 2001 in-page nav — keep in the file, show as folder tabs instead */
p.navigate,
.navigate {
  display: none;
}

/* 2001/2006 site header — tabs replace it */
#masthead,
div.masthead,
p.masthead,
#menu {
  display: none;
}

/* 2001 “Edited on …” stamps — keep in the file, hide for now */
p.edit,
p.edited,
.edit,
.edited {
  display: none;
}

header.meta h1 {
  font-size: 1.05rem;
  font-weight: 600;
  margin: 0 0 0.35rem;
}

header.meta dl {
  display: grid;
  grid-template-columns: 7rem 1fr;
  gap: 0.15rem 0.75rem;
  margin: 0.75rem 0 0;
  font-size: 0.82rem;
  color: var(--muted);
}

header.meta dt { font-variant: small-caps; letter-spacing: 0.03em; }
header.meta dd { margin: 0; color: var(--ink); }

article.post {
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 10px;
  padding: 1.35rem 1.25rem 1.6rem;
}

article.post p { margin: 0 0 1rem; }
article.post p:last-child { margin-bottom: 0; }

article.post a {
  color: var(--link);
  text-underline-offset: 0.15em;
}

.media {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  margin: 0.85rem 0;
}

.embed {
  margin: 1.1rem 0;
}

.embed-youtube,
.embed-vimeo {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #111;
  border-radius: 8px;
  overflow: hidden;
}

.embed-fallback {
  margin: 0.4rem 0 0;
  font-size: 0.85rem;
}

.embed-youtube iframe,
.embed-vimeo iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-video video {
  width: 100%;
  border-radius: 8px;
}

/* Wayback provenance — keep in the file, hide for now */
.archived-banner {
  display: none;
}

footer.site {
  margin-top: 1.75rem;
  font-size: 0.78rem;
  color: var(--muted);
}

footer.site a { color: var(--muted); }

/* 2001 webaugur list-item icons (copied into /css) */
li.navlist { list-style-image: url("/css/linav.gif"); }
li.download { list-style-image: url("/css/lidl.gif"); }
li.realmedia { list-style-image: url("/css/realmedia.gif"); }
li.blueribbon { list-style-image: url("/css/blueribbon.gif"); }

.thread-bar {
  max-width: 42rem;
  margin: 0 auto 1rem;
  padding: 0.45rem 0.85rem;
  background: var(--tab-sky);
  border: 1px solid var(--rule);
  border-radius: 8px;
  font-size: 0.88rem;
}

body.has-x-nav .thread-bar {
  margin-left: calc(var(--rail-w) + 1.25rem);
  margin-right: 1.25rem;
}

.thread-bar a { color: var(--link); }
.thread-in-reply { font-size: 0.9rem; color: var(--muted); }
.thread-stamp { font-size: 0.8rem; color: var(--muted); }
.thread-post { margin-bottom: 1.25rem; }
.thread-inline .thread-post {
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 8px;
  padding: 0.75rem 0.9rem;
}
.thread-inline .thread-post.is-current {
  border-color: var(--heading);
  box-shadow: 0 0 0 1px var(--heading);
}

/* Photos gallery — static, all images, no Gallery 1 chrome */
body.gallery-page {
  padding: calc(var(--header-h) + 0.85rem) 1.25rem 2.5rem;
}

.gallery {
  max-width: 68rem;
  margin: 0 auto;
}

.gallery h1 {
  margin: 0.35rem 0 0.4rem;
}

.gallery-crumb {
  font-size: 0.88rem;
  color: var(--muted);
  margin-bottom: 0.35rem;
}

.gallery-crumb a {
  color: var(--heading);
  text-decoration: none;
}

.gallery-crumb a:hover {
  text-decoration: underline;
}

.gallery-lead,
.gallery-desc,
.gallery-count,
.gallery-empty,
.gallery-full,
.gallery figcaption {
  color: var(--muted);
}

.gallery-lead { max-width: 42rem; }

.gallery-albums {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
  gap: 1.25rem;
  margin: 1.25rem 0 2rem;
}

.gallery-card {
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 10px;
  padding: 0.85rem 0.95rem 1rem;
}

.gallery-card h2 {
  margin: 0.55rem 0 0.25rem;
  font-size: 1.15rem;
  margin-left: 0;
}

.gallery-card h2 a,
.gallery-card-img {
  color: var(--heading);
  text-decoration: none;
}

.gallery-card-img {
  display: block;
  min-height: 6rem;
  background: #efe8dc;
  border-radius: 6px;
  overflow: hidden;
  text-align: center;
}

.gallery-card-img img {
  display: block;
  width: 100%;
  height: 10rem;
  object-fit: cover;
}

.gallery-card .gallery-desc {
  font-size: 0.92rem;
  margin: 0.2rem 0 0.35rem;
}

.gallery-card .gallery-count { margin: 0; font-size: 0.82rem; }

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
  gap: 0.75rem;
  margin: 1rem 0 2rem;
}

.gallery-tile {
  display: flex;
  flex-direction: column;
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  color: var(--muted);
  font-size: 0.78rem;
}

.gallery-tile img {
  display: block;
  width: 100%;
  height: 7.5rem;
  object-fit: cover;
  background: #efe8dc;
}

.gallery-tile span { padding: 0.25rem 0.4rem 0.4rem; }

.gallery-photo-nav {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0.6rem 0 0.9rem;
  font-size: 0.95rem;
}

.gallery-photo-nav a {
  color: var(--heading);
  text-decoration: none;
  font-weight: 600;
}

.gallery-photo-nav a:hover { text-decoration: underline; }

.gallery-nav-gap { color: var(--rule); }

.gallery-stage {
  margin: 0 auto 2rem;
  max-width: 52rem;
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 10px;
  padding: 0.75rem;
}

.gallery-stage img {
  display: block;
  width: 100%;
  height: auto;
}

.gallery-stage-link { display: block; }

.gallery-stage figcaption,
.gallery-full {
  margin: 0.55rem 0 0;
  font-size: 0.85rem;
}
