/* ============ База знаний (база данных игры) ============ */
.kb-head{padding:110px 0 18px;background:linear-gradient(180deg,rgba(var(--accent-rgb),.06),transparent);}
.kb-head__top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.kb-head__title{font-family:Cinzel,serif;font-size:30px;font-weight:700;color:var(--text-white);margin:0;}
.kb-head__title small{display:block;font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:var(--text-muted);margin-top:4px;}
.kb-realms{display:inline-flex;padding:4px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(var(--accent-rgb),.2);}
.kb-realms a{padding:8px 16px;border-radius:9px;font-size:13px;font-weight:700;letter-spacing:.03em;color:var(--text-muted);text-decoration:none;}
.kb-realms a.is-active{background:var(--accent);color:#0b0b0f;}
.kb-search{position:relative;margin:18px 0 0;}
.kb-search form{display:flex;gap:8px;}
.kb-search input{flex:1;min-width:0;background:rgba(8,10,16,.8);border:1px solid rgba(var(--accent-rgb),.3);border-radius:12px;color:var(--text-white);padding:14px 18px;font-size:16px;outline:none;}
.kb-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15);}
.kb-search button{background:var(--accent);color:#0b0b0f;border:0;border-radius:12px;padding:0 24px;font-weight:700;cursor:pointer;}
.kb-ac{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;background:#0b0e16;border:1px solid rgba(var(--accent-rgb),.3);border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.6);overflow:hidden;}
.kb-ac[hidden]{display:none;}
.kb-ac a{display:flex;align-items:center;gap:10px;padding:8px 14px;text-decoration:none;color:var(--text-light);font-size:14px;}
.kb-ac a:hover,.kb-ac a.is-sel{background:rgba(var(--accent-rgb),.12);}
.kb-ac small{margin-left:auto;color:var(--text-dim);font-size:11px;text-transform:uppercase;letter-spacing:.05em;}
.kb-nav{display:flex;gap:6px;margin-top:18px;flex-wrap:wrap;}
.kb-nav a{padding:8px 16px;border-radius:10px;border:1px solid var(--border-color);color:var(--text-light);text-decoration:none;font-size:14px;font-weight:600;background:var(--bg-card);}
.kb-nav a.is-active,.kb-nav a:hover{border-color:var(--accent);color:var(--text-white);}
.kb-wrap{padding:22px 0 60px;}
.kb-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:18px;}
.kb-h{font-size:18px;font-weight:700;color:var(--text-white);margin:28px 0 12px;}
.kb-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;}
.kb-stat{display:block;padding:20px;border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-color);text-decoration:none;transition:.2s;}
.kb-stat:hover{border-color:rgba(var(--accent-rgb),.5);transform:translateY(-2px);}
.kb-stat b{display:block;font-size:26px;color:var(--text-white);}
.kb-stat span{color:var(--text-muted);font-size:14px;}
.kb-stat em{display:block;font-style:normal;color:var(--accent);font-size:13px;margin-top:6px;font-weight:600;}
.kb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;}
.kb-ico{width:36px;height:36px;border-radius:6px;border:1px solid rgba(255,255,255,.25);background:#000;flex:none;vertical-align:middle;}
.kb-ico--s{width:20px;height:20px;border-radius:4px;}
.kb-ico--l{width:56px;height:56px;border-radius:8px;border-width:2px;}
.kb-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;}
.kb-link:hover{text-decoration:underline;}
.kb-tile{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.02);border:1px solid var(--border-color);}
.kb-tile small{display:block;color:var(--text-dim);font-weight:400;font-size:12px;}
.kb-badge{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:2px 6px;border-radius:5px;background:rgba(var(--accent-rgb),.15);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.35);vertical-align:middle;margin-left:6px;}
.kb-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px;}
.kb-filters input,.kb-filters select{background:rgba(8,10,16,.8);border:1px solid rgba(var(--accent-rgb),.22);border-radius:9px;color:var(--text-white);padding:9px 12px;font-size:14px;outline:none;}
.kb-filters input[type=number]{width:96px;}
.kb-filters label{display:inline-flex;align-items:center;gap:6px;color:var(--text-light);font-size:14px;cursor:pointer;}
.kb-filters button{background:var(--accent);color:#0b0b0f;border:0;border-radius:9px;padding:9px 18px;font-weight:700;cursor:pointer;}
.kb-table{width:100%;border-collapse:collapse;font-size:14px;}
.kb-table th{text-align:left;color:var(--text-muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:8px 10px;border-bottom:1px solid rgba(var(--accent-rgb),.2);}
.kb-table td{padding:7px 10px;border-bottom:1px solid var(--border-color);color:var(--text-light);vertical-align:middle;}
.kb-table tr:hover td{background:rgba(var(--accent-rgb),.04);}
.kb-table .num{text-align:right;white-space:nowrap;}
.kb-tscroll{overflow-x:auto;}
.kb-muted{color:var(--text-dim);}
.kb-pager{margin-top:18px;display:flex;justify-content:center;}
.kb-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start;}
.kb-title{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
.kb-title h1{font-size:26px;margin:0;line-height:1.25;}
.kb-title small{display:block;color:var(--text-muted);font-size:14px;font-weight:400;margin-top:2px;}
.kb-info{list-style:none;padding:0;margin:14px 0 0;font-size:14px;color:var(--text-light);}
.kb-info li{padding:6px 0;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;gap:10px;}
.kb-info li span:first-child{color:var(--text-muted);}
.kb-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid rgba(var(--accent-rgb),.2);margin-bottom:14px;}
.kb-tabs button{background:none;border:0;border-bottom:2px solid transparent;color:var(--text-muted);padding:10px 14px;font-size:14px;font-weight:600;cursor:pointer;margin-bottom:-1px;}
.kb-tabs button.is-active{color:var(--text-white);border-bottom-color:var(--accent);}
.kb-tabs button small{color:var(--text-dim);font-weight:400;margin-left:4px;}
.kb-panel[hidden]{display:none;}
.kb-text{white-space:pre-line;color:var(--text-light);line-height:1.7;font-size:15px;}
.kb-cost{display:inline-flex;align-items:center;gap:4px;margin-right:8px;white-space:nowrap;}
/* подсказка предмета в стиле игры */
.kb-tt{background:rgba(6,8,20,.96);border:1px solid #5c6680;border-radius:6px;padding:10px 12px;color:#fff;font-size:13px;line-height:1.5;box-shadow:0 10px 30px rgba(0,0,0,.6);max-width:360px;}
.kb-tt a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);}
.kb-tt__name{font-size:15px;font-weight:700;}
.kb-tt__row{display:flex;justify-content:space-between;gap:16px;}
.kb-tt__g{color:#1eff00;}
.kb-tt__muted{color:#9d9d9d;}
.kb-tt__ind{padding-left:10px;}
.kb-tt__set{color:#ffd100;margin-top:8px;}
.kb-tt__desc{color:#ffd100;margin-top:6px;}
.kb-tt__socket{color:#9d9d9d;display:flex;align-items:center;gap:6px;}
.kb-tt__socket:before{content:"";width:10px;height:10px;border-radius:2px;background:var(--c);opacity:.8;}
.kb-float{position:fixed;z-index:10060;pointer-events:none;}
.kb-money{font-weight:600;}
.kb-money--g{color:#ffd700;}.kb-money--g:after{content:" з";}
.kb-money--s{color:#c7c7cf;}.kb-money--s:after{content:" с";}
.kb-money--c{color:#c47a3a;}.kb-money--c:after{content:" м";}
@media (max-width:900px){.kb-layout{grid-template-columns:minmax(0,1fr);}.kb-tt{max-width:none;}}
@media (max-width:560px){.kb-head{padding-top:90px;}.kb-head__title{font-size:24px;}.kb-search button{padding:0 14px;}.kb-table{font-size:13px;}.kb-hide-sm{display:none;}}
.kb-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}
.kb-tile .kb-link{flex:1;min-width:0;}
.kb-tile .kb-link span:not(.kb-badge){line-height:1.3;}
.kb-tile .kb-badge{flex:none;}
