/* Core VALAHAL identity; the Zone uses its own layout and stylesheet. */
@font-face{font-family:Rajdhani;src:url('/fonts/rajdhani-bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
@font-face{font-family:Inter;src:url('/fonts/inter.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--bg:#101113;--bg-card:#1c1f23;--bg-hover:#272b30;--border:#45494d;--accent:#d83432;--accent-dark:#ac2725;--text:#f0ece6;--text-muted:#a7a9ac;--radius:3px}
body{background:#101113;color:#f0ece6;font-family:Inter,Manrope,'Segoe UI',sans-serif}h1,h2,h3,h4,.logo-text,.section-title{font-family:Rajdhani,'Bahnschrift','Arial Narrow',sans-serif}a{color:#ee9791}a:hover{color:#ffb2a9}.header{background:#101113f5;border-bottom:1px solid #45494d}.header .header-inner{min-height:84px}.header .logo-img{width:54px;height:60px;object-fit:contain}.header .logo-text{font-size:1.4rem;letter-spacing:.14em}.footer-logo{width:85px;height:85px;object-fit:contain}.header-menu{background:#1c1f23;border-top-color:#d83432}.header-menu .nav-link:hover{background:#272b30;border-left-color:#d83432}.main .btn-primary{background:#d83432;border-color:#d83432;color:#fff}.main .btn-primary:hover{background:#b72725;border-color:#ff453a}.main .btn-outline{border-color:#757575;background:#10111370;color:#f0ece6}.main .btn-outline:hover{background:#272b30;border-color:#f0ece6}.hero{position:relative;min-height:740px;border-bottom:1px solid #45494d;background:#101113}.hero .hero-bg{background:linear-gradient(90deg,#101113f5,#101113b0 45%,#10111318),linear-gradient(0deg,#101113,transparent 50%),url('/images/brand/survival-industrial.webp') center/cover;opacity:1}.hero .hero-content{position:relative;z-index:1;padding-top:90px;padding-bottom:40px}.hero-kicker{color:#b4b4b4;letter-spacing:.25em;font-size:.65rem;font-family:Consolas,monospace;margin-bottom:26px}.hero .hero-title{font-size:clamp(4rem,10vw,8.7rem);font-weight:800;letter-spacing:.035em;line-height:.95;margin:0 0 20px;text-shadow:0 3px 30px #0006}.hero .hero-subtitle{font-size:clamp(1.2rem,2.5vw,2rem);font-weight:600;letter-spacing:.11em;color:#f0ece6;max-width:750px}.hero .hero-support{color:#c5c2be;max-width:470px;font-size:.95rem;margin:16px 0 26px}.hero .hero-stats{margin-top:60px;gap:12px}.hero .hero-info-card{border:1px solid #45494d;border-top:2px solid #955338;background:#1c1f23cf;backdrop-filter:blur(5px);text-align:left;padding:22px}.hero .stat-value{color:#f0ece6;font-size:1.8rem}.hero .stat-command{font-size:1.1rem}.hero .hero-badge{background:#161a17d9;border:1px solid #52634e;color:#c5dbbb;margin-bottom:25px}.feature-card,.product-card,.popular-card,.current-map-card,.rule-item{border-color:#45494d;background:#1c1f23}.feature-card:hover,.product-card:hover{background:#272b30;border-color:#955338}.section-title{text-transform:uppercase;letter-spacing:.03em;font-size:clamp(1.8rem,3.5vw,3rem)}.features,.rules-short,.popular{padding:65px 0}.main>.container>:is(h1,.admin-heading){background:linear-gradient(110deg,#1c1f23,#101113);border-color:#45494d;border-left-color:#d83432}.admin-panel{border-top-color:#955338}.special-event{padding:60px 0}.special-event-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.special-event-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 42%;border:1px solid #45494d;min-height:340px;background:#151b16}.special-event-copy{padding:45px;position:relative;z-index:1;background:linear-gradient(90deg,#151b16,transparent);color:#d9dfd2}.special-event-copy .event-id{font:11px Consolas,monospace;letter-spacing:.18em;color:#a2c18d}.special-event-copy h3{font-size:clamp(2rem,4vw,3.5rem);margin:20px 0 12px;line-height:1.05}.special-event-copy p{color:#bcc6b5}.event-state{font:11px Consolas,monospace;color:#b7b9ab;display:block;margin-bottom:25px}.special-event-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.65) saturate(.6);position:absolute;inset:0 0 0 auto;width:60%;mask-image:linear-gradient(90deg,transparent,#000 40%)}.special-event-copy .event-link{display:inline-block;color:#d9dfd2;text-decoration:none;border:1px solid #829782;padding:13px 20px;font:12px Consolas,monospace;letter-spacing:.06em;min-height:44px}.special-event-copy .event-link:hover{background:#29382c}.home-community{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:40px;border:1px solid #45494d;background:#1c1f23;margin-bottom:60px}.home-community h2{margin:0 0 12px}.home-community p{color:#a7a9ac;margin:0}.home-community-links{display:flex;gap:12px;flex-wrap:wrap}.header a:focus-visible,.main a:focus-visible{outline-color:#ff453a}.footer{background:#101113;border-top-color:#45494d}
@media(max-width:760px){.hero{min-height:0}.hero .hero-content{padding-top:55px}.hero .hero-title{font-size:clamp(3.4rem,15vw,5.5rem)}.hero .hero-subtitle{font-size:1rem;letter-spacing:.08em}.hero .hero-stats{grid-template-columns:1fr 1fr;margin-top:40px}.hero .hero-info-card{padding:16px}.hero .stat-value{font-size:1.5rem}.hero .stat-command{font-size:.9rem}.special-event{padding:35px 0}.special-event-card{display:block;min-height:360px}.special-event-copy{padding:28px}.special-event-card img{width:100%;mask-image:none;opacity:.32}.special-event-heading{display:block}.home-community{display:block;padding:28px}.home-community-links{margin-top:25px}.features,.rules-short,.popular{padding:40px 0}.header .logo-img{width:40px;height:46px}.header .logo-text{font-size:1.1rem}.hero-kicker{font-size:.55rem;letter-spacing:.15em}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.hero .hero-content{text-align:left}.hero .hero-subtitle{margin-left:0}.hero .hero-actions{justify-content:flex-start}.hero .hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:760px){.hero .hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero .hero-actions{flex-wrap:wrap}.hero .hero-actions .btn{min-width:145px}}
:is(.wiki-sidebar,.wiki-search,.wiki-card,.wiki-empty,.news-sidebar,.news-card,.publication){background:#1c1f23;border-color:#45494d}.wiki-heading{background:linear-gradient(110deg,#1c1f23,#101113);border-color:#45494d;border-left-color:#d83432}.wiki-heading>span,.wiki-card span,.wiki-edit,.popular-product-more{color:#ee9791}.wiki-sidebar nav a.active,.wiki-sidebar nav a:hover,.filter-btn.active,.filter-btn:hover{background:#342321;border-color:#d83432;color:#f0ece6}.table{--bs-table-bg:#1c1f23;--bs-table-color:#f0ece6;--bs-table-border-color:#45494d;--bs-table-striped-bg:#22262a;--bs-table-hover-bg:#272b30}.table thead th{background:#101113;color:#ee9791;border-bottom-color:#955338}.form-control:focus,.form-select:focus,.main textarea:focus{border-color:#d83432;box-shadow:0 0 0 3px #d8343220}
/* The H is the permanent red brand accent, independent of hover state. */
.brand-h{color:#d83432;text-shadow:0 0 18px #ff453a35}.hero .brand-h{color:#ff453a;text-shadow:0 0 30px #d8343245}.main{background-image:none}.admin-context,.admin-control-block,.admin-metrics>div,.admin-tool-card,.admin-tool-link,.admin-hub-index a,.wiki-card,.wiki-search,.wiki-sidebar,.publication,.news-card{border-radius:3px}.header-menu .nav-admin{background:#342321;border-color:#d83432;color:#f0ece6}.admin-tool-link:hover,.admin-tool-link.active,.admin-jump-links a:hover,.admin-hub-index a:hover{background:#d83432;color:#fff;border-color:#d83432}.mail-dock{background:#1c1f23}.mail-editor,.mail-file-icon{background:#101113}

/* Shared component contract. Only _Layout loads this file; _ZoneLayout stays independent. */
:root {
    --bg: #101113;
    --bg-card: #1c1f23;
    --bg-hover: #272b30;
    --border: #45494d;
    --text: #f0ece6;
    --text-muted: #b2b3b6;
    --accent: #d83432;
    --accent-dark: #ac2725;
    --accent-light: #ee9791;
    --radius: 3px;
    --bs-body-bg: var(--bg);
    --bs-body-color: var(--text);
    --bs-secondary-color: var(--text-muted);
    --bs-border-color: var(--border);
    --bs-border-radius: var(--radius);
    --bs-link-color: var(--accent-light);
    --bs-link-hover-color: #ffb2a9;
    color-scheme: dark;
}
body { line-height: 1.65; }
:is(h1,h2,h3,h4,h5,h6) { color: var(--text); }
:is(.page-subtitle,.stat-label,.stat-detail,.stat-block-label,.profile-steamid,.profile-empty,.profile-order p,.commerce-line p,.purchase-item-label small,.footer a,.main label) { color: var(--text-muted); }
.text-muted,.form-text { color: var(--text-muted) !important; }
:is(.header-wallet,.header-cart,.header .mobile-menu-toggle,.language-switch select,.language-apply) {
    background: var(--bg-card);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    min-height: 44px;
}
.header-cart span { background: #342321; color: var(--accent-light); border-radius: var(--radius); }
.header :is(.header-wallet,.header-cart,.mobile-menu-toggle):hover,
.header .mobile-menu-toggle[aria-expanded=true] { background: var(--bg-hover); border-color: var(--accent); }
:is(.header-menu,.footer) { color: var(--text); }
:is(.admin-panel,.profile-card,.profile-item,.stat-block,.stat-card,.status-card,.customer-card,.card,.commerce-line,.purchase-summary,.purchase-description-panel,.purchase-item,.rules-section,.wiki-card,.wiki-sidebar,.wiki-search,.wiki-empty,.news-sidebar,.news-card,.publication) {
    background-color: var(--bg-card);
    color: var(--text);
    border-color: var(--border);
    border-radius: var(--radius);
}
:is(.purchase-item-image,.purchase-coin-icon,.commerce-line img,.purchase-description-panel .purchase-image,.product-category,.product-new-badge,.filter-btn,.profile-pagination a,.page-link,.form-control,.form-select,.input-group-text,.nav-tabs .nav-link,.mail-dock) { border-radius: var(--radius); }
:is(.product-category,.input-group-text,.purchase-item-image,.purchase-coin-icon) { background: var(--bg); border-color: var(--border); color: var(--text-muted); }
:is(.stat-block-value,.price-current,.purchase-price,.purchase-item-count,.profile-name,.rules-heading) { color: var(--text); }
.rules-section { padding: 24px; border: 1px solid var(--border); margin-bottom: 20px; }
.main :is(.btn,.filter-btn,.page-link),.header .btn,.footer .btn {
    font-family: inherit;
    font-weight: 650;
    font-size: .9rem;
    line-height: 1.45;
    letter-spacing: .015em;
    border-radius: var(--radius);
    min-height: 44px;
    padding: 11px 18px;
    box-shadow: none;
    white-space: normal;
}
.main .btn-primary {
    --bs-btn-bg: var(--accent);
    --bs-btn-border-color: var(--accent);
    --bs-btn-hover-bg: var(--accent-dark);
    --bs-btn-hover-border-color: var(--accent-dark);
    --bs-btn-active-bg: var(--accent-dark);
    --bs-btn-active-border-color: var(--accent-dark);
    --bs-btn-disabled-bg: var(--accent);
    --bs-btn-disabled-border-color: var(--accent);
    background: var(--accent); border-color: var(--accent); color: #fff;
}
.main .btn-primary:is(:hover,:active) { background: var(--accent-dark); border-color: var(--accent-dark); color: #fff; }
.main :is(.btn-outline,.btn-outline-light,.btn-secondary,.btn-outline-secondary,.filter-btn,.page-link),
.header .btn-steam { background: var(--bg-card); border: 1px solid var(--border); color: var(--text); }
.main :is(.btn-outline,.btn-outline-light,.btn-secondary,.btn-outline-secondary,.filter-btn,.page-link):hover,
.header .btn-steam:hover { background: var(--bg-hover); border-color: var(--accent); color: #fff; }
.main .filter-btn.active,.main .page-item.active .page-link { background: #342321; border-color: var(--accent); color: var(--text); }
.main :is(.btn:disabled,.btn.disabled,.page-item.disabled .page-link) { opacity: .5; cursor: not-allowed; pointer-events: none; }
.main :is(.form-control,.form-select,textarea),.commerce-line input[type=number] {
    background-color: var(--bg);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    min-height: 44px;
    font-family: inherit;
    font-size: .95rem;
}
.main :is(.form-control,.form-select,textarea):focus,.commerce-line input[type=number]:focus {
    background-color: var(--bg);
    color: var(--text);
    border-color: var(--accent);
    box-shadow: 0 0 0 3px #d8343226;
}
.main :is(input,textarea)::placeholder { color: var(--text-muted); opacity: 1; }
.main input[type=file]::file-selector-button { background: var(--bg-hover); color: var(--text); border-right-color: var(--border); }
.nav-tabs { border-color: var(--border); }
.nav-tabs .nav-link { color: var(--text-muted); }
.nav-tabs .nav-link.active { background: var(--bg-card); color: var(--text); border-color: var(--accent) var(--border) var(--bg-card); }
.table { --bs-table-bg: var(--bg-card); --bs-table-color: var(--text); --bs-table-border-color: var(--border); --bs-table-striped-bg: #22262a; --bs-table-striped-color: var(--text); --bs-table-hover-bg: var(--bg-hover); --bs-table-hover-color: var(--text); color: var(--text); }
.table thead th { background: var(--bg); color: var(--text-muted); border-bottom-color: var(--border); }
.table a { color: var(--accent-light); }
:is(.modal-content,.dropdown-menu,.list-group-item,.accordion-item,.accordion-button) { background: var(--bg-card); color: var(--text); border-color: var(--border); border-radius: var(--radius); }
:is(.modal-header,.modal-footer) { border-color: var(--border); }
.accordion-button:not(.collapsed) { background: var(--bg-hover); color: var(--text); }
.dropdown-item { color: var(--text); }
.dropdown-item:is(:hover,:focus) { background: var(--bg-hover); color: #fff; }
.main a:not(.btn):hover { text-decoration: underline; }
.main :is(.product-details-link,.popular-card,.wiki-card,.admin-tool-link,.filter-btn):hover { text-decoration: none; }
:where(a,button,input,select,textarea,summary):focus-visible { outline: 2px solid var(--accent-light); outline-offset: 3px; }
@media(max-width:760px) {
    .rules-section { padding: 18px; }
    .commerce-line { flex-wrap: wrap; }
    .commerce-line form { width: 100%; }
    .profile-order { flex-wrap: wrap; }
    .profile-order > div:last-child { text-align: left; }
    .main :is(.btn,.filter-btn,.page-link) { padding: 10px 14px; }
}
/* Long labels must fit the same cards on narrow screens. */
.store-grid > .catalog-card > form { margin-top: auto; }
.main .store-page .product-details-link:is(:link,:visited,:hover,:active) { color: inherit; text-decoration: none; }
:is(.admin-metrics>div,.admin-tool-card,.admin-tool-link,.stat-block,.profile-card,.profile-item,.product-card,.news-card,.wiki-card) { min-width: 0; overflow-wrap: anywhere; }
.admin-metrics>div { flex-basis: 160px; }
.product-new-badge { background: #342321; color: var(--accent-light); border: 1px solid #78423f; }
@media(max-width:540px) {
    .admin-metrics>div { flex: 1 1 110px; padding: 16px; }
    .admin-section-switch { margin-left: 0; max-width: 100%; }
    .admin-section-switch>div { right: auto; left: 0; max-width: calc(100vw - 64px); }
    .mail-dock { right: 12px; bottom: 12px; width: 150px; }
    .footer { padding-bottom: 80px; }
}
/* Feedback uses muted surfaces, with semantic colors limited to text and borders. */
.alert { --bs-alert-bg: var(--bg-card); --bs-alert-color: var(--text); --bs-alert-border-color: var(--border); background: var(--bs-alert-bg); color: var(--bs-alert-color); border-color: var(--bs-alert-border-color); border-left-width: 3px; }
.alert-info { --bs-alert-bg: #1b252b; --bs-alert-color: #c0d7e1; --bs-alert-border-color: #597787; }
.alert-success { --bs-alert-bg: #1c2821; --bs-alert-color: #c1dcc8; --bs-alert-border-color: #65886e; }
.alert-warning { --bs-alert-bg: #2b251b; --bs-alert-color: #e5d2ab; --bs-alert-border-color: #9c8350; }
.alert-danger { --bs-alert-bg: #342321; --bs-alert-color: #f0b4ae; --bs-alert-border-color: #c56c65; }
.alert :is(a,.alert-link) { color: inherit; text-decoration: underline; }
@media(max-width:360px) { .admin-metrics>div { flex-basis: 100%; } }

/* Reference artwork supplies the original steelwork, bevels, hardware and icons. */
.store-page .store-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:28px;align-items:start; }
.store-page .reference-card { container-type:inline-size;position:relative;display:block;aspect-ratio:846 / 1320;padding:0;border:0;border-radius:0;background:transparent url('/images/brand/product-card-reference.png') 50% 50% / 132.624% 106.212% no-repeat;box-shadow:none;isolation:isolate;transition:transform .25s,filter .25s; }
.store-page .reference-card:hover {background-color:transparent;border:0;transform:translateY(-4px);filter:drop-shadow(0 0 2px #955338);}
.store-page .reference-card .product-details-link {position:absolute;inset:0 0 14%;display:block;color:#e6e2d9;text-decoration:none;}
.reference-card .reference-category {position:absolute;left:16%;top:2%;width:25%;height:4.5%;display:flex;align-items:center;text-transform:uppercase;font:700 5cqw/1 Rajdhani,sans-serif;letter-spacing:.03em;}
.reference-card .reference-image {position:absolute;left:2.7%;top:8.3%;width:94.8%;height:55.6%;overflow:hidden;clip-path:polygon(3.8% 0,96% 0,100% 5%,100% 94%,96% 100%,4% 100%,0 95%,0 5%);}
.store-page .reference-image img {display:block;width:100%;height:100%;object-fit:cover;border-radius:0;}
.reference-card .product-new-badge {position:absolute;right:6%;top:11%;padding:3px 7px;}
.reference-card .reference-caption {position:absolute;left:16.5%;top:66.2%;width:64%;height:7%;display:flex;align-items:center;font-size:2.65cqw;line-height:1.2;color:#b7b8b5;}
.store-page .reference-card .reference-title {position:absolute;left:6.6%;top:76%;width:71%;height:12.4%;margin:0;display:flex;align-items:center;font:700 6.2cqw/1.03 Rajdhani,'Arial Narrow',sans-serif;text-transform:uppercase;color:#e4dfd4;text-shadow:0 1px 1px #000;overflow-wrap:normal;}
.reference-card .reference-price {position:absolute;left:18%;top:91%;width:75%;height:7.5%;display:flex;align-items:center;font-size:5cqw;line-height:1;font-weight:800;white-space:nowrap;color:#f3f3f0;}
.store-grid > .reference-card > form {position:absolute;left:4%;top:86.8%;width:92%;height:10.3%;margin:0;}
.reference-card .reference-buy {display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;border:0;background:transparent;color:#fff5e9;cursor:pointer;padding:0 20% 0 4%;font:800 4.8cqw/1.05 Inter,'Segoe UI',sans-serif;text-align:center;clip-path:polygon(2% 0,98% 0,100% 10%,100% 90%,98% 100%,2% 100%,0 90%,0 10%);}
.reference-buy span {width:100%;}
.reference-card .reference-buy:hover {background:#ffb99218;}
.reference-card .reference-buy:active {background:#0002;}
.reference-card .reference-buy:focus-visible {outline:3px solid #fff1d5;outline-offset:-6px;}
@media(max-width:540px){.store-page .store-grid{grid-template-columns:minmax(0,1fr);max-width:420px;margin-inline:auto;gap:24px}}
@media(prefers-reduced-motion:reduce){.store-page .reference-card{transition:none}.store-page .reference-card:hover{transform:none}}
.store-page .reference-card .reference-title-long { font-size:5.2cqw; }
.reference-card > .reference-caption { top:57%;height:6%;display:block;overflow:auto;overscroll-behavior:contain;white-space:pre-line;scrollbar-width:thin;scrollbar-color:#757773 transparent;padding:2px 3px 2px 0;line-height:1.25;z-index:1; }
