:root{--building-gold:#d4af37;--building-bg:#090c12;--building-panel:#121722;--building-panel-2:#171d29;--building-border:#2c3444;--building-text:#eef1f5;--building-muted:#98a1b0;--building-blue:#6aaefc;--building-green:#66c995}
*{box-sizing:border-box}
body.buildings-page{margin:0;color:var(--building-text);background:radial-gradient(circle at 82% -8%,rgba(212,175,55,.11),transparent 31%),var(--building-bg);font-family:Arial,sans-serif}
.buildings-page .navbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:24px;min-height:76px;padding:10px 3vw;border-bottom:1px solid rgba(212,175,55,.25);background:rgba(9,12,18,.96);backdrop-filter:blur(12px)}
.buildings-page .logo{display:flex;flex-direction:column;min-width:max-content;color:#fff;text-decoration:none}.buildings-page .brand-title{font-weight:900;letter-spacing:.08em}.buildings-page .brand-sub{color:var(--building-gold);font-size:.65rem;letter-spacing:.22em}
.buildings-page .nav-links{display:flex;align-items:center;justify-content:center;gap:4px;flex:1;flex-wrap:wrap}.buildings-page .nav-links a{padding:9px 10px;color:#a9b0bd;border-radius:5px;font-size:.78rem;text-decoration:none}.buildings-page .nav-links a:hover,.buildings-page .nav-links a.active{color:#101116;background:var(--building-gold)}
.buildings-shell{width:min(1420px,calc(100% - 40px));margin:auto;padding:22px 0 70px}.buildings-breadcrumb{display:flex;align-items:center;gap:9px;margin:4px 0 22px;color:#70798a;font-size:.78rem}.buildings-breadcrumb a{color:var(--building-gold);text-decoration:none}.buildings-breadcrumb i{font-size:.55rem}
.buildings-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;overflow:hidden;padding:clamp(25px,4vw,50px);border:1px solid rgba(212,175,55,.44);border-radius:16px;background:radial-gradient(circle at 88% 22%,rgba(212,175,55,.18),transparent 32%),linear-gradient(135deg,#171d28,#0c1017 70%);box-shadow:0 20px 55px rgba(0,0,0,.34)}
.buildings-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#ffe176,#80600c)}.buildings-kicker{margin:0 0 9px;color:var(--building-gold);font-size:.72rem;font-weight:900;letter-spacing:.19em}.buildings-kicker i{margin-right:8px}.buildings-hero h1{margin:0 0 12px;font-family:Georgia,serif;font-size:clamp(2.3rem,5vw,4.5rem);line-height:1;color:#fff}.buildings-hero-copy>p:last-child{max-width:840px;margin:0;color:#a8b0be;line-height:1.7}
.buildings-hero-emblem{display:grid;place-items:center;min-height:160px;color:var(--building-gold);font-size:7rem;filter:drop-shadow(0 16px 22px rgba(0,0,0,.5));opacity:.92}.buildings-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}.buildings-facts div{padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(0,0,0,.2)}.buildings-facts span,.buildings-facts strong{display:block}.buildings-facts span{color:#7f8999;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.buildings-facts strong{margin-top:5px;color:#fff;font-size:1.45rem}
.buildings-notice{display:flex;align-items:flex-start;gap:14px;margin:20px 0;padding:16px 18px;border:1px solid rgba(102,201,149,.28);border-radius:10px;background:rgba(102,201,149,.07)}.buildings-notice>i{margin-top:2px;color:var(--building-green);font-size:1.2rem}.buildings-notice strong{color:#dff8ea}.buildings-notice p{margin:4px 0 0;color:#9db2a7;font-size:.84rem;line-height:1.55}
.buildings-catalog{margin-top:28px}.buildings-catalog-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.buildings-catalog-head p{margin:0 0 4px;color:var(--building-gold);font-size:.68rem;font-weight:900;letter-spacing:.18em}.buildings-catalog-head h2{margin:0;color:#fff;font-size:1.55rem}.buildings-result-count{text-align:right}.buildings-result-count strong,.buildings-result-count span{display:block}.buildings-result-count strong{color:#fff;font-size:1.45rem}.buildings-result-count span{color:#788293;font-size:.7rem;text-transform:uppercase}
.buildings-toolbar{display:grid;grid-template-columns:minmax(280px,2fr) minmax(180px,1fr) minmax(180px,1fr);gap:10px;padding:13px;border:1px solid var(--building-border);border-radius:11px;background:#10151e}.buildings-toolbar label{min-width:0}.buildings-toolbar label>span{display:block;margin-bottom:5px;color:#788293;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.buildings-toolbar select,.buildings-search{width:100%;min-height:44px;border:1px solid #333c4d;border-radius:7px;color:#e8ebf0;background:#171d28}.buildings-toolbar select{padding:0 10px}.buildings-search{display:flex;align-items:center;gap:9px;padding:0 13px;margin-top:17px}.buildings-search i{color:var(--building-gold)}.buildings-search input{width:100%;border:0;outline:0;color:#fff;background:transparent;font:inherit}.buildings-search input::placeholder{color:#6f798a}
.building-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:18px}.building-card{position:relative;overflow:hidden;border:1px solid #2b3342;border-radius:13px;background:linear-gradient(145deg,#181e29,#10141d);box-shadow:0 10px 28px rgba(0,0,0,.23);transition:.2s}.building-card:hover{transform:translateY(-3px);border-color:rgba(212,175,55,.58);box-shadow:0 16px 36px rgba(0,0,0,.34)}.building-card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--building-gold)}
.building-card-head{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px;padding:17px;border-bottom:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 12% 22%,rgba(212,175,55,.14),transparent 43%)}.building-card-icon{display:grid;place-items:center;width:68px;height:68px;border:1px solid rgba(212,175,55,.32);border-radius:12px;color:var(--building-gold);background:rgba(212,175,55,.08);font-size:1.85rem}.building-category{display:inline-flex;margin-bottom:7px;padding:4px 8px;border:1px solid rgba(212,175,55,.33);border-radius:999px;color:#e5c65f;background:rgba(212,175,55,.07);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.building-card-title h3{margin:0;color:#fff;font-size:1.1rem;line-height:1.22}.building-card-title small{display:block;margin-top:5px;color:#7e8898;font-size:.7rem}
.building-card-body{padding:15px 16px}.building-description{min-height:58px;margin:0 0 13px;color:#b8c0cb;font-size:.78rem;line-height:1.5}.building-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px}.building-stat{padding:9px 7px;border:1px solid rgba(255,255,255,.07);border-radius:7px;text-align:center;background:rgba(0,0,0,.17)}.building-stat span,.building-stat strong{display:block}.building-stat span{color:#717b8c;font-size:.55rem;text-transform:uppercase}.building-stat strong{margin-top:3px;color:#fff;font-size:.88rem}.building-max-bonus{min-height:80px;padding:10px;border:1px solid rgba(212,175,55,.22);border-radius:8px;background:rgba(212,175,55,.045)}.building-max-bonus span{display:block;margin-bottom:5px;color:#dfc15e;font-size:.6rem;font-weight:900;text-transform:uppercase}.building-max-bonus p{margin:0;color:#d9dde4;font-size:.68rem;line-height:1.45}.building-card button{width:100%;min-height:42px;margin-top:13px;border:1px solid rgba(212,175,55,.48);border-radius:7px;color:#e0c15f;background:rgba(212,175,55,.07);font-weight:800;cursor:pointer}.building-card button:hover{color:#111;background:var(--building-gold)}
.building-empty{margin:22px 0;padding:50px;text-align:center;border:1px dashed #364052;border-radius:12px;color:#788293}.building-empty i{font-size:2rem}.building-empty h3{margin:12px 0 5px;color:#cbd1da}.building-empty p{margin:0}
.building-dialog{width:min(1220px,calc(100% - 24px));max-height:min(92vh,980px);padding:0;border:1px solid rgba(212,175,55,.48);border-radius:14px;color:#e9edf2;background:#10151e;box-shadow:0 28px 90px rgba(0,0,0,.68);overflow:auto}.building-dialog::backdrop{background:rgba(3,5,8,.84);backdrop-filter:blur(4px)}.building-dialog-close{position:sticky;top:10px;z-index:8;float:right;width:40px;height:40px;margin:10px;border:1px solid #3a4352;border-radius:50%;color:#fff;background:#181e29;cursor:pointer}.building-dialog-close:hover{color:#111;background:var(--building-gold)}
.building-detail-head{display:grid;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:19px;padding:25px 66px 22px 26px;border-bottom:1px solid #293142;background:radial-gradient(circle at 8% 20%,rgba(212,175,55,.15),transparent 38%)}.building-detail-icon{display:grid;place-items:center;width:88px;height:88px;border:1px solid rgba(212,175,55,.35);border-radius:14px;color:var(--building-gold);background:rgba(212,175,55,.07);font-size:2.4rem}.building-detail-head p{margin:0 0 6px;color:var(--building-gold);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.building-detail-head h2{margin:0;color:#fff;font-size:1.8rem}.building-detail-head small{display:block;margin-top:4px;color:#7f8999}.building-detail-description{margin-top:10px!important;color:#adb6c3!important;font-size:.82rem!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;line-height:1.5}
.building-detail-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:16px 24px}.building-detail-facts div{padding:11px;border:1px solid #2c3544;border-radius:8px;background:#151b25}.building-detail-facts span,.building-detail-facts strong{display:block}.building-detail-facts span{color:#758091;font-size:.58rem;text-transform:uppercase}.building-detail-facts strong{margin-top:4px;color:#fff;font-size:.9rem}.building-detail-content{padding:4px 24px 30px}.building-detail-content h3{margin:12px 0 10px;color:#efd36e;font-size:1rem}.building-detail-note{margin:0 0 14px;color:#8f9aaa;font-size:.77rem;line-height:1.55}
.building-table-wrap{overflow:auto;border:1px solid #2c3544;border-radius:9px}.building-table{width:100%;min-width:1040px;border-collapse:collapse}.building-table th,.building-table td{padding:9px 10px;border-bottom:1px solid #272f3d;text-align:left;font-size:.72rem;vertical-align:top}.building-table th{position:sticky;top:0;z-index:2;color:#e8d27a;background:#1a202b}.building-table td.numeric,.building-table th.numeric{text-align:right;white-space:nowrap}.building-table tbody tr:hover{background:rgba(212,175,55,.045)}.building-table tbody tr:last-child{background:rgba(212,175,55,.07)}.building-bonus-list{display:grid;gap:3px;min-width:210px}.building-bonus-list span{display:flex;justify-content:space-between;gap:10px;color:#aeb7c3}.building-bonus-list b{color:#fff;white-space:nowrap}.building-requirement{min-width:240px;color:#b5bdc8;line-height:1.45}.blueprint-zero{color:#5d6674}
.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}
@media(max-width:1100px){.building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.building-detail-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.buildings-page .navbar{position:static;align-items:flex-start;flex-direction:column}.buildings-page .nav-links{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap}.buildings-shell{width:min(100% - 24px,1420px);padding-top:14px}.buildings-hero{grid-template-columns:1fr;padding:24px 19px}.buildings-hero-emblem{display:none}.buildings-facts{grid-template-columns:repeat(2,1fr)}.buildings-toolbar{grid-template-columns:1fr 1fr}.buildings-search{grid-column:1/-1;margin-top:0}.building-grid{grid-template-columns:1fr}.buildings-result-count{display:none}.building-dialog{width:100%;max-height:94dvh;border-radius:14px 14px 0 0}.building-detail-head{grid-template-columns:72px 1fr;padding:22px 52px 18px 17px}.building-detail-icon{width:66px;height:66px;font-size:1.8rem}.building-detail-head h2{font-size:1.35rem}.building-detail-facts{grid-template-columns:repeat(2,1fr);padding:13px}.building-detail-content{padding:4px 13px 24px}.building-table th,.building-table td{padding:8px;font-size:.68rem}}
@media(max-width:480px){.buildings-toolbar{grid-template-columns:1fr}.buildings-search{grid-column:auto}.buildings-facts{grid-template-columns:1fr 1fr}.building-card-head{grid-template-columns:62px 1fr}.building-card-icon{width:58px;height:58px}.building-stats{grid-template-columns:1fr 1fr}.building-detail-facts{grid-template-columns:1fr 1fr}}
@media(hover:none){.building-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Oficiální herní grafika budov extrahovaná z dodaných asset bundle souborů. */
.building-card-icon,.building-detail-icon{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(145deg,rgba(212,175,55,.12),rgba(7,12,20,.92))}
.building-card-icon img,.building-detail-icon img{display:block;width:100%;height:100%;padding:2px;box-sizing:border-box;object-fit:contain}
.building-card-icon img{border-radius:10px}.building-detail-icon img{border-radius:12px}
.building-card-icon img+.building-icon-fallback,.building-detail-icon img+.building-icon-fallback{display:none}
.building-card-icon img[hidden]+.building-icon-fallback,.building-detail-icon img[hidden]+.building-icon-fallback{display:block}
