/* Whitmore Academy — Haunted Conservatory style */
body {
  background-color: #1e150e;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><rect width='100' height='100' fill='%231e150e'/><g opacity='0.18' stroke='%235a4020' fill='none'><path d='M10 90 L90 90 M20 90 L20 30 M30 30 L30 90 M40 40 L40 90 M60 20 L60 90 M70 50 L70 90'/></g></svg>");
  background-repeat: repeat;
  color: #e8dcc8;
  font-family: "Georgia","Times New Roman",serif;
  font-size: 15px; margin:0; padding:0; cursor:default;
}
a { color: #d4a24c; text-decoration:underline; } a:visited { color:#a060a0; } a:hover { color:#ff6644; }
h1,h2,h3 { font-family:"Playfair Display","Times New Roman",serif; letter-spacing:1px; }
.neon-gold { color:#d4a24c; text-shadow:0 0 6px #8a6020; }
.neon-red { color:#cc4444; text-shadow:0 0 6px #802020; }
.neon-cyan { color:#c0a0d0; }
.blink { animation:blink 1.3s steps(2,start) infinite; } @keyframes blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}
.marquee-box { background:#0a0604; border:2px ridge #8a6020; padding:6px; overflow:hidden; white-space:nowrap; color:#e8dcc8; }
.floaty { display:inline-block; animation:floaty 3s ease-in-out infinite; }
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.page { max-width:860px; margin:0 auto; padding:12px; }
.header-banner { background:linear-gradient(90deg,#2a1a0e,#4a3018,#2a1a0e); border:3px outset #d4a24c; text-align:center; padding:14px; margin-bottom:10px; }
.navbar { background:#140e08; border:2px inset #d4a24c; padding:8px; text-align:center; margin-bottom:12px; }
.navbar a { margin:0 6px; font-weight:bold; }
.content-box { background:rgba(30,20,10,0.75); border:2px dashed #d4a24c; padding:12px; margin-bottom:12px; }
.sidebar-box { background:rgba(20,12,6,0.85); border:2px solid #a05020; padding:10px; margin-bottom:12px; }
.under-construction { text-align:center; border:3px solid #d4a24c; background:repeating-linear-gradient(45deg,#0a0604 0 10px,#2a1a0e 10px 20px); padding:8px; margin:10px 0; }
.hit-counter { font-family:"Courier New",monospace; background:#000; color:#ff6644; border:2px inset #888; padding:2px 8px; letter-spacing:3px; display:inline-block; }
.web-ring { border:2px ridge #d4a24c; padding:8px; text-align:center; background:#140e08; font-size:12px; }
.missing-card { border:2px solid #a03030; background:rgba(40,10,10,0.5); padding:10px; margin-bottom:12px; }
.new-badge { background:#a03030; color:#d4a24c; font-weight:bold; font-size:10px; padding:1px 4px; border:1px solid #d4a24c; vertical-align:middle; animation:blink 0.8s steps(2,start) infinite; }
.footer { text-align:center; border-top:2px solid #d4a24c; padding-top:10px; font-size:11px; color:#8a7a60; }
hr.rainbow-hr { border:0; height:3px; background:linear-gradient(90deg,#d4a24c,#a03030,#d4a24c); }
table { width:100%; border-collapse:collapse; } th,td { border:1px solid #d4a24c; padding:6px; } th { background:#2a1a0e; color:#d4a24c; }
.guestbook-entry { border-bottom:1px dotted #8a6020; padding:6px 0; }
form input,form textarea{background:#140e08;color:#e8dcc8;border:1px solid #d4a24c;padding:4px;width:95%;}
form button{background:#2a1a0e;color:#d4a24c;border:2px outset #d4a24c;padding:4px 10px;font-weight:bold;cursor:pointer;}
.status-ok{color:#d4a24c;} .status-err{color:#cc4444;}