:root{
  --pinkTitle:#ff6ea1;
  --pinkActive:#f86491;
  --txt:#0b0b0b;
  --muted:#7a7a7a;

  --kpiPink:#ffd6e1;   /* projects */
  --kpiBlue:#dee6ff;   /* links */
  --kpiGreen:#dff6d7;  /* clicks */

  /* фиолетовая для uniques */
  --kpiViolet:#e8dcff;        /* фон карточки */
  --kpiVioletAccent:#6b63ff;  /* подложка под иконку */

  --shadow:0 4px 20px rgba(0,0,0,.08);
}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:#fff;color:var(--txt);font-family:Inter,system-ui,Arial,sans-serif}

/* Sidebar */
.sidebar{position:fixed;inset:0 auto 0 0;width:300px;background:#fff;display:flex;flex-direction:column;padding:24px 20px}
.brand img{width:200px;max-width:100%;height:auto;display:block;object-fit:contain}
.nav{display:flex;flex-direction:column;gap:14px;margin:18px 0}
.nav-item{display:flex;align-items:center;gap:14px;text-decoration:none;padding:12px 14px;border-radius:14px;color:#000;font-weight:800}
.nav-item img{width:24px;height:24px;object-fit:contain;filter:brightness(0) saturate(100%)}
.nav-item.active{background:#ffe4eb;color:var(--pinkActive)}
.nav-item.active img{filter:none}
.powered{margin-top:auto;text-align:center}
.powered-text{font-size:13px;color:#3a3a3a;margin-bottom:8px}
.powered-logo{width:40px;height:auto;object-fit:contain;display:block;margin:0 auto}

/* Content */
.content{margin-left:300px;min-height:100vh;padding:36px 44px 60px;background:#fff;height:100vh;overflow:auto}
.header{margin-bottom:8px}
.title{margin:0;font-size:64px;line-height:1;color:var(--pinkTitle);font-weight:900;letter-spacing:.2px}
.status{margin-top:8px;color:#9a9a9a}
.muted{color:#9a9a9a}

/* Sections */
.section{margin:22px 0}
.section-title{margin:0 0 12px 0;font-weight:800;font-size:18px}

/* KPI — 2 в ряд */
.kpi-row{
  display:grid;
  grid-template-columns:repeat(2, minmax(340px, 1fr));
  gap:22px;
  align-items:stretch;
}
.kpi{
  display:grid;grid-template-columns:90px 1fr;gap:18px;
  padding:18px;border-radius:20px;box-shadow:var(--shadow);color:#000;
}
.kpi-icon{display:grid;place-items:center;border-radius:16px;padding:10px}
.kpi-icon img{width:46px;height:46px;opacity:.98}

/* темы */
.kpi-pink{background:var(--kpiPink)}
.kpi-pink .kpi-icon{background:#f86491}

.kpi-blue{background:var(--kpiBlue)}
.kpi-blue .kpi-icon{background:#718cfa}

.kpi-green{background:var(--kpiGreen)}
.kpi-green .kpi-icon{background:#65b562}

/* ФИОЛЕТОВАЯ — unique users */
.kpi-violet{background:var(--kpiViolet)}
.kpi-violet .kpi-icon{background:var(--kpiVioletAccent)}
.kpi-violet .kpi-num{color:#1a1a1a}
.kpi-violet .kpi-sub{color:#222}

/* Контент в карточке */
.kpi-main{display:flex;flex-direction:column;justify-content:center}
.kpi-num{font-weight:900;font-size:40px;line-height:1}
.kpi-num.big{font-size:48px}
.kpi-sub{font-size:12px;margin-top:6px}

/* Podium / Others (как было) */
.podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;align-items:end;margin-top:14px;max-width:1040px}
.pod-col{text-align:center}
.pod-name{font-weight:900;font-size:28px;letter-spacing:.3px;margin-bottom:10px}
.pod-col.mid .pod-step{height:120px}
.pod-col:not(.mid) .pod-step{height:100px}
.pod-step{border-radius:18px;box-shadow:var(--shadow);display:grid;place-items:center}
.pod-place{font-weight:900;font-size:32px;color:#fff;line-height:1}
.gold{background:linear-gradient(180deg,#ffd776 0%, #f5b53a 100%)}
.silver{background:linear-gradient(180deg,#e9e9e9 0%, #cfcfcf 100%)}
.bronze{background:linear-gradient(180deg,#f3b07f 0%, #df8f56 100%)}
.pod-clicks{margin-top:8px;color:#2e2e2e;font-size:14px}

.others{margin-top:18px;display:flex;flex-direction:column;gap:14px;max-width:1120px}
.other{display:grid;grid-template-columns:1fr 140px 140px;align-items:center;gap:16px;padding:16px 18px;border-radius:16px;background:linear-gradient(90deg,#ffe9dd 0%, #ffffff 100%)}
.other .col.name{font-weight:900;display:flex;gap:8px;align-items:center}
.other .col.links,.other .col.clicks{justify-self:end;color:#222}
.other.last{background:linear-gradient(90deg,#ff9f9f 0%, #ffffff 100%);border:1px solid rgba(255,80,80,.25)}

/* Адаптив */
@media (max-width:1100px){ .kpi-row{grid-template-columns:1fr} }
@media (max-width:1280px){ .content{padding:28px} .title{font-size:52px} }



/* ===== Mobile drawer (additive) ===== */
@media (max-width: 768px){

  :root{ --rail-w: 22px; --drawer-w: 280px; }

  /* Розовый вертикальный рейл слева + бургер по центру экрана */
  .m-rail{
    position: fixed; inset: 0 auto 0 0;
    width: var(--rail-w);
    background: #ffe0ea; /* мягкий розовый как на рефе */
    z-index: 1200;
  }
  .m-burger{
    position: absolute; left: 50%;
    top: 50%; transform: translate(-50%, -50%);
    width: 28px; height: 28px; padding: 0; border: 0; background: transparent;
    display: grid; place-items: center; cursor: pointer;
  }
  .m-burger img{ width: 20px; height: 20px; display: block; }

  /* Блюр-бэкдроп поверх контента (показывается при открытом меню) */
  .m-backdrop{
    position: fixed; inset: 0;
    background: rgba(255,255,255,.55);
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
    opacity: 0; pointer-events: none;
    transition: opacity .28s ease;
    z-index: 1190;
  }
  .mnav-open .m-backdrop{ opacity: 1; pointer-events: auto; }

  /* Переводим левый sidebar в выезжающий дровер */
  .sidebar{
    position: fixed !important; left: 0; top: 0; bottom: 0;
    width: var(--drawer-w); max-width: 85vw;
    transform: translateX(calc(-1 * var(--drawer-w)));
    transition: transform .32s cubic-bezier(.22,.61,.36,1);
    background: rgba(255,255,255,.96);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    box-shadow: 0 20px 50px rgba(0,0,0,.12);
    z-index: 1210;
    padding: 24px 20px;
  }
  .mnav-open .sidebar{ transform: translateX(0); }

  /* Контент с учётом узкого левого рейла */
  .content{
    margin-left: 0 !important;
    padding: 24px 16px 24px calc(16px + var(--rail-w)) !important;
  }
  .title{ font-size: 36px !important; }
  .status{ font-size: 12px !important; }

  /* KPI в одну колонку, немного компактнее */
  .kpi-row{ grid-template-columns: 1fr !important; gap: 14px !important; }
  .kpi{ grid-template-columns: 76px 1fr !important; gap: 14px !important; padding: 16px !important; border-radius: 16px !important; }
  .kpi-icon img{ width: 38px !important; height: 38px !important; }
  .kpi-num{ font-size: 28px !important; }
  .kpi-num.big{ font-size: 32px !important; }
}

/* Узкие экраны */
@media (max-width: 380px){
  .title{ font-size: 30px !important; }
  .kpi{ grid-template-columns: 66px 1fr !important; }
  .kpi-icon img{ width: 32px !important; height: 32px !important; }
}

/* === Hide burger on desktop === */
#mRail, #mBurger {
  display: none;
}

/* Показываем только на мобильных (ширина < 900px) */
@media (max-width: 900px) {
  #mRail, #mBurger {
    display: block;
  }
}

/* === Mobile: рейл слева в закрытом, справа в открытом; всегда видим === */
@media (max-width: 768px){
  :root{ --rail-w: 30px; }        /* толщина розовой полосы */

  /* Рейл (всегда видим и кликабелен поверх меню) */
  .m-rail{
    position: fixed; inset: 0 auto 0 0;       /* слева по умолчанию */
    width: var(--rail-w);
    background: #ffe0ea;
    transform: translateX(0);
    transition: transform .36s cubic-bezier(.22,.61,.36,1);
    z-index: 1300;                             /* выше бокового меню */
  }
  .m-burger{
    position: absolute; left: 50%; top: 50%;
    transform: translate(-50%,-50%);
    width: 28px; height: 28px; padding: 0; border: 0; background: transparent;
    display: grid; place-items: center; cursor: pointer;
  }
  .m-burger img{ width: 20px; height: 20px; display:block; }

  /* Контент с небольшим отступом под закрытый рейл */
  .content{
    margin-left: 0 !important;
    padding: 24px 16px 24px calc(16px + var(--rail-w)) !important;
  }

  /* Боковое меню — полноэкранный дровер, выезжает слева */
  .sidebar{
    position: fixed !important; top: 0; left: 0; right: 0; bottom: 0;
    width: 100vw; max-width: 100vw;
    transform: translateX(-100%);              /* спрятано */
    transition: transform .36s cubic-bezier(.22,.61,.36,1);
    background: rgba(255,255,255,.96);
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
    box-shadow: 0 20px 50px rgba(0,0,0,.12);
    z-index: 1200;                              /* ниже рейла */
    padding: 24px 20px;                         /* базовые поля */
  }

  /* Открыто: меню на экране, рейл прилип справа и виден поверх */
  .mnav-open .sidebar{
    transform: translateX(0);
    padding-right: calc(20px + var(--rail-w));  /* чтобы контент не залез под рейл */
  }
  .mnav-open .m-rail{
    transform: translateX(calc(100vw - var(--rail-w))); /* рейл у правого края */
  }

  /* Бэкдроп необязателен — меню полное; если нужен, раскомментируй:
  .m-backdrop{ position:fixed; inset:0; background:rgba(255,255,255,.55);
               backdrop-filter: blur(7px); opacity:0; pointer-events:none; transition:.28s; z-index:1190; }
  .mnav-open .m-backdrop{ opacity:1; pointer-events:auto; }
  */
}

/* Прячем рейл/бургер на десктопе */
#mRail, #mBurger{ display:none; }
@media (max-width: 900px){
  #mRail, #mBurger{ display:block; }
}

/* === GLOBAL POPUP STACK FIX === */
:root{
  /* единая карта уровней */
  --z-rail: 1300;       /* розовый рейл / бургер */
  --z-sidebar: 1200;    /* выезжающее меню */
  --z-overlay: 9998;    /* затемнение */
  --z-modal: 9999;      /* модалки */
  --z-toast: 10000;     /* тосты / уведомления */
}

/* убедимся, что меню/рейл ниже модалок */
.sidebar{ z-index: var(--z-sidebar); }
.m-rail{ z-index: var(--z-rail); }

/* единое поведение оверлея */
.overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.42);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  z-index: var(--z-overlay);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .2s ease, visibility .2s ease;
}
.overlay.show, .overlay.open{
  opacity: 1; visibility: visible; pointer-events: auto;
}

/* модалки всегда поверх */
.modal{
  position: fixed;
  left: 50%; top: 50%;
  transform: translate(-50%, -50%) scale(.98);
  z-index: var(--z-modal);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: transform .2s ease, opacity .2s ease, visibility .2s ease;
}
.modal.show, .modal.open{
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}

/* блокируем скролл подложки когда открыт попап */
body.modal-open{ overflow: hidden; }

/* тосты поверх всего на случай перекрытий */
.corner{ position: fixed; z-index: var(--z-toast); }

/* опционально: когда модалка открыта — клики через рейл/бургер не проходят */
body.modal-open .m-rail,
body.modal-open #mRail,
body.modal-open #mBurger { pointer-events: none; }
