:root{--black:#0b0d0e;--dark:#111415;--panel:#181c1d;--paper:#d8d2c7;--paper2:#e6e0d5;--steel:#252a2b;--ink:#17191a;--muted:#686966;--red:#a82637;--hot:#df4b5f;--green:#9cb65b;--line:#3a4041;--max:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#e8e4dd;font:16px/1.6 Arial,system-ui,sans-serif}a{text-decoration:none;color:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}header{position:sticky;top:0;z-index:20;background:#0b0d0ef2;border-bottom:1px solid #303536;backdrop-filter:blur(10px)}nav{height:68px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:900;letter-spacing:2px}.brand b{color:var(--hot);border:1px solid var(--hot);padding:8px}.links{display:flex;gap:22px;margin-left:auto}.links a{font-size:10px;font-weight:bold;letter-spacing:1.3px;color:#aab0ad}.links a:hover,.links a.active{color:var(--hot)}.online{font-size:9px;letter-spacing:1px;color:#8f9693}.online i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px;box-shadow:0 0 8px var(--green)}.menu{display:none;color:white;background:none;border:0;font-size:20px}.kicker{color:var(--hot);font-size:10px;font-weight:900;letter-spacing:3px}.btn{display:inline-block;padding:13px 18px;font-size:11px;font-weight:900;letter-spacing:1.4px;margin:5px 6px 5px 0}.red{background:var(--red);color:white}.red:hover{background:var(--hot)}.ghost{border:1px solid #596061}.full{display:block;text-align:center}.hero{min-height:600px;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(115deg,#090b0c,#161a1b 67%,#201419)}.grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(#8c9494 1px,transparent 1px),linear-gradient(90deg,#8c9494 1px,transparent 1px);background-size:48px 48px}.hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .7fr;gap:70px;align-items:center}.hero h1{font-size:clamp(80px,12vw,145px);line-height:.76;letter-spacing:-8px;margin:20px 0}.hero h1 em{font-style:normal;color:var(--hot)}.hero h2{font-size:clamp(30px,4vw,50px);line-height:1;margin:38px 0 16px}.intro{max-width:660px;color:#abb1af;font-size:18px}.status-panel,.console{background:#0a0c0d;border:1px solid #414748;box-shadow:12px 12px #08090a}.panel-head,.console-head{display:flex;justify-content:space-between;padding:11px 14px;border-bottom:1px solid #343a3b;font:700 9px monospace;letter-spacing:1.5px;color:#737c79}.stat{text-align:center;padding:25px}.stat span{display:block;font-size:9px;letter-spacing:2px;color:#747c79}.stat strong{display:block;color:var(--hot);font-size:70px;line-height:1}.rows{border-top:1px solid #343a3b}.rows p{display:flex;justify-content:space-between;margin:0;padding:9px 14px;border-bottom:1px solid #272c2d;font:10px monospace}.rows span{color:#747c79}.rows b{color:#ddd}.green{color:var(--green)!important}.signal{padding:12px 14px;color:var(--green);font:9px monospace;letter-spacing:1px}.section{padding:90px 0}.section h1,.section h2,.page-hero h1{font-size:clamp(42px,6vw,70px);line-height:.98;letter-spacing:-4px;margin:10px 0 18px}.lead{max-width:820px;color:#a7adaa;font-size:17px}.light{background:var(--paper);color:var(--ink)}.light .kicker{color:var(--red)}.light .lead{color:#626560}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:38px}.cards article,.link-card{padding:25px;background:#181c1d;border:1px solid #343a3b;border-top:3px solid var(--red)}.light .cards article,.light .link-card{background:var(--paper2);border-color:#b8b1a7}.cards b,.link-card b{font-size:10px;letter-spacing:1.5px;color:var(--hot)}.light .cards b,.light .link-card b{color:var(--red)}.cards h3,.link-card h3{font-size:21px}.cards p,.link-card p{color:#949b98;font-size:14px}.light .cards p,.light .link-card p{color:#666966}.page-hero{padding:105px 0 75px;background:linear-gradient(120deg,#0a0c0d,#181c1d 70%,#24151a);border-bottom:1px solid #303536}.page-hero p:not(.kicker){max-width:760px;color:#abb1af;font-size:18px}.two-col{display:grid;grid-template-columns:1fr .82fr;gap:70px;align-items:start}.steps{margin-top:28px;border-top:1px solid #343a3b}.steps p{margin:0;padding:12px 0;border-bottom:1px solid #343a3b;color:#d2d6d3}.steps b{color:var(--hot);margin-right:15px}.console-body{padding:28px}.console-body code{color:var(--green);font-size:11px}.console-body p{color:#a7adaa}.faq{margin-top:35px}.faq details{border-top:1px solid #aaa39a;padding:17px 0}.faq details:last-child{border-bottom:1px solid #aaa39a}.faq summary{font-weight:bold;cursor:pointer}.faq p{color:#626560}.protocol{display:grid;grid-template-columns:220px 1fr;gap:45px;margin-top:40px}.toc{position:sticky;top:90px;align-self:start;border:1px solid #aaa39a;padding:18px}.toc b{font-size:10px;letter-spacing:1.5px;color:var(--red)}.toc a{display:block;padding:7px 0;color:#5f625e;font-size:13px}.rule-block{border-top:2px solid var(--red);padding:25px 0}.rule-block h3{font-size:24px;margin:0 0 10px}.rule-block p,.rule-block li{color:#626560}.notice{background:#c9c2b7;border-left:4px solid var(--red);padding:18px;margin:20px 0}.ops-table{margin-top:35px;border:1px solid #3a4041}.op-row{display:grid;grid-template-columns:110px 1fr 140px;gap:20px;padding:17px;border-bottom:1px solid #303536;align-items:center}.op-row:last-child{border:0}.op-row time{font:700 11px monospace;color:var(--hot)}.op-row h3{margin:0;font-size:18px}.op-row p{margin:3px 0;color:#929996;font-size:13px}.op-row span{text-align:right;font-size:10px;letter-spacing:1px;color:#9ca3a0}.clock-box{margin-top:35px;background:#090b0c;border:1px solid #414748;padding:28px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.clock-box div{border-right:1px solid #303536}.clock-box div:last-child{border:0}.clock-box small{display:block;color:#747c79;font-size:9px;letter-spacing:1.5px}.clock-box strong{font:700 32px monospace;color:var(--hot)}.alliance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:35px}.alliance-card{background:#d8d2c7;border:1px solid #aaa39a;padding:24px}.alliance-card small{color:var(--red);font-weight:bold}.alliance-card strong{display:block;font-size:26px}.alliance-card span{color:#64645f}.alliance-card p{color:#666966;font-size:14px}.placeholder{font-size:10px;letter-spacing:1px;color:#8c554f}.manual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:35px}.manual-grid a{min-height:205px}.end{text-align:center;padding:90px 20px;background:#0b0d0e}.end h2{font-size:clamp(42px,6vw,70px);margin:5px}.end p:not(.kicker){color:#949b98}footer{padding:25px 0;background:#070809;border-top:1px solid #292d2e;color:#777;font-size:11px}footer .wrap{display:flex;justify-content:space-between}footer b{display:block;color:#ddd;letter-spacing:2px}footer span{font-size:9px;letter-spacing:1.5px}@media(max-width:850px){.links,.online{display:none}.menu{display:block;margin-left:auto}.hero{padding:70px 0;min-height:auto}.hero-grid,.two-col,.protocol{grid-template-columns:1fr}.cards,.manual-grid,.alliance-grid{grid-template-columns:1fr}.toc{position:static}.op-row{grid-template-columns:85px 1fr}.op-row span{grid-column:2;text-align:left}.clock-box{grid-template-columns:1fr}.clock-box div{border-right:0;border-bottom:1px solid #303536;padding-bottom:12px}.hero h1{letter-spacing:-5px}.section{padding:65px 0}footer .wrap{flex-direction:column;gap:8px}}
/* ===== S5 MOONLIT ELEGY THEME ===== */
:root{
 --black:#070914;--dark:#0d1120;--panel:#11182a;--paper:#151a2c;--paper2:#1b2135;
 --steel:#101727;--ink:#f3eadf;--muted:#b5a9b8;--red:#a7193d;--hot:#ef476f;
 --green:#70e29b;--line:#47354f;--gold:#d3a36a;--violet:#62477d;--moon:#f3d7dd
}
body{background:#070914;color:#f1e8df;background-image:radial-gradient(circle at 70% 0,#39234855,transparent 32%),linear-gradient(#070914,#0b1020)}
header{background:#070914ed;border-bottom:1px solid #6a4559;box-shadow:0 6px 25px #0008}
.brand b{border-color:var(--gold);color:var(--moon);box-shadow:inset 0 0 14px #a7193d55,0 0 12px #a7193d44}
.links a{font-family:Georgia,serif;color:#d8ced8}.links a:hover,.links a.active{color:#f3c2cf}
.hero{background:
 linear-gradient(90deg,#070914 0%,#0b1020e8 43%,#10152bbb 67%,#170c19cc 100%),
 radial-gradient(circle at 76% 27%,#f5cadb55 0 7%,#8b496655 8%,transparent 24%)}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:160px;background:linear-gradient(transparent,#070914);pointer-events:none}
.grid{opacity:.06;background-size:64px 64px}
.hero h1,.page-hero h1,.section h1,.section h2,.clock h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-2px}
.hero h1{letter-spacing:-5px;text-shadow:0 3px 0 #351420,0 0 30px #b91e4855}
.hero h1 em{color:#e64264;text-shadow:0 0 20px #d2265266}
.hero h2{font-family:Georgia,serif;font-weight:500;letter-spacing:.01em;color:#f2e7e1}
.kicker{color:#df9aaa;letter-spacing:3px}
.btn{font-family:Georgia,serif;border-radius:2px}
.red{background:linear-gradient(#a92345,#74152d);border:1px solid #dc6a82;box-shadow:inset 0 0 14px #ff819033,0 0 14px #a7193d33}
.ghost{border-color:#9d765d;color:#ead9ca}
.status-panel,.console{background:linear-gradient(145deg,#10172a,#090d19);border-color:#9a7058;box-shadow:0 0 0 3px #191225,12px 12px #04050b,0 0 30px #8c234033}
.panel-head,.console-head{border-color:#654655;color:#c9a7a6}
.stat strong{font-family:Georgia,serif;color:#e85a76;text-shadow:0 0 18px #c32b5144}
.rows{border-color:#493444}.rows p{border-color:#332637}.signal{color:#85e4a8}
.section{position:relative}.section:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#b57b5b88,transparent)}
.light{background:linear-gradient(180deg,#12182a,#0d1220);color:#f0e6de}.light .lead,.light .cards p,.light .link-card p,.rule-block p,.rule-block li,.faq p{color:#b8aeb7}.light .kicker,.light .cards b,.light .link-card b{color:#e38ca1}
.cards article,.link-card,.alliance-card{background:linear-gradient(145deg,#151c31,#0e1425)!important;border:1px solid #594152!important;border-top:2px solid #b17b5c!important;color:#f1e7df!important;box-shadow:inset 0 0 25px #0003}
.cards article:hover,.link-card:hover,.alliance-card:hover{border-color:#c88d70!important;transform:translateY(-2px);transition:.2s}
.cards p,.link-card p,.alliance-card p,.alliance-card span{color:#b9aeb7!important}
.cards b,.link-card b,.alliance-card small{color:#e88aa1!important}
.page-hero{background:
 radial-gradient(circle at 80% 35%,#dba4bd33 0 8%,#6b385244 9%,transparent 25%),
 linear-gradient(120deg,#080b17,#11172b 70%,#24101e);border-color:#664457}
.page-hero:after{content:"MOONLIT ELEGY // SEASON 05";display:block;width:min(1140px,calc(100% - 40px));margin:35px auto 0;color:#b78d78;font:700 10px Georgia,serif;letter-spacing:3px}
.manual-grid a{background:linear-gradient(145deg,#151c31,#0e1425);border-color:#594152;border-left:3px solid #a86e58}
.protocol .toc{background:#11182a;border-color:#654b58}.toc b{color:#e38ca1}.toc a{color:#c4b8bd}.rule-block{border-color:#b77762}.notice{background:#1a2033;border-left-color:#c26c79;color:#e5d8d3}
.ops-table{border-color:#57404f;background:#0c1120}.op-row{border-color:#352938}.op-row time{color:#e88aa1}.op-row p,.op-row span{color:#aea3ad}
.clock-box{background:linear-gradient(145deg,#10172a,#080c18);border-color:#9a7058;box-shadow:inset 0 0 25px #0005}.clock-box strong{color:#ed8da4}.clock-box div{border-color:#4b3545}
.end{background:radial-gradient(circle at 50% 100%,#4a233744,transparent 35%),#070914}
footer{background:#050610;border-color:#563746}
footer b{font-family:Georgia,serif;color:#e9d9cf}
.online i{background:#ef476f;box-shadow:0 0 8px #ef476f}
::selection{background:#9d2748;color:#fff}

/* seasonal hero art */
.moonlit-banner{position:relative;min-height:300px;background:
 linear-gradient(90deg,#070914cc 0%,#07091466 40%,transparent 72%),
 url("../assets/moonlit-elegy-concept.png") center 34%/cover no-repeat;
 border-top:1px solid #8d604f;border-bottom:1px solid #8d604f;box-shadow:inset 0 0 80px #000b}
.moonlit-banner .wrap{min-height:300px;display:flex;align-items:end;padding-bottom:35px}
.moonlit-banner .caption{max-width:470px;background:#080b16dd;border-left:3px solid #c48268;padding:18px 22px;backdrop-filter:blur(4px)}
.moonlit-banner h3{font:500 30px/1 Georgia,serif;margin:6px 0;color:#f4e6de}
.moonlit-banner p{margin:6px 0 0;color:#bdaeb5}
@media(max-width:850px){.moonlit-banner{background-position:62% center}.moonlit-banner .caption{max-width:90%}}

/* ===== v0.6 MOCKUP-LED HOMEPAGE ===== */
.mockup-home header{position:absolute;width:100%;background:linear-gradient(#060914f5,#080b16d9);border-bottom:1px solid #8d604f;box-shadow:0 6px 24px #0009}
.mockup-home main{padding-top:0}
.mock-hero{height:min(610px,68vw);min-height:500px;position:relative;background:url("../assets/moonlit-elegy-concept.png") center 14%/cover no-repeat;border-bottom:1px solid #a8795f;overflow:hidden}
.mock-shade{position:absolute;inset:0;background:linear-gradient(90deg,#070914e8 0%,#070914b8 25%,#0709144c 48%,transparent 72%),linear-gradient(0deg,#070914a8 0%,transparent 38%)}
.mock-hero-inner{height:100%;display:flex;align-items:center;position:relative;padding-top:70px}
.mock-copy{width:46%;min-width:500px;text-shadow:0 2px 8px #000}
.mock-copy h1{font:500 clamp(70px,9vw,132px)/.76 Georgia,serif;letter-spacing:-6px;margin:14px 0;color:#f1e7e2}
.mock-copy h1 em{font-style:normal;color:#e14363;text-shadow:0 0 22px #c1274e88}
.mock-copy h2{font:500 clamp(20px,2vw,30px)/1 Georgia,serif;letter-spacing:8px;margin:28px 0;color:#f0e4dd}
.motto{font:700 12px/1.8 Georgia,serif;letter-spacing:3px;color:#e2d6d3}
.mock-dashboard{background:linear-gradient(#080c18,#0b1020 55%,#080b16);padding:22px 0 50px;position:relative}
.dash-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.95fr);gap:18px;align-items:start}
.state-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #9a7058;background:linear-gradient(145deg,#10172a,#090d19);box-shadow:inset 0 0 28px #0005;padding:18px 10px}
.state-strip>div{padding:0 18px;border-right:1px solid #4a3545}.state-strip>div:last-child{border:0}
.state-strip small,.state-strip span{display:block;font-size:9px;letter-spacing:1.4px;color:#9c919a}.state-strip strong{display:block;font:500 27px Georgia,serif;color:#f2dfd0;margin:3px 0}.state-strip .small-strong{font-size:17px;margin:8px 0}
.section-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #604354;margin-top:18px;padding:0 10px 8px}.section-bar h3{margin:0;font:500 17px Georgia,serif;letter-spacing:2px}.section-bar a{font-size:9px;letter-spacing:1px;color:#c6b8b7}
.mock-ops{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.mock-ops a{position:relative;min-height:145px;padding:75px 14px 14px;border:1px solid #4d3a4a;background:linear-gradient(0deg,#0b1324 0 45%,#201528cc),radial-gradient(circle at 50% 0,#713247,transparent 70%);overflow:hidden}.mock-ops a:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,transparent,#0a0d18 78%);opacity:.7}.mock-ops small,.mock-ops strong,.mock-ops span,.mock-ops i{position:relative;z-index:1;display:block}.mock-ops small{font-size:8px;letter-spacing:1px;color:#b6a9b0}.mock-ops strong{font:500 17px Georgia,serif;margin:3px 0}.mock-ops span{font-size:9px;letter-spacing:1px;color:#d5a66f}.mock-ops i{position:absolute;right:13px;bottom:13px;font-style:normal;font-size:22px}
.mock-clock{border:1px solid #9a7058;background:linear-gradient(145deg,#10172a,#090d19);padding:17px;box-shadow:inset 0 0 30px #0005}.clock-title{font:500 15px Georgia,serif;letter-spacing:2px;border-bottom:1px solid #503a48;padding-bottom:12px}.clock-cells{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.clock-cells div{border:1px solid #3e3546;background:#10182b;padding:18px 8px;text-align:center}.clock-cells small,.clock-cells span{display:block;font-size:8px;letter-spacing:1px;color:#aaa0a8}.clock-cells strong{display:block;font:500 23px Georgia,serif;color:#f1d8c7;margin:8px 0}.mock-clock>a{display:block;text-align:center;border:1px solid #3f3a4a;background:#111a2e;padding:12px;font-size:9px;letter-spacing:1px}
.quick{margin-top:15px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.quick-grid a{min-height:112px;border:1px solid #8a6555;background:linear-gradient(145deg,#171728,#0d1220);padding:25px 45px 18px 22px;position:relative;box-shadow:inset 0 0 20px #0004}.quick-grid b{display:block;font:500 15px Georgia,serif;letter-spacing:1px}.quick-grid span{display:block;color:#9f949d;font-size:9px;letter-spacing:1px;margin-top:9px}.quick-grid i{position:absolute;right:18px;top:43px;font-style:normal;font-size:22px}
@media(max-width:900px){.mockup-home header{position:relative}.mock-hero{height:600px;background-position:63% center}.mock-hero-inner{align-items:end;padding-bottom:45px}.mock-copy{width:100%;min-width:0;background:#070914b8;padding:22px}.dash-grid{grid-template-columns:1fr}.state-strip{grid-template-columns:1fr 1fr}.state-strip>div{border-bottom:1px solid #4a3545;padding:14px}.mock-ops,.quick-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mock-hero{height:560px}.mock-copy h1{font-size:65px;letter-spacing:-3px}.mock-copy h2{letter-spacing:4px}.motto{font-size:10px;letter-spacing:2px}.mock-ops,.quick-grid,.state-strip{grid-template-columns:1fr}.state-strip>div{border-right:0}.clock-cells{grid-template-columns:1fr}}

/* ===== v0.7 INTEGRATED ARTWORK FIXES ===== */
/* The approved artwork is the hero. Do not print a second STATE 172 over it. */
.mock-hero{height:min(610px,64vw);min-height:510px;background-position:center top}
.mock-shade{background:linear-gradient(90deg,#07091422 0%,transparent 35%,transparent 78%,#07091418),linear-gradient(0deg,#070914aa 0%,transparent 28%)}
.mock-hero-inner{align-items:flex-end;padding-bottom:38px}
.hero-actions{position:relative;z-index:3}
.hero-actions .btn{box-shadow:0 0 24px #a7193d66}

/* Give operation tiles the visual thumbnails from the approved concept. */
.mock-ops a{padding:76px 14px 14px;background-size:cover!important;background-position:center!important}
.mock-ops a:before{background:linear-gradient(0deg,#08101ff5 0 43%,#08101f66 70%,#08101f10 100%);opacity:1}
.mock-ops .ava{background-image:url("../assets/ava.jpg")!important}
.mock-ops .glory{background-image:url("../assets/glory-war.jpg")!important}
.mock-ops .invasion{background-image:url("../assets/invasion-rights.jpg")!important}
.mock-ops .trade{background-image:url("../assets/trade-hub.jpg")!important}

/* Quick Access uses art on the left, text on the right, matching the mockup. */
.quick-grid a{min-height:122px;padding:25px 38px 18px 42%;background-size:42% 100%!important;background-repeat:no-repeat!important;background-position:left center!important;overflow:hidden}
.quick-grid a:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 28%,#101525dd 43%,#101525 58%);z-index:0}
.quick-grid b,.quick-grid span,.quick-grid i{position:relative;z-index:1}
.quick-grid .manual{background-image:url("../assets/field-manual.jpg")!important}
.quick-grid .migrate{background-image:url("../assets/migration.jpg")!important}
.quick-grid .alliance{background-image:url("../assets/alliances.jpg")!important}
.quick-grid .operation{background-image:url("../assets/operations.jpg")!important}

/* Reduce the sense of a duplicate dashboard: tighter transition from hero to live content. */
.mock-dashboard{padding-top:16px;border-top:1px solid #9a7058}
.state-strip,.mock-clock{min-height:165px}
.dash-grid{align-items:stretch}
.mock-clock{height:100%}

@media(max-width:900px){
 .mock-hero{height:560px;min-height:560px;background-position:62% top}
 .mock-hero-inner{align-items:flex-end;padding-bottom:28px}
 .quick-grid a{padding-left:38%}
}
@media(max-width:560px){
 .mock-hero{height:500px;min-height:500px;background-position:67% top}
 .quick-grid a{padding-left:44%;background-size:46% 100%!important}
}

/* ===== v0.8 CLEAN WALLPAPER + CLEAN CARD ART ===== */
.mock-hero{
 height:clamp(430px,31vw,590px);
 min-height:0;
 background-image:url("../assets/moonlit-elegy-concept.png");
 background-size:cover;
 background-position:center center;
 background-repeat:no-repeat;
 border-bottom:1px solid #9a7058
}
.mock-shade{display:none}
.mock-hero-inner{display:none}

/* Card art is now clean atmosphere only: no copied labels, buttons or UI text. */
.mock-ops .ava{background-image:url("../assets/op-ava-clean.jpg")!important}
.mock-ops .glory{background-image:url("../assets/op-glory-clean.jpg")!important}
.mock-ops .invasion{background-image:url("../assets/op-invasion-clean.jpg")!important}
.mock-ops .trade{background-image:url("../assets/op-trade-clean.jpg")!important}
.quick-grid .manual{background-image:url("../assets/qa-manual-clean.jpg")!important}
.quick-grid .migrate{background-image:url("../assets/qa-migration-clean.jpg")!important}
.quick-grid .alliance{background-image:url("../assets/qa-alliance-clean.jpg")!important}
.quick-grid .operation{background-image:url("../assets/qa-operations-clean.jpg")!important}

/* Slightly more restrained cards: imagery is supporting texture, live HTML remains the content. */
.mock-ops a{background-size:cover!important;background-position:center!important}
.mock-ops a:before{background:linear-gradient(0deg,#080d1bf5 0 46%,#080d1b8f 72%,#080d1b20 100%)}
.quick-grid a{background-size:42% 100%!important}
.quick-grid a:before{background:linear-gradient(90deg,#080d1b18 0 24%,#0d1220e8 42%,#0d1220 58%)}

@media(max-width:900px){
 .mock-hero{height:clamp(330px,54vw,500px);background-position:center center}
}
@media(max-width:560px){
 .mock-hero{height:280px;background-position:center center}
}

/* ===== v0.9 APPROVED CLEAN WALLPAPER PREVIEW ===== */
.wallpaper-hero{
 position:relative;
 height:clamp(500px,42vw,720px);
 min-height:500px;
 background-image:url("../assets/moonlit-wallpaper.png")!important;
 background-size:cover!important;
 background-position:center center!important;
 background-repeat:no-repeat!important;
 display:flex;
 align-items:center;
 border-bottom:1px solid #9a7058;
}
.wallpaper-hero:after{
 content:"";position:absolute;inset:0;
 background:linear-gradient(90deg,#060914d8 0%,#0609148c 23%,#06091418 46%,transparent 68%),
 linear-gradient(0deg,#070914a0 0%,transparent 25%);
 pointer-events:none
}
.wallpaper-overlay{position:relative;z-index:2}
.wallpaper-copy{max-width:560px;text-shadow:0 3px 12px #000}
.wallpaper-copy h1{font:500 clamp(72px,9vw,132px)/.78 Georgia,serif;letter-spacing:-6px;margin:15px 0;color:#f4e8e1}
.wallpaper-copy h1 em{font-style:normal;color:#e44365;text-shadow:0 0 22px #c1274e88}
.wallpaper-copy h2{font:500 clamp(20px,2vw,30px)/1 Georgia,serif;letter-spacing:8px;margin:28px 0 20px;color:#f0e4dd}
.wallpaper-copy>p:not(.kicker){font:500 14px/1.8 Georgia,serif;letter-spacing:1.6px;color:#ddd0d2}
.wallpaper-actions{margin-top:25px}
@media(max-width:900px){
 .wallpaper-hero{height:600px;background-position:60% center!important}
 .wallpaper-hero:after{background:linear-gradient(90deg,#060914dc 0%,#060914a8 45%,transparent 90%),linear-gradient(0deg,#070914a0,transparent 35%)}
}
@media(max-width:560px){
 .wallpaper-hero{height:520px;min-height:520px;background-position:64% center!important}
 .wallpaper-copy h1{font-size:64px;letter-spacing:-3px}
 .wallpaper-copy h2{letter-spacing:4px}
 .wallpaper-copy>p:not(.kicker){font-size:12px}
}

/* ===== v1.0 INITIAL DEPLOYMENT POLISH ===== */
.coming-hero{min-height:420px;display:flex;align-items:center}
.coming-console{max-width:720px;margin:auto}
.coming-console .console-head b{color:#d3a36a}
a:focus-visible,button:focus-visible{outline:2px solid #ef8da5;outline-offset:3px}
footer p{max-width:520px;text-align:right}
@media(max-width:850px){footer p{text-align:left}}

/* v1.1 // EVENT CALENDAR */
.event-calendar{padding-top:34px}.calendar-title{font:500 clamp(38px,5vw,66px)/1 Georgia,serif;margin:8px 0 12px}.calendar-intro{max-width:790px;color:#aaa0aa;line-height:1.7}
.calendar-tabs{display:flex;gap:8px;margin:28px 0 18px;border-bottom:1px solid #654253;padding-bottom:8px}.cal-tab{background:#0e1424;border:1px solid #5b4150;color:#c9bdc3;padding:13px 18px;font:700 10px Georgia,serif;letter-spacing:1.5px;cursor:pointer}.cal-tab.active{background:#8d1739;color:#fff;border-color:#d04d70}
.calendar-panel{display:none}.calendar-panel.active{display:block}.cal-head{display:flex;justify-content:space-between;align-items:end;margin:15px 0}.cal-head span,.ava-grid b,.week-grid b{font-size:9px;letter-spacing:1.5px;color:#dc8da2}.cal-head h3{font:500 26px Georgia,serif;margin:4px 0}.cal-head p{color:#8f8790;font-size:11px}
.ava-grid,.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.ava-grid article,.week-grid article{position:relative;min-height:210px;border:1px solid #5d4050;background:linear-gradient(160deg,#15172a,#090e1b);padding:20px 15px;overflow:hidden}.week-grid article{min-height:255px}.ava-grid article:after,.week-grid article:after{content:"";position:absolute;right:-35px;bottom:-50px;width:120px;height:120px;border:1px solid #6d344c;border-radius:50%;opacity:.22}
.ava-grid h4,.week-grid h4{font:500 17px Georgia,serif;color:#f1e2da;margin:18px 0 7px}.ava-grid p,.week-grid p{font-size:10px;line-height:1.65;color:#aaa0aa}.ava-grid article.today,.week-grid article.today{border-color:#e65a7e;box-shadow:inset 0 0 30px #a51d432b,0 0 18px #8b173633}.ava-grid article.today:before,.week-grid article.today:before{content:"TODAY";position:absolute;right:9px;top:9px;background:#a61942;color:#fff;padding:4px 7px;font-size:8px;letter-spacing:1px}.rest-card{opacity:.72}.variable{display:block;margin-top:14px;border-top:1px solid #423341;padding-top:10px;color:#d7a86e;font-size:9px;letter-spacing:.8px}
.season-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.season-notes div{border:1px solid #443747;background:#0d1322;padding:15px}.season-notes b{display:block;font:500 12px Georgia,serif;color:#eeddd5;margin-bottom:7px}.season-notes span{font-size:9px;line-height:1.55;color:#9f959e}
@media(max-width:1000px){.ava-grid,.week-grid{grid-template-columns:repeat(2,1fr)}.season-notes{grid-template-columns:1fr}.cal-head{display:block}}@media(max-width:560px){.calendar-tabs{display:grid}.ava-grid,.week-grid{grid-template-columns:1fr}.ava-grid article,.week-grid article{min-height:160px}}

/* ===== v1.1 READABILITY PASS — SITEWIDE ===== */
/* Baseline: decorative microcopy may be compact, but actual information must be comfortable to read. */
body{font-size:16px;line-height:1.6}
p,li{line-height:1.65}
.links a{font-size:12px}
.brand span{font-size:12px}
.kicker{font-size:12px;line-height:1.5}
.btn{font-size:12px;line-height:1.25;padding:14px 18px}
.hero p,.page-hero p{font-size:16px;line-height:1.65}
.cards p,.link-card p,.alliance-card p,.rule-block p,.rule-block li,.faq p{font-size:14px;line-height:1.65}
.cards b,.link-card b,.alliance-card small{font-size:11px}
.panel-head,.console-head{font-size:12px}
.rows p{font-size:14px}
.ops-table,.op-row p,.op-row span{font-size:13px}
.mock-ops small,.mock-ops span{font-size:11px;line-height:1.45}
.mock-ops strong{font-size:19px}
.state-strip small,.state-strip span{font-size:11px;line-height:1.45}
.section-bar a{font-size:11px}
.quick-grid b{font-size:17px}
.quick-grid span{font-size:12px;line-height:1.5}
.clock-cells small,.clock-cells span{font-size:10px;line-height:1.4}
.mock-clock>a{font-size:11px}
footer{font-size:12px}
footer span,footer p{font-size:12px;line-height:1.5}

/* Calendar: prioritize legibility over fitting seven tiny columns. */
.cal-tab{font-size:12px;padding:14px 20px}
.cal-head span,.ava-grid b,.week-grid b{font-size:12px;line-height:1.45}
.cal-head p{font-size:13px}
.ava-grid h4,.week-grid h4{font-size:19px;line-height:1.25}
.ava-grid p,.week-grid p{font-size:14px;line-height:1.6}
.variable{font-size:12px;line-height:1.5}
.season-notes b{font-size:14px}
.season-notes span{font-size:13px;line-height:1.6}
.ava-grid article.today:before,.week-grid article.today:before{font-size:10px}

/* On ordinary desktop widths use fewer, wider cards instead of shrinking copy. */
@media(max-width:1250px) and (min-width:1001px){
 .ava-grid,.week-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:1000px){
 body{font-size:16px}
 .ava-grid,.week-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
 .links a{font-size:13px}
 .hero p,.page-hero p{font-size:15px}
 .cards p,.link-card p,.alliance-card p,.rule-block p,.rule-block li,.faq p{font-size:14px}
 .ava-grid h4,.week-grid h4{font-size:20px}
 .ava-grid p,.week-grid p{font-size:15px}
 .quick-grid span{font-size:13px}
}
