:root{
  --ink:#251b13;--brown:#5b3b24;--dark:#2b2118;--brass:#b58a43;--cream:#eadfc8;
  --paper:#d8c6a4;--paper2:#f0e4ca;--red:#7f3023;--green:#374d35;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#201914;color:var(--ink);font-family:Georgia,'Times New Roman',serif;background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:5px 5px}
a{color:#5b2f1d;text-decoration:none}
a:hover{text-decoration:underline}
.page-shell{width:min(1280px,96%);margin:24px auto;background:#c8b28c;box-shadow:0 0 0 5px #3a291d,0 12px 40px #0008;border:1px solid #9a7b50}
.hero{position:relative;height:285px;overflow:hidden;background:#1d1712;border-bottom:8px solid #4a321f}
.hero-images{display:grid;grid-template-columns:repeat(4,1fr);height:100%;filter:saturate(.85) sepia(.18) contrast(1.03)}
.hero-images img{width:100%;height:100%;object-fit:cover;min-width:0}
.hero-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:35px 55px;color:#fff;background:linear-gradient(90deg,#1b110dd9,#21140a91,#140c08c4)}
.hero h1{font-family:'Courier New',Courier,monospace;text-transform:uppercase;letter-spacing:2px;font-size:clamp(32px,5vw,66px);margin:5px 0;text-shadow:3px 3px #000}
.hero p{font-size:clamp(18px,2.5vw,29px);margin:0;color:#f4d99e;text-shadow:2px 2px #000}
.eyebrow{font-size:13px;letter-spacing:3px;color:#e3c27b;font-weight:bold}
.antenna{font-size:58px;filter:drop-shadow(2px 3px #000)}
.hero-badge{font-family:'Courier New',Courier,monospace;font-size:52px;color:#e7c77c;border:3px double #e7c77c;border-radius:50%;width:90px;height:90px;display:grid;place-items:center;transform:rotate(-9deg);text-shadow:2px 2px #000}
.main-nav{display:flex;flex-wrap:wrap;justify-content:center;background:linear-gradient(#5f432c,#332418);border-bottom:4px solid #a77b3d;padding:7px;gap:5px}
.main-nav a{color:#f3e3be;background:linear-gradient(#765638,#402c1e);border:1px solid #1c130e;border-radius:4px;padding:12px 15px;font-size:14px;font-weight:bold;box-shadow:inset 0 1px #a98760,0 2px 0 #17100c;text-shadow:1px 1px #000}
.main-nav a:hover,.main-nav a.nav-register{background:linear-gradient(#9a673d,#58331f);text-decoration:none;transform:translateY(-1px)}
.main-nav span{margin-right:5px;color:#edc675}
.content{padding:28px;background:linear-gradient(135deg,#d9c8a8,#c8b28c);min-height:500px}
.panel{background:var(--paper2);border:2px solid #775636;box-shadow:inset 0 0 0 3px #bfa77c,5px 6px 0 #4b3323;padding:25px;margin-bottom:28px;position:relative}
.panel:before{content:"";position:absolute;inset:8px;border:1px dashed #a58b61;pointer-events:none}
.panel>*{position:relative}
.panel-heading{font-family:'Courier New',Courier,monospace;font-size:25px;color:#4b2c19;text-transform:uppercase;border-bottom:3px double #79542f;padding-bottom:10px;margin-bottom:20px}
.intro-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}
.radio-paper h2{font-family:'Courier New',Courier,monospace;font-size:34px;margin:8px 0 15px}
.lead{font-size:18px;line-height:1.7}
.signal-line{display:flex;gap:5px;margin:22px 0}.signal-line span{height:6px;background:#5b3b24;flex:1}.signal-line span:nth-child(2){height:14px}.signal-line span:nth-child(3){height:23px}.signal-line span:nth-child(4){height:14px}
.station-card{text-align:center}.dial{margin:12px auto 20px;width:180px;height:180px;border-radius:50%;border:10px double #4b3424;background:radial-gradient(circle,#d6c08f 0 58%,#6c4b2d 59% 63%,#a67a3f 64%);display:grid;place-items:center;box-shadow:inset 0 0 20px #0008}
.dial-mark{font-family:'Courier New',Courier,monospace;font-size:25px}.dial-sub{font-weight:bold}
.button-row{display:flex;flex-wrap:wrap;gap:10px}
.btn{display:inline-block;border:2px solid #3d291a;background:linear-gradient(#93623a,#57361f);color:#fff2d0;padding:11px 17px;border-radius:3px;font-weight:bold;box-shadow:0 3px 0 #2b1c12;cursor:pointer;font-family:inherit}.btn:hover{text-decoration:none;filter:brightness(1.12)}.btn.secondary{background:linear-gradient(#6b6a4a,#3e402e)}.btn.danger{background:linear-gradient(#9a4234,#5b211b)}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.feature-grid>div{padding:18px;border:1px solid #9e8257;background:#e1d1b0}.feature-grid b{font-family:'Courier New',Courier,monospace;font-size:21px}.feature-grid p{line-height:1.6}
.form-panel{max-width:850px;margin-inline:auto}.form-panel.narrow{max-width:620px}
form{display:grid;gap:14px}label{font-weight:bold;display:grid;gap:6px}input,textarea{width:100%;border:2px solid #8b6b46;background:#f6ead0;color:#2a1d13;padding:11px;border-radius:3px;font:inherit;outline:none}input:focus,textarea:focus{border-color:#5e3b21;box-shadow:0 0 0 2px #c0924b55}.check{display:flex;grid-template-columns:none;align-items:center;gap:8px;font-weight:normal}.check input{width:auto}
.flash,.error-box,.success-box,.notice{padding:14px 18px;border:2px solid #725333;background:#eee0c0;margin-bottom:18px;font-weight:bold}.flash.success,.success-box{background:#dce3c9;border-color:#58683c}.flash.error,.error-box{background:#ecd0c8;border-color:#7f3023}
.form-links{margin-top:18px}.small{font-size:13px;opacity:.8}.prose{line-height:1.75}.prose h2{font-family:'Courier New',Courier,monospace;color:#4b2c19;margin-top:30px}.prose h3{color:#5a3923}.quote{font-family:'Courier New',Courier,monospace;font-size:25px;padding:25px;background:#d1bb91;border-left:7px solid #73502f}
.profile-grid{display:grid;grid-template-columns:220px 1fr;gap:30px}.avatar-wrap{text-align:center}.avatar{width:190px;height:190px;object-fit:cover;border:7px double #6b4b2d;background:#c8b28c}.avatar.placeholder{display:grid;place-items:center;font-size:70px;margin:auto}.danger-panel{border-color:#7d3a2f}
.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}.album-card{background:#e9d9ba;border:2px solid #745231;box-shadow:4px 5px 0 #4a3322}.album-cover{display:block;height:210px;position:relative;overflow:hidden;background:#a58b64}.album-cover img{width:100%;height:100%;object-fit:cover;display:block}.empty-cover{height:100%;display:grid;place-items:center;font-size:70px}.photo-count{position:absolute;right:8px;bottom:8px;background:#20150fcc;color:#ffe8b5;padding:5px 8px;font-size:12px}.album-info{padding:14px}.album-info h3{font-family:'Courier New',Courier,monospace;margin:0 0 7px;font-size:24px}.album-info p{min-height:42px}.mini-actions{margin-top:12px;font-size:13px;font-weight:bold}.upload-box{background:#d5c09a;border:2px dashed #79552f;padding:15px;margin-top:15px}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.photo-card{position:relative;margin:0;background:#1d1510;padding:7px;border:4px solid #6e4c2e;box-shadow:4px 5px 0 #493222}.photo-open{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.photo-open img{display:block;width:100%;height:220px;object-fit:contain;background:#0d0b09}.photo-delete{position:absolute;top:12px;right:12px}.photo-delete button{border:1px solid #fff;background:#7d2d24;color:white;border-radius:3px;padding:4px 7px;cursor:pointer}
.lightbox{position:fixed;inset:0;background:#090705ee;z-index:1000;display:grid;place-items:center}.lightbox[hidden]{display:none}.lightbox img{max-width:86vw;max-height:82vh;object-fit:contain;border:5px solid #c9a15c;box-shadow:0 0 40px #000}.lb-close,.lb-prev,.lb-next{position:absolute;border:2px solid #d4ae68;background:#2c1d13;color:#ffe4a7;width:48px;height:48px;font-size:35px;cursor:pointer}.lb-close{right:25px;top:20px}.lb-prev{left:25px;top:50%;transform:translateY(-50%)}.lb-next{right:25px;top:50%;transform:translateY(-50%)}.lb-caption{position:absolute;bottom:18px;color:#f0d69b;font-size:14px}
.site-footer{background:#2c2118;color:#d9c39a;text-align:center;padding:22px;border-top:5px solid #a77b3d}.footer-links{display:flex;justify-content:center;gap:22px;margin:12px}.footer-links a{color:#e7c77c}.footer-radio{font-family:'Courier New',Courier,monospace;letter-spacing:2px}
@media(max-width:850px){.hero{height:310px}.hero-overlay{padding:25px}.hero-images{grid-template-columns:repeat(2,1fr)}.intro-grid,.profile-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.station-card{max-width:500px;margin-inline:auto}}
@media(max-width:600px){.page-shell{width:100%;margin:0;border:0}.content{padding:15px}.hero{height:360px}.hero-images{opacity:.65}.hero-overlay{align-items:flex-end;padding:20px;gap:12px}.antenna,.hero-badge{font-size:35px}.hero-badge{width:65px;height:65px}.main-nav a{flex:1 1 45%;text-align:center;padding:10px 5px;font-size:12px}.panel{padding:18px}.photo-grid{grid-template-columns:repeat(2,1fr)}.photo-card{padding:4px}.photo-open img{height:160px}.lb-prev{left:8px}.lb-next{right:8px}}
