*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Source Serif 4',serif;background:#0f0e0c;color:#e8e2d6;min-height:100vh;position:relative}
body::before{content:'';position:fixed;top:50%;left:50%;width:140%;height:140%;background-image:url('/static/img/hero-pistol-watermark.jpg');background-repeat:no-repeat;background-size:2800px auto;background-position:center;transform:translate(-50%,-50%) rotate(-30deg);opacity:0.25;z-index:0;pointer-events:none}
nav,.hero,.container,footer{position:relative;z-index:1}
a{color:#c9a84c;text-decoration:none}
nav{background:#0a0908;border-bottom:1px solid #2a2520;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:52px;position:relative;z-index:10}
.nav-brand{font-family:'Oswald',sans-serif;font-size:18px;font-weight:600;color:#c9a84c;letter-spacing:.08em}
.nav-brand:hover{color:#e0be6a}
.nav-links{display:flex;gap:1.5rem;align-items:center}
.nav-links a{font-family:'Oswald',sans-serif;font-size:13px;color:#a0a090;letter-spacing:.06em;text-transform:uppercase}
.nav-links a:hover{color:#c9a84c}
.nav-cta{background:#c9a84c;color:#0a0908 !important;padding:6px 14px;border-radius:2px;font-weight:600;font-size:12px}
.nav-cta:hover{background:#e0be6a !important}
.container{max-width:900px;margin:0 auto;padding:2.5rem 2rem}
.mono{font-family:'IBM Plex Mono',monospace}
.gold{color:#c9a84c}
.section-label{font-family:'Oswald',sans-serif;font-size:12px;font-weight:500;color:#9a9080;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}
.card{background:#0a0908;border:1px solid #2a2520;border-radius:2px;padding:1.5rem;margin-bottom:1.5rem}
.card-gold{background:#0a0908;border:1px solid #c9a84c44;border-radius:2px;padding:1.5rem;margin-bottom:1.5rem}
.input-row{display:flex;gap:10px;margin-bottom:.75rem}
input[type=text]{flex:1;background:#0f0e0c;border:1px solid #2a2520;color:#e8e2d6;font-family:'IBM Plex Mono',monospace;font-size:14px;padding:10px 14px;border-radius:2px;outline:none;letter-spacing:.08em}
input[type=text]::placeholder{color:#5a5450}
input[type=text]:focus{border-color:#c9a84c44}
input[type=file]{background:#0f0e0c;border:1px solid #2a2520;color:#9a9080;font-family:'IBM Plex Mono',monospace;font-size:12px;padding:10px 14px;border-radius:2px;width:100%;margin-bottom:.75rem}
.btn{background:#c9a84c;color:#0a0908;border:none;font-family:'Oswald',sans-serif;font-size:13px;font-weight:600;padding:10px 20px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:2px;display:inline-block}
.btn:hover{background:#e0be6a}
.btn-outline{background:none;color:#c9a84c;border:1px solid #c9a84c55;font-family:'Oswald',sans-serif;font-size:12px;font-weight:600;padding:8px 16px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:2px;display:inline-block}
.btn-outline:hover{background:#c9a84c18}
.result-serial{font-family:'Oswald',sans-serif;font-size:24px;font-weight:600;color:#c9a84c;letter-spacing:.1em;margin-bottom:1rem}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:1.25rem}
.field-box{background:#0f0e0c;border:1px solid #2a2520;padding:8px 10px;border-radius:2px}
.field-label{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#8a8070;letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px}
.field-value{font-family:'IBM Plex Mono',monospace;font-size:13px;color:#e0d8c8}
.data-notice{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#8a8070;background:#0f0e0c;border:1px solid #2a2520;border-left:3px solid #3a3530;padding:8px 12px;border-radius:2px;margin-bottom:.875rem;letter-spacing:.03em;line-height:1.5}
.custody-table{width:100%;border-collapse:collapse;margin-bottom:1.25rem}
.custody-table th{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#9a9080;letter-spacing:.08em;text-transform:uppercase;padding:7px 8px;text-align:left;border-bottom:1px solid #3a3530;background:#0f0e0c}
.custody-table td{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#c0b8a8;padding:8px 8px;border-bottom:1px solid #1e1c18}
.custody-table tr:last-child td{border-bottom:none}
.custody-table tr:hover td{background:#0f0e0c;color:#e0d8c8}
.cta-box{background:#1a1814;border:1px solid #c9a84c44;border-radius:2px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.cta-text{font-size:14px;color:#a0a090;line-height:1.5}
.not-found{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#8a8070;padding:1rem 0;line-height:1.8}
.token-box{background:#0f0e0c;border:2px solid #c9a84c;border-radius:2px;padding:1.5rem;text-align:center;margin:1.5rem 0}
.token-value{font-family:'IBM Plex Mono',monospace;font-size:28px;font-weight:500;color:#c9a84c;letter-spacing:.2em;margin:1rem 0}
.token-warning{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#8a8070;line-height:1.7;margin-top:1rem;background:#1a1814;border:1px solid #2a2520;padding:12px;border-radius:2px;text-align:left}
.token-warning span{color:#c9a84c}
.report-header{background:#141210;border-bottom:1px solid #2a2520;padding:1.5rem;margin:-1.5rem -1.5rem 1.5rem}
.report-badge{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#4a9060;background:#0a1a10;border:1px solid #1a3020;padding:3px 10px;border-radius:2px;letter-spacing:.08em;display:inline-block;margin-bottom:.75rem}
.living-indicator{display:flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:10px;color:#4a6050;letter-spacing:.06em;margin-top:.75rem}
.living-dot{width:7px;height:7px;background:#4a9060;border-radius:50%;flex-shrink:0;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.error-msg{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#cc6666;padding:8px 0}
.success-msg{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#4a9060;padding:8px 0}
.hero{border-bottom:1px solid #2a2520;position:relative;overflow:hidden;min-height:320px;display:flex;align-items:center}
.hero-inner{max-width:900px;margin:0 auto;padding:3rem 2rem;position:relative;z-index:2;width:100%;display:flex;align-items:center;gap:3rem}
.hero-text{flex:1;min-width:0}
.hero-pistol{flex-shrink:0;width:340px;display:flex;align-items:flex-end;justify-content:flex-end;position:relative}
.hero-pistol img{width:100%;filter:drop-shadow(0 8px 32px rgba(0,0,0,0.8))}
.hero-serial-tag{position:absolute;bottom:12px;left:0;font-family:'IBM Plex Mono',monospace;font-size:9px;color:#6b6358;letter-spacing:.1em;background:#0a0908;border:1px solid #2a2520;padding:3px 8px;border-radius:2px}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#c9a84c;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.75rem}
h1{font-family:'Oswald',sans-serif;font-size:36px;font-weight:600;color:#f0ead8;line-height:1.1;margin-bottom:.75rem;letter-spacing:.02em}
h1 span{color:#c9a84c}
h2{font-family:'Oswald',sans-serif;font-size:22px;font-weight:500;color:#f0ead8;margin-bottom:1rem;letter-spacing:.02em}
h2 span{color:#c9a84c}
.hero-desc{font-size:15px;color:#a0a090;line-height:1.7;max-width:480px;margin-bottom:1.5rem}
.about-body{font-size:15px;color:#a0a090;line-height:1.8;margin-bottom:1.25rem}
.about-link{display:inline-block;margin-top:.5rem;font-family:'IBM Plex Mono',monospace;font-size:12px;color:#c9a84c;letter-spacing:.08em;border:1px solid #c9a84c44;padding:6px 14px;border-radius:2px}
.about-link:hover{background:#c9a84c18}
.divider{border:none;border-top:1px solid #2a2520;margin:2rem 0}
.foia-thanks{background:#0f0e0c;border:1px solid #2a2520;border-left:3px solid #c9a84c44;border-radius:2px;padding:1rem 1.25rem;margin-top:1.5rem}
.foia-thanks-label{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#6b6358;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.5rem}
.foia-thanks-text{font-size:14px;color:#8a8070;line-height:1.7;font-style:italic}
.mimosa-bar{background:#0a0908;border-top:1px solid #2a2520;padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between;margin-top:3rem}
.mimosa-bar-text{font-size:14px;color:#8a8070}
.mimosa-bar-text span{color:#a0a090}
footer{background:#080706;padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #1a1814}
.footer-text{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#6b6358;letter-spacing:.05em}
.footer-text a{color:#6b6358}
.footer-text a:hover{color:#9a9080}
@media(max-width:700px){
  .hero-pistol{display:none}
  .field-grid{grid-template-columns:1fr}
  .input-row{flex-direction:column}
  .cta-box{flex-direction:column;align-items:flex-start}
}

/* Admin-specific styles */
.admin-table{width:100%;border-collapse:collapse;margin-bottom:1.5rem}
.admin-table th{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#9a9080;letter-spacing:.08em;text-transform:uppercase;padding:8px 10px;text-align:left;border-bottom:1px solid #3a3530;background:#0f0e0c}
.admin-table td{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#c0b8a8;padding:8px 10px;border-bottom:1px solid #1e1c18;vertical-align:top}
.admin-table tr:hover td{background:#0f0e0c}
.badge-pending{background:#1a1410;color:#c9a84c;border:1px solid #c9a84c44;font-size:9px;padding:2px 8px;border-radius:2px;font-family:'IBM Plex Mono',monospace;letter-spacing:.08em}
.badge-reviewed{background:#0a1a10;color:#4a9060;border:1px solid #1a3020;font-size:9px;padding:2px 8px;border-radius:2px;font-family:'IBM Plex Mono',monospace;letter-spacing:.08em}
.stat-row{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:2rem}
.admin-stat{background:#0a0908;border:1px solid #2a2520;border-radius:2px;padding:.875rem 1.25rem;min-width:120px}
.admin-stat-num{font-family:'Oswald',sans-serif;font-size:22px;font-weight:600;color:#c9a84c;line-height:1;margin-bottom:4px}
.admin-stat-label{font-family:'IBM Plex Mono',monospace;font-size:9px;color:#6b6358;letter-spacing:.1em}
.nav-dropdown{position:relative}
.nav-dropdown-toggle{display:inline-block}
.nav-dropdown-menu{position:absolute;top:100%;left:0;background:#0a0908;border:1px solid #2a2520;border-radius:2px;min-width:200px;padding:6px 0;display:none;z-index:20;box-shadow:0 8px 24px rgba(0,0,0,0.5)}
.nav-dropdown:hover .nav-dropdown-menu{display:block}
.nav-dropdown-menu a{display:block;padding:8px 14px;font-size:12px;white-space:nowrap}
.nav-dropdown-menu a:hover{background:#14120f;color:#e0be6a}
.nav-dropdown-section-label{font-family:'IBM Plex Mono',monospace;font-size:9px;color:#6b6358;letter-spacing:.1em;text-transform:uppercase;padding:10px 14px 4px;border-top:1px solid #1e1c18;margin-top:4px}
.nav-dropdown-menu .nav-dropdown-section-label:first-child{border-top:none;margin-top:0;padding-top:6px}
.nav-links{flex-wrap:wrap;row-gap:8px}

.landing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:1rem}
.landing-card{background:#0a0908;border:1px solid #2a2520;border-radius:2px;padding:1.5rem;border-top:2px solid #c9a84c44;display:block;transition:border-color .15s}
.landing-card:hover{border-top-color:#c9a84c;background:#0f0d0a}
.landing-card-label{font-family:'Oswald',sans-serif;font-size:17px;font-weight:600;color:#f0ead8;letter-spacing:.02em;margin-bottom:.5rem}
.landing-card-desc{font-size:13px;color:#a0a090;line-height:1.6}
@media(max-width:700px){.landing-grid{grid-template-columns:1fr}}
.tier-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tier-card{background:#0f0e0c;border:1px solid #2a2520;border-radius:2px;padding:1.5rem 1rem;text-align:center;display:block;transition:border-color .15s}
.tier-card:hover{border-color:#c9a84c}
.tier-icon{width:56px;height:56px;object-fit:contain;margin:0 auto .75rem;display:block}
.tier-rank{font-family:'Oswald',sans-serif;font-size:13px;font-weight:600;color:#e0d8c8;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.5rem}
.tier-quip{font-family:'Source Serif 4',serif;font-size:12.5px;color:#9a9080;line-height:1.55;margin-bottom:.875rem;min-height:65px}
.tier-price{font-family:'Oswald',sans-serif;font-size:22px;font-weight:600;color:#c9a84c}
.tier-price span{font-size:12px;color:#8a8070;font-weight:400}
@media(max-width:700px){.tier-grid{grid-template-columns:1fr 1fr}}

.fact-carousel{display:flex;align-items:center;justify-content:center;gap:1.5rem;background:#0a0908;border:1px solid #2a2520;border-top:2px solid #c9a84c44;border-radius:2px;padding:2rem 1.5rem;margin-bottom:2.5rem;position:relative;min-height:160px}
.fact-card-display{text-align:center;flex:1;max-width:520px}
.fact-num{font-family:'Oswald',sans-serif;font-size:42px;font-weight:600;color:#c9a84c;line-height:1;margin-bottom:.5rem}
.fact-label{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#9a9080;letter-spacing:.1em;text-transform:uppercase;line-height:1.5;margin-bottom:.75rem}
.fact-detail{font-size:13px;color:#6b6358;line-height:1.6;font-style:italic}
.carousel-arrow{background:none;border:1px solid #2a2520;color:#c9a84c;font-size:22px;width:36px;height:36px;border-radius:2px;cursor:pointer;flex-shrink:0;line-height:1}
.carousel-arrow:hover{border-color:#c9a84c;background:#c9a84c18}
.carousel-counter{position:absolute;bottom:10px;right:16px;font-family:'IBM Plex Mono',monospace;font-size:10px;color:#6b6358;letter-spacing:.08em}
@media(max-width:700px){.fact-carousel{padding:1.5rem 1rem;gap:.75rem}.fact-num{font-size:32px}}

.video-playlist{margin-bottom:2.5rem}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.video-card{display:block;background:#0a0908;border:1px solid #2a2520;border-radius:2px;overflow:hidden;transition:border-color .15s}
.video-card:hover{border-color:#c9a84c}
.video-thumb{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#0f0e0c}
.video-card-title{font-size:13px;color:#e0d8c8;line-height:1.4;padding:.75rem .875rem}
@media(max-width:700px){.video-grid{grid-template-columns:1fr 1fr}}

.serial-suggestion{display:block;background:#c9a84c;color:#0a0908;font-family:'Oswald',sans-serif;font-size:16px;font-weight:600;text-align:center;padding:14px 18px;border-radius:2px;margin-top:1rem;letter-spacing:.02em}
.serial-suggestion:hover{background:#e0be6a}
