/* oshibki-obd.ru v2.1.2 — hard visual fix.
   Loaded as a new file after the UI kit and site.css so old browser caches cannot keep the broken desktop header. */
:root{
  --p-font:Tahoma,Verdana,Arial,sans-serif!important;
  --p-font-ui:Tahoma,Verdana,Arial,sans-serif!important;
  --p-font-heading:Arial,Tahoma,Verdana,sans-serif!important;
  --p-font-panel:Tahoma,Verdana,Arial,sans-serif!important;
  --p-fs:15px;
  --p-lh:1.52;
  --p-gap:12px;
}

html,body,button,input,select,textarea,
.p-brand__tag,.p-headlinks,.p-nav__item,.p-subnav,.p-breadcrumb,
.p-panel__head,.p-panel__body,.p-list,.p-section-title,.p-section__head,
.p-table,.p-table th,.p-card,.p-fieldset,.p-tab,.p-accordion__button,
.p-linkbox__head,.p-forum-head,.p-footer,.p-quote,
.obd-h1box,.obd-stat,.obd-linkgrid,.obd-system-grid,.obd-kv,.obd-content-copy{
  font-family:Tahoma,Verdana,Arial,sans-serif!important;
}

/* Preserve code readability. */
.obd-code,.obd-table-code,code,pre{
  font-family:Consolas,"Courier New",monospace!important;
}

body{font-size:15px!important;line-height:1.52!important}

/* ===== Desktop header: one compact masthead + one real horizontal nav ===== */
.p-header--compact .p-header__inner{
  min-height:68px!important;
  padding:8px 0!important;
  grid-template-columns:minmax(420px,1fr) auto!important;
  gap:18px!important;
  align-items:center!important;
}
.p-header--compact .p-brand{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:0 11px!important;
  min-width:0!important;
}
.obd-brand-link{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:0 11px!important;
  min-width:0!important;
}
.p-header--compact .p-brand__name{
  display:block!important;
  margin:0!important;
  font:700 30px/1 Arial,Tahoma,Verdana,sans-serif!important;
  letter-spacing:-.45px!important;
}
.p-header--compact .p-brand__tag{
  display:block!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.3!important;
  color:#e9f1f7!important;
}
.p-headlinks{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px 11px!important;
  font-size:13px!important;
  line-height:1.3!important;
  white-space:nowrap!important;
}

.p-nav{
  min-height:41px!important;
}
.p-nav__bar{
  min-height:41px!important;
  padding:0!important;
}
.p-nav__menu{
  min-height:41px!important;
}
.p-nav__item{
  min-height:41px!important;
  padding:0 15px!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1!important;
}
.p-subnav__inner{
  min-height:34px!important;
  gap:16px!important;
  font-size:13px!important;
  line-height:1.35!important;
}

/* ===== Main page rhythm: panels must not touch one another ===== */
.p-layout{
  margin-top:14px!important;
  margin-bottom:30px!important;
  gap:12px!important;
}
.p-main>.p-breadcrumb{
  margin:0 0 10px!important;
}
.p-main>.obd-h1box,
.p-main>.obd-statbar,
.p-main>.obd-kv,
.p-main>.p-panel,
.p-main>.obd-note,
.p-main>.obd-safe,
.p-main>.obd-content-copy,
.p-main>.obd-alpha,
.p-main>.obd-ad-slot{
  margin-top:0!important;
  margin-bottom:12px!important;
}
.p-main>.obd-h1box+.obd-statbar,
.p-main>.obd-h1box+.obd-kv,
.p-main>.obd-h1box+.p-panel,
.p-main>.p-panel+.p-panel,
.p-main>.obd-kv+.p-panel,
.p-main>.obd-statbar+.p-panel{
  margin-top:0!important;
}
.p-sidebar--left.p-stack>*+*,
.p-sidebar--right.p-stack>*+*{
  margin-top:12px!important;
}

/* ===== Readable typography without losing the dense portal feel ===== */
.p-breadcrumb{
  min-height:32px!important;
  padding:6px 9px!important;
  font-size:13px!important;
  line-height:18px!important;
}
.obd-h1box{
  padding:13px 15px!important;
}
.obd-h1box h1{
  margin:0 0 8px!important;
  font:700 26px/1.2 Arial,Tahoma,Verdana,sans-serif!important;
}
.obd-h1box p{
  font-size:15px!important;
  line-height:1.58!important;
}
.p-panel__head{
  min-height:34px!important;
  padding:6px 9px!important;
  font-size:14px!important;
  line-height:21px!important;
}
.p-panel--mini .p-panel__head{
  min-height:31px!important;
  padding:5px 8px!important;
  font-size:13px!important;
  line-height:20px!important;
}
.p-list a,
.p-list--dense a{
  font-size:13px!important;
  line-height:20px!important;
}
.p-list--dense a{
  min-height:31px!important;
  padding-top:5px!important;
  padding-bottom:5px!important;
}
.obd-stat{padding:10px 11px!important}
.obd-stat b{font-size:17px!important}
.obd-stat span{font-size:12px!important}
.obd-linkgrid a{
  min-height:44px!important;
  padding:9px 10px!important;
  font-size:13px!important;
  line-height:1.35!important;
}
.obd-linkgrid a small{
  margin-top:3px!important;
  font-size:12px!important;
}
.obd-code{
  padding:7px 8px!important;
  font-size:13px!important;
}
.obd-code-desc{font-size:12px!important}
.obd-kv{grid-template-columns:205px minmax(0,1fr)!important}
.obd-kv>div{
  padding:8px 10px!important;
  font-size:14px!important;
  line-height:1.4!important;
}
.p-table{
  font-size:13px!important;
  line-height:1.5!important;
}
.p-table th,
.p-table--compact th,
.p-table--compact td{
  font-size:13px!important;
  padding:7px 8px!important;
}
.obd-system-item b{font-size:13px!important}
.obd-system-item span{font-size:12px!important}
.obd-content-copy{
  padding:13px 15px!important;
  font-size:15px!important;
  line-height:1.68!important;
}
.obd-content-copy h2{font-size:20px!important}
.obd-content-copy h3{font-size:17px!important}
.p-footer--compact .p-container{
  min-height:50px!important;
  font-size:12px!important;
}

/* Desktop must NEVER render the mobile button. */
@media (min-width:821px){
  .p-nav__bar{
    display:flex!important;
    align-items:stretch!important;
  }
  .p-nav .p-nav-toggle,
  .p-nav-toggle{
    display:none!important;
    width:0!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }
  .p-nav__menu,
  .p-nav__menu.is-open{
    display:flex!important;
    width:auto!important;
    flex:1 1 auto!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    border-top:0!important;
  }
  .p-nav__item:first-child{border-left:1px solid var(--p-border-mid)!important}
}

/* ===== Mobile/tablet ===== */
@media (max-width:820px){
  :root{--p-fs:14px}
  body{font-size:14px!important}
  .p-header--compact .p-header__inner{
    min-height:auto!important;
    padding:10px 0!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .p-header--compact .p-brand,
  .obd-brand-link{
    display:block!important;
  }
  .p-header--compact .p-brand__name{font-size:27px!important}
  .p-header--compact .p-brand__tag{
    margin-top:5px!important;
    font-size:12px!important;
  }
  .p-headlinks{
    justify-content:flex-start!important;
    white-space:normal!important;
    font-size:12px!important;
  }
  .p-nav__bar{
    display:block!important;
    min-height:0!important;
    padding:6px 0!important;
  }
  .p-nav .p-nav-toggle,
  .p-nav-toggle{
    display:flex!important;
    width:100%!important;
    height:38px!important;
    margin:0!important;
    align-items:center!important;
    justify-content:center!important;
    font-family:Tahoma,Verdana,Arial,sans-serif!important;
    font-size:14px!important;
    font-weight:700!important;
  }
  .p-nav__menu{
    display:none!important;
    width:100%!important;
    margin-top:6px!important;
  }
  .p-nav__menu.is-open{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .p-nav__item{
    min-height:38px!important;
    padding:0 10px!important;
    font-size:13px!important;
  }
  .p-layout{gap:10px!important;margin-top:10px!important}
  .p-main>.p-breadcrumb{margin-bottom:9px!important}
  .p-main>.obd-h1box,
  .p-main>.obd-statbar,
  .p-main>.obd-kv,
  .p-main>.p-panel,
  .p-main>.obd-note,
  .p-main>.obd-safe,
  .p-main>.obd-content-copy,
  .p-main>.obd-alpha{margin-bottom:10px!important}
  .obd-h1box h1{font-size:23px!important}
  .obd-h1box p,.obd-content-copy{font-size:14px!important}
  .obd-kv{grid-template-columns:155px minmax(0,1fr)!important}
  .p-list--dense a{min-height:38px!important;padding-top:8px!important;padding-bottom:7px!important;font-size:13px!important}
}

@media (max-width:520px){
  .p-nav__menu.is-open{grid-template-columns:1fr!important}
  .obd-kv{grid-template-columns:1fr!important}
  .obd-h1box{padding:11px 12px!important}
  .obd-h1box h1{font-size:21px!important}
  .p-breadcrumb{font-size:12px!important}
}
