:root{
  --ub-bg:#0b0d12;
  --ub-panel:rgba(16,20,28,.9);
  --ub-panel-2:rgba(24,30,40,.95);
  --ub-line:rgba(255,255,255,.08);
  --ub-text:#f3f6fb;
  --ub-muted:#9ba6b7;
  --ub-accent:#f7b34b;
  --ub-green:#62db83;
  --ub-vip:#ffd36b;
  --ub-shadow:0 18px 40px rgba(0,0,0,.35);
  --ub-radius:18px;
}
body{
  font-size:14px!important;
  font-family:'Roboto Reqular',sans-serif!important;
  color:var(--ub-text);
}
.background{opacity:1;background:url(/public/default2/img/fon1.jpg) no-repeat center center fixed;background-size:cover;filter:saturate(1.05);}
.overlay{background:linear-gradient(180deg,rgba(7,10,14,.82),rgba(11,13,18,.93));}
.main{position:relative;z-index:1;min-height:100vh;}
header{background:rgba(11,13,18,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--ub-line);margin-bottom:24px;}
.main-content{padding-bottom:20px;}
.top-welcome-text,.top-servers,.servers-list,.page,.promo-section .promo-card{background:var(--ub-panel);border:1px solid var(--ub-line);border-radius:22px;box-shadow:var(--ub-shadow);}
.top-welcome-text,.top-servers,.servers-list,.page{padding:16px;}
/* header widget */
.ub-topbar-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px;}
.ub-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;}
.ub-logo-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--ub-accent),#ffe29a);color:#111;font-size:18px;font-weight:800;box-shadow:0 10px 24px rgba(247,179,75,.25);}
.ub-brand-title{font-size:20px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1;}
.ub-brand-sub{font-size:12px;color:var(--ub-muted);margin-top:4px;text-transform:none;letter-spacing:0;}
.ub-auth{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.ub-auth .btn{border-radius:12px!important;padding:9px 14px!important;font-size:14px!important;}
.ub-topbar-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--ub-line);}
.ub-nav{display:flex;gap:10px;flex-wrap:wrap;}
.ub-nav a,.ub-nav .ub-nav-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#fff;padding:11px 14px;border-radius:12px;border:1px solid var(--ub-line);background:rgba(255,255,255,.03);transition:.18s ease;font-size:14px;}
.ub-nav a:hover,.ub-nav .ub-nav-cta:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff;transform:translateY(-1px);}
.ub-nav .ub-nav-cta{background:linear-gradient(135deg,var(--ub-accent),#ffd98f);color:#111;border-color:transparent;font-weight:700;box-shadow:0 6px 16px rgba(247,179,75,.25);}
.ub-search{display:flex;gap:8px;align-items:center;min-width:280px;max-width:360px;flex:1;justify-content:flex-end;}
.ub-search .form-control{background:var(--ub-panel-2);border:1px solid var(--ub-line);color:#fff;border-radius:12px;height:42px;}
.ub-search .form-control::placeholder{color:#7f8a9b;}
.ub-search .btn{height:42px;border-radius:12px;padding:0 16px;}
/* hero */
.top-welcome-text h1{font-size:42px;margin:0 0 12px;line-height:.98;letter-spacing:-.03em;color:#fff;}
.top-welcome-text .ub-hero-sub{color:var(--ub-muted);font-size:16px;line-height:1.7;max-width:840px;margin-bottom:18px;}
.top-welcome-text .ub-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px;}
.top-welcome-text .btn{border-radius:14px;padding:12px 18px;font-weight:700;}
.top-welcome-text .btn.add-server{background:linear-gradient(135deg,var(--ub-accent),#ffd98f);color:#111;border:none;box-shadow:0 8px 20px rgba(247,179,75,.26);}
.top-welcome-text .btn-outline-light{border-color:var(--ub-line);background:rgba(255,255,255,.04);color:#fff;}
.top-welcome-text .ub-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch;}
.top-welcome-text .ub-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.top-welcome-text .ub-stat{background:var(--ub-panel-2);border:1px solid var(--ub-line);border-radius:16px;padding:16px;}
.top-welcome-text .ub-stat strong{display:block;font-size:28px;line-height:1.1;color:#fff;}
.top-welcome-text .ub-stat span{display:block;margin-top:4px;color:var(--ub-muted);font-size:13px;}
/* section titles */
.top-servers .title h3,.servers-list .title h3{font-size:1.7em;padding:0;margin:0;color:#fff;display:flex;align-items:center;gap:10px;}
.top-servers .title,.servers-list .title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.top-servers .title .muted,.servers-list .title .muted{color:var(--ub-muted);font-size:13px;}
/* top row */
.top-servers-wrapper .row{--bs-gutter-x:12px;--bs-gutter-y:12px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;}
.top-servers-wrapper .row::-webkit-scrollbar{height:8px;}
.top-servers-wrapper .row::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:999px;}
.top-servers-wrapper .block{flex:0 0 220px;max-width:220px;}
.top-servers .top-servers-wrapper .top-servers-info{background:linear-gradient(180deg,#1a202b,#151a23);border:1px solid var(--ub-line);border-radius:16px;overflow:hidden;box-shadow:var(--ub-shadow);transition:.2s ease;height:100%;}
.top-servers .top-servers-wrapper .top-servers-info:hover{transform:translateY(-3px);border-color:rgba(247,179,75,.26);}
.top-servers .top-servers-wrapper .top-servers-info .hostname{padding:10px 12px 0;min-height:54px;}
.top-servers .top-servers-wrapper .top-servers-info .hostname a{padding:0;color:#fff;font-size:14px;font-weight:700;line-height:1.25;width:100%;}
.top-servers .top-servers-wrapper .top-servers-info .image-map{position:relative;}
.top-servers .top-servers-wrapper .top-servers-info .image-map img{width:100%;height:100px;object-fit:cover;display:block;}
.top-servers .top-servers-wrapper .top-servers-info .image-map:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(11,13,18,.88));pointer-events:none;}
.top-place-badge,.top-servers .top-servers-wrapper .top-servers-info .image-map .name-map{position:absolute;z-index:1;font-size:11px;font-weight:800;border-radius:999px;}
.top-place-badge{top:8px;left:8px;padding:5px 8px;background:rgba(247,179,75,.16);color:var(--ub-accent);border:1px solid rgba(247,179,75,.24);}
.top-servers .top-servers-wrapper .top-servers-info .image-map .name-map{left:8px;bottom:8px;padding:0;background:none;color:#ffd98f;font-size:11px;}
.top-servers .top-servers-wrapper .top-servers-info .info{padding:10px 12px 12px;display:grid;gap:8px;}
.top-servers .top-servers-wrapper .top-servers-info .info .players{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:60px;padding:7px 9px;border-radius:10px;background:rgba(98,219,131,.1);border:1px solid rgba(98,219,131,.22);color:var(--ub-green);font-size:12px;font-weight:800;}
.top-servers .top-servers-wrapper .top-servers-info .info .players::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--ub-green);animation:ubPulse 1.8s infinite;box-shadow:0 0 0 0 rgba(98,219,131,.4);}
.top-servers .top-servers-wrapper .top-servers-info .info .address{color:#fff;padding:0;border-top:none;display:block;font-size:15px;font-weight:800;cursor:pointer;word-break:break-all;}
.top-servers .top-servers-wrapper .top-servers-info .info .address:hover{color:var(--ub-accent);}
.top-server-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.top-server-play{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:8px 10px;border-radius:10px;background:linear-gradient(135deg,var(--ub-accent),#ffd98f);color:#111;font-size:12px;font-weight:800;}
/* servers list */
.servers-list table{margin-bottom:0;border-collapse:separate;border-spacing:0 10px;background:transparent!important;}
.table-dark{background:transparent!important;color:#fff;}
.table-dark thead{background:transparent;}
.table-dark thead tr th{background:rgba(255,255,255,.06);color:#fff;border:none;padding:14px 12px;vertical-align:middle;}
.table-dark tbody tr{background:var(--ub-panel-2);border:1px solid var(--ub-line);}
.table-dark tbody td{padding:14px 12px;border-top:none;vertical-align:middle;}
.table-dark tbody tr td:first-child{border-top-left-radius:14px;border-bottom-left-radius:14px;}
.table-dark tbody tr td:last-child{border-top-right-radius:14px;border-bottom-right-radius:14px;}
.table-dark .address,.players,.table-dark .vote{background:rgba(255,255,255,.06);padding:.34em .6em;border-radius:10px;color:#fff;}
.copy-btn{margin-left:8px;background:rgba(255,255,255,.06);color:#fff;border:1px solid var(--ub-line);border-radius:10px;padding:6px 10px;transition:.18s ease;}
.copy-btn:hover{background:rgba(247,179,75,.14);color:var(--ub-accent);}
.hostname{color:#ffd36b;font-weight:700;text-decoration:none;}
/* promo/footer */
.promo-section{margin-top:18px;}
.promo-section .promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.promo-section .promo-card{padding:22px;}
.promo-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(247,179,75,.12);color:var(--ub-accent);border:1px solid rgba(247,179,75,.2);font-size:13px;margin-bottom:14px;}
.promo-title{font-size:28px;line-height:1.15;color:#fff;margin:0 0 10px;}
.promo-list{display:grid;gap:10px;margin-top:16px;}
.promo-item{padding:13px 14px;border-radius:14px;background:var(--ub-panel-2);border:1px solid var(--ub-line);color:#fff;}
.footer{border-top:none;background:transparent;}
.footer .container{background:var(--ub-panel);border:1px solid var(--ub-line);border-radius:20px;box-shadow:var(--ub-shadow);}
.footer h5,.footer p,.footer a,.footer .text-center{color:#fff!important;}
.footer a{text-decoration:none;}
.footer a:hover{color:var(--ub-accent)!important;}
/* mobile */
@keyframes ubPulse{0%{box-shadow:0 0 0 0 rgba(98,219,131,.42);transform:scale(.95)}70%{box-shadow:0 0 0 8px rgba(98,219,131,0);transform:scale(1)}100%{box-shadow:0 0 0 0 rgba(98,219,131,0);transform:scale(.95)}}
@media (max-width: 992px){
  .ub-topbar-top,.ub-topbar-bottom,.top-welcome-text .ub-hero-grid,.promo-section .promo-grid{grid-template-columns:1fr;display:grid;}
  .ub-topbar-top{gap:12px;}
  .ub-topbar-bottom{gap:12px;}
  .ub-search{min-width:0;max-width:none;justify-content:stretch;}
  .ub-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .ub-search .btn,.ub-search .form-control,.ub-nav a,.ub-nav .ub-nav-cta{width:100%;}
  .top-welcome-text h1{font-size:32px;}
  .top-welcome-text .ub-stat-grid{grid-template-columns:1fr 1fr;}
  .table-responsive{border-radius:16px;overflow-x:auto;}
}
@media (max-width: 768px){
  header{margin-bottom:18px;}
  .top-welcome-text,.top-servers,.servers-list,.page{padding:12px;}
  .ub-nav{grid-template-columns:1fr;}
  .top-welcome-text .ub-stat-grid{grid-template-columns:1fr;}
  .top-servers-wrapper .block{flex:0 0 180px;max-width:180px;}
  .top-servers .top-servers-wrapper .top-servers-info .image-map img{height:88px;}
  .servers-list table thead{display:none;}
  .servers-list table,.servers-list tbody,.servers-list tr,.servers-list td{display:block;width:100%;}
  .servers-list tbody tr{padding:10px;border-radius:14px;margin-bottom:10px;}
  .servers-list tbody td{border:none;padding:8px 6px!important;text-align:left!important;}
  .servers-list tbody td:before{content:attr(data-label);display:block;color:var(--ub-muted);font-size:12px;margin-bottom:4px;}
  .promo-section .promo-grid{grid-template-columns:1fr;}
  .footer .row{row-gap:16px;}
}


@media (min-width: 1400px){
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container{
    max-width:1370px;
  }
}

.ub-auth .btn-outline-light{
  background:#fff!important;
  color:#111!important;
  border-color:#fff!important;
}

.ub-auth .btn-outline-light:hover,
.ub-auth .btn-outline-light:focus{
  background:#f5f5f5!important;
  color:#111!important;
  border-color:#fff!important;
}
