@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600;800&display=swap');
:root{--bg:#080808;--panel:#120000;--card:#1b0000;--red:#8b0000;--bright:#ff3333;--text:#e6e6e6;--muted:#aaa;--radius:10px;--shadow:0 0 20px rgba(139,0,0,.5)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Orbitron,Arial,sans-serif;line-height:1.65;opacity:0;transition:opacity .35s ease}body.ready{opacity:1}a{color:#ff6b6b}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-50px;left:1rem;z-index:1000;background:#fff;color:#000;padding:.65rem}.skip-link:focus{top:1rem}
.site-nav{position:sticky;top:0;z-index:50;background:rgba(18,0,0,.93);border-bottom:2px solid var(--red);padding:14px 5%;box-shadow:var(--shadow);backdrop-filter:blur(12px)}.nav-container{display:flex;align-items:center;gap:24px;max-width:1500px;margin:auto}.nav-brand{font:800 16px Orbitron;text-decoration:none;color:#fff;text-shadow:0 0 12px var(--bright)}.nav-panel{display:flex;justify-content:space-between;align-items:center;gap:24px;flex:1}.nav-panel ul{display:flex;list-style:none;gap:22px;flex-wrap:wrap}.nav-panel a{font:14px Orbitron;color:#ddd;text-decoration:none;transition:.25s}.nav-panel a:hover,.nav-panel a:focus-visible{color:var(--bright);text-shadow:0 0 12px var(--bright)}.nav-quote{font-style:italic;color:var(--muted);font-size:14px;white-space:nowrap}.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;margin-left:auto}.nav-toggle span:not(.sr-only){display:block;height:2px;background:#fff;margin:6px}
.hero{min-height:420px;display:grid;place-items:center;text-align:center;padding:55px 20px;background:linear-gradient(rgba(0,0,0,.8),rgba(40,0,0,.85));border-bottom:2px solid var(--red)}.logo{width:min(360px,75vw);margin-bottom:25px;animation:logoPulse 3s infinite}.hero h1{font:800 clamp(2rem,5vw,3rem) Orbitron;color:#fff;text-shadow:0 0 15px #900}.hero p{font-size:clamp(1rem,2vw,1.15rem);color:#ccc;margin:15px 0}@keyframes logoPulse{0%,100%{filter:drop-shadow(0 0 10px #8b0000)}50%{filter:drop-shadow(0 0 35px #f00)}}
section{padding:50px 7%;max-width:1600px;margin:auto}.title{font:800 clamp(1.45rem,3vw,1.8rem) Orbitron;text-align:center;color:var(--bright);margin-bottom:35px;text-shadow:0 0 10px #600}.dashboard-update{text-align:center;font-family:Orbitron;padding:15px;margin-bottom:30px;border-bottom:1px solid #700;color:#aaa;letter-spacing:1px;text-transform:uppercase}.dashboard-update h4{color:var(--bright);font-size:16px}.dashboard-update p{color:#fff;font-size:18px}.grid,.member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:25px}.member-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.card,.admin-card{background:linear-gradient(145deg,#1b0000,#090909);border:1px solid #700;border-radius:var(--radius);padding:25px;box-shadow:0 0 15px rgba(120,0,0,.35);transition:.3s}.card:hover{transform:translateY(-5px);box-shadow:0 0 30px rgba(255,0,0,.35)}.card h3{font-family:Orbitron;color:#fff;margin-bottom:15px}.card p{color:#ccc}.prose{max-width:1100px;margin:auto}.button{display:inline-block;padding:12px 25px;margin:10px 5px;background:var(--red);border:1px solid var(--bright);border-radius:5px;font:600 14px Orbitron;color:#fff;text-decoration:none;cursor:pointer;transition:.25s}.button:hover{background:#d00000;box-shadow:0 0 20px #d00000}.status-section{margin-top:25px}.status-title{font:600 16px Orbitron;letter-spacing:1px;margin-bottom:12px;color:#fff;text-transform:uppercase}.badge{display:inline-block;padding:8px 16px;border-radius:20px;font:600 13px Orbitron;animation:badgePulse 3s infinite}.badge-online{background:#063d1e;border:1px solid #16a34a;color:#7dffa6}.badge-construction{background:#4a2600;border:1px solid #f59e0b;color:#ffd27a}.badge-offline{background:#450606;border:1px solid #ef4444;color:#ff8a8a}.badge-rank-founder{background:rgba(181,108,255,.16);border:1px solid #B56CFF;color:#E5C2FF;box-shadow:0 0 14px rgba(139,61,255,.62)}
.badge-rank-administrator{background:rgba(255,59,59,.15);border:1px solid #FF3B3B;color:#FFB0B0;box-shadow:0 0 14px rgba(208,0,0,.58)}
.badge-rank-officer{background:rgba(255,138,42,.14);border:1px solid #FF8A2A;color:#FFD0A8;box-shadow:0 0 14px rgba(217,95,0,.55)}
.badge-rank-moderator{background:rgba(57,198,255,.13);border:1px solid #39C6FF;color:#BDEEFF;box-shadow:0 0 14px rgba(0,136,204,.55)}
.badge-rank-veteran{background:rgba(228,193,90,.14);border:1px solid #E4C15A;color:#FFF0B3;box-shadow:0 0 14px rgba(184,138,18,.52)}
.badge-rank-member{background:rgba(230,230,230,.09);border:1px solid #E6E6E6;color:#F5F5F5;box-shadow:0 0 12px rgba(138,138,138,.42)}
.badge-rank-recruit{background:rgba(143,209,106,.13);border:1px solid #8FD16A;color:#D8FFC3;box-shadow:0 0 14px rgba(77,155,47,.5)}
.badge-rank-inactive{background:rgba(119,119,119,.12);border:1px solid #777777;color:#C6C6C6;box-shadow:0 0 10px rgba(69,69,69,.45)}
.badge-rank-banned-removed{background:rgba(140,26,26,.18);border:1px solid #8C1A1A;color:#E99999;box-shadow:0 0 12px rgba(69,0,0,.62)}
/* Backward-compatible aliases for older cached templates. */
.badge-founder{background:rgba(181,108,255,.16);border:1px solid #B56CFF;color:#E5C2FF;box-shadow:0 0 14px rgba(139,61,255,.62)}.badge-rank{background:rgba(230,230,230,.09);border:1px solid #E6E6E6;color:#F5F5F5}.member-card{text-align:center}.featured-member{grid-column:1/-1;max-width:720px;justify-self:center}.member-avatar{width:150px;height:150px;object-fit:cover;border-radius:50%;border:2px solid var(--bright);box-shadow:0 0 24px rgba(255,0,0,.5);margin-bottom:18px}.member-card h3 small{display:block;color:#aaa;font-size:.72em;margin-top:5px}.member-details{margin-top:20px;text-align:left}.member-details p{margin-top:15px}.profile-label{font-family:Orbitron;color:var(--bright)}blockquote{margin-top:20px;padding-left:18px;border-left:2px solid var(--bright);font-style:italic;color:#ddd}.news-meta{color:#999;font:12px Orbitron;margin-bottom:12px}footer{text-align:center;padding:35px 20px;border-top:1px solid #700;background:#0d0000;color:#aaa}.back-to-top{position:fixed;right:20px;bottom:20px;width:44px;height:44px;border-radius:50%;border:1px solid var(--bright);background:#700;color:#fff;opacity:0;pointer-events:none;transition:.2s}.back-to-top.visible{opacity:1;pointer-events:auto}
.admin-body{opacity:1;background:#070707}.admin-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.admin-sidebar{background:#100000;border-right:1px solid #700;padding:25px 18px;position:sticky;top:0;height:100vh}.admin-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-family:Orbitron;margin-bottom:30px}.admin-brand img{width:54px;filter:drop-shadow(0 0 10px #f00)}.admin-sidebar nav{display:grid;gap:7px}.admin-sidebar nav a{padding:11px 13px;text-decoration:none;color:#ddd;border-radius:6px;font-family:Orbitron;font-size:13px}.admin-sidebar nav a:hover{background:#3a0000;color:#fff}.admin-main{padding:0 30px 40px;min-width:0}.admin-topbar{height:76px;display:flex;align-items:center;gap:20px;border-bottom:1px solid #500;margin-bottom:28px}.admin-topbar h1{font:600 25px Orbitron;flex:1}.admin-menu{display:none;background:none;border:1px solid #700;color:#fff;padding:8px}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:25px}.stat-card strong{display:block;font:800 2rem Orbitron;color:var(--bright)}.stat-card span{color:#aaa}.admin-card{margin-bottom:25px}.admin-card h2{font-family:Orbitron;margin-bottom:20px}.quick-actions{margin-top:20px}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(480px,100%);text-align:center}.admin-logo{width:180px;filter:drop-shadow(0 0 20px #f00)}.auth-card h1{font-family:Orbitron}.auth-card p{color:#aaa;margin-bottom:15px}.admin-form,.auth-card{display:grid;gap:15px}.admin-form label,.auth-card label{display:grid;gap:7px;text-align:left;color:#ccc;font-weight:bold}input,textarea,select{width:100%;background:#090909;border:1px solid #700;color:#fff;border-radius:5px;padding:11px;font:inherit}textarea{min-height:110px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.check-row{display:flex;gap:24px}.check-row label{display:flex;align-items:center}.check-row input,.admin-form label>input[type=checkbox]{width:auto}fieldset{border:1px solid #600;padding:18px;border-radius:8px}legend{font-family:Orbitron;color:var(--bright);padding:0 8px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{text-align:left;padding:12px;border-bottom:1px solid #430000}th{font-family:Orbitron;color:var(--bright)}.inline-form{display:inline}.link-danger{background:none;border:0;color:#ff6b6b;text-decoration:underline;cursor:pointer;margin-left:10px}.alert{padding:12px;border-radius:6px}.success{background:#07351b;border:1px solid #16a34a}.error{background:#3b0808;border:1px solid #ef4444}
@keyframes badgePulse{0%,100%{box-shadow:0 0 4px transparent}50%{box-shadow:0 0 12px currentColor}}
@media(max-width:1000px){.nav-toggle{display:block}.nav-panel{display:none;position:absolute;left:0;right:0;top:100%;background:#120000;border-bottom:1px solid #700;padding:20px 5%;align-items:flex-start;flex-direction:column}.nav-panel.open{display:flex}.nav-panel ul{flex-direction:column;width:100%;gap:0}.nav-panel li a{display:block;padding:12px 0;border-bottom:1px solid #320000}.nav-quote{white-space:normal}.admin-grid{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:fixed;left:-280px;z-index:100;width:260px;transition:.2s}.admin-sidebar.open{left:0}.admin-menu{display:block}}
@media(max-width:650px){section{padding:38px 18px}.hero{min-height:360px}.site-nav{padding-inline:18px}.card{padding:20px}.featured-member{grid-column:auto}.form-grid,.admin-grid{grid-template-columns:1fr}.admin-main{padding:0 16px 30px}.admin-topbar h1{font-size:20px}.check-row{flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* =========================================================
   Responsive viewport and resolution scaling
   Keeps the original KMN aesthetic while allowing the layout
   to fill phones, tablets, laptops, ultrawide and 4K displays.
   ========================================================= */
html {
  width: 100%;
  min-width: 0;
  overflow-x: hidden;
  font-size: clamp(14px, 0.2vw + 13px, 18px);
}

body {
  width: 100%;
  min-width: 0;
  overflow-x: hidden;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

.nav-container {
  width: min(100%, 1920px);
  padding-inline: clamp(0rem, 1vw, 1.25rem);
}

/* The old global section max-width also constrained the hero. */
.hero {
  width: 100%;
  max-width: none;
  min-height: clamp(360px, 52vh, 720px);
  padding: clamp(2.75rem, 6vw, 7rem) clamp(1rem, 4vw, 4rem);
}

.hero-inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.logo {
  width: clamp(180px, 16vw, 380px);
  height: auto;
}

.hero h1 {
  font-size: clamp(1.75rem, 2.2vw + 1rem, 4.25rem);
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.hero p {
  font-size: clamp(.95rem, .4vw + .85rem, 1.35rem);
}

/* Public content grows fluidly but remains readable on very wide screens. */
main > section:not(.hero) {
  width: min(calc(100% - clamp(2rem, 8vw, 10rem)), 1920px);
  max-width: 1920px;
  padding: clamp(2.25rem, 4vw, 5rem) 0;
  margin-inline: auto;
}

.title {
  font-size: clamp(1.35rem, 1.1vw + 1rem, 2.4rem);
}

.grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: clamp(1rem, 1.3vw, 1.75rem);
}

.member-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: clamp(1rem, 1.5vw, 2rem);
}

.card,
.admin-card {
  min-width: 0;
  padding: clamp(1.15rem, 1.3vw, 1.75rem);
}

.card h3,
.card p,
.member-details,
blockquote {
  overflow-wrap: anywhere;
}

.button {
  min-height: 44px;
  padding: .75rem clamp(1rem, 1.2vw, 1.75rem);
  white-space: normal;
}

/* Prevent large tables and embedded services from forcing horizontal overflow. */
.table-wrap,
.prose,
.card,
.member-card {
  max-width: 100%;
}

iframe {
  width: 100%;
  border: 0;
}

/* Large desktop / ultrawide: use the available space without oversized text. */
@media (min-width: 1800px) {
  .site-nav {
    padding-inline: max(3%, calc((100vw - 2100px) / 2));
  }

  .grid {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  }
}

/* Tablets and compact laptops. */
@media (max-width: 1000px) {
  .site-nav {
    padding-block: 10px;
  }

  .nav-container {
    padding-inline: 0;
  }

  .nav-panel {
    max-height: calc(100dvh - 64px);
    overflow-y: auto;
  }

  main > section:not(.hero) {
    width: min(calc(100% - 2.5rem), 1920px);
  }
}

/* Phones. */
@media (max-width: 650px) {
  .hero {
    min-height: min(560px, calc(100dvh - 64px));
    padding: 2.5rem 1rem;
  }

  .logo {
    width: clamp(165px, 58vw, 245px);
    margin-bottom: 1.25rem;
  }

  .hero .button {
    display: block;
    width: min(100%, 320px);
    margin: .65rem auto;
  }

  main > section:not(.hero) {
    width: calc(100% - 2rem);
    padding-block: 2.25rem;
  }

  .dashboard-update {
    padding-inline: .5rem;
  }

  .member-avatar {
    width: clamp(120px, 42vw, 165px);
    height: clamp(120px, 42vw, 165px);
  }

  .badge {
    max-width: 100%;
    white-space: normal;
    text-align: center;
  }
}

/* Very narrow devices and split-screen windows. */
@media (max-width: 380px) {
  .site-nav {
    padding-inline: 12px;
  }

  main > section:not(.hero) {
    width: calc(100% - 1.25rem);
  }

  .card,
  .admin-card {
    padding: 1rem;
  }
}

/* Orbitron typography system: regular body copy, bold headlines/subtitles. */
body, input, textarea, select, button { font-family: Orbitron, Arial, sans-serif; font-weight: 400; }
h1,h2,h3,h4,h5,h6,.title,.hero p,.nav-brand,.profile-label,.status-title,.admin-topbar h1,.admin-card h2,.auth-card h1,legend,th,label { font-family: Orbitron, Arial, sans-serif; font-weight: 800; }
p,li,td,blockquote,.nav-quote,.form-note { font-weight: 400; }
.public-form { margin-top: 1.5rem; }
.application-card { max-width: 1000px; margin-inline: auto; }
.form-note { color: var(--muted); margin-bottom: 1rem; }
.button-small { padding: .45rem .7rem; min-height: 36px; font-size: .72rem; margin: .2rem; }
.application-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem; }
@media(max-width:650px){.public-form .form-grid{grid-template-columns:1fr}.application-actions{flex-direction:column;align-items:stretch}.application-actions .button,.application-actions .link-danger{width:100%;margin:.2rem 0}}

/* =========================================================
   Larger responsive member portraits
   Scales with the viewport while preserving a sensible limit.
   ========================================================= */
.member-avatar {
  width: clamp(160px, 15vw, 235px);
  height: clamp(160px, 15vw, 235px);
  aspect-ratio: 1;
  display: block;
  margin-inline: auto;
}
.featured-member .member-avatar {
  width: clamp(195px, 18vw, 295px);
  height: clamp(195px, 18vw, 295px);
}
@media (max-width: 650px) {
  .member-avatar,
  .featured-member .member-avatar {
    width: clamp(145px, 50vw, 220px);
    height: clamp(145px, 50vw, 220px);
  }
}

/* =========================================================
   Network News
   Update-log styling that matches the existing red aesthetic.
   ========================================================= */
.blog-heading { max-width: 980px; margin: 0 auto clamp(1.75rem, 4vw, 3rem); text-align: center; }
.blog-eyebrow { color: var(--bright); font-weight: 800; text-transform: uppercase; letter-spacing: .16em; font-size: .75rem; }
.blog-intro { color: var(--muted); max-width: 800px; margin: -1rem auto 0; }
.blog-list { display: grid; gap: clamp(1.25rem, 2vw, 2rem); max-width: 1120px; margin-inline: auto; }
.blog-post { position: relative; overflow: hidden; padding: clamp(1.35rem, 3vw, 2.5rem); }
.blog-post::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: linear-gradient(var(--bright), #700); box-shadow: 0 0 18px rgba(255,0,0,.65); }
.blog-post-header { padding-bottom: 1.15rem; margin-bottom: 1.25rem; border-bottom: 1px solid #5a0000; }
.blog-post-header h2 { margin: .8rem 0 .45rem; font-size: clamp(1.35rem, 2.2vw, 2rem); line-height: 1.25; color: #fff; }
.blog-meta-row { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem; }
.blog-category,.blog-version,.blog-status { display: inline-flex; align-items: center; min-height: 30px; padding: .35rem .65rem; border-radius: 999px; font-size: .68rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.blog-category { background: rgba(255,51,51,.12); border: 1px solid #a30000; color: #ff9999; }
.blog-version { background: rgba(181,108,255,.12); border: 1px solid #8b3dff; color: #e5c2ff; }
.blog-status { background: rgba(230,230,230,.07); border: 1px solid #777; color: #eee; box-shadow: 0 0 12px rgba(220,220,220,.12); }
.blog-status.news-status-published { background: rgba(34,197,94,.12); border-color: #22c55e; color: #8dffad; box-shadow: 0 0 14px rgba(34,197,94,.35); }
.blog-status.news-status-ongoing { background: rgba(14,165,233,.12); border-color: #0ea5e9; color: #8edcff; box-shadow: 0 0 14px rgba(14,165,233,.35); }
.blog-status.news-status-construction { background: rgba(234,179,8,.13); border-color: #eab308; color: #ffe57a; box-shadow: 0 0 14px rgba(234,179,8,.35); }
.blog-status.news-status-planned { background: rgba(249,115,22,.14); border-color: #f97316; color: #ffb176; box-shadow: 0 0 14px rgba(249,115,22,.42); }
.blog-status.news-status-development { background: rgba(168,85,247,.13); border-color: #a855f7; color: #d9a8ff; box-shadow: 0 0 14px rgba(168,85,247,.38); }
.blog-status.news-status-operational { background: rgba(20,184,166,.13); border-color: #14b8a6; color: #8affef; box-shadow: 0 0 14px rgba(20,184,166,.36); }
.blog-status.news-status-expanding { background: rgba(236,72,153,.13); border-color: #ec4899; color: #ff9dca; box-shadow: 0 0 14px rgba(236,72,153,.38); }
.blog-status.news-status-default { background: rgba(148,163,184,.1); border-color: #64748b; color: #d8e0eb; box-shadow: 0 0 12px rgba(148,163,184,.2); }
.blog-date { color: #999; font-size: .76rem; }
.blog-excerpt { color: #fff !important; font-weight: 600; font-size: clamp(1rem, .35vw + .95rem, 1.18rem); margin-bottom: 1.25rem; }
.blog-content { color: #ccc; white-space: normal; line-height: 1.85; overflow-wrap: anywhere; }
.blog-empty { max-width: 760px; margin-inline: auto; text-align: center; }
@media (max-width: 650px) {
  .blog-post { padding-left: 1.35rem; }
  .blog-meta-row { align-items: flex-start; }
  .blog-category,.blog-version,.blog-status { white-space: normal; text-align: center; }
}

/* News images and live status monitor */
.news-post-image {
  display: block;
  width: 100%;
  max-height: clamp(260px, 42vw, 620px);
  object-fit: cover;
  object-position: center;
  border: 1px solid rgba(255, 0, 0, .65);
  border-radius: 10px;
  margin-bottom: 1.4rem;
}
.admin-image-preview { display: grid; gap: .75rem; justify-items: start; }
.admin-image-preview img { width: min(100%, 420px); max-height: 260px; object-fit: cover; border: 1px solid #8d0000; border-radius: 8px; }
.admin-table-thumb { width: 72px; height: 48px; object-fit: cover; border: 1px solid #720000; border-radius: 5px; }
.status-monitor-card { min-width: 0; }
.monitor-list { display: grid; gap: .85rem; margin-top: 1rem; }
.monitor-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .8rem; border-top: 1px solid rgba(255,0,0,.22); }
.monitor-row > span:first-child { font-family: 'Orbitron', sans-serif; font-weight: 700; overflow-wrap: anywhere; }
.monitor-row .badge { flex: 0 0 auto; }
.monitor-empty { margin-top: 1rem; opacity: .72; }
.admin-form small { display: block; margin-top: .45rem; opacity: .7; }
@media (max-width: 480px) {
  .monitor-row { align-items: flex-start; flex-direction: column; }
}


/* Manual 16:9 news image cropper */
.news-cropper { margin: 1rem 0 1.5rem; padding: clamp(1rem, 2vw, 1.4rem); border: 1px solid #7f0000; border-radius: 10px; background: rgba(30,0,0,.55); }
.cropper-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.cropper-heading h3 { margin: 0 0 .4rem; }
.crop-stage { position: relative; width: 100%; aspect-ratio: 16 / 9; max-height: 560px; overflow: hidden; background: #050505; border: 1px solid #a00000; border-radius: 8px; cursor: grab; touch-action: none; user-select: none; }
.crop-stage.is-dragging { cursor: grabbing; }
.crop-stage > img { position: absolute; inset: 0 auto auto 0; max-width: none; pointer-events: none; transform-origin: top left; }
.crop-grid { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(to right, transparent 33.1%, rgba(255,255,255,.25) 33.2%, rgba(255,255,255,.25) 33.6%, transparent 33.7%, transparent 66.3%, rgba(255,255,255,.25) 66.4%, rgba(255,255,255,.25) 66.8%, transparent 66.9%), linear-gradient(to bottom, transparent 33.1%, rgba(255,255,255,.25) 33.2%, rgba(255,255,255,.25) 33.6%, transparent 33.7%, transparent 66.3%, rgba(255,255,255,.25) 66.4%, rgba(255,255,255,.25) 66.8%, transparent 66.9%); box-shadow: inset 0 0 0 2px rgba(0,0,0,.45); }
.crop-controls { display: grid; grid-template-columns: minmax(220px, 1fr) auto; align-items: end; gap: 1rem; margin-top: 1rem; }
.crop-controls label { margin: 0; }
.crop-controls input[type="range"] { width: 100%; accent-color: #d40000; }
.crop-buttons { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .45rem; }
@media (max-width: 650px) { .cropper-heading, .crop-controls { grid-template-columns: 1fr; display: grid; } .crop-buttons { justify-content: stretch; } .crop-buttons .button { flex: 1 1 140px; } }


/* Polished platform features */
html{scroll-behavior:smooth}.reveal-on-scroll{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal-on-scroll.is-visible{opacity:1;transform:none}
.live-status-strip{display:flex;flex-direction:column;align-items:center;gap:1.15rem;border:1px solid #7d0000;background:#0b0202;padding:1.35rem 1.25rem;margin:1rem auto 2rem;max-width:1500px;text-align:center}.status-strip-label{width:100%;font-weight:700;color:#ff3535;letter-spacing:.08em;white-space:nowrap}.status-strip-items{width:100%;display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:.85rem 1rem}.status-strip-item{display:flex;align-items:center;justify-content:center;gap:.65rem;flex:0 1 210px;min-width:170px;max-width:260px;padding:.7rem .9rem;border:1px solid rgba(150,0,0,.65);background:rgba(18,2,2,.72);text-align:left}.status-strip-copy{display:flex;flex-direction:column;gap:.15rem;min-width:0}.status-strip-copy strong{font-size:.82rem;line-height:1.2}.status-strip-copy>span{font-size:.68rem;line-height:1.25;opacity:.9}.status-dot{width:.7rem;height:.7rem;flex:0 0 .7rem;border-radius:50%;display:inline-block}.status-dot.badge-online{background:#28ff48;box-shadow:0 0 10px #28ff48}.status-dot.badge-construction{background:#ffae00;box-shadow:0 0 10px #ffae00}.status-dot.badge-offline{background:#ff3030;box-shadow:0 0 10px #ff3030}
.featured-news-banner{max-width:1500px;margin:2rem auto;display:grid;grid-template-columns:minmax(260px,42%) 1fr;border:1px solid #c00000;background:#130303;overflow:hidden}.featured-news-banner img{width:100%;height:100%;min-height:300px;object-fit:cover}.featured-news-banner>div{padding:clamp(1.4rem,4vw,3rem);align-self:center}.blog-featured{display:inline-block;border:1px solid #ff3030;color:#ff5a5a;padding:.3rem .6rem;font-weight:700;letter-spacing:.08em}.latest-news-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid #8f0000;margin:-1.55rem -1.55rem 1.2rem;width:calc(100% + 3.1rem);max-width:none}
.monitor-row-detailed>div{display:flex;flex-direction:column;gap:.25rem}.monitor-row-detailed small{opacity:.72}.member-avatar-link{display:block}.member-card{transition:transform .2s ease,border-color .2s ease}.member-card:hover{transform:translateY(-4px);border-color:#ff3434}.member-profile-card{padding:0;overflow:hidden}.member-banner{width:100%;aspect-ratio:4/1;object-fit:cover;border-bottom:1px solid #9d0000}.member-profile-layout{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:2rem;padding:clamp(1.2rem,4vw,3rem)}.member-profile-avatar{width:100%;aspect-ratio:1/1;object-fit:cover;border:2px solid #c00000;box-shadow:0 0 25px rgba(255,0,0,.25)}.social-links{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.2rem}
.rich-content h2,.rich-content h3,.rich-content h4{margin-top:1.5em}.rich-content a{color:#ff5d5d}.rich-content pre,.rich-content code{font-family:monospace;background:#060606;border:1px solid #392020}.rich-content pre{padding:1rem;overflow:auto}.news-image-button,.lightbox-trigger{border:0;background:none;padding:0;cursor:zoom-in;width:100%}.news-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}.news-gallery img{width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid #820000}.news-gallery figcaption{font-size:.8rem;opacity:.75;margin-top:.4rem}.image-lightbox{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.92);display:grid;place-items:center;padding:3rem}.image-lightbox[hidden]{display:none}.image-lightbox img{max-width:95vw;max-height:90vh;object-fit:contain}.lightbox-close{position:absolute;right:1rem;top:.5rem;font-size:3rem;color:#fff;background:none;border:0;cursor:pointer}
.editor-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;border:1px solid #650000;border-bottom:0;padding:.5rem;background:#090202}.editor-toolbar button{background:#1b0505;color:#fff;border:1px solid #750000;padding:.45rem .7rem;cursor:pointer}.rich-editor{min-height:320px;border:1px solid #750000;background:#080202;color:#fff;padding:1rem;line-height:1.7}.admin-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.admin-gallery img{width:100%;aspect-ratio:16/10;object-fit:cover}.featured-post{border-color:#ff3636;box-shadow:0 0 24px rgba(255,0,0,.13)}
@media(max-width:760px){.featured-news-banner,.member-profile-layout{grid-template-columns:1fr}.live-status-strip{padding:1.1rem .75rem}.status-strip-items{gap:.65rem}.status-strip-item{flex:1 1 160px;min-width:145px}.featured-news-banner img{min-height:190px}.image-lightbox{padding:1rem}}


/* Fluxer onboarding and member profile refinements */
.application-steps{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,0,0,.35)}
.application-steps ol{margin:1rem 0 1.25rem;padding-left:1.5rem}
.application-steps li{margin:.55rem 0}
.member-profile-heading{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;margin-bottom:1.35rem}
.member-profile-heading h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.05;margin:0}
.member-profile-information>p{display:grid;grid-template-columns:minmax(150px,240px) 1fr;gap:1rem;padding:.9rem 0;margin:0;border-bottom:1px solid rgba(255,0,0,.28)}
.member-profile-information>p strong{color:var(--bright);font-family:Orbitron,sans-serif;font-weight:700}
@media(max-width:700px){.member-profile-information>p{grid-template-columns:1fr;gap:.3rem}.member-profile-heading h2{font-size:clamp(1.8rem,9vw,2.6rem)}}

/* Proper month/year history timeline */
.history-intro{max-width:900px;margin:-.5rem auto 2.5rem;text-align:center;color:var(--muted);line-height:1.8}
.history-timeline{position:relative;max-width:1300px;margin:0 auto;display:grid;gap:2rem}
.history-timeline::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translateX(-50%);background:linear-gradient(transparent,#d00000 5%,#d00000 95%,transparent);box-shadow:0 0 14px rgba(255,0,0,.5)}
.timeline-chapter{position:relative;width:calc(50% - 2.5rem)}
.timeline-left{justify-self:start}.timeline-right{justify-self:end}
.timeline-marker{position:absolute;top:2rem;width:18px;height:18px;border-radius:50%;background:#070707;border:3px solid #ff3030;box-shadow:0 0 16px #ff2020;z-index:2}
.timeline-left .timeline-marker{right:-3.05rem}.timeline-right .timeline-marker{left:-3.05rem}
.timeline-card{padding:0;overflow:hidden}
.timeline-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid #9b0000}
.timeline-content{padding:clamp(1.2rem,2.5vw,2rem)}
.timeline-date{display:inline-flex;padding:.35rem .65rem;border:1px solid #a00000;border-radius:999px;background:rgba(255,0,0,.08);color:#ff5555;font-weight:800;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.timeline-content h3{font-size:clamp(1.2rem,2vw,1.7rem);margin:.9rem 0 .7rem}.timeline-content p{margin:0;color:#d8d8d8;line-height:1.8}
@media(max-width:800px){.history-timeline{padding-left:2.25rem}.history-timeline::before{left:.65rem;transform:none}.timeline-chapter{width:100%;justify-self:stretch}.timeline-left .timeline-marker,.timeline-right .timeline-marker{left:-2.15rem;right:auto}.timeline-card{width:100%}}

/* Expandable history chapters */
.timeline-expandable{padding:0;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}
.timeline-expandable[open]{border-color:#ff2525;box-shadow:0 0 24px rgba(255,0,0,.16)}
.timeline-summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:clamp(1.2rem,2.5vw,2rem);cursor:pointer;list-style:none;user-select:none}
.timeline-summary::-webkit-details-marker{display:none}
.timeline-summary::marker{display:none;content:""}
.timeline-summary:focus-visible{outline:2px solid #ff4040;outline-offset:-5px}
.timeline-summary-copy{min-width:0}
.timeline-summary h3{font-size:clamp(1.2rem,2vw,1.7rem);margin:.9rem 0 .65rem}
.timeline-preview{margin:0;color:#d8d8d8;line-height:1.7;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.timeline-expand-label{display:inline-flex;margin-top:1rem;color:#ff5d5d;font-family:Orbitron,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.timeline-expand-label-open{display:none}
.timeline-expandable[open] .timeline-expand-label-closed{display:none}
.timeline-expandable[open] .timeline-expand-label-open{display:inline}
.timeline-chevron{flex:0 0 auto;width:18px;height:18px;border-right:2px solid #ff4545;border-bottom:2px solid #ff4545;transform:rotate(45deg);transition:transform .2s ease;margin-right:.35rem}
.timeline-expandable[open] .timeline-chevron{transform:rotate(225deg)}
.timeline-expanded-content{border-top:1px solid rgba(255,0,0,.35);animation:timelineReveal .22s ease-out}
.timeline-expanded-content .timeline-content{padding:clamp(1.2rem,2.5vw,2rem)}
.timeline-expanded-content .timeline-content p{margin:0;color:#e1e1e1;line-height:1.9}
.timeline-expanded-content .timeline-image{border-bottom:1px solid #9b0000}
@keyframes timelineReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.timeline-expandable,.timeline-chevron,.timeline-expanded-content{transition:none;animation:none}}

/* About Us member portraits: compact team overview; profile page sizes remain unchanged. */
.member-card .member-avatar { margin-bottom: 14px; }
.member-card .member-avatar-link { margin-bottom: 0; }


/* Compact Notable Members grid: profile details remain on individual member pages. */
.notable-members-section{max-width:1600px}
.member-grid-compact{
  grid-template-columns:repeat(auto-fit,minmax(220px,280px));
  justify-content:center;
  align-items:stretch;
  gap:clamp(24px,3vw,42px);
}
.member-card-compact,
.member-card-compact.featured-member{
  grid-column:auto;
  width:100%;
  max-width:280px;
  min-height:360px;
  padding:26px 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:inherit;
  text-decoration:none;
}
.member-card-compact .member-avatar{
  width:clamp(170px,15vw,220px);
  height:clamp(170px,15vw,220px);
  margin:0 0 18px;
}
.member-card-compact h3{
  margin:0 0 14px;
  font-size:clamp(1rem,1.5vw,1.25rem);
}
.member-card-compact .badge{margin:0}
@media (max-width:600px){
  .member-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .member-card-compact,
  .member-card-compact.featured-member{min-height:0;max-width:none;padding:18px 10px}
  .member-card-compact .member-avatar{width:min(34vw,150px);height:min(34vw,150px);margin-bottom:14px}
  .member-card-compact h3{font-size:.92rem;margin-bottom:10px}
  .member-card-compact .badge{padding:6px 10px;font-size:10px}
}
@media (max-width:380px){
  .member-grid-compact{grid-template-columns:1fr}
  .member-card-compact .member-avatar{width:150px;height:150px}
}

/* Network Control refinement */
.admin-body { background: #050505; }
.admin-shell { grid-template-columns: 238px minmax(0, 1fr); }
.admin-sidebar {
  padding: 20px 14px;
  background: linear-gradient(180deg, #160202 0%, #0b0000 58%, #070000 100%);
  border-right-color: #8b0000;
  overflow-y: auto;
}
.admin-brand { margin: 0 4px 24px; padding: 0 4px 18px; border-bottom: 1px solid #4c1111; }
.admin-brand img { width: 46px; height: 46px; object-fit: contain; }
.admin-brand span { display: grid; line-height: 1.15; }
.admin-brand strong { font-size: 15px; }
.admin-brand small { color: #a8a8a8; font-size: 12px; margin-top: 3px; }
.admin-nav { display: grid; gap: 18px; }
.admin-nav-group { display: grid; gap: 4px; }
.admin-nav-label {
  padding: 0 11px 6px;
  color: #9b7070;
  font: 800 10px Orbitron, sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.admin-sidebar .admin-nav a {
  position: relative;
  padding: 10px 12px;
  border: 1px solid transparent;
  color: #cfcfcf;
  border-radius: 7px;
  font-size: 12px;
}
.admin-sidebar .admin-nav a:hover { background: #260404; border-color: #5f1111; }
.admin-sidebar .admin-nav a.active {
  color: #fff;
  background: linear-gradient(90deg, #5a0707, #260303);
  border-color: #9b1515;
  box-shadow: inset 3px 0 0 #ff3030, 0 0 16px rgba(180,0,0,.12);
}
.admin-nav-utility { margin-top: 2px; padding-top: 16px; border-top: 1px solid #3d0b0b; }
.admin-main { padding: 0 28px 48px; }
.admin-topbar {
  min-height: 82px;
  height: auto;
  margin-bottom: 26px;
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(5,5,5,.94);
  backdrop-filter: blur(10px);
}
.admin-page-heading { display: grid; gap: 3px; flex: 1; }
.admin-eyebrow { color: #a86464; font: 800 9px Orbitron, sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.admin-topbar h1 { margin: 0; font-size: clamp(20px, 2vw, 27px); }
.admin-user { border: 1px solid #5b1717; background: #160404; color: #d7baba; border-radius: 999px; padding: 7px 12px; font: 700 11px Orbitron, sans-serif; }
.admin-content { width: min(1380px, 100%); margin: 0 auto; }
.admin-card {
  padding: clamp(20px, 2.4vw, 32px);
  border-color: #671010;
  background: linear-gradient(145deg, rgba(31,3,3,.94), rgba(8,8,8,.98));
  box-shadow: 0 12px 36px rgba(0,0,0,.24);
}
.admin-card h2 { font-size: clamp(17px, 1.8vw, 22px); padding-bottom: 14px; border-bottom: 1px solid #481010; }
.admin-form { gap: 20px; }
.admin-form label, .auth-card label { gap: 8px; color: #e2d4d4; font-size: 12px; }
.form-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px 20px; }
input, textarea, select { border-color: #721111; background: #080808; padding: 12px 13px; }
input:focus, textarea:focus, select:focus, .rich-editor:focus { outline: 2px solid rgba(255,48,48,.28); outline-offset: 1px; border-color: #da3030; }
textarea { line-height: 1.6; }
.editor-toolbar { border-radius: 7px 7px 0 0; padding: .65rem; gap: .45rem; }
.editor-toolbar button { min-width: 38px; border-radius: 4px; }
.rich-editor { border-radius: 0 0 7px 7px; min-height: 270px; }
.check-row { padding: 14px 16px; border: 1px solid #481010; background: #0b0505; border-radius: 7px; flex-wrap: wrap; }
.admin-form > .button { justify-self: start; min-width: 180px; margin-left: 0; }
.table-wrap { border: 1px solid #481010; border-radius: 8px; }
th { background: #160505; }
th, td { padding: 14px 16px; }
tbody tr:hover { background: rgba(105,10,10,.12); }
.admin-grid { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.stat-card { min-height: 128px; display: grid; align-content: center; }

@media (max-width: 1000px) {
  .admin-shell { grid-template-columns: 1fr; }
  .admin-main { padding-inline: 20px; }
  .admin-sidebar { width: 248px; left: -270px; }
}
@media (max-width: 720px) {
  .admin-main { padding-inline: 14px; }
  .admin-topbar { min-height: 70px; gap: 12px; }
  .admin-user, .admin-eyebrow { display: none; }
  .form-grid { grid-template-columns: 1fr; }
  .admin-card { padding: 18px; }
  .admin-form > .button { width: 100%; }
}

/* Always-visible, consistently cropped timeline visuals */
.timeline-summary{display:block;padding:0}
.timeline-summary-row{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:clamp(1.2rem,2.5vw,2rem)}
.timeline-image-visible{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid #9b0000;background:#080808}
.timeline-cropper .crop-status{color:#72ff8f;font-family:Orbitron,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
@media(max-width:620px){.timeline-summary-row{align-items:flex-start}.timeline-chevron{margin-top:.6rem}}


/* Timeline visual layout and non-distorting image presentation */
.timeline-summary-layout{display:grid;grid-template-columns:1fr;min-width:0}
.timeline-summary-layout.has-timeline-image{grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);align-items:stretch}
.timeline-summary-row{min-width:0;height:100%;align-items:center}
.timeline-visual{position:relative;min-height:100%;overflow:hidden;background:#080808;border-left:1px solid #9b0000}
.timeline-visual::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 24px rgba(0,0,0,.42)}
.timeline-image-visible{display:block;width:100%;height:100%;min-height:220px;aspect-ratio:auto;object-fit:cover;object-position:center;border:0;background:#080808}
.timeline-right .timeline-summary-layout.has-timeline-image{grid-template-columns:minmax(260px,.95fr) minmax(0,1.05fr)}
.timeline-right .timeline-visual{grid-column:1;grid-row:1;border-left:0;border-right:1px solid #9b0000}
.timeline-right .timeline-summary-row{grid-column:2;grid-row:1}
@media(max-width:1050px){
  .timeline-summary-layout.has-timeline-image,.timeline-right .timeline-summary-layout.has-timeline-image{grid-template-columns:1fr}
  .timeline-right .timeline-visual,.timeline-visual{grid-column:1;grid-row:1;border-left:0;border-right:0;border-bottom:1px solid #9b0000}
  .timeline-right .timeline-summary-row,.timeline-summary-row{grid-column:1;grid-row:2}
  .timeline-image-visible{width:100%;height:auto;aspect-ratio:16/9;min-height:0;object-fit:cover}
}

/* Stacked history cards: text first, undistorted 16:9 image below */
.timeline-stacked-card{padding:0;overflow:hidden}
.timeline-stacked-card .timeline-expandable{display:block}
.timeline-stacked-card .timeline-summary{display:block;padding:0}
.timeline-stacked-card .timeline-summary-row{padding:clamp(1.35rem,3vw,2.25rem);align-items:center}
.timeline-stacked-card .timeline-expanded-content{border-top:1px solid rgba(155,0,0,.55)}
.timeline-image-button{display:block;width:100%;padding:0;border:0;border-top:1px solid #9b0000;background:#080808;cursor:zoom-in;text-align:left}
.timeline-image-frame{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:#050505}
.timeline-image-frame .timeline-image-visible{display:block;width:100%;height:100%;min-height:0;aspect-ratio:auto;object-fit:cover;object-position:center;border:0;transition:transform .25s ease,filter .25s ease}
.timeline-image-button:hover .timeline-image-visible,.timeline-image-button:focus-visible .timeline-image-visible{transform:scale(1.015);filter:brightness(1.08)}
.timeline-image-zoom{position:absolute;right:1rem;bottom:1rem;display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid #ff2d2d;border-radius:50%;background:rgba(0,0,0,.78);color:#fff;font:700 1.4rem/1 Arial,sans-serif;box-shadow:0 0 18px rgba(255,0,0,.25)}

.timeline-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:clamp(1rem,3vw,3rem);background:rgba(0,0,0,.92);backdrop-filter:blur(6px)}
.timeline-modal[hidden]{display:none}
.timeline-modal-panel{position:relative;width:min(1180px,96vw);max-height:92vh;overflow:auto;border:1px solid #b60000;border-radius:10px;background:linear-gradient(145deg,#100303,#050505 55%);box-shadow:0 0 45px rgba(150,0,0,.28)}
.timeline-modal-close{position:absolute;z-index:2;top:.65rem;right:1rem;border:0;background:transparent;color:#ff3b3b;font:300 2.7rem/1 Arial,sans-serif;cursor:pointer}
.timeline-modal-header{padding:1.5rem 4rem 1.25rem 1.75rem;border-bottom:1px solid #5e0b0b}
.timeline-modal-header h2{margin:.35rem 0 0;font-size:clamp(1.45rem,3vw,2.25rem)}
.timeline-modal-date{color:#ff4545;font-family:Orbitron,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.timeline-modal-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:0}
.timeline-modal-image-wrap{display:grid;place-items:center;min-height:320px;padding:1rem;background:#020202;border-right:1px solid #4b0a0a}
.timeline-modal-image-wrap img{display:block;max-width:100%;max-height:68vh;width:auto;height:auto;object-fit:contain}
.timeline-modal-copy{padding:clamp(1.4rem,3vw,2.25rem)}
.timeline-modal-copy h3{margin-top:0}
.timeline-modal-copy p{white-space:pre-line;line-height:1.75;color:#ddd}
body.timeline-modal-open{overflow:hidden}
@media(max-width:800px){.timeline-modal-body{grid-template-columns:1fr}.timeline-modal-image-wrap{min-height:0;border-right:0;border-bottom:1px solid #4b0a0a}.timeline-modal-image-wrap img{max-height:55vh}.timeline-modal{padding:.6rem}}


/* Timeline summary, true 16:9 crop, and image-only full preview */
.timeline-stacked-card .timeline-image-frame{aspect-ratio:16/9}
.timeline-stacked-card .timeline-image-visible{width:100%;height:100%;object-fit:cover;object-position:center}
.timeline-image-only-panel{width:min(1400px,96vw);max-height:94vh;overflow:auto;padding:3.25rem 1rem 1rem}
.timeline-image-only-panel .timeline-modal-image-wrap{display:flex;align-items:center;justify-content:center;min-height:0;padding:0;border:0;background:#020202}
.timeline-image-only-panel .timeline-modal-image-wrap img{display:block;width:auto;height:auto;max-width:100%;max-height:78vh;object-fit:contain}
.timeline-modal-alt{margin:0;padding:1rem 1.25rem;text-align:center;color:#ddd;line-height:1.6;border-top:1px solid #4b0a0a;white-space:pre-wrap}
@media(max-width:700px){.timeline-image-only-panel{padding:3rem .5rem .5rem}.timeline-image-only-panel .timeline-modal-image-wrap img{max-height:70vh}}


/* Definitive timeline image fix: never distort or crop the preview image. */
.timeline-stacked-card .timeline-image-frame {
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #020202;
}
.timeline-stacked-card .timeline-image-frame .timeline-image-visible {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  aspect-ratio: auto !important;
}
.timeline-image-button:hover .timeline-image-visible,
.timeline-image-button:focus-visible .timeline-image-visible {
  transform: none;
}


/* =========================================================
   Global editorial image ratio fix + news category filters
   Croppers must remain a real 16:9 viewport at every width.
   ========================================================= */
.news-cropper .crop-stage,
.timeline-cropper .crop-stage {
  width: min(100%, 995.5556px);
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  margin-inline: auto;
}

/* Editorial images show their entire bitmap without distortion. */
.news-image-button {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #020202;
  border: 1px solid rgba(255,0,0,.65);
  border-radius: 10px;
  margin-bottom: 1.4rem;
}
.news-post-image {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
}
.featured-news-media,
.latest-news-media,
.news-gallery .lightbox-trigger,
.admin-image-preview {
  background: #020202;
}
.featured-news-media {
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #7f0000;
}
.featured-news-banner .featured-news-media img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 520px;
  object-fit: contain !important;
}
.latest-news-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% + 3.1rem);
  margin: -1.55rem -1.55rem 1.2rem;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-bottom: 1px solid #8f0000;
}
.latest-news-card .latest-news-media img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: contain !important;
  border: 0;
}
.news-gallery .lightbox-trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 1px solid #820000;
}
.news-gallery img,
.admin-gallery img,
.admin-image-preview img,
.admin-table-thumb {
  object-fit: contain !important;
  background: #020202;
}
.news-gallery img {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  border: 0;
}
.admin-image-preview img {
  width: min(100%, 520px);
  height: auto;
  max-height: 360px;
}

.news-category-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .65rem;
  max-width: 1120px;
  margin: 0 auto clamp(1.5rem,3vw,2.5rem);
}
.news-category-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: .55rem .85rem;
  border: 1px solid #7d1111;
  border-radius: 999px;
  background: #110404;
  color: #d8caca;
  font-family: Orbitron,sans-serif;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  transition: border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
}
.news-category-filter:hover,
.news-category-filter:focus-visible,
.news-category-filter.active {
  border-color: #ff3030;
  background: rgba(160,0,0,.24);
  color: #fff;
  box-shadow: 0 0 16px rgba(255,0,0,.18);
}
a.blog-category { text-decoration: none; }

@media (max-width: 760px) {
  .featured-news-banner { grid-template-columns: 1fr; }
  .featured-news-media { min-height: 0; aspect-ratio: 16/9; border-right: 0; border-bottom: 1px solid #7f0000; }
  .news-category-filters { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: .35rem; }
  .news-category-filter { flex: 0 0 auto; }
}


/* About motto, logo, and network facts */
.about-motto-card{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;padding:clamp(1.5rem,4vw,3rem);background:radial-gradient(circle at 78% 50%,rgba(140,0,0,.12),transparent 38%),linear-gradient(145deg,#120303,#070707 58%)}
.about-motto-card.has-logo{grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr)}
.about-motto-copy{min-width:0}
.about-motto-kicker{margin:0 0 .75rem;color:#ff4545;font:700 .76rem/1.4 Orbitron,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.about-motto-quote{margin:0;padding:0;border:0;color:#fff;font:700 clamp(1.7rem,4vw,3.2rem)/1.18 Orbitron,sans-serif;text-shadow:0 0 18px rgba(255,35,35,.28)}
.about-motto-meaning{margin:.85rem 0 0;color:#ff6565;font:600 clamp(1rem,2vw,1.3rem)/1.5 Orbitron,sans-serif}
.about-motto-description{max-width:760px;margin:1.25rem 0 0;color:#d8d8d8;line-height:1.85}
.about-motto-logo{margin:0;text-align:center}
.about-motto-logo img{display:block;width:min(100%,360px);max-height:360px;margin:0 auto;object-fit:contain;filter:drop-shadow(0 0 24px rgba(255,0,0,.36))}
.about-motto-logo figcaption{margin-top:1rem;color:var(--muted);font-size:.8rem;line-height:1.6}
.network-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.75rem 0 0}
.network-facts div{padding:1rem;border:1px solid rgba(255,0,0,.38);border-radius:8px;background:rgba(0,0,0,.34)}
.network-facts dt{color:#ff5555;font:700 .68rem/1.4 Orbitron,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.network-facts dd{margin:.4rem 0 0;color:#fff;font:700 1rem/1.4 Orbitron,sans-serif}
.about-logo-preview img{max-width:260px;max-height:220px;object-fit:contain;background:#050505}
@media(max-width:850px){.about-motto-card.has-logo{grid-template-columns:1fr}.about-motto-logo{order:-1}.about-motto-logo img{max-height:260px}.network-facts{grid-template-columns:1fr}}

/* Game server and cloud storage administration/public cards */
.service-detail-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.service-detail-card{display:flex;flex-direction:column;gap:18px}.service-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.service-card-top h3{margin:5px 0 0}.service-kicker{display:block;color:#ff6b6b;font:700 10px Orbitron,sans-serif;letter-spacing:.12em;text-transform:uppercase}.service-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.service-specs div{border:1px solid #4d1111;background:rgba(20,2,2,.7);padding:11px 12px;border-radius:6px}.service-specs dt{color:#a86b6b;font:700 9px Orbitron,sans-serif;letter-spacing:.1em;text-transform:uppercase}.service-specs dd{margin:5px 0 0;color:#f1e7e7;overflow-wrap:anywhere}.service-detail-card>.button{align-self:flex-start;margin-top:auto}.blog-status.news-status-online{background:rgba(34,197,94,.12);border-color:#22c55e;color:#8dffad;box-shadow:0 0 14px rgba(34,197,94,.35)}.blog-status.news-status-maintenance{background:rgba(245,158,11,.13);border-color:#f59e0b;color:#ffd27a;box-shadow:0 0 14px rgba(245,158,11,.35)}.blog-status.news-status-degraded{background:rgba(234,88,12,.14);border-color:#ea580c;color:#ffb083;box-shadow:0 0 14px rgba(234,88,12,.38)}.blog-status.news-status-offline,.blog-status.news-status-incident{background:rgba(239,68,68,.13);border-color:#ef4444;color:#ff9b9b;box-shadow:0 0 14px rgba(239,68,68,.38)}
@media(max-width:650px){.service-card-top{flex-direction:column}.service-specs{grid-template-columns:1fr}}


/* Selectable multi-role members and About role glossary */
.member-role-selector{grid-column:1/-1}.role-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.role-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid #5b1111;border-radius:7px;background:#080303;cursor:pointer}.role-checkbox:hover{border-color:#e22;box-shadow:0 0 14px rgba(255,0,0,.12)}.role-checkbox input{width:auto;margin-top:.2rem}.role-checkbox span{display:grid;gap:.35rem}.role-checkbox small{color:#9f8d8d;line-height:1.5}.member-profile-roles{margin:1rem 0}.member-role-badges{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.55rem}.member-role-badge{display:inline-flex;align-items:center;padding:.5rem .72rem;border:1px solid #777;border-radius:999px;background:rgba(100,100,100,.12);font:700 .68rem/1 Orbitron,sans-serif;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 0 12px rgba(255,255,255,.08)}.member-role-network-administrator{border-color:#e23bff;color:#f2a8ff;background:rgba(190,45,255,.12);box-shadow:0 0 14px rgba(190,45,255,.25)}.member-role-game-server-division{border-color:#ff8a2b;color:#ffc28e;background:rgba(255,112,25,.12);box-shadow:0 0 14px rgba(255,112,25,.25)}.member-role-cloud-storage-division{border-color:#38bdf8;color:#a9e7ff;background:rgba(56,189,248,.12);box-shadow:0 0 14px rgba(56,189,248,.25)}.member-role-network-division{border-color:#22c55e;color:#9effba;background:rgba(34,197,94,.12);box-shadow:0 0 14px rgba(34,197,94,.25)}.member-role-fluxer-division{border-color:#8b5cf6;color:#cbb8ff;background:rgba(139,92,246,.13);box-shadow:0 0 14px rgba(139,92,246,.28)}.role-glossary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem}.role-glossary-card{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.role-glossary-card p{margin:0;color:#d8cece;line-height:1.75}


/* Unified luminous badges, statuses, and metadata */
.member-profile-roles>strong{color:var(--bright);font-family:Orbitron,sans-serif;font-weight:700;text-shadow:0 0 9px rgba(255,45,45,.55)}
.member-role-badge,.badge,.blog-status,.news-category,.timeline-date,.service-kicker{
  filter:drop-shadow(0 0 4px currentColor);
}
.member-role-badge{box-shadow:0 0 10px currentColor,inset 0 0 8px rgba(255,255,255,.035)}
.member-role-hardware-deployment{border-color:#facc15;color:#fff08a;background:rgba(250,204,21,.12);box-shadow:0 0 16px rgba(250,204,21,.4)}
.member-role-software-deployment{border-color:#06b6d4;color:#8ff3ff;background:rgba(6,182,212,.12);box-shadow:0 0 16px rgba(6,182,212,.4)}
.member-role-partner{border-color:#f59e0b;color:#ffd27a;background:rgba(245,158,11,.13);box-shadow:0 0 16px rgba(245,158,11,.42)}
.member-role-friend{border-color:#cbd5e1;color:#f8fafc;background:rgba(203,213,225,.1);box-shadow:0 0 16px rgba(203,213,225,.36)}
.badge-rank-founder,.badge-rank-administrator,.badge-rank-officer,.badge-rank-moderator,.badge-rank-veteran,.badge-rank-member,.badge-rank-recruit,.badge-rank-inactive,.badge-rank-banned-removed,
.badge-online,.badge-construction,.badge-offline,.blog-status{filter:drop-shadow(0 0 5px currentColor)}

/* Member aliases and unlimited custom links */
.member-profile-aliases{display:grid;grid-template-columns:minmax(150px,240px) 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid rgba(255,0,0,.28)}
.member-profile-aliases>strong{color:var(--bright);font-family:Orbitron,sans-serif;font-weight:700;text-shadow:0 0 9px rgba(255,45,45,.55)}
.member-alias-list{display:flex;flex-wrap:wrap;gap:.5rem}.member-alias-badge{display:inline-flex;padding:.42rem .68rem;border:1px solid #ff3434;border-radius:999px;background:rgba(255,35,35,.1);color:#ffd0d0;font:700 .68rem/1 Orbitron,sans-serif;box-shadow:0 0 12px rgba(255,35,35,.25)}
.custom-links-editor{margin-top:1rem}.custom-links-editor .field-help{margin-top:0;color:#a99595}.custom-link-row{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr) auto;gap:.75rem;align-items:end;margin-bottom:.75rem}.custom-link-row .button{margin-bottom:0}
@media(max-width:760px){.member-profile-aliases{grid-template-columns:1fr;gap:.45rem}.custom-link-row{grid-template-columns:1fr}.custom-link-row .button{justify-self:start}}
.managed-card-image{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;background:#080808;border:1px solid rgba(255,40,40,.35);margin-bottom:1rem}.managed-card .blog-status{display:inline-flex;margin:.25rem 0 .8rem}.admin-inline-editor{display:grid;grid-template-columns:1.2fr 1fr .6fr 2fr auto;gap:.75rem;align-items:end;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.08)}.admin-inline-editor .admin-wide{grid-column:auto}.admin-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.admin-tabs .active{box-shadow:0 0 18px rgba(255,40,40,.65)}.dynamic-option-preview{display:inline-flex;padding:.35rem .7rem;border:1px solid var(--option-color);color:var(--option-color);box-shadow:0 0 12px var(--option-glow),inset 0 0 8px color-mix(in srgb,var(--option-glow) 25%,transparent);border-radius:4px;font-weight:700}.admin-list{display:grid;gap:.65rem;margin-top:1rem}.admin-list-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.25)}.admin-list-item small{display:block;color:#aaa;margin-top:.25rem}@media(max-width:900px){.admin-inline-editor{grid-template-columns:1fr 1fr}.admin-inline-editor .admin-wide{grid-column:1/-1}}

/* External media and hidden Hello page */
.external-media{margin:1.25rem 0}.external-media-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border:1px solid #8b1111;background:#000;box-shadow:0 0 18px rgba(255,0,0,.16)}.external-media-frame iframe,.external-media video{display:block;width:100%;height:100%;border:0}.external-media audio{display:block;width:100%}.external-media figcaption{margin-top:.55rem;color:#aa8f8f;font-size:.78rem}.footer-easter-egg{color:inherit;text-decoration:none}.footer-easter-egg:hover,.footer-easter-egg:focus-visible{color:#ff3131;text-shadow:0 0 10px #ff0000}.hello-page{max-width:1050px;margin:0 auto;padding:clamp(3rem,8vw,7rem) 1rem}.hello-card{padding:clamp(1.25rem,4vw,3rem);border:1px solid #7f1111;background:radial-gradient(circle at 50% 0,rgba(130,0,0,.16),transparent 45%),#080303;box-shadow:0 0 30px rgba(255,0,0,.12);text-align:center}.hello-card h1{font-size:clamp(2.5rem,8vw,6rem);margin:.4rem 0 1.5rem}.hello-featured-image{display:block;width:100%;max-height:70vh;object-fit:contain;background:#000;border:1px solid #711;margin:0 auto 1.5rem}.hello-card .prose{max-width:780px;margin:0 auto;text-align:left}

.member-profile-media{margin:1.25rem 0}.member-profile-media .external-media{margin:0}.admin-audio-preview{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:.75rem 0 1rem}.admin-audio-preview audio{width:min(100%,520px)}

/* Hello easter-egg audio playback fallback */
.hello-audio-player { display: grid; gap: .85rem; justify-items: center; }
.hello-audio-player audio { width: min(100%, 760px); }
.hello-audio-enable { cursor: pointer; }
.hello-audio-message { margin: 0; color: #cfc7c7; text-align: center; font-size: .9rem; }


/* Legal documents */
.legal-page{max-width:1100px;margin:0 auto;padding:3rem 1.25rem 5rem}.legal-document{padding:clamp(1.5rem,4vw,3rem)}.legal-prose{max-width:900px;margin:0 auto;line-height:1.85}.legal-prose h2,.legal-prose h3{color:#ff4545;margin-top:2rem}.legal-prose a{color:#ff5555;text-shadow:0 0 10px rgba(255,45,45,.45)}.legal-prose hr{border:0;border-top:1px solid rgba(255,35,35,.35);margin:2rem 0}.admin-tabs{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.25rem}.admin-tabs .active{box-shadow:0 0 18px rgba(255,35,35,.55)}


.legal-prose ul,.legal-prose ol{margin:1rem 0 1.4rem 1.6rem;padding-left:1rem;color:#d6cccc}.legal-prose ul{list-style:disc}.legal-prose ol{list-style:decimal}.legal-prose li{margin:.5rem 0;padding-left:.25rem}.legal-prose strong{color:#fff}.legal-prose h2{padding-bottom:.55rem;border-bottom:1px solid rgba(255,35,35,.28)}.legal-prose h3{font-size:1.08rem}.legal-prose p{margin:.85rem 0}.legal-prose br{line-height:1.8}

/* =========================================================
   Comfortable content spacing pass
   Gives bordered panels enough breathing room so text never
   touches or appears clipped by their edges.
   ========================================================= */
:root{
  --panel-pad-x:clamp(1.5rem,3vw,3rem);
  --panel-pad-y:clamp(1.4rem,2.5vw,2.6rem);
  --panel-gap:clamp(1.1rem,2vw,1.8rem);
}

.card,
.admin-card,
.auth-card,
.legal-document,
.hello-card,
.timeline-card,
.timeline-stacked-card,
.member-profile-card,
.status-monitor-card,
.service-detail-card,
.role-glossary-card,
.application-card,
.managed-card,
.about-motto-card {
  padding:var(--panel-pad-y) var(--panel-pad-x);
  overflow:hidden;
}

/* Cards with edge-to-edge media retain their full-width images while
   their text area receives comfortable padding. */
.timeline-stacked-card,
.timeline-card {
  padding:0;
}
.timeline-summary,
.timeline-content,
.timeline-expanded-content {
  padding-inline:var(--panel-pad-x);
}
.timeline-summary,
.timeline-content {
  padding-top:var(--panel-pad-y);
  padding-bottom:var(--panel-pad-y);
}
.timeline-expanded-content {
  padding-bottom:var(--panel-pad-y);
}

/* Public legal documents need a slightly wider reading panel and a
   guaranteed inset on every viewport. */
.legal-page{
  width:min(100%,1220px);
  max-width:1220px;
  padding:clamp(2.5rem,5vw,5rem) clamp(1rem,3vw,2.25rem) clamp(4rem,7vw,7rem);
}
.legal-document{
  width:100%;
  padding:clamp(2rem,4vw,4rem) clamp(1.6rem,5vw,4.5rem);
}
.legal-prose{
  width:100%;
  max-width:980px;
}
.legal-prose > :first-child{margin-top:0}
.legal-prose > :last-child{margin-bottom:0}
.legal-prose h2{
  margin-top:clamp(2.2rem,4vw,3.25rem);
  padding:0 0 .75rem;
}
.legal-prose h2 + p,
.legal-prose h3 + p{margin-top:1.15rem}
.legal-prose p,
.legal-prose li{overflow-wrap:anywhere}

/* Consistent inner rhythm for general bordered content. */
.card > :first-child,
.admin-card > :first-child,
.member-profile-card > :first-child,
.service-detail-card > :first-child,
.role-glossary-card > :first-child,
.status-monitor-card > :first-child {margin-top:0}
.card > :last-child,
.admin-card > :last-child,
.member-profile-card > :last-child,
.service-detail-card > :last-child,
.role-glossary-card > :last-child,
.status-monitor-card > :last-child {margin-bottom:0}

.rich-content p,
.prose p{margin-block:.9rem}
.rich-content ul,.rich-content ol,
.prose ul,.prose ol{padding-left:1.5rem;margin-block:1rem 1.35rem}
.rich-content li,.prose li{padding-left:.2rem;margin-block:.4rem}

/* Modals and image viewers keep text clear of borders at all sizes. */
.timeline-modal-panel{
  width:min(94vw,1220px);
  max-height:92vh;
  overflow:auto;
}
.timeline-modal-alt{
  padding:var(--panel-pad-y) var(--panel-pad-x);
}

/* Admin forms and fieldsets receive the same visual breathing room. */
.admin-card{padding:clamp(1.5rem,2.6vw,2.5rem)}
fieldset{padding:clamp(1.15rem,2vw,1.75rem)}
.admin-list-item{padding:1rem 1.15rem}
input,textarea,select{padding:.8rem .9rem}

@media(max-width:650px){
  :root{
    --panel-pad-x:1.25rem;
    --panel-pad-y:1.25rem;
  }
  .legal-page{padding-inline:.75rem}
  .legal-document{padding:1.5rem 1.25rem}
  .card,.admin-card,.auth-card,.hello-card,.member-profile-card,
  .status-monitor-card,.service-detail-card,.role-glossary-card,
  .application-card,.managed-card,.about-motto-card{
    padding:1.25rem;
  }
}

/* Legal document hard inset fix
   Keep the border on the outer shell and place all document content in a
   dedicated padded reading area. This avoids global section/card rules or
   stored HTML from allowing text to touch the border. */
.legal-page {
  width: min(100%, 1320px);
  max-width: 1320px;
}
.legal-document.card {
  padding: 0 !important;
  overflow: hidden;
  box-sizing: border-box;
}
.legal-document > .legal-prose {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(2.25rem, 4.5vw, 4.75rem) clamp(2rem, 5.5vw, 5.5rem) clamp(3rem, 6vw, 5.5rem);
}
.legal-prose h1,
.legal-prose h2,
.legal-prose h3,
.legal-prose h4,
.legal-prose p,
.legal-prose ul,
.legal-prose ol,
.legal-prose blockquote,
.legal-prose table {
  max-width: 100%;
  box-sizing: border-box;
}
.legal-prose h2 {
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 700px) {
  .legal-document > .legal-prose {
    padding: 1.75rem 1.35rem 2.5rem;
  }
}

/* Notable Members sizing is isolated from global/legal spacing rules. */
.member-grid-compact{grid-template-columns:repeat(auto-fit,minmax(260px,300px));}
.member-card-compact,
.member-card-compact.featured-member{
  width:100%;
  max-width:300px;
  min-height:340px;
  padding:24px;
  box-sizing:border-box;
}
.member-card-compact .member-avatar{
  width:170px;
  height:170px;
  max-width:170px;
  flex:0 0 170px;
  margin:0 0 20px;
  object-fit:cover;
}
.member-card-compact h3{margin:0 0 12px;font-size:1.15rem;}
.member-card-compact .badge{margin-top:8px;}

/* Admin security and access audit tables. */
.admin-table-wrap{width:100%;overflow-x:auto;margin-top:20px;}
.admin-table{width:100%;border-collapse:collapse;min-width:760px;}
.admin-table th,.admin-table td{padding:13px 14px;border-bottom:1px solid rgba(255,0,0,.22);text-align:left;vertical-align:top;}
.admin-table th{color:#ff6666;font:700 11px Orbitron,sans-serif;letter-spacing:.06em;text-transform:uppercase;}
.admin-table code{color:#f0f0f0;overflow-wrap:anywhere;}
.access-agent{max-width:440px;overflow-wrap:anywhere;color:#bcbcbc;font-size:.84rem;}
.security-status{display:inline-flex;padding:5px 9px;border-radius:999px;font:700 10px Orbitron,sans-serif;text-transform:uppercase;letter-spacing:.05em;}
.security-status.locked{color:#ff8b8b;border:1px solid #ff3030;background:rgba(255,0,0,.12);box-shadow:0 0 12px rgba(255,0,0,.35);}
.security-status.warning{color:#ffc267;border:1px solid #ff9500;background:rgba(255,149,0,.1);box-shadow:0 0 12px rgba(255,149,0,.25);}
.button-small{padding:8px 12px;font-size:11px;}
.auth-card button:disabled,.auth-card input:disabled{opacity:.55;cursor:not-allowed;}
@media(max-width:600px){
  .member-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));}
  .member-card-compact,.member-card-compact.featured-member{max-width:none;min-height:0;padding:18px 10px;}
  .member-card-compact .member-avatar{width:min(34vw,150px);height:min(34vw,150px);max-width:150px;flex-basis:auto;}
}

/* Legal Center — scoped so legal spacing cannot alter member cards or other grids. */
.legal-center-page,.legal-page{max-width:1280px}.legal-library{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.legal-card{display:flex;gap:20px;align-items:flex-start;padding:28px}.legal-card-icon{display:grid;place-items:center;min-width:58px;height:58px;border:1px solid rgba(255,40,40,.55);font-size:1.6rem;color:#ff4545;box-shadow:0 0 18px rgba(255,0,0,.18)}.legal-card h2{margin:0 0 10px}.legal-card p{min-height:3em}.legal-card-meta,.legal-meta{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:.82rem;opacity:.78;margin:14px 0 20px}.legal-heading{max-width:1000px;margin-inline:auto}.legal-reading-layout{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1000px);gap:28px;align-items:start;justify-content:center}.legal-toc{position:sticky;top:24px;padding:22px}.legal-toc nav{display:grid;gap:10px;margin:15px 0 22px}.legal-toc nav a{font-size:.78rem;line-height:1.35}.legal-document{padding:clamp(28px,5vw,64px);min-width:0}.legal-prose{font-family:Arial,sans-serif;font-size:1rem;line-height:1.82}.legal-prose h2{scroll-margin-top:28px;margin-top:2.4em;padding-top:.2em;border-bottom:1px solid rgba(255,50,50,.25);padding-bottom:.45em}.legal-prose h3{margin-top:1.8em}.legal-prose p,.legal-prose li,.legal-prose dd{max-width:82ch}.legal-prose dl{display:grid;grid-template-columns:minmax(160px,240px) 1fr;gap:12px 22px}.legal-prose dt{color:#ff5757}.legal-prose dd{margin:0 0 12px}.legal-document-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:24px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.editor-toolbar button{background:#1a0808;border:1px solid rgba(255,50,50,.45);color:#eee;padding:7px 10px;cursor:pointer}.is-muted{opacity:.58}
@media(max-width:850px){.legal-reading-layout{grid-template-columns:1fr}.legal-toc{position:static}.legal-prose dl{grid-template-columns:1fr}.legal-document{padding:24px}.legal-document-footer{flex-direction:column}}
@media print){header,footer,.legal-toc,.legal-document-footer{display:none!important}.legal-reading-layout{display:block}.legal-document{border:0;box-shadow:none;padding:0}.legal-prose{color:#000}}


/* Legal document font switcher: site-wide Orbitron is the default. */
.legal-prose{font-family:Orbitron,Arial,sans-serif}
.legal-document.legal-reading-font .legal-prose{font-family:Arial,sans-serif}
.legal-font-toggle{display:inline-flex;align-items:center;justify-content:center;margin:4px 0 0}
.legal-font-toggle[aria-pressed="true"]{box-shadow:0 0 20px rgba(255,45,45,.55)}
