body {
  background-image: url('templates/repera/images/backgrounds/background.webp');
  background-size: cover;          /* dopasuj rozmiar */
  background-position: center top; /* wyśrodkowanie góra */
  background-repeat: no-repeat;    /* nie powtarzaj */
  background-attachment: fixed;    /* tło nie przesuwa się ze stroną */
  color: #ddd;
  font-family: Verdana, sans-serif;
  margin: 0;
  padding: 0;
}


/* Layout 3 kolumn */
.main-layout-3col {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  flex-wrap: nowrap; /* NIE wrapuje – trzyma w jednej linii */
  max-width: 1000px;
  margin: 0 auto;
}

.left-column,
.right-column {
  width: 220px;
}

.center-column {
  width: 540px;
}

/* Responsywność opcjonalnie: */
@media (max-width: 960px) {
  .main-layout-3col {
    flex-direction: column;
    align-items: center;
  }

  .left-column,
  .center-column,
  .right-column {
    width: 90%;
  }
}

/* Twój własny styl ramek */
.custom-box .BoxContent {
  background-color: #1d1d1d;
  border: 2px solid #4c2f1f;
  padding: 5px;
  color: #f0e0c0;
  border-radius: 6px;
  box-shadow: 0 0 10px #ff9900;
  font-size: 12px;

}
.updates-box .BoxContent {
	justify-content: center;
  border: 2px solid silver;
}
.news-box .BoxContent {
  height: 500px;
  overflow-y: auto; /* umożliwia przewijanie, jeśli treść będzie dłuższa */
}

.custom-box .BorderTitleText {
  background-color: #2a1a0f;
  color: #ffcc66;
  padding: 5px;
  font-weight: bold;
  text-align: center;
  font-size: 12px;
}
.left-column .Box {
  margin-bottom: 5px;
}

.BoxContent a {
  color: #ffcc88;
  text-decoration: none;
  display: block;
  margin: 2px 0;
}

.BoxContent a:hover {
  color: #fff2cc;
  text-decoration: underline;
}
.menu-icon {
  width: 30px;
  height: 30px;
  margin-right: 6px;
  vertical-align: middle;
}
.modal {
  display: none;
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.7);
}

.modal-content {
  background-color: #2c1b0e;
  color: #ffcc88;
  margin: 10% auto;
  padding: 20px;
  border: 2px solid #ffcc88;
  width: 300px;
  text-align: center;
  border-radius: 10px;
  font-family: Verdana, sans-serif;
}

.modal-content a.download-option {
  display: inline-block;
  margin: 10px 0;
  padding: 8px 16px;
  background-color: #442200;
  color: #ffcc88;
  border: 1px solid #ffcc88;
  text-decoration: none;
  border-radius: 6px;
  font-weight: bold;
}

.modal-content a.download-option:hover {
  background-color: #ffcc88;
  color: #442200;
}

.close {
  color: #ffcc88;
  float: right;
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
}
.input-papyrus {
  background-image: url('templates/repera/images/inputs/papirus-input.webp') !important;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  height: 60px;
  width: 98%;            /* poszerzone do prawie całej szerokości */
  display: block;        /* żeby margines działał prawidłowo */
  margin: 0 auto;        /* wycentrowane */
  border: none;
  background-color: transparent;
  font-family: 'Papyrus', serif;
  font-size: 18px;
  font-weight: bold;
  color: #2d1b00;
  text-align: center;
  padding: 15px 10px;
  box-shadow: none;
  text-shadow: 1px 1px 0 #f5e9d3;
  min-height: 60px;
}
.papyrus-input {
  background-image: url('templates/repera/images/inputs/papirus-input.webp');
  background-repeat: no-repeat;
  background-size: 100% 100%;
  height: 60px;
  width: 98%;
  display: block;
  margin: 0 auto;
  border: none;
  background-color: transparent;
  font-family: 'Papyrus', serif;
  font-size: 18px;
  font-weight: bold;
  color: #2d1b00;
  text-align: center;
  padding: 15px 10px;
  box-shadow: none;
  text-shadow: 1px 1px 0 #f5e9d3;
  min-height: 60px;
}


.input-label {
  font-weight: bold;
  font-family: 'Papyrus', serif;
  color: #f5e9d3;
}
.papyrus-button {
  background-color: #f5e9d3;
  color: #3b2c1a;
  border: 2px solid #3b2c1a;
  font-family: 'Papyrus', serif;
  padding: 2px 4px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  box-shadow: inset 0 0 5px rgba(0,0,0,0.3), 0 0 10px rgba(255, 255, 200, 0.3);
  transition: background-color 0.3s ease;
  min-width: 90px; /* ✅ Zapewnia jednakową szerokość */
  text-align: center;
  display: inline-block;
}

.papyrus-button:hover {
  background-color: #e4d6b4;
}

.papyrus-button.secondary {
  background-color: #3b2c1a;
  color: #000;
}

.guild-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
  background-color: #1b120a;
  border: 2px solid #4c2f1f;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 0 10px #ff9900;
  font-size: 13px;
}

.guild-table th, .guild-table td {
  padding: 8px;
  text-align: left;
  border-bottom: 1px solid #3a2618;
}

.guild-table th {
  background-color: #2a1a0f;
  color: #ffcc66;
  font-weight: bold;
  text-align: center;
}

.guild-table td {
  color: #eedd99;
  text-align: center;
}

.guild-table tr:hover {
  background-color: #332016;
}

.guild-status-offline {
  color: #cc4444;
  font-weight: bold;
}

.guild-status-online {
  color: #33cc66;
  font-weight: bold;
}

.guild-rank-header {
  background-color: #2a1a0f;
  color: #ffcc66;
  padding: 6px 8px;
  font-weight: bold;
  font-size: 13px;
  margin-top: 12px;
  border-left: 4px solid #ffcc66;
  border-bottom: 1px solid #4c2f1f;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.invited-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 12px;
  font-size: 13px;
}

.invited-table th,
.invited-table td {
  border: 1px solid #4c2f1f;
  padding: 6px;
  text-align: center;
}

.invited-table th {
  background-color: #2a1a0f;
  color: #ffcc66;
}

.invited-table td {
  background-color: #1d1d1d;
  color: #f0e0c0;
}

.highscore-table {
  width: 100%;
  border-collapse: collapse;
  font-family: 'Papyrus', serif;
  font-size: 14px;
  background-color: #1b1b1b;
  color: #f5deb3;
  box-shadow: 0 0 5px rgba(255, 215, 0, 0.3);
  border: 1px solid #8b5a2b;
}

.highscore-table thead {
  background-color: #3e2a14;
  color: #f0e68c;
}

.highscore-table th,
.highscore-table td {
  padding: 8px 12px;
  text-align: left;
  border-bottom: 1px solid #5c3a1e;
}

.highscore-table tr:hover {
  background-color: #2b1d11;
}

.highscore-table a {
  color: #ffd700;
  text-decoration: none;
}

.highscore-table a:hover {
  text-decoration: underline;
}

.pagination {
  margin-top: 10px;
  text-align: center;
  font-family: 'Papyrus', serif;
}

.pagination a {
  color: #ffcc00;
  text-decoration: none;
  margin: 0 6px;
  padding: 4px 8px;
  border: 1px solid #8b5a2b;
  background-color: #2a1a0f;
  border-radius: 4px;
}

.pagination a:hover {
  background-color: #3e2a14;
}

.pagination strong {
  color: #fff;
  margin: 0 8px;
}

form select.papyrus-input {
  background-color: #2a1a0f;
  border: 1px solid #8b5a2b;
  color: #ffd700;
  font-family: 'Papyrus', serif;
  padding: 4px 8px;
  border-radius: 4px;
}

.online-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.online-list li {
    padding: 2px 0;
}
.online-list li a {
    color: #2ecc71;
    text-decoration: none;
}
.online-list li a:hover {
    text-decoration: underline;
}
.table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 8px;
}
.table th, .table td {
    padding: 6px 10px;
    border-bottom: 1px solid #444;
    text-align: left;
}
.table th {
    background-color: #222;
    color: #fff;
}
.table-striped tbody tr:nth-child(odd) {
    background-color: #2b2b2b;
}
.table-striped tbody tr:nth-child(even) {
    background-color: #1f1f1f;
}
/* miganie na kolorowo */
.glow-text {
  font-weight: bold;
  animation: glowColors 2s infinite;
}

@keyframes glowColors {
  0%   { color: red; }
  25%  { color: orange; }
  50%  { color: limegreen; }
  75%  { color: deepskyblue; }
  100% { color: violet; }
}




.repera-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin: 12px 0;
}

/* ReperaWiki */
.wiki-hero { padding:16px; margin-bottom:14px; border:1px solid #79552d; background:linear-gradient(135deg,#25190f,#171310); }
.wiki-hero h2,.wiki-article h2,.wiki-article h3 { color:#f0cb85; }
.wiki-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:10px; }
.wiki-card,.wiki-panel { min-height:112px; padding:14px; border:1px solid #76502c; border-radius:6px; color:#ead8b9; background:linear-gradient(145deg,#2d2117,#171310); text-align:left; }
.wiki-card { cursor:pointer; font:inherit; }
.wiki-card:hover { border-color:#d09a50; transform:translateY(-1px); }
.wiki-card > span { float:left; margin-right:10px; font-size:25px; }
.wiki-card > img { float:left; width:52px; height:52px; margin:0 11px 6px 0; border-radius:8px; object-fit:cover; box-shadow:0 0 10px rgba(208,91,28,.38); }
.wiki-system-heading { display:flex; align-items:center; gap:12px; margin:8px 0 12px; }
.wiki-system-heading img { width:64px; height:64px; object-fit:contain; image-rendering:auto; filter:drop-shadow(0 3px 7px rgba(0,0,0,.9)); }
.wiki-system-heading h2 { margin:0; }
.wiki-card strong,.wiki-card small,.wiki-row strong,.wiki-row small { display:block; }
.wiki-card small,.wiki-row small,.wiki-count { margin-top:5px; color:#bda98c; }
.wiki-article { color:#e5d7c3; }
.wiki-toolbar,.wiki-tabs { display:flex; gap:8px; margin:10px 0 14px; }
.wiki-toolbar .papyrus-input { flex:1; }
.wiki-tabs button,.wiki-back { padding:7px 11px; border:1px solid #76502c; color:#e9c68b; background:#241a12; cursor:pointer; }
.wiki-tabs button.active,.wiki-tabs button:hover,.wiki-back:hover { border-color:#d09a50; color:#fff0c5; }
.wiki-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(225px,1fr)); gap:7px; }
.wiki-row { display:flex; gap:10px; align-items:center; min-height:58px; padding:8px; border:1px solid #59422d; border-radius:5px; color:#ead8b9; background:#1d1814; text-align:left; cursor:pointer; }
.wiki-row:hover { border-color:#b17a3d; background:#292018; }
.wiki-row img { width:42px; height:42px; object-fit:contain; image-rendering:pixelated; }
.item-rune,.monster-fallback { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border:1px solid #93652d; border-radius:50%; color:#ffd681; background:radial-gradient(circle,#612a20,#1d1110 70%); font-weight:bold; font-size:11px; }
.item-rune.large,.monster-fallback.large { width:68px; height:68px; flex-basis:68px; font-size:18px; }
.wiki-detail-head { display:flex; align-items:center; gap:14px; margin:14px 0; }
.wiki-detail-head h2,.wiki-detail-head p { margin:3px 0; }
.monster-large { width:80px; height:80px; object-fit:contain; image-rendering:pixelated; }
.wiki-stats { display:grid; grid-template-columns:minmax(100px,180px) 1fr; border:1px solid #59422d; }
.wiki-stats dt,.wiki-stats dd { margin:0; padding:7px 9px; border-bottom:1px solid #3e3023; }
.wiki-stats dt { color:#dcb878; background:#241b14; font-weight:bold; }
.wiki-item-table{display:flex;flex-direction:column;border:1px solid #59422d;border-radius:6px;overflow:hidden}.wiki-item-row{display:grid;grid-template-columns:52px minmax(130px,1fr) minmax(210px,2fr) minmax(145px,1fr);align-items:center;gap:10px;min-height:64px;padding:7px 10px;border:0;border-bottom:1px solid #3e3023;color:#ead8b9;background:#1d1814;text-align:left;cursor:pointer}.wiki-item-row:hover{background:#292018}.wiki-item-row img,.item-large{object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 3px 4px #000)}.wiki-item-row img{width:48px;height:48px}.item-large{width:80px;height:80px}.wiki-item-name{color:#f0cb85;font-weight:bold}.wiki-item-effect,.wiki-item-source{color:#bda98c;font-size:12px}
.wiki-item-effect{display:grid;gap:4px}.wiki-item-effect small{color:#bda98c;font-size:11px}.item-usage{width:max-content;padding:3px 7px;border:1px solid #80552e;border-radius:10px;background:#2d1d12;color:#f2c87e;font-size:11px}
.castle-hero{position:relative;min-height:250px;margin:12px 0 16px;overflow:hidden;border:1px solid #8b5a2b;border-radius:7px;background:#17110d}.castle-hero img{width:100%;height:285px;object-fit:cover;opacity:.45;filter:saturate(.8) contrast(1.1)}.castle-hero div{position:absolute;left:25px;bottom:23px;max-width:560px;text-shadow:0 2px 5px #000}.castle-hero h2{margin:4px 0;font-size:30px;color:#ffd78c}.castle-kicker{color:#ff9f45;font-size:11px;font-weight:bold;letter-spacing:.18em}.castle-nav{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #5a4028;background:rgba(25,18,13,.95)}.castle-nav a{padding:6px 10px;color:#e9c68b}.castle-steps,.castle-reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.castle-steps section,.castle-reward-grid section,.castle-item-grid section,.castle-note{padding:12px;border:1px solid #654628;border-radius:6px;background:linear-gradient(145deg,#2a1e15,#171310)}.castle-steps b{color:#e69842;font-size:22px}.castle-steps h4{margin:4px 0;color:#f0cb85}.castle-reward-grid span{display:block;font-size:28px}.castle-flow{display:flex;align-items:stretch;gap:10px;margin:12px 0}.castle-flow div{flex:1;padding:15px;border:1px solid #7f4d31;text-align:center;background:#251812}.castle-flow strong,.castle-flow span{display:block}.castle-flow i{align-self:center;color:#ec7c4e;font-weight:bold}.castle-rules{line-height:1.65}.castle-item-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:8px}.castle-item-grid section{display:flex;align-items:center;gap:12px}.castle-item-grid img{width:56px;height:56px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 3px 4px #000)}.castle-item-grid p,.castle-note p{margin:4px 0 0;color:#bda98c}.castle-note{margin-top:12px;border-color:#67834d}.castle-note.warning{border-color:#9a6336}@media(max-width:720px){.wiki-item-row{grid-template-columns:48px 1fr}.wiki-item-effect,.wiki-item-source{grid-column:2}.castle-steps,.castle-reward-grid{grid-template-columns:1fr}.castle-flow{flex-direction:column}.castle-flow i{text-align:center}.castle-hero h2{font-size:23px}}
.repera-card {
  border: 1px solid #8b5a2b;
  background: rgba(30, 18, 10, .88);
  padding: 12px;
  text-align: center;
  border-radius: 5px;
}
.repera-card.featured { box-shadow: 0 0 10px rgba(255, 190, 60, .35); }
.repera-card h3 { color: #ffd36a; margin: 5px 0; }
.repera-points, .repera-price { color: #65d9ff; font-size: 20px; font-weight: bold; }
.repera-category { text-transform: uppercase; color: #caa56a; font-size: 10px; letter-spacing: 1px; }
.shop-notice, .shop-security { color: #e7c98c; }
.war-row { border-bottom: 1px solid #6e4928; padding: 8px 0; }
.guide-nav { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0 18px; }
.guide-nav a { border:1px solid #8b5a2b; background:#2a1a0f; color:#ffd36a; padding:6px 9px; text-decoration:none; border-radius:4px; }
.guide-nav a:hover { background:#49301a; }
.guide-section { border-top:1px solid #76502e; padding:10px 4px; scroll-margin-top:10px; }
.guide-section h2 { color:#ffd36a; font-size:18px; margin:4px 0 8px; }
.guide-section li { margin-bottom:5px; }
.guide-section h3 { color:#e8b95f; font-size:15px; margin:15px 0 7px; }
.guide-section h4 { color:#ffd36a; margin:0 0 6px; font-size:14px; }
.wiki-table-wrap { overflow-x:auto; margin:9px 0 14px; border:1px solid #654521; border-radius:4px; }
.wiki-table { width:100%; border-collapse:collapse; min-width:680px; background:#17110ddd; }
.wiki-table th { background:#352010; color:#ffd36a; text-align:left; padding:7px 8px; border-bottom:1px solid #8b5a2b; white-space:nowrap; }
.wiki-table td { color:#eee0c2; padding:7px 8px; border-bottom:1px solid #3f3023; }
.wiki-table tbody tr:nth-child(even) { background:#211812; }
.wiki-table tbody tr:hover { background:#302116; }
.wiki-note { border-left:3px solid #c8882f; background:#24190f; color:#f0dfbd; padding:9px 11px; margin:10px 0 14px; }
.wiki-card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:9px; margin:9px 0 14px; }
.wiki-card { border:1px solid #654521; background:linear-gradient(180deg,#281a10,#17110d); border-radius:4px; padding:10px; }
.wiki-card p { margin:0; color:#e2d3b6; line-height:1.4; }
.repera-outfit-preview { margin: 14px 0 18px; text-align: center; }
.repera-outfit-preview img { display: block; width: 100%; max-width: 1024px; height: auto; margin: 0 auto; border: 1px solid #8b5a2b; border-radius: 6px; box-shadow: 0 0 16px rgba(255, 190, 60, .22); }
.repera-outfit-preview figcaption { margin-top: 7px; color: #caa56a; font-size: 12px; }

.repera-card-icon { display:block; width:128px; height:128px; object-fit:contain; image-rendering:pixelated; margin:4px auto 8px; background:#24211e; border:1px solid #6f4a28; border-radius:4px; }

/* Repera in-game cosmetic shop */
.repera-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(175px, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.repera-card {
  padding: 12px;
  border: 1px solid #7d5b32;
  border-radius: 5px;
  background: rgba(44, 29, 17, 0.08);
  text-align: center;
}

.repera-card.featured {
  border-color: #b88435;
  box-shadow: inset 0 0 0 1px rgba(184, 132, 53, 0.35);
}

.repera-card-icon {
  display: block;
  width: 96px;
  height: 96px;
  margin: 0 auto 8px;
  object-fit: contain;
  image-rendering: pixelated;
}

.repera-card h3 { margin: 5px 0; }
.repera-category {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.75;
}
.repera-price {
  margin: 8px 0 4px;
  color: #8d550e;
  font-weight: bold;
}
.shop-empty {
  grid-column: 1 / -1;
  padding: 14px;
  text-align: center;
}

/* Repera 2026 cosmetic catalogue and news */
.news-entry { display:flex; gap:14px; padding:14px; margin:0 0 12px; background:linear-gradient(135deg,#24170f,#17110d); border:1px solid #6f4828; border-radius:8px; }
.news-entry-image { width:112px; height:112px; flex:0 0 112px; object-fit:contain; image-rendering:pixelated; background:radial-gradient(circle,rgba(124,69,184,.25),rgba(15,10,9,.85)); border:1px solid #754aa1; border-radius:7px; }
.news-entry-body h2 { margin:3px 0 7px; color:#ffd37a; font-size:17px; }
.news-entry-body p { margin:0; line-height:1.55; color:#ead9bf; }
.news-entry-date { color:#ac9070; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.cosmetic-shop .BoxContent { padding:14px; }
.shop-intro { display:grid; gap:5px; padding:14px; color:#e9d8bd; background:linear-gradient(135deg,#352017,#1a1310); border:1px solid #81562d; border-radius:7px; line-height:1.5; }
.shop-intro strong { color:#ffd170; font-size:16px; }
.cosmetic-section { margin-top:22px; }
.cosmetic-section + .cosmetic-section { padding-top:20px; border-top:1px solid #533721; }
.cosmetic-section-heading { display:flex; align-items:end; justify-content:space-between; gap:15px; margin-bottom:10px; }
.cosmetic-section-heading h2 { margin:2px 0 0; color:#ffd37a; font-size:21px; }
.cosmetic-section-heading p { max-width:280px; margin:0; color:#bfa98c; text-align:right; line-height:1.4; }
.cosmetic-kicker { color:#a97cdc; font-size:10px; font-weight:bold; text-transform:uppercase; letter-spacing:.12em; }
.cosmetic-shop .repera-card-grid { grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); }
.cosmetic-shop .repera-card { display:flex; flex-direction:column; min-height:300px; padding:13px; border-radius:8px; background:linear-gradient(180deg,#2b1c13,#17110d); color:#e8d7be; }
.repera-card-preview { display:grid; place-items:center; min-height:116px; margin-bottom:8px; border-radius:7px; background:radial-gradient(circle,rgba(105,55,153,.28),rgba(12,9,8,.82) 70%); border:1px solid rgba(151,98,196,.35); }
.cosmetic-shop .repera-card h3 { color:#ffd27a; font-size:15px; }
.cosmetic-shop .repera-card p { color:#cdbb9f; line-height:1.45; }
.repera-card-footer { margin-top:auto; }
.cosmetic-shop .repera-price { color:#ffb43b; }
.cosmetic-shop .repera-card small { color:#927d67; }
@media (max-width:620px) { .news-entry{flex-direction:column}.news-entry-image{width:100%;height:140px}.cosmetic-section-heading{align-items:start;flex-direction:column}.cosmetic-section-heading p{text-align:left} }

/* 2026 visual refresh: preserves the classic Repera theme and existing PHP/JS. */
* { box-sizing: border-box; }
html { min-height: 100%; background: #0d0b09; }
body {
  min-height: 100vh;
  background-color: #0d0b09;
  background-position: center top;
  color: #eadbc3;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5,8,7,.08) 0, rgba(9,7,5,.56) 420px, rgba(9,7,5,.9) 100%),
    radial-gradient(circle at 50% 220px, rgba(229,153,55,.13), transparent 40%);
}
.site-header {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 205px;
  margin: 0 auto 18px;
  text-align: center;
  background: linear-gradient(180deg, transparent 60%, rgba(10,8,6,.76));
}
.site-header img {
  display: block;
  width: min(430px, 84vw);
  height: 190px;
  max-height: 190px;
  object-fit: contain;
  filter: drop-shadow(0 8px 8px rgba(0,0,0,.75));
}
.site-tagline {
  position: absolute;
  bottom: 4px;
  color: #d7b477;
  font: 700 11px/1.2 Verdana, sans-serif;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-shadow: 0 2px 3px #000;
}
.main-layout-3col {
  width: min(1180px, calc(100% - 32px));
  max-width: 1180px;
  gap: 16px;
  padding-bottom: 48px;
}
.left-column, .right-column { width: 230px; flex: 0 0 230px; }
.center-column { width: auto; min-width: 0; flex: 1 1 620px; }
.custom-box { margin-bottom: 12px; }
.custom-box .BorderTitleText {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 6px 10px;
  background: linear-gradient(180deg, #382313, #1d120c);
  border: 1px solid #76502c;
  border-bottom-color: #a66d2c;
  border-radius: 7px 7px 2px 2px;
  color: #f1c66d;
  letter-spacing: .035em;
  text-shadow: 0 1px 2px #000;
}
.custom-box .BoxContent {
  padding: 11px;
  border: 1px solid #684523;
  border-top: 0;
  border-radius: 2px 2px 8px 8px;
  background: linear-gradient(145deg, rgba(31,27,24,.97), rgba(17,15,14,.97));
  box-shadow: 0 8px 20px rgba(0,0,0,.34), inset 0 0 20px rgba(151,87,28,.05);
}
.left-column .BoxContent a, .right-column .BoxContent a {
  margin: 0;
  padding: 7px 8px;
  border-radius: 4px;
  color: #e9c68b;
  transition: color .18s ease, background .18s ease, transform .18s ease;
}
.left-column .BoxContent a:hover, .right-column .BoxContent a:hover {
  color: #fff0c5;
  text-decoration: none;
  background: linear-gradient(90deg, rgba(165,101,36,.24), transparent);
  transform: translateX(2px);
}
.repera-wiki-title { color: #79d67f !important; }
.right-column .BoxContent ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.right-column .BoxContent li {
  padding: 5px 3px;
  line-height: 1.35;
}
.menu-icon { width: 24px; height: 24px; object-fit: contain; margin: 0; }
.updates-box .BoxContent {
  border-color: #79552d;
  background: linear-gradient(90deg, rgba(90,54,24,.36), rgba(27,23,20,.97));
}
.updates-box ul { margin: 0; padding: 0 0 0 22px; line-height: 1.65; }
.news-box .BoxContent { height: min(620px, 67vh); padding: 10px; }
.news-entry {
  border-color: #704722;
  background: linear-gradient(135deg, rgba(48,30,18,.96), rgba(20,17,15,.98));
  box-shadow: inset 0 1px rgba(255,216,154,.05), 0 6px 14px rgba(0,0,0,.2);
}
.news-entry-body { min-width: 0; }
.news-entry-body h2 { line-height: 1.25; }
.input-papyrus, .papyrus-input {
  width: 100%;
  height: 48px;
  min-height: 48px;
  padding: 11px 12px;
  font-size: 15px;
}
.papyrus-button {
  padding: 7px 12px;
  border: 1px solid #c79a52;
  border-radius: 5px;
  background: linear-gradient(#f2dfb9, #c8aa75);
  box-shadow: inset 0 1px rgba(255,255,255,.45), 0 3px 8px rgba(0,0,0,.35);
  font: 700 13px Verdana, sans-serif;
}
.modal-content {
  width: min(430px, calc(100% - 28px));
  border-color: #a97535;
  background: linear-gradient(145deg, #2d1c11, #15110e);
  box-shadow: 0 20px 70px rgba(0,0,0,.75);
}
@media (max-width: 980px) {
  .site-header { min-height: 165px; }
  .main-layout-3col { flex-wrap: wrap; align-items: flex-start; }
  .center-column { order: 1; width: 100%; flex-basis: 100%; }
  .left-column { order: 2; width: calc(50% - 8px); flex-basis: calc(50% - 8px); }
  .right-column { order: 3; width: calc(50% - 8px); flex-basis: calc(50% - 8px); }
  .news-box .BoxContent { height: auto; max-height: none; }
}
@media (max-width: 620px) {
  .site-header { min-height: 130px; margin-bottom: 12px; }
  .site-header img { width: min(330px, 88vw); max-height: 125px; }
  .site-tagline { font-size: 9px; letter-spacing: .12em; }
  .main-layout-3col { width: min(100% - 18px, 620px); gap: 8px; }
  .left-column, .center-column, .right-column { order: initial; width: 100%; flex-basis: 100%; }
  .center-column { order: 1; }
  .left-column { order: 2; }
  .right-column { order: 3; }
  .news-entry { padding: 10px; gap: 10px; }
  .news-entry-image { height: 170px; }
}
.wiki-shell .BoxContent,.wiki-article,.wiki-article p,.wiki-article li,.wiki-count{color:#f1dfbd!important}.wiki-card strong,.wiki-row strong,.wiki-item-name,.wiki-article h2,.wiki-article h3{color:#f4d59a!important}.wiki-card small,.wiki-row small,.wiki-item-effect,.wiki-item-source{color:#d4bd98!important}.wiki-row{width:100%;box-sizing:border-box;background:linear-gradient(135deg,#261b13,#17120e)!important}.loot-list{grid-template-columns:1fr!important}.loot-list .wiki-row{min-height:64px}.item-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.item-tabs button{min-height:38px;text-align:center}.castle-hero img{object-position:center}.wiki-item-row{width:100%;box-sizing:border-box}.wiki-toolbar input{color:#503515!important}@media(max-width:800px){.item-tabs{grid-template-columns:repeat(2,1fr)}}
/* Active-server spell library */
.spells-page .wiki-heading { margin-bottom: 12px; }
.spell-tabs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 7px; margin: 12px 0; }
.spell-tabs .wiki-tab { width: 100%; }
.spell-summary { color: #d7c493; font-size: 13px; margin: 8px 2px 12px; }
.spell-table-wrap { overflow-x: auto; border: 1px solid #6f421c; border-radius: 7px; background: rgba(15, 10, 7, .82); }
.spells-table { width: 100%; border-collapse: collapse; color: #f1dfb3; }
.spells-table th { padding: 9px 8px; text-align: left; color: #ffd576; background: linear-gradient(#3b200f, #211108); border-bottom: 1px solid #8c5624; white-space: nowrap; }
.spells-table td { padding: 7px 8px; border-bottom: 1px solid rgba(138, 88, 42, .38); vertical-align: middle; }
.spells-table tbody tr:nth-child(even) { background: rgba(95, 54, 23, .15); }
.spells-table tbody tr:hover { background: rgba(174, 104, 37, .18); }
.spell-name { min-width: 185px; color: #ffe4a1; }
.spell-name img { width: 32px; height: 32px; object-fit: contain; vertical-align: middle; margin-right: 9px; image-rendering: pixelated; }
.spell-words { color: #ffbf5b; font-weight: 700; white-space: nowrap; }
@media (max-width: 760px) { .spell-tabs { grid-template-columns: repeat(2, minmax(0,1fr)); } .spells-table { min-width: 760px; } }
.shop-tabs { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.shop-tabs .wiki-tab.is-active { border-color:#d09a50; color:#fff0c5; background:linear-gradient(#4a2c16,#2a180d); box-shadow:inset 0 0 0 1px rgba(255,202,112,.18); }
#account-login-form .papyrus-button.secondary { color:#000!important; }
@media (max-width:760px) { .shop-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.boss-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.boss-tabs button { width:100%; }
.wiki-empty-state { padding:24px; margin:12px 0; text-align:center; border:1px dashed #79502e; border-radius:7px; background:rgba(39,25,16,.72); color:#d9c29c; }
.wiki-empty-state strong { display:block; margin-bottom:6px; color:#f2cf8d; font-size:17px; }
@media(max-width:620px){.boss-tabs{grid-template-columns:1fr}}
.logged-account-name{color:#7dff83;font-weight:700;text-shadow:0 0 7px rgba(67,255,91,.75)}
.site-footer{width:min(1180px,calc(100% - 32px));margin:-30px auto 24px;padding:12px 0;text-align:center;color:#bda37d;border-top:1px solid rgba(153,101,47,.45);font:12px Verdana,sans-serif}
.site-footer strong{color:#79e581;text-shadow:0 0 6px rgba(64,255,90,.4)}
.wiki-article{min-width:0;overflow:hidden}.wiki-steps{line-height:1.65;padding-left:22px}.wiki-steps li{margin-bottom:7px}.wiki-table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse;margin:12px 0;color:#ead9ba;font-size:12px}.wiki-table th,.wiki-table td{padding:7px;border:1px solid #684523;text-align:left;vertical-align:top;white-space:normal;overflow-wrap:anywhere}.wiki-table th{color:#f2ce89;background:#382313}.wiki-note{padding:10px 12px;border-left:3px solid #a97838;background:rgba(72,44,21,.35)}

.wiki-sprite-table td:first-child{display:flex;align-items:center;gap:9px}.wiki-sprite-table td img{width:32px;height:32px;flex:0 0 32px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 3px #000)}.wiki-material-list{display:grid;gap:6px;margin:8px 0}.wiki-material-list span{display:grid;grid-template-columns:34px 1fr;align-items:center;min-height:36px;color:#f0cb85}.wiki-material-list img{grid-row:1/3;width:32px;height:32px;object-fit:contain;image-rendering:pixelated}.wiki-material-list small{color:#bda98c}

/* Castle System audit refresh */
.castle-live-note{display:flex;align-items:center;gap:12px;margin:14px 0;padding:12px 14px;border:1px solid #7a592f;border-radius:6px;background:linear-gradient(90deg,#23180f,#17120e)}
.castle-live-note>span{width:11px;height:11px;border-radius:50%;background:#72c75b;box-shadow:0 0 10px #72c75b;flex:0 0 auto}.castle-live-note strong{color:#f1d194}.castle-live-note p{margin:3px 0 0}
.castle-city-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.castle-city-grid>section{padding:14px;border:1px solid #654628;border-radius:7px;background:linear-gradient(145deg,#2a1e15,#171310)}
.castle-city-head{display:flex;align-items:center;gap:10px}.castle-city-head>b{display:grid;place-items:center;width:38px;height:38px;border:1px solid #b27332;border-radius:50%;color:#ffd48b;background:#3a2414;font-size:20px}.castle-city-head>div{display:flex;flex-direction:column;flex:1}.castle-city-head strong{color:#f4d59a}.castle-city-head small{color:#bba27e}.castle-status{padding:4px 7px;border-radius:9px;font-size:10px;font-style:normal;text-transform:uppercase;white-space:nowrap}.castle-status.live{color:#baf6a9;border:1px solid #507b42;background:#1b3219}.castle-status.build{color:#f3cd8b;border:1px solid #866231;background:#382916}
.castle-route{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px}.castle-route>div{height:100%;box-sizing:border-box;padding:13px;border:1px solid #654628;background:#211711}.castle-route>div>b{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:7px;border-radius:50%;color:#2a190c;background:#d4964c}.castle-route>div>strong{color:#f1cf91}.castle-route p{margin:7px 0 0}.castle-route>span{color:#d58a3e;font-size:24px}.castle-rune{display:grid!important;place-items:center;width:48px;height:48px;border:1px solid #b4712e;border-radius:50%;color:#ffc66f;background:radial-gradient(circle,#672816,#29150f)!important;font-size:13px!important;font-weight:bold;text-shadow:0 0 5px #d84920}
@media(max-width:800px){.castle-city-grid{grid-template-columns:1fr}.castle-route{grid-template-columns:1fr}.castle-route>span{transform:rotate(90deg);text-align:center}.castle-city-head{flex-wrap:wrap}}
