
:root{
  --bg:#000000;
  --fg:#d9d9d9;
  --muted:#8a8a8a;
  --accent:#7b3df0;
  --accent-2:#6fe39a;
  --pink: rgba(210,115,138,1); 
  --box-size: 320px;
  --grid-gap: 20px;
  --panel-bg: #070707;
}
html,body{height:100%;}
body{
  margin:0;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  background-color: #000;
  background-image: url('bg.gif');
  background-repeat: repeat;
  background-attachment: fixed;
  color:var(--fg);
  font-family: CustomFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Courier New", monospace;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  padding:0; 
  overflow:hidden; 
}

@font-face{
  font-family: CustomFont;
  src: url('font.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.site{
  max-width:820px;
  margin:0 auto;
}

h1{
  font-family: CustomFont, monospace;
  font-weight:600;
  text-align:center;
  margin:0 0 10px 0;
  color:var(--pink);
  letter-spacing:0.6px;
}
p.lead{ text-align:center; color:var(--muted); margin-top:6px }
.panel{
  background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border:1px solid var(--accent);
  padding:18px;
  border-radius:8px;
  margin:18px 0;
}
.center-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:var(--grid-gap);
  align-items:start;
  justify-items:stretch;
}
.box{
  background: var(--panel-bg);
  padding:18px;
  border:1px solid rgba(210,115,138,0.9);
  box-shadow: none;
  border-radius:0;
  width: var(--box-size);
  height: var(--box-size);
  box-sizing: border-box;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:12px;
}
.auth-single .main-box{ grid-column:1 / -1; width:100%; max-width:100%; margin:0; box-sizing:border-box; height:auto; }
.auth-box .hero-text{ padding:12px 0; height:auto; overflow:visible }
.auth-form{ display:flex; flex-direction:column; gap:10px; }
.field-label{ font-size:13px; color:var(--muted); margin-bottom:4px }
.field{ background:#070707; color:var(--fg); border:1px solid rgba(210,115,138,0.9); padding:10px; border-radius:0; font-family: CustomFont, monospace; font-size:14px }
.field:focus{ outline:none; box-shadow:0 0 0 2px rgba(123,61,240,0.08) }
.armored{ background:#0b0b0b; color:var(--fg); padding:12px; border-radius:0; overflow:auto; max-height:160px }
.form-error{ color:#ff6b6b; margin-bottom:8px }
.btn{ background:transparent; color:var(--fg); border:1px solid var(--pink); padding:8px 12px; border-radius:0; cursor:pointer; font-family: CustomFont, monospace }
.btn:hover{ background:rgba(123,61,240,0.06) }
.form-actions{ margin-top:8px }
.auth-footer{ margin-top:12px; color:var(--muted); font-size:13px }
@media (max-width:560px){
  .auth-single .main-box{ width:100%; }
  .auth-box .field{ width:100%; }
}
.dashboard-actions .btn{ margin:6px 6px 6px 0 }
.dashboard-box .field{ margin-bottom:8px }
.dashboard-actions{ display:flex; gap:6px; align-items:center; flex-wrap:wrap }
.dashboard-actions .btn.logout{ margin-left:auto }
.left-box{ border:1px solid rgba(210,115,138,0.9); }
.right-box{ display:grid; grid-template-columns: 120px 1fr; gap:12px; align-items:end; position:relative; }
.right-box > .hero-text{ display:flex; align-items:center; justify-content:center; padding-left:6px; height:100%; margin-left:215px;}
.right-box.no-hero{ grid-template-columns: 1fr; }
.right-box.no-hero > .hero-text{ margin-left:0; padding:12px 18px; align-items:flex-start; justify-content:flex-start; text-align:left; width:100%; height:100%; overflow:auto; box-sizing:border-box; }
.faq-list{ width:100%; }
.faq-item{ margin-bottom:14px; }
.faq-q{ font-weight:700; color:var(--fg); margin-bottom:6px; }
.faq-a{ color:var(--muted); margin-left:6px; white-space:pre-wrap; }
.donate-text .addr{ display:block; overflow-wrap:anywhere; word-break:break-word; }
.right-box.no-hero > .hero-text{ scrollbar-width: thin; scrollbar-color: var(--accent) rgba(255,255,255,0.02); }
.right-box.no-hero > .hero-text::-webkit-scrollbar{ width:10px; height:10px; }
.right-box.no-hero > .hero-text::-webkit-scrollbar-track{ background: rgba(255,255,255,0.02); border-radius:0; }
.right-box.no-hero > .hero-text::-webkit-scrollbar-thumb{ background: var(--accent); border-radius:0; border:0; }
.right-box.no-hero > .hero-text::-webkit-scrollbar-thumb:hover{ background: color-mix(in srgb, var(--accent) 75%, black); }
.right-box.no-hero > .hero-text{ -ms-overflow-style: none; scrollbar-width: none;}
.right-box.no-hero > .hero-text::-webkit-scrollbar{ display: none; width: 0; height: 0; }
.bottom-box{ grid-column:1 / -1; width: calc(var(--box-size) * 2 + var(--grid-gap)); max-width:100%; height:88px; margin:0 auto; display:grid; grid-template-columns: var(--box-size) var(--box-size); align-items:center; justify-items:start; padding:0; border-radius:0; border:1px solid var(--pink); box-sizing:border-box; background: var(--panel-bg); }
.bottom-box .contact-lines{ text-align:left; margin:0; padding-left:18px }
.nav-links{ color:var(--fg); }
.nav-links a{ color:var(--fg); display:block; padding:12px 0; border-bottom:1px dashed rgba(255,255,255,0.03) }
.hero-img{
  width: 300px !important;
  max-width: 300px !important;
  height: auto;
  max-height: calc(var(--box-size) - 36px);
  object-fit: contain;
  border: none;
  border-radius: 0;
  background: transparent;
  position: absolute;
  left: -80px;
  bottom: 0px;
}
.contact-lines{ color:var(--muted); font-size:14px; line-height:1.6 }
.center-wrap{ display:flex; align-items:center; justify-content:center }
.row{display:flex;gap:18px;flex-wrap:wrap}
.col{flex:1 1 240px}
a{ color:var(--accent-2); text-decoration:none }
a:hover{ text-decoration:underline }
ul{ padding-left:0; margin:8px 0 }
ul li{ list-style:none; margin:8px 0 }
label{ display:block; margin:8px 0; color:var(--fg) }
input,textarea,select,pre{ background:#070707; color:var(--fg); border:1px solid rgba(255,255,255,0.04); padding:8px; border-radius:6px; font-family:monospace }
textarea{ min-height:160px }
button,input[type=submit]{ background:transparent; color:var(--fg); border:1px solid var(--pink); padding:8px 12px; border-radius:6px; cursor:pointer; font-family:monospace }
button:hover,input[type=submit]:hover{ background:rgba(123,61,240,0.06) }
.nav-links a{ display:block; padding:10px 0; border-bottom:1px dashed rgba(255,255,255,0.03) }
.footer{ text-align:center; color:var(--muted); margin-top:14px; font-size:13px }
@media (max-width:560px){
  body{ padding:0 }
  .site.center-wrap{ padding:24px 12px; overflow:auto }
  .row{flex-direction:column}
  .center-grid{ grid-template-columns: 1fr }
  .right-box{ grid-template-columns: 1fr; align-items:center }
  .hero-img{ max-width:260px; width:88vw; max-height:none; flex: none }
  .hero-img{ position: static; left: auto; bottom: auto; margin-left:0 }
  :root{ --box-size: 88vw }
}
body{ cursor: url('/static/cursor.gif'), auto; }
a{ cursor: url('/static/cursor2.gif'), default; }
