:root{
  --bg1:#070303;
  --bg2:#1a0a0a;
  --red:#ff4646;
  --red-dim:#7a1414;
  --red-bright:#ff8f8f;
  --text-dim:#a58f8f;
  --panel:rgba(10,26,28,.5);
  --border:rgba(255,70,70,.15);
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;color-scheme:dark;}
body{
  background:
    repeating-linear-gradient(to bottom, rgba(255,70,70,.025) 0, rgba(255,70,70,.025) 1px, transparent 1px, transparent 3px),
    var(--bg1);
  color:#ece0e0;
  font-family:Georgia,'Times New Roman',serif;
  min-height:100vh;
  overflow-x:hidden;
}
button,input,textarea{font:inherit;}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:2px solid var(--red-bright);
  outline-offset:3px;
}
[hidden]{display:none!important;}
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

.admin-bar{
  min-height:54px;max-width:820px;margin:0 auto;padding:16px 20px 0;
  display:flex;justify-content:flex-end;align-items:flex-start;flex-wrap:wrap;gap:8px;
}
.admin-btn,.refresh-btn{
  font-family:'Courier New',monospace;font-size:.68rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--red-dim);background:transparent;
  border:1px solid rgba(255,70,70,.25);padding:7px 14px;border-radius:6px;cursor:pointer;
}
.admin-btn:hover,.refresh-btn:hover{color:var(--red-bright);border-color:rgba(255,70,70,.5);}
.admin-btn:disabled,.publish-btn:disabled,.refresh-btn:disabled{opacity:.55;cursor:not-allowed;}
.admin-btn.subtle{opacity:.7;}
.admin-session{display:flex;align-items:center;gap:8px;}
.admin-status{
  font-family:'Courier New',monospace;font-size:.68rem;letter-spacing:.15em;
  color:var(--red-bright);margin-right:4px;text-transform:uppercase;
}
.pw-form{display:flex;align-items:flex-start;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:100%;}
.pw-form input[type="password"]{
  background:rgba(0,0,0,.35);border:1px solid rgba(255,70,70,.25);border-radius:6px;
  padding:7px 10px;color:#ece0e0;font-family:'Courier New',monospace;font-size:.75rem;
  width:min(240px,65vw);
}
.pw-error{
  flex-basis:100%;font-family:'Courier New',monospace;font-size:.65rem;color:#ff9a9a;
  letter-spacing:.04em;text-align:right;min-height:16px;
}

.compose-panel{display:none;}
body.admin-mode .compose-panel{display:block;}
.locked-note{
  text-align:center;font-family:'Courier New',monospace;font-size:.75rem;
  color:var(--text-dim);letter-spacing:.08em;padding:10px 4px 34px;line-height:1.8;
}
body.admin-mode .locked-note{display:none;}

header{max-width:820px;margin:0 auto;padding:38px 20px 20px;text-align:center;}
header .back{
  display:inline-block;margin-bottom:22px;font-family:'Courier New',monospace;
  font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--red-dim);text-decoration:none;
}
header .back:hover{color:var(--red-bright);}
header h1{
  font-weight:400;font-size:clamp(1.6rem,5vw,2.4rem);color:var(--red);
  text-shadow:0 0 14px rgba(255,70,70,.3);letter-spacing:.02em;margin-bottom:8px;
}
header p{
  font-family:'Courier New',monospace;font-size:11px;letter-spacing:.25em;
  text-transform:uppercase;color:var(--red-dim);
}

main{max-width:760px;margin:0 auto;padding:20px 20px 80px;}
.panel{
  background:var(--panel);border:1px solid var(--border);border-radius:14px;
  padding:28px 24px;margin-bottom:36px;backdrop-filter:blur(6px);
}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.panel h2{
  font-family:'Courier New',monospace;font-size:.78rem;letter-spacing:.25em;
  color:var(--red-bright);text-transform:uppercase;margin-bottom:18px;
}
.panel h2::before{content:'> ';color:var(--red-dim);}
.refresh-btn{font-size:.6rem;padding:5px 10px;}

label{
  display:block;font-family:'Courier New',monospace;font-size:.7rem;
  letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px;
}
input[type="text"],input[type="url"],textarea{
  width:100%;background:rgba(0,0,0,.3);border:1px solid rgba(255,70,70,.2);
  border-radius:8px;padding:10px 12px;color:#ece0e0;font-family:Georgia,serif;
  font-size:.9rem;margin-bottom:18px;resize:vertical;
}
input:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 2px rgba(255,70,70,.15);}
textarea{min-height:210px;line-height:1.65;}
.compose-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.publish-btn{
  font-family:'Courier New',monospace;font-size:.78rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--bg1);background:var(--red);
  border:0;padding:11px 22px;border-radius:8px;cursor:pointer;
  box-shadow:0 0 16px rgba(255,70,70,.35);transition:transform .15s ease,box-shadow .15s ease;
}
.publish-btn:hover{transform:translateY(-1px);box-shadow:0 0 22px rgba(255,70,70,.5);}
.publish-btn:active{transform:translateY(0);}
.compose-status{
  font-family:'Courier New',monospace;font-size:.68rem;color:#ff9a9a;letter-spacing:.04em;
}
.note{
  font-family:'Courier New',monospace;font-size:.68rem;color:var(--text-dim);
  letter-spacing:.05em;line-height:1.7;margin-top:-4px;margin-bottom:18px;
}

.empty-note,.error-note{
  font-family:'Courier New',monospace;font-size:.8rem;color:var(--text-dim);
  text-align:center;padding:30px 10px;letter-spacing:.05em;line-height:1.7;
}
.error-note{color:#ff9a9a;}
.entry{border-bottom:1px dashed rgba(255,70,70,.12);padding:22px 0;}
.entry:last-child{border-bottom:0;}
.entry-head{
  width:100%;display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  flex-wrap:wrap;background:transparent;border:0;text-align:left;cursor:pointer;color:inherit;
}
.entry-title{color:var(--red);font-size:1.05rem;font-weight:normal;}
.entry-meta{
  font-family:'Courier New',monospace;font-size:.68rem;color:var(--text-dim);
  letter-spacing:.1em;white-space:nowrap;
}
.entry-tags{
  font-family:'Courier New',monospace;font-size:.68rem;color:var(--red-dim);
  margin-top:6px;letter-spacing:.05em;overflow-wrap:anywhere;
}
.entry-body{
  margin-top:14px;font-size:.9rem;line-height:1.8;color:#e6cfcf;
  white-space:pre-wrap;overflow-wrap:anywhere;
}
.entry-source{margin-top:14px;}
.entry-source a{
  color:var(--red-bright);font-family:'Courier New',monospace;font-size:.72rem;
  letter-spacing:.03em;overflow-wrap:anywhere;
}
.entry-source a:hover{color:#fff;}
.entry-actions{margin-top:14px;text-align:right;}
.del-link{
  font-family:'Courier New',monospace;font-size:.65rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--red-dim);cursor:pointer;background:transparent;
  border:0;opacity:.7;padding:4px;
}
.del-link:hover{opacity:1;color:#ff9a9a;}

footer{
  text-align:center;padding:30px 20px;color:var(--red-dim);
  font-family:'Courier New',monospace;font-size:.65rem;letter-spacing:.3em;
  text-transform:uppercase;border-top:1px solid rgba(255,70,70,.1);
}

@media (max-width:560px){
  .admin-bar{justify-content:center;}
  .pw-form{justify-content:center;}
  .pw-error{text-align:center;}
  .panel{padding:24px 18px;}
  .entry-head{align-items:flex-start;}
  .entry-meta{white-space:normal;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}
