.spravochnik-page h1,.spravochnik-page h2,.spravochnik-page h3{color:inherit}

.spravochnik-page *{box-sizing:border-box}
.spravochnik-page{font-family:'Segoe UI',system-ui,Arial,sans-serif;background:#0f172a;color:#e2e8f0;border-radius:14px;overflow:hidden}
/* Header */
.spravochnik-page .header{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);padding:20px;z-index:100;border-bottom:3px solid #e63946;box-shadow:0 4px 20px rgba(0,0,0,.5)}
.spravochnik-page .header-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.spravochnik-page .logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.spravochnik-page .logo-icon{width:42px;height:42px;background:#e63946;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.3em;font-weight:900;color:#fff}
.spravochnik-page .logo h1{color:#fff;font-size:1.2em;line-height:1.2}
.spravochnik-page .logo h1 small{color:#94a3b8;font-size:.65em;display:block;font-weight:400}
.spravochnik-page .stats-bar{display:flex;gap:15px;margin-left:auto;flex-wrap:wrap}
.spravochnik-page .stat{text-align:center;padding:5px 12px;background:rgba(255,255,255,.05);border-radius:8px}
.spravochnik-page .stat .num{color:#e63946;font-size:1.4em;font-weight:700}
.spravochnik-page .stat .lbl{color:#94a3b8;font-size:.7em}
/* Search */
.spravochnik-page .search-section{max-width:1400px;margin:20px auto;padding:0 20px}
.spravochnik-page .search-box{display:flex;gap:10px;max-width:600px}
.spravochnik-page .search-box input{flex:1;padding:12px 18px;border:2px solid #334155;border-radius:12px;background:#1e293b;color:#e2e8f0;font-size:1em;transition:border .3s}
.spravochnik-page .search-box input:focus{outline:none;border-color:#e63946}
.spravochnik-page .search-box button{padding:12px 24px;background:#e63946;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:700;font-size:1em;transition:background .2s}
.spravochnik-page .search-box button:hover{background:#c1121f}
/* Filters */
.spravochnik-page .filters{max-width:1400px;margin:10px auto 20px;padding:0 20px;display:flex;gap:8px;flex-wrap:wrap}
.spravochnik-page .filter-btn{padding:6px 14px;background:#1e293b;color:#94a3b8;border:1px solid #334155;border-radius:20px;cursor:pointer;font-size:.85em;transition:all .2s}
.spravochnik-page .filter-btn:hover,.filter-btn.active{background:#e63946;color:#fff;border-color:#e63946}
.spravochnik-page .filter-btn .cnt{font-size:.75em;opacity:.7;margin-left:4px}
/* Main layout */
.spravochnik-page .main{max-width:1400px;margin:0 auto;padding:0 20px 40px;display:grid;grid-template-columns:1fr 420px;gap:20px;min-height:60vh}
/* Map */
.spravochnik-page .map-wrap{border-radius:16px;overflow:hidden;border:2px solid #334155;position:relative}
.spravochnik-page #map{width:100%;height:100%;min-height:500px}
.spravochnik-page .map-badge{position:absolute;bottom:12px;left:12px;background:rgba(15,23,42,.9);color:#e63946;padding:6px 14px;border-radius:8px;font-size:.85em;font-weight:600;backdrop-filter:blur(10px);z-index:10}
/* Sidebar */
.spravochnik-page .sidebar{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 200px);overflow-y:auto;padding-right:5px}
.spravochnik-page .sidebar::-webkit-scrollbar{width:6px}
.spravochnik-page .sidebar::-webkit-scrollbar-thumb{background:#334155;border-radius:3px}
/* Company card */
.spravochnik-page .card{background:#1e293b;border-radius:14px;padding:18px;border:1px solid #334155;transition:all .3s;cursor:pointer}
.spravochnik-page .card:hover{border-color:#e63946;transform:translateY(-2px);box-shadow:0 8px 25px rgba(230,57,70,.15)}
.spravochnik-page .card-header{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:10px}
.spravochnik-page .card-header h3{color:#fff;font-size:1em;line-height:1.3}
.spravochnik-page .card-badge{padding:3px 10px;border-radius:12px;font-size:.7em;font-weight:600;white-space:nowrap;flex-shrink:0}
.spravochnik-page .badge-cat{background:rgba(230,57,70,.15);color:#e63946}
.spravochnik-page .badge-new{background:rgba(34,197,94,.15);color:#22c55e}
.spravochnik-page .card-info{display:flex;flex-direction:column;gap:5px;font-size:.85em;color:#94a3b8}
.spravochnik-page .card-info span{display:flex;align-items:center;gap:6px}
.spravochnik-page .card-info .icon{color:#e63946;width:16px;text-align:center}
.spravochnik-page .card-desc{margin-top:8px;font-size:.82em;color:#64748b;line-height:1.5}
.spravochnik-page .card-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.spravochnik-page .card-tags span{padding:2px 8px;background:rgba(255,255,255,.05);border-radius:8px;font-size:.72em;color:#64748b}
/* Footer */
.spravochnik-page .footer{text-align:center;padding:30px 20px;color:#475569;font-size:.8em;border-top:1px solid #1e293b}
.spravochnik-page .footer a{color:#e63946;text-decoration:none}
/* Responsive */
@media(max-width:900px){
.spravochnik-page .map-wrap{min-height:350px}
.spravochnik-page .sidebar{max-height:none}
.spravochnik-page .stats-bar{margin-left:0;margin-top:10px;width:100%}
}
/* Add company banner */
.spravochnik-page .add-banner{background:linear-gradient(135deg,#e63946,#c1121f);border-radius:14px;padding:20px;text-align:center;margin-bottom:12px}
.spravochnik-page .add-banner h3{color:#fff;font-size:1.1em;margin-bottom:6px}
.spravochnik-page .add-banner p{color:rgba(255,255,255,.8);font-size:.85em}
.spravochnik-page .add-banner a{color:#fff;font-weight:700}
/* Loading */
.spravochnik-page .loading{text-align:center;padding:40px;color:#64748b}
.spravochnik-page .loading .spinner{width:40px;height:40px;border:3px solid #334155;border-top-color:#e63946;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 10px}
@keyframes spin{to{transform:rotate(360deg)}}
/* Last updated */
.spravochnik-page .updated{text-align:center;color:#475569;font-size:.75em;padding:10px}

.spravochnik-page .main{display:grid;grid-template-columns:1fr 420px;gap:20px;max-width:1400px;margin:0 auto;padding:0 20px 40px;min-height:60vh}
@media(max-width:900px){.spravochnik-page .main{grid-template-columns:1fr}}