:root {
  --f-bg:#f6f6f3;
  --f-surface:#fff;
  --f-soft:#fafaf8;
  --f-text:#191b1e;
  --f-muted:#777c83;
  --f-line:#e5e6e3;
  --f-line-strong:#d7d9d5;
  --f-dark:#1b1d20;
}

body,.app {
  background:var(--f-bg);
  color:var(--f-text);
}

/* ===== SIDEBAR ===== */

.sidebar {
  width:238px;
  padding:24px 18px 18px;
  border-right:1px solid var(--f-line);
  background:#fff;
  box-shadow:none;
}

.logo {
  min-height:58px;
  padding:0 8px 22px;
  border-bottom:1px solid var(--f-line);
  gap:11px;
}

.logo-mark {
  width:38px;
  height:38px;
  border-radius:11px;
  background:var(--f-dark);
  color:#fff;
  box-shadow:none;
}

.logo-title {
  color:var(--f-text);
  font-size:14px;
  font-weight:800;
}

.logo-subtitle {
  margin-top:2px;
  color:var(--f-muted);
  font-size:10px;
}

.menu {
  padding-top:18px;
}

.menu-section {
  margin-bottom:22px;
}

.menu-main {
  min-height:42px;
  padding:0 11px;
  border-radius:10px;
  color:#5f646b;
  font-size:12px;
  font-weight:700;
  background:transparent;
}

.menu-main:hover {
  background:#f4f4f1;
  color:var(--f-text);
}

.menu-main.active {
  background:var(--f-dark);
  color:#fff;
  box-shadow:none;
}

.submenu {
  margin:7px 0 0;
  padding:0;
}

.submenu-item {
  min-height:34px;
  margin:2px 0;
  padding:0 10px 0 39px;
  border-radius:9px;
  color:#777c82;
  font-size:11px;
}

.submenu-item:hover {
  background:#f6f6f3;
  color:var(--f-text);
}

.submenu-item.active {
  background:#f1f1ee;
  color:var(--f-text);
  font-weight:700;
}

.counter,.muted-counter {
  min-width:25px;
  height:20px;
  padding:0 7px;
  border:0;
  border-radius:20px;
  background:#ededeb;
  color:#63676d;
  font-size:10px;
}

.sidebar-footer {
  border-top:1px solid var(--f-line);
  color:#969a9f;
  font-size:9px;
}

/* ===== WORKSPACE ===== */

.workspace {
  margin-left:238px;
  background:var(--f-bg);
}

.topbar {
  height:68px;
  padding:0 34px;
  border-bottom:1px solid var(--f-line);
  background:rgba(255,255,255,.94);
  box-shadow:none;
  backdrop-filter:blur(12px);
}

.factory-select {
  min-height:36px;
  padding:0 12px;
  border:1px solid var(--f-line);
  border-radius:10px;
  background:#fff;
  color:#555a60;
  font-size:11px;
}

.factory-icon,.notification {
  display:none;
}

.current-user-avatar {
  width:34px;
  height:34px;
  border-radius:10px;
  background:#ededeb;
  color:var(--f-text);
}

.current-user-copy strong {
  color:var(--f-text);
  font-size:11px;
}

.current-user-copy span {
  color:#969ba1;
  font-size:9px;
}

/* ===== ORDERS ===== */

#ordersPage {
  max-width:1520px;
  margin:0 auto;
  padding:34px 38px 70px;
}

#ordersPage .page-header {
  margin:0 0 25px;
  align-items:flex-end;
}

#ordersPage .page-header h1 {
  margin:0;
  color:var(--f-text);
  font-size:32px;
  line-height:1;
  letter-spacing:-.045em;
}

#ordersPage .page-header p {
  margin:9px 0 0;
  color:var(--f-muted);
  font-size:12px;
}

.updated {
  color:#999da2;
  font-size:10px;
}

.refresh-button {
  width:34px;
  height:34px;
  margin-left:8px;
  border:1px solid var(--f-line);
  border-radius:9px;
  background:#fff;
  color:#55595e;
}

/* Старые огромные KPI превращаем в компактную строку */

.kpi-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1px;
  margin-bottom:18px;
  padding:1px;
  overflow:hidden;
  border:1px solid var(--f-line);
  border-radius:14px;
  background:var(--f-line);
}

.kpi-card {
  min-height:72px;
  padding:15px 18px;
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

.kpi-card:hover {
  transform:none;
  box-shadow:none;
}

.kpi-value,
.kpi-value.blue,
.kpi-value.orange,
.kpi-value.green,
.kpi-value.purple {
  color:var(--f-text);
  font-size:21px;
  font-weight:800;
  line-height:1;
}

.kpi-label {
  color:#898e94;
  font-size:9px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.kpi-icon {
  display:none;
}

.content-grid {
  display:block;
}

.left-column {
  width:100%;
}

#ordersPage .left-column > .panel {
  overflow:hidden;
  border:1px solid var(--f-line);
  border-radius:16px;
  background:#fff;
  box-shadow:none;
}

#ordersPage:not(.order-detail-open) .right-column {
  display:none;
}

/* ===== FILTERS ===== */

.filters {
  display:grid;
  grid-template-columns:minmax(220px,1.3fr) minmax(170px,.8fr) minmax(180px,.9fr) auto;
  gap:10px;
  padding:14px;
  border-bottom:1px solid var(--f-line);
  background:#fff;
  align-items:end;
}

.date-filter {
  display:none;
}

.filter-group label {
  display:none;
}

.filter-group select,
.filter-group input {
  width:100%;
  height:40px;
  margin:0;
  padding:0 12px;
  border:1px solid var(--f-line);
  border-radius:10px;
  outline:0;
  background:var(--f-soft);
  color:#484c51;
  font-size:11px;
  box-shadow:none;
}

.filter-group input:focus,
.filter-group select:focus {
  border-color:#aeb2b6;
  background:#fff;
  box-shadow:0 0 0 3px rgba(25,27,30,.05);
}

.search-group {
  grid-column:1;
  grid-row:1;
}

.filter-button {
  height:40px;
  margin:0;
  padding:0 18px;
  border:0;
  border-radius:10px;
  background:var(--f-dark);
  color:#fff;
  font-size:11px;
  font-weight:700;
}

/* ===== ORDER QUEUE ===== */

.orders-table-wrap {
  overflow:visible;
}

.factory-order-list {
  width:100%;
}

.factory-order-list-head,
.factory-order-row {
  display:grid;
  grid-template-columns:
    minmax(220px,1.55fr)
    minmax(170px,1.15fr)
    125px
    80px
    160px
    42px;
  align-items:center;
  column-gap:16px;
}

.factory-order-list-head {
  min-height:40px;
  padding:0 18px;
  border-bottom:1px solid var(--f-line);
  background:var(--f-soft);
  color:#979ba0;
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.factory-order-row {
  min-height:70px;
  padding:11px 18px;
  border-bottom:1px solid #efefec;
  cursor:pointer;
  transition:background .14s ease;
}

.factory-order-row:last-child {
  border-bottom:0;
}

.factory-order-row:hover {
  background:var(--f-soft);
}

.factory-order-row.selected {
  background:#f5f5f2;
}

.factory-order-row.is-new {
  box-shadow:inset 3px 0 0 var(--f-dark);
}

.factory-order-main {
  min-width:0;
}

.factory-order-main strong {
  display:block;
  overflow:hidden;
  color:var(--f-text);
  font-size:11px;
  font-weight:750;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.factory-order-main span {
  display:block;
  margin-top:4px;
  color:#999da2;
  font-size:9px;
}

.factory-order-restaurant {
  overflow:hidden;
  color:#34373b;
  font-size:11px;
  font-weight:650;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.factory-order-date,
.factory-order-items {
  color:#666b70;
  font-size:10px;
}

.factory-order-items {
  text-align:center;
}

.factory-order-status .status-badge {
  white-space:nowrap;
}

.factory-open-button {
  width:34px;
  height:34px;
  border:1px solid var(--f-line);
  border-radius:9px;
  background:#fff;
  color:#55595e;
  cursor:pointer;
  font-size:14px;
}

.factory-open-button:hover {
  border-color:var(--f-dark);
  background:var(--f-dark);
  color:#fff;
}

.factory-empty {
  min-height:280px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:8px;
  color:#92969b;
  text-align:center;
}

.factory-empty-icon {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  margin-bottom:4px;
  border-radius:50%;
  background:#f0f0ed;
}

.factory-empty strong {
  color:#4b4f54;
  font-size:13px;
}

.factory-empty span {
  font-size:10px;
}

/* ===== ORDER DETAIL ===== */

#ordersPage.order-detail-open .page-header,
#ordersPage.order-detail-open .kpi-grid,
#ordersPage.order-detail-open .left-column {
  display:none;
}

#ordersPage.order-detail-open .content-grid {
  display:block;
}

#ordersPage.order-detail-open .right-column {
  display:block;
  width:100%;
}

#ordersPage.order-detail-open .quick-panel,
#ordersPage.order-detail-open .events-panel {
  display:none;
}

#ordersPage.order-detail-open .detail-panel {
  width:100%;
  margin:0;
  border:1px solid var(--f-line);
  border-radius:18px;
  background:#fff;
  box-shadow:none;
}

.order-detail-header {
  min-height:86px;
  padding:18px 22px;
  border-bottom:1px solid var(--f-line);
}

.order-detail-back {
  margin:0 0 12px;
  border:0;
  background:transparent;
  color:#6c7177;
  font-size:10px;
  font-weight:650;
  cursor:pointer;
}

.order-detail-heading h2 {
  color:var(--f-text);
  font-size:21px;
  letter-spacing:-.025em;
}

.order-detail-heading p {
  margin-top:5px;
  color:#888d92;
  font-size:10px;
}

.detail-content {
  padding:22px;
}

.simple-workflow {
  margin-top:22px;
  padding:18px;
  border:1px solid var(--f-line);
  border-radius:14px;
  background:var(--f-soft);
}

.simple-workflow-actions {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}

.production-session-button {
  min-height:40px;
  border-radius:10px;
  font-size:10px;
  font-weight:750;
}

.production-session-button.primary {
  border-color:var(--f-dark);
  background:var(--f-dark);
  color:#fff;
}

.production-session-button.secondary {
  border:1px solid var(--f-line-strong);
  background:#fff;
  color:#4d5156;
}

@media (max-width:1000px) {
  .factory-order-list-head,
  .factory-order-row {
    grid-template-columns:
      minmax(190px,1.4fr)
      minmax(150px,1fr)
      110px
      60px
      145px
      38px;
    column-gap:10px;
  }
}

/* =========================================================
   SURIMI LOGIN V2
   ========================================================= */

.factory-login-v2.login-shell {
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(520px,1fr) minmax(560px,1fr);
  background:#fff;
}

.factory-login-v2 .login-brand {
  position:relative;
  min-height:100vh;
  overflow:hidden;
  background:
    radial-gradient(circle at 20% 18%,rgba(255,255,255,.055) 0 2px,transparent 3px),
    radial-gradient(circle at 76% 24%,rgba(255,255,255,.04) 0 1px,transparent 2px),
    radial-gradient(circle at 43% 70%,rgba(255,255,255,.04) 0 2px,transparent 3px),
    linear-gradient(145deg,#24282e 0%,#171a1e 52%,#101215 100%);
  color:#fff;
}

.factory-login-v2 .login-brand::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.28;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.25) 0 1px,transparent 1.5px);
  background-size:97px 97px;
  background-position:17px 31px;
}

.factory-login-v2 .login-brand-content {
  position:relative;
  z-index:1;
  width:100%;
  min-height:100vh;
  padding:56px 58px 46px;
  display:flex;
  flex-direction:column;
}

.factory-login-v2 .login-logo {
  display:flex;
  align-items:center;
  gap:15px;
}

.factory-login-v2 .login-logo-title {
  color:#fff;
  font-size:18px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.025em;
}

.factory-login-v2 .login-logo-subtitle {
  margin-top:4px;
  color:rgba(255,255,255,.54);
  font-size:12px;
}

.surimi-cube {
  position:relative;
  width:58px;
  height:58px;
  flex:0 0 58px;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.22));
}

.surimi-cube span {
  position:absolute;
  display:grid;
  place-items:center;
  background:#fff;
}

.surimi-cube .cube-top {
  left:11px;
  top:2px;
  width:37px;
  height:22px;
  clip-path:polygon(50% 0,100% 28%,50% 100%,0 28%);
}

.surimi-cube .cube-left {
  left:4px;
  top:16px;
  width:29px;
  height:37px;
  clip-path:polygon(0 0,100% 20%,100% 100%,0 77%);
  color:#171a1e;
  font-size:21px;
  font-weight:950;
}

.surimi-cube .cube-right {
  right:4px;
  top:16px;
  width:29px;
  height:37px;
  clip-path:polygon(0 20%,100% 0,100% 77%,0 100%);
}

.factory-login-v2 .login-brand-copy {
  margin:auto 0;
  max-width:610px;
}

.factory-login-v2 .login-kicker {
  margin-bottom:23px;
  color:rgba(255,255,255,.48);
  font-size:13px;
  font-weight:800;
  letter-spacing:.14em;
}

.factory-login-v2 .login-brand-copy h1 {
  margin:0;
  color:#fff;
  font-size:clamp(48px,4.4vw,72px);
  line-height:1.02;
  font-weight:800;
  letter-spacing:-.055em;
}

.factory-login-v2 .login-brand-copy p {
  max-width:510px;
  margin:27px 0 0;
  color:rgba(255,255,255,.58);
  font-size:16px;
  line-height:1.65;
}

.factory-login-v2 .login-brand-footer {
  color:rgba(255,255,255,.32);
  font-size:11px;
}


/* RIGHT SIDE */

.factory-login-v2 .login-form-side {
  min-height:100vh;
  padding:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
}

.factory-login-v2 .login-card {
  width:min(430px,100%);
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.factory-login-v2 .login-card-head {
  margin-bottom:32px;
}

.factory-login-v2 .login-mobile-mark {
  display:none;
}

.factory-login-v2 .login-card-head h2 {
  margin:0;
  color:#17191c;
  font-size:38px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.045em;
}

.factory-login-v2 .login-card-head p {
  margin:11px 0 0;
  color:#92969c;
  font-size:13px;
}

.factory-login-v2 .login-field {
  display:block;
  margin:0 0 18px;
}

.factory-login-v2 .login-field > span {
  display:block;
  margin-bottom:8px;
  color:#555a60;
  font-size:12px;
  font-weight:700;
}

.factory-login-v2 .login-field input {
  width:100%;
  height:52px;
  padding:0 15px;
  border:1px solid #dcdee1;
  border-radius:11px;
  outline:0;
  background:#fff;
  color:#17191c;
  font-size:15px;
  box-shadow:none;
}

.factory-login-v2 .login-field input:focus {
  border-color:#8c9197;
  box-shadow:0 0 0 3px rgba(23,25,28,.055);
}

.factory-login-v2 .login-field small {
  display:none;
}

.factory-login-v2 .login-button {
  width:100%;
  min-height:52px;
  margin-top:8px;
  border:0;
  border-radius:11px;
  background:#17191c;
  color:#fff;
  font-size:13px;
  font-weight:800;
  box-shadow:none;
}

.factory-login-v2 .login-button:hover {
  background:#2b2e32;
}

.factory-login-v2 .login-text-button {
  margin:16px auto 0;
  color:#777c82;
  font-size:11px;
}

.factory-login-v2 .login-security {
  margin-top:25px;
  color:#afb3b8;
  text-align:center;
  font-size:10px;
}

.factory-login-v2 .login-notice,
.factory-login-v2 .login-error {
  font-size:11px;
}

@media (max-width:900px) {
  .factory-login-v2.login-shell {
    display:block;
  }

  .factory-login-v2 .login-brand {
    display:none;
  }

  .factory-login-v2 .login-form-side {
    min-height:100vh;
    padding:30px 22px;
  }

  .factory-login-v2 .login-mobile-mark {
    width:42px;
    height:42px;
    margin-bottom:45px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:#17191c;
    color:#fff;
    font-weight:900;
  }
}

/* ===== SURIMI S BRAND ===== */

.factory-login-v2 .surimi-brand-logo {
  display:block;
  width:72px;
  height:72px;
  flex:0 0 72px;
  margin:-7px -3px -7px -7px;
  object-fit:contain;
  object-position:center;
}

.factory-login-v2 .login-logo {
  gap:13px;
}

.factory-login-v2 .login-logo-title {
  font-size:19px;
}

.factory-login-v2 .login-logo-subtitle {
  margin-top:4px;
  font-size:12px;
}

@media (max-width:900px) {
  .factory-login-v2 .surimi-brand-logo {
    width:58px;
    height:58px;
    flex-basis:58px;
  }
}

/* Surimi logo v2 */
.factory-login-v2 .surimi-brand-logo {
  width:82px;
  height:82px;
  flex:0 0 82px;
  margin:-10px -5px -10px -10px;
  object-fit:contain;
  filter:none;
}

/* ===== SURIMI BRAND SIZE FINAL ===== */

.factory-login-v2 .surimi-brand-logo {
  width:96px;
  height:96px;
  flex:0 0 96px;
  margin:-14px -8px -14px -14px;
  object-fit:contain;
  filter:none;
}

.factory-login-v2 .login-logo {
  gap:15px;
}

/* ===== FACTORY APP BRAND LOGO ===== */

.sidebar .factory-sidebar-logo {
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:block;
  object-fit:contain;
  margin:-4px -2px -4px -4px;
  filter:none;
}

.sidebar .logo {
  gap:12px;
}

.sidebar .logo-title {
  font-size:14px;
  font-weight:800;
}

.sidebar .logo-subtitle {
  margin-top:3px;
  font-size:10px;
}
/* ===== FACTORY DARK FRAME ===== */

:root{
  --factory-dark:#17191c;
  --factory-dark-2:#1e2125;
  --factory-dark-3:#25292e;
  --factory-dark-line:rgba(255,255,255,.08);
}

.sidebar{
  background:var(--factory-dark);
  border-right:1px solid #111317;
  color:#fff;
}

.sidebar .logo{
  border-bottom:1px solid var(--factory-dark-line);
}

.sidebar .logo-title{color:#fff;}
.sidebar .logo-subtitle{color:rgba(255,255,255,.46);}

.sidebar .factory-sidebar-logo{
  width:54px;
  height:54px;
  flex:0 0 54px;
}

.sidebar .menu-main{color:rgba(255,255,255,.64);}

.sidebar .menu-main:hover{
  background:rgba(255,255,255,.06);
  color:#fff;
}

.sidebar .menu-main.active{
  background:#fff;
  color:#17191c;
}

.sidebar .submenu-item{color:rgba(255,255,255,.48);}

.sidebar .submenu-item:hover{
  background:rgba(255,255,255,.05);
  color:#fff;
}

.sidebar .submenu-item.active{
  background:rgba(255,255,255,.09);
  color:#fff;
}
.sidebar .counter,
.sidebar .muted-counter{
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.72);
}

.sidebar-footer{
  border-top:1px solid var(--factory-dark-line);
  color:rgba(255,255,255,.38);
}

.topbar{
  background:var(--factory-dark);
  border-bottom:1px solid #111317;
  color:#fff;
}

.topbar .factory-select{
  background:var(--factory-dark-2);
  border-color:rgba(255,255,255,.10);
  color:rgba(255,255,255,.78);
}

.topbar .current-user-avatar{
  background:#fff;
  color:#17191c;
}

.topbar .current-user-copy strong{color:#fff;}
.topbar .current-user-copy span{color:rgba(255,255,255,.48);}

.workspace{
  background:#f3f4f2;
}
.kpi-grid{
  border-color:#dedfdb;
  background:#dedfdb;
}

.kpi-card:first-child{
  background:#17191c;
}

.kpi-card:first-child .kpi-value,
.kpi-card:first-child .kpi-label{
  color:#fff;
}

.kpi-card:first-child .kpi-label{
  opacity:.52;
}

#ordersPage .left-column > .panel{
  box-shadow:0 10px 30px rgba(20,22,24,.04);
}

.filter-button{
  background:#17191c;
}

.filter-button:hover{
  background:#282b2f;
}

.factory-order-row.is-new{
  box-shadow:inset 4px 0 0 #17191c;
}

.menu-section:last-of-type{
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid var(--factory-dark-line);
}

/* =========================================================
   FACTORY ORDERS V3
   ========================================================= */

#ordersPage{
  max-width:1500px;
  padding:42px 48px 80px;
}

#ordersPage .page-header{
  margin-bottom:28px;
}

#ordersPage .page-header h1{
  font-size:40px;
  line-height:1;
  font-weight:850;
  letter-spacing:-.045em;
}

#ordersPage .page-header p{
  margin-top:10px;
  font-size:14px;
}

.topbar .factory-select{
  display:none;
}

.kpi-grid{
  min-height:94px;
  margin-bottom:24px;
  border-radius:18px;
}

.kpi-card{
  min-height:92px;
  padding:20px 24px;
}

.kpi-value,
.kpi-value.blue,
.kpi-value.orange,
.kpi-value.green,
.kpi-value.purple{
  font-size:30px;
}

.kpi-label{
  margin-top:9px;
  font-size:10px;
}

.filters{
  grid-template-columns:
    minmax(300px,1.5fr)
    minmax(220px,1fr)
    minmax(220px,1fr)
    auto;
  gap:12px;
  padding:18px;
}

.filter-group select,
.filter-group input{
  height:48px;
  padding:0 16px;
  border-radius:12px;
  font-size:13px;
}

.filter-button{
  height:48px;
  padding:0 24px;
  border-radius:12px;
  font-size:13px;
}

.factory-v3-list{
  padding:8px 18px 18px;
}

.factory-v3-order{
  position:relative;
  margin-top:10px;
  padding:22px 24px;
  border:1px solid #e2e3e0;
  border-radius:17px;
  background:#fff;
  cursor:pointer;
  transition:.15s ease;
}

.factory-v3-order:hover{
  transform:translateY(-1px);
  border-color:#c9cbc7;
  box-shadow:0 10px 30px rgba(20,22,24,.06);
}

.factory-v3-order.is-new::before{
  content:"";
  position:absolute;
  left:-1px;
  top:18px;
  bottom:18px;
  width:4px;
  border-radius:0 4px 4px 0;
  background:#17191c;
}

.factory-v3-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:13px;
}

.factory-v3-delivery{
  display:flex;
  align-items:center;
  gap:7px;
  color:#969ba0;
  font-size:12px;
}

.factory-v3-delivery strong{
  color:#4c5157;
  font-size:13px;
}

.factory-v3-main{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
}

.factory-v3-info{
  min-width:0;
}

.factory-v3-info h3{
  margin:0;
  color:#17191c;
  font-size:20px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.025em;
}

.factory-v3-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  margin-top:10px;
  color:#858a90;
  font-size:13px;
}

.factory-v3-meta strong{
  color:#33373c;
}

.factory-v3-side{
  display:flex;
  align-items:center;
  gap:16px;
}

.factory-v3-number{
  max-width:260px;
  overflow:hidden;
  color:#9da1a6;
  font-size:11px;
  font-weight:600;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.factory-v3-open{
  width:46px;
  height:46px;
  flex:0 0 46px;
  border:1px solid #dedfdb;
  border-radius:12px;
  background:#fff;
  color:#17191c;
  cursor:pointer;
  font-size:19px;
}

.factory-v3-order:hover .factory-v3-open{
  border-color:#17191c;
  background:#17191c;
  color:#fff;
}

.factory-v3-empty{
  min-height:320px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#92969b;
}

.factory-v3-empty strong{
  color:#34383d;
  font-size:17px;
}

.factory-v3-empty span{
  margin-top:6px;
  font-size:13px;
}

.sidebar{
  width:258px;
  padding-left:20px;
  padding-right:20px;
}

.workspace{
  margin-left:258px;
}

.sidebar .menu-main{
  min-height:48px;
  font-size:14px;
}

.sidebar .submenu-item{
  min-height:39px;
  font-size:13px;
}

.sidebar .logo-title{
  font-size:15px;
}

.sidebar .logo-subtitle{
  font-size:11px;
}

.current-user-copy strong{
  font-size:13px;
}

.current-user-copy span{
  font-size:10px;
}

@media (max-width:1000px){
  #ordersPage{
    padding:28px 24px 60px;
  }

  .factory-v3-number{
    display:none;
  }

  .factory-v3-info h3{
    font-size:17px;
  }
}

/* =========================================================
   FACTORY ORDERS V3 POLISH
   ========================================================= */

/* TOPBAR */

.topbar{
  height:72px;
  padding:0 36px;
}

.topbar::before{
  content:"Фабрика";
  margin-right:auto;
  color:rgba(255,255,255,.52);
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
}

/* PAGE */

#ordersPage{
  padding-top:36px;
}

#ordersPage .page-header h1{
  font-size:38px;
}

#ordersPage .page-header p{
  font-size:13px;
}

/* KPI compact */

.kpi-grid{
  min-height:82px;
  margin-bottom:22px;
}

.kpi-card{
  min-height:80px;
  padding:16px 22px;
}

.kpi-value,
.kpi-value.blue,
.kpi-value.orange,
.kpi-value.green,
.kpi-value.purple{
  font-size:27px;
}

.kpi-label{
  margin-top:7px;
  font-size:9px;
}

/* FILTERS */

.filters{
  padding:16px 18px;
}

/* CARDS */

.factory-v3-list{
  padding-top:6px;
}

.factory-v3-order{
  min-height:0;
  margin-top:8px;
  padding:18px 22px;
  border-radius:15px;
}

.factory-v3-top{
  margin-bottom:10px;
}

.factory-v3-info h3{
  font-size:19px;
}

.factory-v3-meta{
  margin-top:7px;
  font-size:12px;
}

.factory-v3-delivery{
  font-size:11px;
}

.factory-v3-delivery strong{
  font-size:12px;
}

.factory-v3-number{
  max-width:215px;
  color:#b2b5b9;
  font-size:10px;
  font-weight:550;
}

.factory-v3-open{
  width:42px;
  height:42px;
  flex-basis:42px;
  border-radius:11px;
}

/* STATUS */

.factory-v3-status .status-badge{
  min-height:26px;
  padding:0 9px;
  border-radius:8px;
  font-size:11px;
  font-weight:800;
}

.factory-v3-status .status-badge.new,
.factory-v3-status .status-badge.acknowledged{
  background:#17191c;
  color:#fff;
}

.factory-v3-order.is-new::before{
  top:14px;
  bottom:14px;
  width:4px;
}

/* SIDEBAR */

.sidebar .submenu-item{
  font-size:12px;
}

.sidebar .counter,
.sidebar .muted-counter{
  min-width:28px;
  height:23px;
  font-size:11px;
}

/* =========================================================
   FACTORY STATUS PALETTE
   ========================================================= */

/* Полностью убираем синий из счетчиков */

.sidebar .counter,
.sidebar .muted-counter,
.sidebar .submenu-item.active .counter,
.sidebar .submenu-item.active .muted-counter{
  background:rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.78) !important;
  border:1px solid rgba(255,255,255,.06) !important;
}

/* Новый — спокойный нейтральный */

.factory-v3-status .status-badge.new,
.factory-v3-status .status-badge.acknowledged,
.status-badge.new,
.status-badge.acknowledged{
  background:#f0f1ef !important;
  color:#45494e !important;
  border:1px solid #e1e2df !important;
}

/* В работе */

.factory-v3-status .status-badge.production,
.factory-v3-status .status-badge.in_progress,
.factory-v3-status .status-badge.accepted{
  background:#f6f0e4 !important;
  color:#806331 !important;
  border:1px solid #eee3cf !important;
}

/* Готов к отгрузке */

.factory-v3-status .status-badge.ready,
.factory-v3-status .status-badge.ready_to_ship{
  background:#eaf1ec !important;
  color:#42604d !important;
  border:1px solid #dae7de !important;
}

/* Отгружен */

.factory-v3-status .status-badge.shipped{
  background:#e7f3eb !important;
  color:#35714a !important;
  border:1px solid #d5e9dc !important;
}

/* У нового заказа оставляем только тонкую метку слева */

.factory-v3-order.is-new::before{
  width:3px;
  background:#9da19d;
}

/* =========================================================
   KPI CLICK NAVIGATION
   ========================================================= */

.kpi-grid .kpi-card:first-child{
  background:#fff;
}

.kpi-grid .kpi-card:first-child .kpi-value{
  color:#191b1e;
}

.kpi-grid .kpi-card:first-child .kpi-label{
  color:#898e94;
  opacity:1;
}

.kpi-nav-card{
  position:relative;
  cursor:pointer;
  user-select:none;
  transition:
    background .15s ease,
    transform .15s ease,
    box-shadow .15s ease;
}

.kpi-nav-card:hover{
  background:#f7f7f5;
}

.kpi-nav-card:active{
  transform:scale(.99);
}

.kpi-nav-card.active{
  background:#17191c !important;
}

.kpi-nav-card.active .kpi-value,
.kpi-nav-card.active .kpi-label{
  color:#fff !important;
}

.kpi-nav-card.active .kpi-label{
  opacity:.55;
}

.kpi-nav-card::after{
  content:"→";
  position:absolute;
  right:20px;
  top:50%;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  border-radius:50%;
  background:#f0f1ef;
  color:#25282c;
  font-size:17px;
  font-weight:700;
}

.kpi-nav-card.active::after{
  background:rgba(255,255,255,.13);
  color:#fff;
}

.kpi-nav-card .kpi-content{
  padding-right:42px;
}

/* =========================================================
   KPI TABS FINAL
   ========================================================= */

.kpi-nav-card::after{
  display:none !important;
}

.kpi-nav-card .kpi-content{
  padding-right:0 !important;
}

.kpi-nav-card{
  cursor:pointer;
}

.kpi-nav-card[aria-disabled="true"]{
  opacity:.46;
  background:#f4f4f2 !important;
}

.kpi-nav-card[aria-disabled="true"] .kpi-value,
.kpi-nav-card[aria-disabled="true"] .kpi-label{
  color:#8f9397 !important;
}

.kpi-nav-card[aria-disabled="true"]:hover{
  transform:none;
  background:#f4f4f2 !important;
}

.kpi-nav-card.active{
  background:#17191c !important;
}

.kpi-nav-card.active .kpi-value,
.kpi-nav-card.active .kpi-label{
  color:#fff !important;
}

/* KPI заменили статусную навигацию в sidebar */

.sidebar .submenu{
  display:none !important;
}

.sidebar .menu-section:first-of-type{
  margin-bottom:28px;
}

#applyFilters{
  display:none !important;
}

.filters{
  grid-template-columns:
    minmax(320px,1.5fr)
    minmax(240px,1fr)
    minmax(240px,1fr);
}

/* =========================================================
   DELIVERY PRIORITY
   ========================================================= */

.factory-v3-delivery.today{
  padding:6px 10px;
  border-radius:9px;
  background:#fff4d8;
}

.factory-v3-delivery.today span{
  color:#9a6a16;
}

.factory-v3-delivery.today strong{
  color:#80540b;
}

.factory-v3-delivery.tomorrow{
  padding:6px 10px;
  border-radius:9px;
  background:#f1f2ef;
}

.factory-v3-delivery.tomorrow strong{
  color:#555a60;
}

.factory-v3-delivery.overdue{
  padding:6px 10px;
  border-radius:9px;
  background:#fff0ed;
}

.factory-v3-delivery.overdue span,
.factory-v3-delivery.overdue strong{
  color:#a44635;
}

.factory-v3-order:has(.factory-v3-delivery.overdue){
  border-color:#edc8c0;
}

.factory-v3-order:has(.factory-v3-delivery.today){
  border-color:#ead9aa;
}

/* =========================================================
   ORDER DETAIL DATA FIXES
   ========================================================= */

.detail-order-dates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
}

.detail-date-card{
  min-height:76px;
  padding:14px 16px;
  border:1px solid #e4e5e2;
  border-radius:12px;
  background:#fafaf8;
}

.detail-date-card > span{
  display:block;
  margin-bottom:7px;
  color:#8a8e93;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.detail-date-card > strong{
  color:#222529;
  font-size:14px;
}

.detail-date-card.delivery{
  background:#fff;
}

.detail-delivery-value.today{color:#a46500}
.detail-delivery-value.overdue{color:#b23a2e}
.detail-delivery-value.tomorrow{color:#3f684d}

.factory-product-cell{
  min-width:0;
}

.factory-product-name{
  display:block;
  color:#25282c;
  font-size:12px;
  font-weight:700;
}

.factory-product-kind{
  display:inline-block;
  margin-top:5px;
  padding:2px 6px;
  border-radius:5px;
  background:#f0f0ed;
  color:#777c82;
  font-size:8px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.factory-product-sku{
  display:block;
  margin-top:5px;
  color:#a0a4a9;
  font-size:9px;
  font-weight:500;
}

#detailStatus{
  pointer-events:none;
  cursor:default;
}

@media (max-width:760px){
  .detail-order-dates{
    grid-template-columns:1fr;
  }
}

@media print{
  body{
    background:#fff !important;
  }

  .sidebar,
  .topbar,
  .order-detail-back,
  .simple-workflow-actions,
  .production-session-button,
  .factory-v3-open,
  .refresh-button{
    display:none !important;
  }

  .workspace{
    margin-left:0 !important;
  }

  #ordersPage{
    max-width:none !important;
    padding:0 !important;
  }

  #ordersPage.order-detail-open .right-column{
    display:block !important;
  }

  #ordersPage .detail-panel{
    border:0 !important;
    box-shadow:none !important;
  }

  .detail-content{
    padding:10px 0 !important;
  }

  .detail-products,
  .detail-product,
  .simple-workflow,
  .shipment-execution{
    break-inside:avoid;
  }
}


/* =========================================================
   MOBILE V2 — EDO + ORDER PRODUCTS
   2026-09-10
   Frontend only. Desktop behaviour is unchanged.
   ========================================================= */

@media (max-width: 760px) {

  /* =======================================================
     ORDER DETAIL — PRODUCTS AS MOBILE CARDS
     ======================================================= */

  .detail-products-title {
    margin-top: 18px !important;
    margin-bottom: 10px !important;

    font-size: 14px !important;
    font-weight: 700 !important;
  }

  .detail-products {
    border: 0 !important;
    border-radius: 0 !important;

    overflow: visible !important;

    background: transparent !important;
  }

  .detail-products .detail-product-head {
    display: none !important;
  }

  .detail-products .detail-product:not(.detail-product-head) {
    min-height: 0 !important;

    margin: 0 0 10px !important;
    padding: 13px 14px !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;

    column-gap: 14px !important;
    row-gap: 11px !important;

    border: 1px solid #e5e9ef !important;
    border-radius: 12px !important;

    background: #fff !important;

    box-shadow:
      0 1px 2px rgba(15, 23, 42, .035) !important;

    font-size: 13px !important;
  }

  .detail-products .detail-product:last-child {
    margin-bottom: 0 !important;
  }

  .detail-products .factory-product-cell {
    grid-column: 1 / -1 !important;

    min-width: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    gap: 3px !important;
  }

  .detail-products .factory-product-name {
    width: 100% !important;

    color: #182230 !important;

    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;

    overflow-wrap: anywhere !important;
  }

  .detail-products .factory-product-kind {
    display: inline-flex !important;

    margin-top: 2px !important;

    color: #667085 !important;

    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  .detail-products .factory-product-sku {
    display: inline-flex !important;

    color: #98a2b3 !important;

    font-size: 11px !important;
    line-height: 1.3 !important;

    overflow-wrap: anywhere !important;
  }

  .detail-products
  .detail-product:not(.detail-product-head)
  > span:not(.factory-product-cell) {
    grid-column: 1 !important;

    display: flex !important;
    align-items: center !important;

    gap: 6px !important;

    color: #475467 !important;

    font-size: 12px !important;
  }

  .detail-products
  .detail-product:not(.detail-product-head)
  > span:not(.factory-product-cell)::before {
    content: "Ед." !important;

    color: #98a2b3 !important;

    font-size: 11px !important;
    font-weight: 500 !important;
  }

  .detail-products
  .detail-product:not(.detail-product-head)
  > strong {
    grid-column: 2 !important;

    display: flex !important;
    align-items: center !important;

    gap: 6px !important;

    white-space: nowrap !important;

    color: #101828 !important;

    font-size: 14px !important;
    font-weight: 700 !important;
  }

  .detail-products
  .detail-product:not(.detail-product-head)
  > strong::before {
    content: "Кол-во" !important;

    color: #98a2b3 !important;

    font-size: 11px !important;
    font-weight: 500 !important;
  }


  /* =======================================================
     EDO — REMOVE DESKTOP TABLE LAYOUT
     ======================================================= */

  #edoPage {
    min-width: 0 !important;
  }

  #edoTableWrap,
  .edo-table-wrap {
    width: 100% !important;
    max-width: 100% !important;

    overflow: visible !important;
  }

  #edoTableWrap table {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    border: 0 !important;

    background: transparent !important;
  }

  #edoTableWrap thead {
    display: none !important;
  }

  #edoTableWrap tbody {
    display: grid !important;

    width: 100% !important;

    gap: 12px !important;
  }


  /* =======================================================
     EDO DOCUMENT CARD
     ======================================================= */

  #edoTableWrap tr.edo-document-row {
    width: 100% !important;
    min-width: 0 !important;

    padding: 14px !important;

    display: grid !important;

    grid-template-columns:
      minmax(0, 1fr)
      auto !important;

    grid-template-areas:
      "document date"
      "restaurant restaurant"
      "status status"
      "net vat"
      "total items"
      "sbis sbis" !important;

    column-gap: 12px !important;
    row-gap: 11px !important;

    border: 1px solid #e5e9ef !important;
    border-radius: 14px !important;

    background: #fff !important;

    box-shadow:
      0 1px 3px rgba(15, 23, 42, .05) !important;

    cursor: default !important;
  }

  #edoTableWrap tr.edo-document-row.edo-row-error {
    border-color: #fecdca !important;
    background: #fffbfa !important;
  }

  #edoTableWrap tr.edo-document-row > td {
    width: auto !important;
    min-width: 0 !important;

    padding: 0 !important;

    display: block !important;

    border: 0 !important;

    background: transparent !important;

    white-space: normal !important;
  }


  /* document */

  #edoTableWrap tr.edo-document-row > td:nth-child(1) {
    grid-area: document !important;
  }

  #edoTableWrap .edo-document-cell {
    min-width: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    align-items: flex-start !important;

    gap: 3px !important;
  }

  #edoTableWrap .edo-document-cell strong,
  #edoTableWrap .edo-document-link strong {
    color: #101828 !important;

    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 750 !important;

    overflow-wrap: anywhere !important;
  }

  #edoTableWrap .edo-document-cell small {
    color: #98a2b3 !important;

    font-size: 10px !important;
  }

  #edoTableWrap .edo-document-link {
    text-decoration: none !important;
  }


  /* date */

  #edoTableWrap tr.edo-document-row > td:nth-child(9) {
    grid-area: date !important;

    align-self: start !important;

    text-align: right !important;

    color: #667085 !important;

    font-size: 11px !important;
    white-space: nowrap !important;
  }


  /* restaurant */

  #edoTableWrap tr.edo-document-row > td:nth-child(2) {
    grid-area: restaurant !important;

    padding-top: 9px !important;

    border-top: 1px solid #f0f2f5 !important;
  }

  #edoTableWrap .edo-restaurant-cell {
    display: flex !important;
    flex-direction: column !important;

    gap: 3px !important;
  }

  #edoTableWrap .edo-restaurant-cell strong {
    color: #344054 !important;

    font-size: 13px !important;
    font-weight: 650 !important;
  }

  #edoTableWrap .edo-restaurant-cell small {
    color: #98a2b3 !important;

    font-size: 10px !important;
    line-height: 1.35 !important;
  }


  /* status */

  #edoTableWrap tr.edo-document-row > td:nth-child(7) {
    grid-area: status !important;

    padding: 9px 0 !important;

    border-top: 1px solid #f0f2f5 !important;
    border-bottom: 1px solid #f0f2f5 !important;
  }

  #edoTableWrap .edo-status-badge {
    display: inline-flex !important;

    margin-bottom: 6px !important;
  }

  #edoTableWrap .edo-shipment-status {
    margin-top: 3px !important;

    color: #667085 !important;

    font-size: 11px !important;
    line-height: 1.4 !important;

    overflow-wrap: anywhere !important;
  }


  /* money */

  #edoTableWrap tr.edo-document-row > td:nth-child(4) {
    grid-area: net !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(5) {
    grid-area: vat !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(6) {
    grid-area: total !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(3) {
    grid-area: items !important;

    text-align: right !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(3)::before,
  #edoTableWrap tr.edo-document-row > td:nth-child(4)::before,
  #edoTableWrap tr.edo-document-row > td:nth-child(5)::before,
  #edoTableWrap tr.edo-document-row > td:nth-child(6)::before {
    display: block !important;

    margin-bottom: 2px !important;

    color: #98a2b3 !important;

    font-size: 10px !important;
    line-height: 1.2 !important;
    font-weight: 500 !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(3)::before {
    content: "Позиций" !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(4)::before {
    content: "Без НДС" !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(5)::before {
    content: "НДС" !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(6)::before {
    content: "Итого" !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(3),
  #edoTableWrap tr.edo-document-row > td:nth-child(4),
  #edoTableWrap tr.edo-document-row > td:nth-child(5),
  #edoTableWrap tr.edo-document-row > td:nth-child(6) {
    color: #344054 !important;

    font-size: 12px !important;
    line-height: 1.3 !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(6) strong {
    color: #101828 !important;

    font-size: 14px !important;
    font-weight: 750 !important;
  }


  /* SBIS actions */

  #edoTableWrap tr.edo-document-row > td:nth-child(8) {
    grid-area: sbis !important;

    padding-top: 9px !important;

    border-top: 1px solid #f0f2f5 !important;
  }

  #edoTableWrap .edo-sbis-cell {
    width: 100% !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;

    align-items: center !important;

    gap: 7px 10px !important;
  }

  #edoTableWrap .edo-sbis-provider,
  #edoTableWrap .edo-sbis-actions a {
    min-height: 34px !important;

    padding: 7px 11px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 1px solid #d0d5dd !important;
    border-radius: 8px !important;

    background: #fff !important;

    color: #344054 !important;

    font-size: 11px !important;
    font-weight: 650 !important;

    text-decoration: none !important;
  }

  #edoTableWrap .edo-sbis-link {
    color: #175cd3 !important;
    border-color: #b2ccff !important;
    background: #eff8ff !important;
  }

  #edoTableWrap .edo-sbis-cell > small {
    order: 10 !important;

    width: 100% !important;

    color: #98a2b3 !important;

    font-size: 9px !important;
  }

  #edoTableWrap .edo-sbis-actions {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 7px !important;
  }

  #edoTableWrap .edo-error {
    width: 100% !important;

    margin-top: 6px !important;

    overflow-wrap: anywhere !important;

    font-size: 11px !important;
    line-height: 1.4 !important;
  }


  /* =======================================================
     EDO PAGE TOOLBAR
     ======================================================= */

  #edoPage .edo-page-header {
    gap: 10px !important;
  }

  #edoPage .edo-toolbar {
    display: grid !important;
    grid-template-columns: 1fr !important;

    gap: 9px !important;
  }

  #edoPage .edo-search-wrap {
    width: 100% !important;
    min-width: 0 !important;
  }

  #edoPage #edoStatusFilter {
    width: 100% !important;
    max-width: none !important;
  }

}


/* Extra-small phones */

@media (max-width: 390px) {

  #edoTableWrap tr.edo-document-row {
    grid-template-columns:
      minmax(0, 1fr)
      auto !important;

    padding: 12px !important;

    column-gap: 8px !important;
  }

  #edoTableWrap .edo-document-cell strong,
  #edoTableWrap .edo-document-link strong {
    font-size: 13px !important;
  }

  #edoTableWrap tr.edo-document-row > td:nth-child(9) {
    font-size: 10px !important;
  }

  .detail-products
  .detail-product:not(.detail-product-head) {
    padding: 12px !important;
  }

}




/* =========================================================
   MOBILE V2.2 — APPBAR FIX
   ========================================================= */

@media (max-width: 800px) {

  .app {
    width: 100% !important;
    min-width: 0 !important;
  }

  .mobile-appbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;

    width: 100% !important;
    min-width: 0 !important;

    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;

    box-sizing: border-box !important;
  }

  .mobile-appbar-left {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  .mobile-appbar-copy {
    min-width: 0 !important;
  }

  .workspace {
    position: relative !important;
    z-index: 1 !important;

    width: 100% !important;
    min-width: 0 !important;
  }

  .topbar {
    display: none !important;
  }

  #edoPage,
  #ordersPage,
  #productionPage,
  #needPage,
  #productionDocsPage,
  #systemPage,
  #adminPage,
  #usersPage,
  #restaurantsAdminPage {
    position: relative !important;
    z-index: 1 !important;
  }

}



/* =========================================================
   MOBILE V2.3 — OPERATION KPI
   ========================================================= */

@media (max-width: 760px) {

  /* -------------------------------------------------------
     KPI: one operational list instead of large squares
     ------------------------------------------------------- */

  #ordersPage .kpi-grid {
    width: 100% !important;

    margin: 18px 0 16px !important;

    display: block !important;

    overflow: hidden !important;

    border: 1px solid #e4e7ec !important;
    border-radius: 16px !important;

    background: #fff !important;

    box-shadow:
      0 1px 3px rgba(16, 24, 40, .04) !important;
  }


  #ordersPage .kpi-card {
    position: relative !important;

    width: 100% !important;
    min-height: 72px !important;

    margin: 0 !important;
    padding: 11px 48px 11px 17px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    border: 0 !important;
    border-bottom: 1px solid #eef0f3 !important;
    border-radius: 0 !important;

    background: #fff !important;

    box-shadow: none !important;

    cursor: pointer !important;
  }


  #ordersPage .kpi-card:last-child {
    border-bottom: 0 !important;

    background: #fafafa !important;
  }


  /* subtle status line */

  #ordersPage .kpi-card::before {
    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    top: 13px !important;
    bottom: 13px !important;

    width: 4px !important;

    border-radius: 0 4px 4px 0 !important;

    background: #98a2b3 !important;
  }


  #ordersPage .kpi-card:nth-child(1)::before {
    background: #2e90fa !important;
  }

  #ordersPage .kpi-card:nth-child(2)::before {
    background: #f79009 !important;
  }

  #ordersPage .kpi-card:nth-child(3)::before {
    background: #12b76a !important;
  }

  #ordersPage .kpi-card:nth-child(4)::before {
    background: #7f56d9 !important;
  }

  #ordersPage .kpi-card:nth-child(5)::before {
    background: #667085 !important;
  }


  /* value + text */

  #ordersPage .kpi-content {
    width: 100% !important;
    min-width: 0 !important;

    display: grid !important;

    grid-template-columns: 44px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;

    column-gap: 11px !important;
    row-gap: 2px !important;

    align-items: center !important;
  }


  #ordersPage .kpi-value {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;

    margin: 0 !important;

    color: #101828 !important;

    font-size: 28px !important;
    line-height: 1 !important;
    font-weight: 750 !important;

    font-variant-numeric: tabular-nums !important;
  }


  #ordersPage .kpi-label {
    grid-column: 2 !important;
    grid-row: 1 !important;

    margin: 0 !important;

    color: #344054 !important;

    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
  }


  #ordersPage .kpi-label::after {
    display: block !important;

    margin-top: 4px !important;

    color: #98a2b3 !important;

    font-size: 10px !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
  }


  #ordersPage
  .kpi-card:nth-child(1)
  .kpi-label::after {
    content: "Требуют принятия" !important;
  }

  #ordersPage
  .kpi-card:nth-child(2)
  .kpi-label::after {
    content: "Производство выполняется" !important;
  }

  #ordersPage
  .kpi-card:nth-child(3)
  .kpi-label::after {
    content: "Можно комплектовать и отгружать" !important;
  }

  #ordersPage
  .kpi-card:nth-child(4)
  .kpi-label::after {
    content: "Завершённые отгрузки" !important;
  }

  #ordersPage
  .kpi-card:nth-child(5)
  .kpi-label::after {
    content: "В текущей выборке" !important;
  }


  /* replace old decorative KPI icons with navigation arrow */

  #ordersPage .kpi-icon {
    position: absolute !important;

    right: 15px !important;
    top: 50% !important;

    width: 28px !important;
    height: 36px !important;

    transform: translateY(-50%) !important;

    display: grid !important;
    place-items: center !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    color: transparent !important;

    font-size: 0 !important;
  }


  #ordersPage .kpi-icon::after {
    content: "›" !important;

    color: #98a2b3 !important;

    font-family:
      -apple-system,
      BlinkMacSystemFont,
      "Segoe UI",
      sans-serif !important;

    font-size: 27px !important;
    line-height: 1 !important;
    font-weight: 300 !important;
  }


  #ordersPage .kpi-card:active {
    background: #f9fafb !important;
  }



  /* =======================================================
     EDO MOBILE — fix status/event and money collision
     ======================================================= */

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(7) {
    padding:
      10px
      0
      12px
      !important;

    display: block !important;

    min-height: 0 !important;

    line-height: 1.4 !important;
  }


  #edoTableWrap .edo-status-badge {
    margin:
      0
      0
      8px
      !important;
  }


  #edoTableWrap .edo-shipment-status {
    position: static !important;

    width: 100% !important;

    margin: 4px 0 0 !important;
    padding: 0 !important;

    display: block !important;

    line-height: 1.45 !important;

    white-space: normal !important;
  }


  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(4),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(5) {
    padding-top: 2px !important;
  }


  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(6),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(3) {
    padding-top: 8px !important;
  }

}




/* =========================================================
   MOBILE V2.4 — COMPACT KPI GRID
   ========================================================= */

@media (max-width: 760px) {

  #ordersPage .kpi-grid {
    margin: 16px 0 !important;

    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;

    gap: 8px !important;

    overflow: visible !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
  }


  #ordersPage .kpi-card {
    min-width: 0 !important;
    min-height: 92px !important;

    padding: 11px 8px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;

    border: 1px solid #e4e7ec !important;
    border-radius: 13px !important;

    background: #fff !important;

    box-shadow:
      0 1px 2px rgba(16, 24, 40, .035) !important;
  }


  /* first row: 3 cards */

  #ordersPage .kpi-card:nth-child(1),
  #ordersPage .kpi-card:nth-child(2),
  #ordersPage .kpi-card:nth-child(3) {
    grid-column: span 2 !important;
  }


  /* second row: 2 wider cards */

  #ordersPage .kpi-card:nth-child(4),
  #ordersPage .kpi-card:nth-child(5) {
    grid-column: span 3 !important;
  }


  #ordersPage .kpi-card:last-child {
    background: #fafafa !important;
  }


  /* remove previous vertical accent */

  #ordersPage .kpi-card::before {
    display: none !important;
  }


  #ordersPage .kpi-content {
    width: 100% !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 7px !important;
  }


  #ordersPage .kpi-value {
    margin: 0 !important;

    font-size: 29px !important;
    line-height: 1 !important;
    font-weight: 800 !important;

    color: #101828 !important;
  }


  #ordersPage .kpi-label {
    margin: 0 !important;

    color: #667085 !important;

    font-size: 10px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;

    text-align: center !important;
    text-transform: uppercase !important;

    letter-spacing: .035em !important;
  }


  /* remove long V2.3 descriptions */

  #ordersPage .kpi-label::after {
    display: none !important;
    content: none !important;
  }


  /* old icons / arrows are unnecessary */

  #ordersPage .kpi-icon {
    display: none !important;
  }


  #ordersPage .kpi-card:active {
    transform: scale(.98) !important;
    background: #f9fafb !important;
  }

}


@media (max-width: 390px) {

  #ordersPage .kpi-card {
    min-height: 86px !important;
    padding: 10px 6px !important;
  }

  #ordersPage .kpi-value {
    font-size: 27px !important;
  }

  #ordersPage .kpi-label {
    font-size: 9px !important;
  }

}




/* =========================================================
   MOBILE V2.5 — EDO CARD SPACING FIX
   ========================================================= */

@media (max-width: 760px) {

  #edoTableWrap tr.edo-document-row {
    grid-template-areas:
      "document date"
      "restaurant restaurant"
      "status status"
      "net vat"
      "total items"
      "sbis sbis" !important;

    row-gap: 0 !important;
  }


  /* STATUS BLOCK */

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(7) {
    grid-area: status !important;

    margin-top: 10px !important;
    padding: 12px 0 14px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    gap: 5px !important;

    border-top: 1px solid #eef1f4 !important;
    border-bottom: 1px solid #eef1f4 !important;

    min-height: auto !important;
    height: auto !important;

    overflow: visible !important;
  }


  #edoTableWrap .edo-status-badge {
    margin: 0 0 4px !important;
  }


  #edoTableWrap .edo-shipment-status {
    position: static !important;

    display: block !important;

    width: 100% !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #667085 !important;

    font-size: 11px !important;
    line-height: 1.45 !important;

    white-space: normal !important;
    overflow: visible !important;
  }


  /* MONEY BLOCK */

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(4),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(5) {
    margin-top: 14px !important;
    padding: 0 !important;
  }


  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(6),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(3) {
    margin-top: 16px !important;
    padding: 0 0 14px !important;
  }


  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(4),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(5),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(6),

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(3) {
    position: static !important;

    min-height: 44px !important;

    overflow: visible !important;
  }


  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(3)::before,

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(4)::before,

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(5)::before,

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(6)::before {
    margin-bottom: 5px !important;

    line-height: 1 !important;
  }


  /* SBIS block clearly separated */

  #edoTableWrap
  tr.edo-document-row
  > td:nth-child(8) {
    margin-top: 4px !important;
    padding-top: 14px !important;

    border-top: 1px solid #eef1f4 !important;
  }

}




/* =========================================================
   MOBILE V2.6 — PROFILE POPOVER
   ========================================================= */

.mobile-profile-popover {
  display: none;
}


@media (max-width: 800px) {

  .mobile-user-button {
    cursor: pointer !important;
  }


  .mobile-profile-popover {
    position: fixed !important;

    z-index: 2200 !important;

    top:
      calc(
        68px
        + env(safe-area-inset-top, 0px)
      ) !important;

    right: 14px !important;

    width: min(290px, calc(100vw - 28px)) !important;

    padding: 10px !important;

    display: block !important;

    visibility: hidden !important;
    opacity: 0 !important;

    transform:
      translateY(-6px)
      scale(.98) !important;

    transform-origin: top right !important;

    pointer-events: none !important;

    border: 1px solid #e4e7ec !important;
    border-radius: 16px !important;

    background: rgba(255,255,255,.98) !important;

    box-shadow:
      0 16px 40px rgba(16,24,40,.18),
      0 2px 8px rgba(16,24,40,.08)
      !important;

    transition:
      opacity .15s ease,
      transform .15s ease,
      visibility .15s ease
      !important;
  }


  .mobile-profile-popover.open {
    visibility: visible !important;
    opacity: 1 !important;

    transform:
      translateY(0)
      scale(1) !important;

    pointer-events: auto !important;
  }


  .mobile-profile-head {
    padding: 7px 7px 10px !important;

    display: flex !important;
    align-items: center !important;

    gap: 11px !important;
  }


  .mobile-profile-avatar {
    width: 42px !important;
    height: 42px !important;

    flex: 0 0 42px !important;

    display: grid !important;
    place-items: center !important;

    border-radius: 50% !important;

    background: #17191c !important;

    color: #fff !important;

    font-size: 14px !important;
    font-weight: 800 !important;
  }


  .mobile-profile-copy {
    min-width: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    gap: 3px !important;
  }


  .mobile-profile-copy strong {
    overflow: hidden !important;

    color: #101828 !important;

    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 750 !important;

    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }


  .mobile-profile-copy span {
    color: #98a2b3 !important;

    font-size: 11px !important;
    line-height: 1.3 !important;
  }


  .mobile-profile-divider {
    height: 1px !important;

    margin: 2px 0 7px !important;

    background: #eef0f3 !important;
  }


  .mobile-profile-logout {
    width: 100% !important;
    min-height: 46px !important;

    padding: 0 12px !important;

    display: flex !important;
    align-items: center !important;

    gap: 9px !important;

    border: 0 !important;
    border-radius: 10px !important;

    background: transparent !important;

    color: #b42318 !important;

    font-size: 13px !important;
    font-weight: 700 !important;

    text-align: left !important;

    cursor: pointer !important;
  }


  .mobile-profile-logout:active {
    background: #fef3f2 !important;
  }

}


