/* site.css — каркас сайта поверх mbos-ui.css (токены :root — оттуда) */
html,body{margin:0;min-height:100%;background:var(--bg2) url(../img/pattern.svg);background-size:120px 124px;color:var(--txt);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;max-width:none;padding:0}
body{--menu-w:236px;display:grid;grid-template-columns:var(--menu-w) 1fr;grid-template-rows:56px 1fr;min-height:100vh;overflow-x:hidden;transition:grid-template-columns .25s ease}
body.menu-closed{--menu-w:0px}

/* шапка */
.site-top{grid-column:1/3;display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 12px;background:rgba(0,43,74,.92);backdrop-filter:blur(8px);position:sticky;top:0;z-index:40}
.site-top__left{display:flex;align-items:center;gap:10px}
.site-top__logo img{height:32px;display:block}
.site-top__right{display:flex;align-items:center;gap:12px}
.site-top__user{display:flex;align-items:center;gap:8px;background:rgba(var(--wt,255,255,255),.12);border-radius:20px;padding:4px 12px 4px 4px;font-weight:600;color:var(--txt);text-decoration:none}
.site-top__user:hover{background:rgba(var(--wt,255,255,255),.2)}
.site-top__avatar{width:28px;height:28px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px}
.site-top__exit{color:var(--mut);text-decoration:none;font-size:20px}

/* гамбургер */
.site-top__burger{width:40px;height:40px;border:0;border-radius:10px;background:transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.site-top__burger:hover{background:rgba(var(--wt,255,255,255),.1)}
.site-top__burger span{display:block;width:20px;height:2px;border-radius:2px;background:var(--txt);transition:transform .25s ease,opacity .25s ease}
body:not(.menu-closed) .site-top__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body:not(.menu-closed) .site-top__burger span:nth-child(2){opacity:0}
body:not(.menu-closed) .site-top__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* левое меню: задвигается целиком */
.site-menu{width:236px;box-sizing:border-box;padding:14px 12px;background:rgba(0,43,74,.6);border-right:1px solid rgba(var(--wt,255,255,255),.08);position:sticky;top:56px;height:calc(100vh - 56px);overflow-y:auto;overflow-x:hidden;transform:translateX(0);transition:transform .25s ease}
body.menu-closed .site-menu{transform:translateX(-100%);pointer-events:none}
.site-menu__brand{font-size:20px;font-weight:800;letter-spacing:.5px;padding:8px 13px 18px;white-space:nowrap}
.site-menu__item{display:block;padding:11px 13px;border-radius:12px;color:var(--txt);text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.site-menu__item.on{background:rgba(var(--wt,255,255,255),.12);color:var(--sky)}
.site-menu__item:hover{background:rgba(var(--wt,255,255,255),.08)}
.site-menu__group summary{padding:11px 13px;font-size:14px;font-weight:600;cursor:pointer;list-style:none;border-radius:12px;white-space:nowrap}
.site-menu__group summary::-webkit-details-marker{display:none}
.site-menu__group summary::after{content:"▸";float:right;color:var(--mut)}
.site-menu__group[open] summary::after{content:"▾"}
.site-menu__group .site-menu__item{padding-left:26px;font-weight:500}
.site-menu__group .site-menu__group summary{padding-left:26px;font-weight:500}
.site-menu__group .site-menu__group .site-menu__item{padding-left:40px}
.site-backdrop{display:none}

/* контент */
.site-content{padding:18px 26px;min-width:0}
.site-msg{border-radius:12px;padding:12px 16px;margin-bottom:14px;font-size:14px;font-weight:600}
.site-msg--ok{background:rgba(61,220,132,.15);color:#3ddc84}
.site-msg--info{background:rgba(82,195,241,.15);color:var(--sky)}
.site-msg--err{background:rgba(255,197,138,.15);color:#FFC58A}
.site-modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:50}
.site-modal[hidden]{display:none}
.site-modal__panel{background:var(--card);border-radius:16px;width:min(920px,calc(100vw - 32px));max-height:90vh;overflow:auto}
.site-modal__head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;font-weight:700;border-bottom:1px solid rgba(var(--wt,255,255,255),.1)}
.site-modal__close{background:none;border:0;color:var(--mut);font-size:18px;cursor:pointer}
.site-modal__body{padding:18px}

/* узкий экран: меню — выдвижная панель поверх контента, по умолчанию закрыто */
@media (max-width:900px){
  body,body.menu-closed{grid-template-columns:1fr}
  .site-menu{position:fixed;top:56px;left:0;bottom:0;height:auto;z-index:35;background:rgba(0,43,74,.98);transform:translateX(-100%);box-shadow:4px 0 20px rgba(0,0,0,.4)}
  body.menu-open .site-menu{transform:translateX(0);pointer-events:auto}
  .site-backdrop{position:fixed;inset:56px 0 0 0;background:rgba(0,0,0,.45);z-index:30}
  body:not(.menu-open) .site-backdrop{display:none}
  body.menu-open .site-backdrop{display:block}
  .site-top__burger span:nth-child(1),.site-top__burger span:nth-child(3){transform:none}
  .site-top__burger span:nth-child(2){opacity:1}
  body.menu-open .site-top__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.menu-open .site-top__burger span:nth-child(2){opacity:0}
  body.menu-open .site-top__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .site-top__name{display:none}
  .site-content{padding:14px 12px}
}
