@import url('https://fonts.googleapis.com/css2?family=Silkscreen:wght@400;700&family=Special+Elite&display=swap');

:root{
  --ink:#40352d;
  --muted:#77695c;
  --faint:#9b8d7d;
  --cream:#eee5d5;
  --line:rgba(64,53,45,.30);
  --panel:rgba(239,231,217,.79);
  --panel-edge:rgba(239,231,217,.36);
}

*{box-sizing:border-box}

html,body{
  margin:0;
  width:100%;
  min-height:100%;
}

body{
  min-height:100vh;
  overflow-x:hidden;
  color:var(--ink);
  font-family:"Special Elite","Courier New",monospace;
  background: var(--panel)
}

.archive-page{
    position:relative;
    min-height:100vh;
    padding:5vh 5vw 0;
    display:flex;
    align-items:center;
    justify-content:center;
    isolation:isolate;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
}

.archive-page::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(rgba(26,21,18,.24),rgba(26,21,18,.24));
}

.archive-layout{
  width:min(1180px,92vw);
  display:grid;
  grid-template-columns: 205px minmax(0,1fr) 320px;
  gap:22px;
  align-items: stretch;
}

.archive-sidebar{
  min-height:100%;
  padding:30px 12px 24px 0;
  display:flex;
  flex-direction:column;
  background:transparent;
}

.archive-code{
  margin:0 0 12px;
  color:rgba(239,231,217,.68);
  font:9px/1.4 "Courier New",monospace;
  letter-spacing:1.7px;
}

.archive-sidebar h1{
  margin:0 0 28px;
  color:rgba(239,231,217,.94);
  font-size:clamp(20px,2vw,27px);
  font-weight:400;
  letter-spacing:1.5px;
}

.archive-nav{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}

.filter-btn{
  border:1px solid transparent;
  padding:7px 10px;
  background:transparent;
  color:rgba(239,231,217,.83);
  font:12px/1.2 "Special Elite",monospace;
  text-align:left;
  cursor:pointer;
  transition:background .18s ease,color .18s ease;
}

.filter-btn:hover{
  color:#3f332b;
  background:rgba(239,231,217,.68);
}

.filter-btn.active{
  color:#3f332b;
  background:var(--cream);
  border-color:rgba(64,53,45,.14);
}

.archive-search{
  margin-top:30px;
}

.archive-search label,
.sort-label{
  display:block;
  margin-bottom:8px;
  color:rgba(239,231,217,.66);
  font:9px/1 "Courier New",monospace;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

.search-row{
  display:flex;
  align-items:center;
  gap:7px;
  width:100%;
  border-bottom:1px solid rgba(239,231,217,.55);
  padding-bottom:7px;
}

.search-icon{
  color:rgba(239,231,217,.78);
  font:16px/1 Georgia,serif;
}

.search-row input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:rgba(239,231,217,.94);
  font:11px "Special Elite",monospace;
}

.search-row input::placeholder{color:rgba(239,231,217,.56)}

.archive-sort{
  margin-top:22px;
}

.sort-select{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(239,231,217,.55);
  border-radius:0;
  padding:0 0 8px;
  outline:0;
  background:transparent;
  color:rgba(239,231,217,.90);
  font:10px "Special Elite",monospace;
  cursor:pointer;
}

.sort-select option{
  color:#40352d;
  background:#eee5d5;
}

.archive-exit{
  margin-top:auto;
  padding-top:30px;
  color:rgba(239,231,217,.78);
  font-size:11px;
  letter-spacing:1px;
  text-decoration:none;
}

.archive-exit:hover{
  color:var(--cream);
  text-decoration:underline;
  text-underline-offset:4px;
}

.archive-content{
  min-width:0;
  min-height:min(86vh,850px);
  overflow:hidden;
  padding:31px 38px 24px;
  background:var(--panel);
  border:1px solid var(--panel-edge);
  box-shadow:0 12px 34px rgba(16,12,10,.16);
  backdrop-filter:blur(2px);
}

.archive-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:25px;
}

.archive-kicker,.entry-count{
  margin:0;
  color:var(--muted);
  font:9px/1.4 "Courier New",monospace;
  letter-spacing:1.4px;
  text-transform:uppercase;
}

.archive-rule{
  width:100%;
  height:1px;
  margin:14px 0 8px;
  background:var(--line);
}

.entry-list{
  display:flex;
  flex-direction:column;
}

.archive-entry{
  display:grid;
  grid-template-columns:178px minmax(0,1fr);
  gap:25px;
  padding:23px 0;
  border-top:1px solid var(--line);
}

.archive-entry:first-child{border-top:0}

.archive-entry[hidden]{display:none}

.entry-image{
  width:100%;
  height:178px;
  display:block;
  object-fit:cover;
  object-position:center;
  filter:saturate(.68) contrast(.96);
  border:1px solid rgba(64,53,45,.23);
}

.entry-main{
  min-width:0;
  padding-top:2px;
}

.entry-topline{
  display:flex;
  align-items:baseline;
  gap:15px;
  margin-bottom:8px;
}

.entry-number,.entry-date{
  color:var(--faint);
  font:9px/1 "Courier New",monospace;
}

.entry-title{
  display:inline-block;
  margin:0 0 9px;
  color:var(--ink);
  font:17px/1.3 "Special Elite",monospace;
  text-decoration:none;
}

.entry-title:hover{
  text-decoration:underline;
  text-underline-offset:4px;
}

.entry-excerpt{
  max-width:510px;
  margin:0 0 15px;
  color:#5d5147;
  font:13px/1.7 Georgia,"Times New Roman",serif;
}

.entry-meta{
  color:var(--faint);
  font:8px/1.5 "Courier New",monospace;
  letter-spacing:.6px;
  text-transform:uppercase;
}

.entry-meta::before{
  content:"/";
  margin-right:7px;
}

.read-entry{
  display:inline-block;
  margin-top:13px;
  color:var(--muted);
  font:9px "Courier New",monospace;
  letter-spacing:.5px;
  text-decoration:underline;
  text-underline-offset:3px;
}

.no-results{
  padding:35px 0;
  color:var(--muted);
  font:10px "Courier New",monospace;
}

.pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:8px;
  padding-top:15px;
  border-top:1px solid var(--line);
}

.page-btn{
  min-width:25px;
  height:25px;
  border:1px solid transparent;
  background:transparent;
  color:var(--muted);
  font:10px "Courier New",monospace;
  cursor:pointer;
}

.page-btn:hover:not(:disabled),
.page-btn.active{
  background:var(--cream);
  border-color:rgba(64,53,45,.22);
  color:var(--ink);
}

.page-btn:disabled{
  opacity:.3;
  cursor:default;
}

.page-info{
  margin:0 8px;
  color:var(--faint);
  font:8px "Courier New",monospace;
  letter-spacing:.6px;
}

@media(max-width:850px){
  .archive-page{
    padding:25px 18px;
    align-items:flex-start;
  }

  .archive-layout{
    width:min(650px,100%);
    min-height:auto;
    grid-template-columns:1fr;
    gap:14px;
    align-items: start;
  }

  .archive-sidebar{
    min-height:auto;
    padding:12px 4px;
  }

  .archive-sidebar h1{margin-bottom:18px}

  .archive-nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .archive-search{max-width:330px;margin-top:20px}
  .archive-sort{max-width:330px}
  .archive-exit{margin-top:20px}

  .archive-content{
    padding:25px 20px;
    overflow:visible;
  }
}

@media(max-width:560px){
  .archive-entry{
    grid-template-columns:1fr;
    gap:14px;
  }

  .entry-image{
    height:230px;
  }
}

/* =========================================================
   RIGHT-SIDE ARCHIVE AUDIO PLAYER
   ========================================================= */

.archive-layout{
  grid-template-columns:205px minmax(0,1fr) 320px;
  gap:22px;
  align-items:start;
}

.archive-audio-panel{
  min-width:0;
  min-height:100%;
  padding:18px 0;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.winamp-player,
.winamp-playlist{
  width:100%;
  border:1px solid rgba(64,53,45,.48);
  background:#d7bdbc;
  box-shadow:inset 0 0 0 1px rgba(239,231,217,.48),0 7px 20px rgba(16,12,10,.18);
}

.winamp-titlebar,
.winamp-playlist-titlebar{
  min-height:30px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:5px 8px;
  border-bottom:1px solid rgba(64,53,45,.48);
  background:linear-gradient(to bottom,rgba(240,216,211,.96),rgba(190,153,150,.96));
  color:#40352d;
  font:8px/1 "Special Elite","Courier New",monospace;
  letter-spacing:1px;
  text-transform:uppercase;
}

.winamp-window-buttons{display:flex;gap:4px;align-items:center}
.winamp-window-buttons span{
  width:13px;height:13px;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(64,53,45,.48);border-radius:50%;background:#eee5d5;
  font:8px/1 Arial,sans-serif;
}

.winamp-display{
  margin:10px;padding:10px 10px 8px;border:1px solid rgba(64,53,45,.55);
  border-radius:14px;background:#3d3431;color:#ead8d2;
  box-shadow:inset 0 0 16px rgba(0,0,0,.22);
}

.winamp-display-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.winamp-clock{font:19px/1 "Courier New",monospace;letter-spacing:1px}
.winamp-playing{display:flex;align-items:center;gap:5px;min-width:0;font:9px/1 "Special Elite","Courier New",monospace;white-space:nowrap}
.winamp-file{margin-top:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#d6bcb5;font:7px/1 "Courier New",monospace;letter-spacing:.4px}

.winamp-visualizer{height:43px;margin-top:8px;display:flex;align-items:flex-end;gap:2px;overflow:hidden}
.winamp-visualizer i{display:block;flex:1;min-width:2px;height:var(--h,35%);background:#d8aaa6;opacity:.82}
.winamp-visualizer i:nth-child(1){--h:26%}.winamp-visualizer i:nth-child(2){--h:55%}
.winamp-visualizer i:nth-child(3){--h:80%}.winamp-visualizer i:nth-child(4){--h:45%}
.winamp-visualizer i:nth-child(5){--h:92%}.winamp-visualizer i:nth-child(6){--h:64%}
.winamp-visualizer i:nth-child(7){--h:38%}.winamp-visualizer i:nth-child(8){--h:74%}
.winamp-visualizer i:nth-child(9){--h:50%}.winamp-visualizer i:nth-child(10){--h:87%}
.winamp-visualizer i:nth-child(11){--h:68%}.winamp-visualizer i:nth-child(12){--h:42%}
.winamp-visualizer i:nth-child(13){--h:76%}.winamp-visualizer i:nth-child(14){--h:35%}
.winamp-visualizer i:nth-child(15){--h:89%}.winamp-visualizer i:nth-child(16){--h:57%}
.winamp-visualizer i:nth-child(17){--h:72%}.winamp-visualizer i:nth-child(18){--h:44%}
.winamp-visualizer i:nth-child(19){--h:94%}.winamp-visualizer i:nth-child(20){--h:58%}
.winamp-visualizer i:nth-child(21){--h:36%}.winamp-visualizer i:nth-child(22){--h:83%}
.winamp-visualizer i:nth-child(23){--h:62%}.winamp-visualizer i:nth-child(24){--h:90%}
.winamp-visualizer i:nth-child(25){--h:48%}.winamp-visualizer i:nth-child(26){--h:70%}
.winamp-visualizer i:nth-child(27){--h:53%}.winamp-visualizer i:nth-child(28){--h:81%}
.winamp-visualizer i:nth-child(29){--h:31%}.winamp-visualizer i:nth-child(30){--h:66%}
.winamp-visualizer i:nth-child(31){--h:46%}.winamp-visualizer i:nth-child(32){--h:75%}

.winamp-progress{height:4px;margin-top:8px;overflow:hidden;background:rgba(239,231,217,.16);border-radius:4px}
.winamp-progress span{display:block;width:0;height:100%;background:#d8aaa6}

.winamp-main-controls{display:flex;justify-content:center;gap:6px;padding:0 10px 9px}
.winamp-main-controls button{
  width:36px;height:30px;padding:0;border:1px solid rgba(64,53,45,.42);border-radius:50%;
  background:linear-gradient(to bottom,#f3e9e3,#c7aaa7);color:#40352d;
  box-shadow:0 2px 2px rgba(16,12,10,.15),inset 0 1px rgba(255,255,255,.55);
  font:9px "Courier New",monospace;cursor:pointer;
}
.winamp-main-controls button:hover{transform:translateY(-1px)}
.winamp-main-controls button:active{transform:translateY(1px);box-shadow:inset 0 2px 3px rgba(16,12,10,.18)}
.winamp-main-controls #playTrack{background:#eee5d5}

.winamp-extra-controls{padding:7px 11px 10px;border-top:1px solid rgba(64,53,45,.25)}
.winamp-slider-row{display:flex;align-items:center;gap:7px;margin-top:5px;color:#65564e;font:7px "Courier New",monospace}
.winamp-slider-row:first-child{margin-top:0}
.winamp-slider-row input{width:100%;min-width:0;height:3px;accent-color:#8e6866}

.winamp-playlist{overflow:hidden}
.winamp-playlist-titlebar{min-height:27px;background:linear-gradient(to bottom,rgba(238,226,220,.96),rgba(207,180,176,.96))}
.winamp-playlist-screen{background:#eee5d5}

.player-song{
  width:100%;display:grid;grid-template-columns:28px minmax(0,1fr) 42px;align-items:center;gap:5px;
  padding:7px 8px;border:0;border-bottom:1px solid rgba(64,53,45,.16);
  background:transparent;color:#5a4d45;text-align:left;font:9px/1 "Courier New",monospace;cursor:pointer;
}
.player-song span:nth-child(2){min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.player-song span:last-child{text-align:right;color:#8b7770}
.player-song:hover{background:rgba(190,153,150,.20)}
.player-song.active{background:#c49a98;color:#40352d}
.player-song.active span:last-child{color:#40352d}

.winamp-playlist-footer{display:flex;justify-content:space-between;padding:7px 8px;background:#d8c0bd;color:#695b53;font:7px "Courier New",monospace}

.archive-audio-note{
  min-height:145px;position:relative;overflow:hidden;border:1px solid rgba(239,231,217,.30);
  background:#51453e;box-shadow:0 6px 16px rgba(16,12,10,.12);
}
.audio-note-image{
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 50% 35%,rgba(239,231,217,.18),transparent 48%),
             repeating-linear-gradient(90deg,rgba(239,231,217,.035) 0,rgba(239,231,217,.035) 1px,transparent 1px,transparent 4px);
  opacity:.7;
}
.archive-audio-note p{position:absolute;left:12px;bottom:10px;margin:0;color:rgba(239,231,217,.78);font:8px/1.5 "Courier New",monospace;text-transform:uppercase}

@media(max-width:1180px){
  .archive-layout{grid-template-columns:185px minmax(0,1fr) 280px;gap:16px}
  .archive-content{padding-left:28px;padding-right:28px}
  .winamp-main-controls{gap:4px}
  .winamp-main-controls button{width:32px;height:28px}
}
@media(max-width:900px){
  .archive-layout{grid-template-columns:185px minmax(0,1fr)}
  .archive-audio-panel{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
  .archive-audio-note{display:none}
}
@media(max-width:850px){
  .archive-layout{grid-template-columns:1fr}
  .archive-audio-panel{grid-column:auto;display:flex;max-width:430px;padding:0}
  .archive-sidebar{min-height:auto}
}
@media(max-width:560px){
  .archive-audio-panel{max-width:none}
}

.winamp-player {
  border-radius: 12px;
  overflow: hidden;
}

.winamp-playlist {
  border-radius: 8px;
  overflow: hidden;
}

/* =========================================================
   WINAMP PLAYER — PIXEL FONT OVERRIDES
   Applies ONLY to the right-side audio player.
   ========================================================= */

.winamp-player,
.winamp-playlist {
  font-family: "Silkscreen", monospace;
}

.winamp-titlebar,
.winamp-playlist-titlebar {
  font-family: "Silkscreen", monospace;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0;
}

.winamp-clock {
  font-family: "Silkscreen", monospace;
  font-size: 22px;
  letter-spacing: 1px;
}

.winamp-playing {
  font-family: "Silkscreen", monospace;
  font-size: 10px;
  letter-spacing: 0;
}

.winamp-file {
  font-family: "Silkscreen", monospace;
  font-size: 8px;
  letter-spacing: 0;
}

.winamp-slider-row {
  font-family: "Silkscreen", monospace;
  font-size: 8px;
}

.player-song {
  font-family: "Silkscreen", monospace;
  font-size: 10px;
  line-height: 1.45;
}

.winamp-playlist-footer {
  font-family: "Silkscreen", monospace;
  font-size: 8px;
}

/* Keep the round outer corners from being overridden. */
.winamp-player,
.winamp-playlist {
  border-radius: 18px;
  overflow: hidden;
}

/* =========================================================
   MANUSCRIPTS — INLINE ENTRY VIEW
   Only active on the Manuscripts archive.
   Keeps the archive page (and audio player) alive while
   a generated journal HTML file is displayed in the center.
   ========================================================= */

.archive-content.entry-view-open .entry-list,
.archive-content.entry-view-open .no-results,
.archive-content.entry-view-open .pagination{
  display:none;
}

.archive-entry-view{
  margin-top:18px;
}

.archive-entry-view[hidden]{
  display:none;
}

.archive-entry-view-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:0 0 12px;
  border-bottom:1px solid var(--line);
}

.archive-entry-back{
  border:0;
  padding:0;
  background:transparent;
  color:var(--muted);
  font:9px "Courier New",monospace;
  letter-spacing:.7px;
  text-decoration:underline;
  text-underline-offset:4px;
  cursor:pointer;
}

.archive-entry-back:hover{
  color:var(--ink);
}

.archive-entry-view-status{
  color:var(--faint);
  font:8px "Courier New",monospace;
  letter-spacing:1px;
  text-transform:uppercase;
}

.archive-entry-frame-wrap{
  width:100%;
  height:calc(min(86vh,850px) - 105px);
  min-height:560px;
  margin-top:14px;
  overflow:hidden;
  border:1px solid rgba(64,53,45,.18);
  background:rgba(239,231,217,.35);
}

.archive-entry-frame-wrap iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#29231f;
}

@media(max-width:850px){
  .archive-entry-frame-wrap{
    height:70vh;
    min-height:500px;
  }
}

@media(max-width:560px){
  .archive-entry-view-top{
    align-items:flex-start;
    flex-direction:column;
  }

  .archive-entry-frame-wrap{
    height:72vh;
    min-height:460px;
  }
}

.audio-section .audio-gif {
    width: 300px !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto 10px !important;
}