*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#17130e;color:#eee}.auth-card{width:min(460px,92%);margin:7vh auto;padding:34px;background:#241c14;border:1px solid #8d6a32;box-shadow:0 15px 50px #0008}.auth-card h1{text-align:center;font-family:Georgia,serif;letter-spacing:8px;color:#d9a83e;margin:0 0 8px}.auth-card h2{text-align:center;font-weight:normal;margin:0 0 28px;color:#cbbda8}.auth-card label{display:block;margin:14px 0 6px;color:#cbbda8}.auth-card input,.auth-card select{width:100%;padding:12px;background:#120f0b;border:1px solid #65502e;color:#fff;border-radius:4px}.auth-card button{width:100%;margin-top:22px;padding:13px;border:0;background:#a97822;color:#fff;font-weight:bold;cursor:pointer}.auth-card a,.topbar a{color:#d9a83e}.error{padding:10px;margin-bottom:10px;background:#5d2924;border:1px solid #a64d40}.topbar{height:62px;background:#201811;border-bottom:1px solid #6e542d;display:flex;align-items:center;gap:30px;padding:0 25px}.topbar .logo{font-family:Georgia,serif;font-size:24px;letter-spacing:5px;color:#d9a83e;margin-right:auto}.game-shell{max-width:1100px;margin:35px auto;padding:0 20px}.panel{background:#241c14;border:1px solid #6e542d;padding:25px;margin-bottom:20px}.panel h1,.panel h2{font-family:Georgia,serif;color:#d9a83e}.resources{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.resources div{background:#15110d;border:1px solid #574325;padding:18px}.resources b,.resources span{display:block}.resources span{font-size:24px;margin-top:7px}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions a{padding:12px 18px;background:#79561f;color:white;text-decoration:none}.map-wrap{max-width:1000px;margin:30px auto;padding:0 20px}.map{display:grid;grid-template-columns:repeat(15,42px);grid-auto-rows:42px;width:max-content;margin:auto;border:2px solid #72572e}.tile{width:42px;height:42px;border:1px solid #ffffff0a;display:flex;align-items:center;justify-content:center;font-size:19px}.tile.plain{background:#5d6a43}.tile.forest{background:#284b31}.tile.mountain{background:#5b5a54}.tile.water{background:#2c5367}.village{filter:drop-shadow(0 2px 2px #000);font-size:20px}@media(max-width:650px){.resources{grid-template-columns:repeat(2,1fr)}.map{transform:scale(.75);transform-origin:top left;margin-bottom:-200px}}

/* AETERNA 0.2 – játékfelület */
body{background:#110e0a;color:#eadfca}.topbar{height:72px;padding:0 28px;gap:24px;background:linear-gradient(180deg,#211910,#17120d);border-bottom:1px solid #75582d;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;width:170px;height:58px}.brand img{width:100%;height:100%;object-fit:contain}.main-nav{display:flex;gap:5px;height:100%;align-items:center}.main-nav a{padding:25px 14px 22px;text-decoration:none;color:#bcae96;border-bottom:2px solid transparent}.main-nav a:hover,.main-nav a.active{color:#e4b44c;border-color:#b57d24;background:#2a2015}.top-player{margin-left:auto;color:#9e927e;font-size:14px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#9e7840}.village-heading,.world-header{display:flex;justify-content:space-between;align-items:center}.village-heading h1,.world-header h1{margin:6px 0 3px;font-family:Georgia,serif;color:#e0ad47;font-size:32px}.village-heading p,.world-header p{margin:0;color:#9f9583}.village-stat{text-align:center;border-left:1px solid #4d3a22;padding-left:30px}.village-stat small,.resource-card small{display:block;color:#8d826e}.village-stat strong{font:30px Georgia,serif;color:#d9a83e}.resource-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:0 0 20px}.resource-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#241c14,#17120e);border:1px solid #574324}.resource-card>span{font-size:25px}.resource-card b{display:block;color:#c9b89b}.resource-card strong{display:block;color:#f0d18b;font-size:20px}.village-scene{height:500px;position:relative;overflow:hidden;padding:0;background:#283b25;border-color:#76582b;background-image:linear-gradient(160deg,#31462a 0 40%,#55613b 40% 100%)}.scene-sky{position:absolute;inset:0 0 54%;background:linear-gradient(#243a45,#60766c)}.mountain{position:absolute;bottom:45%;width:0;height:0;border-left:170px solid transparent;border-right:170px solid transparent;border-bottom:180px solid #3f4b43;filter:drop-shadow(0 5px 4px #0005)}.mountain-a{left:3%}.mountain-b{right:3%;border-left-width:220px;border-right-width:220px;border-bottom-color:#34423c}.road{position:absolute;background:#927a52;box-shadow:inset 0 0 0 2px #655236}.road-main{width:120%;height:55px;left:-10%;top:58%;transform:rotate(-8deg)}.road-side{width:55px;height:75%;left:49%;top:36%;transform:rotate(18deg)}.v-building{position:absolute;text-align:center;filter:drop-shadow(0 7px 5px #0008)}.v-building span{display:flex;width:92px;height:72px;align-items:center;justify-content:center;font-size:50px;background:#6c5130aa;border:2px solid #3a2918;border-radius:8px}.v-building small{display:block;margin-top:5px;padding:3px 7px;background:#1b140dca;border:1px solid #6d522c;color:#e0c183}.manor{left:42%;top:34%}.manor span{width:130px;height:100px;font-size:68px;background:#80633aaa}.house-a{left:18%;top:55%}.house-b{right:19%;top:51%}.field-a{left:5%;top:72%}.field-b{right:5%;top:69%}.stone-yard{left:32%;top:69%}.forest-yard{right:34%;top:68%}.scene-title{position:absolute;left:50%;top:12%;transform:translateX(-50%);padding:7px 20px;background:#16110bd9;border:1px solid #a47a32;color:#e4bd69;font:22px Georgia,serif}.section-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #4b3821;margin-bottom:12px}.section-title h2{margin:0 0 10px}.section-title span{font-size:12px;color:#847865}.building-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.building-list>div{background:#17120e;border:1px solid #4a3822;padding:15px}.building-list b,.building-list span{display:block}.building-list span{color:#958975;font-size:13px;margin:6px 0 14px}.building-list button,.tile-info button{border:1px solid #604820;background:#2a2117;color:#766956;padding:8px;font-size:12px}.map-tools{display:flex;gap:5px;flex-wrap:wrap}.map-tools a{display:inline-block;text-decoration:none;color:#d6b466;background:#2a2116;border:1px solid #604923;padding:8px 11px}.world-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.map-panel{overflow:auto}.map-grid{display:grid;grid-template-columns:repeat(21,38px);grid-auto-rows:38px;width:max-content;margin:auto;border:2px solid #8a6a35;background:#15110d}.map-tile{position:relative;width:38px;height:38px;border:1px solid #ffffff12;text-decoration:none;display:flex;align-items:center;justify-content:center;overflow:hidden}.map-tile.plain{background:linear-gradient(135deg,#6d784b,#58643d)}.map-tile.forest{background:linear-gradient(135deg,#294c32,#1e3927)}.map-tile.mountain{background:linear-gradient(135deg,#68665d,#4b4a45)}.map-tile.water{background:linear-gradient(135deg,#37687c,#244b5e)}.map-tile:hover{outline:2px solid #e0ad47;z-index:2}.map-tile small{position:absolute;bottom:1px;right:2px;font-size:7px;color:#fff8;opacity:0}.map-tile:hover small{opacity:1}.terrain-detail{position:absolute;inset:0;opacity:.18;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:8px 8px}.forest .terrain-detail{background-image:radial-gradient(#0a0 2px,transparent 2px);background-size:10px 10px}.mountain .terrain-detail{background-image:linear-gradient(135deg,transparent 45%,#fff 46%,transparent 50%)}.water .terrain-detail{background-image:repeating-linear-gradient(0deg,transparent 0 7px,#fff 8px,transparent 9px)}.tile-village{font-size:21px;filter:drop-shadow(0 2px 2px #000)}.tile-marker{position:absolute;color:#ffd45f;font-size:10px;bottom:1px;left:2px;text-shadow:0 1px 2px #000}.own-tile{box-shadow:inset 0 0 0 2px #e1af46}.map-legend{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:14px;color:#978b78;font-size:12px}.legend{display:inline-block;width:12px;height:12px;vertical-align:-2px;margin-right:4px;border:1px solid #554}.legend.plain{background:#647044}.legend.forest{background:#294c32}.legend.mountain{background:#5c5a55}.legend.water{background:#315f73}.tile-info h2{font:26px Georgia,serif;color:#e0ad47;margin:7px 0}.terrain-name{color:#b99a62}.muted{color:#786e60;line-height:1.6}.village-info{text-align:center;border-top:1px solid #4c3921;margin-top:18px;padding-top:18px}.big-icon{font-size:45px}.village-info h3{font-family:Georgia,serif;color:#dfb052;margin:8px 0}.village-info p{margin:4px;color:#9a8e7b}.village-info a{display:inline-block;margin-top:12px;padding:10px 12px;background:#7d5920;color:#fff;text-decoration:none}.world-page{max-width:1250px}
@media(max-width:850px){.main-nav{display:none}.top-player{display:none}.world-layout{grid-template-columns:1fr}.building-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.resource-strip{grid-template-columns:repeat(2,1fr)}.village-scene{height:420px}.village-heading{align-items:flex-start}.village-stat{padding-left:15px}.brand{width:135px}.map-grid{grid-template-columns:repeat(21,34px);grid-auto-rows:34px}.map-tile{width:34px;height:34px}}
.notice{padding:14px 16px;margin-bottom:18px;border:1px solid #6e542d;background:#20170f}.notice.error{background:#54251f;border-color:#9a4a3e;color:#f2c1b7}.notice.success{background:#263d24;border-color:#5f824e;color:#d3e9c8}.small-link,.mini-button{color:#d7ad58;text-decoration:none}.mini-button{display:inline-block;padding:7px 9px;border:1px solid #604820;background:#2a2117;font-size:12px}.building-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.building-card{background:linear-gradient(145deg,#211910,#15110d);border:1px solid #4e3a22;padding:18px;min-height:315px;display:flex;flex-direction:column}.building-art{height:72px;display:flex;align-items:center;justify-content:center;font-size:50px;background:#2b2116;border:1px solid #584325;margin-bottom:12px}.building-card h3{margin:0;color:#e0b45a;font-family:Georgia,serif}.building-card .level{margin-top:6px;color:#b9a78d}.building-card p{font-size:13px;line-height:1.5;color:#8e826f;min-height:58px}.cost-line{font-size:11px;color:#c6b494;margin:7px 0}.time-line{font-size:12px;color:#8f8068;margin-bottom:12px}.gold-button{margin-top:auto;width:100%;padding:10px;border:1px solid #9b712b;background:linear-gradient(#9b6f20,#6e4e18);color:#fff2ce;font-weight:bold;cursor:pointer}.gold-button:disabled{opacity:.45;cursor:not-allowed}.maxed{margin-top:auto;color:#8f816d;text-align:center;border:1px solid #40301d;padding:9px}.construction{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(110deg,#241c14,#302315)}.construction h2{margin:5px 0;color:#e0b45a;font-family:Georgia,serif}.construction p{color:#9f927e}.construction-icon{font-size:55px}.section-title .small-link{font-size:12px}.building-list a{margin-top:2px}
@media(max-width:1000px){.building-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.building-cards{grid-template-columns:1fr}.construction{align-items:flex-start}.construction-icon{display:none}}
/* AETERNA 0.5 – valódi faluképernyő */
.village-canvas{height:650px;position:relative;overflow:hidden;padding:0!important;border-color:#70552d;background:#59683f;box-shadow:inset 0 0 80px #17120b99,0 18px 45px #0007}
.terrain{position:absolute;inset:0;background:linear-gradient(180deg,#6f817c 0 31%,#637344 31% 100%)}
.horizon:after{content:"";position:absolute;left:0;right:0;bottom:0;height:60%;background:repeating-linear-gradient(175deg,transparent 0 24px,#536238 25px 27px,#6f7b45 28px 48px);opacity:.55}
.mountain{position:absolute;z-index:1;bottom:53%;width:0;height:0;border-left:190px solid transparent;border-right:190px solid transparent;border-bottom:180px solid #4a554d;filter:drop-shadow(0 7px 4px #0005)}
.m1{left:2%}.m2{right:1%;border-left-width:250px;border-right-width:250px;border-bottom-color:#3f4b45}
.forest-line{position:absolute;z-index:2;left:0;right:0;top:29%;height:20%;background:radial-gradient(circle at 8% 70%,#263f29 0 25px,transparent 26px),radial-gradient(circle at 18% 45%,#29472d 0 34px,transparent 35px),radial-gradient(circle at 30% 72%,#203c28 0 28px,transparent 29px),radial-gradient(circle at 78% 55%,#27442b 0 34px,transparent 35px),radial-gradient(circle at 90% 70%,#203a25 0 30px,transparent 31px);opacity:.85}
.river{position:absolute;z-index:2;right:-12%;top:24%;width:28%;height:92%;background:linear-gradient(90deg,#4c7180,#6f99a3,#456c79);transform:rotate(14deg);border-left:5px solid #abc0b5aa;border-right:3px solid #294d58aa;box-shadow:0 0 22px #b6d0cc55}
.main-road{position:absolute;z-index:3;left:-8%;top:57%;width:118%;height:88px;background:#9a8157;transform:rotate(-6deg);box-shadow:inset 0 8px 0 #c0a87955,inset 0 -8px 0 #6e573b77,0 4px 8px #0005}
.main-road:after{content:"";position:absolute;left:0;right:0;top:39px;border-top:3px dashed #d6bd8a99}
.town-title{position:absolute;z-index:10;top:18px;left:50%;transform:translateX(-50%);background:#17120de8;border:1px solid #a77b31;padding:9px 22px;text-align:center;box-shadow:0 5px 20px #0006}.town-title span{display:block;font-size:9px;letter-spacing:3px;color:#b9995e}.town-title strong{display:block;font:22px Georgia,serif;color:#edc773;margin-top:2px}
.vslot{position:absolute;z-index:6;border:1px solid #4c351d;background:#231a12d9;color:#ead9b5;border-radius:7px;cursor:pointer;padding:0 8px 8px;box-shadow:0 8px 14px #0007;transition:.16s transform,.16s filter}.vslot:hover{transform:translateY(-5px) scale(1.03);filter:brightness(1.16)}.building-slot span{display:flex;width:94px;height:70px;align-items:center;justify-content:center;font-size:45px;background:linear-gradient(#7d674a,#4e3925);border-bottom:1px solid #9c7941;border-radius:6px 6px 0 0}.building-slot b,.field-slot b{display:block;font:12px Georgia,serif;color:#e5c477;margin-top:5px}.vslot small{display:block;color:#a99b82;font-size:10px;margin-top:2px}.vslot.empty{opacity:.68;border-style:dashed}.vslot.empty span{filter:grayscale(.7)}
.b-slot-1{left:40%;top:34%}.b-slot-2{left:17%;top:43%}.b-slot-3{left:4%;top:57%}.b-slot-4{left:29%;top:66%}.b-slot-5{left:53%;top:65%}.b-slot-6{left:72%;top:51%}.b-slot-7{left:56%;top:40%}.b-slot-8{left:77%;top:68%}.b-slot-9{left:34%;top:45%}.b-slot-10{left:66%;top:35%}.b-slot-11{left:13%;top:67%}
.field-slot{width:112px;background:#76603ad9;border-color:#b39154;border-radius:4px}.field-slot span{display:block;font-size:31px;line-height:48px}.field-slot b{font-family:Arial}.field-1{left:1%;top:80%}.field-2{left:14%;top:82%}.field-3{left:29%;top:80%}.field-4{left:44%;top:83%}.field-5{left:58%;top:81%}.field-6{left:72%;top:82%}.field-7{left:84%;top:78%}.field-8{left:37%;top:73%}
.village-bottom{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick-grid a{padding:14px;background:#1a140e;border:1px solid #554124;color:#d6b56b;text-decoration:none}.quick-grid a:hover{background:#2b2117}.info-panel p{color:#9c907c}.info-panel strong{color:#e1bd6b}
.building-modal{display:none;position:fixed;inset:0;z-index:100;background:#090704b8;backdrop-filter:blur(3px);align-items:center;justify-content:center;padding:20px}.building-modal.open{display:flex}.modal-card{position:relative;width:min(430px,100%);background:linear-gradient(145deg,#2a2016,#15100c);border:1px solid #9a712e;box-shadow:0 25px 70px #000b;padding:30px}.modal-close{position:absolute;right:10px;top:8px;background:none;border:0;color:#cdbb9b;font-size:28px;cursor:pointer}.modal-icon{font-size:62px;text-align:center;margin-bottom:5px}.modal-card h2{font:28px Georgia,serif;color:#e3b65b;margin:5px 0 10px}.modal-card p{color:#a99b87;line-height:1.6}.modal-level{padding:10px;background:#1c150f;border:1px solid #49361e;color:#e3c37d}.modal-actions{display:flex;gap:8px;margin-top:16px}.modal-actions a{flex:1;text-align:center;padding:11px;background:#76551f;color:#fff0c9;text-decoration:none;border:1px solid #9a712e}
@media(max-width:900px){.village-bottom{grid-template-columns:1fr}.building-slot span{width:76px;height:58px;font-size:36px}.village-canvas{height:600px}.b-slot-1{left:38%}.b-slot-2{left:10%}.b-slot-3{left:1%}.b-slot-4{left:25%}.b-slot-5{left:50%}.b-slot-6{left:68%}.b-slot-7{left:53%}.b-slot-8{left:73%}.b-slot-9{left:30%}.b-slot-10{left:62%}.b-slot-11{left:7%}}
@media(max-width:600px){.village-canvas{height:760px}.building-slot{transform:scale(.82);transform-origin:center}.building-slot:hover{transform:scale(.87) translateY(-4px)}.b-slot-1{left:34%;top:25%}.b-slot-2{left:5%;top:34%}.b-slot-3{left:3%;top:50%}.b-slot-4{left:29%;top:61%}.b-slot-5{left:52%;top:61%}.b-slot-6{left:68%;top:48%}.b-slot-7{left:49%;top:34%}.b-slot-8{left:72%;top:64%}.b-slot-9{left:29%;top:38%}.b-slot-10{left:62%;top:26%}.b-slot-11{left:4%;top:67%}.field-slot{transform:scale(.72)}.field-1{left:-2%;top:76%}.field-2{left:10%;top:82%}.field-3{left:26%;top:77%}.field-4{left:41%;top:84%}.field-5{left:57%;top:77%}.field-6{left:71%;top:84%}.field-7{left:82%;top:76%}.field-8{left:35%;top:70%}}

/* Aeterna icon system: local SVG icons, no emoji/font dependency */
.resource-card>span{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex:0 0 32px}
.resource-icon{width:30px;height:30px;display:block}
.building-art img{width:58px;height:58px;display:block}
.vslot>span{display:flex;align-items:center;justify-content:center}
.vslot-icon{width:44px;height:44px;display:block;object-fit:contain}
.tile-village{display:flex;align-items:center;justify-content:center;width:24px;height:24px}
.tile-village img{width:23px;height:23px;display:block}
.big-icon img{width:54px;height:54px;display:block;margin:auto}
.modal-icon{height:72px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.modal-icon img{width:68px;height:68px;display:block}
.construction-icon{width:70px;height:70px;display:flex;align-items:center;justify-content:center}
.construction-icon img{width:62px;height:62px;display:block}
.quick-grid a{display:flex;align-items:center;justify-content:center;gap:8px}
.quick-grid a img{width:24px;height:24px;display:block}
.cost-line{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.cost-line img{width:17px;height:17px;vertical-align:middle}
@media(max-width:600px){.resource-icon{width:27px;height:27px}.vslot-icon{width:38px;height:38px}}

.time-line{display:flex;align-items:center;gap:5px}.time-line img{width:16px;height:16px;display:block}
@media(max-width:900px){.resource-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.resource-strip{grid-template-columns:repeat(2,1fr)}}

/* AETERNA 0.6 – hadsereg */
.unit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.unit-card{background:linear-gradient(145deg,#211910,#15110d);border:1px solid #4e3a22;padding:18px;display:flex;flex-direction:column}.unit-card.locked{opacity:.58}.unit-art{height:110px;display:flex;align-items:center;justify-content:center;background:#2b2116;border:1px solid #584325;margin-bottom:12px}.unit-art img{width:82px;height:82px}.unit-card h3{margin:0;color:#e0b45a;font:22px Georgia,serif}.unit-card p{font-size:13px;line-height:1.5;color:#958a78;min-height:58px}.unit-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0}.unit-stats span{background:#19130e;border:1px solid #40301d;padding:7px;text-align:center;font-size:10px;color:#8e826f}.unit-stats b{display:block;color:#e5c477;font-size:15px}.unit-cost{display:flex;gap:9px;flex-wrap:wrap;color:#cdb98f;font-size:12px;margin:8px 0}.unit-cost span{display:flex;align-items:center;gap:3px}.unit-cost img{width:17px;height:17px}.requirement{color:#827663;margin-bottom:10px}.train-form{display:flex;gap:8px;margin-top:auto}.train-form input{width:75px;background:#120e0a;color:#eee;border:1px solid #5a4528;padding:9px}.locked-label{margin-top:auto;padding:10px;text-align:center;border:1px solid #49351f;color:#a18c6c;background:#19130e}.training-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #3f2f1c;color:#9e917e}.training-row:last-child{border-bottom:0}.training-row strong{color:#dfb55e}.training-row span{display:block;margin-top:4px;color:#c0ae92}
@media(max-width:1000px){.unit-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.unit-grid{grid-template-columns:1fr}.training-row{flex-direction:column}}

/* ==========================================================
   AETERNA 0.8 — GLOBAL PREMIUM GAME UI
   A unified dark-navy / antique-gold visual language.
   No emoji or platform-dependent glyphs are used in the UI.
   ========================================================== */
:root{
  --a-bg:#050b10;
  --a-bg2:#09131b;
  --a-panel:#0b151e;
  --a-panel2:#101c25;
  --a-line:#394955;
  --a-gold:#c99a3a;
  --a-gold2:#f0c86b;
  --a-text:#eee5d2;
  --a-muted:#9b9b91;
  --a-shadow:0 10px 28px rgba(0,0,0,.55);
}
html{background:var(--a-bg)}
body{background:radial-gradient(circle at 50% -20%,#172832 0,#071017 42%,#03070a 100%);color:var(--a-text);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:4px 4px;mix-blend-mode:soft-light;z-index:0}
.topbar{position:sticky;top:0;z-index:100;height:70px;padding:0 22px;display:flex;align-items:stretch;gap:0;background:linear-gradient(180deg,#07111a 0,#050b10 100%);border-bottom:1px solid #6d5228;box-shadow:0 4px 20px #000b}
.brand{width:190px;height:70px;flex:0 0 190px;padding:6px 16px;border-right:1px solid #293740;background:linear-gradient(90deg,#0a151e,#071018)}
.brand img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 3px #000)}
.main-nav{height:70px;display:flex;align-items:stretch;gap:0}
.main-nav a{position:relative;display:flex;align-items:center;padding:0 17px;text-decoration:none;color:#b9b2a4;font:16px Georgia,serif;border-right:1px solid #1d2a32;transition:.18s;background:transparent}
.main-nav a:hover,.main-nav a.active{color:#f1cb72;background:linear-gradient(180deg,#14232d,#0b151d)}
.main-nav a.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--a-gold2),transparent)}
.top-player{margin-left:auto;display:flex;align-items:center;padding:0 18px;color:#d6c7a6;font:14px Georgia,serif;white-space:nowrap}
.topbar>a:last-child{display:flex;align-items:center;padding:0 10px;color:#bca45f;text-decoration:none;font-size:13px}
.game-shell{position:relative;z-index:1;max-width:1500px;margin:0 auto;padding:24px 26px 70px}
.panel{background:linear-gradient(145deg,rgba(12,23,32,.97),rgba(6,13,19,.97));border:1px solid #40505b;padding:20px;margin-bottom:16px;box-shadow:var(--a-shadow);border-radius:3px;position:relative}
.panel:before{content:"";position:absolute;inset:2px;border:1px solid rgba(199,154,58,.08);pointer-events:none;border-radius:2px}
.panel h1,.panel h2,.panel h3{color:var(--a-gold2)}
.eyebrow{color:#c49b4b}
.muted{color:#929a9d}
.resource-strip{position:relative;z-index:5;border:1px solid #66502c!important;background:#071018!important;box-shadow:0 6px 18px #0009!important}
.resource-card{background:linear-gradient(180deg,#101d26,#071018)!important;border-right:1px solid #34424b!important}
.resource-card b{color:#c8c1b2}.resource-card strong{color:#f0d080}.resource-card small{color:#849095}
.resource-icon{filter:drop-shadow(0 2px 3px #000)}
.gold-button,.actions a,.village-info a{background:linear-gradient(180deg,#c28f32,#76531e)!important;border:1px solid #e0b85b!important;box-shadow:inset 0 1px rgba(255,255,255,.18),0 3px 8px #0008;color:#fff3d0!important}
.gold-button:hover,.actions a:hover,.village-info a:hover{filter:brightness(1.12)}
.notice{background:#0d1922;border-color:#455762}.notice.success{background:#10251d;border-color:#557f61}.notice.error{background:#2b1718;border-color:#9b4e43}
.section-title{border-bottom-color:#34424a}
.building-card,.unit-card{background:linear-gradient(145deg,#0d1820,#071018);border-color:#3c4d58;box-shadow:0 8px 18px #0007}
.building-art,.unit-art{background:#071018;border-color:#394a55}
.map-panel,.tile-info{background:linear-gradient(145deg,#0b151d,#060d12)}
.map-tools a{background:#0d1a23;border-color:#6c522a;color:#d8bd7a}.map-tools a:hover{background:#152631}

/* Auth screens */
.auth-card{position:relative;z-index:1;background:linear-gradient(145deg,#0b151e,#050b10);border:1px solid #73582c;box-shadow:0 25px 70px #000d;border-radius:4px}
.auth-card h1{color:#dcae49;text-shadow:0 2px 8px #000}
.auth-card input,.auth-card select{background:#050b10;border-color:#3b4b55}
.auth-card button{background:linear-gradient(180deg,#c39237,#76531e);border:1px solid #e0b85b}

/* Full-bleed village stage */
.village-page{max-width:1500px}
.village-heading{background:linear-gradient(135deg,#091721ee,#071018ee)!important;border-color:#70562d!important}
.village-visual{border-color:#765a2f!important;border-radius:2px!important;box-shadow:0 20px 60px #000d!important}
.village-visual:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#02070b66,transparent 18%,transparent 82%,#02070b66)}
.village-badge,.building-state{backdrop-filter:blur(7px);background:linear-gradient(145deg,#07131ce8,#08131bdd)!important;border-color:#a57b35!important}
.village-hotspot{background:linear-gradient(180deg,#07131eef,#101b24ef)!important;border-color:#b8893b!important}
.village-hotspot:hover{border-color:#f1c867!important}
.village-hotspot .hs-icon{border-color:#9b7332!important}
.scene-caption{background:#061019dd!important;border-color:#b08439!important}

/* Make the building art visible as actual scenery, not as UI cards. */
.village-hotspot{min-width:0;padding:5px 10px 5px 6px}
.village-hotspot b{font-size:13px}

/* Bottom navigation inspired by the reference game UI */
.aeterna-bottom-nav{display:flex;justify-content:center;gap:0;max-width:760px;margin:18px auto 0;background:linear-gradient(180deg,#0b151d,#050b10);border:1px solid #5f4b2b;box-shadow:0 12px 35px #000b;border-radius:3px;overflow:hidden;position:relative;z-index:10}
.aeterna-bottom-nav a{min-width:120px;padding:13px 16px;text-align:center;color:#a9a9a0;text-decoration:none;border-right:1px solid #2d3a42;font:14px Georgia,serif}
.aeterna-bottom-nav a:last-child{border-right:0}.aeterna-bottom-nav a:hover,.aeterna-bottom-nav a.active{color:#f0c76c;background:#111f28;box-shadow:inset 0 -3px #c79739}
.aeterna-bottom-nav img{display:block;width:26px;height:26px;margin:0 auto 5px;opacity:.9}

/* Side panels on village page */
.village-side-tools{position:absolute;right:18px;top:18px;z-index:8;width:260px}
.village-side-tools .side-box{background:#07131de8;border:1px solid #8a682f;box-shadow:0 8px 25px #000b;padding:13px;margin-bottom:10px;backdrop-filter:blur(7px)}
.village-side-tools h3{margin:0 0 10px;color:#e5bf6a;font:18px Georgia,serif}
.village-side-tools a{display:flex;align-items:center;gap:10px;padding:9px 7px;color:#d5c7ae;text-decoration:none;border-top:1px solid #293842}
.village-side-tools a:first-of-type{border-top:0}.village-side-tools a:hover{background:#10202a;color:#f0c86b}.village-side-tools img{width:25px;height:25px}

@media(max-width:1050px){.brand{width:155px;flex-basis:155px}.main-nav a{padding:0 11px;font-size:14px}.top-player{display:none}.village-side-tools{width:220px}}
@media(max-width:800px){.main-nav a:nth-child(n+5){display:none}.game-shell{padding:16px 12px 50px}.aeterna-bottom-nav{max-width:100%;overflow-x:auto}.aeterna-bottom-nav a{min-width:105px}.village-side-tools{position:absolute;top:auto;bottom:18px;right:12px;left:12px;width:auto}}
@media(max-width:600px){.brand{width:130px;flex-basis:130px}.main-nav a{padding:0 8px;font-size:12px}.main-nav a:nth-child(n+4){display:none}.resource-strip{grid-template-columns:repeat(2,1fr)!important}.aeterna-bottom-nav a{min-width:90px;padding:10px 8px;font-size:12px}}
