*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#04101a;color:#eaf3fb;font-family:Inter,system-ui,sans-serif;overflow-x:hidden}.noise{position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.topbar{position:sticky;top:0;z-index:40;height:68px;display:flex;align-items:center;gap:42px;padding:0 7vw;background:rgba(3,12,20,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(66,159,231,.18)}.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:#d8eeff;font-family:Cinzel,serif;font-weight:800;letter-spacing:.08em}.crest{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid #3ba7f3;background:radial-gradient(circle,#49b9ff 0,#0f5f9d 45%,#06121e 70%);box-shadow:0 0 20px #1d8ee555}.topbar nav{display:flex;gap:26px;flex:1}.topbar nav a{display:flex;align-items:center;gap:8px;color:#a9bfd2;text-decoration:none;font-size:.88rem;padding:24px 8px 20px;border-bottom:2px solid transparent;transition:.22s}.topbar nav a:hover,.topbar nav a.active{color:#fff;border-color:#27a6ff;text-shadow:0 0 12px #2d9ee577}.topbar nav svg,.icon-link svg,.join-btn svg{width:17px;height:17px}.top-socials{display:flex;align-items:center;gap:12px}.icon-link{display:grid;place-items:center;width:28px;height:28px;color:#3baaff;text-decoration:none}.join-btn{display:flex;align-items:center;gap:16px;color:#dff2ff;text-decoration:none;font-size:.77rem;letter-spacing:.06em;padding:14px 20px;border:1px solid #2a94e8;border-radius:5px;box-shadow:0 0 14px #168fe84a,inset 0 0 14px #168fe817;transition:.2s}.join-btn:hover{background:#0b2a42;box-shadow:0 0 24px #168fe870}.hero{position:relative;min-height:710px;padding-top:68px}.hero-bg{position:absolute;inset:0;background:
linear-gradient(90deg,rgba(2,10,17,.94) 0%,rgba(2,10,17,.78) 26%,rgba(2,10,17,.25) 55%,rgba(2,10,17,.18) 100%),
url("assets/eldune-hero-v7.png") center/cover no-repeat;transform:none}.hero-vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,12,20,.05),rgba(4,12,20,.08) 62%,#04101a 100%);pointer-events:none}.hero-content{position:relative;z-index:2;min-height:500px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:58px 8vw 34px}.hero-left{max-width:650px}.hero-logo{font-family:Cinzel,serif;font-size:clamp(4.6rem,8vw,8rem);line-height:.9;letter-spacing:.02em;color:#d8ecff;text-shadow:0 0 7px #9bd6ff,0 0 20px #1a70ac,0 10px 0 #06101a}.hero-sub{margin:16px 0 20px;color:#b4cfe3;letter-spacing:.35em;font-size:.76rem}.hero-left p{max-width:550px;color:#a7bed0;line-height:1.7}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}.btn{border:1px solid #254f70;border-radius:5px;text-decoration:none;color:#e9f6ff;display:inline-flex;align-items:center;gap:10px;padding:12px 16px;font-size:.76rem;transition:.22s}.btn svg{width:19px;height:19px}.btn.blue{background:linear-gradient(135deg,#1e8bf0,#2868d9);border-color:#3c9cf2;box-shadow:0 0 18px #138ee65c}.btn.blue:hover{transform:translateY(-2px);box-shadow:0 0 26px #138ee68c}.btn.dark{background:rgba(2,12,20,.68)}.btn.dark:hover{background:rgba(11,37,58,.88);border-color:#2e8ac9}.btn.dark small,.btn.dark b{display:block}.btn.dark small{font-size:.62rem;color:#98adc0}.btn.dark b{font-size:.68rem}.quote-card{justify-self:end;width:310px;padding:38px 24px;text-align:center;border:1px solid rgba(91,164,220,.36);background:rgba(4,19,31,.42);backdrop-filter:blur(7px);border-radius:5px;box-shadow:inset 0 0 30px #0c5f9a18}.quote-card p{font-family:Cinzel,serif;font-size:1rem;line-height:1.7;letter-spacing:.22em;color:#accdec}.ornament{display:block;width:120px;height:1px;background:linear-gradient(90deg,transparent,#268fd6,transparent);margin:20px auto 0;position:relative}.ornament:after{content:"◇";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#39aef7;background:#07121e;padding:0 5px}.pillars{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:0 8vw 26px}.pillars article{display:flex;align-items:center;gap:16px;min-height:72px;padding:14px 20px;border:1px solid rgba(61,139,194,.42);background:rgba(3,18,29,.72);border-radius:4px;transition:.22s}.pillars article:hover{transform:translateY(-3px);border-color:#2b9be6;box-shadow:0 8px 30px #02121eaa}.pillars article>span{color:#2f9cf2}.pillars svg{width:36px;height:36px}.pillars strong{display:block;font-size:.88rem}.pillars small{display:block;margin-top:5px;color:#6f8ca5}.section{padding:38px 8vw}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.section-title-row h2{margin:0;font-family:Cinzel,serif;font-size:1.38rem;letter-spacing:.12em;color:#e6f0fa}.outline-btn{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(55,133,190,.45);background:#061522;color:#81acd0;border-radius:4px;padding:9px 13px;font-size:.68rem;letter-spacing:.04em;cursor:pointer}.outline-btn svg{width:14px;height:14px}.featured{border-top:1px solid rgba(55,127,177,.16)}.featured-wrap{position:relative}.featured-track{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.featured-card{overflow:hidden;border:1px solid rgba(65,141,195,.38);background:#051522;border-radius:5px;transition:.25s}.featured-card:hover{transform:translateY(-5px);box-shadow:0 14px 40px #01070d99;border-color:#2a92da}.featured-image{height:165px;background-size:cover;background-position:center;position:relative}.featured-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#051522 100%)}.status-badge{position:absolute;right:14px;top:12px;z-index:2;padding:7px 15px;border-radius:999px;font-size:.62rem;font-weight:700}.status-badge.progress{background:#1d74df;color:#fff}.status-badge.planned{background:#536987;color:#fff}.status-badge.testing{background:#a87310;color:#fff}.status-badge.done{background:#268a55;color:#fff}.featured-body{padding:12px 16px 14px}.featured-body h3{margin:0 0 4px;font-size:.95rem}.featured-body p{margin:0;color:#89a5bc;font-size:.8rem;line-height:1.5}.featured-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.featured-foot a{color:#2e9ded;text-decoration:none;font-size:.73rem}.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid #297fbc;background:#051522;color:#8bbee6;display:grid;place-items:center;cursor:pointer;transition:.2s}.slider-arrow:hover{background:#0d2a40;color:#fff}.slider-arrow.left{left:-48px}.slider-arrow.right{right:-48px}.slider-arrow svg{width:18px;height:18px}.lower-grid{display:grid;grid-template-columns:1fr 1.04fr;gap:26px;padding:20px 8vw 46px;border-top:1px solid rgba(55,127,177,.12)}.news-main{display:grid;grid-template-columns:230px 1fr;gap:18px;border:1px solid rgba(61,139,194,.32);background:#051522;border-radius:5px;padding:6px}.news-image{min-height:190px;border-radius:4px;background:linear-gradient(0deg,#04101a55,#04101a22),url("https://images.unsplash.com/photo-1518709268805-4e9042af9f23?auto=format&fit=crop&w=900&q=80") center/cover}.news-copy{padding:12px 12px 6px}.tag{display:inline-block;border-radius:999px;padding:6px 12px;font-size:.61rem;font-weight:700}.blue-tag{background:#1c73de}.news-copy h3{margin:10px 0 8px;font-size:1.06rem}.news-copy p{color:#91a9bc;font-size:.84rem;line-height:1.6}.news-foot{display:flex;align-items:center;gap:8px;color:#7794ab;font-size:.72rem;margin-top:22px}.news-foot svg{width:14px;height:14px}.news-foot a{margin-left:auto;color:#2d9be8;text-decoration:none}.roadmap-tabs{display:flex;gap:10px;margin-bottom:10px}.tab{border:1px solid #1e3d55;background:#061522;color:#8ea7ba;border-radius:4px;padding:8px 16px;font-size:.66rem;cursor:pointer}.tab.active{background:#216cd8;color:#fff;border-color:#318fee}.roadmap-list{display:flex;flex-direction:column;gap:6px}.roadmap-item{display:grid;grid-template-columns:74px 1fr auto 110px 42px;align-items:center;gap:10px;padding:6px;border:1px solid rgba(45,102,144,.26);background:#061522;border-radius:4px;transition:.2s}.roadmap-item:hover{background:#082035}.roadmap-thumb{height:44px;border-radius:3px;background-size:cover;background-position:center}.roadmap-item h4{margin:0;font-size:.78rem}.roadmap-item p{margin:3px 0 0;color:#69869c;font-size:.66rem}.mini-progress{height:7px;border-radius:999px;background:#112639;overflow:hidden}.mini-progress span{display:block;height:100%;background:linear-gradient(90deg,#1f85ed,#4aa7ff)}.roadmap-percent{font-size:.68rem;color:#9ab5c9}.community{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:0 8vw 48px;padding:30px;border:1px solid rgba(61,139,194,.3);background:linear-gradient(90deg,#061522,#0a1e2d);border-radius:6px}.community .mini{color:#3ea8f4;font-size:.66rem;letter-spacing:.14em}.community h2{font-family:Cinzel,serif;margin:7px 0 0}.community-links{display:flex;gap:12px}.community-links a{display:flex;align-items:center;gap:8px;color:#dbeeff;text-decoration:none;padding:11px 14px;border:1px solid #214d6d;background:#061522;border-radius:4px;transition:.2s}.community-links a:hover{border-color:#2b96df;transform:translateY(-2px)}.community-links svg{width:18px;height:18px}dialog{width:min(92vw,650px);padding:0;border:1px solid #246895;background:#061522;color:#eaf3fb;border-radius:6px;box-shadow:0 30px 100px #000a}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}#roadmapForm{padding:24px}.dialog-head{display:flex;justify-content:space-between}.dialog-head span{color:#399ee4;font-size:.65rem;letter-spacing:.12em}.dialog-head h3{margin:6px 0 18px}.dialog-head button{background:none;border:0;color:#8ba6ba;font-size:1.5rem;cursor:pointer}label{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;color:#8da9bd;font-size:.76rem}input,textarea,select{width:100%;background:#03101a;border:1px solid #1e4e70;color:#eef7ff;border-radius:4px;padding:11px;font:inherit}textarea{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{flex-direction:row;align-items:center}.check input{width:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}@media(max-width:1150px){.topbar nav{display:none}.hero-content{grid-template-columns:1fr}.quote-card{display:none}.pillars{grid-template-columns:1fr 1fr}.featured-track{grid-template-columns:1fr 1fr}.featured-card:nth-child(3){display:none}.lower-grid{grid-template-columns:1fr}.slider-arrow{display:none}}@media(max-width:760px){.topbar{padding:0 4vw}.top-socials .icon-link{display:none}.join-btn{padding:11px}.hero-content,.pillars,.section,.lower-grid{padding-left:4vw;padding-right:4vw}.hero-logo{font-size:4rem}.hero-sub{letter-spacing:.18em}.pillars{grid-template-columns:1fr}.featured-track{grid-template-columns:1fr}.featured-card:nth-child(2){display:none}.news-main{grid-template-columns:1fr}.news-image{min-height:180px}.roadmap-item{grid-template-columns:58px 1fr auto}.roadmap-item .mini-progress,.roadmap-percent{display:none}.community{margin-left:4vw;margin-right:4vw;flex-direction:column;align-items:flex-start}.community-links{flex-wrap:wrap}.form-row{grid-template-columns:1fr}}.reveal-section{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal-section.visible{opacity:1;transform:none}.featured-track{transition:transform .35s ease}.featured-foot svg{width:13px;height:13px;vertical-align:middle}.outline-btn svg,.news-foot a svg{width:13px;height:13px;vertical-align:middle}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal-section{opacity:1!important;transform:none!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.logo img{height:58px;width:auto;display:block;object-fit:contain}
.hero-logo-image{width:min(520px,78vw);height:auto;display:block;filter:drop-shadow(0 0 18px rgba(43,159,240,.35))}
.admin-entry{padding:10px 8vw 22px;text-align:right}
.admin-entry a{color:#294b63;font-size:.68rem;text-decoration:none}
.admin-entry a:hover{color:#5baee7}
.featured-foot a{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.detail-dialog{width:min(92vw,920px);padding:0;border:1px solid #256995;background:#061522;color:#eaf3fb;border-radius:8px;overflow:hidden;box-shadow:0 35px 120px #000d}
.detail-dialog::backdrop{background:#000c;backdrop-filter:blur(7px)}
.detail-shell{position:relative}
.detail-close{position:absolute;z-index:5;right:14px;top:12px;width:34px;height:34px;border:1px solid #285c7e;background:#051522;color:#b7d5ea;border-radius:4px;font-size:1.25rem;cursor:pointer}
.detail-hero{height:320px;background-size:cover;background-position:center;position:relative}
.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#061522 100%)}
.detail-content{padding:24px}
.detail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.detail-head h2{font-family:Cinzel,serif;font-size:2rem;margin:10px 0 0}
.detail-head>strong{font-size:1.6rem;color:#74c7ff}
.detail-progress{height:10px;background:#102639;border-radius:999px;overflow:hidden;margin:18px 0}
.detail-progress span{display:block;height:100%;background:linear-gradient(90deg,#1c82ec,#55b9ff);box-shadow:0 0 14px #1b8be988}
.detail-desc{color:#9bb1c2;line-height:1.8;font-size:.95rem}
.detail-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}
.detail-info-grid>div{padding:14px;border:1px solid #1f4f70;background:#04101a;border-radius:5px}
.detail-info-grid span{display:block;color:#6f8da4;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}
.detail-info-grid b{display:block;margin-top:5px}
.roadmap-item{grid-template-columns:74px 1fr auto 140px 42px}
.mini-progress{display:block!important;height:8px}
.site-footer{border-top:1px solid rgba(55,127,177,.25);background:#03101a}
.footer-top{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px;padding:34px 8vw}
.footer-brand img{max-width:260px;width:100%;height:auto}
.footer-brand p{max-width:320px;color:#6f8a9e;line-height:1.6;font-size:.78rem}
.footer-col h4{margin:0 0 12px;font-family:Cinzel,serif}
.footer-col a{display:block;color:#7895ab;text-decoration:none;font-size:.78rem;margin:8px 0}
.footer-col a:hover{color:#3ea8f4}
.footer-bottom{display:flex;justify-content:space-between;padding:14px 8vw;border-top:1px solid rgba(55,127,177,.16);color:#5f788b;font-size:.7rem}
@media(max-width:800px){.detail-info-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:6px}}
@media(max-width:520px){.footer-top{grid-template-columns:1fr}}

/* ============================
   V8 public fixes
   ============================ */

/* Roadmap rows: status is NORMAL flow, never absolute here. */
.roadmap-item{
  grid-template-columns:74px minmax(180px,1fr) 118px 150px 44px !important;
  min-height:58px;
  padding:7px !important;
}
.roadmap-item .status-badge{
  position:static !important;
  inset:auto !important;
  justify-self:start;
  min-width:100px;
  text-align:center;
  padding:6px 9px;
}
.roadmap-item .mini-progress{
  display:block !important;
  width:100% !important;
  height:8px !important;
  background:#102639 !important;
  border:1px solid rgba(63,141,198,.16);
  border-radius:999px;
  overflow:hidden;
}
.roadmap-item .mini-progress span{
  display:block !important;
  height:100% !important;
  min-width:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#177cea,#55baff) !important;
  box-shadow:0 0 10px rgba(41,157,239,.45);
}
.roadmap-percent{
  display:block !important;
  font-weight:700;
  color:#8bcdf7 !important;
  text-align:right;
}
.admin-shortcut{ text-decoration:none; }

/* Rich details modal */
.detail-dialog{
  width:min(94vw,1040px) !important;
  max-height:92vh;
  padding:0 !important;
  border:1px solid #286f9f !important;
  background:#061522 !important;
  color:#eaf3fb;
  border-radius:8px !important;
  overflow:auto !important;
  box-shadow:0 35px 120px #000d !important;
}
.detail-dialog::backdrop{background:#000c;backdrop-filter:blur(7px)}
.detail-shell{position:relative}
.detail-close{
  position:absolute;z-index:20;right:14px;top:12px;width:36px;height:36px;
  border:1px solid #326f98;background:rgba(4,17,28,.9);color:#c7e3f7;
  border-radius:4px;font-size:1.3rem;cursor:pointer;
}
.detail-hero{
  height:360px;position:relative;background-size:cover!important;background-position:center!important;
}
.detail-hero-overlay{
  position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,8,13,.08),rgba(3,8,13,.28) 48%,#061522 100%);
}
.detail-hero-caption{
  position:absolute;z-index:2;left:28px;right:70px;bottom:28px;
}
.detail-hero-caption h2{
  font-family:Cinzel,serif;font-size:clamp(1.8rem,4vw,3rem);margin:10px 0 8px;
}
.detail-hero-caption p{max-width:690px;color:#a6bfd2;line-height:1.6;margin:0}
.detail-status{
  display:inline-flex;padding:7px 12px;border-radius:999px;font-size:.66rem;font-weight:700;
}
.detail-status.progress{background:#1d74df}.detail-status.planned{background:#536987}
.detail-status.testing{background:#a87310}.detail-status.done{background:#268a55}
.detail-content{padding:26px 28px 30px}
.detail-progress-head{display:flex;justify-content:space-between;align-items:end;gap:20px}
.detail-progress-head span{display:block;color:#6d8aa1;font-size:.68rem;letter-spacing:.12em}
.detail-progress-head strong{display:block;margin-top:5px}
.detail-progress-head>b{font-size:1.8rem;color:#74c7ff}
.detail-progress{height:11px;background:#102639;border-radius:999px;overflow:hidden;margin:12px 0 26px}
.detail-progress span{display:block;height:100%;background:linear-gradient(90deg,#1c82ec,#55b9ff);box-shadow:0 0 14px #1b8be988}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px}
.detail-section{margin-bottom:26px}
.detail-section h3{font-family:Cinzel,serif;font-size:1.1rem;margin:0 0 12px}
.detail-desc{white-space:pre-line;color:#9bb1c2;line-height:1.85;font-size:.95rem;margin:0}
.detail-sidebar{display:flex;flex-direction:column;gap:10px}
.detail-info-box{padding:14px;border:1px solid #1f4f70;background:#04101a;border-radius:5px}
.detail-info-box span{display:block;color:#6f8da4;font-size:.67rem;text-transform:uppercase;letter-spacing:.08em}
.detail-info-box b{display:block;margin-top:6px}
.detail-features{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.detail-feature{
  display:flex;align-items:flex-start;gap:10px;padding:11px 12px;
  border:1px solid rgba(45,113,162,.32);background:#04111c;border-radius:5px;
  color:#9cb6c8;font-size:.82rem;line-height:1.45;
}
.detail-feature:before{content:"✦";color:#37aaf5;flex:0 0 auto}
.detail-section-head{display:flex;justify-content:space-between;align-items:center}
.detail-section-head span{color:#607d93;font-size:.7rem}
.detail-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.detail-gallery button{
  border:1px solid #245a7e;padding:0;background:#04101a;border-radius:5px;overflow:hidden;cursor:pointer;
}
.detail-gallery img{display:block;width:100%;height:120px;object-fit:cover;transition:transform .2s ease}
.detail-gallery button:hover img{transform:scale(1.025)}

/* Real footer */
.site-footer{
  display:block !important;
  border-top:1px solid rgba(55,127,177,.25);
  background:#03101a;
  margin-top:36px;
}
.footer-top{
  display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px;padding:38px 8vw 30px;
}
.footer-brand img{display:block;max-width:240px;width:100%;height:auto}
.footer-brand p{max-width:340px;color:#6f8a9e;line-height:1.7;font-size:.78rem}
.footer-col h4{margin:0 0 13px;font-family:Cinzel,serif;color:#dcecff}
.footer-col a{display:block;color:#7895ab;text-decoration:none;font-size:.78rem;margin:9px 0}
.footer-col a:hover{color:#3ea8f4}
.footer-admin-link{color:#48b6ff!important}
.footer-bottom{
  display:flex;justify-content:space-between;gap:20px;padding:14px 8vw;
  border-top:1px solid rgba(55,127,177,.16);color:#5f788b;font-size:.7rem;
}

@media(max-width:900px){
  .roadmap-item{grid-template-columns:64px minmax(150px,1fr) 100px 110px 40px!important}
  .detail-layout{grid-template-columns:1fr}
  .detail-sidebar{display:grid;grid-template-columns:repeat(3,1fr)}
  .footer-top{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .roadmap-item{grid-template-columns:58px 1fr 42px!important}
  .roadmap-item .status-badge{display:none!important}
  .roadmap-item .mini-progress{grid-column:2/3;display:block!important}
  .roadmap-percent{grid-column:3/4;grid-row:2/3;display:block!important}
  .detail-hero{height:260px}
  .detail-content{padding:20px}
  .detail-features{grid-template-columns:1fr}
  .detail-gallery{grid-template-columns:1fr 1fr}
  .detail-sidebar{grid-template-columns:1fr}
}
@media(max-width:520px){
  .footer-top{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column}
  .detail-gallery{grid-template-columns:1fr}
}

.detail-link{
  display:inline-flex;align-items:center;gap:5px;border:0;background:none;padding:0;
  color:#2e9ded;font:inherit;font-size:.73rem;cursor:pointer;
}
.detail-link svg{width:13px;height:13px}

/* ============================
   V9 rich content / news / lightbox
   ============================ */
.news-detail-link{
  margin-left:auto;border:0;background:none;color:#2d9be8;padding:0;
  font:inherit;font-size:.72rem;cursor:pointer;display:inline-flex;gap:5px;align-items:center;
}
.news-detail-link svg{width:13px;height:13px}
.news-detail-meta{
  display:flex;gap:12px;align-items:center;color:#6f8da4;font-size:.75rem;
  margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid rgba(56,126,177,.18)
}
.rich-content{color:#9cb2c4;line-height:1.88;font-size:.96rem}
.rich-content p{margin:0 0 18px}
.rich-content h2,.rich-content h3{font-family:Cinzel,serif;color:#e6f2fb;margin:28px 0 12px}
.rich-content ul{padding-left:20px}.rich-content li{margin:7px 0}
.rich-content .wiki-link{
  display:inline-flex;align-items:center;gap:5px;color:#58baff;text-decoration:none;
  border-bottom:1px dashed rgba(88,186,255,.45)
}
.rich-content .wiki-link:hover{color:#9bd8ff;border-color:#9bd8ff}
.rich-content .wiki-link:before{content:"◈";font-size:.72em}

.rich-inline-image{
  display:block;width:100%;margin:20px 0;border:1px solid #245d85;
  background:#04101a;border-radius:6px;overflow:hidden;cursor:zoom-in;padding:0;
}
.rich-inline-image img{
  width:100%;max-height:520px;object-fit:cover;display:block;transition:transform .2s ease
}
.rich-inline-image:hover img{transform:scale(1.01)}
.rich-inline-image span{
  display:block;text-align:left;padding:9px 12px;color:#7390a6;font-size:.72rem
}

.image-lightbox{
  width:96vw;max-width:1500px;height:92vh;max-height:92vh;padding:0;border:0;
  background:rgba(2,8,13,.97);color:#fff;border-radius:6px;overflow:hidden;
  box-shadow:0 30px 120px #000f
}
.image-lightbox::backdrop{background:#000e;backdrop-filter:blur(6px)}
.image-lightbox figure{
  width:100%;height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px 26px 22px
}
.image-lightbox img{
  display:block;max-width:100%;max-height:calc(92vh - 100px);object-fit:contain;border-radius:4px
}
.image-lightbox figcaption{margin-top:10px;color:#8ea6b9;font-size:.78rem;text-align:center}
.lightbox-close{
  position:absolute;right:16px;top:12px;z-index:5;width:38px;height:38px;
  border:1px solid #376d91;background:#04111c;color:#d9ecfb;border-radius:4px;
  font-size:1.4rem;cursor:pointer
}
.detail-gallery button{cursor:zoom-in}

/* ============================
   V10 public news grid
   ============================ */
.news-list{display:grid;grid-template-columns:1fr;gap:12px}
.news-card-public{
  display:grid;grid-template-columns:170px 1fr;gap:14px;
  border:1px solid rgba(61,139,194,.32);background:#051522;border-radius:5px;padding:6px;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease
}
.news-card-public:hover{transform:translateY(-2px);border-color:#2b8fd0;box-shadow:0 10px 28px #0005}
.news-card-image{min-height:132px;border-radius:4px;background-size:cover!important;background-position:center!important}
.news-card-copy{padding:10px 10px 8px}
.news-card-copy h3{margin:9px 0 8px;font-size:1rem}
.news-card-copy p{margin:0;color:#8ca6ba;font-size:.8rem;line-height:1.6}
.news-card-footer{display:flex;align-items:center;gap:8px;margin-top:15px;color:#6f8ea4;font-size:.7rem}
.news-card-footer button{margin-left:auto}
.news-empty{padding:24px;border:1px dashed #275879;color:#7894aa;text-align:center}
@media(max-width:720px){.news-card-public{grid-template-columns:1fr}.news-card-image{min-height:180px}}

/* ============================
   V11 countdown
   ============================ */
.hidden{display:none!important}
.countdown-section{
  position:relative;z-index:4;margin:-6px 8vw 28px;padding:22px 26px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  border:1px solid rgba(51,153,220,.42);
  background:linear-gradient(90deg,rgba(5,22,35,.95),rgba(8,35,54,.9));
  border-radius:6px;box-shadow:0 14px 40px #0006,inset 0 0 28px rgba(34,132,201,.06)
}
.countdown-kicker{font-size:.65rem;letter-spacing:.14em;color:#49b4ff}
.countdown-copy h2{font-family:Cinzel,serif;margin:5px 0 4px;font-size:1.25rem}
.countdown-copy p{margin:0;color:#7694aa;font-size:.78rem}
.countdown-grid{display:grid;grid-template-columns:repeat(4,86px);gap:8px}
.countdown-grid div{
  padding:10px 8px;text-align:center;border:1px solid #21597f;background:#04111c;border-radius:5px
}
.countdown-grid strong{display:block;font-size:1.65rem;color:#dff4ff;text-shadow:0 0 12px #2e9eef55}
.countdown-grid span{display:block;margin-top:3px;color:#69879c;font-size:.64rem;text-transform:uppercase}
@media(max-width:800px){.countdown-section{flex-direction:column;align-items:flex-start}.countdown-grid{width:100%;grid-template-columns:repeat(4,1fr)}}
@media(max-width:480px){.countdown-grid{grid-template-columns:repeat(2,1fr)}}

/* V12 resizable inline images */
.rich-inline-image{
  max-width:100%;
  margin-left:auto!important;
  margin-right:auto!important;
}
.rich-inline-image.rich-image-25{width:25%}
.rich-inline-image.rich-image-50{width:50%}
.rich-inline-image.rich-image-75{width:75%}
.rich-inline-image.rich-image-100{width:100%}
@media(max-width:700px){
  .rich-inline-image.rich-image-25,
  .rich-inline-image.rich-image-50{width:75%!important}
  .rich-inline-image.rich-image-75,
  .rich-inline-image.rich-image-100{width:100%!important}
}

/* V13 reliable image sizing */
.rich-inline-figure{width:var(--imgw,100%)!important;max-width:100%;margin:20px auto!important}
.rich-inline-figure.rich-image-25{--imgw:25%}
.rich-inline-figure.rich-image-50{--imgw:50%}
.rich-inline-figure.rich-image-75{--imgw:75%}
.rich-inline-figure.rich-image-100{--imgw:100%}
.rich-inline-figure .rich-inline-image{width:100%!important;display:block;margin:0!important;padding:0;border:1px solid #245d85;border-radius:6px;overflow:hidden;cursor:zoom-in;background:#04101a}
.rich-inline-figure img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.rich-inline-figure figcaption{padding:8px 2px 0;color:#6e8ba0;font-size:.72rem;text-align:center}
@media(max-width:700px){
  .rich-inline-figure.rich-image-25,.rich-inline-figure.rich-image-50{--imgw:75%}
  .rich-inline-figure.rich-image-75,.rich-inline-figure.rich-image-100{--imgw:100%}
}

/* Item cards */
.item-reference{margin:18px 0}.item-ref-loading{padding:14px;border:1px dashed #245d85;color:#6f8da4;border-radius:5px}
.item-card{display:grid;grid-template-columns:82px 1fr;gap:15px;padding:14px;border:1px solid #255f87;background:linear-gradient(135deg,#071b2b,#04101a);border-radius:7px}
.item-card-icon{width:82px;height:82px;display:grid;place-items:center;border:1px solid #2b6f99;background:#020a10;border-radius:7px}
.item-card-icon img{width:64px;height:64px;object-fit:contain}.item-card-head{display:flex;justify-content:space-between;gap:14px}
.item-card-head h4{margin:3px 0 0;font-family:Marcellus,serif;font-size:1.1rem;color:#e8f4fc}.item-type{font-size:.62rem;letter-spacing:.09em;color:#54b5f4;text-transform:uppercase}.item-vnum{color:#5f8097;font-size:.7rem}
.item-meta{margin-top:7px;color:#7f9caf;font-size:.72rem}.item-card-main>p{margin:9px 0;color:#91aabc;line-height:1.55;font-size:.8rem}
.item-bonuses{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:10px}.item-bonuses span{display:flex;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid rgba(43,104,146,.35);background:#03101a;border-radius:4px;font-size:.7rem}
.item-bonuses em{font-style:normal;color:#718ea4}.item-bonuses b{color:#8ed4ff}.item-missing{display:block;color:#d18b8b}
@media(max-width:600px){.item-card{grid-template-columns:64px 1fr}.item-card-icon{width:64px;height:64px}.item-card-icon img{width:50px;height:50px}.item-bonuses{grid-template-columns:1fr}}

/* ============================
   V13.1 definitive inline image sizing
   ============================ */
.rich-content .rich-inline-figure{
  display:block !important;
  width:var(--imgw,100%) !important;
  max-width:100% !important;
  margin:22px auto !important;
}
.rich-content .rich-inline-figure.rich-image-25{--imgw:25%}
.rich-content .rich-inline-figure.rich-image-50{--imgw:50%}
.rich-content .rich-inline-figure.rich-image-75{--imgw:75%}
.rich-content .rich-inline-figure.rich-image-100{--imgw:100%}

.rich-content .rich-inline-figure > .rich-inline-image{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
.rich-content .rich-inline-figure > .rich-inline-image img{
  width:100% !important;
  height:auto !important;
  display:block !important;
}
.rich-content .rich-inline-figure > figcaption{
  margin-top:7px;
  text-align:center;
}

@media(max-width:700px){
  .rich-content .rich-inline-figure.rich-image-25,
  .rich-content .rich-inline-figure.rich-image-50{--imgw:75%}
  .rich-content .rich-inline-figure.rich-image-75,
  .rich-content .rich-inline-figure.rich-image-100{--imgw:100%}
}

/* ============================
   V13.2 compact item cards
   ============================ */
.item-reference{
  margin:12px 0 !important;
}

.item-card{
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) !important;
  gap:11px !important;
  width:min(100%,620px) !important;
  min-height:0 !important;
  padding:10px 11px !important;
  border-radius:6px !important;
}

.item-card-icon{
  width:58px !important;
  height:58px !important;
  align-self:start;
}

.item-card-icon img{
  width:46px !important;
  height:46px !important;
}

.item-card-main{
  min-width:0;
}

.item-card-head{
  align-items:flex-start !important;
  gap:10px !important;
}

.item-card-head h4{
  margin:2px 0 0 !important;
  font-size:.98rem !important;
  line-height:1.15 !important;
}

.item-type{
  font-size:.57rem !important;
}

.item-vnum{
  font-size:.62rem !important;
  white-space:nowrap;
}

.item-meta{
  margin-top:4px !important;
  font-size:.66rem !important;
}

.item-card-main>p{
  margin:6px 0 0 !important;
  font-size:.72rem !important;
  line-height:1.45 !important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.item-bonuses{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:5px !important;
  margin-top:8px !important;
}

.item-bonuses span{
  display:inline-flex !important;
  width:auto !important;
  justify-content:flex-start !important;
  gap:6px !important;
  padding:5px 7px !important;
  font-size:.63rem !important;
  border-radius:4px !important;
}

.item-bonuses em{
  white-space:nowrap;
}

.item-bonuses b{
  white-space:nowrap;
}

@media(max-width:600px){
  .item-card{
    grid-template-columns:50px minmax(0,1fr) !important;
    width:100% !important;
    padding:9px !important;
  }
  .item-card-icon{
    width:50px !important;
    height:50px !important;
  }
  .item-card-icon img{
    width:40px !important;
    height:40px !important;
  }
}

/* ============================
   V13.3 hard compact item layout
   ============================ */
.rich-content .item-reference{
  display:block !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:10px 0 14px !important;
}

.rich-content .item-card{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;

  width:min(100%,520px) !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;

  padding:9px 10px !important;
  gap:10px !important;
  margin:0 !important;

  border:1px solid #255f87 !important;
  border-radius:6px !important;
  background:linear-gradient(135deg,#071b2b,#04101a) !important;
}

.rich-content .item-card-icon{
  flex:0 0 50px !important;
  width:50px !important;
  height:50px !important;
  min-width:50px !important;
  min-height:50px !important;
  max-width:50px !important;
  max-height:50px !important;

  display:grid !important;
  place-items:center !important;
  align-self:flex-start !important;
  margin:0 !important;
}

.rich-content .item-card-icon img{
  display:block !important;
  width:40px !important;
  height:40px !important;
  max-width:40px !important;
  max-height:40px !important;
  object-fit:contain !important;
  margin:0 !important;
}

.rich-content .item-card-main{
  display:block !important;
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;

  height:auto !important;
  min-height:0 !important;
  max-height:none !important;

  margin:0 !important;
  padding:0 !important;
  align-self:flex-start !important;
}

.rich-content .item-card-head{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:8px !important;

  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.rich-content .item-type{
  display:block !important;
  margin:0 0 2px !important;
  padding:0 !important;
  line-height:1.2 !important;
}

.rich-content .item-card-head h4{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:.92rem !important;
  line-height:1.2 !important;
}

.rich-content .item-vnum{
  display:block !important;
  margin:1px 0 0 !important;
  padding:0 !important;
  line-height:1.2 !important;
}

.rich-content .item-meta{
  display:block !important;
  margin:4px 0 0 !important;
  padding:0 !important;
  font-size:.64rem !important;
  line-height:1.3 !important;
}

.rich-content .item-card-main > p{
  display:block !important;
  margin:5px 0 0 !important;
  padding:0 !important;
  height:auto !important;
  min-height:0 !important;

  font-size:.69rem !important;
  line-height:1.35 !important;

  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

.rich-content .item-bonuses{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:center !important;

  height:auto !important;
  min-height:0 !important;
  max-height:none !important;

  margin:6px 0 0 !important;
  padding:0 !important;
  gap:4px !important;
}

.rich-content .item-bonuses span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;

  width:auto !important;
  height:auto !important;
  min-height:0 !important;

  margin:0 !important;
  padding:4px 6px !important;
  gap:5px !important;

  font-size:.59rem !important;
  line-height:1.2 !important;
}

@media(max-width:600px){
  .rich-content .item-card{
    width:100% !important;
  }
}

/* ============================
   V13.4 portrait item card
   ============================ */
.rich-content .item-reference{
  margin:12px 0 18px !important;
}

.rich-content .item-card{
  display:block !important;
  position:relative !important;

  width:232px !important;
  max-width:232px !important;
  min-width:232px !important;

  height:auto !important;
  min-height:330px !important;
  max-height:none !important;

  padding:10px 10px 12px !important;
  margin:0 !important;

  border:1px solid #255f87 !important;
  border-radius:6px !important;
  background:linear-gradient(180deg,#071a2a,#04111c) !important;
}

.rich-content .item-card-icon{
  width:50px !important;
  height:50px !important;
  min-width:50px !important;
  min-height:50px !important;

  display:grid !important;
  place-items:center !important;

  margin:0 0 10px !important;
}

.rich-content .item-card-icon img{
  width:40px !important;
  height:40px !important;
  max-width:40px !important;
  max-height:40px !important;
  object-fit:contain !important;
}

.rich-content .item-card-main{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  min-height:250px !important;
  padding:0 !important;
  margin:0 !important;
}

.rich-content .item-card-head{
  display:block !important;
  position:static !important;
  margin:0 !important;
}

.rich-content .item-type{
  display:block !important;
  margin:0 0 5px !important;
  font-size:.57rem !important;
  letter-spacing:.08em !important;
}

.rich-content .item-card-head h4{
  display:block !important;
  margin:0 !important;
  font-size:.95rem !important;
  line-height:1.2 !important;
}

.rich-content .item-vnum{
  position:absolute !important;
  top:12px !important;
  right:10px !important;
  margin:0 !important;
  font-size:.60rem !important;
  color:#5f8097 !important;
}

.rich-content .item-meta{
  display:block !important;
  margin:22px 0 0 !important;
  font-size:.64rem !important;
}

.rich-content .item-card-main > p{
  display:block !important;
  margin:24px 0 0 !important;
  padding:0 !important;

  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;

  font-size:.68rem !important;
  line-height:1.45 !important;
  color:#8da8bc !important;
}

.rich-content .item-bonuses{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:4px !important;

  margin-top:auto !important;
  padding-top:18px !important;
}

.rich-content .item-bonuses span{
  display:inline-flex !important;
  width:auto !important;
  padding:4px 6px !important;
  gap:5px !important;
  font-size:.57rem !important;
  line-height:1.15 !important;
}

@media(max-width:600px){
  .rich-content .item-card{
    width:210px !important;
    max-width:210px !important;
    min-width:210px !important;
    min-height:300px !important;
  }
}

/* ============================
   V14 tables + item groups
   ============================ */
.rich-table-wrap{
  width:100%;
  overflow-x:auto;
  margin:20px 0;
  border:1px solid #235b82;
  border-radius:6px;
}
.rich-table{
  width:100%;
  border-collapse:collapse;
  min-width:520px;
  background:#04111c;
}
.rich-table th,
.rich-table td{
  padding:10px 12px;
  border-right:1px solid rgba(57,121,166,.22);
  border-bottom:1px solid rgba(57,121,166,.22);
  text-align:left;
  font-size:.78rem;
  vertical-align:top;
}
.rich-table th{
  background:#082036;
  color:#d9efff;
  font-weight:700;
}
.rich-table td{color:#8eabbf}
.rich-table tr:last-child td{border-bottom:0}
.rich-table th:last-child,.rich-table td:last-child{border-right:0}

.item-group{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:12px;
  margin:14px 0 20px;
}
.item-group .item-reference{
  margin:0 !important;
}
.item-group .item-card{
  width:220px !important;
  min-width:220px !important;
  max-width:220px !important;
}

@media(max-width:760px){
  .item-group{gap:8px}
  .item-group .item-card{
    width:200px !important;
    min-width:200px !important;
    max-width:200px !important;
  }
}
@media(max-width:480px){
  .item-group{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .item-group .item-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
}

.api-offline-banner{
  position:sticky;top:0;z-index:9999;padding:9px 14px;
  background:#5b1e1e;color:#ffd9d9;border-bottom:1px solid #a64c4c;
  text-align:center;font-size:.76rem
}
